NewsPack# 13: самые интересные ИТ-ссылки за прошлые недели

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

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

NewsPack# 13: самые интересные ИТ-ссылки за прошлые недели материалы цитаты обзоры дайджест

1. Почему программисты снова становятся инженерами

Хороший материал от Look At Me: Вице-президент Parallels рассуждает об окончании «эры айтишников»:

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

И ещё одна цитата про «страшные вещи»:

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

NewsPack# 13: самые интересные ИТ-ссылки за прошлые недели материалы цитаты обзоры дайджест

2. Рынок разработки сайтов «умирает»

Злободневная статья о падающем рынке веб-разработки:

Как и многие интернетчики, свои первые деньги я заработал на разработке сайтов. Я и продолжаю этим заниматься, являясь совладельцем компании AIC-Qsoft, которая, по последним рейтингам, входит в пятёрку ведущих веб-студий России.
Будучи заодно ещё и одним из учредителей Ассоциации Интерактивных Агентств (АИА), я более или менее представляю себе, как обстоят дела во всех основных конторах по веб-разработке в стране. Проще говоря, я в теме. И вот, что я хочу вам сказать. Похоже, бизнес веб-разработки, веб-студий или «диджитал-агентств» умирает.
Начну издалека. В 2002 году мой близкий друг обеспокоился тем, что выручка принадлежащей ему сети видеопрокатов не растёт, а даже немного снижается уже много месяцев подряд. Он склонялся к версии, что виноват был слабый руководитель, поэтому решил уволить генерального директора, а на его место поставить молодого и амбициозного парня — то есть, меня. Так я возглавил сеть из 11 видеопрокатов в разных районах Москвы и получил свой самый ценный опыт — опыт работы на падающем рынке.

А вот и ответка прилетела:

Письмо в редакцию: «Отрасли разработки сайтов ничего не угрожает» http://t.co/zrHoDHnBC4

Аргументированный ответ на обратные утверждения
— Стартапы и бизнес (@morketolog) August 13, 2015

3. Вирус внутри «Касперского»

История неудавшегося «переворота» внутри Kaspersky Lab — кому лень читать, суть в том, что корпоративный «майдан» таки не прошёл.

Эта движуха живо напомнила мне другую относительно недавнюю историю в изложении Максима Спиридонова из «Нетология-групп» — это триллер для любого владельца стартап-бизнеса (доп. ссылка 1, ссылка 2).

4. Рефакторинг — громадьё ссылок

Свежая серия материалов «Киски: Рефакторинг»: часть 1, часть 2. Часть 3.

NewsPack# 13: самые интересные ИТ-ссылки за прошлые недели материалы цитаты обзоры дайджест

В дополнение:

5. Про модель, логику, ООП, разработку и остальное

Часто ли вы задумываетесь — почему что-то сделано так или иначе? Почему у вас микросервисы или монолит, двухзвенка или трехзвенка? Зачем вам многослойная архитектура и сколько у вас вообще слоев? Что такое бизнес-логика, логика приложения, презентационная логика и почему все так разделено? Посмотрите на свое приложение — как оно вообще спроектировано? Что в нем и где находится, почему это сделано именно так? Потому что так написано в книжках или так говорят авторитетные личности? Какие ВАШИ проблемы решает тот или иной подход/паттерн?
Даже то, что на первый взгляд кажется очевидным, порой бывает очень сложно объяснить. А иногда, в попытке объяснения, приходит понимание того, что очевидные мысли были и вовсе ошибочны.
Давайте попробуем взять какой-нибудь пример и изучить на нем эти вопросы со всех сторон.

Рассмотрено несколько практических случаев, но эта большая статья выходит за рамки только лишь одной ООП или SOLID.

NewsPack# 13: самые интересные ИТ-ссылки за прошлые недели материалы цитаты обзоры дайджест

В нагрузку выдаю бережно завернутую в https ссылку на другой свежачок: Принцип разделения ответственности и ORM. Там Мицголь в комментариях оппонирует к сказанному в статье:

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

