Pull to refresh
11
0
Алексей Баранов @webscout

User

Send message

Воспоминания сотрудника IBM: как я нашел жену, отлавливая ошибки в OS/2

Reading time8 min
Views130K
(В недавнем обзоре истории OS/2 давалась очень обобщенная картина разработки ОС. Надеюсь его хорошо дополнит взгляд изнутри самой IBM, воспоминания рядового тестера OS/2.)

Богопротивный альянс IBM и Microsoft выпустил OS/2 25 лет назад, чтобы заменить Windows, Unix и DOS. В то время я был рядовым солдатом этой войны: тестером, работающим в Синем Гиганте по договору. Жестокая судьба и еще более жестокий редактор хотят, чтобы 25 лет спустя я написал статью о том, стоит ли вам сейчас посвящать свою карьеру Microsoft. И меня до сих пор поражает то, насколько не знающие историю люди обречены ее повторять.

В конце 1980-х большая часть PC все еще выполняла только одну программу за раз, хотя многие из них были заражены сражавшимися друг с другом резидентными программами. Графические интерфейсы уже пришли на PC, но Windows-приложения работали просто ужасно: даже если вы просто включали Windows PC и больше ничего не делали, была немалая вероятность того, что он зависнет сам по себе.

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

IBM была патологически скрытной. Мое собеседование в основном состояло из вопросов в духе «итак, Доминик, расскажите о себе» без малейших намеков на то, чем мне предстоит заниматься. Так как я принимал участие в проекте Microsoft Unix для Intel x86, я ответил: «В определенном смысле моя работа заключалась в том, что я портил жизнь Microsoft». Сотрудник отдела кадров IBM сказал, что, как правило, их начальству требуется «должное количество времени» для принятия решения, но в этот раз предложение работы пришло на мой автоответчик еще до того, как я вернулся домой.
Читать дальше →
Total votes 141: ↑129 and ↓12+117
Comments71

Новая проблема (схоже по смыслу с топиками о лени)

Reading time2 min
Views761
Всем доброй ночи и хорошего завтрашнего воскресенья.

Хочу поделиться (и, может быть, придумать действенное решение) для новой проблемы, которая, я уверен, возникла не только у меня. Результат ее «действия» — постоянный недосып, усталость и, конечно, не-продуктивная работа.

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

Читать дальше →
Total votes 34: ↑28 and ↓6+22
Comments107

Скрипач в метро — социальный эксперимент

Reading time2 min
Views23K
Это необычайно грустная история от которой у меня были мурашки по коже. Это социальный эксперимент о восприятии, вкусе и приоритетах людей.

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

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

Минуту спустя скрипач получил свой первый заработок: женщина бросила деньги в футляр и, без остановки, продолжила свой шаг.

Еще несколько минут спустя мужчина облокотился к стене и стал слушать, но, вскоре, он взглянул на свои часы и продолжил путь.
Читать дальше →
Total votes 293: ↑264 and ↓29+235
Comments213

Хорошая и плохая прокрастинация

Reading time7 min
Views76K
Все самые впечатляющие люди, с которыми я знаком — ужасные прокрастинаторы. Так может, прокрастинация не всегда плоха?

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

Существует три типа прокрастинации, в зависимости от того, что вы делаете вместо работы: вы можете (А) ничего не делать, (Б) заниматься чем-то менее важным и (В) заниматься чем-то более важным. Последний тип, я убеждён, и есть хорошая, правильная прокрастинация.

Это как «рассеянный профессор», который забывает или побриться, или поесть, или посмотреть под ноги, когда размышляет над чем-нибудь интересным. Его мозг отстранён от повседневного бытия, потому что занят другими вещами.

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

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

Хорошая прокрастинация — это уклонение от обязанностей ради выполнения реальной работы.
Читать дальше →
Total votes 51: ↑39 and ↓12+27
Comments56

7 рефакторингов для больших ActiveRecord — моделей

