HowProgrammingWorks - JavaScript and Node.js Programming
6.47K subscribers
365 photos
16 videos
1 file
915 links
Программная инжененрия для JavaScript, TypeScrip, Node.js
👉 Group: https://t.me/How_Programming_Works
👉 Node.js channel: https://t.me/metarhia
👉 Node.js group: https://t.me/nodeua
Download Telegram
Вы управляете AI или он вами? В кибернетике есть закон Эшби (закон необходимого разнообразия), в интерпретации Стаффорда Бира: управление может быть обеспечено только в том случае, если разнообразие управляющей системы не меньше, чем разнообразие управляемой
17👍7💯3😁21🔥1
Месяц назад мы c Ильей начали проект форового образования NextTick
Набрали пробную группу в 500 человек, кто не успел, попали в предзапись.
И в этой очереди уже сильно больше людей, чем мы рассчитывали.
Заявки продолжают идти весь месяц, просто каждый час.
Закрываем предзапись через 24 часа.
Кто в анкете, тот заходит первым.
https://tg.pulse.is/next_tick_bot?start=69ce57941f15eb55e90ea47a&source_channel=timur_tg_howprogworks
6👍3🤯2💯1
Прошел месяц нашего нового формата - фоновое обучение
В целом я доволен тем, что выходит.

- Люди благодарны, им помогает найти опору в нестабильное время и сориентироваться в профессии
- Мы сделали упор на ИИ, архитектуру, коммуникациях, хардскиловую экспертизу
- Синьоры и синьориты на курсе укрепили свои позиции в компаниях, стали приносить больше очевидной пользы для бизнеса

Мы открываем новый набор, он тоже ограниченный, кто успеет - заходит, остальные в очередь
https://tg.pulse.is/next_tick_bot?start=69ce57941f15eb55e90ea47a&source_channel=timur_tg_howprogworks
6👍1💯1
По мотивам стрима: привычный побег программиста - архитектура, инфраструктура, папочки и фреймворки, утилиты, логирование, оптимизация, системное программирование.... только бы не писать доменную логику.

Потому что там нужно понимать бизнес, людей, общаться нужно, а не сидеть и задрачивать код. Находить общий язык сложно, понимание налаживать сложно. А есть еще деньги и ответственность, нужно вникать в потребность пользователя, а еще сроки, уметь расставлять приоритеты, уменьшать неопределенность и принимать решения в условиях нехватки информации.

Архитектура и оптимизация нужны, но они очень похожи в типовых случаях, и они могут быть вынесены в системный код. Нужно делать доменный код, и так, чтобы он был проще и полезнее. Иначе инженерия превращается в бегство от реальности.

Делать продукт - именно этому мы и учим в вормате фонового образования.
17💯7👍2😁1
Каждая строка кода, которую вам генерит AI - это не достижение, а тяжесть для проекта и будущая работа: ее нужно читать, понимать, чинить, поддерживать совместимость, объяснять следующим людям и AI берет ее к себе в контекст, от чего становится менее эффективным. Ревью кода может улучшить ситуацию, один раз нужно потратить время, не пропустив ненужную сложность, и потом поддерживать кодовую базу проще. Уже пора соревноваться не кто больше генерирует, а кто меньше, но с тем же результатом.

https://tg.pulse.is/next_tick_bot?start=69ce57941f15eb55e90ea47a&source_channel=timur_tg_howprogworks
👍23💯831🔥1
Из каждого утюга мы слышим "AI заберет" и "компания из агентов". Такие C-level галлюцинаторы уже уничтожили Bun, и будут дуть в свой пузырь пока он не лопнет.

Я вовсе не скептик. Нооборот, я каждый день программирую с AI и очень доволен. У меня он забрал только неинтересные задачи и освободил время для того, что я действительно люблю.

Но у большинства разработчиков действительно проблемы, потому, что они писали на работе бойлерплейт с утра до вечера, модельки, апишки, формочки, контроллеры, сервисы, это все типичная рутина.