А сможет ли ORM, вообще ничего не зная о той логике, которой подчинён поиск по базе, создать именно те индексы, которые ускорят такой поиск (и одновременно не насоздавать лишних индексов, которые не принесут пользы, а только замедлят пополнение и обновление базы)? Никоим образом не сможет. Это самообман.

… А с Мицголем лучше не спорить.

6. ФП в вебе

Буквально недавно (в прошлом выпуске) ссылался на использование Lisp в продакшене и разработку web-приложений на языке Common Lisp (часть 1, часть 2, часть 3), тогда как вдогонку вышел свежий материал на аналогичную тему: Веб-приложения на Clojure — часть 1, часть 2.

7. Тунеядцы на стуле или герои-стахановцы?

Прочитал я тут на Хабре отличную статью «Почему программировать так тяжело?» и сразу проникся к ней симпатией. «Боже мой!» — подумал я. Наконец-то можно показать толковый и взвешенный текст некоторым моим знакомым, считающим меня высокооплачиваемым бездельником, объяснить родственникам, что это за работа такая — «кнопки целый день тыкать» и предоставить защитившим кандидатские диссертации друзьям доказательства того, что и я тут тоже не коровам хвосты кручу в рабочее время. «Какая прекрасная статья!» — думал я.

Наконец-то кто-то понял всю суть работы программиста и объяснил её сложность понятным языком!
И лишь одной малюсенькой детали в этой статье не хватало. Правды.

Почему программировать так тяжело? против Почему программировать легко.

NewsPack# 13: самые интересные ИТ-ссылки за прошлые недели материалы цитаты обзоры дайджест

Программяку на гиляку? Комментарии оттуда в качестве спичек для распалки хвороста холивара:

Я понимаю айтишники нихрена не производят, стучат клавишами и бабло лопатой загребают, и мешаю реализовываться простому трудящемуся классу.
— Eugen Sakal (@EV_Sakal) August 5, 2015

Программировать легко и весело пока твоя задача не выходит на коммерческий уровень. А ещё легче жить, если ты никогда не увидишь (не будешь отвечать на вопросы) пользователей своей же системы. Типа программируешь — и всё отлично!

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

Закончить ему хочу жизненной цитатой с «Баша»:

Писал долго программу конвертирующую инфу из старого формата в новый, запустил — всё отработало меньше, чем за секунду. Нет, начальник будет недоволен. Я написал лог, построчно выводящий обрабатываемые данные и рандомное время задержки. Теперь — солидно и долго, есть что показать начальству!

8. Такой страшный AngularJs

Свежий материал Ускоряем angular.js или как не выстрелить себе в ногу дополняем Почему вам НЕ стоит использовать AngularJs.

В комментариях к обоим топикам страшный флейм — много защитников и противников AngularJs на земле русской. Я бы выбрал такой вот резюмирующий комментарий из всего многообразия:

После знакомства с Ангуляром мне в голову пришла следующая метафора.
Предположим, у нас есть некоторое приложение. Мы, как архитектор этого приложения, знаем как в нём организованы потоки данных. В приложении мы задекларировали эти потоки данных и то как их следует обрабатывать в виде некоторого кода. То есть у нас описаны некоторые конкретные блоки, которые связаны конкретными линиями-направлениями данных.
В противовес этому, Ангуляр представляет собой что-то вроде «множества универсум», где всё связано со всем. В первый момент это вызывает wow-эффект. В самом деле, путём нескольких деклараций и пары строк кода мы организовали полноценный ввод пользователя, обработку и автоматическое обновление представления (!). Но в дальнейшем становится ясно, что такая полносвязная схема имеет свои побочные негативные эффекты: низкая производительность и сложность восприятия.
Я был очень рад услышать, что идёт разработка Angular 2, который (как и обязано мажорному релизу) будет обладать существенными изменениями, и в частности упрощениями, выпиливанием целой кипы фич. Также, существует разработка angular-light, которая ознаменована той же цели: упростить и оздоровить Ангуляр.
После использования Ангуляра я пришёл к выводу, что лучше строить приложение, основываясь на явных потоках данных. Для этого лучше всего подходит идея FRP. Что замечательно, FRP прекрасно компонуется с существующими библиотеками (я считаю, компонуемость — это очень хороший признак действительно здоровой концепции), например, можно использовать jQuery для получения источников данных (пользовательские события, которые инициируют flow/поток), так и для отображения ($.text, $.html в конце цепочек), также FRP прекрасно дружит со всеми существующими шаблонизаторами. В общем, явное лучше неявного, FRP и компонуемость это будущее.

