Типичный программист
79.1K subscribers
3.66K photos
1.16K videos
14 files
8.24K links
Всё самое интересное по программированию

Разместить рекламу: @tproger_sales_bot

Правила общения: https://tprg.ru/rules

Другие каналы: @tproger_channels

Сайт: https://tprg.ru/site

VK: vk.com/tproger

Регистрация в перечне РКН: https://tprg.ru/mJwo
Download Telegram
Начнём марафон залипательных игрушек для длинных выходных.

Первой будет бесплатная браузерная головоломка Untrusted, которая создана больше 12 лет назад, но до сих пор обновляется и всё ещё прекрасна.

Слева игровое поле, справа код. Вы играете за персонажа Dr. Eval и на каждом уровне помогаете ему справиться с препятствиями и найти выход. Для этого меняете JavaScript-код, который частично заблокирован для редактирования.

Подразумевается, что у вас уже есть хотя бы базовые знания JS: это не игра-обучалка, конкретных задач и «уроков» там нет. Головоломки быстро усложняются, решения с прошлых уровней перестают работать (научился удалять стену? ну круто, но это теперь нельзя, программируй робота).

А ещё! Можно генерировать свои уровни и проходить «неофициальные» уровни от других игроков.

Игра: https://untrustedgame.com/

Исходники: https://github.com/AlexNisnevich/untrusted

@tproger
🔥2314😍21👏1
Forwarded from Нейроканал
Борис Черный создал Claude Code. 100% его коммитов в проект теперь пишет сам Claude. Он выложил свой сетап — неожиданно простой.

➡️ Ключевые мысли:

🔘Модель Opus 4.5 thinking для всего. Да, дорого и долго работает, но зато финальный результат быстрее, так что в итоге получается ещё и дешевле.

🔘Plan Mode решает. Сначала лучше добиваться плана, который нравится, а потом можно перейти в режим автоматического принятия правок и обычно модель за один проход справляется и пишет ровно по плану что нужно.

🔘CLAUDE.md — маст хев. Или аналогичный AGENTS.md файл с контекстом проекта: стек, конвенции, что не трогать. На код-ревью просите модель обновить этот файл.

🔘Верификация — это просто. Люди переусложняют. Дайте агенту способ увидеть результат (запустить сервер, открыть UI) и опишите инструмент. ИИ сам разберётся.

➡️ Практические советы

🔘/permissions вместо --dangerously-skip-permissions — заранее одобряешь безопасные команды типа ls, git status

🔘PostToolUse hook для автоформатирования — Claude пишет хорошо, но последние 10% стиля лучше автоматизировать

🔘Несколько агентов могут работать параллельно, каждый в своём git checkout без конфликтов (но стоить будет уже как два крыла от боинга — прим. ред.)

Интересно ещё про субагентов. Борис натравливает их друг на друга при код-ревью: один проверяет стиль, другой смотрит историю проекта, третий ищет баги. Конкуренция улучшает результат.

📎 Оригинальный тред в Х со скриншотами, рекомендую

@neuro_channel
Please open Telegram to view this post
VIEW IN TELEGRAM
1🤯199💊64👍2😍21🆒1
Продолжим трясти стариной и вспомним про NandGame. Чтобы вайбкодить на питоне, наверное, не надо знать, как работают логические вентили. Но если хотите знать — постройте комп с нуля! Разбираться в архитектуре или сложной математике для этого не обязательно.

В начале игры вам доступен только логический блок NAND. Используя его как основу, вы последовательно создаёте все остальные компоненты компьютера. Сначала собираете простейшие логические элементы, потом арифметико-логические устройства, память и, наконец, центральный процессор. После успешного создания элемента по спецификации вы можете использовать его на следующих уровнях.

Дальше есть несколько софтверных уровней: пострадаете на ассемблере и попробуете создать высокоуровневый язык.

