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

https://kamyshev.me
Download Telegram
​​Нужная книга

Дочитал "Чистую архитектуру" дядюшки Боба.

Очень хорошо. Читается легко, все принципы рассматриваются на конкретных примерах. Стоит прочитать всем причастным к разработке программного обеспечения.

#чистая_архитектура
​​Развитие

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

Начал читать книгу — "7 языков за 7 недель". В ней рассмотрены очень разные языки программирования. В каждом есть какая-то идея.

#языки
​​Языки

Ruby странный. Очень дружелюбный и удобный. Но полный магии.

Я не люблю магию. Она затрудняет чтение кода. А читаем мы его чаще, чем пишем.

Ruby позволяет слишком многое. Если объявить класс с именем, которое уже занято, ошибки не будет. Просто второе объявление модифицирует первое. Это супер-магическое поведение.

Зато, при должной сноровке получается действительно семантический код.

#языки
​​Ссылка

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

Сделать ≠ делать.

Интересно, что программист сделал, а не что он делал. Если он весь день смотрел сериалы и ел печенье, но работа сделана, то хорошо. А если работа не сделана, то уже плевать, что он делал.

Тематическая статья: Что значит «сделать»

#softskills
​​Языки

Io. Готов поспорить, большинство даже не слышало о нем.

Этот язык основан на прототипах, как и JavaScript. Он имеет динамичкую строгую типизацию, аскетичный синтаксис и полную свободу.

Пример кода (поиск n-ого числа Фибоначчи):
fib := method(n, if(n == 2 or n == 1, 1, fibR(n - 1) + fibR(n - 2)))

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

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

#языки
​​Подумал, что не рассказал кто я такой и чем занимаюсь.

Я Игорь, Tech Lead в Breadhead. Большую часть времени программирую на TypeScript. Иногда на JavaScript или PHP.

В канале пишу о:
— коде: как проектировать приложения, избавляться от говнокода, писать код чистым и красивым;
— софт-скиллах: как решать задачи бизнеса, доводить задачу до конца;
— публикациях: ссылки на разные штуки, которые мне вкатили, статьи, репозитории, онлайн-курсы.
kamyshev.code pinned «​​Подумал, что не рассказал кто я такой и чем занимаюсь. Я Игорь, Tech Lead в Breadhead. Большую часть времени программирую на TypeScript. Иногда на JavaScript или PHP. В канале пишу о: — коде: как проектировать приложения, избавляться от говнокода, писать…»
​​Ссылка

Наверное, я не встречал еще ни одного проекта, где программисты бы не пилили никому не понятные фичи просто "вдруг кому-то понадобиться". Это опасный подход.

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

Тематический перевод: Не решайте воображаемые проблемы.

#softskills
​​Полезная книга

Стив Макконнелл, Совершенный код.

Тяжёлое чтиво. Прямо очень. Самое печальное, что простые и очевидные концепты перемешаны с довольно сложными.

Но прочесть стоит. Хорошо вправляет мозг.

#совершенный_код
​​Ссылка

Условные конструкции сложные. Особенно когда они вложенные или множественные.

5 советов по написанию лучших выражений с условными операторами в JavaScript

Правила валидны не только для JS, а вообще для любого языка.

#общие_знания
Завел себе твиттер, буду писать туда разное, что не попало сюда.

Подписывайтесь, что-ли — @kamyshev_code.
Часто читаю разные статьи, но подробно рассказывать о каждой долго и бессмысленно.

Настроил @IFTTT, достойные статьи будут попадать сюда автоматически.