Как стать автором
Обновить

Компания Хекслет временно не ведёт блог на Хабре

Сначала показывать

Мифология и реальные методы прагматичного программирования

Время на прочтение12 мин
Количество просмотров21K

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

Меня зовут Кирилл Мокевнин, и я — сооснователь школы программирования Хекслет. За последние пару лет я провел собеседования с более чем 400 человек, потенциальными наставниками по совершенно разным направлениям в разработке. В результате у меня собралась большая выборка наблюдений, которые мы и разберем в этой статье.

Читать далее
Всего голосов 59: ↑54 и ↓5+64
Комментарии27

Убираем JavaScript. Как при помощи htmx красиво использовать HTML и уменьшить объем кода

Время на прочтение6 мин
Количество просмотров49K

htmx — инструмент для создания сложных и интерактивных веб-приложений на HTML, альтернатива клиентскому рендерингу на Javascript. В этой статье рассказываем, как библиотека помогает переиспользовать элементы на сервере, сократить объем кода на Javascript и отказаться от сборки.

Читать далее
Всего голосов 16: ↑11 и ↓5+10
Комментарии23

Как отказаться от промежуточной среды разработки и ничего не потерять

Время на прочтение5 мин
Количество просмотров7.3K

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

Читать далее
Всего голосов 10: ↑8 и ↓2+7
Комментарии7

В чем разница между софт-скиллами и чертами личности

Время на прочтение3 мин
Количество просмотров11K

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

Читать далее
Всего голосов 14: ↑6 и ↓8+1
Комментарии9

Чек-лист хороших инженерных практик в компаниях

Время на прочтение7 мин
Количество просмотров19K

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

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

В этой статье я расскажу о причинах такой катастрофической разницы, а также об инженерных практиках, которые позволят поддерживать высокий темп разработки:

Читать далее
Всего голосов 18: ↑16 и ↓2+18
Комментарии8

Как основать школу программирования в 2012 году и чуть не потерять всё из-за бума в Edtech

Время на прочтение11 мин
Количество просмотров11K

CEO «Хекслета» Кирилл Мокевнин — о том, как не надо создавать свою школу программирования, если вы хотите зарабатывать, и почему инженерная экспертиза в IT-сфере мешает реальному пониманию рынка.

Читать далее
Всего голосов 39: ↑37 и ↓2+60
Комментарии22

Семь бесплатных автоматизированных платформ-задачников для прокачки навыков программирования

Время на прочтение2 мин
Количество просмотров64K

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


CheckiO


Проект из Украины «Чекио» сфокусирован на Python и JavaScript. Это сборник игровых задач по программированию для тех, кто уже не новичок. Большой упор на геймификацию, симпатичную графику и общение в сообществе. В самом решении задач игрового процесса нет, но есть общий сценарий для прохождения платформы. Полезная фича — смотреть другие решения и подсказывать студентам как их можно улучшить.


CheckiO


leetcode


Сборник задач по программированию на разных языках. Цель сервиса — готовить программистов к заданиям, которые встречаются на интервью. Платформа сразу даёт фидбэк на правильность и эффективность решения, показывает варианты решений и позволяет обсудить их с другими участниками. В платной версии можно пройти автоматизированное интервью в Google, Facebook или Amazon: робот подберёт вопросы, засечёт время и даже поможет оценить.


leetcode

Читать дальше →
Всего голосов 28: ↑28 и ↓0+28
Комментарии18

Наука поиска работы, часть VII: нужно соответствовать только 50% «требований» вакансии

Время на прочтение4 мин
Количество просмотров20K

Перевод статьи: The Science of the Job Search, Part VII: You Only Need 50% of Job “Requirements”
Автор: Claire Jaja
Дата публикации: 27 ноября 2018


Нужен проджект-менеджер. 5+ лет опыта, сертификация «Шесть Сигм», продвинутое понимание глубокого обучения и умение при необходимости провести операцию.

Кто по-настоящему соответствует всему вышеперечисленному? Оказывается, по большому счету, никто. И у вас одинаковый шанс получить приглашение на интервью будь у вас 50% компетенций, требуемых в вакансии, или 90%.


