Задать вопрос
  • Почему Линус не любит C++?

    @lesha_penguin
    <Мысль_вслух>Если существует специальный «ад для говнокодеров», то наверняка, одним из самых жестких наказаний в нем была бы отладка того говнокода, который, который в С++ получается по принципу «делается более просто и изящно».</Мысль_вслух>

    Если начинать «от сотворения мира»:

    1) Как известно C++ был был придуман Страуструпом, мы не будем умалять его «ученные регалии» (ученных-то наград куча, но они по сути единственное чего «добился человек», кстати, 90% прямо или косвенно за c++). Однако, заметим, что Страуструп — как раз есть пример «чистого теоретика» (в отличии от «практика»-Торвальдса), т.е. является человеком за свою жизнь не принимавшим участия в разработке ни одного серьезного реального программного проекта. По сути компилятор c++ — единственное более-менее практическое дело в его жизни. Соотвественно о том с какими проблемами приходится сталкиваться в реальном «software development-е» с «высоты его ООП-теорий» он имеет весьма посредственное представление.

    2) Как верно заметили, в упомянутой статье, изначально это был как раз «Це с классами», т.е. изначально НЕ БОЛЕЕ ЧЕМ «академическая» попытка навернуть на C отдельные элементы «обьектности» (типа, Smalltalk обьектный, а давайте попробуем сделать такое на более низком уровне). Кстати, могу Вам сказать, что с C++ я впервые познакомился в 80-90е годы, когда языком «ученной среды» был Фортран, языком «системщиков» Си, а для обучения «всех непрофильных специальностей» основам программирования использовались Basic и Pascal. Да, но правда «тогдашний C++ 80» отличался от нынешнего — он реально производил впечатление «просто прикольной поделки» (на память помню, что например, тогда не было и половины привычного функционала например таких вещей как всяких «reinterpret_cast-ов» или namespac-ов.). Кстати, да… барабанная дробь… НЕ БЫЛО STL!!!

    3) Наверное Страуструповский «Це с классами», наверное так бы и остался в списке «прикольных поделок» в аналах истории, если бы не одно обстоятельство: «ВНЕЗАПНО» произошел «софтверный бум», соотвественно: a) «элитных» «олдскульных» программистов стало резко не хватать b) «требования к качеству софта» резко упали c) понадобилось средство для генерации достаточно низкоуровневого «говнокода в промышленных масштабах». И как ни странно, (ага, угадали, именно с появлением в C++ STL-я) C++ так и не избавившись от своих «академических болячек» был брошен в пучину «мейнстрима».

    4) Вам говорят истинную правду, когда говорят, что «C++» это маркетинговое название для «Це с классами». Да, это так. И можно сказать, к великому сожалению, он нашел свою рыночную нишу. (Сейчас любой дурак может легко «освоить C++ за 21 день (с бустом и стлем)», при этом не умея даже внятно ответить на простой вопрос «Если ты такой умный, обьясни тогда почему, c$k@, у тебя программа течет по памяти и падает», (про такие «неполиткорректные вопросы», как «зачем писать 100 строк на то, что пишется в две-три», мы вообще тактично молчим, а то, мало ли, может у человека «сдельная зарплата» за количество строк ;) ), зато с видом крутого Беара Грилса можно обсуждать такие «высокие материи» как «Паттерны» и «чистый ООП»).

    5) И к самому большему сожалению, в некоторых случаях альтернативы нет. Да, Я еще не встречал ни одного программиста, который в действительно реальной разработке софта активно использовал бы C++ и при этом от него бы не плевался. У C++ есть «Огромный ПЛЮС» — Его Мультипарадигменность! По-сути это его единственный плюс, позволяющий «не уйти в дебри» (типа попыток запихнуть «main()» в обьект только ради «идеи чистого ООП»)!

    6) А теперь, после такого «исторического» вступления еще раз перечистайте внимательно письмо Торвальдса, высказывание человека который лучше многих «теоретиков чистого ООП» знает как это оно «на собственной шкуре» разрабатывать сложные системы, и комментарии от хабраюзеров, которые «на живой практике» знают «почем фунт лиха» в топике. Под большинством утверждений я лично бы поставил свою подпись золотыми буквами.
    Ответ написан
    5 комментариев
  • Наткнулся на проекты Arduino и они мне безумно понравились, на нем можно создать что душа пожелает?

    Jump
    @Jump
    Системный администратор со стажем.
    Можно.
    Но все несколько сложней.
    Ардуино хороший конструктор для начинающих, так чисто для себя сделать побыстрому.
    Но готовое изделие на ардуино в серию не запустишь, оно будет очень дорогим и громоздким.
    Поэтому - берите ардуино, разбирайтесь и творите.
    А захочется запустить в продажу - готовый проект на ардуино будет не так уж сложно переписать под нормальное железо.
    Ответ написан
    3 комментария
  • Антивирус Касперского встраивает в код сайта свой JS-скрипт и нарушает работу сайта?

    profesor08
    @profesor08 Куратор тега JavaScript
    1. Пиши код так, чтоб его работу было трудно нарушить без специального умысла. Делается элементарной изоляцией области видимости кода от внешнего мира.
    2. Проверь скорость загрузки всего, что загружается на странице сайта. Это делается в девтулзах на вкладке network.
    3. Возможно касперский никак не влияет и никак не портит ничего на сайте. Но в результате его действий, в твоем коде могут запускаться неожиданные сценарии, приводящие к тормозам. Вдруг ты слушаешь через обсервер весь body на на максималках. Возможно нужен рефакторинг с учетом первого пункта.
    Ответ написан
    Комментировать
  • Антивирус Касперского встраивает в код сайта свой JS-скрипт и нарушает работу сайта?

    @cheeroque
    как можно решить эту проблему?

    Не пользоваться антивирусом Касперского, например. Тем более бесплатным. Вообще не вижу никакого смысла в дополнительных антивирусах, когда есть Windows Defender.
    Ответ написан
    7 комментариев
  • Какой выбрать node.js фреймворк под небольшой проект?

    YuriyVorobyov1333
    @YuriyVorobyov1333
    Software Developer
    Используйте Express.js это самый простой в освоении фремфорк, под который написано куча библиотек:
    1. авторизация - Passport.js
    2. работа с файлами - multer
    3. ORM - sequelize
    4. сокеты - socket.io
    5. настройка typescript - тут статья
    6. безопасность - helmet


    Плюс у фреймворка есть генератор, который поможет очень быстро поднять приложение без лишних проблем
    Ответ написан
    3 комментария
  • Как держать больше 65535 одновременных TCP соединений?

    @pfg21
    ex-турист
    количество соединений на один порт ограничивается только возможностями системы.
    ограничение 65 536 это про общее количество портов на систему, к количеству соединений отношения не имеет.

    чтобы узнать условия предоставления тебе ресурсов надо почитать условия договора или условия тарифа, на основе которого тебе дают компутерные мощности.
    Ответ написан
    2 комментария
  • Что значит посадка верстки на движок WordPress?

    anton_reut
    @anton_reut
    Начинающий веб-разработчик
    что значит посадка верстки на cms?

    - Это значит например в шапке страницы должно быть что-то такое:
    <h1><?php echo $page->title; ?><h1>
    а не такое:
    <h1>Lorem ipsum...<h1>
    И да, знание серверного языка здесь нужно, хотя бы поверхностное.
    Ответ написан
    Комментировать
  • Какой дистрибутив Linux максимально похож на Windows?

    @aglgl
    Linux mint вызовет меньше всего проблем у пользователей. Остальное смысла не имеет, ненадо делать из линукса недовинду.
    Ответ написан
    Комментировать
  • Что нужно изучать, чтобы лучше понимать Linux?

    sn0rk64
    @sn0rk64
    учи си и копайся в системных либах, переписывай их. напиши свой прокси сервер, шелл, примитивную файловую систему и тд.
    Ответ написан
    Комментировать
  • Как убрать размытие при использовании transform: scale(2)?

    @webfellix
    Я думаю вам поможет js плагин адаптирующий сайт под слабовидящих
    Очень легко подключить и настроить, еще ни разу проблем с ним не было)
    Ответ написан
    Комментировать
  • Почему Linux предпочтительнее для администрирования и чем? Почему многие предпочитают её?

    dyuriev
    @dyuriev
    A posteriori
    Скорее всего под таким вопросом начнется всем уже известный срач. А пару человек еще упрекнут вас в том, что у них 30-50-70 процентов серверов под FreeBSD

    Мое скромное мнение
    • Бесплатность
      Да, сейчас кто-нибудь заявит о том что на Red Hat не дешевле, а иногда и дороже Windows, но большинство дистрибьютивов Linux бесплатны
    • Открытость
      Данный факт не ценишь ровно до того момента, как приходится сделать что-то, что не разжевано в интернете. Рано или поздно разработчик доходит до того момента, когда ползет в исходники с глубоким душевным вопросом "как это %&$ должно работать?". Ибо некоторые моменты либо документированы неправильно, либо не полностью, либо в коде досадная ошибка, которую никто не замечал ранее, ну или замечал, но багрепорт/коммит с фиксом разрабу не кидал.
      В Windows-среде, особенно если это сама система, а не прикладной софт, данный баг может вылиться в недели или месяцы страданий. Там только реверс-инжиринг, если саппорт вас игнорит.
    • Документированость
      Команда не сработала как ожидалось? man commandname
      Не помогло? Гляньте сайт разработчика, там обычно на столько обширное вики/документация, что увлечетесь чтением.
      Программа свежая и документация пока не исчерпывающая? Гляньте репозиторий, поиском найдите по исходнику место которое хотите вызвать параметрически - скорее всего там увидите комментарий разраба, кто писал этот код, заодно еще парочку недокументированных возможностей почерпнете.
      В конце концов, если вдруг вам станет интересно, почему сделано так, а не иначе - гляньте багзиллу проекта - скорее всего поиском найдете обсуждение данного куска кода.
    • Гибкость
      Воткнуть свой драйвер в прямо в ядро? Легко (если уж научитесь драйвера писать, то внедрить в ядро особых проблем не составит)
    • Повсеместность
      Че уж там сервера. Роутеры, телефоны, embedded-решения - там везде в кулуарах за редким исключением крутится ядро Linux и знакомые пакеты и команды. Этакая стандартизация.
    • Эффект IKEA
      Вы сами того не подозреваете, но когда по кирпичикам соберете этот чертов конструктор, заставите каждый винтик крутиться (с вероятностью стремящейся к 100%) так как вам надо, вы полюбите эту систему.

    И еще раз напоминаю, что это мое скромное личное мнение.

    Несомнено, сервера и на Windows бывают быстрые, стабильные, работающие 24/7/365 годами. Но так уж повелось.
    Ответ написан
    2 комментария
  • Какой проект вы бы посоветовали сделать начинающему бекенду программисту на PHP?

    Sanes
    @Sanes
    (я склоняюсь сейчас в сторону сайта по изучению английского языка с личным кабинетом

    C него и начинайте. Там как раз будут основные компоненты.
    Ответ написан
    Комментировать
  • Как совмещать программирование с учебой?

    firedragon
    @firedragon
    Не джун-мидл-сеньор, а трус-балбес-бывалый.
    На физфаке умудрялся учиться , тусить в общаге, что там писать для iis практически не зная плюсов.
    Ответ написан
    3 комментария
  • Остались ли еще толковые русскоязычные биржи?

    @Stalinko Куратор тега Фриланс
    PHP'шник и фрилансер до мозга костей
    какие отклики можете дать?

    Учите английский и не связывайтесь с русскими биржами.
    Ответ написан
    4 комментария
  • Что делать если айтишник удалил с macbook mac os?

    kocherman
    @kocherman
    Смотря какого года макбук. Удали всё, отформатируй диск. Потом комп или запустится в режим восстановления или нет. Режим восстановления подкачает установщик системы с интернета. Если не запускается, то ноут слишком стар и требует образ, который можно скачать с любимого трекера или еще где. Потом программой etcher записываешь образ на флешку. Жмешь клавишу ALT при включении компа. Тогда он спросит откуда загружать систему, выбираешь флэшку с образом установщика. Устанавливаешь как обычно, по шагам.
    Ответ написан
    1 комментарий
  • Почему разница в производительности Linux/Windows Desktop?

    Zoominger
    @Zoominger Куратор тега Windows
    System Integrator
    Linux на десктопе работает отвратительно. Увы.
    Ответ написан
    2 комментария
  • Как преобразовать кодировку с windows-1251 на UTF-8 в node.js?

    art1z
    @art1z
    Программист-многостаночник в EffectiveSoft
    Тут проблема не с преобразованием, а с выводом utf-8 текста из ноды по Windows: https://github.com/nodejs/node-v0.x-archive/issues/2190
    Если коротко: запусти в консоли chcp 65001 перед запускам процесса node.exe
    Ответ написан
    3 комментария
  • Как можно зарабатывать с помощью разработки?

    Robur
    @Robur
    Знаю больше чем это необходимо
    Хотите работать на себя, быть независимым, не работать на фрилансе и на дядю и хорошо зарабатывать, но не знаете что для этого надо?

    У меня есть для вас ответ!
    Для этого надо научится делать бизнес. Именно пойти и учиться. так же как и всему остальному. Клиенты, рынок, маркетинг, доход-расход, риски, планирование, вот это вот все. К разработке это не имеет отношения, и тостер не тот ресурс где этому научат.
    Это все скучно, муторно и не хочется тратить свою жизнь на это? Добро пожаловать в офис/фриланс где другие дяди уже потратили свои годы за тебя, тянут всю эту скучную тягомотину сами и оставляют тебе только интересные задачки на программирование.

    Можно еще попытаться выиграть в лотерею - либо покупая билеты спортлото, либо делая какой-то свой сервис/приложения наобум и пытаясь их кому-то продать. В целом шансы плюс минус одинаковые.
    Ответ написан
    Комментировать