Как стать автором
Обновить
7
0
Александр Никулин @Kommunikator

Инженер разработчик

Отправить сообщение

Как не наступать на грабли в Go

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

Этот пост является версией моей же англоязычной статьи "How to avoid gotchas in Go", но слово gotcha не переводится на русский, поэтому я буду использовать это слово как без перевода, так и немного непрямой вариант — "наступать на грабли".


Gotcha — корректная конструкция системы, программы или языка программирования, которая работает, как описано, но, при этом, контринтуитивна и является причиной ошибок, поскольку её легко использовать неверно.

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


Но один вопрос меня мучал долгое время — почему я сам никогда не делал этих ошибок? Серьезно, самые популярные из них, вроде путаницы с nil-интерфейсом или непонятного результата при append()-е слайса — в моей практике никогда не были проблемой. Каким-то образом мне повезло обойти эти подводные камни с первых дней своей работы с Go. Что же мне помогло?


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

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

12 вопросов, которые стоит задать потенциальным работодателям

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

Я только что завершил шестинедельный процесс трудоустройства на должность middle-senior разработчика на рынке, где сейчас ведется активная охота за талантами (Амстердам). Иными словами, я побывал на куче собеседований. Чтобы аккуратно разведать, какие компании мне больше всего подходят, я старался задавать побольше вопросов. Тут нужно найти правильный баланс, исходя из своих потребностей и того, кто с вами общается.

Если вы джуниор в поисках работы, то вы, возможно, придете к выводу, что вас на самом-то деле мало интересует, что вам ответят на все приведенные ниже вопросы — вам бы хоть куда-нибудь устроиться. Но даже в этом случае, решите для себя, какие моменты для вас будут стоп-сигналами и спрашивайте с расчетом на то, чтобы всплыла нужная информация. Если есть что-то, что может вас заставить отказаться от вакансии, лучше узнать об этом до того, как примете предложение о работе.
Читать дальше →
Всего голосов 26: ↑25 и ↓1+24
Комментарии10

Английский по-программистски

Время на прочтение4 мин
Количество просмотров19K
Чуть менее года назад я всерьез решил подтянуть английский, изучая его самостоятельно всеми доступными методами: прослушивание новостей, подкастов и книг, чтение художественной литературы, в том числе и в слух, ведение дневника и, конечно же, с помощью различных программ. Столкнувшись с последними, я понял, что можно написать аналоги как минимум не хуже. Что у меня в итоге получилось — под котом.


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

Руководство пользователя Kibana. Визуализация. Часть 5

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

Пятая часть перевода официальной документации по визуализации данных в Kibana.


Ссылка на оригинальный материал: Kibana User Guide [6.6] » Visualize


Ссылка на 1 часть: Руководство пользователя Kibana. Визуализация. Часть 1
Ссылка на 2 часть: Руководство пользователя Kibana. Визуализация. Часть 2
Ссылка на 3 часть: Руководство пользователя Kibana. Визуализация. Часть 3
Ссылка на 4 часть: Руководство пользователя Kibana. Визуализация. Часть 4


Содержание:


  1. Tag Clouds
  2. Heatmap Chart
Читать дальше →
Всего голосов 12: ↑12 и ↓0+12
Комментарии0

Карьерные стероиды. Путь Самурая

Время на прочтение13 мин
Количество просмотров27K
Метод карьерного роста «Путь Самурая» как-то язык не поворачивается назвать стероидом, потому что он… Не знаю, правильный, что ли. Честный, настоящий, добрый и пушистый.

Потому в жизни встречается не очень часто. Я смог вспомнить только четыре примера, и не все они из моей личной практики, но эти истории я видел своими глазами. Разумеется, люди, о которых пойдет речь, никогда не читали «Хагакурэ» (кодекс самураев), но их истории, поведение, принципы и подходы лежат очень близко к философии древних японских воинов.



Для начала немного расскажу о самураях и их философии.
Читать дальше →
Всего голосов 56: ↑42 и ↓14+28
Комментарии81

Вся история Linux. Часть I: с чего все началось

Время на прочтение7 мин
Количество просмотров42K
В этом году ядру Linux исполняется 27 лет. ОС на его базе используют многие корпорации, государственные, исследовательские учреждения и дата-центры по всему миру.

За более чем четверть века вышло немало статей (в том числе и на Хабре), рассказывающих о разных отрезках истории Linux. В этой серии материалов мы решили выделить наиболее значимые и интересные факты, связанные с этой операционной системой.

Начнем с разработок, которые предшествовали Linux, и истории появления первой версии ядра.

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

Симулятор

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

— Сержант МакКормик, срочно зайдите ко мне!
— Что-о-о? Капитан, наш корабль в открытом космосе, откуда здесь гравитация?
— Не морочьте мне голову, живо ко мне!


