Рубрика «профессионализм» - 2

Примечание от переводчика: мой опыт знакомства с разработкой через тестирование во многом схож с тем, что описывает автор (хотя и начался на несколько лет позже). Я начинал изучать TDD самостоятельно, на работе, исправляя баги и создавая новые модули с ноля. Эффект от применения TDD произвёл на меня настолько мощное впечатление, что породил желание делиться умением применять эту технику с другими. Я также проводил Code Retreat-ы внутри и вне своей компании. И я вижу те же проблемы в своих тренингах — очень сложно взять и «впихнуть» понимание сути TDD в чужие головы.

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

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

TL;DR?

Многие сторонники TDD рекомендуют подход под названием «интенсивная практика», но я догадываюсь, что у Вас не будет возможности тратить много рабочего времени на практику. Я советую людям «применять TDD осознанно», но до сих пор не знал хорошего способа достаточно доступно объяснить смысл этих слов, что снижало ценность моего совета. Вы можете начать применять оба подхода (интенсивный и осознанный) одновременно, если начнёте исправлять баги через тесты. Даже если Вы до сих пор не умеете проектировать софт на экспертном уровне, то, по крайней мере, Вы уже можете учиться как эксперт. И исправление багов через тесты даст Вам естественную и не слишком рискованную возможность делать это. У Вас будет возможность практиковаться в TDD усердно и осознанно. Если у Вас есть возможность исправлять баги на работе в одиночку, то Вы можете использовать эти практики, не привлекая лишнего внимания, которое обычно возникает при разговорах об «интенсивной практике». Просто говорите всем, что Вы исправляете баги. Это всем понравится.

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

Читать полностью »

Архитектура карьерного роста
С понедельничком (говорят — самым депрессивным в году)!
После публикации этой статьи, многие заметили, что я шустрый карьерист, и у меня начали просить совета на тему: как обеспечить карьерный рост в IT-индустрии. Во избежание повторения одних и тех же советов разным людям в личных сообщениях я и пишу эту статью, делясь в ней историей своего собственного карьерного роста и основными наблюдениями, которые я сделал за 13 лет опыта работы в больших и не очень компаниях.
Сразу предупрежу, что не претендую на изложение универсальной теории карьерного роста сферического коня в вакууме, и большинство замечаний искривлено призмой моего восприятия. То, что неоднократно работало в моем случае, необязательно сработает в вашем.

Читать полностью »

Войти в IT. Стоит ли стать программистомВстретился мне пост с размышлениями о переходе в программисты после 30 «Можно ли стать программистом после 30-ти?», в котором автор видит радужные перспективы такого перехода. Так ли это? Попробую изложить свою точку зрения с учетом уже не первого дня в ИТ. Может быть нижеприведенный материал как-то поможет в более логичном выборе перехода или не перехода в программисты или в определении своего начала карьеры.

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

Читать полностью »

Можно ли стать программистом после 30 ти?

Тема, вынесенная в заголовок, недавно обсуждалась в одном белорусском IT-онлайн-издании. Правда, там стоял вопрос, можно ли стать программистом после 40-ка. Автор статьи, состоящей из нескольких частей, начал было описывать свой путь из журналистов в программисты, затем свел все к урокам PHP «для самых маленьких» и далеко отступил от темы. Но в материалах прослеживалась мысль, что бросить журналистику и заняться программированием ему так и не удалось. Из этого следует, что после 40 лет стать программистом если и возможно, то весьма непросто. Попробуем снизить возрастную планку на 5 – 10 лет.

Мне близка эта тема, поскольку я сам зарабатываю на хлеб журналистским трудом и тоже мечтаю стать профессиональным программистом. Невзирая на возраст. А в свете последних тенденций в IT (дефицита кадров) все громче звучат идеи о переучивании в программистов специалистов из других отраслей. Так что, не побоюсь сказать, что тема эта имеет государственную важность. Желающих вместе со мной разобраться с этим вопросом прошу под кат.
Читать полностью »

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

Одна из проблем нашего высшего образования в том, что в вузах учат много чему, и алгоритмам, и языкам программирования, и ООП, и даже паттернам проектирования. Но я еще ни разу не встречал, чтобы в вузах учили работать работу. Лабораторки не в счет. Спихнул – и забыл! Возможно, просто не везло.

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

Итак, про семь навыков…

Читать полностью »

Виртуальный офис Linux FoundationLinux Foundation — весьма авторитетная и серьезная структура. Эта некоммерческая организация защищает и стандартизирует Linux, а также ежегодно распределяет пожертвования в размере около 7 миллионов долларов.

Казалось бы, в офисе организации должна кипеть жизнь? Но нет. На самом деле в офисе вы никого не увидите. Linux Foundation снимает маленькую комнату в Сан-Франциско, но вся организация из более чем 30 человек полностью работает в дистанционном режиме. Абсолютно все сотрудники, включая Линуса Торвальдса, работают из дома.
Читать полностью »

Не бывает «чистых» программистовС появлением Ruby on Rails уровень технических знаний необходимых для создания веб-приложений понизился. Становятся ли знания и опыт менее критичными?

Я думаю, Ruby on Rails очень сильно понизил планку в терминах «что нужно для того, чтобы запустить веб-приложение». Некоторые видят в этом только отрицательную сторону. В духе, «Ой, варвары у ворот» или «Ну вот, сейчас все эти немытые дикари хлынут в наши замечательные программистские сообщества». Я уже не раз слышал такое. Многие ругали Visual Basic за что, что он открыл двери для, так называемых, «не чистых» программистов. Я думаю, все это — чушь собачья.

Читать полностью »

Опыт вождения по дорогам Киева натолкнул меня на пару интересных мыслей. Все мы знаем, что на дорогах «куча идиотов». Ровно так же дело обстоит и в разработке – куда ни глянь, страшно на код взглянуть. Почему так происходит?Читать полностью »

Я почувствовал, что устои мироздания потрясены, когда сотни читательов начали яростно спорить по поводу заметки Роберта Мартина о стартапе-ловушке.

Хотите знать, как я обычно участвую в таких спорах?

— Так какие же тесты пишешь ты сам?
— Мнэ-э…

— Когда же ты пишешь тесты?
— Мнэ-э…

— Ты вообще тесты пишешь?
— Мнэ-э…

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

Но как раз сейчас у меня, кажется, есть эта парочка часов.
Читать полностью »

WTF? Уже достаточно давно на хабре была статья одного небезызвестного автора об инвалидах и о том, как важно им помогать. Заметка получилась крайне неоднозначной, поэтому я ещё тогда решил когда-нибудь ответить на неё. Этот момент наступил. Поскольку у нас тут IT-ресурс, я постараюсь оставаться «в контексте», насколько это возможно.

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


https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js