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

Пользователь

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

Хороший разработчик мудр, а не гениален

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


Одним из самых важных уроков, которые я постиг в качестве разработчика 15 лет назад, была эта простая мысль:


Хороший код выразителен, а не впечатляющ.

Я помню, как услышав это спросил «А в чём разница?», и получил ответ.


«Выразительный» — понятный, однозначный и конкретный. А раз так, написание выразительного кода потребует работы с конкретной задачей. Вложение сил и времени в его создание служит конкретной цели, а результат соответствует ожиданию.


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


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


«Гениальные» разработчики, так же обладая умом, напротив, думают лишь о настоящем. Они умеют решать текущие проблемы быстро и эффектно. Вот только гора от их хаков и выкрутасов постоянно накапливается и однажды обрушает код, хороня под собой репутации всех причастных. Вот почему Стив Макконнелл однажды верно заметил:


Программирование — не работа в ЦРУ, вам не нужно быть смекалистым.

И мудрые разработчики не делают ничего смекалистого. Они пишут скучный и простой код, который легко понять. Ни больше, ни меньше.




Вот ещё несколько принципов мудрых разработчиков.


Читать дальше →
Всего голосов 55: ↑47 и ↓8 +39
Комментарии 14

Идентификация клиентов на сайтах без паролей и cookie: заявка на стандарт

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

Уважаемые Хаброжители! Уважаемые эксперты! Представляю на вашу оценку новую концепцию идентификации пользователей на веб-сайтах, которая, как я надеюсь, с вашей помощью станет открытым интернет-стандартом, сделав этот интернет-мир чуточку лучше. Это вариант черновика протокола беспарольной идентификации, оформленный в виде вольной статьи. И если идея, положенная в его основу, получит от вас, уважаемый читатель, положительную оценку, я продолжу публикацию его на reddit.com и rfc-editor.org. И надеюсь, мне удастся заинтересовать в его реализации разработчиков ведущих браузеров. Потому ожидаю от вас конструктивную критику.

Внимание: очень много текста.

Рецензировать
Всего голосов 50: ↑46 и ↓4 +42
Комментарии 136

Профессиональное выгорание айтишников: 15 ответов психиатра Максима Малявина

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

Burn out нечаянно нагрянет, когда его совсем не ждёшь. Когда человек впервые сталкивается с профессиональным выгоранием, у него возникают вопросы:


— Что со мной: осенняя хандра, депрессия или профессиональное выгорание?
— Что с этим делать?
— К кому идти за помощью?


Мы боимся признать, что у нас проблема. Тянем с походом к врачу, откладываем разговор с руководством. Пока синдром не разворачивается в полную силу, и всё летит кувырком — работа, карьера, семья.


Поэтому так важно разобраться в проблеме заранее, понять, что проблема решаема — и решаема разными способами.


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


Я обратился за разъяснениями к психиатру Максиму Малявину. Хобби Максима не раз спасало меня от плохого настроения, а быть может и от начала профессионального выгорания. Его «Психиатрические байки» способны спасти от серости и печали будней не хуже, чем волшебная пилюлька бромдигидрохлорфенилбензодиазепина. А книги Максима «Записки психиатра, или Всем галоперидолу за счёт заведения!» и «Новые записки психиатра, или Барбухайка, на выезд!» давно прописались на моей книжкой полке.



Читать дальше →
Всего голосов 104: ↑97 и ↓7 +90
Комментарии 152

Звуки для UI: подборка тематических ресурсов

Время на прочтение 3 мин
Количество просмотров 21K
Рассказываем о площадках, где можно найти и скачать аудиосемплы для озвучки пользовательского интерфейса. Подборка пригодится тем, кто разрабатывает приложения или игры.

Другие наши подборки:


Всего голосов 26: ↑25 и ↓1 +24
Комментарии 2

Чтение на лето: книги для технарей

Время на прочтение 5 мин
Количество просмотров 56K
Мы собрали книги, которые рекомендуют своим коллегам по цеху резиденты Hacker News. Здесь нет справочников или руководств по программированию, зато есть любопытные издания о криптографии и теоретической информатике, об основателях IT-компаний, есть и научная фантастика, написанная разработчиками и о разработчиках — как раз то, что можно взять в отпуск.

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

9 лучших опенсорс находок за сентябрь 2019

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

Доброго Хактоберфеста, дамы и господа. Подготовил для вас подборку самых интересных находок из опенсорса за сентябрь 2019.


За полным списком новых полезных инструментов, статей и докладов можно обратиться в мой телеграм канал @OpensourceFindings (по ссылке зеркало, если не открывается оригинал).


В сегодняшнем выпуске.
Технологии внутри: Python, C, Rust, Ruby, JavaScript, Go.
Тематика: веб разработка, администрирование, инструменты разработчика.