Игра появилась как фановый спинофф от образовательного проекта From Nand to Tetris. Если хочется больше системности, можно пройти их курсы на Coursera вольным слушателем.

Ещё в той же тематике имеет смысл упомянуть платные Silicon Zeroes (строим комп в Долине 60-х) и Turing Complete (NandGame на стероидах с большой песочницей). С ними можно продолжить обучение в игровой форме.

Ретро-настроение какое-то на этой неделе... 📠

@tproger
1🔥4311👍61👏1😍1🆒1
У меня опять сломался грузовой лифт (со мной внутри), поэтому сегодня будет Elevator Saga: игра про управление лифтами.

Суть простая: на экране здание с лифтами и людьми, которые хотят попасть на разные этажи. Задача — написать на JS логику, которая будет решать, куда ехать каждому лифту. Чем эффективнее алгоритм, тем больше людей успеете перевезти за отведённое время и тем сложнее уровни откроются.

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

Кодите прямо в браузере, есть документация с описанием всех методов. Можно ускорять и замедлять симуляцию, чтобы понять, где алгоритм тупит.

Всё бесплатно, как мы любим: https://play.elevatorsaga.com

Автор давно не обновляет игру, но в неё продолжают играть, обсуждать на реддите и даже делать свои версии.

@tproger
This media is not supported in your browser
VIEW IN TELEGRAM
👾1915🔥13👍3😍1
Три детектива для изучения SQL: Case Files, Noir и старый добрый Murder Mystery

Браузерные детективные игры, в которых вы учите или практикуете SQL, раскрывая преступления с помощью запросов к базам данных.

SQL Murder Mystery
Классика, и вроде как вообще первая игра в этом жанре. Вам даётся один большой кейс — расследование убийства в вымышленном SQL City, где надо поэтапно искать свидетелей и улики через запросы к базе SQLite. Подходит как для новичков (есть подробный walkthrough), так и для опытных (просто не подглядывайте в подсказки).

SQL Noir
Open-source проект с атмосферой детективного нуара 80-х годов. Несколько разных кейсов с уникальными схемами баз данных и нарастающей сложностью. Есть система прогресса с очками опыта детектива и разблокировкой новых дел.

SQL Case Files
Работает на SQLite WASM, в отличие от Noir не нужно заводить аккаунт. Короткие кейсы вместо длинных квизов; валидатор проверяет результат запроса, а не его текст (то есть принимает альтернативные решения); есть офлайн-режим через PWA.

Выбирайте :) и если есть возможность, поделитесь отзывами о любых играх про SQL, хочется бахнуть подборку на сайт.

@tproger
🔥4914👍61👏1🤯1😍1💯1
«Просто научись программировать» — исповедь vibe-кодера

Начинающий геймдев 4 месяца делал roguelike на чистом vibe coding (ChatGPT, Claude, Cursor). Итог: проект в помойку, $150 на подписки впустую.

Что пошло не так (с его слов)
🔘Скрипты на 100 строк раздулись до 800-1000
🔘AI создаёт 2 новых бага, пытаясь исправить один
🔘Код непонятен даже автору
🔘Баги настолько глубоко, что проще переписать с нуля

Топ-комменты
Я удивлён, что он продержался 4 месяца. Обычно AI генерит сотни строк, когда хватило бы одного if

$150 на подписки скорее всего не покрыли даже затрат на inference. Ты ещё и их деньги потратил

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

Vibe coding даёт одному не-кодеру силу пяти джунов, которые не разговаривают друг с другом


➡️ Совет из треда

Если уж используешь ИИ — сначала сам задай архитектуру, паттерны, структуру файлов. Пусть ИИ работает в твоих рамках, а не создаёт свои.

@make_game
Please open Telegram to view this post
VIEW IN TELEGRAM
🤣82💯2012🐳2💊1
Сегодня три игры от Zachtronics, где нужно писать код на упрощённом ассемблере для решения инженерных задач.

