Как стать автором
Поиск
Написать публикацию
Обновить
1026.58

Программирование *

Искусство создания компьютерных программ

Сначала показывать
Порог рейтинга

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

Какие способы навигации удобнее табов? Будем использовать cmd+p для Command Pallete, cmd+d для Open Recent, alt+<right> и alt+<left> для навигации по позициям курсора в разных файлах.

Конфиг выпуска:

{
  "workbench.editor.showTabs": "single",
  "workbench.editor.showIcons": false,
  "workbench.editor.labelFormat": "medium",
  "breadcrumbs.enabled": false,
}

Горячие клавиши:

{
  {
      "key": "alt+left",
      "command": "workbench.action.navigateBack"
  },
  {
      "key": "ctrl+-",
      "command": "-workbench.action.navigateBack"
  },
  {
      "key": "alt+right",
      "command": "workbench.action.navigateForward"
  },
  {
      "key": "ctrl+shift+-",
      "command": "-workbench.action.navigateForward"
  },
  {
      "key": "cmd+d",
      "command": "workbench.action.quickOpenPreviousRecentlyUsedEditorInGroup",
      "when": "!activeEditorGroupEmpty"
  },
  {
      "key": "ctrl+tab",
      "command": "-workbench.action.quickOpenPreviousRecentlyUsedEditorInGroup",
      "when": "!activeEditorGroupEmpty"
  },
}

Полный конфиг: https://github.com/sobolevn/dotfiles

Теги:
+1
Комментарии0

Представлен открытый репозиторий «The Little Book of Linear Algebra», где опубликовано введение в основные понятия линейной алгебры, причём кратко и понятно для начинающих.

Теги:
+4
Комментарии0

Проект Student's Guide to Software Engineering Tools & Techniques (SE‑EDU) — это база по программированию и компьютерным наукам специально для студентов — можно изучить огромный пласт дисциплин с полного нуля, включая:

• языки программирования: С++, С#, Rust, Haskell, Java, Go, JS, Swift, Python.
• архитектура и дизайн кода, паттерны проектирования, документирование, функциональное программирование, контроль версий, тестирование, UX/UI — базу для создания качественного, мощного и стабильного ПО.
• популярные фреймворки: Spring, Vue, Node, React, Xamarin.
• полезные инструменты и приёмы для разработки программ: регулярные выражения в разных языках программирования, Docker, ZeroMQ и Dotfiles.
• дополнительно позволяет изучить ML, компьютерное зрение, многопоточность, обработку естественного языка и SQL.

Теги:
+4
Комментарии1

25 бесплатных урока недели

2 сентября, вторник:

3 сентября, среда:

4 сентября, четверг:

8 сентября, понедельник:

Теги:
+7
Комментарии0

В открытом репозитории «A to Z Resources for Students» представлены ресурсы для обучения Python, PHP, Ruby, C++, C#, Machine Learning и нейросетями, а также всё про разработку на Android и много материалов про Frontend и Backend.

Теги:
+4
Комментарии0

Как правильно откатывать миграции? Если коротко, то никак.

В продакшене миграции могут идти только вперед. Какого? Откат миграции во время ролбека (при неудачном деплое) во-первых сильно усложняет всю процедуру, во-вторых, в теории, может ее некисло замедлить, уже не говоря про потенциальные локи на время отката. На фоне этого возможны ошибки, которые приведут всю систему в неконсистентное состояние.

Ролбек, в идеале, это просто переключение с одной версии кода на другую. Но ведь тогда возможны ошибки связанные с изменениями в базе? Если делать через жопу, то возможны. При правильном подходе, база всегда обратно совместима как минимум на одну версию. Только в этом случае мы можем обеспечить и бесшовный деплой (zero downtime deploy) и практически моментальный откат.

А это значит, что нельзя менять тип у колонок (если тип сужается), нельзя менять именования таблиц и полей. Если это все таки нужно, то существует немало техник, позволяющих сделать переход через создание новых сущностей и синхронизацией либо через код либо через саму базу (например с помощью триггеров). По этой теме даже написали целую книгу "Refactoring Databases: Evolutionary Database Design".

Получается, что любые ошибки в базе будут только накапливаться? Не совсем. Обратная совместимость обычно нужна только на текущую и следующую версию. Если у нас не коробка, а облачное решение, то одновременно могут работать только две версии. В таком случае, мы без проблем можем писать любые миграции, которые удаляют и меняют все что угодно, что уже не используется. Заметьте, это не откат, а новые миграции.

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

Больше про разработку в моем телеграм-канале организованное программирование

Теги:
+5
Комментарии2

На днях посмотрел два видео по рынку ИТ, в том числе с фокусом на российский сегмент (раз и два).

За завесой рассказов про ИИ, vibe coding, T-shape, динамику Восточной Европы и прочим анализом в тени остался, на мой взгляд, самый важный вопрос, на который можно ответить "да" или "нет". 

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

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

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

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

Они могут дать вам только полезные знакомства, и вы обойдете сам процесс найма.