Также прикладываю новый перевод: Создание красивых диаграмм с помощью Chart.js

9. Для .NET-валильщиков

Навыки .NET-разработчика России и США, в чём разница? (+ дополнение):

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

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

NewsPack# 13: самые интересные ИТ-ссылки за прошлые недели материалы цитаты обзоры дайджест

10. Структуры данных. Неформальный гайд

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

Из комментариев к статье выцепил такое полезное пояснение понятий «куча» и «хеш-таблица»:

Куча — достаточно специфическая структура данных: у неё теоретически весьма неплохая сложность, но обращение к памяти весьма нерегулярное и потому она эффективна только на небольших размерах (когда она влазит в L1 кеш).
Самое распространённое применение кучи: priority queue. Когда вам нужно выбрать N самых больших (или самых маленьких) элементов из множества, то куча — это самая подходящая структура. Обыно нужное N невелико, так что главный бич кучи (нелокальные обращения к памяти) не успевает проявиться, а зато тот факт, что не нужна дополнительная память (и, главное, что не нужно эту дополнительную память выделать и освобождать) оказывается весьма полезным.

А насчёт «имеющих ограниченное применение» хеш-таблиц… вы это всерьёз или просто издеваетесь? В современном мире стоить только попытаться плюнуть — попадёшь в хеш-таблицу. Ещё до того, как плюнешь.

Когда вы пишите, скажем,

var a = 1;

то куда, собственно, попадает a? Ответ: в хеш-таблицу соответствующей JavaScript-функции. А когда вы пишите

a.x = b.x;

то вы оперируете, скорее всего, уже с тремя хеш-таблицами (одна — в которой хранится a и b, ещё два — живут внутри объектов a и b). То же самое — в большинстве других сколько-нибудь распространённых скриптовых языках (неважно: это python, ruby или какой-нибудь lisp). Даже такие языки как C++ и Java, в некотором смысле подвержены этой участи: у них тоже для каждой функции есть хеш-таблица с переменными… в компиляторе. Когда всё «замораживается» и получается скомпилированный код эти хеш-таблицы исчезают, но если вы используете какой-нибудь guice, то часть таблиц этого рода остаются и в рантайме.

С хеш-таблицами есть другая беда: если использовать некриптостойкий хеш, то можно на коллизии нарваться, а считать криптостойкие хеши долго. Слава богу тут нам пришёл на помощь Intel: на процессорах с поддержкой AESможно посчитать aeshash за то же время, что и какой-нибудь менее «замороченный» хеш, а DoS-атаку уже не провести.

Так что с хеш-таблицами всё хорошо: с вероятностью 99% вы их используете по 100 раз на дню, только не знаете об этом.

11. Как правильно использовать исключения

Главный текст хостится на острие этой ссылки:

Использование исключений для контроля хода выполнения программы (flow control) — давняя тема. Я хотел бы суммировать этот топик и привести примеры правильного и неправильного использования исключений.