Игры платные, но недорогие: каждая в стиме стоит 5–10 баксов, зависит от региона.

TIS-100
Первая «кодерская» головоломка от Zachtronics: пишете типа на ассемблере для вымышленного многопоточного компьютера. Даёт ощущение настоящего программирования, есть пошаговый дебаггер, минималистичный интерфейс не отвлекает от задачи. Но это может быть и минусом: визуально игра очень аскетична, без любви к низкоуровневому коду быстро надоест.

Shenzhen I/O
Симулятор работы инженера в Шэньчжэне: проектируете схемы и пишете прошивки для микроконтроллеров. Похоже на реальную embedded-разработку, можно соревноваться с друзьями по оптимизации, есть даташиты для распечатки и даже встроенный пасьянс для отдыха :) Из минусов — высокая сложность, после перерыва сложно вспомнить логику своих же схем.

Exapunks
Киберпанк про хакеров в альтернативном 1997-м: программируете мини-ботов EXA, чтобы «взломать всё: банки, универы, фабрики, телеки... и даже своё тело». Атмосферная стилизация под 90-е, можно писать мини-игры на встроенной консоли, есть PvP-режим. Сложность быстро растёт, для коротких сессий игра, пожалуй, не очень подходит.

@tproger
This media is not supported in your browser
VIEW IN TELEGRAM
👍245👏1😍1
Собрали 15 самых просматриваемых докладов по Java с конференций прошлого года. Все на английском, но можно смотреть с субтитрами или синхронным переводом в браузере.

Что внутри:

— Как Netflix управляет тремя тысячами микросервисов

— За счёт чего новые версии Java становятся быстрее (доклад Oracle)

— Как язык будет развиваться в ближайшие годы

— Возможности Java в ML, разбор инструментов и библиотек

— История сборки мусора со времён Java 8!

...и ещё 10 докладов.

Самый прикольный, наверное, "Know Your Java?". Разбирают неочевидное поведение языка на примерах, может пригодиться для подготовки к собесам.

@tproger
👍155🤔4🤓2👎1
Глобальная Сеть ВСЁ? Полного распада на куски, конечно, пока нет 👁👁

Но есть термин Сплитернет....

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


Получается получается не «один интернет для всех», а несколько интернетов с частично совместимыми границами 🤷‍♀️

Автор рассказывает как такой разрыв может повлять на мировую экономику, архитектуру процессов и сетевую инфраструктуру.
Please open Telegram to view this post
VIEW IN TELEGRAM
1😭70👍6💊62👌2👾1
This media is not supported in your browser
VIEW IN TELEGRAM
В первую рабочую неделю года это вам точно пригодится: имитатор работы программиста 😏

➡️ Фановая тулза genact позволяет сделать вид, что вы заняты чем то серьёзным и ооооочень важным.

Ничего устанавливать не нужно, всё работает портативно.

📎 Репа на GitHub: https://github.com/svenstaro/genact

#кек
Please open Telegram to view this post
VIEW IN TELEGRAM
🤣63💊105🔥4😁2
This media is not supported in your browser
VIEW IN TELEGRAM
Ничего необычного, просто пакет для Node.js, который чистит терминал «шваброй». Вы не просили, но вам это нужно.

Исходники: https://github.com/JeanJouliaCode/wipeClean

#nodejs
😁108279👍4🔥4🙈4👨‍💻1
Получается Apple сдались?

Официально: новая Siri переезжает на Google Gemini

Apple подтвердила: основой обновленной Siri станет модель Google Gemini. Это решение станет фундаментом архитектуры Apple Intelligence, фактически признав превосходство внешних ИИ-технологий.

Главные изменения:

• Производительность: Gemini получит около 1,2 трлн параметров вместо нынешних 1,5 млрд у Siri .

Разделение труда: Google займется планированием запросов и саммари в облаке, а модели Apple останутся на устройстве для безопасности и общих знаний .

