Natalia Bass 01 сентября 2017

Подвижка в сторону функционального программирования произошла, признаться честно, около десяти лет назад. Мы заметили, что языки вроде Scala, Clojure, and F# начали привлекать внимание. Это было больше, чем приычный энтузиазм — "О, круто, новый язык!". Было что-то выделявшее его, по крайней мере мы так думали.

Закон Мура обещал нам, что скорость компьютеров будет удваиваться каждые 18 месяцев. Этот закон работал с 1960 до 2000. А затем остановился. Вообще. Частота тактовых импульсов достигла 3Гц и перестала подниматься. Скрорость света была достигнута. Сигналы не могли проходить сквозь поверхность чипа настолько быстро, чтобы реализовать более высокие скорости.

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

Артем Арбатский 25 августа 2017

Это перевод статьи Брэндона Морелли "JavaScript: What the heck is a Callback?"

Что такое коллбэк?

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

Чуть сложнее: В JavaScript функции – это объекты. Поэтому функции могут принимать другие функции в качестве аргументов, а также функции могут возвращать функции в качестве результата. Функции, которые это умеют, называются функциями высшего порядка. А любая функция, которая передается как аргумент, называется callback-функцией. Чтобы лучше разобраться, давайте посмотрим на примерах, как это выглядит.

Зачем нам нужны коллбэки?

По одной простой причине – JavaScript это событийно-ориентированный язык. Это значит, что вместо того, чтобы ждать ответа для дальнейшего выполнения программы, JavaScript продолжит выполнение, одновременно ожидая других событий. Давайте разберем простой пример:

function first(){
  console.log(1);
}
function second(){
  console.log(2);
}
first();
second();
Natalia Bass 22 августа 2017

Это перевод заметки Саймона Саута, оставленной в ответ на вопрос How do you know when someone is a good programmer? на quora.com

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

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

Ivan Gagarinov 11 августа 2017

Фото

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

До Хекслета у меня уже был небольшой опыт в программировании: начинал что-то делать на Perl, потом немного увлекся C++, а потом под впечатлением от успехов инди-разработчиков ударился в геймдев, писал на Monkey. Но увы, ни в одном из дел не добился успехов, а все потому, что не изучив до конца инструмент, начинал писать какой-то огромный проект мечты. При небольшой цели мне становилось неинтересно, в итоге вот я уже пишу мморпг с "корованами" и прочим, а это приводило к тому, что временами втыкал по несколько часов, не понимая что написал неделю назад. В какой-то момент пришлось честно себе признаться: либо я так и останусь самоучкой-недоучкой и буду делать свой проект до конца жизни (потому что месяцами не могу заставить себя сесть за свой говнокод), либо надо что-то менять, и пора ставить реальную цель. Так я и пришел учиться в Хекслет с целью устроиться на работу программистом.

В Хекслете с первых уроков мне понравился подход: акцент ставился не на конструкциях языка, а на саму суть программирования. Кажется, это был курс "Построения абстракций". Тогда еще не было совсем простых курсов.

Арбатский Артём 11 августа 2017

У нас накопилось чуть-чуть новостей и решили еще раз собрать все вместе и поделиться. Вот что мы на Хекслете сделали за июль:

Гит Гит, Ура!

Наконец-то у нас вышел новый курс по Git (можно смотреть бесплатно)

Реальные проекты для профессии PHP-программист

Проекты были только на JS, и нас давно просили запилить проекты по PHP. Так вот, оно свершилось. Первый проект уже запущен, люди проходят, прокачиваются и пишут приятные отзывы.

Реалити-шоу «С нуля до работы»

Некоторое время назад мы вместе с одним из учеников решили провести эксперимент. У него ситуация с обучением мягко говоря непростая. И Кирилл взял его обучение под свой контроль.

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

R. D. 10 августа 2017

Подкаст Рахима Давлеткалиева до 2019 года выходил под брендом «Хекслет». Сейчас он переименован в «Мысли и методы». Все старые и новые выпуски доступны тут:

Natalia Bass 07 августа 2017

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

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

Но если вы хотите быть хорошим инженером-программистом, вы не должны брать работу домой.

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

Natalia Bass 03 августа 2017

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

Natalia Bass 31 июля 2017

Это перевод статьи "The bad reasons you’re forced to work long hours" от Itamar Turner-Trauring.

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

Так почему они это делают? Давайте разберём несколько причин.

Следование примеру

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

Как программисту определить желаемую зарплату

Продолжаем серию статей о карьере. В этот раз поговорим о том, как объективно вычислить, на какую зарплату вы можете претендовать.

Как джуну оценить свою стоимость на рынке труда

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

Пример расчёта для начинающих карьеру в Москве полуаскетов:

Еда. В той же Москве вполне можно вкусно и полезно питаться в околодомашних условиях примерно на 6к в месяц. Для кого-то цифра и 30, но тут следует подумать, не едите ли вы слишком много мидий на завтрак, обед и ужин.

Проживание. Снять комнату (опять же в мск) можно и за 40, а можно за 15. Процесс трудоёмкий, но заполучить комнату неподалёку от мкада и метро в нормальном состоянии точно получится.

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

Еду округлим до 10, комната 15, одежду округлим до 10 и в эту же сумму на одежду заложим какие-то неотложные ежемесячные нужды (проезд и связь, поменять смеситель в ванной, починить замок на куртке, купить новую мышку взамен сломавшейся). Всего получается 35, ещё 5 накинем на хотелки вроде видеоигр, походов в кино и проч., чтобы скучно не жилось. Итого получаем 40.

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

Хекслет

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