Прошлый выпуск.

Читать дальше →
Всего голосов 115: ↑112 и ↓3 +109
Комментарии 19

Какого цвета ваша функция?

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

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


(Тем временем, вы и я используем только самый просветленный язык и отточенные инструменты, разработанные для ловких рук таких мастеров, как мы).


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


Чтобы защититься от праведного огня и не оскорбить ваши (вероятно деликатные) чувства, я буду рассказывать о языке...

Читать дальше →
Всего голосов 54: ↑47 и ↓7 +40
Комментарии 38

Много бесплатных книг по программированию

Время на прочтение 7 мин
Количество просмотров 345K
Читать дальше →
Всего голосов 202: ↑192 и ↓10 +182
Комментарии 42

Кот Шрёдингера без коробки: проблема консенсуса в распределённых системах

Время на прочтение 13 мин
Количество просмотров 23K
Итак, представим. В комнате заперты 5 котов, и чтобы пойти разбудить хозяина им необходимо всем вместе договориться между собой об этом, ведь дверь они могут открыть только впятером навалившись на неё. Если один из котов – кот Шрёдингера, а остальные коты не знают о его решении, возникает вопрос: «Как они могут это сделать?»

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


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

Ностальгии пост. Тайны цен Интернета: почему мегабит может стоить от $0 до $200 или как получить 100 Гбит/с за копейки?

Время на прочтение 39 мин
Количество просмотров 27K
Я хорошо помню то время, когда в 2001 году, спустя десятилетие после начала эры www, первый раз вышел в Интернет-сеть. Это было то волшебное чувство, когда перед тобою открывается неограниченный мир информации, который, в сравнении с теперешним, был весьма ограничен. И речь даже не о том, что не было ни социальных сетей, ни Инстаграмов, ни Youtube, большинство из этих соц. сетей лишь убивают время в наши дни, хотя некоторые и позволяют получить долю полезной информации, чем народ в них сидящий, занят далеко не всегда. Что говорить, фотографий в нормальном разрешении почти не было, про стримминг видео говорить и не приходилось, вэб был довольно простым и сайты старались писать на голом html, делая их как можно проще и легче для ускорения загрузки при использовании низкоскоростных соединений и уменьшения потребления ресурсов на стороне сервера. Но какое же хорошее это было время :)



В это же время в США уже вполне себе были распространены выделенные линии среди домашних абонентов со скоростью подключения до 768 Кбит / с и более. Ещё в 1998 году можно было обзавестись корпоративной линией c подобной скоростью в крупных городах США по цене порядка $400 / месяц, а для домашних пользователей были доступны варианты высокоскоростного Интернет-доступа от $99 за 128К канал, годом позднее уже можно было получить 384К за $40, цены постоянно снижались. В Украине, как в прочем и в РФ, был доступен в основном только дорогой и медленный Dial-Up. Выделенные линии были чем-то невероятным и позволить себе канал в 1 Мбит / с или 2 Мбит / с мог разве что Интернет-провайдер, который предоставлял доступ в сеть для абонентов посредством модемного подключения для сотен и даже тысяч абонентов. Провайдер, обладавший подключением в 1 Мбит / с в Украине или РФ, реально мог обеспечивать доступом в Интернет город с населением в 100 000+ человек. Услуга не была ещё столь массовой и % пользователей был небольшой, особенно в регионах.
Всего голосов 34: ↑33 и ↓1 +32
Комментарии 36

Манипуляция сознанием. Почему так просто?

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


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

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

Здесь приведено 14 распространенных манипуляций. Анализируя свою жизнь, я могу сказать, что ощущал в разное время воздействия каждой из них, а некоторые методы «промывки мозгов» по отношению ко мне были по-настоящему эффективны. Думаю, это всем хорошо знакомые атаки. Я упорядочил их в некий список и попытался описать механизмы и причины, почему они, несмотря на тривиальность, являются довольно эффективными.

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

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

Это не статья по психологии и не статья по философии, хотя бы потому, что в этой статье не будет приведено ни одной ссылки.
Читать дальше →
Всего голосов 114: ↑96 и ↓18 +78
Комментарии 485

Путешествия банковской транзакции

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

Некоторое время назад на Хабре уже мелькали посты о работе банкоматов: один и два, но оба они описывали принципы работы банкоматов и вообще карточного процессинга весьма поверхностно.
Для интересующихся под катом много подробностей работы карточного процессинга банка (много букв).
Читать дальше →
Всего голосов 101: ↑98 и ↓3 +95
Комментарии 104

Kotlin DSL: Теория и Практика

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

