Как стать автором
Обновить
4
0
Vsevolod Minkov @minefield

Программист

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

Бег — идеальный спорт для удаленщика. Часть 2: физика и матчасть

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


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

Итак, что даёт нам бег?
Читать дальше →
Всего голосов 109: ↑103 и ↓6+97
Комментарии257

Документация Linux ядра переходит на Python Sphinx

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

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




На семинаре Kernel Recipies мейнтейнер документации Linux ядра Jonathan Corbet рассказал о нынешнем положении дел с документацией и о том, как будет совершаться переход от анархии к порядку. Первые успехи в этом начинании уже есть. Некоторые документы были недавно конвертированы в ReStructuredText с помощью питоновского Сфинкса. О том как это было рассказано внутри.

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

Как купить золото?

Время на прочтение5 мин
Количество просмотров138K
Пенсия для ITшника.
Тут нужно было бы писать «а что делать в старости?», «на государство недёжи никакой», «в наше время каждый должен...» и прочее бла-бла-бла и би-би-би. Но мне лень, потому — сразу к делу.

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

А еще?
А еще золото двигается в противофазе с рынком акций. То есть, когда в экономике тайфун — все инвесторы бегут в золото, как самый надежный актив. Ну и наоборот, естественно… Это делает золото идеальным инструментом для построения «портфеля простака».
Читать дальше →
Всего голосов 92: ↑73 и ↓19+54
Комментарии167

Сравнительная схема кораблей из научной фантастики

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


DirkLoechel наконец-то закончил работу над самой большой в истории сравнительной схемой космических кораблей из научно-фантастических произведений: художественных фильмов, сериалов и игр. Star Trek, «Звёздные войны», EVE Online и многие другие (полный список под катом). Все культовые корабли — они тут. Открывайте оригинал изображения 4268 x 5690 пикселов — и погружайтесь.
Читать дальше →
Всего голосов 186: ↑157 и ↓29+128
Комментарии202

Andrea Mosaic — мозаика быстро и лаконично

Время на прочтение2 мин
Количество просмотров30K
Сегодня хочется рассказать о том, как создать такие картинки.
Не видите ничего особенного? Можете сделать так своими руками? Загляните под кат.




Картинка кликабельна. (Трафик, осторожно!)

Upd: Заменил картинку на более важную сегодня.
Узнать,как такое сделать без фотошопа
Всего голосов 114: ↑73 и ↓41+32
Комментарии44

GPRS изнутри. Часть 2

Время на прочтение7 мин
Количество просмотров58K
Продолжаем наше знакомство с пакетной передачей в сетях мобильных операторов, которое мы с Вами начали в первой части о GPRS/EDGE технологиях. В этой статье речь пойдет о процессе аутентификации и авторизации, т.н. процедуре GPRS Attach, а также активирование услуги, запрошенной абонентом — поднятие PDP Context'а. Посмотрим какие данные хранятся на стороне SGSN'а, а какие на стороне абонента.
Ну, что ж поехали…

Читать дальше →
Всего голосов 27: ↑25 и ↓2+23
Комментарии67

Случайность открывает дорогу инновациям

Время на прочтение4 мин
Количество просмотров641
image
Научные инциденты порой приносят совершенно неожиданные результаты. Так, во-многом благодаря случайности, появились вулканизированная резина, рентген, пенициллин, местная анестезия и многое другое. А в наше время исследователи из научного центра UCLA, который располагается в славном Лос-Анджелесе, неожиданно наткнулись на материал, благодаря которому цифровые камеры в том виде, в каком мы к ним привыкли, уже скоро могут стать лишь достоянием истории.

Аспирантка Санг-Ю Чен (Hsiang-Yu Chen) работала над новой формулой для солнечных батарей, когда что-то пошло не так. Вместо того, чтобы вырабатывать электричество, при контакте с прямыми солнечными лучами, изменилась проводимость материала, с которым она работала.

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

Благодаря счастливой случайности, возможно что скоро на горизонте появится новый тип цифровых фото- и видео-камер, внутри которых будут более дешевые и высококачественные матрицы, кроме того, обладающими меньшими показателями шума, нежели сегодня выпускающиеся. Под катом будут фотографии с описаниями.
На фото вверху — пять полосок нового материала на стеклянной подложке, которую Чен держит щипцами в стерильном боксе.
Читать дальше →
Всего голосов 84: ↑81 и ↓3+78
Комментарии88