Reading time9 min
Views13K
От переводчика: предлагаю вашему вниманию вольный перевод статьи из блога Code Climate под названием 7 Patterns to Refactor Fat ActiveRecord Models.
Code Climate — мощное средство анализа качества кода и безопасности Ruby on Rails — приложений.

Введение


Когда разработчики начинают использовать Code Climate для улучшения качества их Rails-кода, им приходится избегать «распухания» кода их моделей, так как модели с большим количеством кода создают проблемы при сопровождении больших приложений. Инкапсуляция логики предметной области в моделях лучше, чем помещение этой логики в контроллеры, однако такие модели обычно нарушают Принцип единственной обязанности (Single Responsibility Principle). К примеру, если поместить в класс User все что относится к пользователю — это далеко не единственная обязанность.
Читать дальше →
Total votes 23: ↑20 and ↓3+17
Comments12

Аттракцион невиданной щедрости от университета Восточной Финляндии

Reading time1 min
Views61K
Хочу поделиться с сообществом краткой новостью, пришедшей на рассылку: мой alma mater, университет Восточной Финляндии, объявляет конкурс аж на 99 аспирантских позиций, из которых 50 непосредственно дают естественнонаучному факультету (где кроме IT также представлены физика, математика, химия и биология).

На моей памяти такого обилия мест не было никогда. А невиданная щедрость заключается в том, что под каждое место на четыре года обучения уже выделена стипендия в районе 2-2.5 тысяч евро, так что если кому-то хочется позаниматься наукой в комфортабельных условиях, большего и желать трудно.
Читать дальше →
Total votes 71: ↑68 and ↓3+65
Comments22

Структуры данных, PHP. Часть вторая

Reading time11 min
Views40K
Продолжаю совмещать приятное с полезным и переводить. Сегодня речь зайдет о кучах (heaps) и графах. Как обычно, материал скорее подойдет новичкам — большая часть информации, если не вся, уже где-то так или иначе освещалась.

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

UPD: Добавил сравнение производительности
Читать дальше →
Total votes 37: ↑29 and ↓8+21
Comments18

Наука под замком. Первая часть

Reading time7 min
Views91K


От переводчика: Любой, кому приходилось искать в интернете статьи из научных журналов, наверняка сталкивался с тем, что за доступ к одной единственной статье издательство требует порядка 30 долларов. Иногда нужную статью удаётся найти в открытом доступе, иногда нет. На первый взгляд, в этом нет ничего удивительного — любой контент стоит денег. Однако научные статьи довольно сильно отличаются от фильмов, книг и музыки.

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

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

Читать дальше →
Total votes 180: ↑175 and ↓5+170
Comments188

Интернет-бизнес в России: можно ли, нужно ли, нежно ли

Reading time12 min
Views46K
Привет, Хабр.
Редакция Роем вместе с Фондом ФРИИ давеча озаботились волнующими многих вопросами: нужно ли делать свой интернет-проект (если очень хочется), где его, собственно, делать, и вообще кто виноват и как дальше жить. Серию публикаций мы открыли статьёй на нашем сайте, а на Хабр решили выложить прямую речь — редакционный взгляд это хорошо, но детали есть детали. Мы задали пять простых вопросов разным известным сетевым деятелям, журналистам и другим дружелюбным профессионалам: от Павла Дурова до Аркадия Морейниса. Мнения публикуем без купюр. И их действительно много.
image
Читать дальше →
Total votes 74: ↑62 and ↓12+50
Comments47

Неэффективный программист или как взломать свой мозг за 2 дня

Reading time9 min
Views190K


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


Интернет сделал нас ленивыми!

Почему? Кто в последний раз посмотрел видео больше 3х минут? Кто прочитал пост больше 2 страниц? Какой заголовок более привлекателен, «63 способа бла-бла-бла» или «3 проверенных метода бла-бла-бла»? А если эти три проверенных метода выделены от основного текста, то это вообще гуд (можно не читать текст вовсе, а просто пробежаться по выделенным подзаголовкам).