В комментариях вылез Валерий Леонтьев из Минска (не певец), который решил поделиться своим житейским опытом:

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

  • Исключения нужно использовать тогда и только тогда, когда возникает развитие событий, не предусмотренное нормальным ходом работы приложения — исключительной ситуации. При этом причина может быть как статической (например, логическая ошибка в коде), так и динамическая (например, недоступность ресурсов).
  • Исключения нужно кидать максимально точно (узко) типизированными.
  • Исключения замечательны для решения своей задачи — прерывания процесса с информированием о возникшей проблеме — причине прерывания, потому что они всплывают по стеку до нужного места. Для других задач они не подходят.
  • Обрабатывать исключения нужно там, где их одновременно возможно и уместно обработать.
  • В прикладном ПО большинство бросаемых на практике исключений не обрабатываются, перехватываются в самой высокой точке стека и попадают в лог, а пользователь получает ошибку 500 «Что-то пошло не так».

Продолжая тему, мои радары засекли другую новую и тематическую ссылку: Правильное использование Exception«ов в PHP:

Я рад бы написать, что «эта статья предназначена для новичков», но это не так. Большинство php-разработчиков, имея опыт 3, 5 и даже 7 лет, абсолютно не понимают, как правильно использовать эксепшены. Нет, они прекрасно знают об их существовании, о том что их можно создавать, обрабатывать, и т.п., но они не осознают их удобность, логичность и не воспринимают их как абсолютно нормальный элемент разработки.

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

Добавим сюда же интимных сисадминских подробностей: Ускорение и оптимизация PHP-сайта. Какие технологии стоит выбирать при настройке сервера под PHP.

12. Интервью с создателем Evernote

Первые прототипы Evernote появились в 2001 году, а полноценная версия — в 2004. За 11 лет своего существования программа стала неотъемлемой частью жизни практически каждого человека, активно работающего в интернете. Интернет-издание «МакРадар» опубликовало интервью с основателем Evernote Степаном Пачиковым, который рассказал о создании программы, а также о своём участии в разработке Apple Newton.

Степан Пачиков, Evernote: «Задача Evernote — сделать человека умнее и лучше» — http://t.co/P0bi5R7q9P pic.twitter.com/neGwrsumVZ
— МакРадар (@MacRadar) July 28, 2015

Каким вы видите будущее Evernote?
Я сторонник Курцвейла. Его книга The Singularity Is Near о человеко-машинной цивилизации произвела на меня сильное впечатление. Я считаю, что вы, я и, может быть, наши дети — это последнее поколение смертных людей. Следующее поколение людей будет уже бессмертным и будет существовать в форме, которую сейчас трудно предсказать, но это будет гибрид биотехнологий и кибернетики.
Меня беспокоит, что в этом будущем конгломерате, между людьми, которыми мы являемся, и теми существами, которыми мы станем через 4–5 поколений, будет мала человеческая доля. Поэтому единственный для нас способ — это не остановить прогресс, а возглавить его. Для меня будущее Evernote — это в каком-то смысле попытка обеспечить передовые позиции человеческому разуму в борьбе между наступающим компьютерным интеллектом и биологическим интеллектом. Вы, наверное, знаете о предупреждении Стивена Хокинга о том, что люди недооценивают опасность компьютерного интеллекта.
Надо работать над своим телом, своим мозгом, совершенствоваться с огромной скоростью, с такой, чтобы мы в этом будущем симбиозе заняли достойное место и чтобы наша культура, история тоже туда влилась. Вот именно в ускоренном развитии человеческого тела и мозга я вижу развитие Evernote и компьютерных технологий.

13. Интернет уже не тот

Впечатления отсидевшего в тюрьме срок за «неправильные смыслы» иранского блогера о современном интернете — что изменилось всего за пару лет?

Статья называется так: Богатый, разнообразный, свободный веб, который я так любил, за годы, проведенные мной в Иранской тюрьме просто умер. Почему никто не остановит это?

