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

Блог Хекслета

Обучение, саморазвитие и истории успеха
,

Подкаст11. Q&A: Машины заменяют программистов, перспективы ML и как развиваться в ауле

Выпуск ответов на вопросы. Три вопроса на сегодня:

В последнее время вижу статьи про то, что многие профессии будут заменяться компьютерами и алгоритмами. Насколько по-вашему это актуально для программистов и как и куда надо развиваться, чтобы свою профессию в ближайшее время не потерять? / isprogfun

Каковы по-вашему мнению перспективы ML (машинного обучения)? Станет ли это направление новым big deal в мире computer science? И насколько вероятно появление принципиально новых методов машинного обучения? Все что есть сейчас это по сути статистические и вероятностные модели скрывающиеся под красивыми названиями. / bivo

Каким образом развиваться айти специалисту, разработчику в ауле, маленьком городе. Как преодолеть барьер i don't know what I don't know / Askar Telpekbayev‏

Вы можете поддержать подкаст на Patreon. Ваши пожертвования помогут выпускать подкаст чаще.

Выпуск можно послушать на ютубе.

Предыдущие выпуски:

Читать дальше →
,

Истории успехаИнтервью с jougene о трудоустройстве и обучении

Всем привет, сегодня очередное интервью с нашим товарищем Евгением Синицыным (jougene). Евгений уже писал статью про свое трудоустройство, но мы решили еще немного помучить его вопросами, и он великодушно согласился :)

История Евгения вкратце для тех, кто не читал предыдущую статью:

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

Сколько в итоге проработал на первом месте? Сложно ли было вообще включаться в “боевые задания” после учебы и туториалов?

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

Читать дальше →
,

РазработкаКак читать код: 8 принципов, которые стоит запомнить

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

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

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

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

Читать дальше →
,

ВебинарыКак эффективно обучаться программированию

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

Читать дальше →
,

ОбучениеМатрица компетентности программиста

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

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

Матрица компетентности программиста png hexlet

Основано на «матрице Хекслета».

Автор: Кирилл Мокевнин. Иллюстрация: Наталия Басс.

Читать дальше →
,

Подкаст10. Антиутопия и интернет, который мы потеряли

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

Вы можете поддержать подкаст на Patreon.

RSShttps://pcr.apple.com/id1162673070. Подкаст также доступен в iTunes.

Подкаст можно послушать на ютубе.

Предыдущие выпуски:

Следующий выпуск — ответы на ваши вопросы! Задавайте любые (интересные, конечно ;) вопросы в комментариях ниже.

Читать дальше →
,

Обучение5 ошибок, которые могут помешать вам стать программистом

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

Розовые очки

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

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

Читать дальше →
,

Истории успехаКак стать программистом админу в 30 лет, интервью с учеником Хекслета

Наш товарищ eugenlee согласился развернуто ответить на вопросы о том, как пришла ему в голову идея стать программистом, как он учился на Хекслете и как в результате уволился и начал успешно работать PHP разработчиком.

Сколько тебе лет, кем работал до этого? Как вообще появилась эта мысль, изучать программирование? Есть ли какой-то бэкграунд технический?

Всем доброго дня и хорошего самочувствия. Меня зовут Евгений, тридцати годиков пребывания на этой планете. В 10 классе родители собрали мне из обломков компьютера “комплюктер”, в котором была только одна игра - Windows 98. Времена были безденежные, поэтому мне приходилось играть в сломай\переустанови\пойми почему дурак\опять сломай, так я понял, что свяжу свою жизнь с информационными технологиями(я был очень тщедушным мальчиком, а компьютер сдачи не мог дать). И с этого момента моя жизнь покатилась по наклонной, я начал воровать диски из книг по программированию(да, мне стыдно), потом возвращаться на место преступления, потому, что хитрые издатели писали пароли от дисков на определенной странице книг. И заучивать паскаль, строить какие то жуткие десктопные приложения в Delphi. Поступил в институт на программиста, кстати, это было роковой ошибкой, тогда не очень знали как учить программированию, поэтому учили синтаксису, особо не объясняя такие нюансы как указатели и ссылки(собственно это меня и увело в сторону сисадминства).

На втором курсе я стал чем-то типа сис.админа, но для меня это была только возможность получать деньги и спускать их на развлечения и что-то типа самостоятельной жизни. Иногда денег не хватало и я рисовал жуткие поделия на Wordpress или Joomla для знакомых. Не поверите, но для многих это магия, а я просто натягивал шаблон, правил тексты и получал деньги :) и вот прожив до 29 лет в таком режиме амёбы и став начальником отдела сис.админов (эникеи) в MVNO-компании с ипотекой и женой на сносях, пришло осознание, что я потребитель, я ничего не произвожу. Эта мысль начала меня преследовать везде и всюду, самооценка упала и даже самочувствие испортилось, я уж не говорю про аппетит. И в этот момент случилось счастье, у нас на фирме начались сокращения! В тот момент я не понимал, что это очень удачное стечение обстоятельств, а еще глубже ушел в депрессию, меня как начальника поставили перед вопросом, кого сокращать? Выбор был так себе, у каждого моего админа за спиной драма уровня бразильского сериала. Я решил, что пора менять мою жизнь.

Читать дальше →
,

Истории успехаКак я стал программистом

Целая тьма подобных статей появляется постоянно, пришла и моя очередь написать одну. Не сочтите за пафос, программистов миллион и я уж точно не какой то особенный, это просто история. Однажды на одной из работ я столкнулся с очень банальной задачей – нужно было автоматизировать несколько простых задач (обработка данных, выгрузка на сервер и прочее), для этого начальник вручил мне книжку по Unix, и посоветовал ознакомиться с разделом по bash. Думаю именно в этот день моя жизнь сильно изменилась.

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

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

Читать дальше →
,

РазработкаНесдержанное обещание статической типизации

Это перевод статьи Даниэля Лебреро, которая также была опубликована на dev.to (там в комментариях есть интересное обсуждение на английском).

Меня удивил дядюшка Боб в посте под названием: "Type Wars". Он пишет: "Так что я предполагаю, что чем более общепринятой необходимостью профессиональной дисциплины будет становится TDD, тем более предпочтительными будут становится динамические языки. Smalltalker'ы постепенно победят".

Это утверждение не всем пришлось по душе. В сообществе сторонников статически-типизированных языков многие высказались, что достаточно продвинутая система типов (и типы — как доказательства) делает юнит-тесты ненужными. Haskell даже утверждает, что "если скомпилировалось, то обычно работает".

Будь это уменьшение багов, улучшенное документирование, более продвинутая поддержка IDE или простота понимания, для меня все это означает одно обещание: меньше багов.

А я ненавижу баги. Я считаю, что баги — одно из худших сжирателей времени и энергии в проекте. Нет ничего, что раздражает меня сильнее, чем слышать в демо в конце итерации гордое «мы сделали Х стори-пойнтов и исправили 20 багов! Ура!».

По мне так это звучит как «В прошлой итерации мы написали более 20 багов, но наши клиенты смогли найти лишь 20! И нам заплатили и за их написание, и за их исправление. Ура!»

Читать дальше →