В этом свои плюсы. Наш мозг эволюционировал, и обрабатывает информацию быстрее, чем, скажем, 15-20 лет назад (да и эволюционирует быстрее, чем это было возможно век назад). Как компании справляются с высокими нагрузками? Как процессор выполняет программу по возможности быстро? С помощью кэширования! (как вариант, но самый приоритетный). Что делает наш мозг, чтобы справиться с большой нагрузкой? Кэширует! Что именно и как — оставим на размышление ИИшникам (специалистам по искусственному интеллекту). В противном случае при увеличении размера обрабатываемой информации время «отклика» бы увеличилось в разы, и на ответ на «как добраться до ближайшей больницы?» уйдет больше времени, чем человек «в силе ждать». «Сила ждать» тоже уменьшилась, «размер» нашего терпения уменьшился, и мы быстро устаем, если продолжительность видео большая, размер статьи большой (на самом деле продолжительность может не влиять на терпение, больше всего влияет полезная информация, если «воды» меньше или вовсе нет, то и терпеть ничего не приходится, посему данный пост написан «эз лаконик эз посибл»).
Убедиться в этом
Total votes 258: ↑207 and ↓51+156
Comments176

Прерывания в конвейеризированных процессорах

Reading time10 min
Views75K
Наверняка вы знаете, что такое прерывания. Возможно, даже интересовались устройством процессора. Почти наверняка вы нигде не видели внятный рассказ про то, как именно процессор обнаруживает прерывание, переходит к обработчику и, самое главное, возвращается из него именно туда, куда положено.

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

Если когда-нибудь вы задумывались над тем, что значат слова «the processor supports precise aborts» в даташите, прошу под кат.
Читать дальше →
Total votes 154: ↑153 and ↓1+152
Comments25

Хроническая усталость, апатия, сезонная «депрессия» и многое другое: тривиальная причина

Reading time8 min
Views684K
На хабре часто публикуют статьи о самоорганизации — нам всем хочется меньше прокрастинировать, и делать больше полезного. Но что если делать полезное мешает дичайшая усталость? Никакая организация задач усталость не уберет.

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

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

1) Летом все ок, а зимой — апатия, ничего не хочется делать. Это любят называть сезонной «депрессией».
2) Утром все ок, а к вечеру на работе — мозги «не варят», ничего не хочется делать — только хабр и reddit листать. Приходите домой — и с дичайшей усталостью падаете в кресло. Сил хватает только лазить в интернете до ночи. Этот пункт — касается и работодателей, есть шанс, что люди вечером перестают работать не из-за своей лени.
3) Даже если вы просыпаетесь без будильника — вы не высыпаетесь.
4) Кофе и прочие стимуляторы — не дают бодрости, лишь делают вас злее.
5) Даже если вы спите «сколько влезет» — сны короткие и не запоминающиеся, или их нет вообще.
6) Вы замечаете, что даже 1 вещь вам иногда трудно удержать в голове. Мы можете забыть что вы сейчас хотели сделать.
7) Вы просыпаетесь уже с дичайшей усталостью
8) Вам кажется, что в комнате темно и все несколько не резкое.
Читать дальше →
Total votes 336: ↑320 and ↓16+304
Comments374

Манга «Занимательная статистика», «Тайна катастроф» и другие похожие книги

Reading time5 min
Views53K
Речь идет о необычных учебниках, которые стоят посередине между вузовскими учебниками и чисто научно-популярными брошюрами. Тем не менее между научпопом и такими учебниками есть четкий водораздел — последние нацелены именно на обучение, развлекательные фишки — лишь форма подачи серьезного материала. Общее для всех таких книг, как мне представляется — подача материала в виде комикса и\или в виде диалога двух или больше людей. Обычно два собеседника — ученик и учитель, один постоянно задает вопросы, часто глупые или смешные, второй пытается объяснить в игровой форме.

В посте много скриншотов нескольких книг. Одну из них, которая про катастрофы я полностью переснял и выложил pdf. Прошу учесть, под хабракатом не один мегабайт картинок, текста много меньше. Заранее прошу прощения за качество некоторых кадров — ночная пересъемка не способствовала. Возможно, картинок больше, чем нужно, но я старался и показать основные принципы — графический, игровой способ подачи материала, сюжет и диалоги.