Брайан МакКормик вошёл в капитанскую рубку.
— У нас на видеосвязи сенатор Дориган с важным сообщением.
— Но ведь до планеты, где находится сенатор, более 400 световых лет, как сигнал приходит без задержек?


Внезапно за обшивкой послышались взрывы. Брайан, стоявший ближе всех к иллюминаторам, увидел, как один из сопровождавших их кораблей превратился в огненный шар. "С каких это пор в вакууме стали распространяться звуки?" — недоумённо подумал пилот.

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

Точная копия

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

Персонал космической станции готовился к прибытию экспериментального космического корабля «Пилигрим». Об этом событии не стоило бы даже упоминать, если бы не одно «но» – корабль возвращался из полёта, который проходил со сверхсветовой скоростью. Такая скорость позволила бы достичь Альфы Центавра за два месяца, но сейчас главной задачей было убедиться, что такие полёты опасны для человека не более, чем полёт до Луны.


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


— Зафиксирован фотонный след. Начата процедура проявления – зазвучал в динамиках приятный женский голос.


Шутка природы заключалась в том, что, даже сбросив скорость до скорости света, вернуться в ньютоново пространство было невозможно – время в этот момент останавливалось, а последующее торможение до нуля должно длиться десятилетиям, чтобы не раздавить перегрузкой людей. Поэтому корабль вероятностным способом «проявлялся» из следа, который возникал в момент, когда тело достигало скорости света. Процесс был постепенным – сначала тело становилось видимым на доли микросекунд, потом вероятность его присутствия в ньютоновом пространстве постепенно повышалась, и оно проявлялось, как изображение на фотографии.


Со стороны зрелище было величественным – корабль-призрак медленно возникал ниоткуда.

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

Больше позитива

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

Объяснительная диспетчера фабрики горячего синтеза Дэвида Трэмпла


Я, Дэвид Трэмпл, 15 декабря 2547 года столкнулся с критической ситуацией на рабочем месте. Из-за бурана вышли из строя три из четырёх энергоблока, что повлекло за собой падение мощности на генераторах магнитного поля, которые удерживали горячую плазму в пределах реактора. Автоматическое отключение генераторов не сработало, поэтому возникла угроза взрыва всего энергокомплекса. Мной было принято решение обесточить главный распределительный щит. Отключение щита привело к прекращению подачи электричества в штат Техас. Несмотря на это, разрушение фабрики было остановлено, так как в противном случае взрыв мощностью около 700 мегатонн сделал бы штат Техас непригодным к проживанию любых форм жизни в течение следующих 3 000 лет.


Объяснительная начальника отдела


Вследствие героических действий моего подчинённого Трэмпла Д. 15 декабря 2547 отдел недовыполнил месячный план по синтезу ферродиевых зарядов для торпед ближнего радиуса действия (1 000 — 10 000 км) на 6%. Тем не менее, отдел смог перевыполнить план синтеза тритиумных зарядов для торпед среднего (10 000 – 100 000 км) и дальнего (100 000 – 1 000 000 км) радиуса действия на 9% и 14% соответственно, что обеспечило полную загрузку логистических кораблей, а также создало профицит боеприпасов на складе в количестве 2.2 млн снарядов.

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

Исказитель будущего

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

Роберт подошёл к двери. Обычная офисная дверь, без таблички, только с номером. По её внешнему виду невозможно догадаться, кто ждёт его внутри. Чуть помедлив, Роберт открыл дверь и вошёл.


— Доктор Греттинг! Прошу, мы вас с нетерпением ждем, — произнёс человек в дорогом костюме. — Меня зовут Альберт Монтье, я председатель совета по контролю за вашим изобретением — тахионным реактором.
— Контролю? Но ведь моё изобретение является общественным достоянием.
— Конечно, но мы были бы последними идиотами, если бы не пытались контролировать такое стратегически важное устройство, в первую очередь, из соображений национальной безопасности.
— Понимаю. Но мне всё ещё непонятна причина, по которой я здесь нахожусь.

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

Как писать хороший и понятный код: 3 простых способа для программиста

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


От переводчика: сегодня публикуем для вас статью разработчика из Индии Рави Шанкара Рахана. Он рассказывает о том, что стоит делать, если вы хотите научиться писать простой и понятный код. Статья рекомендуется всем начинающим программистам.

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

Разработчику необходимо создавать код, который может использовать любой его коллега из любой страны мира. Так он становится чем-то вроде его «наследия». Все это хорошо и складно звучит, но реальность несколько иная…
Читать дальше →
Всего голосов 27: ↑16 и ↓11+5
Комментарии22

Собираем полную колоду

