Сам язык был разработан Денисом Ритчи в 1972 году, а затем популяризирован благодаря книге в соавторстве с Брайаном Керниганом (второй к самому языку никакого отношения не имеет в том числе и по его собственному признанию он лишь в соавторстве с Ритчи выпустили книгу
Керниган из скромности заявлял о своей непричастности к разработке языка Си. Он, а также другие сотрудники Bell Labs внесли огромный вклад в язык, точно так же как и С++ не разрабатывался Страуструпом в одиночку (Эндрю Кёниг, Стен Липман, Барбара Му и еще с десяток другой разных людей). Помимо Кернигана к разработке языка в значительной степени причастен Кен Томпсон, а также Дюг Макилрой, Роб Пайк, Питер Нельсон и др., по сути все кто разрабатывал UNIX в первых его версиях.
Как собеседующий на с++разработчиков, позволю себе совет - не указывайте в резюме пройденные курсы на всяких там практикумах, отусах, скилбоксах и прочих, если проходили их недавно. Таких собесят с пристрастием, потому как это признак слабых знаний и отсутствия серьезного опыта. А проходить или нет эти курсы решать каждый сам должен.
Когда у меня возникала проблема со Сбером, точнее у моего старенького отца, который не силах был бороться с подобным безобразием, я написал отзыв на banki.ru, и буквально через час меня пинганула сотрудник банка, мы созвонились и еще через два часа были отменены все левые операции и возвращены деньги.
Чего и Вам советую сделать. Все решаемо, даже в Сбере.
Первый коммерческий компилятор C++ (если не считать Cfront) создала компания Zortech ( в октябре 1988), которую потом купила Symantec и продавала под своим брендом Далее май 1990 - Borland Turbo C++ 1.0 февраль 1991 - Borland C++ 2.0 (версии 1.0 не было, просто выровняли версии) ноябрь 1991 - Borland C++ 3.0 февраль 1992 - Borland Turbo C++ 3.0 (версии 2.0 не было) март 1992 - Microsoft C/C++ 7.0 (первый компилятор С++ от M$) июнь 1992 - Borland Turbo C++ for Windows 3.1 июнь 1992 - Borland C++ 3.1 (появился OWL) сентябрь 1992 - Borland Turbo C++ for Windows 4.0 декабрь 1993 - Borland C++ 4.0 и т.д. может мне стоит накатать статью-таймлайн сред разработки и компиляторов С++?
Заметил давно уже такую закономерность - те, кто пытается писать с соблюдением SOLID и прочих принципов, пишут мерзкий код, который потом сложно читать/сопровождать/переписывать. В данном случае он еще и не безопасен (как минимум нужен override у виртуальных функций и не нужны virtual)
Могу ошибаться, поправьте, если что. Родословная Max OS примерно так выглядит: Apple SOS(1980) - Apple Lisa (1983) - Max OS (1984) Mac OS X же унаследовала NexTSTEP и BSD ветки UNIX
Тут и CP/M не упомянут, хотя в 70-е и начале 80-х была самой популярной ОС для персоналок, и именно с нее была слизана первая DOS. Да и тема с Линуксом не раскрыта. (почему именно 25 августа стало днем Линукса читателю, видимо, предлагается самостоятельно погуглить).
В больших проектах скрам скорее мешает, чем помогает. У себя в команде мы реализовали очень важное улучшение по скраму - уволили скрам-мастера и отменили ретро (но таки иногда собираемся по необходимости с пивом). И работа стала намного эффективнее.
Читать незнакомый код - это не только код-ревью и это очень важный навык. Если человек не может прокомментировать небольшой, но сложный код, потом он точно также будет тупить и в реальной жизни и долго разбираться с багами. Пять строк кода распознать можно за пару минут, я не даю простыню целую читать.
Никаких замеров скорости тоже никто не делает, но хорошего специалиста сразу видно по тому как он пишет код.
В других компаниях на техсобес приходят лиды команд или сеньорные разработчики. Так как это отвлекает их от прямых обязанностей, они чаще всего относятся к кандидатам не очень‑то благосклонно, а вопросы формируют как будто из желания кандидата завалить на экзамене — максимально далекие от практики и глубокие по сути.
являюсь "сеньорным разработчиком", проводящим собеседования для с++ разработчиков. Собеседования для меня - это такие же прямые обязанности как и написание кода, код-ревью и т.п.. Что значит "отвлекает", не понимаю. Я заинтересован работать с профессионалами, в этом вся мотивация. Отношусь ко всем кандидатам одинаково лояльно и всегда объясняю почему меня интересует именно то, что я спрашиваю (написать балансировку КЧ дерева не прошу. Хорошо, если человек это знает. Не знает - тоже хорошо, т.к. это не нужно знать в реальной разработке 99.9% разработчикам). Чтобы не тратить свое и чужое время, обсудил и научил своих hr уточнять у кандидатов используемый ими стек разработки и субъективный уровень владения ЯП-ами и инструментами. Мне важно насколько быстро человек может читать чужой сложный код, на лету проектировать несложные структуры, быстро писать код, не пропуская и не забывая различные const, std::move и т.п., разбирается где и какой контейнер использовать. Кому сразу говорю нет - например, джун не может рассказать, что такое итератор - до свидания через полгода. Не знает как устроены внутри простые string, vector, list - тоже до новых встреч. К кандидатам-сеньорам требования другие, конечно, но тоже их проверить можно за полчаса на простых примерах кода.
Как известно, есть множество вещей, которые намного проще и быстрее можно написать на C#, Python и прочих, чем на С/С++. Как меряют продуктивность команд тоже известно. Можно даже, наверное, в том же гугле найти две С++ команды с дикой разницей по продуктивности. Поэтому пока эти утверждения неубедительно выглядят.
Керниган из скромности заявлял о своей непричастности к разработке языка Си. Он, а также другие сотрудники Bell Labs внесли огромный вклад в язык, точно так же как и С++ не разрабатывался Страуструпом в одиночку (Эндрю Кёниг, Стен Липман, Барбара Му и еще с десяток другой разных людей).
Помимо Кернигана к разработке языка в значительной степени причастен Кен Томпсон, а также Дюг Макилрой, Роб Пайк, Питер Нельсон и др., по сути все кто разрабатывал UNIX в первых его версиях.
не важно, VS или Vim, вообще не важно.
Не включенный хедер если поменять и попробовать пересобрать, то cmake сочтет, что нет причин для пересборки
Заинтриговал. Горкуша это что? Grok от Маска?
А в остальном - это какой-то лютый зумерский текст для ТГ-канала, а не для Хабра.
Как собеседующий на с++разработчиков, позволю себе совет - не указывайте в резюме пройденные курсы на всяких там практикумах, отусах, скилбоксах и прочих, если проходили их недавно. Таких собесят с пристрастием, потому как это признак слабых знаний и отсутствия серьезного опыта. А проходить или нет эти курсы решать каждый сам должен.
лучше подождите год, а то и два. Глядишь, он вас будет собесить в компании 3-5 человек
Это ж опять открытие Америки.
#makehabrgreateagain
Когда у меня возникала проблема со Сбером, точнее у моего старенького отца, который не силах был бороться с подобным безобразием, я написал отзыв на banki.ru, и буквально через час меня пинганула сотрудник банка, мы созвонились и еще через два часа были отменены все левые операции и возвращены деньги.
Чего и Вам советую сделать. Все решаемо, даже в Сбере.
не уверен насчет совместимости, но некоторые предложения от Саттера уже были
https://isocpp.org/files/papers/P3081R0.pdf
cppcon и другие полезнейшие конференции
Первый коммерческий компилятор C++ (если не считать Cfront) создала компания Zortech ( в октябре 1988), которую потом купила Symantec и продавала под своим брендом
Далее
май 1990 - Borland Turbo C++ 1.0
февраль 1991 - Borland C++ 2.0 (версии 1.0 не было, просто выровняли версии)
ноябрь 1991 - Borland C++ 3.0
февраль 1992 - Borland Turbo C++ 3.0 (версии 2.0 не было)
март 1992 - Microsoft C/C++ 7.0 (первый компилятор С++ от M$)
июнь 1992 - Borland Turbo C++ for Windows 3.1
июнь 1992 - Borland C++ 3.1 (появился OWL)
сентябрь 1992 - Borland Turbo C++ for Windows 4.0
декабрь 1993 - Borland C++ 4.0
и т.д. может мне стоит накатать статью-таймлайн сред разработки и компиляторов С++?
Заметил давно уже такую закономерность - те, кто пытается писать с соблюдением SOLID и прочих принципов, пишут мерзкий код, который потом сложно читать/сопровождать/переписывать. В данном случае он еще и не безопасен (как минимум нужен override у виртуальных функций и не нужны virtual)
Могу ошибаться, поправьте, если что. Родословная Max OS примерно так выглядит:
Apple SOS(1980) - Apple Lisa (1983) - Max OS (1984)
Mac OS X же унаследовала NexTSTEP и BSD ветки UNIX
Тут и CP/M не упомянут, хотя в 70-е и начале 80-х была самой популярной ОС для персоналок, и именно с нее была слизана первая DOS. Да и тема с Линуксом не раскрыта. (почему именно 25 августа стало днем Линукса читателю, видимо, предлагается самостоятельно погуглить).
Очепятка "ОС 6-DOS у Seattle Computer Products"
ОС 86-DOS ...
Как хорошо, что по C++ нет чит-шита. Иначе бы он был на 1000 страниц
Upd. а нет, таки есть (
https://cheatsheets.zip/cpp
В больших проектах скрам скорее мешает, чем помогает. У себя в команде мы реализовали очень важное улучшение по скраму - уволили скрам-мастера и отменили ретро (но таки иногда собираемся по необходимости с пивом). И работа стала намного эффективнее.
Читать незнакомый код - это не только код-ревью и это очень важный навык. Если человек не может прокомментировать небольшой, но сложный код, потом он точно также будет тупить и в реальной жизни и долго разбираться с багами. Пять строк кода распознать можно за пару минут, я не даю простыню целую читать.
Никаких замеров скорости тоже никто не делает, но хорошего специалиста сразу видно по тому как он пишет код.
являюсь "сеньорным разработчиком", проводящим собеседования для с++ разработчиков. Собеседования для меня - это такие же прямые обязанности как и написание кода, код-ревью и т.п.. Что значит "отвлекает", не понимаю. Я заинтересован работать с профессионалами, в этом вся мотивация. Отношусь ко всем кандидатам одинаково лояльно и всегда объясняю почему меня интересует именно то, что я спрашиваю (написать балансировку КЧ дерева не прошу. Хорошо, если человек это знает. Не знает - тоже хорошо, т.к. это не нужно знать в реальной разработке 99.9% разработчикам). Чтобы не тратить свое и чужое время, обсудил и научил своих hr уточнять у кандидатов используемый ими стек разработки и субъективный уровень владения ЯП-ами и инструментами.
Мне важно насколько быстро человек может читать чужой сложный код, на лету проектировать несложные структуры, быстро писать код, не пропуская и не забывая различные const, std::move и т.п., разбирается где и какой контейнер использовать.
Кому сразу говорю нет - например, джун не может рассказать, что такое итератор - до свидания через полгода. Не знает как устроены внутри простые string, vector, list - тоже до новых встреч. К кандидатам-сеньорам требования другие, конечно, но тоже их проверить можно за полчаса на простых примерах кода.
Как известно, есть множество вещей, которые намного проще и быстрее можно написать на C#, Python и прочих, чем на С/С++. Как меряют продуктивность команд тоже известно. Можно даже, наверное, в том же гугле найти две С++ команды с дикой разницей по продуктивности. Поэтому пока эти утверждения неубедительно выглядят.
Иначе невозможно участвовать в тендерах на поставку российских операционных систем. Вас разве не смущают тысячи отечественных устройств?