Поэтому работникам придется адаптироваться, находя новые подходы к прохождению собесов, или менять профессию.

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

А как думаете вы?

Теги:
+2
Комментарии0

Cursor теперь помогает составлять User Rules

В Cursor буквально сегодня увидел новую опцию. А именно: когда с ним работаешь по проекту и по ходу как-то его поправляешь, то внизу слева выскакивает пимпочка и предлагает занести такие вещи в User Rules.

Очень даже удобно. Не надо самому отдельно все записывать, а потом переносить.

Теги:
-1
Комментарии0

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

Теги:
+2
Комментарии0

Обновлён репозиторий System Prompts Leaks с гайдами для большинства современных нейронок от Anthropic, Google, OpenAI, Perplexity, xAI до других топовых разработчиков, включая базу по всем моделям — как их обучали, что под капотом, бенчи, пределы возможностей и правила, по которым ИИ размышляет, а также лайфхаки, как обойти ограничения, цензуру и тормоза, пошаговые инструкции о том, как создать свою нейронку под конкретные задачи и сэкономить десятки рабочих часов на рутине.

Теги:
+4
Комментарии0

Список инструментов low-code/no-code разработки и вайбкодинга для диплома

Всем привет. Я учусь в магистратуре ИТ-юрист и планирую писать диплом с рабочей темой "Правовые основы low-code/no-code разработки и вайбкодинга". Прошу накидать инструментов для анализа )

Основная цель работы простым языком - понять, если я разрабатываю продукт с использованием сервисов low-code/no-code (или ИИ-агентов в случае вайбкодинга), могу ли я его считать полностью своим или нет.

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

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

  • Разработка сайтов: tilda, wix, carrd, Collabza (личные кабинеты), Webflow, Craftum, Flexbe, Creatium, LPgenerator

  • Автоматизация бизнес-процессов: битрикс24 (роботы), NBT, BPMSoft, ROBIN (российские решения), zapier, albato, Бипиум, Nodul, APInita

  • Разработка приложений: bubble, glide, appmaster, adalo, appsfera, Stacker, QuintaDB, Directual, Bravo Studio, Thunkable, Voiceflow

  • Вайб-кодинг: Cursor, Windsurf, Replit, Devin, Claude Code, Cline, GigaStudio (рус)

Теги:
+2
Комментарии2

Лайфхак по нейронкам №89: лоцируй связанный код

Когда-то писал о подходах, которые в эру нейронок получили еще аргументов к применению: WYNWYN и Vertical Slice – принципам, говорящим, что надо писать только то, что нужно и там где нужно.

Недавно работал с кодовой базой, где код обработки http запросов (авторизация, пойти в бд, посчитать что-то, сделать запрос в стороннюю систему, смерджить результат и отдать) лежал в папках по категории (все обращения в бд в одной папке, все модели в другой, все обращения к API в третьей, все операции по мерджу в четвертой, и т.д.).

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

Важно отметить, большинство функций, разбросанных по папкам, буквально вызывались всего один раз в конкретных местах (и такая ситуация встречается в 90% кодовых баз, с которыми приходилось работать).

Решил сделать эксперимент: сложил весь связанный код в одно место (причем не ctrl-c-v, а ctrl-x-v), запустил нейронку и да, она сначала прочитала весь связанный код из папок, и уже после пыталась добирать доп контекст из сторонних, но теперь ответы и код были почти 100% попаданием в мой запрос (опять же, в меру их текущих возможностей).

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

И тут важно сделать несколько умозаключений:

  • Если нейронке НЕ дать хороший контекст, она отвечает абсолютным бредом, поэтому, если есть желание пользоваться благами ИИ, самая важная задача – создавать условия при которых она будет получать только нужные данные

  • Лоцирование связанного кода – одно из прекрасных решений этой задачи

  • На самом деле, для людей это работает точно так же – иметь возможность зайти в одно место и прочитать весь связанный код – ускоряет и улучшает итоговый результат, который выдают ~кожаные мешки~ мы

Как вы действуете, если кодовая база разбросана по проекту и нет возможности собрать ее в одном месте, а контекст нейронки надо задать?

Теги:
+6
Комментарии2

Представлен сервис Strudel, который превращает строки кода в мелодии. В качестве основы используется — JS, по этому гайду можно сделать любую композицию из кода. Если есть синтезатор или целый музыкальный сетап, то его можно забустить через MIDI или OSC.

Теги:
+1
Комментарии1

Ближайшие события

24 бесплатных урока недели

Привет, Хабр. Делимся подборкой открытых уроков, которые пройдут в Otus в рамках онлайн-курсов. Вас ждут живые лекции с преподавателями-практиками — отличная возможность не только получить новые знания, но и задать вопросы экспертам. Участие — бесплатное, нужна только регистрация. Присоединяйтесь!

26 августа, вторник:

27 августа, среда:

28 августа, четверг:

1 сентября, понедельник:

Теги:
+3
Комментарии0

Выводим Бугаенко на чистую воду разбирая ООП