Соответствовать 50% требований вакансии вполне достаточно


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


  • Ваши шансы получить приглашение на интервью начинают расти с момента, где вы соответствуете примерно 40% требований
  • Если вы соответствуете 90% требований, ваши шансы не сильно выше получить приглашение, чем если у вас 50% необходимых навыков
  • Для женщин цифры примерно на 10% ниже. То есть, вероятность начинает расти от 30%, и на уровне 40% вероятность такая же, как при 90%
Читать дальше →
Всего голосов 27: ↑24 и ↓3+21
Комментарии21

Шесть бесплатных автоматизированных платформ для изучения программирования

Время на прочтение3 мин
Количество просмотров107K

Привет, сообщество! Мы в Хекслете составили список из пяти бесплатных автоматизированных онлайн-платформ для новичков.


На русском:


HTML Academy
«Академия» учит верстать сайты. Основной контент в формате подписки (390 рублей в месяц) и интенсивов (от 12500 рублей), но есть несколько бесплатных автоматизированных курсов по основам HTML, CSS и JavaScript.


В HTML Academy не столько задания для прокачки в программировании, сколько для знакомства с основами веб-разработки. Но это идеальный формат для тех, кто никогда не писал код и хочет попробовать. Большое количество веб-разработчиков начинало путь именно здесь.


Code Basics
Это новый бесплатный сервис от Хекслета. Его основная идея — через решение простых заданий прямо в браузере погружать новичков в основы программирования. Сейчас есть уроки по PHP, JavaScript и Python, ближайшее время появятся — новые. Платформа подойдет лучше всего для изучения основ синтаксиса, и меньше — для прокачки алгоритмов.


Обучение построено вокруг чередования небольших порций теории (3-4 абзаца) и закрепления практики в тренажере. У каждого практического задания есть решение учителя, которое можно сравнить со своим после успешного прохождения и раздел для обсуждения задания.

Читать дальше →
Всего голосов 45: ↑44 и ↓1+43
Комментарии52

Конкурс, новые курсы и фичи (осенние новости Хекслета)

Время на прочтение3 мин
Количество просмотров6.3K

Привет!


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



иллюстрация из курса «Основы командной строки»


Вот осенние новости.


Конкурс историй


Вы ищете работу? Возможно, свою первую работу программистом? Напишите интересную историю о том, как и почему вы стали изучать программирование, как выглядит ваш процесс обучения и роста. Авторы трёх историй, набравших больше всего «старов» (звёздочек) на Гитхабе, получат по году бесплатного обучения на Хекслете с проектами.


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


Подробнее об условиях и призах → mystory.hexlet.io. А репозиторий с историями тут → github.com/Hexlet/our-stories.


Новые курсы


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

Читать дальше →
Всего голосов 15: ↑15 и ↓0+15
Комментарии11

Code Basics: бесплатные практические уроки для новичков

Время на прочтение4 мин
Количество просмотров35K

Привет, Хабр! Мы в Хекслете запустили в этом году открытый и бесплатный проект для новичков: code-basics.ru. Это интерактивные курсы с практикой, рассчитанные на тех, кто вообще никогда не программировал. Мы учим основам программирования и рассказываем про базовое устройство компьютеров.


Сейчас доступен полный курс по PHP и первый модуль по JavaScript. На подходе Racket и Python. Весь исходный код платформы и самих уроков — в open source.


Сегодня хочу рассказать немного о сути Code Basics, его внутренностях и технологическом стеке.


Читать дальше →
Всего голосов 38: ↑36 и ↓2+34
Комментарии55

Знакомство с командой курсов стека Java на Hexlet

Время на прочтение4 мин
Количество просмотров11K
Привет, Хабраюзер. Мы давно хотели стать немного ближе к тебе. И сегодня столь длительно зреющая идея рассказать тебе более подробно о том: «кто и какие курсы Java стека на Хекслет делает» — воплотилась! Как думаю — стало понятно: мы расскажем Вам о курсах над которыми мы трудились последние пол года, включая самый последний курс который вот-вот начали записывать: Java для Web сервисов.