Это был первый вечер, когда я вышел из тех дверей, как свободный человек. Для меня все было впервые: холодок от осеннего ветерка, шум от соседнего моста, запах, разноцветный город, в которым я жил большую часть своей жизни — все ново.
Как я заметил, привычный мне Тегеран очень изменился. Наплыв новых бессовестно роскошных особняков заменил очаровательные домишки, так знакомые мне. Новые дороги, скоростные магистрали, кучи внедорожников. Огромные рекламные щиты, со швейцарскими часами и корейскими телевизорами, с плоским экраном. Женщины с разноцветными шарфами и одеяниями, мужчины с крашенными волосами и бородами, и сотни очаровательных кафе с западной музыкой и женским персоналом. Перемены затронули и людей; изменения, замечая которые, рушатся все представления о нормальной жизни.
Две недели спустя, я снова начал писать. Некоторые друзья согласились предоставить мне блог, как часть их журнала. Я назвал это Ketabkhan — что в переводе с персидского «читалка». Шесть лет — это большой тюремный срок, но это целая эпоха в мире веб. Публикация в сети сама по себе не изменилась, но чтение, точнее, формат представление публикации — кардинально поменялся.

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

NewsPack# 13: самые интересные ИТ-ссылки за прошлые недели материалы цитаты обзоры дайджест

Если вам интересны подобные философско-трендовые темы, вот дополнительный свежий топик: Интернет как новое огораживание.

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

14. Интервью с Дмитрием Жемеровым из JetBrains

О чём базар:

  • Как развивается IDEA, куда она движется.
  • В чем разница между IntelliJ и JetBrains.
  • Зачем в компании два CEO.
  • Что происходит в Kotlin«e.
  • С какими трудностями столкнулась команда Kotlin в процессе разработке языка.
  • Что такое Language Design Review.
  • Что представляет собой современный Google.
  • Почему закрылся Google Code.
  • Почему Хабр важен для разработчиков IDE.

Это видео:

А это текстовая транскрипция большого интервью.

15. Смертельная петля аутсорсинга

Продолжая тему EPAM, который всеми силами уходит от достаточно нестабильной аутсорсинговой модели к тому, что они называют PDS 2.0, хочется дать свежую ссылку на крик души одного украинского программиста: Смертельная петля аутсорсинга.

Выцепил оттуда реплику из комментариев:

Именно поэтому мне и кажется, что смертельная петля всё больше сжимается вокруг такого аутсорсинга и заказчики уходят в другие более дешёвые локации, ищут другие варианты сотрудничества, отдают лишь проекты со средним и низким приоритетом (либо вообще полную чушь). Будущее за «заказной разработкой 2.0» и гибким аутстафом (как например, работает Ciklum).

16. Про собеседования

Читать этот топик нужно в таком порядке. Сначала материал Я смотрел лаже в лицо и не боюсь называть её по имени:

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

После снятия с ручника трогается и врезается в дерево уже бампером. Задний ход, машина съезжает с поребрика на дорогу и каким-то чудом становится по направлению движения. Газу! Заветный знак «P» маячит вдалеке, как мираж, не становясь ближе,  —, но это потому, что кандидат газует на нейтрали. Новая попытка, и машина с визгом трогается с места, поднимая асфальто-резиновую пыль. Чуть было не пролетев мимо нужного поворота, машина в последний момент останавливается со скрипом тормозов. Не вписываясь в поворот, она ещё раз проезжает по поребрику и останавливается на противоположной от знака «P» стороне дороги.
Кандидат выходит из машины и объясняет свою езду так: «Вы знаете, я вообще-то готовился к собеседованию. Мне не сказали, что будет практический тест».
На самом деле, конечно, всё было не так. Собеседование было на должность не водителя, а программиста, в резюме пять лет одного языка программирования и восемь — другого, а задание… я не буду его здесь публиковать, но, в общем, если вы умеете программировать, оно будет для вас почти оскорбительно простым.

Балансируем интересы сторон другим текстом: Whiteboard/Coding interview:

На днях я прочитал прекрасный текст «Я видел халтуру в лицо» про whiteboard interview (это когда перед кандидатом ставят доску или кладут листик бумаги и говорят: «напиши на доске вот такую программу»). В статье все по сути правильно, только немного в стиле плача царевны по утраченной молодости, ну, и главные дураки, конечно, — кандидаты. Но открою секрет: те, кто нанимают, тоже часто дураки, ведь кандидаты сами рано или поздно оказываются в позиции нанимающих, а дурость-то никуда не уходит.
На самом деле дурость, большинства кандидатов иллюзорна и происходит от того, что они не сильно понимают правила игры, да и с другой стороны играют не всегда честно. Разберемся, как оно в жизни-то и как с этим справляться.

