Архив за 11 октября 2013 - 4

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

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

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

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

Ставим задачу

Кого ищем? Ищем эффективных бойцов. Известно, что эффективность программистов со схожим опытом может отличаться в 10 раз (Ф. Брукс) или даже в 27 раз (Р. Гласс). Сразу, оговорюсь, эффективность это не только количество трупов врагов реализованных требований к ПО на единицу трудозатрат, но и умение результативно взаимодействовать с окружающими. Это важно, потому что по моим наблюдениям 50% проектных человеко-часов тратится на коммуникации. У нас это называется «синхронизация ментальных моделей».

Поэтому задача, которую ставим себе при проведении технического собеседования это постараться оценить эффективность бойца.

Почему мы не тестируем. Практика проведения технического интервью

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

Первая часть: habrahabr.ru/post/194696/
Вторая часть: habrahabr.ru/post/196276/
Сегодня будет много текста и мало скриншотов, потому что речь пойдет в основном о не взлетевших проектах и глубоких потрохах ОС

Новая надежда

Windows NT 3.1

Microsoft Windows ветки 3.x быстро получили большое распространение, сразу после выхода в 1990 году. Система нового поколения под кодовым названием “Chickago” планировалась к 1993 году, но вышла под именем Windows 95 понятно когда. Одновременно с этим в 1993 году вышла Windows NT — продвинутая ОС для клиент-серверных применений. Из особенностей можно отметить API Win32, вытесняющую многозадачность с планировщиком, поддержку сети, подсистемы совместимости с OS/2 и POSIX, виртуальные машины для DOS и старых 16-битных приложений Windows, новую файловую систему NTFS и поддержку мультипроцессорности.
image
От Apple явно ожидался ответ, особенно в преддверии выхода Windows 95.
Проекты Pink и Red с этой ролью не справились. Впереди было много попыток создать новую конкурентноспособную ОС.Читать полностью »

Всем привет!

Мы занимаемся локализацией программного обеспечения и игр на 30+ языков и часто видим, как разработчики сталкиваются с одной и той же проблемой: в разных языках для передачи одной и той же информации требуется разное количество знаков. В итоге, в интерфейсе пользователя некоторые надписи “не влазят” и их приходится сокращать, либо изменять размеры контролов.

Известно, что, к примеру, немецкий язык “длиннее” английского, а китайский — “короче”. Однако вряд ли у кого-то получится сходу точно сказать на сколько один язык более “знакоёмкий”, чем другой.

Нам стало интересно, мы собрали статистику и получили вот такую табличку с коэффициентами для примерно двадцати языковых пар — под катом.

Померяемся языками, чей длиннее?
Читать полностью »

Компания WD расширила ассортимент продукции, предназначенной для малого и среднего бизнеса, ультракомпактными серверами приложений с функциями сетевого хранилища WD Sentinel DS5100 и DS6100.

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

Стартап Cinarra казанца Алексея Зинина (Alex Zinin) подписал соглашение об инвестициях в компанию со стороны Almaz Capital, частных инвесторов и Cisco в размере $4,5 млн.

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

Минкомсвязь: Торрент трекеры будут заблокированы по IP адресам

Очередные отличные новости, друзья Короля Джулиана определились, что торрент-трекеры в России будут блокироватся — да еще и по IP адресам.

Так же они придумали два новых определения: добросовестный сайт, откровенно противоправный контент
Читать полностью »

Новинка в PVS-Studio!

В вышедшей на днях новой версии статического анализатора кода PVS-Studio 5.10 появилась маленькая незаметная утилита PVS-Studio Standalone. Как говориться, маленький шаг для человечества и большой шаг для PVS-Studio :). Эта утилита уже сейчас позволяет делать (пока) две вещи:

  • Просматривать без запуска Visual Studio IDE результаты анализа (.plog-файл), сохраненные на другой машине.
  • Анализировать уже препроцессированные файлы (полученные каким-либо образом) без запуска препроцессора и без файлов проекта или makefile-ов.

При этом поддерживается полная навигация по коду, все настройки PVS-Studio, а также табличное представление результатов анализа, про которое я писал ранее. Это табличное представление позволяет использовать полный набор фильтров и сортировок диагностик с тем, чтобы максимально удобно работать с большим количеством сообщений.

В этой статье я покажу два сценария полезного использования этой утилиты.

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

По подсчетам аналитиков IHS, в 2017 году в мире будет насчитываться более восьми миллиардов видеоустройств, подключенных к сети Интернет. Другими словами, их число превысит население планеты. В категорию видеоустройств, подключенных к сети Интернет, аналитики отнесли самые разнообразные электронные устройства, включая планшеты, умные телевизоры, игровые консоли, смартфоны, абонентские приставки, проигрыватели Blu-ray и ПК.

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

Не могу поверить, что вы выбрасываете книги!От редактора. Тема книг, вернее, тема знаний, которые в них содержатся, всегда была близкой для ABBYY. Мы многожды участвовали в проектах по оцифровке книжных собраний – и европейских, и отечественных. Поэтому, когда ваш редактор наткнулся на весьма неожиданную англоязычную статью на тему сохранения библиотечных книг, у него сразу возникло желание перевести её на русский и обсудить с вами, читателями.

Не могу поверить, что вы выбрасываете книги!

Я библиотекарь, но уже не библиофил.

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

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


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