Меня интересует писать только такой код, который пишется первые, ну может первые 5-10 раз в истории программирования пишется, пока авторы не знают о работе друг-друга, до первых статей или докладов. Другой код меня и не интересует писать. Если вы обычный мидл, то да, у вас обоснованная тревога, нужно думать про системное программирование, продуктовый код, ресерч, архитектуру, оптимизацию, ну какую-то глубокую экспертизу.
👍11🔥7😁4🤝32
А что вообще в мире делается?
- массовые увольнения
- найм сломан и работу найти сложно
- каждую неделю волна атак на npm, GitHub, CI/CD, AI
- AI-агенты бесконтрольно тащат зависимости
- тотальная потеря внимания у людей
- нужно быть на все руки мастером
- больше кода, меньше понимания
- тошнит от нейрослопа, он везде
- поток мусора на на ревью, глаз замылился
- живем без Security review? - вообще без review
- массовое производство кода без владения смыслом
- резкий рост copy-paste архитектуры
- потеря инженерного фокуса
- профессиональная демотивация
- время ускорилось, жизнь превратилась в гонку
- компании требуют внедрять AI без стратегии
- качество кода упало ниже плинтуса
- псевдо-архитектура,не выводиться из ограничений
https://youtu.be/_QeBvc12BaM
9😢9👍7💯3👎2🔥2🤝1
This media is not supported in your browser
VIEW IN TELEGRAM
Как только станет понятно, что Anthropic феерически обосрались с Bun и не могут довести его до ума, это будет скандал.

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

Но чего Антропику не хватило? Бесконечные лимиты, любые эксперты, свобода в выборе проекта для переписывания. Тут придется отвечать за неудачу.
👍10😁8🔥72🤷‍♂1🤯1💯1
Сегодня на стриме будут гости - мои ученики, коллеги, синьоры программисты, контрибьюторы открытого кода и профессионалы со всего мира. Расскажут нам, как они видят ситуацию в отрасли, и что делают, чтоб не пропустить момент изменений, ведь, это не только время сложностей, но и колоссальные возможности, которые, похоже, не повторяться и те, кто оседает волну изменений, будет определять правила игры завтра. https://youtube.com/live/C4giRiwGhB0
🔥8👍431
Сайт все же лучше структурирует план фонового обучения и как-то все раскладывает по полочкам https://nexttick.it/?utm_source=timur_tg_howprogworks
💯7👍3🔥32
В эпоху AI самым важным становится уменьшение когнитивной нагрузки на разработчика и на агентов. Чтоб не решать все вопросы сразу, не писать вперемешку системный и прикладной код, не переписывать весь проект при каждом изменении, нужно применять методы борьбы со сложностью.

Снижать когнитивную нагрузку мы научились еще до AI, и все это теперь становится еще актуальнее:

1. Введение выразительных и компактных DSL языков, они скрывают сложность реализации
2. Разделение на системный и прикладной код. В обоих слоях есть своя сложность, но когда они смешаны, разработчик вынужден одновременно думать о бизнес-логмке, сетевых протоколах, потоках выполнения, хранении данных, безопасности и инфраструктуре. Разделение позволяет решать одну задачу за раз и держать в голове только тот уровень абстракции, с которым работаешь сейчас.
3. Декомпозиция - самое очевидное
4. Изоляция сложности - скрывать сложность за абстракциями, интерфейсами и контрактами
5. Стандартизация - вынесение часто встречающихся решений в платформу, стандарт или даже сам язык, что делает прикладной код более простым
6. Модульность - чтоб держать в голове только часть ментальной модели кода
7. Снижение зацепления и связывания в коде (coupling & cohesion, тут обоих видов)
8. Уменьшение паразитной сложности, то есть оверинженеринга
9. Локализация изменений - с течением времени структура проекта меняется так, чтоб изменения затрагивали минимальное кол-во модулей и абстракций
10. Паттерны - использование готовых решений, нужно меньше задумываться и автору и читателям
11. Уменьшение вариативности - часто можно сузить сферу применения программы, не потеряв в функциональных требованиях, программисты склонны включать в эту сферу варианты использования, которые не были нужны
12. Ну и наконец - хорошая стандартная библиотека
👍219🔥5
В использовании AI люди делятся на две категории.

Первые быстро и бесславно выжигают лимит, а потом страдают, что без AI уже не могут работать.

Вторые страдают, что использовали слишком малый процент от лимита, и в последний день и час подписки, чтобы бабло не пропало, начинают заливать на AI всякую дичь.
😁28💯2🤷‍♂11👍1