Я сделал что-то вроде ретроспективы: первая книга — свежий японский комикс-манга о матстатистики издания 2010 года, дальше — книга из 80-х о математике, теории катасроф. Последняя — учебник радиоэлектроники для начинающих, знакомый нескольким поколениям читателей по всему миру, начиная с 30-х годов.

В качестве иллюстрации поста приведу обложку другой манги из той же серии, что и книга о статистике:

image

Читать дальше →
Total votes 86: ↑75 and ↓11+64
Comments52

Схема обработки ошибок в Yii

Reading time4 min
Views34K
Всем привет!
Процесс обработки ошибок в Yii был для меня не совсем прозрачным с первых дней использования этого фреймворка. Даже несмотря на наличие в документации специального раздела Error Handling. В каких случаях какие view используются, как влияет ajax или debug-режим, зачем нужен errorAction, в чем отличия при обработке исключений?
В итоге после копания в документации и исходном коде фреймворка я нарисовал наглядную схему обработки ошибок, которая лично для меня оказалась весьма полезной и наверняка пригодится кому-то еще.
Под катом собственно схема и некоторые комментарии к ней.
Читать дальше →
Total votes 49: ↑46 and ↓3+43
Comments22

Войны в песочнице — Часть 1

Reading time5 min
Views13K

Предупреждение


В статье описаны приключения одного моего знакомого.

Предыстория


События проходят во времена далекого третьего курса.

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

Что же дальше?
Total votes 224: ↑185 and ↓39+146
Comments93

GeoIP – страны и города, декабрь 2010

Reading time1 min
Views2.7K
Вышла в свет новая версия русскоязычной базы данных стран и городов. Основные изменения:
— база maxmind.com была объединена с базой городов России ipgeobase.ru (идея sky_lord)
— с помощью Переводчика Google были переведены на русский язык ~60,000 названий (идея neytrino), а затем с помощью Яндекс.Карт из них были отсеяны артефакты типа «Инь молодых» и «Авиаторов деревня»
— были удалены дубли и произведена оптимизация структуры базы.
Результат этой работы доступен для свободного скачивания.
Читать дальше →
Total votes 67: ↑63 and ↓4+59
Comments56

PixelBuzz.tv — экспериментируем с пикселями

Reading time1 min
Views790


Современное кино и телепередачи — это сплошные многомиллионные бюджеты, скандалы, знаменитости и сумасшедшие спецэффекты. В PixelBuzz.tv все наоборот. В нашем распоряжении — 8 цветов, 4 кадра и ограниченный набор пикселов. Каждый может стать режиссером и сделать свой пиксельный ролик, отправив его в общий канал. Все ролики перемешиваются и в случайном порядке отдаются зрителям.
Читать дальше →
Total votes 154: ↑141 and ↓13+128
Comments226

Clear или overflow:hidden — очистка всего потока или создание контекста форматирования?

Reading time2 min
Views35K
clear и overflowСвойство clear со значениями left, right, both действительно очищает поток в отличие от overflow со значеним hidden, которое создаёт отдельный контекст форматирования для выбранного элемента, тем самым локализуя действие свойства float внутри элемента к которому применён.

Читать дальше →
Total votes 130: ↑120 and ↓10+110
Comments75

Эффективный способ повысить умственную работоспособность

Reading time13 min
Views221K
В прошлой заметке я писал о том, чего не стоит делать, если у вас проблемы с работоспособностью. В этой части я расскажу об эффективном способе, не требующем медикаментов. Медикаменты — это только поддержка, дополнение. Но способ этот требует организованности и силы воли, а потому так нелюбим большинством из нас.
Читать дальше →
Total votes 173: ↑165 and ↓8+157
Comments272

Information

Rating
Does not participate
Location
Витебск, Витебская обл., Беларусь
Registered
Activity