Итак в современном мире мы имеем огромное количество языков программирования для решения разных задач что вызывает Вопросы вроде почему всё ещё нет одного универсального языка программирования или Почему языков программирования так много мы люди интуитивно понимаем что для разных задач есть свой инструмент и что молотком легче заколачивать гвозди чем отвёрткой с языками программирования вроде как то же самое но за последние 50 лет в it сфере произошло много открытий Но если сравнивать её со сферой скажем автопрома то первый двигатель внутреннего сгорания начал зарождаться аж в XV веке в то время как первый широко известный язык програм появилось только 70 лет назад это значит То что у нас есть Фора мы находимся в на рассвете it сферы и самое интересное только должно произойти Позвольте мне нарисовать вам полную картину в XX веке промежутке между пятьдесят чет и пятьдесят се годом в компании IBM несколько программистов под руководством Джона куса придумывает язык программирования фортран который принято считать первым языком программирования для людей в то время не было геймдева Веба Data Science и прочих современных Витей программирования и фортран использовался для научных задач в основном это была какая-то математика но как и Лиза прожившая путь Макинтош Apple фтн проложил ть многим другим языкам программирования появляемся в то время вроде Basic или ли которые в свою очередь открыли дорогу другим языкам в том числе языку программирования си си после своего появления стремительно начал смещать все остальные языки и на 20 п лет с огромным отрывом ушёл от всего остального что было на рынке этот успех был связан с тем что как и с фатра нам идея си была в том что люди больше не должны были писать assembly код что было и остаётся очень сложно и долго по определению плюсом си появился спустя 15 лет и он появился именно в том виде который внимание синтаксически привычный нам всем и по сей день то есть Денис Рич попал в яблоко и изобрёл колесо на основе си буквально появлялись и появляются все остальные современные языки Но более важно то что он появился в среде с небезызвестный названием unix это семейство операционных систем ещё до всяких Досов и виндовсом которые ложила дорогу этому самому Виндовсе и то что сейчас мы берём как должное вроде текстовых редакторов калькуляторов и других утилит в то время было чем-то особенным системное программирование системный утилит и понятие пользовательского пространства unix был чем-то эволюционным и конечно же всё это писалось на языке который имеет интуитивный синтаксис быстро работает и не имеет в себе никаких штук тогда ещё неизвестных вроде исключений ооп замыканий огромных стандартных библиотек и прочего сложного жира То есть ты имеешь все преимущества ассембли но скорость написания программ у тебя кратная это был успех в то время как раз-таки и появилась та самая легендарная книга керниган и Ричи поси откуда кстати и пошла идея писать программу под названием Hello world Разумеется вся эта популярность не прошла просто так пьян страус труп находясь в соседней комнате с Денисом Ричи одним из авторов C начал разрабатывать c+ Plus который Неудивительно должен был стать лучше чем C а уже потом ближе к двухтысячные и питон и Java и JavaScript которые стрельнули в первую очередь из-за того что были проще для программистов чем c c+ plus и вот это вот проще на самом деле требует отдельной главы для объяснения и в ней кроется вся суть эти языки в то время безусловно забрали свою доль рынка но спустя ещё 20 лет от этого момента Мы попадаем в 2024 год где популярность джавы уже осела появились новые хайповые языки вроде ста но почему-то си снова возвращается в район топ-1 Давайте подойдём к этому вопросу как раз-таки с объяснения вот этого самого проще потому что си маленький язык в нём практически ничего нет И что значит ничего нет почему та же самая Java оказалась более предпочтительной в начале двухтысячных если мы возьмём к пример книгу керниган и Ричи какую-нибудь среднюю книгу по c+ Plus то разницу в размерах вы видите на лицо Несмотря на то что тут нет половины современного c+ Plus если мы посмотрим на то что вообще есть в си как в языке программирования даже не для подготовленного программиста тут будет всё как на ладони У нас есть несколько типов данных оператор и концепция выражений У нас есть Control Flow чтобы контролировать поведение программы функции структуры чтобы создавать что-то похожее на современные объекты ВП И последнее - это указатели и массивы всё что тут идёт дальше вроде как работает со перко unix и минимальний стандартная библиотека это больше как бонус буквально 200 страниц и вы знаете си язык на котором написан интерпретатор питона Linux git mysql tcpip Stack и куча всего остального соблазнительно же вот это вот всё учится буквально за несколько недель с минималь нейшен подразумевает что вы что-то уже знаете про программирование и более того Так как в си ничего нет Вы должны писать Всё сами например основополагающие каждой разработки - это данные которые как-то структурируется проще говоря структуры данных хотя бы самые основные которые есть Почти в каждом проекте скажем ш Table но чтобы написать ш Table в C тебе нужно сначала написать связанный список в си ко всему этому нужно написать ещё тесты конечно же а это всё только начало как какой тогда смысл учить язык в котором ничего нет И нужно писать Всё самому это супер долго и требовательно в этом и заключается смысл это самая легендарная цитата линуса торвальдс мол c+ Plus - это ужасный язык со всей его сложностью и сотнями фич просто наймите сиш неко Они понимают как всё работает перед тем как идти дальше один из хороших способов понять как работают компьютеры - это научиться их ломать хакинг Но хакинг - это плохо решение белый хакинг на таких специалистов сейчас бодрый спрос и соответственно солидные зарплаты если говорить конкретнее то хака можно что угодно это веб сети операционки Железяки но и соответственно защищать Также можно что угодно чтобы научиться белому хакингу или ещё говорят пин тесту или ещё проще стать информационным безопасника можно просто проходить курс компьютерных наук в Интернете Но это может затянуться Плюс нужно очень хорошие Знание английского языка с другой стороны можно заплатить типам которые этим полжизни занимаются И они вас научат в интернетах есть онлайн-курс который так и называется белый хакер школа Skill Factory за 13 месяцев там сделают Так что вы будете понимать весь необходимый компьютер сайнс чтобы дефа ны хакеров на всех уровнях более того также Попробуйте себя в роли и нападающих у них там в практике есть форматы ctf а практики в целом на курсе очень много и ещё плюсом вам тут помогут найти работу через меня тут будет скидка 45% по промокоду winderton поэтому чекайте Именно поэтому в то время си закалял и тренировал людей вследствие чего хорошие сиш неки и создавали всякие гиты и линуксе сейчас же ты можешь взять питон и не париться Как где-то что-то работает и принимать это всё как должное Поймите меня правильно Нет ничего плохого в том чтобы использовать нужный инструмент в нужном месте потому что писать UI или ML на си не самое мягко говоря быстрое занятие смотрите Однажды небезызвестный Стример Аман Gold сказал следующее завести семью - это лёгкая Победа в жизни и я с ним согласен потому что Всё В итоге сводится к семье Но когда у вас появляется семья вы зачастую жертвует всякими амбициями стать художником музыкантом бизнесменом и так далее так вот сейчас в наши дни сесть и начать учить скажем Pon или jav - это всё равно что завести семью вы быстро и относительно легко выигрываете в этой сфере но жертвуй фундаментальными знаниями которые в последнее время всё больше и больше становятся необходимыми из-за хайпа в сфере и соответствующего плато не самых качественных разработчиков как продукт этого хайпа Но насколько всё-таки много сейчас происходит активности вокруг языка си несмотря на его возраст сильных конкурентов и на первый взгляд сомнительные ценности на рынке вы сейчас удивитесь но перед этим я скажу наверное один из самых ключевых моментов Почему си это скорость Почему си - Это полный контроль Почему си - это год мы увидели что есть си базовые конструкции чтобы написать что угодно как и завещал ан Тюрин но си также даёт тебе возможность управлять твоим железом как и язык assembly внимание с помощью единственного механизма В этом самом языке это ручная работа с памятью указатели которые люди ненавидели и ненавидят И как только вышла Java с лозунгом никаких больше указателей Все ушли на неё материалов на тему указателей то что это просто тьма тьмущая Но на самом деле это не просто люди постоянно ошибались и ошибаются Но именно указатели это есть и было основным преимуществом языка си Потому что если мы задумаемся то всё наше железо для нас как разработчиков выглядит примерно так у нас есть процессор и он работает с какой-то там памятью всё всё остальное в системе вроде мышки клавиатуры сетевой карты и более того не только железа А даже софта вроде текстовых редакторов и утилит Можно также представить в виде памяти и работать с ними как с памятью с помощью таких механизмов как emory ming Что всё это значит если вы вдруг запутались это значит То что у вас в языке есть механизм с помощью которого вы можете творить всё что вам только придёт в голову нарушать всевозможные правила всё это будет Мега быстро работать но это сложно и требует большой практики Несмотря на то что у или проще говоря работа с памятью это сложно по какой-то на первый взгляд странной причине всё это всё ещё продолжают использовать и использовать чрезвычайно активно вот вам небольшой сгусток данных с интернета с проверенных источников где люди смотрят на популярность того или иного языка с разных точек зрения одна из них - это конечно же рейтинг где си стоит рядом с питоном вмл и искусственного интеллекта то есть питон сейчас абсолютно везде а с ним стоит рядом язык который вроде как нужен для каких-то там сложных системных штук которые никто не видит вроде tcp стека самом деле всё проще во-первых си котируется как очень хорошая база для разработки на c+ Plus си встречается во многих вакансиях топовых контор за си топит яркие личности в интернете вроде интервью хотса у Лекса фридмана где он сказал что все должны зна си Хотя тип пишет 24 на 7 на питоне плюсом в любом топе Пять языков которые должен знать программист 100% будет си но рейтинг тиби не особо рейт сами программисты Потому что тут учитывается много не мало а именно запрос по этому языку в Google Аля те самые Нужно ли знать и так далее более точный источник - это конечно же github и количество контрибьютор и много Кто думает что ра заменит c c+ plus потому что относительно недавно расту дали жизнь в ядре линуса А это большой шаг но у ра также есть свои проблемы как любого языка в которые Кстати я обсуждал в своём подкасте в телеграме загляните туда там выходят эксклюзивные видосы если вам нравится то что я делаю тут в общем Одна из основных проблем ста что это язык это что-то обособленное от всего остального То есть ты как будто бы учишь СТ и знаешь только СТ А если ты учишь си то ты знаешь всё остальное Окей если присмотреться внимательнее Где находится си а именно Седьмая строчка то что стоит между ним и растом который на хайпе лу - это скриптинг и больше работает Как клей для проектов То есть это используется много где Неудивительно ty спт - это который сейчас также везде и многие jav скрипте уже давно переходят на типизированный JS То есть это весь тут забирает свою долю далее Это манифест с конфигурационный язык каждому проекту такое тоже нужно это не про программирование дальше идут база данных опять же это супер специфика необычный язык на котором только и описывать запросы к базам и вот тут уже начинается самое интересное рядом с популярнейшим питоном который сейчас обут во всех компаниях стоит старый добрый си Так почему же все постоянно возвращаются к си Почему этот язык уверенно сидит в хато Почему лучшие умы рекомендуют его до сих пор учить Почему гон - это по сути современный си мы Все настолько глубоко погрязли в абстракция ребят потерялись в миллионов строчек кода и просто запутались что нам всем нужна Свежая кровь хороших базированный разработчиков которые напишут нам новые линус гиты нис Ричи был умным человеком и как говорили в детстве Время покажет время действительно показывает пока си это всё ещё колесо только [музыка] добра A