Я меня разница в Python и C Python - Вы пилот гражданской авиации, вас привезли на автобусе к современному самолету типа Боинг, самолет уже подготовлен техниками и вам надо только сеть в кресло пилота, ввести полетное задание в бортовой компьютер, который рассчитает маршрут и топливо. Дальше только провести чек-лит и совершить рейс в автоматическом режиме автопилота. СИ - вы приходите на взлетную полосу, там аккуратно сложены запчасти самолета, инструменты и чертеж сборки. Вам предстоит самостоятельно собрать самолет и полететь. Assembler - тоже самое что и СИ, только вместо запчастей у вас есть только металлы, дерево и пластик, хим. реактивы для создания запчастей и инструментов, книга "Основы современной физики и химии", а так же бочки сырой нефти для перегона в керосин. Разве что в отличии от авиации, в программировании количество попыток взлетов и посадок у вас не ограничено.
И тут в полёте в автоматическом режиме, происходит BSOD. И орать некуда: мая дай, мая дай. Но в своём ускоренном полёте к встрече с планетой, вы видите в иллюминатор, какой-то самолёт футуристического вида, пронёсшийся мимо вас на гиперзвуке с надписью СИЮНИКС.
@@Коля-л8з машинный код это всё как с ассемблером, но вместо сытой нефти у Вас карта нефтегазоносных месторождений, вместо металлов руды и иные полезные ископаемые, от книги "Основы современной физики и химии" у Вас только приложения - справочные таблицы, при чём только цифры, без подписей и объяснений что для чего. Но есть одна тонкая брошюра - "Логика" ;) И вот с её помощью надо построить самолёт )))
Я, как разработчик на си, могут сказать, что в си есть все, просто это не стандартные библиотеки в коробке, а отдельные проекты с большой вариативностью. Так как в си мало кто погружается и у него разнообразное применение, то нету хайпа отдельных фреймворков, как раст или джанго на питоне. Не надо говорить, что все придется писать с нуля, вся база ужа давно написана.
Здравствуйте, Я начинающий разработчик на C. Выучить базу языка не самая главная проблема, как мне кажется. Гораздо сложнее - это применить его в какой-то отрасли, вроде нетворкинга, или чего-то подобного. Подскажите, как профессионал, откуда нужно черпать информацию, и в каком порядке? Может есть литература/статьи и т.д.? Не сочтите за наглость, но самому тут двигаться достаточно трудно, хотя какой-никакой техническо-эникейский бэкграунд имеется;) Буду рад обратной связи.
@@odiiibo, смотря какая база данных нужна, возможно уже все написано, надо искать. А так, если нужно что-то специфичное, то можно найти на обычных сайтах с вакансиями, мы не прячемся от всех на отдельных сайтах или еще где 😅
@@maroo1949, если уже есть база, то лучший способ практика. Да, будет сложно, информация не так хорошо описана на всяких популярных сайтах. Надо будет читать мануалы и прочую литературу. На мой взгляд, штудировать ее не надо, а надо применять на практике. Может будет звучать попсово, но пет проекты будут хорошим решением. Можно будет найти уже реализованное что-то на гитхабе и разобраться в нем или опираясь на это написать свое. Все зависит от желания куда хочется развиваться. Как я писал, си очень вариативен, поэтому сразу изучить все не получится. Суммирую, придумываешь себе проблему и решаешь ее на практике, а потом смотришь как сделали другие. Программирование - это про решение проблем. Надеюсь хоть чем-то помог.
@@xcxc-iu3rb питон написан на си, если человек узнает каким образом написан питон (то есть хорошо знает си), то он будет увлечен на всю жизнь так как ему откроется много возможностей, сможет написать любой яп
Вопрос "почему все начали учить Си" в видео не отвечен. Просто объясняется почему Си - это основа и показано, что в гите он достаточно используется. Но интересно может быть с точки зрения истории.
Главная боль наСИльника это не указатели, нет.... Главная боль наСИльника это неопределённое поведение в зависимости от реализации компилятора и стандартной библиотеки. Об этом не принято говорить, но существует настолько много способов выстрелить себе в ногу, что отладка всей этой красоты занимает непозволительно большое время и стоит изрядного количества нервов.
Это синдром говнокодера - компилятор ошибается, если автор кода творит всякую дичь вместо использования древнего как копролит шаблона проектирования. К примеру проводит выходной контроль результата несущего ошибки вместо того чтобы проводить входной контроль операндов и исключить возникновение ошибки...
@@101picofarad, ох, помню, как жопы-то горели при переходе с MSVS 6.0 на более свежие компиляторы того же MS. Не говоря уже о gnu. Да, говнокод. Но писателей на MSVS 6.0 было очень много. И кода они нарожали тоже много. И он ведь работал... А потом р-раз - и даже компилироваться перестал.
Папа может в Си, папа-папа может в Си. Пока это так - всё в порядке на Руси. Папа может в Си, папа-папа может в Си. Дот нет или Джава? Нетушки, мерси. Папа может в Си, папа-папа может в Си. Пайтон или Руби? Господи, спаси! Папа может в Си, папа-папа может в Си. Пока это так - всё в порядке на Руси.
Спасибо за твое мотивационное видео лет 5 или 6 назад. Не помню, вроде писал уже. Заехал в 40+ в айти. Хоть я тебя и не смотрю больше, но именно твое видео было тем, что меня сподвигло тогда задуматься о том, чтобы сменить профессию будучи 40+. Просто тогда не было еще всех этих видео, войти в айти в 30+, в 40+ и т.д., если и были, то очень мало. Сейчас уже это до тошноты, но тогда это было лично для меня неким откровением.
9:00 это не "количество контрибьюций по языкам",то "тренды увеличения кол-ва контрибьютеров", грубо говоря отображение текущей моды. Если посмотреть по количеству кода и контрибуций по языкам программирования, то последние 10 лет в неизменно на первых двух местах JS и PHP (языки разметки, запросов и пр. Не учитываем)
Потому что язык Си (высокоуровневый язык ассемблера) это основа всех основ. Язык Си будет существовать и оставаться актуальным до тех пор, пока существует хотя бы один процессор или микроконтроллер.
Строго говоря, всё это не так. Если Си - основа всех языков, то как могут существовать языки, появившиеся до Си, т.е. до 1972 года? Си далеко не сразу стал популярным после его изобретения. Си не является ассемблером, поскольку это язык совсем другого типа. Ассемблер - низкоуровневый язык. Си считается высокоуровневым (по традиционной классификации языков)
Про что видео? Бла бла бла. Почему си возвращается? Да потому что вокруг нас становится дофига микроконтроллеров, которые программируются на си :) потому что это не монструозная хрень которая сожрёт все ресурсы которых нету в контроллере. По сути нынешние контроллеры это компьютеры времен восхождения си.
То вы готовить не умеете :) Правильно приготовленные ключи компилятора С++ дают размер кода байт в байт с оригинальным кодом С. Но читать все легче - шаблончики, классики. Я делал для ардуинки - переписывал С в С++.
@@ainsoveternal1272 ассемблер - это уникальная фишка семейства процов, и, даже, конкретной модели. Писать программу под 3 разных семейства, например, это уже перебор. На одно семейство уходит 3-5 лет тренировок человека. И то, если у вас была практика на 8086, то под i5 сегодня, вам занова учиться.
@@alexzk3 а что за цвета у тебя на аватарке? Давай в фортэцю, че на Ютубе сидишь? Твои братья в тебе нуждаются, последняя партия вот вчера домой поехала (по частям).
@@WH0ISBACC0 на тему пакетиков, скажу по секрету: ваших уже никто особо в пакеты не грузит, свои бросают, наши закапывают или сжигают на месте, "без вести пропавших" сколько бригад? Вот ... показать фотки здесь не могу но ... красавцы штабелями отдыхают. Сейчас там их жены и мамы плакатами махают, "повернить их до дому", реально думают наверное что те военнопленные хахах ... угу.
@@MrLotrusлибы для питона написаны на питоне, и это в принципе так для всех языков! Иначе каким хреном они бы работали в питоновском интерпретаторе? Разве что отдельные либы такие как numpy, tensorflow используют Си для более быстрых счётных операций, но там это взаимодействие происходит через юникс сокеты, а не прям хрясь бле и откуда не возьмись среди питон кода взялся код на Си. Если нет компетенции пороть что ни поподя, тогда лучше промолчать…
Писал и на C и на Java. Java позволяет писать более качественный код неопытным разработчикам, за счет средств самого языка. А это и требуется в данный момент большим компаниям: нанять мидлов с пару лет опыта, чем искать C-синьоров с бОльшим количеством лет опыта (и за бОльшую з/п)
Ответ прост - не становился он снова популярным, он всегда держался на одной планке, просто что-то взлетало и потом падало, а что-то взлетало и оставалось выше Си, сейчас у Си просто своя ниша, которую он делит с С++
"Си это всё еще колесо" -- максимально простое и всем понятное колесо, без которого никуда. На Python можно написать что угодно. На C можно написать Python
Ну да. Этим я и занимаюсь. Каждый понедельник я начинаю с того, что пишу язык программирования. А в обед иду в поле, косой добываю зерно, перемалываю его в муку. Потом иду за водой и выпекаю хлеб. Потом сажусь в самолёт и лечу на остров обжаривать кофейные зёрна. По дороге успеваю подоить корову и приготовить сливки. Чизкейк и кофе что может быть лучше в понедельник?
Как знающий ассемблер, могу сказать, что Си сильно упрощает жизнь в написании кода. После асмы код пишется быстрей и при этом в производительности потерь крайне мало. Ложка дегтя: надо настраивать компилятор, чтобы он не пытался оптимизировать код там, где это не надо. Если тот же дальний прыжок заменится ближним, будет очень весело
Низкоуровневый код под железо можно писать на ассемблере и си, других вариантов нет. Но на си удобнее и не хуже по оптимальности. А вот когда все драйвера написаны, ОС запущена - пишите дальше на чем хотите. 😊 Наша работа закончена.
Всё просто си, был первой попыткой сделать ассемблер, удобным для понимания и написание человеком, и при этом оставлять все возможности машинного кода! А за ним пошли другие языки, бейсик и паскаль, и потом всё другие, вся разница это сколько возможностей остояться в обмен на удобство, удобно написать напечатай ответ на экран, чем расписывать все действия для этого которых очень много! Но такой подробный план действий можно сделать очень быстрым! А высоко уровеньие языки так не могут! Что бы посчитать 1+1 им нужно сходить в библиотеку и проверить что такое + это просто для понимания, да быстро возьми конфету на 2 полке шкафа в 5 с права чашке, а так долго будет:" найди конфету в шкафу и возьми" пока ты нашел её уже взяли и съели
Мне всегда было интересно создавать что-то с нуля. Я щас учу джаву и андроид разработку, например я писал редактор кода с кастомной подсветкой и многое другое но не связаное с андроидом, типа полностью кастомных циклов и функций. писал небольшой фреймворк. Раньше я думал что между С и С++, практически нет различий. Делать что-то с нуля - это классно, ты понимаешь как рабоатет все под капотом, и смотришь на свой код и думаешь "ЭТО - я написал", ты можешь делать в своем коде все что тебе угоднл, тк ты понимаешь как это все работает. Пока я писал все кастомное я например понял что интерфейсы в джаве это имба, и очень удобная штука, еще я узнал как рабоают лямды. 😊
@@Torn_Shoe вот если честно, крутое развадилово было с этим пайтоном, школы столько ребят страждущих нагнали, но по факту пайтом бесполезный язык, ну если вдоваться, и самое смешно, только пайтон может на начальном этапе реально прям почувствовать себя гуру программирования, другие языки к сожалению не такие, или к счастью)
В языке программирования главными качествами являются простота и читабельность кода для его дальнейшей поддержки другими программистами. ЯП СИ был разработан в самом начале 70'х как язык СИСТЕМНОГО программирования вместо Ассемблера. Ни одному из указанных выше требований для разработки прикладного (не системного) ПО не удовлетворяет !
Ну, я бы ещё отметил важную нишу Си, про которую нркто вроде тут особо не писал - Си используеться в микроконтролерах в радиотехнике, робототехнике и дронах, а эта тема стала в последнее время набирать популярность. Тут и работа с памятью это не просто фича для красоты, а нужда, и быстродействие. На основе Си строяться всякие stm32 и т.п.
Недостаточно просто выучить язык. Он же не в вакууме работает. Нужно также изучить стандартную библиотеку, API операционной системы, самые используемые библиотеки и фреймворки. Разобраться с компилятором и системой сборки, IDE. Мне еще когда-то сильно помогла книга "Веревка достаточной длины, чтобы выстрелить себе в ногу".
Ну это когда придумают новую архитектуру, например на спиновой памяти или памяти на ку-битах. Тогда понадобится какая-то новая модификация ассемблера. Запилят прослойку в ОС, и все дальше продолжится в том же духе. Все высокоуровневые языки никуда не денутся
BCPL (Basic Combined Programming Language) - язык программирования, разработанный Мартином Ричардсом в 1966 году в Кембриджском университете. Изначально он предназначался для написания компиляторов для других языков. Сейчас BCPL практически не используется, но в своё время он был очень важен из-за хорошей портируемости. Урезанная версия языка с несколько изменённым синтаксисом стала языком программирования B, который оказал сильное влияние на язык программирования Си. По этой причине программисты в шутку расшифровывали название BCPL как Before C Programming Language («язык программирования, появившийся до языка Си»)[1].
@@wasting_the_dawn Я в курсе. Я читал интервью Кена Томпсона, где он упоминал это. Речь о синтаксисе языка. Синтаксис языка B, созданный Кеном Томпсоном, очевидно является источником синтаксиса языка C. Синтаксис B значительно ближе к синтаксису C, чего не скажешь о BCPL.
источником всего является Ассемблер, а дальше уже каждый кто как мог экспериментировал:"АЛГОЛ 60 был одним из первых языков, реализующих определения функций (которые можно было вызывать рекурсивно). Определения функций ALGOL 60 могли быть вложены друг в друга (что впервые было введено в любом языке программирования) с лексической областью действия . Он породил множество других языков, включая CPL , PL /I , Simula , BCPL , B , Pascal и C. "
Читал я одну книгу там было сказано программирование держится на 4 вещах. 1 ввод данных 2 вывод на экран. 3 цикл 4 ветвление. Все зная это ты можешь писать программы.
слушал я тебя года три назад и сейчас слушаю какой смысл в этой трепотне ты же ничего полезного не даёшь цель победить себя прошлого в скороговорке ты же не пытаешься донести мысль, что то полезное вложить в слушателя, а соревнуешься с собой в количестве слов в минуту, ты сам то послушай свои бредни с точки зрения людей осваивающих программирование и что ты , как думаешь полезного до нас доносишь - пустобрёх ты вот и всё на что тянешь
Всё гениальное - ПРОСТОЕ. Автор абсолютно прав, что в борьбе за абстракциями люди начали терять фундамент под ногами. А эти "прослойки" во всём.... С 1985 года для меня Си был, и остаётся самым любимым языком программирования.
Автор, видимо (как и вы) ни дня не проработал в интерпрайзе и не учавствовал в разработке коммерческих продуктов хотя бы с тысячами пользователей (молчу про десятки и сотни тысяч). Чего далеко ходить - вот Ютуб тот же. Продукты такого уроня невозможно создать ни низкоуровневых языках программирования и используя стек технологий 80-х. Это факт. У каждого интсрумента есть своя ниша. Где-то "абстрацкции" не нужны, а где-то иначе просто никак.
А я думал, что Си становится популярным из-за развития всяких мелких устройств, для которых нужны микропрограммы, где кроме Си и ассемблера навряд ли что-то подойдёт.
Язык C для талантливых творцов, которые могут создать востребованный продукт. Бизнесу для автоматизации внутренних процессов нужна скорость разработки, которую обеспечивают только фреймворки. Нормальный бизнес умеет считать и распределять деньги. Никому в здравом уме не уперся тру-программист, который будет пару лет писать на С, изобретая велосипед. Им нужен спец со знанием основных механизмов фреймфорка, чтобы закрыть задачу на пару месяцев. Поэтому мне не очень верится, что все начали учить С. Он подойдёт для ознакомления или старта на факультете в университете, но не как массовая среда разработки для реальных заказчиков.
все просто - почему! С развитием Интернета вещей (IoT) и встроенных устройств "C" является основным языком программирования микроконтроллеров и систем с ограниченными ресурсами памяти, процессора и хранения программ. Так что взлет еще будет продолжаться в след десятилетия скорее всего.
Go - почти такой маленький в описании как C, но не даёт низкого уровня Zig - меньше чем C с препроцессором, даёт как минимум настолько же низкий уровень и мгновенный интероп с C и C++, при этом позволяет написать все абстракции самому. Так что непонятно зачем в 2023 году на 10:30 упомянуть Go вместо Zig. А Rust да, прямая (гринфилд, не инкрементальная) замена для C++. Настолько же тяжело использовать для Native Extensions для Python, NodeJS, JVM... если бы не лучшие в индустрии генераторы биндингов. Но конечно же не сколько не C.
Мне 28 лет и я с подросткового возраста хотел выучить C++, но все желание отбили наши учителя. Такое безолаберное, безотвественное проведение уроков, пар, я еще нигде не встречал. Абсолютно наплевательски относились в ученикам предлагая вонючий паскаль и си шарп. А теперь мне 28 лет и у меня уже не хватает нервов сесть и выучить даже питон.
мне 41 и все можно выучить если есть желание, пропейте б12 для памяти, уберите стресс, у нас в школе вообще бейсики были, вас хотя бы полезному учили, у нас еще в школе выкинули из программы мат анализ, ничего выучить можно все
Хорошее и правильное видео, доброе) Теперь ещё всем бы понять что у нас остаётся только Си и Linux для высоконагруженных и параллельных вычислений, и будут все счастливы. Остальные языки и инструменты должны применяться только там где на них результат получается скорее и работает сносно, без глюков. Кстати многие программисты С++ довольно посредственно кодят на чистом С, из практики. И это печально.
Спасибо друг. Очень хорошо выразил мысль. Сыну пытаюсь донести ее же :) - пока не сдается. Надеюсь после твоего видео уговорю его, на получение фундаментальных знаний.
@@roktober Что бы решать бизнес задачи надо знать базу, а то приходят тормо.а которые даже толком не знают что такое float double int и т.д., не решали всякие задачки типа фибоначчи, и не работали с ссылками и указателями и кроме как готовыми решениями пользоваться ничего больше не знают, а мы кто получал фундамент решаем все что требуется. Ну хотя я с тобой соглашусь, чем больше будет таких неучей, тем востребованнее будут такие как я.
@@АндрейАронов-б7л я все это знаю и не пригодилось ни разу. гораздо хуже, когда человек не знает базы в плане архитектуры и чистого кода. а то таких задротов полно, но напишут такой код, что хоть стой, хоть падай. а востребованными являются часто те, кто может обсудить фичу с заказчиком и предложить, что лучше сделать с точки зрения юзера и решения бизнес задачи. таких тоже мало почему то среди задротов с сотнями решенных задач на литкоде.
Мой первый язык программирования. Учил ещё в школе на факультативе. в далёком 1992 году. Тогда после УКНЦ МС 511 IBM был словно мерседес в мире IT. Хорошие были времена.
не важно на чём писать! важно ЧТО писать! если делать "бизнес", то есть создавать кучу однообразных "проектов", то выбирается самый передовой в области "проектов" данного типа "инструмент" ПРОЩЕ - это лучший подход. усложнять не надо.
Хорошее видео, однако... абстрактное и поверхностное. Хочется, чтобы было продолжение о том, а "почему все-таки С", чтобы цепляло (тех кто посмотрел и не в курсе как писать на С) начать изучать этот самый С.
Нечестно луа считать клеем, а питон нет. Питон точно также, как и луа всего лишь небольшая прокладка между сишными библиотеками и пользователем. Раст я не видел еще (не заслужил он моего внимания пока), но если считать его языком программирования, на котором можно написать юникс (раз уж его пустили в ядро линкуса, то чё бы и нет), то между ним и С нет ничего, кроме "клея" и метаязыков. Кстати, на С можно писать и UI не (сильно) сложнее, чем на чем угодно еще. Есть же GTK :) А вообще, каждой задаче по инструменту. Новые языки будут всегда выбивать больше коммитов, чем старые, потому что для старых все очевидное необходимое уже написано, протестировано в использовании годами и не требует частого обновления. С другой стороны, любой новый язык в рамках одной парадигмы после третьего освоенного изучается за выходные до стадии джуна и если им пользоваться, то левелапы будут каждый день. Да, если решите изучить лисп после питона, тайпскрипта и луа -- у вас будут некоторые сложности (учите хаскель, хотя бы в глазах рябить не будет), но тут не с языком будут проблемы, а с рекурсией. А эти милениалы вообще могут пользоваться одними и теми же фреймворками НЕДЕЛЯМИ (ужас-то какой!). Так что бумеры (я тоже) со своими фортранами и си просто окаменелости, не способные написать новый фреймворк сегодня вечером, чтобы завтра им начать пользоваться всю оставшуюся неделю. (не моя шутка юмора, но очень хорошо объясняет почему на модных языках столько коммитов, в статистики качество и обоснованность необходимости этих коммитов не показана)
Под капотом армяне в нарды играют 😂😂 На Python настоящие программисты дела делают, пока ты изучаешь C++ ради изучения C++ 👎 Пока до реальных задач не дорастёшь НЕ ПОЙМЁШЬ
@@SalatikInMyHead Ненастоящие программисты пишут API на С, CUDA, С++ и используют Питон как скриптовую склейку, что-бы настоящие программисты доросшие до РЕАЛЬНЫХ задач дела свои на них делали.
@@SalatikInMyHead я знаю С++ на определенном уровне, по крайней мере могу: написать API и прикрутить его к Питону, кодить в Unreal Engine, написать CUDA код, посмотреть исходники CPython и понять как работает PyObject когда необходимо. Расскажи пожалуйста до каких таких реальных задач ты дорос, что тебе не нужны основы?
Все от задачи зависит. Если на Питоне надо дернуть библиотеку с ГитХаба, передать ей пару параметров, в ответ получить Джейсон и вывести его в нужном формате юзверю, то все советы по сям и асме засуньте поглубже ))
Указатели это деталь языка. Главное в отличие от Java и пр. это генерация нативного кода процессора. Вкупе с оптимизирующими компиляторами с 50+ летней историей развития это дает максимальную эффективность кода.
потому что Си это база и без него не будет никаких пайтонов... да и если ты программист то как ты не любишь УКАЗАТЕЛИ? хотя наверное это глупый вопрос в 2024 году где каждый у кого есть пальцы может открыть пайтон и через час уже наваять прогу не зная вообще ничего ни про что
А есть хороший, я имею с виду действительно хороший курс по C? Синтаксис-то я знаю. Но взяться и порешать на C какие-нибудь задачи, поработать со сборкой проектов, Makefile-ами? И чтобы это всё было структурировано. Я писал структуры данных и некоторые популярные алгосы на C. После более современных языков типа swift это, конечно, трудновато и куда как более тяжеловесно. Но интересно. Только привыкнуть к процедурному подходу надо. Но вот поработать бы с чем-то более структурированным, так, чтобы не придумывать самому себе. Ибо я могу замахнуться на написание нового Linux kernel, и mess myself :)
Зря, лучше найди интересующий тебя топик и посмотри языки которые могут удолетворить твою потребность, ибо ты просто потеряешь слишком много времени уча С и С++
приведенный рейтинг называется "топ растущих языков по размеру контрибуции". а проценты это % сколько кода добавлено за год по сравнению с предыдущими. очень коварный топ, в него легко залетают маленькие языки, у которых легко сделать значимый прирост. и не заметны "старички" с огромной кодовой базой, прирост кодовой базы в которых в абсолютных числах может быть на порядки больше чем у тех кто в "топе", но тут решает отношение вверху будут те у кого мало в прошлом году и побольше в этом...
Ну не знаю, указатели.. сложно. После питона мой второй язык был С. Сперва, я конечно офигел, но спустя месяца полтора уже не чувствовал проблем когда указатель указывал на другой указатель. С правильной организацией выделения памяти, особенно в структурах, бывали непонятки по скорости работы.. Но это как-то решалось выбором более плоских конструкций. Си сам по себе простой. И как тут правильно сказал человек, самая жесть в си это компиляторы... Собственно, именно из-за этого ЧУДОВИЩНОГО гемора я и свернул свой путь в сторону "чего по-проще". Но, всем советую попробовать си. Это очень весёлый процесс и ни с чем не сравнимый каЕф, когда твой экстеншен для питона взлетает и фигачит именно так как тебе надо на огроменной скорости 😊 Память только освобождать не забудь ;) а то прольётся 😂
Скажем так, компиляторы - это не так уж и ужасно, если не пытаться объять необъятное и впихнуть невпихуемое. Просто нужно определиться сначала с платформой, под которую пишешь, и только потом выбрать определённый компилятор, которым будешь пользоваться. Прочитать по нему мануал за день-два, настроить IDE/среду - и вуаля. Дальше, если не распылять усилия в попытке охватить весь зоопарк (а реально это нахер никому не упёрлось!), никаких проблем, пиши себе и пиши. Тут нужно просто научится говорить себе "Я никогда не буду портировать этот хэллоуворлд на вон ту давно умершую платформу 20-тилетней давности!" 😄
@@1kvolt1978 верно. Но ещё бывают случаи когда для проекта нужная какая-то либа и вот она на хабе - бери и собирай. А вот ещё одна, с похожим функционалом.. И ещё и еще.. И вот тут начинаются экзерсисы. То не собирается, потому что зависимость протухла, а вон то, потому что ты сам дурак и не знаешь что это за макрос такой и почему он всё ломает нафик. Там под другую версию, тут пятилетней давности и под текущем не работает. Ты открываешь make заново с завидной регулярностью и с таких неожиданных сторон, что становится страшно :) И в такие моменты, я как ненастоящий сварщик, начинаю посматривать в сторону готовых бинарников под другой язык... И думаю, многие меня поймут.
@@1kvolt1978 да, но масштаб сложности другой. Скажем так, на порядок. Типа мы переехали со второго питона на третий? Ок, я отшиб себе руки всего раз 5-7, и то, обо всякие пустяки, которые (каюсь) прямо в юзер пакете поправлял вручную и ехал дальше ;) Или там, найти нужный пакетик, скачать и линку исправить. Полчаса возни максимум. Джаваскрипт старый попался? Переделал импорты, чутка подшаманил в классе вызова - уаля ;). С си, так легко не отделаться... Если встрял, то будь готов к выращиванию запасного мозга и покраснению глаз на долгие (дни?) 😂. Понимаю, сейчас придёт умный человек, и скажет что я просто лох и не умею.. И я соглашусь :) Там уметь надо. И так уметь, что процесс сборки норовит превратиться в отдельный проект со своей документацией :) А ещё, мне вспоминаются слова Линуса, когда он комментировал очередную версию (кажется 4.5) gcc. В свойственной ему манере, он сказал, что мы не будем это использовать, потому что эта штука так оптимизирует код, что мы не можем сказать потом как он работает. Если автор гитхаба не знает, то я тут вообще в сторонке на башике всякие глупости лучше поковыряю ;) Не знаю чем история закончилась, но весьма иллюстративно это.
@@picblade Ну как я и сказал изначально, если не пытаться объять необъятное, то многие проблемы перестают быть таковыми. Например, я для себя выбрал, что пишу под Вин 7 х64, на которой сижу. Выбрал компилятор и IDE - сначала это был Pelles C, потом я решил перейти на gcc + Notepad++. С Pelles C проблем вообще не было, работает всё "из коробки". Но у него слабая поддержка WinAPI, нет некоторых важных Direct X хедеров и либ. Поэтому я перешёл на gcc и Notepad++ в качестве IDE. Прочитал мануал за пару дней, написал себе батник для командной строки с нужными мне ключами. И всё, никакого больше геморроя. При этом перенос проектов из-под Pelles C в gcc не вызвал вообще никаких проблем, кроме правки нескольких имён нестандартных функций. Потому что и там, и там я писал под одну и ту же платформу. Естественно, не в последнюю очередь это потому, что я всеми силами стараюсь избегать тащить всякое непонятное говно с Гитхаба. :) Если и пользую сторонние библиотеки (чего тоже стараюсь избегать до последнего), то выбираю проверенные временем и практикой от серьёзных разработчиков, а не "зырь, чо накропал!" от неизвестного Васяна.
Ты теперь тоже Сишник
Уже успел забыть :)
С реально тема, я его обожаю
А хочешь UI на ассемблере? посмотри на kolibrios
Ты тоже.
неееет😭😭😭😭
С
плюсы: можно написать всё.
минусы: нужно написать всё.
не " нужно написать всё" , а нужно подключить одну из тысяч готовых либ
@@moshamiracle это к плюсам относится
@@moshamiracle а можно создавать проекты с нуля и добиваться сверх скорости, создавать фичи и тому прочее.
Напишем всё, только деньги платите
@@matveykoval7154 Если бы можно было жить вечно... Можно было бы написать все. Я вот хочу написать свою ОС, но где взять время?
У всех языков есть свои плюсы, а у С++ их целых 2
а больше и нету
А у C# их вообще 4, хахаха
и 1000 минусов
@@Banka24 ну или двойное деление знака равно
@@PianoElipse нет, у C# это тоже 2 плюса, просто они ибуца.
Я меня разница в Python и C
Python - Вы пилот гражданской авиации, вас привезли на автобусе к современному самолету типа Боинг, самолет уже подготовлен техниками и вам надо только сеть в кресло пилота, ввести полетное задание в бортовой компьютер, который рассчитает маршрут и топливо. Дальше только провести чек-лит и совершить рейс в автоматическом режиме автопилота.
СИ - вы приходите на взлетную полосу, там аккуратно сложены запчасти самолета, инструменты и чертеж сборки. Вам предстоит самостоятельно собрать самолет и полететь.
Assembler - тоже самое что и СИ, только вместо запчастей у вас есть только металлы, дерево и пластик, хим. реактивы для создания запчастей и инструментов, книга "Основы современной физики и химии", а так же бочки сырой нефти для перегона в керосин.
Разве что в отличии от авиации, в программировании количество попыток взлетов и посадок у вас не ограничено.
И тут в полёте в автоматическом режиме, происходит BSOD. И орать некуда: мая дай, мая дай. Но в своём ускоренном полёте к встрече с планетой, вы видите в иллюминатор, какой-то самолёт футуристического вида, пронёсшийся мимо вас на гиперзвуке с надписью СИЮНИКС.
Python - вы пилот кукурузника АН-2
Транзистерной код
@@MTQvODg Нет. На питоне Вы пилот огромного Боинга, но с грузоподъёмностью и скоростью АН-2 )))
@@Коля-л8з машинный код это всё как с ассемблером, но вместо сытой нефти у Вас карта нефтегазоносных месторождений, вместо металлов руды и иные полезные ископаемые, от книги "Основы современной физики и химии" у Вас только приложения - справочные таблицы, при чём только цифры, без подписей и объяснений что для чего. Но есть одна тонкая брошюра - "Логика" ;) И вот с её помощью надо построить самолёт )))
Я, как разработчик на си, могут сказать, что в си есть все, просто это не стандартные библиотеки в коробке, а отдельные проекты с большой вариативностью. Так как в си мало кто погружается и у него разнообразное применение, то нету хайпа отдельных фреймворков, как раст или джанго на питоне. Не надо говорить, что все придется писать с нуля, вся база ужа давно написана.
Здравствуйте, Я начинающий разработчик на C. Выучить базу языка не самая главная проблема, как мне кажется. Гораздо сложнее - это применить его в какой-то отрасли, вроде нетворкинга, или чего-то подобного. Подскажите, как профессионал, откуда нужно черпать информацию, и в каком порядке? Может есть литература/статьи и т.д.? Не сочтите за наглость, но самому тут двигаться достаточно трудно, хотя какой-никакой техническо-эникейский бэкграунд имеется;) Буду рад обратной связи.
@@odiiibo, смотря какая база данных нужна, возможно уже все написано, надо искать. А так, если нужно что-то специфичное, то можно найти на обычных сайтах с вакансиями, мы не прячемся от всех на отдельных сайтах или еще где 😅
@@maroo1949, если уже есть база, то лучший способ практика. Да, будет сложно, информация не так хорошо описана на всяких популярных сайтах. Надо будет читать мануалы и прочую литературу. На мой взгляд, штудировать ее не надо, а надо применять на практике. Может будет звучать попсово, но пет проекты будут хорошим решением. Можно будет найти уже реализованное что-то на гитхабе и разобраться в нем или опираясь на это написать свое. Все зависит от желания куда хочется развиваться. Как я писал, си очень вариативен, поэтому сразу изучить все не получится. Суммирую, придумываешь себе проблему и решаешь ее на практике, а потом смотришь как сделали другие. Программирование - это про решение проблем. Надеюсь хоть чем-то помог.
@@odiiibo sqlite написан на Си, postresql написан на Си, лучше покажите разработчиков не на Си которые могут написать СУБД
@@maroo1949 В книгах. ЦОС, FPGA, NoC, SoC, Критические системы (здесь же Ada SPARK)
"научите человека писать API на Python и вы займете его на весь день. Научите человека писать язык Python и вы займете его на всю жизнь"
"Научите человека писать язык Python"? Сам понял что написал?
@@xcxc-iu3rb питон написан на си, если человек узнает каким образом написан питон (то есть хорошо знает си), то он будет увлечен на всю жизнь так как ему откроется много возможностей, сможет написать любой яп
@@gitkrant и какая от этого практическая польза помимо "увлечён, возможности, сможет"?
@@gitkrant ну если уж на то пошло, то никто тебе не запрещает писать ЯП на питоне)
на всю жизнь - это потому что он с голода умрет?
Воды тут столько, что всей африке хватило бы
жаль она цифровая
это же x ol i var
@@Alypsat_kz ;
Просто ролик про скилфектори
ну хватит уже
Вопрос "почему все начали учить Си" в видео не отвечен. Просто объясняется почему Си - это основа и показано, что в гите он достаточно используется. Но интересно может быть с точки зрения истории.
Потому что весь умный дом и робототехника, это си
@@serjioalvarezумный дом и робототехника заключаются вовсе не в программировании.
Си даёт возможность работать с любой периферией, как с файлом. В этом и есть суть указателей, на этом принципе линукс написан.
@@serjioalvarez при чём тут умный дом? на кой там си? для интересных багов?
Вопрос "не отвечен", потому что все не начали учить си. Обычный кликбейт. Да, так просто.
Если пишешь ты на СИ, Будь хоть трижды ламер,
Про такого говорят: Он - крутой программер!
брехня....
крутой пограмист
Классное видео про Си, мне как сишнику понравилось. Теперь ждём, когда все начнут писать свои операционные системы (для реальной работы с памятью))
Учил Си 30 лет назад, потом появились всякие ненужные Java и .NET и вот наконец-то время пришло. Пойду вспомню пару книжек.
Главная боль наСИльника это не указатели, нет.... Главная боль наСИльника это неопределённое поведение в зависимости от реализации компилятора и стандартной библиотеки. Об этом не принято говорить, но существует настолько много способов выстрелить себе в ногу, что отладка всей этой красоты занимает непозволительно большое время и стоит изрядного количества нервов.
курнул чтоль, всё как в стандарте определено так и работает.
@@XpIOHdeJIb3000 не все так однозначно
на практике иногда компилятор нарушает стандарт, бывает иногда даже санитайзеры не помогают найти уб
@@vvairy3119 ни разу не сталкивался. То что компиляторы не знают фишки новых стандартов - это бывает.
Это синдром говнокодера - компилятор ошибается, если автор кода творит всякую дичь вместо использования древнего как копролит шаблона проектирования.
К примеру проводит выходной контроль результата несущего ошибки вместо того чтобы проводить входной контроль операндов и исключить возникновение ошибки...
@@101picofarad, ох, помню, как жопы-то горели при переходе с MSVS 6.0 на более свежие компиляторы того же MS. Не говоря уже о gnu.
Да, говнокод. Но писателей на MSVS 6.0 было очень много. И кода они нарожали тоже много. И он ведь работал... А потом р-раз - и даже компилироваться перестал.
Папа может в Си, папа-папа может в Си.
Пока это так - всё в порядке на Руси.
Папа может в Си, папа-папа может в Си.
Дот нет или Джава? Нетушки, мерси.
Папа может в Си, папа-папа может в Си.
Пайтон или Руби? Господи, спаси!
Папа может в Си, папа-папа может в Си.
Пока это так - всё в порядке на Руси.
Научно-технический реп :)
Каким боком Русь к России?
@@Brave_Lionбазу знать надо
@@cyril442 база в том, что россия никак не связана с Русью. Это как две параллельные линии.
а дзе ты бачыш тут слова "расея"? @@Brave_Lion
Ого, прямо когда нужно вышел ролик. Спасибо!
А эти "все" сейчас с нами здесь в этой комнате?
printf("yes
");
>Почему Все Опять Начали Учить Си?
Потому что Си это БАЗА
Based
Для меня основа C++ и я думаю что самым первым языком должен быть не Python/js... А C
@@Сергей-и4б7к я тоже думаю, что Си должен быть первым языком.
база это ассемблер
@@inriinriinriinriinri и он тоже
Спасибо за твое мотивационное видео лет 5 или 6 назад. Не помню, вроде писал уже. Заехал в 40+ в айти. Хоть я тебя и не смотрю больше, но именно твое видео было тем, что меня сподвигло тогда задуматься о том, чтобы сменить профессию будучи 40+. Просто тогда не было еще всех этих видео, войти в айти в 30+, в 40+ и т.д., если и были, то очень мало. Сейчас уже это до тошноты, но тогда это было лично для меня неким откровением.
Респект. Отрадно читать, когда чьи-то ролики вдохновляют других. Было бы интересно узнать путь в ит после 40
@@KVV-RU да щас на ютубе этих видосов, вошел в айти в 30+, в 40+ и т.д. не думаю, что мой путь какой-то особенный)))
9:00 это не "количество контрибьюций по языкам",то "тренды увеличения кол-ва контрибьютеров", грубо говоря отображение текущей моды.
Если посмотреть по количеству кода и контрибуций по языкам программирования, то последние 10 лет в неизменно на первых двух местах JS и PHP (языки разметки, запросов и пр. Не учитываем)
Потому что язык Си (высокоуровневый язык ассемблера) это основа всех основ. Язык Си будет существовать и оставаться актуальным до тех пор, пока существует хотя бы один процессор или микроконтроллер.
Строго говоря, всё это не так.
Если Си - основа всех языков, то как могут существовать языки, появившиеся до Си, т.е. до 1972 года? Си далеко не сразу стал популярным после его изобретения.
Си не является ассемблером, поскольку это язык совсем другого типа. Ассемблер - низкоуровневый язык. Си считается высокоуровневым (по традиционной классификации языков)
к высокоуровневому язык ЦЕ сложно отнести, и оскорблять великолепный ассемблер этим словосочетанием не надо
Про что видео? Бла бла бла. Почему си возвращается? Да потому что вокруг нас становится дофига микроконтроллеров, которые программируются на си :) потому что это не монструозная хрень которая сожрёт все ресурсы которых нету в контроллере. По сути нынешние контроллеры это компьютеры времен восхождения си.
То вы готовить не умеете :) Правильно приготовленные ключи компилятора С++ дают размер кода байт в байт с оригинальным кодом С. Но читать все легче - шаблончики, классики. Я делал для ардуинки - переписывал С в С++.
в таком ключе асм предпочтительнее выглядит ;)
@@ainsoveternal1272 ассемблер - это уникальная фишка семейства процов, и, даже, конкретной модели. Писать программу под 3 разных семейства, например, это уже перебор. На одно семейство уходит 3-5 лет тренировок человека. И то, если у вас была практика на 8086, то под i5 сегодня, вам занова учиться.
@@alexzk3 а что за цвета у тебя на аватарке? Давай в фортэцю, че на Ютубе сидишь? Твои братья в тебе нуждаются, последняя партия вот вчера домой поехала (по частям).
@@WH0ISBACC0 на тему пакетиков, скажу по секрету: ваших уже никто особо в пакеты не грузит, свои бросают, наши закапывают или сжигают на месте, "без вести пропавших" сколько бригад? Вот ... показать фотки здесь не могу но ... красавцы штабелями отдыхают. Сейчас там их жены и мамы плакатами махают, "повернить их до дому", реально думают наверное что те военнопленные хахах ... угу.
Лол, завести семью сложнее, чем найти работу в техе
видео пока не смотрел, но , предположу, что ответ "потому, что такова диалектика Гегеля"
😂😂😂😂
@@critical-ren-fan-corner не Маркса, а Гегеля. Во-первых. Ну , а про всесильность вообще какой то бред, я не понял.
Виндертон выучил базу CS и создал канал, чтобы доказывать всем, что это было не зря.
курсы, курсы забыли)
предположу, что изначально канал был для них
в 2017 вроде
это после провала уже пошла база cs
@@Timur-r5n да не кошмарь пацана, каждый выживает как может)
P.S. йобта
**Что-то на языке лоулевел кодинга, ну я в любом случае не пойму, я же питонист**
собсна это и причиниа изучать С
Особенно с учётом что питон написан на си и плюс можно делать либы для питона
"а Я ChatGPT-ст.
Си высокоуровневый
@@MrLotrusлибы для питона написаны на питоне, и это в принципе так для всех языков! Иначе каким хреном они бы работали в питоновском интерпретаторе? Разве что отдельные либы такие как numpy, tensorflow используют Си для более быстрых счётных операций, но там это взаимодействие происходит через юникс сокеты, а не прям хрясь бле и откуда не возьмись среди питон кода взялся код на Си. Если нет компетенции пороть что ни поподя, тогда лучше промолчать…
Братан, хорош, давай, давай, вперёд! Контент в кайф, можно ещё? Вообще красавчик! Можно вот этого вот почаще?
Екстрим цоде)
акела промахнулся, акела промахнулся
Писал и на C и на Java.
Java позволяет писать более качественный код неопытным разработчикам, за счет средств самого языка.
А это и требуется в данный момент большим компаниям: нанять мидлов с пару лет опыта, чем искать C-синьоров с бОльшим количеством лет опыта (и за бОльшую з/п)
Правильно говорить,- не качественный, а защищенный код. И вообще их сравнивать нельзя. Сравнивай Java с C#
Java script?
прикол в том, что СИ сеньоры могут получать меньше, чем жава мидлы))))
Обожаю твои видео. Самые ёмкие , без воды, так просто и о главном. Тебе бы на конференциях выступать подачей )
главное тут - рекламная пауза
хорошо что воды оказалось много - напился, утолил жажду.
Вопрос остался также открытым - почему стал снова популярен "С"?
Ответ прост - не становился он снова популярным, он всегда держался на одной планке, просто что-то взлетало и потом падало, а что-то взлетало и оставалось выше Си, сейчас у Си просто своя ниша, которую он делит с С++
@@saddoomer я без негатива. понятно дело что ролик с рассуждением и открытым финалом.
Воды много, что бы натянуть монетизацию на ролик )) Но уже можно предоставить просмотр нейронке таких видео и не тратить время.
@@SashaPoberailo нук нук, кому можно скормить ролик ?
Потому что, Автор этого видео, даже не знает что это )))
"Си это всё еще колесо" -- максимально простое и всем понятное колесо, без которого никуда.
На Python можно написать что угодно. На C можно написать Python
На Питоне напишешь операционную систему и драйверы?
А вот другой язык вполне можно написать.
@@perfect_genius7058 это просто бородатая шутка. мне ее рассказали лет 20 назад, как раз когда я начал программировать =)
Ну да. Этим я и занимаюсь. Каждый понедельник я начинаю с того, что пишу язык программирования. А в обед иду в поле, косой добываю зерно, перемалываю его в муку. Потом иду за водой и выпекаю хлеб. Потом сажусь в самолёт и лечу на остров обжаривать кофейные зёрна. По дороге успеваю подоить корову и приготовить сливки. Чизкейк и кофе что может быть лучше в понедельник?
Как знающий ассемблер, могу сказать, что Си сильно упрощает жизнь в написании кода.
После асмы код пишется быстрей и при этом в производительности потерь крайне мало.
Ложка дегтя: надо настраивать компилятор, чтобы он не пытался оптимизировать код там, где это не надо. Если тот же дальний прыжок заменится ближним, будет очень весело
Это вы ещё джаву и си шарп не видели. На них даже можно что-то реально зарелизить еще при жизни (хотя тоже как повезет)
Крутой видос! Большое спасибо за труд! Много чего не понимаю, сути, и такие видео очень помогают хоть немного разобраться в этом океане знаний в CS
Низкоуровневый код под железо можно писать на ассемблере и си, других вариантов нет. Но на си удобнее и не хуже по оптимальности. А вот когда все драйвера написаны, ОС запущена - пишите дальше на чем хотите. 😊 Наша работа закончена.
Если Си действительно набирает популярность, то возможно дело в IoT и микроконтроллерах, плюс из-за сво пошло импортозамещение железок
именно, IoT и встройка тащат
Может в кой то веки зэпешечка у эмбеддеров подымется@@serjioalvarez
Всё просто си, был первой попыткой сделать ассемблер, удобным для понимания и написание человеком, и при этом оставлять все возможности машинного кода! А за ним пошли другие языки, бейсик и паскаль, и потом всё другие, вся разница это сколько возможностей остояться в обмен на удобство, удобно написать напечатай ответ на экран, чем расписывать все действия для этого которых очень много! Но такой подробный план действий можно сделать очень быстрым! А высоко уровеньие языки так не могут! Что бы посчитать 1+1 им нужно сходить в библиотеку и проверить что такое + это просто для понимания, да быстро возьми конфету на 2 полке шкафа в 5 с права чашке, а так долго будет:" найди конфету в шкафу и возьми" пока ты нашел её уже взяли и съели
в смысле опять? а что кто то его не учил, мамкины кодеры на питоне? си основа всех нормальных языков, понимая си понимаешь все нормальные языки
+1, когда надо было написать приложуху под андроид, сделал за 2 дня с нулём в джаве )))
Не нужны эти ващи энергии ци, си...))
@@kormannn1 займись выниванием
выучу си для джавы тогда
Пиши по-русски, бот.
Мне всегда было интересно создавать что-то с нуля. Я щас учу джаву и андроид разработку, например я писал редактор кода с кастомной подсветкой и многое другое но не связаное с андроидом, типа полностью кастомных циклов и функций. писал небольшой фреймворк.
Раньше я думал что между С и С++, практически нет различий.
Делать что-то с нуля - это классно, ты понимаешь как рабоатет все под капотом, и смотришь на свой код и думаешь "ЭТО - я написал", ты можешь делать в своем коде все что тебе угоднл, тк ты понимаешь как это все работает.
Пока я писал все кастомное я например понял что интерфейсы в джаве это имба, и очень удобная штука, еще я узнал как рабоают лямды. 😊
До сих пор не понимаю, зачем люди смотрят постоянно популярность чзыка и начинают его учить😂
Смысле? Так а шо, я как лох буду на жаве какой-то писать, шоле? Брат, пацаны не поймут.
работу хочеца, деняк
Ну так а питухон-то уже не по пацански)
@@Torn_Shoe вот если честно, крутое развадилово было с этим пайтоном, школы столько ребят страждущих нагнали, но по факту пайтом бесполезный язык, ну если вдоваться, и самое смешно, только пайтон может на начальном этапе реально прям почувствовать себя гуру программирования, другие языки к сожалению не такие, или к счастью)
Как он может быть бесполезен, если его используют в огромном количестве компаний? Он там пользу приносит.
Постоянно использую ваши советы. В основном остаюсь в плюсе.
Ролик не про "почему все начали учить Си", а про рекламу. А иначе как вас развести на её просмотр? Или вы тут что-то новое хотели узнать?
Спасибо, за выпуск и интересные мысли, я получил по истине удовольствие от просмотра.
С++ 10 часов - одна буква уже есть!!🎉🎉🎉
В языке программирования главными качествами являются простота и читабельность кода для его дальнейшей поддержки другими программистами. ЯП СИ был разработан в самом начале 70'х как язык СИСТЕМНОГО программирования вместо Ассемблера. Ни одному из указанных выше требований для разработки прикладного (не системного) ПО не удовлетворяет !
По мере перехода работы с контроллерами хочешь не хочешь приходится знать СИ
Ну, я бы ещё отметил важную нишу Си, про которую нркто вроде тут особо не писал - Си используеться в микроконтролерах в радиотехнике, робототехнике и дронах, а эта тема стала в последнее время набирать популярность. Тут и работа с памятью это не просто фича для красоты, а нужда, и быстродействие. На основе Си строяться всякие stm32 и т.п.
Недостаточно просто выучить язык. Он же не в вакууме работает.
Нужно также изучить стандартную библиотеку, API операционной системы, самые используемые библиотеки и фреймворки. Разобраться с компилятором и системой сборки, IDE.
Мне еще когда-то сильно помогла книга "Веревка достаточной длины, чтобы выстрелить себе в ногу".
Отличная связка, сам пользуюсь и всё супер.
Когда-нибудь люди поймут, что надо копать ещё глубже, и наконец таки вернётся время ASM!
Ну это когда придумают новую архитектуру, например на спиновой памяти или памяти на ку-битах. Тогда понадобится какая-то новая модификация ассемблера. Запилят прослойку в ОС, и все дальше продолжится в том же духе. Все высокоуровневые языки никуда не денутся
Ты лутший, всё очень интересно приподнёс, и теперь я реально захотел выбрать c
Вообще-то, большую часть синтаксиса придумал Кен Томпсон при разработке языка B, и уже от него пошел C.
Где-то в глубинах за языками С и В прячется тот самый язык А.
@@alexneigh7089 И имя ему Algol.
BCPL (Basic Combined Programming Language) - язык программирования, разработанный Мартином Ричардсом в 1966 году в Кембриджском университете. Изначально он предназначался для написания компиляторов для других языков.
Сейчас BCPL практически не используется, но в своё время он был очень важен из-за хорошей портируемости. Урезанная версия языка с несколько изменённым синтаксисом стала языком программирования B, который оказал сильное влияние на язык программирования Си. По этой причине программисты в шутку расшифровывали название BCPL как Before C Programming Language («язык программирования, появившийся до языка Си»)[1].
@@wasting_the_dawn Я в курсе. Я читал интервью Кена Томпсона, где он упоминал это. Речь о синтаксисе языка. Синтаксис языка B, созданный Кеном Томпсоном, очевидно является источником синтаксиса языка C. Синтаксис B значительно ближе к синтаксису C, чего не скажешь о BCPL.
источником всего является Ассемблер, а дальше уже каждый кто как мог экспериментировал:"АЛГОЛ 60 был одним из первых языков, реализующих определения функций (которые можно было вызывать рекурсивно). Определения функций ALGOL 60 могли быть вложены друг в друга (что впервые было введено в любом языке программирования) с лексической областью действия . Он породил множество других языков, включая CPL , PL /I , Simula , BCPL , B , Pascal и C. "
Читал я одну книгу там было сказано программирование держится на 4 вещах. 1 ввод данных 2 вывод на экран. 3 цикл 4 ветвление. Все зная это ты можешь писать программы.
слушал я тебя года три назад и сейчас слушаю какой смысл в этой трепотне ты же ничего полезного не даёшь цель победить себя прошлого в скороговорке ты же не пытаешься донести мысль, что то полезное вложить в слушателя, а соревнуешься с собой в количестве слов в минуту, ты сам то послушай свои бредни с точки зрения людей осваивающих программирование и что ты , как думаешь полезного до нас доносишь - пустобрёх ты вот и всё на что тянешь
Это называется - мирдверьмяч - ество.
Спасибо за ролик!
Всё гениальное - ПРОСТОЕ. Автор абсолютно прав, что в борьбе за абстракциями люди начали терять фундамент под ногами. А эти "прослойки" во всём.... С 1985 года для меня Си был, и остаётся самым любимым языком программирования.
Автор, видимо (как и вы) ни дня не проработал в интерпрайзе и не учавствовал в разработке коммерческих продуктов хотя бы с тысячами пользователей (молчу про десятки и сотни тысяч). Чего далеко ходить - вот Ютуб тот же. Продукты такого уроня невозможно создать ни низкоуровневых языках программирования и используя стек технологий 80-х. Это факт. У каждого интсрумента есть своя ниша. Где-то "абстрацкции" не нужны, а где-то иначе просто никак.
А на чём Ютуб написан?@@vltsn
@@22_PSпитон
@@22_PS html
Очень классное видео, есть на чем задуматься! 👍
А я думал, что Си становится популярным из-за развития всяких мелких устройств, для которых нужны микропрограммы, где кроме Си и ассемблера навряд ли что-то подойдёт.
Lua тоже активно используется на микрухах
С-это не язык программирования, это шедевр. Как Леонардо Да Винчи среди других художников
Язык C для талантливых творцов, которые могут создать востребованный продукт. Бизнесу для автоматизации внутренних процессов нужна скорость разработки, которую обеспечивают только фреймворки. Нормальный бизнес умеет считать и распределять деньги. Никому в здравом уме не уперся тру-программист, который будет пару лет писать на С, изобретая велосипед. Им нужен спец со знанием основных механизмов фреймфорка, чтобы закрыть задачу на пару месяцев. Поэтому мне не очень верится, что все начали учить С. Он подойдёт для ознакомления или старта на факультете в университете, но не как массовая среда разработки для реальных заказчиков.
все просто - почему! С развитием Интернета вещей (IoT) и встроенных устройств "C" является основным языком программирования микроконтроллеров и систем с ограниченными ресурсами памяти, процессора и хранения программ. Так что взлет еще будет продолжаться в след десятилетия скорее всего.
То чувство, когда первый язык програмирования был Бэйсик, а СИ вторым :D
первым языком был фортран, какой бейсик, ты сумасшедший?
@@kudras3r170, мой, мой первый язык программирования был Бейсик.
@KupitmanZ да ладно тебе, че он глупай сразу, просто не так прочитал и понял. Я вот улыбнулся с его коммента)😀
Мой тоже бейсик на msx 2
А как ты перескочил через Паскаль?
Go - почти такой маленький в описании как C, но не даёт низкого уровня
Zig - меньше чем C с препроцессором, даёт как минимум настолько же низкий уровень и мгновенный интероп с C и C++, при этом позволяет написать все абстракции самому.
Так что непонятно зачем в 2023 году на 10:30 упомянуть Go вместо Zig.
А Rust да, прямая (гринфилд, не инкрементальная) замена для C++.
Настолько же тяжело использовать для Native Extensions для Python, NodeJS, JVM... если бы не лучшие в индустрии генераторы биндингов.
Но конечно же не сколько не C.
Мне 28 лет и я с подросткового возраста хотел выучить C++, но все желание отбили наши учителя. Такое безолаберное, безотвественное проведение уроков, пар, я еще нигде не встречал. Абсолютно наплевательски относились в ученикам предлагая вонючий паскаль и си шарп. А теперь мне 28 лет и у меня уже не хватает нервов сесть и выучить даже питон.
Не выучил 👉 значит не хотел 😆
нытикам здесь не место
@@ГюзельЕговцева ну и что ты тут делаешь тогда?
Учителя просто не знают, как он устроен внутри и поэтому не могут объяснить, как он работает. Поэтому - зубрить!
мне 41 и все можно выучить если есть желание, пропейте б12 для памяти, уберите стресс, у нас в школе вообще бейсики были, вас хотя бы полезному учили, у нас еще в школе выкинули из программы мат анализ, ничего выучить можно все
Автор видоса рассказал про отличную связку, давно на вас подписан в тг!
Си - это как велосипед. Был изобретен давно, можно сказать прототип всему колёсному в мире и до сих пор используется.
Все просто. Си это прям база база, это инструмент с помощью которого создали абсолютно все чем сегодня пользуются разработчики от С++ до гита.
я кодил на си пока вы не родились!
лучше бы они не рожались...
а что потом случилось?
А потом мы родились, и человек перестал кодить на С.
я хейтер си ещё с пеленок был против си выступайте за запрет этого ужасного сложного языка!
@@chelol208Сложного языка? 🤣🤣🤣 Ты что, уборщик, который решил посидеть за ПК?
Хорошее и правильное видео, доброе) Теперь ещё всем бы понять что у нас остаётся только Си и Linux для высоконагруженных и параллельных вычислений, и будут все счастливы. Остальные языки и инструменты должны применяться только там где на них результат получается скорее и работает сносно, без глюков. Кстати многие программисты С++ довольно посредственно кодят на чистом С, из практики. И это печально.
Спасибо друг. Очень хорошо выразил мысль. Сыну пытаюсь донести ее же :) - пока не сдается. Надеюсь после твоего видео уговорю его, на получение фундаментальных знаний.
Не надо портить жизнь сыну, деньги платят не за фундамент, а за решения задач бизнеса
@@roktober Спасибо за ваше мнение
@@roktober Что бы решать бизнес задачи надо знать базу, а то приходят тормо.а которые даже толком не знают что такое float double int и т.д., не решали всякие задачки типа фибоначчи, и не работали с ссылками и указателями и кроме как готовыми решениями пользоваться ничего больше не знают, а мы кто получал фундамент решаем все что требуется. Ну хотя я с тобой соглашусь, чем больше будет таких неучей, тем востребованнее будут такие как я.
@@АндрейАронов-б7л я все это знаю и не пригодилось ни разу. гораздо хуже, когда человек не знает базы в плане архитектуры и чистого кода. а то таких задротов полно, но напишут такой код, что хоть стой, хоть падай. а востребованными являются часто те, кто может обсудить фичу с заказчиком и предложить, что лучше сделать с точки зрения юзера и решения бизнес задачи. таких тоже мало почему то среди задротов с сотнями решенных задач на литкоде.
Спасибо, наверное, это для меня лично самый полезный видос за пару лет, русскоязычному сегменту не хватает гайдов/обзоров по теме п2п
Он растет потому, что для быстрой работы алгоритмов на Python приходится дописывать вставочки на С
а для быстрой работы ЦЕ приходится дописывать вставочки на ассемблере
4:50 - Хакер - это человек, который на экспертном уровне понимает устройство систем. Благодаря хакерам ты вообще понятие "отладки" сейчас знаешь!
Один из самых важных способов узнать как работает компьютер - это построить процессор и оперативную память самостоятельно!
Для всех интересующихся, смотрите logisim, на нём есть много готовых проектов процессоров (простых, понятное дело).
для этого есть верилог
@@serjioalvarez Или Logisim
лол, один только процессор с нуля построить тебе обойдётся в сотни миллионов долларов
@@franklucas9 для этого существует logisim)))
Запомни, Джун- ты теперь сишник, ты теперь с unix, а все вокруг файлы и указатели (с)
Космические корабли будут бороздить просторы млечного пути а сишники все еще будут в почете
Мой первый язык программирования. Учил ещё в школе на факультативе. в далёком 1992 году. Тогда после УКНЦ МС 511 IBM был словно мерседес в мире IT. Хорошие были времена.
тебе сколько лет????
@@manOfPlanetEarth ))))))) скоро пенсионер
Точно такая же юность, но год 1996 :). УКНЦ!!!!!!
Хорошо завернул рекламу, жаль что информации ноль.
не важно на чём писать!
важно ЧТО писать!
если делать "бизнес", то есть создавать кучу однообразных "проектов", то выбирается самый передовой в области "проектов" данного типа "инструмент"
ПРОЩЕ - это лучший подход. усложнять не надо.
9:05 - интересно почему полосок больше чем языков.. я всё понимаю, но интересно почему
там Блейд и прочие не совсем языки попадают.
@@ArtemFun не, там реально больше полосок чем языков, лол
@wndtn дядь всегда рассказываешь всё самое нужное, прощу сними видео про стандарты С ++ и для чего они появились и как.
График весьма хитрый - там процент прироста... Что, на мой взгляд, показатель интересный, но только на нем выводы ставить рано )
C - база, а самое забавное, что я это слышал до хайпа фразы о том, что что-нибудь является базой. Лет так 25 назад.
Хорошее видео, однако... абстрактное и поверхностное. Хочется, чтобы было продолжение о том, а "почему все-таки С", чтобы цепляло (тех кто посмотрел и не в курсе как писать на С) начать изучать этот самый С.
Человек не зная язык СИ, нам о нём рассказывает )) Там, говорит всякие указатели есть, и с памятью надо работать. Поздравляю вас, но в С++ то же))
отличнейший контент, очень емко, без визуального трэша, все по существу, thanks
Нечестно луа считать клеем, а питон нет. Питон точно также, как и луа всего лишь небольшая прокладка между сишными библиотеками и пользователем. Раст я не видел еще (не заслужил он моего внимания пока), но если считать его языком программирования, на котором можно написать юникс (раз уж его пустили в ядро линкуса, то чё бы и нет), то между ним и С нет ничего, кроме "клея" и метаязыков.
Кстати, на С можно писать и UI не (сильно) сложнее, чем на чем угодно еще. Есть же GTK :)
А вообще, каждой задаче по инструменту. Новые языки будут всегда выбивать больше коммитов, чем старые, потому что для старых все очевидное необходимое уже написано, протестировано в использовании годами и не требует частого обновления.
С другой стороны, любой новый язык в рамках одной парадигмы после третьего освоенного изучается за выходные до стадии джуна и если им пользоваться, то левелапы будут каждый день. Да, если решите изучить лисп после питона, тайпскрипта и луа -- у вас будут некоторые сложности (учите хаскель, хотя бы в глазах рябить не будет), но тут не с языком будут проблемы, а с рекурсией.
А эти милениалы вообще могут пользоваться одними и теми же фреймворками НЕДЕЛЯМИ (ужас-то какой!). Так что бумеры (я тоже) со своими фортранами и си просто окаменелости, не способные написать новый фреймворк сегодня вечером, чтобы завтра им начать пользоваться всю оставшуюся неделю. (не моя шутка юмора, но очень хорошо объясняет почему на модных языках столько коммитов, в статистики качество и обоснованность необходимости этих коммитов не показана)
сколько бекенда написано на Lua, а сколько на пайтоне?
@@oustrix643 много бекэнда, базы данных написаны даже, на микроконтроллерах даже пишут
@@moshamiracle назови хоть один бигтех, который пишет бек на луа
На Си программируют практически все микроконтроллеры для встраиваемых систем и автоматики.
Не понимаю как можно учить Питон без базы С и С++, после них все становится намного понятнее - как он работает и что под его капотом.
Под капотом армяне в нарды играют 😂😂 На Python настоящие программисты дела делают, пока ты изучаешь C++ ради изучения C++ 👎 Пока до реальных задач не дорастёшь НЕ ПОЙМЁШЬ
@@SalatikInMyHead Ненастоящие программисты пишут API на С, CUDA, С++ и используют Питон как скриптовую склейку, что-бы настоящие программисты доросшие до РЕАЛЬНЫХ задач дела свои на них делали.
Реальные задачи это случайно не "взять данные из одной говноприложухи и засунуть в другую" ?
@@SalatikInMyHead я знаю С++ на определенном уровне, по крайней мере могу: написать API и прикрутить его к Питону, кодить в Unreal Engine, написать CUDA код, посмотреть исходники CPython и понять как работает PyObject когда необходимо. Расскажи пожалуйста до каких таких реальных задач ты дорос, что тебе не нужны основы?
Все от задачи зависит. Если на Питоне надо дернуть библиотеку с ГитХаба, передать ей пару параметров, в ответ получить Джейсон и вывести его в нужном формате юзверю, то все советы по сям и асме засуньте поглубже ))
Указатели это деталь языка. Главное в отличие от Java и пр. это генерация нативного кода процессора. Вкупе с оптимизирующими компиляторами с 50+ летней историей развития это дает максимальную эффективность кода.
потому что Си это база и без него не будет никаких пайтонов... да и если ты программист то как ты не любишь УКАЗАТЕЛИ? хотя наверное это глупый вопрос в 2024 году где каждый у кого есть пальцы может открыть пайтон и через час уже наваять прогу не зная вообще ничего ни про что
А есть хороший, я имею с виду действительно хороший курс по C? Синтаксис-то я знаю. Но взяться и порешать на C какие-нибудь задачи, поработать со сборкой проектов, Makefile-ами? И чтобы это всё было структурировано. Я писал структуры данных и некоторые популярные алгосы на C. После более современных языков типа swift это, конечно, трудновато и куда как более тяжеловесно. Но интересно. Только привыкнуть к процедурному подходу надо. Но вот поработать бы с чем-то более структурированным, так, чтобы не придумывать самому себе. Ибо я могу замахнуться на написание нового Linux kernel, и mess myself :)
Возьми старый TCP/IP стек из FreeBSD и ковыряй его. Научишся быстро. Ну или любой опенсоурс проект на Си.
Большое спасибо за информацию. Теперь у меня есть представление с какого языка начать.
Зря, лучше найди интересующий тебя топик и посмотри языки которые могут удолетворить твою потребность, ибо ты просто потеряешь слишком много времени уча С и С++
С питона
@@kamenyFX Нужно смотреть по тому чем желаешь заниматься
@@kamenyFXименно😂
Начинай с того языка который выполняет поставленные тобой задачи
Си до сих пор используется в АСУТП. Написание функций и макросов. Так что нужен еще.
Как же он мягко и плавно втыкает рекламу. мама родная.
Ты ток на середине рекламы понимаешь, что это реклама
Те кто смотрят через ванцед, тут что, была реклама?
Сейчас меня тут заплюют, но мне Object Pascal очень нравится...
Заплюют только неучи. Паскаль - идеален.
@@Евгений-о3п8м ноне обжест
Ну там больше общего с плюсами, хотя мне тоже нравится
Вообще-то в плюсов есть общее с паскалем. Паскаль вышел в 70, с++ в 83.
А почему нет, некоторая разница в синтаксисе, а все тоже самое
Интересная тема, отличная почада, спасибо за ролик
Си надежный, на него можно рассчитывать
Пока не напортачишь с адресной арифметикой.
В какаом смысле?
@@thefirstuwu8874 Обратись куда-нибудь за границы массива, да посмотри что будет.
@@thefirstuwu8874 тем что компиляторы уже вылизаны до блеска под всевозможные архитектуры и у них нету никаких дыр, кроме отклонений от стандарта
C++ тоже надёжный
приведенный рейтинг называется "топ растущих языков по размеру контрибуции".
а проценты это % сколько кода добавлено за год по сравнению с предыдущими.
очень коварный топ, в него легко залетают маленькие языки, у которых легко сделать значимый прирост. и не заметны "старички" с огромной кодовой базой, прирост кодовой базы в которых в абсолютных числах может быть на порядки больше чем у тех кто в "топе", но тут решает отношение вверху будут те у кого мало в прошлом году и побольше в этом...
Я реально подумал что все начали учить книжку Си Дзин Пина
Он уже С++ после избрания на второй срок. Си Пи Пи
Ну не знаю, указатели.. сложно. После питона мой второй язык был С. Сперва, я конечно офигел, но спустя месяца полтора уже не чувствовал проблем когда указатель указывал на другой указатель. С правильной организацией выделения памяти, особенно в структурах, бывали непонятки по скорости работы.. Но это как-то решалось выбором более плоских конструкций.
Си сам по себе простой. И как тут правильно сказал человек, самая жесть в си это компиляторы... Собственно, именно из-за этого ЧУДОВИЩНОГО гемора я и свернул свой путь в сторону "чего по-проще".
Но, всем советую попробовать си. Это очень весёлый процесс и ни с чем не сравнимый каЕф, когда твой экстеншен для питона взлетает и фигачит именно так как тебе надо на огроменной скорости 😊 Память только освобождать не забудь ;) а то прольётся 😂
Скажем так, компиляторы - это не так уж и ужасно, если не пытаться объять необъятное и впихнуть невпихуемое. Просто нужно определиться сначала с платформой, под которую пишешь, и только потом выбрать определённый компилятор, которым будешь пользоваться. Прочитать по нему мануал за день-два, настроить IDE/среду - и вуаля. Дальше, если не распылять усилия в попытке охватить весь зоопарк (а реально это нахер никому не упёрлось!), никаких проблем, пиши себе и пиши. Тут нужно просто научится говорить себе "Я никогда не буду портировать этот хэллоуворлд на вон ту давно умершую платформу 20-тилетней давности!" 😄
@@1kvolt1978 верно. Но ещё бывают случаи когда для проекта нужная какая-то либа и вот она на хабе - бери и собирай. А вот ещё одна, с похожим функционалом.. И ещё и еще.. И вот тут начинаются экзерсисы. То не собирается, потому что зависимость протухла, а вон то, потому что ты сам дурак и не знаешь что это за макрос такой и почему он всё ломает нафик. Там под другую версию, тут пятилетней давности и под текущем не работает. Ты открываешь make заново с завидной регулярностью и с таких неожиданных сторон, что становится страшно :)
И в такие моменты, я как ненастоящий сварщик, начинаю посматривать в сторону готовых бинарников под другой язык... И думаю, многие меня поймут.
@@picblade Есть такой момент. :) Но это характерно и для других языков тоже.
@@1kvolt1978 да, но масштаб сложности другой. Скажем так, на порядок. Типа мы переехали со второго питона на третий? Ок, я отшиб себе руки всего раз 5-7, и то, обо всякие пустяки, которые (каюсь) прямо в юзер пакете поправлял вручную и ехал дальше ;) Или там, найти нужный пакетик, скачать и линку исправить. Полчаса возни максимум.
Джаваскрипт старый попался? Переделал импорты, чутка подшаманил в классе вызова - уаля ;). С си, так легко не отделаться... Если встрял, то будь готов к выращиванию запасного мозга и покраснению глаз на долгие (дни?) 😂.
Понимаю, сейчас придёт умный человек, и скажет что я просто лох и не умею.. И я соглашусь :) Там уметь надо. И так уметь, что процесс сборки норовит превратиться в отдельный проект со своей документацией :) А ещё, мне вспоминаются слова Линуса, когда он комментировал очередную версию (кажется 4.5) gcc. В свойственной ему манере, он сказал, что мы не будем это использовать, потому что эта штука так оптимизирует код, что мы не можем сказать потом как он работает. Если автор гитхаба не знает, то я тут вообще в сторонке на башике всякие глупости лучше поковыряю ;) Не знаю чем история закончилась, но весьма иллюстративно это.
@@picblade Ну как я и сказал изначально, если не пытаться объять необъятное, то многие проблемы перестают быть таковыми.
Например, я для себя выбрал, что пишу под Вин 7 х64, на которой сижу. Выбрал компилятор и IDE - сначала это был Pelles C, потом я решил перейти на gcc + Notepad++. С Pelles C проблем вообще не было, работает всё "из коробки". Но у него слабая поддержка WinAPI, нет некоторых важных Direct X хедеров и либ.
Поэтому я перешёл на gcc и Notepad++ в качестве IDE. Прочитал мануал за пару дней, написал себе батник для командной строки с нужными мне ключами. И всё, никакого больше геморроя.
При этом перенос проектов из-под Pelles C в gcc не вызвал вообще никаких проблем, кроме правки нескольких имён нестандартных функций. Потому что и там, и там я писал под одну и ту же платформу.
Естественно, не в последнюю очередь это потому, что я всеми силами стараюсь избегать тащить всякое непонятное говно с Гитхаба. :) Если и пользую сторонние библиотеки (чего тоже стараюсь избегать до последнего), то выбираю проверенные временем и практикой от серьёзных разработчиков, а не "зырь, чо накропал!" от неизвестного Васяна.
Почему Все Опять Начали Учить Си(что происходит?
Картинки/клипы крутятся, просмотры мутятся. Почему?Что? Та х.з.
Ниочем сорян
В этой книге по си задачки интересные и есть специальная книга с ответами, с задачамии если их серьёзно делать, то можно запариться нормально так