Анонимность и сетевые сообщества: идентификация личности имеет значение

Время на прочтение10 мин
Количество просмотров2.9K
Анонимность: хорьки в курятнике

Анонимность — палка о двух концах, если речь идёт о сетевых сообществах. С одной стороны анонимность даёт пользователям чувство большей свободы, поощряя участие в дискуссиях на щекотливые или неудобные темы, с другой стороны, она же может стать злейшим врагом сообщества.
Читать дальше →
Всего голосов 48: ↑47 и ↓1+46
Комментарии12

YouTube вводит плату за просмотр фильмов

Время на прочтение1 мин
Количество просмотров4.9K
Правда, не всех. Пока планируется ввести только «арендную» плату за право просмотра фильмов определенной категории. В эту пятницу, то есть завтра, фильмы с Sundance Film Festival станут платными.

Стоить все это будет 4 доллара США за право просмотра в течении двух суток. То есть вы можете хоть сотню раз смотреть фильм в эти два дня, но потом снова придется платить. Google надеется, что подобное нововведение позволит привлечь киностудии к сотрудничеству.

image

В дальнейшем планируется добавить различные сроки «аренды» (самому это слово не нравится, но более удобное никак не могу подобрать): от суток до 90 дней.

Интересно, получится ли у Google монетизировать свой видеохостинг подобным образом? Кстати, Google, пытаясь сделать YouTube прибыльным подобным образом, переходит дорогу таким крупным торговцам контентом, как iTunes, Amazon.com Inc., Netflix Inc. and Blockbuster Inc. Что же, поживем — увидим.

С первоисточником можно ознакомиться здесь.
Всего голосов 54: ↑47 и ↓7+40
Комментарии79

Youtube добавил поддержку HTML5

Время на прочтение1 мин
Количество просмотров16K
image
Сегодня Youtube добавил поддержку HTML5, недавно мы голосовали за html5 вот тут а вот и наш результат :)
Но есть некоторые минусы, надеюсь только пока…
— Нельзя смотреть видео в полном экране
— Видео с рекламой будет показываться с флэшем

А в качестве стандартна для видео был выбран кодек H.264

Что бы перейти на просмотр YouTube через HTML 5 нажмите на данную ссылку www.youtube.com/testtube?hl=en или www.youtube.com/html5
Всего голосов 71: ↑64 и ↓7+57
Комментарии95

Спокойной ночи!

Время на прочтение6 мин
Количество просмотров21K
image Около месяца назад я приобрел HTC Hero. Основной причиной, по которой был выбран этот телефон, а не iPhone, была возможность полноценно разрабатывать приложения под Windows.

В качестве пробы пера я написал небольшую программу, которая выключает звук на ночь. Под катом описание процесса разработки и ссылка на программу.
Читать дальше →
Всего голосов 139: ↑126 и ↓13+113
Комментарии72

Hеroвый root или как получить полноценный русифицированный HTC Hero с приложениями Google из «обрезанного»

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

Многие засматриваются в сторону телефона на OS Android.
И, среди доступных вариантов, именно HTC Hero для многих является заветной мечтой.
К превеликому сожалению, Google почему-то не любит украинских граждан и не разрешает официально продавать в Украине телефоны с Android Market — даже с его бесплатной версией…
И кроме того на сером рынке доступно много телефонов из других стран, в которых нет русского или также отсутствует market.
Но, прелесть OS Android в её открытости… Так что под катом постараюсь рассказать, как можно перепрошить телефон полноценной прошивкой с полноценным Android Market, русификацией и возможностью покупки платных программ.
Данный мануал особо актуален для официальных украинских HTC Hero, но подойдет для владельцев любых Hero, которые хотят сменить прошивку своего телефона или открыть доступ к дополнительным фукциям своего телефона.
Читать дальше →
Всего голосов 77: ↑70 и ↓7+63
Комментарии108

Tips and Tricks по программированию на Android