Sql, RegExp, Gradle — что их объединяет? Всё это примеры использования проблемно-ориентированных языков или DSL (domain-specific language). Каждый такой язык решает свою узконаправленную задачу, например, запрос данных из БД, поиск совпадений в тексте или описание процесса сборки приложения. Язык Kotlin предоставляет большое количество возможностей для создания собственного проблемно-ориентированного языка. В ходе статьи мы разберемся, какие инструменты есть в арсенале программиста, и реализуем DSL для предложенной предметной области.


Весь синтаксис, представленный в статье, я объясню максимально просто, однако, материал рассчитан на практикующих инженеров, которые рассматривают Kotlin, как язык для построения проблемно-ориентированных языков. В конце статьи будут приведены недостатки, к которым нужно быть готовым. Используемый в статье код актуален для Kotlin версии 1.1.4-3 и доступен на GitHub.


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

Рекомендательные системы: идеи, подходы, задачи

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


Многие привыкли ставить оценку фильму на КиноПоиске или imdb после просмотра, а разделы «С этим товаром также покупали» и «Популярные товары» есть в любом интернет- магазине. Но существуют и менее привычные виды рекомендаций. В этой статье я расскажу о том, какие задачи решают рекомендательные системы, куда бежать и что гуглить.
Читать дальше →
Всего голосов 34: ↑33 и ↓1 +32
Комментарии 7

Представляем Windows Terminal

Время на прочтение 4 мин
Количество просмотров 162K
Windows Terminal — это новое, современное, быстрое, эффективное, мощное и производительное терминальное приложение для пользователей инструментов и оболочек командной строки, таких как Command Prompt, PowerShell и WSL.



Windows Terminal будет поставляться через Microsoft Store в Windows 10 и будет регулярно обновляться, гарантируя, что вы всегда будете идти в ногу со временем и сможете пользоваться новейшими функциями и последними улучшениями с минимальными усилиями.

image
Читать дальше →
Всего голосов 144: ↑132 и ↓12 +120
Комментарии 203

Удаление зубов мудрости: как это делается?

Время на прочтение 6 мин
Количество просмотров 346K
image
Уважаемые друзья, в прошлый раз мы с вами говорили о том, какие же бывают зубы мудрости, когда их нужно удалять, а когда нет. А сегодня я подробно и во всех деталях расскажу, как непосредственно проходит удаление «приговорённых» зубов. С картинками. Поэтому рекомендую особо впечатлительным людям и беременным женщинам нажать сочетание клавиш «Ctrl +». Шутка.
Читать дальше →
Всего голосов 111: ↑100 и ↓11 +89
Комментарии 191

Экономический ликбез для айтишников

Время на прочтение 6 мин
Количество просмотров 55K
Здравствуйте, дорогие айтишники!

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


Читать дальше →
Всего голосов 157: ↑118 и ↓39 +79
Комментарии 407

20 вещей, которые я должен был знать в 20 лет

Время на прочтение 3 мин
Количество просмотров 715K
1. Мир пытается оставить тебя тупым. Начиная от банковских платежей и процентов и заканчивая чудо-диетами — из необразованных людей легче вытрясти деньги и ими проще управлять. Занимайтесь самообразованием столько, сколько можете — для того, чтобы быть богатым, независимым и счастливым.
Читать дальше →
Всего голосов 544: ↑445 и ↓99 +346
Комментарии 544

Технологии микроэлектроники на пальцах: «закона Мура», маркетинговые ходы и почему нанометры нынче не те. Часть 2

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

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

Disclaimer: Когда-то давно и сам баловался написанием статей про изготовление чипов, а в серии статей «Взгляд Изнутри» даже заглядывал внутрь оных, т.е. тема мне крайне интересна. Естественно, я бы хотел, чтобы сам автор оригинальной статьи опубликовал её на Хабре, но в связи с занятостью он разрешил мне перенести её сюда. К сожалению, правила Хабра не разрешают прямую копи-пасту, поэтому я добавил ссылки на источники, картинки и немножко отсебятины и постарался чуть-чуть выправить текст. Да, и статьи (1 и 2) по данной теме от amartology знаю и уважаю.
Скандалы, интриги и закон Мура
Всего голосов 59: ↑57 и ↓2 +55
Комментарии 40

Темный день для Vue.js

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

Сегодня я был изумлен тем, как обычно позитивное и дружелюбное сообщество Vue.js скатилось в печальное противостояние. Две недели назад создатель Vue Эван Ю опубликовал предложение (RFC) с новым функциональным API для компонентов в грядущем Vue 3.0. Сегодня критическое обсуждение на Reddit и аналогичные комментарии на Hacker News вызвали наплыв разработчиков в изначальный RFC с возмущениями, порой даже чересчур резкими.

Читать дальше →
Всего голосов 83: ↑77 и ↓6 +71
Комментарии 135
1

Информация

В рейтинге
Не участвует
Зарегистрирован
Активность