Новые возможности: Siri научится работать с личными данными внутри программ и «понимать» контекст экрана .

Релиз намечен на весну вместе с iOS 26.4 . В будущем Siri может превратиться в оркестратор разных ИИ-систем, работая в связке с ChatGPT и другими моделями через открытые стандарты .

За развитием событий следим на сайте.

@your_tech
1😁6012🫡11👍6🤨63😱2🔥1👏1💯1
Тот самый легкоподдерживаемый, масштабируемый код с атомарным дизайном
🤗109😁90😭23🤣17😨14😢5😱4🤝43👍1🫡1
Как бороться с кодом, написанным ИИ, способ #23

GitHub заставляет пройти тест о вашем PR, прежде чем запрашивать отзывы, чтобы убедиться, что вы его вообще читали и понимаете
This media is not supported in your browser
VIEW IN TELEGRAM
😁121🤣40🔥23👍1
Понимание аутентификации JWT: подробное руководство с примерами

В мире веб-разработки безопасность имеет первостепенное значение. Одним из наиболее популярных методов защиты веб-приложений является аутентификация с помощью JSON Web Token (JWT). 

В этом руководстве рассматривается, что такое аутентификация JWT, как она работает и как вы можете реализовать ее в своих веб-приложениях, с практическими примерами.

#jwt
👍25😁54🔥2💯1
Как думаете, смогут?
🤔3👍2😍1
Нейроинтерфейсы без операций: новый стартап Сэма Альтмана Merge Labs

Сэм Альтман запустил стартап Merge Labs, который разрабатывает нейроинтерфейсы без имплантов и хирургии. Компания уже привлекла около $250 млн инвестиций при оценке почти в $1 млрд, ключевым инвестором выступила OpenAI.

Главная идея Merge Labs — считывать сигналы мозга с помощью ультразвука и биоинженерии, без трепанации черепа, в отличие от подхода Neuralink. OpenAI называет такие интерфейсы «естественным способом взаимодействия с ИИ» и обещает помогать лаборатории моделями и научными инструментами.

Среди со‑основателей — исследователи Михаил Шапиро, Тайсон Афлало и Самнер Норман, а также предприниматели Алекс Блания и Сандро Хербиг, что намекает на долгий, но ориентированный на продукт путь — от фундаментальной науки к массовым устройствам.

За развитием истории и гонкой Merge Labs vs Neuralink следим на сайте.

@your_tech
👍29🤔134😍2👎1😱1🙊1
Создаём свой текстовый редактор на языке С

Всего из 1000 строк кода вы можете создать полноценный редактор текста, имеющий основные функции и даже подсветку синтаксиса. Достаточно воспользоваться этой инструкцией:

https://viewsourcecode.org/snaptoken/kilo/index.html

#clang
2🔥2881
Типичный программист
Пора хвастаться, как никогда! Это последний пост рубрики в этом году. Поэтому предлагаем вам похвастаться всем, чем вы гордитесь в этом году: достижения, проекты, идеи, которые увидели свет или только ждут своего часа. Хвастайтесь и делитесь всем-всем-всем!…
Пора хвастаться!

Вот праздники и подошли к концу. Надеюсь, что вы провели их весело и с пользой. А если в это время нашли в себе силы ещё и над чем-то поработать, то обязательно делитесь своим прогрессом в комментариях.
5
textarea.my — минималистичный текстовый редактор без БД и бэкенда

Главная фишка этого редактора в том, что у него нет никаких аккаунтов и баз данных для хранения текстов. Да и бэкенда никакого нет. Вместо этого он хранит всё прямо в URL. Достаточно написать всё, что вы хотите, скопировать ссылку и поделиться ею.

Проект открытый. Посмотреть, как он работает, можно по ссылке: https://github.com/antonmedv/textarea
26👍10💊64👏1🤔1
Главное, что у всех останется работа
🤣16944😁4🤪3💯2