NewsPack# 13: самые интересные ИТ-ссылки за прошлые недели материалы цитаты обзоры дайджест

Выпарсил из массива смыслов такой дельный комментарий к последнему материалу:

Часто мотивацией собеседующих инженеров видела и такую: «Мне бы хотелось работать с умными людьми!» И интервью строится не по принципу «нам нужен человек под такие-то задачи, давай проверим что из этого умеет кандидат», а по принципу «докажи мне, что ты не глупее меня». Например, есть какой-то редкий алгоритм, который используется мало и его всегда можно нагуглить, но интервьюер очень горд собой, что его знает, и ищет «родственную душу» среди кандидатов.

А иногда интервьюеры вообще не в курсе, под какие задачи ищется человек. Их выдергивают из работы со словами «вот тут надо поговорить», не всегда даже резюме в руки дают. У нас так один фронтенд пошел собеседовать кандидата, выходит, говорит: «Ну, джаваскрипт он знает фигово»,  —, а кандидат на позицию проджект-менеджера шёл и уже лет восемь как сам ничего не кодил :)

16. Почему среди программистов так мало женщин?

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

И рассуждают вслух, например, вот здесь:

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

Или отсюда:

Тут в обсуждениях проскочила мысль, что программистами работали в основном женщины, пока профессия не стала востребованной и оплачиваемой. Потом мужики почувствовали наживу, понабежали и всех вытеснили.
Если вкратце, то всё совсем не так. Если чуть более подробно, то программирование сейчас и тогда — две разные профессии. Однако я не буду останавливаться на этих утверждениях без доказательств, и распишу всё чуть более подробно.

@yelbota @almaleksia давайте же не будем поощрять такие стереотипы. Они и так очень прочно въелись в умы людей. А эффект от них неприятный
— Svet??? (@SBozhko) August 13, 2015

18. Майдан «джаваскриптеров»

Я понимаю так: классическая модель, реализуемая в виртуальных машинах (JavaScript, Java), состоит (состояла?) в том, что есть интерпретатор байт-кода, который позволяет быстро запустить исполнение. А далее «горячие» фрагменты кода уже компилируются по ходу (Just In Time compiler — JIT). А вот согласно этому новому проекту Ignition, Google в своем V8 хочет отказаться от JIT и использовать оптимизированный интерпретатор. Исходная идея для столь радикального поворота дел состоит в том, что большая часть JavaScript кода до «горячего состояния» никогда и не доходит.

Пока ещё не понял, это зрада или перамога.

Вот еще интересная дискуссия по этому поводу на YC.

19. Зачем Google сменила имя?

Рассуждения по теме отсюда:

Должен признаться, в последние дни я потешаюсь над друзьями и знакомыми: сообщаю им, что Google сменила имя — и наблюдаю одну и ту же реакцию в виде лезущих на лоб глаз. Оно понятно: средь сонма интернет-компаний, которые когда-либо появлялись на свет, «Гугл» бесспорно самая знаменитая, если не самая успешная. Её популярность, её признание так велики, что даже имя стало нарицательным, вошло в повседневный лексикон. И вот теперь переписать его на слепое Alphabet? Они там рехнулись что ли?!

NewsPack# 13: самые интересные ИТ-ссылки за прошлые недели материалы цитаты обзоры дайджест

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

20. Windows 10 — самое главное в одном месте

Microsoft начала бесплатно раздавать обновление до Windows 10. На первый взгляд, всё очевидно, но есть несколько подводных камней, о которых нужно знать. Я тут собрал самые важные вопросы о переходе на Windows 10 с предыдущей версии.

21. Как живёт Microsoft

Давайте лучше посмотрим, как люди в MS прекрасно и гармонично живут — свежий большой фоторепортаж: Штаб Microsoft в Редмонде.