Время на прочтение5 мин
Количество просмотров7.2K
Tips and Tricks
Летом друг подкинул пару заказов по разработке для Android. Первое это streaming проигрыватель видео для одного французского телевидения, второе — простенькая игрушка.
Во время разработки (мой первый опыт разработки на Android и на Java), я уяснил несколько правил, которые нужно соблюдать для корректной и устойчивой работы программ, которыми хочу поделится…
Читать дальше →
Всего голосов 91: ↑75 и ↓16+59
Комментарии44

Поправки к закону против интернета внесены!… хотя постойте…

Время на прочтение1 мин
Количество просмотров87K
ГосдураЗаконопроект № 342640-6
О внесении изменений в Граждански кодекс Российской Федерации, Гражданский процессуальный кодекс Российской Федерации, Арбитражный процессуальный кодекс Российской Федерации и Федеральный закон «Об информации, информационных технологиях и о защите информации»
НАХОДИТСЯ НА РАССМОТРЕНИИ
17.09.2013 10:52

Похоже, были правы те, кто предсказывал, что госдума скорее расширит действие закона, чем прислушается к РОИ (TODO ссылка на опрос). ПЖиВ в лице Роберта Шлегеля и Марии Максаковы изрыгнула законопроект по расширению антипиратского закона на защиту авторских прав музыкантов, литераторов и разработчиков компьютерных программ.

Что там внутри?
Всего голосов 199: ↑180 и ↓19+161
Комментарии298

Пора завязывать склонять латиницу

Время на прочтение2 мин
Количество просмотров23K
imageПост боли.

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

Никогда не склоняйте и не добавляйте суффиксы к словам на латинице ни через пробел, ни через дефис, ни через уродливый апостроф. Глаз всегда запинается на таких формах. Вместо того, чтобы облегчить, вы затрудняете чтение. Представьте текст, в котором такие слова встречаются не по разу на абзац, а по три в каждом предложении. Легко ли будет его читать?
Ужас Нормально Лучше всего
На JavaScript-е
На javascript'e
На JavaScript
На Яваскрипте, на Джаваскрипте
На JS
php-шник
phpист
PHP-программист
Пехепист
Избегать таких выражений,
если это возможно без ущерба для смысла.
Просто «программист».
Читать дальше →
Всего голосов 169: ↑47 и ↓122-75
Комментарии203

Делаем универсальный ключ для домофона

Время на прочтение5 мин
Количество просмотров541K
Заголовок получился слишком громким — и ключ не такой и универсальный, и домофон поддастся не любой. Ну да ладно.
Речь пойдет о домофонах, работающих с 1-wire таблетками DS1990, вот такими:



В интернете можно найти множество материалов о том, как читать с них информацию. Но эти таблетки бывают не только read-only. Человеку свойственно терять ключи, и сегодня ларёк с услугами по клонированию DS1990 можно найти в любом подземном переходе. Для записи они используют болванки, совместимые с оригинальными ключами, но имеющие дополнительные команды. Сейчас мы научимся их программировать.

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

Читать дальше →
Всего голосов 223: ↑208 и ↓15+193
Комментарии109

Интерпретация во время компиляции, или Альтернативное понимание лямбд в C++11

Время на прочтение22 мин
Количество просмотров32K
Yo dawg, I heard you like programming. So we put a language in you language, so you can program while you programНа Хабре недавно проскочила ещё одна статья про вычисления на шаблонах C++ от HurrTheDurr. В комментариях к ней лично я увидел вызов:

> С каждым новым релизом количество способов нетривиально вывихнуть себе мозг при помощи С++ продолжает увеличиваться)
> > Особенно, если не менять подход к реализации игрового поля и продолжать пытаться все вычисления выполнять не над константами, а над типами.


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

Чуть раньше AveNat опубликовала введение в лямбда-исчисление в двух частях, так что вдохновение пришло мгновенно. Хотелось, чтобы можно было (образно) писать так:
#include <iostream>

#include <LC/kernel.h>
#include <LC/church_numerals.h>