Читать дальше →
Всего голосов 13: ↑11 и ↓2+9
Комментарии1

Новый подкаст об информатике

Время на прочтение2 мин
Количество просмотров12K


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


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


1. Инструменты и искусственный глупый интеллект


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


Слушать на SC / слушать на YT / скачать


Читать дальше →
Всего голосов 25: ↑25 и ↓0+25
Комментарии5

Новые практические курсы по JavaScript и ES6

Время на прочтение2 мин
Количество просмотров29K


Привет, Хабр!


Последние несколько месяцев мы в Хекслете работали над новыми курсами и обновлениями платформы. Сейчас на сайте доступно четыре "профессии", так мы называем последовательные программы обучения по разным направлениям, от новичка до джуниора. Одна из профессий окончена, а в остальных продолжают выходить новые курсы. Сегодня хочу рассказать про самое важное для нас сегодня направление — JavaScript, в частности профессию "Фронтэнд JS-программист".


Мы пошли не стандартным путем "hello world, сделаем форму, добавим анимацию, изучим ООП", а взяли за основу подход к изучению программирования в целом, а не конкретно языка JavaScript. Язык же используется как инструмент решения задач и применения изученных концепций и идей. При это мы изучаем свежий стандарт ES6 и с самого начала знакомим учащихся с правильным окружениям и техниками: модули, пакетный менеджер, отладка, модульное тестирование.


Вот как выглядит программа обучения:


  1. Жизнь программиста. Про профессию, виды компаний и виды разработки.
  2. Основы программирования. Фундамент: кодинг, ошибки, отладка, функции, побочные эффекты, типы данных. И, конечно, базовые штуки вроде чисел, строк, условий и т.д.
  3. JS: подготовка к работе. Установка и настройка окружения — node, npm, atom.
  4. JS: Составные данные. Как из простых типов данных составлять более сложные. Абстракция от чисел до объектов.
  5. Bash: Основы командной строки.
  6. JS: Последовательности. Пишем свой генератор HTML и изучаем filter, map, reduce.
  7. JS: Программирование, управляемое данными. Типы, сообщения, ООП и TDD.
Читать дальше →
Всего голосов 20: ↑19 и ↓1+18
Комментарии14

Как нанимают программистов. Интервью с Катериной Гавриловой из DigitalHR

Время на прочтение5 мин
Количество просмотров42K

Рекрутеров редко спрашивают про то, как устроена их работа: обычно на собеседованиях кандидатам интереснее узнавать про проекты, куда они будут выходить. Оно и правильно. Но в одну пятницу CEO DigitalHR Катя Гаврилова в интервью с Hexlet отвечала на поток вопросов от разработчиков: почему эйчары не перезванивают, как становятся рекрутерами и как они вообще ищут кандидатов. На некоторые темы так и не хватило времени, поэтому постараемся дать ответ здесь:


ОБРАЗОВАНИЕ


Если у кандидата есть высшее образование, но непрофильное?


Разработчики — счастливые люди. Хотя бы потому, что у работодателей нет строгих требований к образованию кандидатов. Важны: опыт коммерческой разработки, владение определенным фреймворком, знание конкретной базы данных. Мы редко получаем запросы от компаний, чтобы кандидат заканчивал МГТУ, МИФИ или МАИ, но если запрос на высшее технического образование есть, эти вузы будут обязательно названы. Этот вопрос важен, если вы в будущем будете рассматривать релокацию, и вас будут приглашать работать заграницу. В этом случае важно, чтобы образование было профильным.


ПРЕДЫДУЩИЙ РАБОТОДАТЕЛЬ


Насколько важны рекомендации от других компаний?


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

Читать дальше →
Всего голосов 46: ↑31 и ↓15+16
Комментарии98

Алан Кэй, создатель ООП, про разработку, Лисп и ООП

Время на прочтение5 мин
Количество просмотров60K
image

Если вы никогда не слышали про Алана Кэя, то как минимум слышали его знаменитые цитаты. Например, это высказывание 1971 года:
The best way to predict the future is to invent it.
Лучший способ предсказать будущее это изобрести его.