Топ Перлов

  • Любой массив байт должен уметь работать с файлами, сетью и тд.

  • Программа должна не падать на ошибках, а продолжать работу с фейковыми объектами.

  • Вместо падения в моменте конструирования объекта, надо падать на другом конце программы при каждом его использовании.

  • Я придумал новый язык, и чтобы он не так сильно тормозил, надо встроить GC в CPU.

Упомянутые ссылки

Копилка благодарностей

Теги:
-4
Комментарии2

В Alibaba выпустили пока бесплатный ИИ-агент для написания кода Qoder, который может сам создавать готовые приложения из простого промта. Разработчики решения написали, что это платформа для кодинга «нового поколения». Анализирует весь проект и кодовую базу, сходу понимает как именно вы пишете код и пытается делать также, разбивает сложные задачи на шаги и решает постепенно, пишет спецификацию, планирует и выполняет изменения в коде.

Теги:
-1
Комментарии1

Интеграция PVS-Studio c SGRC SECURITM

Компания PVS-Studio и платформа Securitm заключили технологическое партнёрство для обеспечения интеграции статического анализатора кода PVS-Studio в экосистему DevSecOps.

Облачный сервис и программное обеспечение SGRC Securitm позволяют построить управление информационной безопасностью на базе риск-ориентированного подхода и единой информационной модели компании.

Отчёт анализатора PVS-Studio стало возможным загрузить в Securitm для дальнейшего использования с помощью пользовательского интерфейса системы.

Подробнее о том, как загрузить отчёт анализатора PVS-Studio в систему Securitm можно прочитать в посвящённом этому разделе нашей документации.

Также мы с коллегами из Securitm провели совместный вебинар, на котором обсудили, как обеспечить соблюдение требований ГОСТ в области РБПО, а также показали реальные примеры использования PVS-Studio и Securitm.

Теги:
0
Комментарии0

Подключайте LLM и AI-модели бесплатно 🤩

Мы открываем бесплатный доступ к моделям в Evolution Foundation Models до 31 октября.

В сервисе уже доступно больше 20 open source моделей, в том числе новинки от OpenAI — gpt-oss-120b, DeepSeek, Qwen и QwQ, T-pro-it-2.0. А еще — новая open source модель GLM-4.5 с контекстным окном в 131 тысячу токенов от китайской компании Z․ai. Она показала высокие результаты на бенчмарках, особенно в агентных задачах и программировании. Как интегрировать GLM-4.5 в VS Code рассказали в нашем telegram-канале.

Все модели могут подключаться к внешним инструментам с Function Calling и поддерживают Reasoning.

Как попробовать: 

  1. Регистрируйтесь в личном кабинете Cloud․ru. 

  2. Выбирайте подходящие модели.

  3. Интегрируйте их по OpenAI-совместимому API в ваши проекты, сравнивайте ответы и получайте быстрые результаты.

Сравнить ответы моделей 🕹️

Теги:
0
Комментарии0

Просмотр кода в интерфейсе Amvera Cloud

Мы сделали возможность просмотра содержимого файлов репозитория в интерфейсе.

Раньше было сложно понять, какая версия файла загружена в облако. 

Теперь можно зайти в файл в разделе Репозиторий и посмотреть его содержимое.

Amvera – облако для простого запуска проектов со встроенным CI/CD (деплой идёт через Git или загрузку файлов в интерфейсе). C Amvera вам не нужно думать о настройке NGINX, виртуальных машин и другой инфраструктуры.

Теги:
0
Комментарии0

«То, для чего Cи недостаточно хорош»: МойОфис выпустил трёхтомник по Lua

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

«Lua предлагает то, для чего Си недостаточно хорош: достаточную удалённость от аппаратного обеспечения, динамические структуры, отсутствие избыточности и лёгкость тестирования и отладки. С самого начала Lua создавался для реальных сценариев взаимодействия с хост-программами, такими как МойОфис, и предлагает инструменты для опытных программистов, чтобы проявить свои творческие способности», — Роберту Иерузалимски, один из основных создателей языка программирования Lua.

Первый том — уже третье переиздание классической книги Роберту. Предыдущие два издания также вышли в свет при поддержке МойОфис.

Второй и третий тома — первый выпуск учебников Дмитрия Шульгина, старшего тренера по продуктам Учебного центра МойОфис («Хаб Знаний МойОфис»), посвященных созданию макрокоманд и надстроек в наших текстовых и табличных редакторах.

В них вы найдёте:

  • что такое макросы и надстройки, как устроена автоматизация в МойОфис и зачем все это нужно (к слову, о разработке макросов мы подробно писали здесь);

  • основы Lua — от переменных и типов данных до пользовательских функций;

  • примеры работы со списками, листами, ячейками, а также задания для закрепления материала;

  • примеры создания надстроек для ускорения и автоматизации операций: от вставки изображений и рецензирования до печати и локализации интерфейса.

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

Книга подойдёт как опытным разработчикам, так и новичкам в Lua и автоматизации. А если хотите глубже погрузиться в тему — присоединяйтесь к нашим курсам по Lua.

Теги:
+21
Комментарии0
1
23 ...

Вклад авторов