kamyshev.code
1.86K subscribers
40 photos
565 links
Архитектура, код, софт-скиллы и всё остальное. Вопросы, пожелания, комментарии — @igorkamyshev

https://kamyshev.me
Download Telegram
​​Продолжаем разговор о непрерывной интеграции.

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

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

Для JavaScript это JSHint, ESLint. Для TypeScript — TSLint. Уважайте линтеры, любите линтеры, используйте линтеры.

Для других языков можно найти по запросу static analysis {{language}}.

#удобство_разработки
Месяц назад я начал постить через бота статьи, которые прочёл и считаю достойными. Продолжать?
anonymous poll

Да! 💪 – 218
👍👍👍👍👍👍👍 92%

Не стоит. 🙄 – 18
👍 8%

👥 236 people voted so far. Poll closed.
Ссылка

Большую часть времени разработчики читают код. А потому нужно, чтобы чтение кода вызывало как можно меньше удивления.

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

В таком случае следует использовать средства автоматизации — Дорога к Prettier

#удобство_разработки
​​Четвертым языком в книге "7 языков за 7 недель" идёт Scala.

Это прекрасный симбиоз объектно-ориентированного и функционального языка. Scala работает внутри виртуальной машины Java, может использовать код на Java. Но при этом не страдает громоздким синтаксисом и бременем обратной совместимости.

Современный язык с крутыми идеями.

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

Расстроило: имплиситы (сложно объяснить, но выглядит стрёмно), перегрузка операторов (human1 $ human2, что этот код делает догадаться невозможно).

#языки
​​Нужная книга

"Идеальный программмист" Роберта Мартина совсем не о коде. Она про то как делать свою работу хорошо. Что иногда стоит сказать заказчику "нет". О важности тестов, правильных оценках времени и борьбе с давлением.

В общем, обо всем что делает хорошего программиста хорошим. Точно нужно прочесть всем.

#идеальный_программист
Онлайн-курс

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

На Stepik есть хороший бесплатный курс Введение в дискретную математику, который охватывает большую часть этих тем.

#математика
​​Онлайн-курс

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

На Coursera есть хороший курс Algorithmic Toolbox, платный. И есть русскоязычный бесплатный аналог на Stepik — Алгоритмы: теория и практика. Методы и Алгоритмы: теория и практика. Структуры данных.

#алгоритмы
Channel name was changed to «kamyshev.code»
Channel photo updated