Архив за 28 декабря 2013

Завалялась у меня в столе плата Stellaris LM4F120, с которой я решил, наконец, разобраться. Писать будем программу, которая включает-выключает светодиоды, установленные на плату в ответ на нажатия имеющихся на плате кнопок.
Читать полностью »

Пока серьздные компании добиваются ордера от google, мы получили два от SonyMusic (город Лондон bbc). Ничего личного, эта компания занимается серьезными штуками — они анализирут c++ код, но вообще то это канонические компьютерные ананисты. Да да это те самые ананисты которые всем нам нравятся, это те мужики на которых держатся все ИТ-компании. Мы называем себя конторой, у нас нет манагеров, нет иерархии и мы лучшие по «шарику (SharePoint)» в СНГ. Я действительно так считаю, я работаю в этой области достаточно: участвовал во внедрении самого высоко нагружённого шарика в России, сейчас в качестве тимлидера делаю портал на 190 000 пользователей (таблицы для расчета нагрузки от Microsoft заканчиваются на 100 000 пользователей). Делал решения для top 5 банков с командами-подрядчиками из Беларусии и Украины. Так вот, какой бы большой и серьезной ни была ИТ-компания, какие бы пиджаки не одевали продажиники и управленцы — все держится на двух трех программистах. Их (как и вас и меня) часто именуют «ресурсами». Проект делает ПМ, а мы ресурсы.
Читать полностью »

Есть в техническом обществе подкласс людей, которые жить не могут без созидания, переделывания, и усовершенствования разного рода устройств. Практически любой девайс своим существованием делает вызов таким людям, которые обязательно разберут его, изучат и если повезет, то взломают или усовершенствуют. Таким людям сложно выбросить устройство, которое отжило свой век но еще работает, ведь можно применить его еще где-то. Так старые мониторы, системные блоки, принтеры и еще бездна всего перевоплощаются и продолжают жить другой жизнью, пусть и не такой значимой как раньше. Люди творят, а переполняющимся свалкам от этого хоть чуть-чуть, но легче, — и это прекрасно! Я именно такой человек, и для меня «нельзя просто так взять» и выбросить какой- то блок или устройство. В очередной раз, перебирая ящики с барахлом приходилась долго думать над очередной деталью прежде чем бросить ее в мусорный ящик, но такое случалось редко. Читать полностью »

Удобная работа в консоли, или красим STDERR в красный цвет

Работа в консоли

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

Melange — DSL для сетевых протоколовВсем программистам рано или поздно приходится передавать данные. Ни для кого не секрет, что библиотек сериализации в Java существует примерно >9000, а в C++ они вроде и есть, а вроде их и нет. К счастью для большинства, несколько лет назад появился Google Protobuf, который принёс достаточно удобный способ определять структуры данных и быстро завоевал всенародную любовь. Это была фактически первая, доступная широким массам библиотека, позволяющая гонять по сети готовые структуры данных, не связываясь при этом с чем-то вроде XML. На дворе был 2008 год.

Вернёмся немного назад. В 2006 году простой индийский программист (как бы подозрительно это ни звучало!) Анил Мадхавапедди, один из самых известных сейчас в мире OCaml-разработчиков и автор свежевышедшей книги Real World OCaml, защищал в Кембридже кандидатскую диссертацию. Именно о ней я сегодня вам и расскажу.

Анил сразу пошёл дальше, чем Google. Он сразу подумал, для чего люди обычно пересылают по сети какие-то формализованные структуры данных? Чтобы реализовать какой-то протокол. А что такое протокол? Это какой-то конечный автомат. А где мы можем взять хороший пример сложного, хорошо спроектированного и проверенного временем протокола? Да прямо в обычном сетевом стеке! Итак, были взяты набор сетевых структур данных и протоколов: Ethernet frame, IPv4, ICMP, TCP, UDP, SSH, DNS и DHCP и постановка задачи: большая часть этих протоколов (особенно SSH и DNS) реализуются, что называется «руками», а хочется, чтобы не было типичных для C переполнений буфера, все переходы совершались автоматически, это всё можно было верифицировать, и чтобы работало быстро, а не как обычно.

Поскольку никто не будет читать диссертацию, сразу скажу: это более чем удалось. По результатам работы были написаны референсные реализации DNS и SSH-сервера и произведено сравнение с BIND и OpenSSH. OCaml-реализации давали по сравнению с традиционными прирост производительности от незначительного, до почти двухкратного. Кроме того была найдена ошибка в RFC на SSH (рабочая группа была уведомлена и RFC исправлен). О том, что было сделано, и как с этим жить, читайте под катом. Читать полностью »

imageTon Roosendaal, основатель и один из авторов открытого 3D-редактора Blender откопал у себя самые первые исходники проекта.
Он начал его накануне рождества 1993 года, как проект для внутреннего использования в своей анимационной студии, и в начале января первая версия кода уже во что-то такое компилировалась.Читать полностью »

Всем привет! Вместо предисловия КДПВ:

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

АНБ не справляется с объёмами трафикаБлагодаря документам от Эдварда Сноудена стало известно о программах Агентства национальной безопасности США (АНБ) по тотальной прослушке интернет-трафика, в том числе о программе MUSCULAR по съёму трафика между дата-цетрами компаний Google и Yahoo по всему миру непосредственно через кабели оптоволоконной связи.

Как теперь выяснилось, АНБ не справляется с обработкой слишком больших объёмов трафика, которые поступают в её систему, и в 2013 году агентство попросило уменьшить масштабы слежки по программе MUSCULAR.

«Их нынешняя деятельность уменьшает работоспособность системы, когда они обрабатывают все эти данные», — сказал Уильям Бинни (William Binney), разработчик программного обеспечения, которое используется в АНБ, в интервью WSJ. По его словам, АНБ погрязло в массиве ненужной информации, которая мешает агентству осуществлять полезную работу по поиску потенциальных террористов.
Читать полностью »

Вводная

Для одного из проектов потребовалось заняться доработками оригинального кода Android для создания прошивки под специфичную железку. Версия для сборки была выбрана уже относительно старая AOSP 4.0.4, но на ней базируется стабильная ветка кода от производителя железки, поэтому условие необходимое. Кроме разработки под Android я занимаюсь разработкой iOS приложений, соответственно работаю под Mac OS X и использую Xcode как одну из сред для разработки.

Основной проблемой в моем случае явилось то, что старые версии AOSP ни кем не отслеживаются и новые правки в сборочную систему не вносятся. Поэтому если сборка master’а особой сложности не представляет, то сборка предыдущих версий Android под более свежие версии MacOS требует исправления ряда проблем.
Читать полностью »

Калифорнийский стартап SkyBox опубликовал видео высокого разрешения, снятое их первым космическим аппаратом.

Спутник SkySat-1 запустили ракетой «Днепр» 21 ноября 2013 года. Спустя месяц компания SkyBox опубликовала несколько снимков высокого разрешения и полноценное видео, снятое с орбиты (если не считать МКС, то такая съемка осуществляется, кажется, впервые):

(Разверните на весь экран)
Читать полностью »


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