int main()
{
    // Представление натуральных чисел в виде лямбда-абстракций
    typedef ChurchEncode<2> Two;    // 2 = λfx.f (f x)
    typedef ChurchEncode<3> Three;  // 3 = λfx.f (f (f x))

    // * = λab.λf.a (b f)
    typedef Lambda<'a', Lambda<'b', Lambda<'f',
                Apply<Var<'a'>, Apply<Var<'b'>, Var<'f'> > >
        > > > Multiply;

    // Вычисление (* 2 3)
    typedef Eval<Apply<Apply<Multiply, Two>, Three>> Output;

    // Переход обратно от лямбда-абстракций к натуральным числам
    typedef ChurchDecode<Output> Result;

    std::cout << Result::value;
}

А на выходе получать такое:
ilammy@ferocity ~ $ gcc cpp.cpp
ilammy@ferocity ~ $ ./a.out
6

Статья получилась несколько великоватой, так как мне хотелось рассказать обо всех интересных штуках, которые здесь используются. И ещё она требует базового набора знаний о лямбда-исчислении. Приведённых выше обзоров, среднего знания C++ (с шаблонами), и здравого смысла должно быть достаточно для понимания содержимого.

Под катом находится очередное прокомментированное конструктивное доказательство Тьюринг-полноты шаблонов C++ в виде compile-time интерпретатора бестипового лямбда-исчисления (плюс печеньки в виде макросов и рекурсии).
Читать дальше →
Всего голосов 102: ↑98 и ↓4+94
Комментарии13

Паралич анализа: вы знаете слишком много, чтобы просто писать код

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

Это перевод статьи Analysis Paralysis: Over-thinking and Knowing Too Much to Just CODE Скотта Хансельмана за 30 марта.

Прочитал сегодня пост на ArsTechnica «Я знаю слишком много чтобы программировать быстро. Что мне делать?» — это обзор вот этого вопроса на StackOverflow:

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

Простой пример: раньше я просто записывал данные в файл. Теперь я думаю о правах доступа, занятии файла другим приложением, многопоточности, атомарных операциях, фреймворках, разных файловых системах, количестве файлов в директории, предсказуемых названиях временных файлов, качестве моего ГПСЧ, отключении электричества во время любой операции, адекватном API для моего кода, нормальной документации и так далее.

Это просто бомба, прямо про меня. Я тоже недавно задумывался, а не от возраста ли появляются такие проблемы, но я просто не настолько стар. Проблему создаёт огромный опыт вкупе со слишком глубоким обдумыванием задачи. Я опытнее многих, но, очевидно, не настолько опытный, чтобы не страдать от паралича анализа.
Читать дальше →
Всего голосов 252: ↑240 и ↓12+228
Комментарии130

Сравниваем производительность reflection в JDK8 и JDK7

Время на прочтение6 мин
Количество просмотров23K
Привет, Хабр!

Недавно, путешествуя по коду своего рабочего проекта набрел на довольно высоконагруженный spring бин, который производил обращения к методам объектов (иногда и объектов сгенерированных на лету классов) вызывая геттеры и сеттеры объекта через reflection. В бине уже был реализован кэш геттеров, однако я задался вопросом — насколько быстр reflection и можно ли сделать быстрее.


Читать дальше →
Всего голосов 43: ↑36 и ↓7+29
Комментарии13

Что Java 8 нам готовит

Время на прочтение4 мин
Количество просмотров58K
Пройдемся по новинкам и покодируем по-новому.

Итак, начнем по списку.

Допустим, имеется список.
List<Integer> numbers = Arrays.asList(1, 2, 3, 4, 5, 6);


Теперь вспомним, как мы итерировали в старые времена:
for (int i = 0; i < numbers.size(); i++){
 System.out.println(numbers.get(i));
}


Все здорово, но уж очень легко оступиться и поставить <= вместо < или начать с 1 вместо 0. В вышеприведенном коде мы полностью контролируем механику, мы держим в голове все движущие части. Это хорошо во многих случаях, и никто у нас этого не отобрал в Java 5, только добавили сахарку.
Читать дальше →
Всего голосов 79: ↑59 и ↓20+39
Комментарии147

Информация

В рейтинге
Не участвует
Откуда
Москва, Москва и Московская обл., Россия
Работает в
Дата рождения
Зарегистрирован
Активность