Цитата оттуда:

Учитывая имидж Microsoft и её продуктов в последние годы, Редмонд кажется местом из параллельной реальности. Здесь на каждом углу люди с Windows Phone и планшетами Surface. Причём не только сотрудники, но и простые граждане: должно быть, у них таким образом работает патриотизм.
Каких-либо внутренних проблем в Редмонде не чувствуются. В кампусе Microsoft верят в Xbox One и шепчутся о каких-то больших планах на контроллер Kinect и шлем HoloLens. Запуск Windows 10 здесь праздник общегородского масштаба, а Сатья Наделла — близкий по духу к разработчикам лидер, которого давно ждали.

TJ побывал в штаб-квартире Microsoft в Редмонде и привёз кучу фотографий. Взгляд на корпорацию изнутри из первых рук https://t.co/7L0Ne2Zq2H
— TJ (@tjournal) August 6, 2015

В дополнение о самом интимном месте в MS: «Гараж» Microsoft — место, где сотрудники воплощают небольшие идеи.

22. Столетие багов Микрософта

Поскольку выпуск отчасти посвящен MS, я решил дать две замечательные и свежие истории про два давних и в высшей мере загадочных бага от Windows: Мистика буквы Жэ, а также Многострадальный notepad: ошибка, которую не исправляют уже 13 лет. Конечно, мир держится на таких рядовых и неравнодушных программистах-системщиках, который берут в руки свой добрый верный отладчик и оправляются в дебри кода MS Office, чтобы самостоятельно разузнать, что же там так глючит.

А вот в сообществе MySQL у некоторых седых багов даже их дни рождения празднуют, вот это как примерно выглядит со стороны: MySQL Bug #20786:

23. Общий взгляд на подсистему памяти Linux

Очень читабельный и понятный обзор сложных вещей:

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

24. Понятная лекция для новичков ФП

[ИТ-лекторий]: Введение в язык программирования Scala. Докладчик: Александр Подхалюзин (JetBrains).

Свежая ссылка в дополнение: Очисти код свободными монадами.

25. Печальные будни провинциальных эникейщиков

«Сделай всё красиво»: что можно узнать за первый месяц работы настройщиком компьютеров + Опыт работы эникейщиком/системным администратором в бюджетной организации (ещё более негативный аспект такой работы).

NewsPack# 13: самые интересные ИТ-ссылки за прошлые недели материалы цитаты обзоры дайджест

Кстати, чтобы не застрять на этом самом начальном уровне, дополнительно о важной особенности любого амбициозного айтишника: IТ и умение учиться:

«Быстро обучаюсь» или «Active (fast) learner» — пишут некоторые программисты в своих резюме. Сложно представить себе такую строчку у врача или юриста. Нет, им, конечно, тоже приходится регулярно учить что-то новое, но этот процесс носит иной характер и регулярность, чем у разработчиков, которым приходится учиться едва ли не ежедневно. Слишком уж скоротечна сфера IT — даже чтобы просто оставаться на месте, приходится ежедневно грести в хорошем темпе. Почему это происходит?

26. Эникей-миллионер

Продолжая тему таинственной айтишной расы «эникейщиков», внесём крупицу надежды:

Артур Кузяков разработал DriverPack Solution, чтобы ускорить работу сотрудников собственного сервисного центра по ремонту компьютеров. Сейчас она приносит ему около $1 млн чистой прибыли в год
Сейчас DPS — это 10 Гб тщательно отобранных и протестированных командой Кузякова драйверов для Windows. Утилита анализирует компьютер пользователя и устанавливает на компьютер необходимые драйвера. По словам Кузякова, DPS позволяют решить две проблемы: во-первых, ускорить процесс настройки компьютера (что особенно важно, если компьютеров в системе несколько десятков), во-вторых, улучшить качество его работы. Программа полностью бесплатна и выложена онлайн с открытым исходным кодом. При этом она достаточно проста, чтобы ей могли пользо

© Blogerator