Архив Январь 5, Вторник, 2010

Разработка / encached: кеширующий сервер

Нет комментариев »

Идея написания сервера кеша приходила ко мне давно, но небыло подходящего повода и инструмента, чтобы начать над ним работу. Сделать свой сервер кеша мне хотелось по двум причинам: опыт, возможность легко добавлять нужные мне функции (кто видел код memcached, тот меня поймет). Основной проблемой для меня был C++. Несмотря на то, что я нередко с ним сталкиваюсь, он мне не нравится совсем. Я не буду начинать холивар и писать о его недостатках. Он мне не нравится так же как кефир с детства: мы с ним несовместимы. Поэтому для меня было большой новостью существование FreePascal. Когда-то давно у меня был опыт работы на Delphi, поэтому с Pascal я был «на ты». Особенно меня удивило то, что FreePascal оказался кроссплатформенным (чем Delphi совсем не блистал).


DIY или Сделай Сам / Делаем таймер или первый проект на ПЛИС

Нет комментариев »

Начну свою первую статью с того, что сообщу: в предмете статьи я сам новичок, но выбрал именно такую тему. Объясню почему. Читаю хабр уже достаточно долго и мне всегда были интересны топики тех, кто сам в настоящий момент изучает то, о чем повествует. Такие статьи всегда понятны, всегда находят свою аудиторию и всегда предают читающему интерес и энтузиазм автора, который у новичков в любой области обычно зашкаливает!



Так вот, недавно я заинтересовался темой ПЛИС, столкнувшись с ними на учебе, прочитал много всяких доков и заказал себе Starter Kit для экспериментов. Теперь, получив полигон для экспериментов по почте и проведя первый эксперимент, я готов поделиться с хабраюзерами. Надеюсь будет интересно.


Коллективный разум / Юзабилити паролей

Нет комментариев »

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



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



http://itickr.com



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



Язык программирования Python / Pyrant+Models — легчайшая замена Django ORM*

Нет комментариев »

Тихо и незаметно вышла ноль-первая версия библиотеки Pyrant, т.е. Pythonic Tyrant.



Pyrant — это полноценная питонья обвязка для Tokyo Tyrant, сетевого интерфейса для Tokyo Cabinet.



Tokyo Cabinet — это современное, легкое, гибкое и суперское хранилище данных (DBM). Оно поддерживает несколько типов БД, включая как простейшее key/value, так и «табличное», а вернее — документо-ориентированное. Последнее ставит Tokyo в один ряд с такими славными продуктами как CouchDB, MongoDB и др., при этом TC/TT значительно проще и легче, а поэтому быстрее. Кроме того, он поддерживает достаточно сложные запросы по данным (см. список операторов) с различением строчных и числовых значений. И еще для Tokyo Cabinet можно писать расширения на Lua.


Google / Nexus One

Нет комментариев »


google.com/phone



Как и предполагалось, гуглофон всё же появился, не смотря на протесты разных умников



Из позитивного:

Wi-Fi (802.11b/g/n),

процессор 1GHz,

большой хороший экран,

2 микрофона.



Из негативного:

девайс не дешёвый, как многие ожидали: (530$ либо 180$+контракт на 2 года),

батарейка всё та же, как и у всех (1400 mAH, держать будет 1 день),

Sorry, the Nexus One phone is not available in your country (в Европе будет с весны)

multitouch отсутствует



По-моему гугл пропускает единственный шанс в своей жизни сломать Apple гешефт.

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



Ad-supported cell phone, кто, как не гугл, мог бы его сделать? Многие надеялись, что гуглу под силу продать свой девайс по бросовой цене, дабы стать в одночасье королём горы. Однако довольно обыденная пресс-конференция расставила все точки над i. Сломя голову в этот рынок никто бросаться не станет, а шерудить в гнезде с производителями железа, которые с опаской, но ставят на свои смартфоны Андроид, это значит дать шанс Maemo, bada, WM7 и прочим начинаниям. В отличие от когда-то Apple, гуглу на этом рынке есть что терять.