Время на прочтение12 мин
Количество просмотров15K
Колодой, если верить писателям, раньше называлась «команда», которую набирал себе вор. У каждого человека в команде была своя «масть» — специализация и назначение. Вот что пишет об этом Борис Акунин в книге «Любовник смерти»:

«Пацаны рассказывали, что у настоящих деловых, кто по законам живет, шайка „колодой“ называется, и в каждой колоде свой кумплект. Кумплект — это восемь фартовых, каждый при своем положении. Главный — »король"; при нем маруха, по-деловому «дама»; потом «валет» — вроде как главный помощник; ну и прочие бойцы, от десятки до шестерки. А больше восьми человек в шайке не держат, так уж исстари заведено."

Меньше восьми людей брать смысла нет, будут пробелы в «компетенциях». Больше — нельзя, будет дублирование и потеря управляемости.



Как ни странно, тот же Джефф Сазерленд, один из авторов скрама, называл похожие цифры — от 5 до 9 человек. Хотя и не уточнял специализацию.

Ну да ладно. А мы продолжаем тему построения команд по ролям, на основе тестов Белбина.
Читать дальше →
Всего голосов 38: ↑35 и ↓3+32
Комментарии18

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

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

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


На русском:


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


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


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


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

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

Формула Е. Презентация гоночного болида Spark-Renault SRT 01E во Франкфурте

Время на прочтение2 мин
Количество просмотров30K
10-го сентября 2013 года во Франкфурте прошла официальная презентация болида Формулы Е — Spark-Renault SRT 01E.
Формула E является новым чемпионатом FIA с участием автомобилей, работающих исключительно от электрической энергии. Она представляет собой видение будущего автомобилестроения в ближайшие десятилетия, выступая в качестве основы для исследования и развития для всех электрических транспортных средств.
Формула Е – это синтез последних технологий, спорта, науки и дизайна.



В разработке приняли участие: Dallara, Renault, McLaren, Williams и Michelin.
Читать дальше →
Всего голосов 39: ↑36 и ↓3+33
Комментарии63

GifCam — анимированный скриншот в два клика

Время на прочтение3 мин
Количество просмотров81K
Не знаю как у вас, а у меня необходимость сделать анимированный скриншот иногда появляется. Например, чтобы передать как выглядит анимированное изображение на странице сайта. Или, чтобы доказать, что добавить анимацию в принципе возможно, например, в ленту новостей группы на mail.ru (считается, что анимация там не добавляется).
Читать дальше →
Всего голосов 35: ↑34 и ↓1+33
Комментарии26

Выразительный JavaScript: Структура программ

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

Содержание




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

_why, Why's (Poignant) Guide to Ruby


В этой главе мы начнём заниматься тем, что уже можно назвать программированием. Мы расширим использование языка JavaScript за пределы существительных и фрагментов предложений к более-менее осмысленной прозе.
Читать дальше →
Всего голосов 32: ↑30 и ↓2+28
Комментарии20

Обзор бесплатных сервисов для веб-разработки

Время на прочтение4 мин
Количество просмотров143K
Пост является личной подборкой полезных и нужных онлайн сервисов, которые позволяют бесплатно (или условно бесплатно) создавать действительно крутые вещи и разворачивать их в Сети. Не претендую на новизну или на полноту, но буду счастлив, если кому пригодится.

Всем нам иногда хочется попробовать новую идею, запилить какой-нибудь сайтик про манулов, но чтоб обязательно на node.js, хайлоад реди, с мемкешем, монго, фейловером и с претензией на мировое господство. У меня для Вас хорошие новости: благодаря щедрости проклятых западных капиталистов всё это можно получить совершенно бесплатно.
Читать дальше →
Всего голосов 157: ↑136 и ↓21+115
Комментарии113

Видео-курс по JavaScript на русском языке

Время на прочтение1 мин
Количество просмотров218K
Здравствуй, Хабр!

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



Первая лекция: Введение в JavaScript, немного истории, числа (тут есть ошибка: функция toFixed округляет значения).



Остальное – под катом.
Читать дальше →
Всего голосов 135: ↑127 и ↓8+119
Комментарии23

SuperHot — новое слово в инди-играх, slow-mo и управлении временем

Время на прочтение1 мин
Количество просмотров34K
Трейлер игры скажет все за себя сам.



В двух словах: время идет только, пока вы двигаетесь. Braid-стайл, да. Разработчиков можно поддержать и проголосовать за их игру в Steam Greenlight. Чтобы сыграть в демо-версию, нужно установить Unity Web Player.
Всего голосов 83: ↑76 и ↓7+69
Комментарии48

Информация

В рейтинге
Не участвует
Откуда
Москва, Москва и Московская обл., Россия
Работает в
Дата рождения
Зарегистрирован
Активность