4 марта 2012 года был просто сумашедший день для всех нас. Для нас — не только граждан России, но и авторов сервиса Web-наблюдатель. Сейчас, когда мы немного отошли от всего безумия прошедших дней я хочу рассказать вам о том как мы писали сервис, чему научились и собираемся ли мы останавливаться на достигнутом.
Читать полностью »
Архив за 05 апреля 2012
Web-наблюдатель. Как разрабатывался сервис
2012-04-05 в 23:03, admin, рубрики: evil martians, Facebook, выборы, выборы 2012, голос, сегалович, Социальные сети и сообщества, стартапы, электронное правительство, яндекс, метки: evil martians, Facebook, выборы, выборы 2012, голос, сегалович, яндексЯндекс.Диск — первый взгляд
2012-04-05 в 20:40, admin, рубрики: DropBox, Облачные вычисления, облачные хранилища, облачный хостинг, синхронизация, хостинг, яндекс, Яндекс.Диск, метки: DropBox, облачные хранилища, облачный хостинг, синхронизация, яндекс, Яндекс.Диск
Утром 5 марта Яндекс внезапно представил широкой общественности свой новый сервис — Яндекс.Диск. Запись в корпоративном блоге Яндекса обещала 10 гигабайт бесплатного места под хранение файлов, программы-клиенты под Windows и Mac OS X, мобильные приложения для iOS и Android и много-много радости детишкам любого возраста.
При этом запись не содержала ответа на самый главный вопрос — будет ли это просто склад файлов, или полноценный сервис для синхронизации вроде Dropbox. Лучший способ узнать ответ — попробовать самому. И я пошёл пробовать.
Читать полностью »
Реализация exceptions на plain C
2012-04-05 в 20:18, admin, рубрики: c++, exception, метки: c++, exceptionПродолжение вот этой статьи habrahabr.ru/post/131212/, где я собирался показать, как «и ошибки удобно обрабатывать и exceptions при этом не использовать», да всё руки не доходили.
Итак, будем считать, что у нас ситуация, что «настоящие C++ exceptions» использовать нельзя — например, языком разработки является C или компилятор С++ для нашей платформы не поддерживает exceptions (или формально поддерживает, а реально этим пользоваться нельзя). Это, конечно, нетипично для desktop приложений, но вполне обычно для embedded разработки.Читать полностью »
Конечные автоматы. Пишем ДКА
2012-04-05 в 19:24, admin, рубрики: perl, конечный автомат, Программирование, теория автоматов, метки: perl, конечный автомат, теория автоматовЕсли вы когда-нибудь пытались написать своего бота, программу-переговорщик (negotiator), интерпретатор протокола связи и тому подобные вещи, то наверняка сталкивались с конечными автоматами. Данная тема в принципе не представляет большой сложности, но если вдруг у вас не было курса «теории автоматов», милости прошу под кат.
Сегодня мы попытаемся создать простой детерминированный конечный автомат. Мне вдруг захотелось написать его на Perl'е, но так как мы не будем использовать никаких специфических трюков, перенести общую концепцию на любой другой императивный язык не составит большого труда.
Читать полностью »
Samsung анонсировал скоростные SD-карты
2012-04-05 в 19:21, admin, рубрики: Samsung, карты памяти, Смартфоны и коммуникаторы, метки: Samsung, карты памяти
Сейчас, когда производительность аппаратного ядра даже в смартфонах очень высока, производители принялись за накопители информации, большая часть которых до сих пор является слабым звеном во всей информационной цепочке. Одним из решений проблемы медленной записи/считывания информации являются твердотельные накопители — большая часть владельцев ноутбуков и ПК, которые переходят на твердотельные накопители, не возвращаются к жестким дискам. Что касается карт памяти, то производительность большей части таких устройств оставляет желать лучшего.
Организация рабочих потоков: синхронизационный канал
2012-04-05 в 19:00, admin, рубрики: c++, multithreading, SyncChannel, synchronization, WinAPI, Проектирование и рефакторинг, системное программирование, метки: multithreading, SyncChannel, synchronization, WinAPIПредставте себе типичное приложение:
Есть рабочий поток движка, выполняющий какую-то функциональность, допустим копирование файлов.
Данный поток должен периодически сообщать информацию о текущем копируемом файле, а также уметь обрабатывать ошибки, допустим ошибка нехватки места на диске.
Графический интерфейс такого приложения должен позволять запускать процесс копирования файлов, уметь приостановить копирование, а также, в случае ошибки, отобразить соответствующий диалог с вопросом к пользователю.
Казалось бы, как можно допустить ошибку в такой типичной ситуации?
Читать полностью »
Рабочие потоки — синхронизационный канал
2012-04-05 в 19:00, admin, рубрики: c++, multithreading, SyncChannel, synchronization, WinAPI, Проектирование и рефакторинг, системное программирование, метки: multithreading, SyncChannel, synchronization, WinAPIПредставте себе типичное приложение:
Есть рабочий поток движка, выполняющий какую-то функциональность, допустим копирование файлов.
Данный поток должен периодически сообщать информацию о текущем копируемом файле, а также уметь обрабатывать ошибки, допустим ошибка нехватки места на диске.
Графический интерфейс такого приложения должен позволять запускать процесс копирования файлов, уметь приостановить копирование, а также, в случае ошибки, отобразить соответствующий диалог с вопросом к пользователю.
Казалось бы, как можно допустить ошибку в такой типичной ситуации?
Читать полностью »
Понимаем декораторы в Python’e, шаг за шагом. Шаг 2
2012-04-05 в 18:49, admin, рубрики: decorator, decorators, python, step-by-step, декораторы, перевод, разработка
И снова доброго времени суток всем читателям!
Спасибо, за проявленый интерес к первой части перевода, надеюсь, вторая вас так же не разочарует.
Итак, в первой части данной статьи мы совершили базовое знакомство с декораторами, принципами их работы и даже написали свой вручную.
Однако, все декораторы, которые мы до этого рассматривали не имели одного очень важного функционала — передачи аргументов декорируемой функции.
Что ж, исправим это недоразумение!
Читать полностью »
Плагин для получения всеобъемлющей статистики о текущей страничке
2012-04-05 в 18:33, admin, рубрики: chrome, Google Chrome, плагин, статистика, метки: chrome, плагин, статистикаЭто мой первый сколько-нибудь крупный опыт в программировании. И я очень надеюсь, плоды труда окажутся кому-либо съедобными.
Что ж, прошу любить и жаловать: StatisFire — хромо-плагин для быстрого отображения кучи различной статистики.
Читать полностью »
Консольный скринкастинг
2012-04-05 в 18:32, admin, рубрики: console, linux, open source, script, terminal, метки: console, script, terminalПривет, читатели!
Тема консольного скринкастинга уже поднималась на хабре, но я хочу рассказать вам о чем-то лучшем. jeck_landin рекомендует утилиту script и scriptreplay для записи и воспроизведения скринкастов. А я буду рекомендовать вам свой велосипед и объясню чем он лучше :)
Читать полностью »