У Алана очень яркая карьера в информатике. Он получил Премию Киото и Премию Тьюринга за работу над парадигмой объектно-ориентированного программирования. Он был одним из первопроходцев в области персональных компьютеров и графического интерфейса, он разработал Smalltalk — один из первых самых влиятельных языков программирования всех времен.

У нас в Хекслете, особенно в чате, постоянно поднимается вопрос «что такое ООП» и «что имел ввиду Алан Кэй на самом деле». В этой заметке собраны интересные цитаты Алана о состоянии современной разработки, ООП и языке Лисп.
Читать дальше →
Всего голосов 42: ↑37 и ↓5+32
Комментарии139

10 правил, которые позволяют NASA писать миллионы строк кода с минимальными ошибками

Время на прочтение3 мин
Количество просмотров160K

image
Маргарет Гамильтон стоит рядом с написанным ей исходным кодом бортового компьютера «Аполлона»


Лаборатория реактивного движения (Jet Propulsion Laboratory) — научно-исследовательский центр НАСА, ответственный за большинство беспилотных космических кораблей США. Там пишут много кода, и права на ошибку у них намного меньше, чем у обычных программистов.


В JPL пишут на Си, и на их сайте есть документ "JPL Institutional Coding Standard", описывающий жесткие стандарты кодирования внутри организации. Они напоминают правила программирования для встроенных (embedded) систем и систем реального времени, с ограниченными ресурсами. Но многие из правил эти просто принципы хорошего программирования. Ограничение сложности, максимальное упрощение для последующего чтения кода и отладки, отсутствие побочных эффектов. Мы в Хекслете постоянно говорим об этом в вебинарах и, конечно, в самих курсах. Мы считаем очень важным как можно раньше поднимать эти темы, поэтому про функции и побочные эффекты начинаем говорить в самом первом курсе «Основы программирования», который рассчитан на новичков. Это бесплатный курс, кстати, и в нем есть практика на языке JavaScript.


Спасибо хабраюзеру Boletus за важную поправку и дополнение:
В 2006 году Gerard Holzmann с коллективом сформулировал 10 основных правил для JPL в документе «The Power of 10: Rules for Developing Safety-Critical Code». Они вошли в основу нынешнего стандарта, наряду с MISRA C и другими дополнениями. Статья в Википедии.


Вот перевод этого списка.

Читать дальше →
Всего голосов 92: ↑80 и ↓12+68
Комментарии118

Нанимайте личность, а не набор навыков. Мои самые важные вопросы в собеседовании

Время на прочтение4 мин
Количество просмотров76K

Привет, Хабр!


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


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


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


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

Читать дальше →
Всего голосов 60: ↑38 и ↓22+16
Комментарии99

Бесплатные практические курсы по основам программирования на JavaScript

Время на прочтение2 мин
Количество просмотров85K
Привет, Хабр!

Мы на Хекслете закончили полный цикл курсов по обучению PHP-программистов и переключились на стек JavaScript. Первые два курса новой программы уже доступны, и они бесплатные!

Курс «Основы программирования» — это знакомство с миром разработки и языком JavaScript. Курс рассчитан на новичков без опыта в программировании, но будет полезен и многим практикующим программистам, потому что покрывает таки темы как рекурсивные и итеративные процессы, чистые функции и побочные эффекты, автоматические тесты и модульное тестирование.

Читать дальше →
Всего голосов 32: ↑29 и ↓3+26
Комментарии21

Публичные собеседования на позицию веб-разработчика в прямом эфире

Время на прочтение1 мин
Количество просмотров46K
Привет, Хабр!

Мы в Хекслете делаем не только практические курсы по программированию, но и готовим людей к карьере программиста. Например, недавно запустили полную программу обучения «Профессия PHP-программист», куда входят основы программирования, частично книга СИКП, веб, базы данных, деплой, управление конфигурацией и многое другое, что мы считаем важным для настоящего разработчика. По завершению учебной программы мы помогаем людям получить первый опыт и устроиться на работу.

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

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

Собеседование 1: Денис Кривощеков


Занимается фрилансом, изучает Ruby on Rails.

Читать дальше →
Всего голосов 52: ↑30 и ↓22+8
Комментарии53