Основные возможности платформы Hexlet не доступны в вашем браузере. Пожалуйста, обновитесь.
08 декабря 2017, Natalia Bass

РазвитиеИзучите необходимый минимум Linux, чтобы быть продуктивным

Благодаря своим open source корням, Linux выиграл от вкладов тысяч разработчиков за всё время его существования. Они построили программы и утилиты, чтобы упростить работу не только себе, но и тем программистам, которые последовали за ними.

В результате получился огромный пакет программ и утилит, который был написан на Linux и под Linux. Большая часть его никогда не портировалась в Windows.

Разработка на Windows ведёт к двум основным проблемам:

  1. Базовые задачи, вроде парсинга файлов, рабочего планирования и поиска текста используются чаще, чем запуск утилиты командной строки.
  2. Языки программирования (Python, C++) и связанные с ними библиотеки выкидывают ошибки, потому что они ожидают конкретных параметров Linux или специфических локаций файловой системы.

Если собрать всё вместе, это выльется в трату времени на переписывание базовых инструментов, которые уже доступны в Linux, они позволят избежать ошибок совместимости с ОС. Тут нет никаких сюрпризов — экосистема Windows просто не была задумана и спроектирована под нужды разработки софта.

Теперь давайте рассмотрим базовые идеи Linux.

Читать дальше →
20 октября 2017, Natalia Bass

РазвитиеКак участвовать в open source проектах

github

Я написал это руководство, чтобы помочь любому присоединяться или выкладывать свои (contributing) open source проекты на GitHub. Одна из причин крутости open source — в желании людей помогать друг другу.

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

Читать дальше →
05 октября 2017, Natalia Bass

Развитие7 способов усовершенствовать навыки чтения кода

Это перевод статьи 7 Ways to Improve Your Code Reading Skills от A. N. M. Bazlur Rahman.

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

Чтение чужого кода — в описании должности инженера-разработчика. Однако, это не всегда самая приятная задача. Не каждому нравится читать чей-то код. Иногда это просто скучно, а иногда чужой код просто вызывает желание пойти напиться. Иногда у вас появляются неприятные ощущения от того, что вы не можете его понять или от того, что он просто недостаточно хорошо написан. Большинство разработчиков предпочитает писать код, а не читать, не осознавая того, что чтение — тоже важный навык.

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

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

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

Читать дальше →
21 сентября 2017, Natalia Bass

РазвитиеКакие навыки необходимы на разных этапах карьеры

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

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

career steps 1

Читать дальше →
03 августа 2017, Natalia Bass

Развитие(Не) намекайте: общение с технарями

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

Читать дальше →
13 июля 2017, Natalia Bass

РазвитиеЭго — враг разработчика

Это — перевод статьи "For Developers, Ego is the Enemy" разработчиак Fatos Morina.

Недавно я закончил читать книгу Райана Холидея Ego is the Enemy (Эго – это враг), и у меня возникло множество ценных умозаключений, которые я решил написать в этой статье.

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

Под эго мы подразумеваем нездоровую веру в собственную значимость: наше высокомерие и эгоцентричные амбиции. Этот дерзкий ребёнок в каждом из нас, который настроен только выигрывать, притом за счёт других.

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

Читать дальше →
26 марта 2017, Kirill Mokevnin

РазвитиеМонокультура

Монокультура в программировании — это использование одного стека для решения всех возникающих задач. Она существует не только на уровне конкретного человека и его предпочтений, но также часто встречается на уровне компаний. В таких компаниях, как правило, все делается с использованием одну технологию.

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

Читать дальше →
19 марта 2017, Kirill Mokevnin

РазвитиеКак эффективно читать профессиональную литературу

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

Читать дальше →
11 февраля 2017, Kirill Mokevnin

Развитие4 совета начинающим программистам для повышения своей продуктивности

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

Читать дальше →
13 января 2017, Kirill Mokevnin

РазвитиеАлгоритм поиска первой работы

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

Читать дальше →
Мы учим программированию с нуля до стажировки и работы. Попробуйте наш бесплатный курс «Введение в программирование» или полные программы обучения по Node, PHP и Java. Хекслет

Подробнее о том, почему наше обучение работает →