вторник, 31 января 2012 г.

С vs Java


сишники:
  • оо надо тут дернуть maallloc//
  • а тут 2 байта смещение..
  • а тут еще структурка вот такая
  • следи за порядком байт
  • а какой поток этим владеет? а сколько наносекунд контекст переключается?
  • нее.. 50ns это слишком долго, так мы не сможем обратывать 1М заявок меньше чем за секунду
  • упс..
явщики:
  • что-то стало лень объекты руками парсить.. давай напишем объект-маппер который будет генерить java код на лету и сразу компилить c помощью javac а результат он пусть пишет с использованием еще одиного фреймворка.. ну а этот фреймворк уже сам смапит в наш текстовый протокол поверх tcp\ip

вторник, 17 января 2012 г.

Программерская читалка



Давно хотел завести себе правильную читалку (ebook) чтобы было куда убивать время в дороге.
Основные требования были такие
  • e-ink экран, чтобы читать на солнце, и заряжать батарейку раз в пол года
  • 10" - чтобы можно читать техн. литературу без нарезки и конвертаций. Это очень важный пункт т.к. все доки часто или в pdf с картинками или в djvu.
  • всеядная по количеству форматов
  • никакого DRM и никаких ограничений на заливку книжек
  • планшет отпал из за маленького времени автономной работы и LCD-экрана

В итоге выбор пал на такой девайс



По прошествии 4х месяцев могу с уверенностью сказать что для чтения тех. литературы лучше девайса не придумать.

Hardware


Pocket book 902 (без Wi-Fi, и без сенсорного экрана - т.к. книжке это не нужно)

PocketBook Pro 902




Чехол Tuff-Luv
Чехол-обложка Tuff-Luv "Блокнот" для PocketBook Pro 902 и 903 (черный) F2_46



Software

PDF Cropper, утилита которая сама отрезает белые поля по краям (что очень актуально для A4)



Программа для редактирования, чтения и изготовления электронных книг. 


На долю владельцев маленьких читалов выпадает ад по конвертации.
Как сделать читабельный PDF из DJVU/PDF
Помогите сконвертировать книгу PDF---->ebook
 

воскресенье, 1 января 2012 г.

2012 Motivation пост

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

Умиляют люди и их пустой звон бокалов, каждый новый тост словно пук в муку и так год за годом. Это напоминает мне людей, обещающих себе начать новую жизнь с понедельника. А почему не сейчас?

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

Устраивают ли тебя твои достижения за прошедший год? Просрал отведенное время? Сейчас тебе нужно четкое понимание того, что ты хочешь. Ставь самые высокие цели, самые невыполнимые задачи и пусть именно их невозможность вдохновляют тебя в дальнейшем. Найди то, что тебе нравится и сделай это своей работой, рискуй. Риск это гениальное изобретение, которое поделит всех на победителей и проигравших.

(с) do4a

понедельник, 12 декабря 2011 г.

Бесплатный хостинг в amazon ec2

Удивительно, но при желании можно легко получить собственный виртуальный сервер в амазоновском облаке EC2 практически без затрат денег.

Мотивация

Для чего это может быть нужно?
  • поднять свой прототип сайта, проскейлить его если вырастет нагрузка
  • повесить себе прокси
  • хостить блог, картинки итп
  • просто держать бэкапы в облаке (S3)
  • создать софтовый RAID поверх S3 хранилища
  • сделать примерный образ желаемой машины, и расклонировать ее на 100 нодов, причем за некоторые можно платить как за обязательные, а другие будут запускаться только при определенной нагрузке

Тарифы

У amazon'a есть различные типы инстансов. Бесплатен Micro:
Micro Instance
--------------
613 MB memory
Up to 2 EC2 Compute Units (for short periodic bursts)
EBS storage only
32-bit or 64-bit platform
I/O Performance: Low
API name: t1.micro
На него действуют следующие ограничения:
AWS Free Usage Tier (Per Month):
--------------
750 hours of Amazon EC2 Linux Micro Instance usage 
    (613 MB of memory and 32-bit and 64-bit platform support)
    – enough hours to run continuously each month*
750 hours of an Elastic Load Balancer plus 15 GB data processing*
10 GB of Amazon Elastic Block Storage, plus 1 million I/Os and 1 GB of snapshot storage*
5 GB of Amazon S3 standard storage, 20,000 Get Requests, and 2,000 Put Requests*
15 GB of bandwidth out aggregated across all AWS services*
25 Amazon SimpleDB Machine Hours and 1 GB of Storage**
100,000 Requests of Amazon Simple Queue Service**
100,000 Requests, 100,000 HTTP notifications 
1,000 email notifications for Amazon Simple Notification Service**
10 Amazon Cloudwatch metrics, 10 alarms, and 1,000,000 API requests**
На более серьезный setup можно прикинуть расходы в этом калькуляторе.
Если очень грубо, то за 60$ в мес можно получить 1.7Ghz x 1Core, 2Gb ram, 100Gb места и копеечный траффик.

Настройка

Ставим putty и puttygen отсюда

Создаем аккаунт в amazon через admin console. Для этого понадобится действующая кредитка VISA или MasterCard. Как и многие другие магазины они ее проверяют списывая 1 USD.

Далее

Выбираем регион (самый ближайший - IRELAND)
Жмем кнопку Launch instance
Выбираем ОС, по умолчанию предлагают Basic 32-bit Amazon Linux AMI (бесплатный - только linux). При желании поставить LAMP сразу можно ткнуть вкладку Community AMIs и найти там что-то из этого списка готовых образов. Также можно и windows но это дороже.
На вкладке Instance details проверяем что мы делаем Micro инстанс (t1.micro); вводим имя хоста.
Создаем пару ключей для авторизации чз Putty. Скачиваем pem-файлик.
Создаем новую группу безопасности: в поле type = ssh, source = 0.0.0.0/0, жмем add rule.
Идем на вкладку Instances, как только сервер запущен мы сможем залезть в консоль по ssh.
Ура.. Теперь у нас есть свой сервер :].

Теперь цепляемся по ssh к нему.
Запускаем Puttygen, открываем в нем скачанный pem-файл, жмем кнопку import.
Находим dns - имя хоста в админ консоли.
Запускаем путти, коннектится будем под именем ec2-user, поэтому коннект лучше называть ec2-user@dns-host-name.
В свойствах соединения, в Connection -> SSH -> Auth добавляем *.ppk файл сгенеренный нами ранее с помощью puttygen.
Жмем save. Потом соединяемся (user = ec2-user, пароль не нужен.. он в публичном ppk ключе).
А вот и шелл..