В принципе довольно трезвое решение. Ибо с таким железом как Nexus One революцию не сделать — по сравнению с инновациями, с которыми iPhone пришёл на рынок, Nexus One просто ещё один смартфон. На нём есть Google Voice, вот что для начала должно привлечь покупателей. Правда большинство просто захотят Google Voice на своих старых андроид-фонах.


Хостинг / Как сделать бюджетный геокластерный хостинг

Нет комментариев »

В качестве распределенного хостинга возьмем классический пример — создание блогосервиса на основе mu-Wordpress.

Задача — при ограниченном бюджете собрать отказоустойчивую (насколько это возможно) геораспределенную систему. Соответственно все оборудование берется в аредну в различных Дата-Центрах.

И тут следует сказать что не все Дата-Центры одинаково полезны. Высококачественные сдают сервер за 800$, а у низкокачественных вполне можно взять примерно такой же сервер в аренду уже за 100$. И именно эти особенности надо учитывать при создании геокластера.



Теперь о небольших хаках. По умолчанию в mu-Wordpress функция отдачи загружаемого контента сделана крайне неудачно — через PHP. Соответственно она была заменена на загрузку отдельным сервисом и вставкой загружаемого контента прямой ссылкой на статику.

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

Финальным хаком стала система синхронизации БД — каждый INSERT/DELETE/UPDATE выполнялся на «соседе». Получился такой себе софт-рейд в контексте MySQL+PHP.


Open source / Декабрьский обзор FireForge.net

Нет комментариев »

«Интеллект — это способность избегать выполнения работы, но так, чтобы она при этом была сделана»

Линус Торвальдс





На сайте http://fireforge.net/ находится большое количество open source проектов, которые делают наш мир более радостным и доступным. В декабре туда было добавлено 6 новых проектов и 10 новостей. Подкатом небольшой обзор всего этого.


Железо / [Перевод] Придётся ли Intel убрать из компилятора функцию, намеренно выдающую плохой код для процессоров AMD?

Нет комментариев »

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



К сожалению, программы, скомпилированные с помощью компилятора или библиотек Intel, работают значительно хуже на процессорах AMD и VIA.


Domainer / [Ссылка] Украина: Перехвачен домен партии Юлии Тимошенко

Нет комментариев »

Известный в Украине хакер, Дмитрий Голубов увел у кандидата в будущие президенты Украины Юлии Тимошенко «Ідеальну Країну». Домен kraina.org.ua был удален в виду непродления, и зарегистрирован на имя Andriy G. Tereshchenko.

Дмитрий Голубов, лидер Интернет партии Украины: Сегодня в 5 января в 12.01 домен стал доступен для регистрации. Это именно тот сайт, который Юлия Владимировна рекламировала на тысячах бигбордов, призывая людей помочь ей в развитии Украины.


Информационная безопасность / Оптимальная длина и состав пароля

Нет комментариев »

Введение.





На фоне многочисленных постов о паролях решил провести небольшое исследование.



В настоящее время парольная защита является самым распространённым и, к сожалению, самым не надёжным методом защиты. Существует много статей на тему «Как составить стойкий пароль», но мне не встречались статьи, где приводятся реальные данные о надёжности паролей.



В исследовании проводится оценка надёжности паролей противостоять атакам грубой силы. Наиболее эффективный метод грубой силы при переборе паролей для хеш-функций является составление радужных таблиц.



Расчёты проводятся для трёх хеш-функций md5, sha1 и sha2 (модификация sha512). В расчёт не берутся данные о коллизиях в данных хеш-функциях, так как с практической точки зрения в реальном подборе пароля они не помогут, да и достойных реализаций в ПО на настоящий время в открытом доступе нет. В исследовании принимают участия пароли длиной 7, 8, 10 и 12 символов трёх различных алфавитов.



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