Search
Write a publication
Pull to refresh
0
0
Mirror @Mirror

User

Send message

Альфа-версия компьютера Raspberry Pi за $25 пошла в производство

Reading time1 min
Views6.2K

На фото к компьютеру подключен 12-мегапиксельный камера-модуль

В мае 2011 года гики всего мира с восхищением обсуждали изделие британского разработчика игр Дэвида Брабена — компьютер-флэшку Raspberry Pi за $25. Это полноценный компьютер общего назначения под Ubuntu 9 с HDMI-и USB-разъёмами для подключения монитора, клавиатуры и мышки. Спустя два месяца спецификации материнской платы утверждены, и вот теперь альфа-версия Raspberry Pi отправлена в производство.
Читать дальше →

Избегаем распространенных ошибок в HTML5 разметке

Reading time8 min
Views120K
HTML5 Уважаемые хабровчане, представляю вам вольный перевод статьи Avoiding common HTML5 mistakes. Здесь мы рассмотрим частые ошибки в HTML5 разметке с точки зрения семантики, и как их избежать.
Читать дальше →

Фриланс и вывод денег: личный опыт

Reading time4 min
Views105K
Добрый день, жители хабра! Я занимаюсь фрилансом (хотя это слово не очень люблю) на протяжении последних четырёх лет. В этом небольшом топике мне хотелось бы рассказать о различных способах вывода заработанных непосильным трудом денежных средств. Для начала стоит сказать о том, как именно организована моя работа. Я использую всего два варианта – oDesk и работа напрямую. С клиентами из России работать ещё не доводилось, так что о таких знакомых вариантах вывода денег, как WebMoney и Яндекс.Деньги речь идти не будет.

Читать дальше →

Охранная система, проект умный дом (часть 2)

Reading time3 min
Views8.5K
охранная системаВ предыдущем посте был описан начальный этап создания охранной системы, с подробным описанием выбора и подключения датчиков к микроконтроллеру, передачи информации на компьютер и создание макета комнаты для тестирования и отладки самой системы. Прочитать об этом можно здесь на хабре и более подробно вот здесь, на сайте проекта. И в конце той статьи, мы поделились своими планами по поводу дальнейшего развития проекта, которые были скорректированы после некоторых комментариев (за это огромное спасибо).
Ниже, после хабраката будет небольшой рассказ, как можно использовать для оповещения — социальные ресурсы, а в частности twitter, а так же как сделать из подручных средств поворотную камеру, управляемую от микроконтроллера, ну и в конце будут итоги и планы по развитию.
Читать дальше →

16 практических советов по работе с CouchDB

Reading time10 min
Views19K
Где-то год назад при разработке нашего проекта мы дошли до некой точки развития, когда или начинается кропотливая настройка и оптимизация MySQL-сервера, или начинается опять же кропотливое изучение запросов, которые идут в БД. Так получилось, что именно тогда был бум статей про MongoDB, CouchDB и прочие NoSQL базы данных и соблазн попробовать их на живом проекте был крайне велик.

При выборе главную роль сыграла фраза «CouchDB предназначен именно для веба», а также то, что для доступа не требовались никакие прослойки — доступ осуществляется по любимому мной REST, а API выглядит очень простым и изящным. Вдобавок к этому CouchDB имеет крайне удобный веб-интерфейс для администрирования Futon, чего на тот момент не было у MongoDB, а также железную устойчивость к падениям.

Забегая вперед скажу, что выбор полностью себя оправдал — мы избавились от огромного количества проблем при разработке и проектировании БД, код проекта сильно упростился и стал гораздо лучше структурирован, но самое главное — тот самый поворот в сознании, который нам дал CouchDB. За это время я лично набил множество шишек при разработке и хотел бы поделиться опытом с Хабрасообществом. Эти советы не для начинающих — это советы по использованию CouchDB на живом production.
Читать дальше →

Регулярные выражения для валидации распространенных видов данных

Reading time2 min
Views500K
Для проверки текстовых полей на валидность обычно используют регулярные выражения. Существует несколько наиболе распространенных видов таких даных, как например номер кредитки, дата в определенном формате и т. д. На сайте html5pattern.com собирается коллекция регулярных выражений для таких данных (там это позиционируется, как возможное содержимое html5-атрибута pattern у inpit-элементов, но эти регулярные выражения можно использовать и для привычной валидации с помощью javascript). Актуальные для российской аудитории примеры, вместе с соответствующими регулярными выражениями вы можете посмотреть под катом.
Читать дальше →

Видео с конференции RailsClub'Moscow (30 апреля 2011г.)

Reading time1 min
Views1.2K
1. Галинский Дмитрий «Генерация PDF и ODF»
В лекции идёт речь об инструментах для генерации отчётов, счетов и форм для печати в формате PDF. Лектор рассматривает преимущества и недостатки разных инструментов, приводит примеры их использования.

2. Руденко Андрей «Эффективное %s с ZMQ»
ZMQ — что, как и зачем оно вам надо.

3. Моисеев Сергей «Пакетная обработка в RoR»
Пакетная обработка, на примере Сервиса по массовой обработке большого количества книг. Книги из Pdf в SWF, с поддержкой выделения и копирования из полученных книг текста. Очень часто книги были в виде картинок, вставленных в pdf, только для того чтобы соблюсти последовательность страниц.
Система из программ print2flash (для печати нескольких книг сразу). Всё под win окружением.

4. Бараблин Михаил «Rvm и наши серверы»
Как работать с Ruby, gem и не болеть.

5. Лазурейкис Павел «Интеграция RoR-приложений с социальными сетями»
Виджеты для Вконтакта, использование OmniAuth, Devise+OmniAuth

6. Карпунин Дмитрий «Front-end Rails-приложений»
Front-end Rails-приложений основанный на БЭМ (Блок, Элемент, Модификатор), семантическая вёрстка, IE6, Применение БЭМ на практике, Структура стилей.

Приятного просмотра.
Читать дальше →

Сервис Zingaya теперь доступен для всех регионов России

Reading time1 min
Views800


Мы рады сообщить, что теперь сервис Zingaya поддерживает перенаправление звонков с сайта не только на Москву и Санкт-Петербург, но и на стационарные номера телефонов всех остальных регионов нашей Родины.

Доступны 3 тарифных плана, которые по понятным причинам дороже, чем в случае с редиректом на столичные номера.

P.S. В ближайшее время заработает дополнительный функционал для аналитики, чем-то похожий на Google Analytics только про звонки, а не про посещения.

RentFilter.ru — снимите квартиру без посредников

Reading time2 min
Views2.3K

Не хотите платить агентам по недвижимости комиссию?



Новый проект www.rentfilter.ru подтверждает: снять квартиру без помощи риэлтеров — реально! Да, зайдя на любой сайт с объявлениями об аренде квартир, вам придется позвонить не по одному десятку номеров, прежде чем найдете объявление действительно от владельца квартиры, а не от риэлторского агентства. Но и это может случиться, только если вам очень повезет.

RentFilter.ru поможет снять квартиру без посредников. Наши роботы круглосуточно фильтруют объявления об аренде помещений и оставляют только те, которые подают сами хозяева квартир. Просто позвоните по указанному в объявлении телефону, посмотрите квартиру, изучите все документы на право собственности, подпишите договор и — пакуйте чемоданы. Кстати, на RentFilter.ru можно прочитать все, что нужно знать, если вы решили снять квартиру без агентской помощи. Здесь же можно скачать стандартный договор аренды жилого помещения.
Читать дальше →

Защита пароля при передаче по открытому каналу (часть 1)

Reading time2 min
Views38K
Использование https при аутентификации уже давно стало правилом хорошего тона. Однако, необходимость покупки сертификата приводит к тому, что многие владельцы web-ресурсов по прежнему используют для аутентификации открытый канал и ваши пароли доступа могут быть перехвачены злоумышленником, имеющим доступ к сети, в которой вы работаете. Следует отметить, что использование https в общем случае не гарантирует защиты от перехвата передаваемого трафика. На сегодняшний день существуют решения, основанные на использовании специальных прокси и доменных политик, позволяющие успешно читать https трафик в корпоративных сетях. Далее о том, как все же защитить пароль от перехвата.
Читать дальше →

Как и почему следует разбивать диск в никсах

Reading time3 min
Views64K
Один из довольно частых вопросов на различных околониксовых ресурсах — вопрос о том, какую схему разбивки дисков использовать. С виду простой вопрос на самом деле таит в себе множество подводных камней. Если, конечно же, дело касается серверов. На десктопах все гораздо скучнее и серее.

Универсального решения в данном вопросе нету, просто есть некоторые аспекты, которыми следует руководствоваться при выборе схемы разбивки.
Читать дальше

Большие файлы и Sinatra

Reading time2 min
Views2K
Недавно столкнулся с интересной проблемой, когда попытка отдать большой файл через Sinatra::Helpers.send_file приводила к отжиранию всей оперативной памяти (типичный размер файла — 14Gb).

Исследование показало, что Sinatra сама читает и отдает файл кусками по 512 байт, но web-сервер thin (а также WEBrick) буферизует вывод в оперативной памяти на своем уровне, что и приводит к таким печальным последствиям.

Для решения проблемы достаточно оказалось перейти на web-сервер Rainbows (web-сервер, базирующийся на коде unicorn, но предназначенный для работы без проксирования, для медленных клиентов и/или сервисов). Но при отдаче больших файлов процесс кушал порядка 30% CPU на одном ядре.

Rainbows позволяет оптимизировать отдачу файлов, используя, к примеру, гем sendfile, который предоставляет соответствующие API операционной системы. Но для этого необходимо, чтобы отдача файла шла через Rack::File API.

В текущей master-ветке Sinatra метод send_file переписали, используя API Rack::File, поэтому мы можем просто бэкпортировать соответствующий функционал в существующие версии гема Sinatra:
Читать дальше →

Элемент input в html 5, мультиаплоад

Reading time3 min
Views56K
У элемента input в HTML 5 появился атрибут multiple, с помощью которого мы можем выбрать для загрузки несколько файлов. Этот атрибут принимает только одно значение «multiple», в живую будет выглядеть так:

<input type="file" multiple="multiple" name="files[]" />


Обратите внимание на name, мы явно в нем указали, что это массив.

Сразу появляется вопрос, какой браузер это новшество не понимает, ответ легко предсказуем, это семейство Internet Explorer. Начиная с 9 версии и ниже, они не поддерживают этот функционал и просто проигнорируют атрибут, искренне надеюсь что в финальной 10 версии они это поправят.
Кроме того что, мы дали пользователям загрузить сразу много файлов, мы должны позаботиться о них, и дать им возможность загрузит именно те файлы которые нам необходимы. И тут на помощь приходит еще один новый атрибут accept. Который принимает "MIME Media Types".

<input type="file" multiple="multiple" name="files[]" accept="image" />

Читать дальше →

RubyGems — подробно

Reading time4 min
Views45K

Для начала определимся с понятиями:
RubyGems — фрэймворк для установки и запаковки Ruby библиотек и приложений.
gem — пакет(файл) с библиотекой или приложением. Имеет стандартизированный вид и расположен в хранилище в сети.
gem command tool — RubyGems предоставляет утилиту «gem» для работы с gem пакетами из командной строки. Она интегрирована с Ruby и позволяет получать доступ к установленным gem'ам как к библиотекам.

В чем же предназначение RubyGems?

До того как появилась RubyGems, для установки новой библиотеки нужно было найти, скачать её, попытаться установить, часто лишь для того, чтобы убедиться в отсутствии нужных зависимостей. Если же библиотека запакована с помощью RubyGems, достаточно попросить RubyGems сделать это за нас и получить установленную, интегрированную библиотеку со всеми нужными зависимостями. В дополнение ко всему утилита gem — платформонезависима, неважно какую ОС вы используете, везде механизм установки библиотек и приложений будет одинаков. Здорово, правда?

Под катом будут описаны:
1) Поиск, получение деталей, установка gem's
2) Доступ документации по установленному gem
3) Использование установленных gem's
4) Работа с версиями gem's
5) Создание собственных gem's

Читать дальше →

Интерфейс банкоматов Сбербанка 4 месяца спустя

Reading time1 min
Views6.6K
Все наверное помнят топик, где обсуждось убожество интерфейса банкоматов Сбербанка.
Официальный представитель Сбербанка sberbank сначала пенял на то, что конструктивной критики почти нет, только и делаем, что говном поливаем, на что были сформулированы простые запросы:

1. Кнопка «Баланс» должна называться «Баланс» и находиться на первой странице.
2. Кнопка «Выдача наличных» должна называться «Выдача наличных» и находиться на первой странице.

sberbank ответил:
… конструктивные жалобы — это подарок для нас. Из похвального отзыва не вынести столько полезного и не улучшить качества сервиса. Уже на ближайшей встрече в субботу будем обсуждать с IT-департаментом полученные жалобы с хабра.
Я очень благодарна всем, кто помогает нам стать лучше. Спасибо!
Читать дальше →

Dropbox врал пользователям о защите данных, подана жалоба в FTC

Reading time3 min
Views11K
Против компании Dropbox подана жалоба (PDF) в Федеральную торговую комиссию с требованием разбирательства по поводу обмана 25 млн пользователей этого хостинга. С момента начала своей деятельности Dropbox заявляла, что их сотрудники не имеют возможности получить доступ к зашифрованным файлам пользователей. В справочном разделе было написано, что «все файлы зашифрованы AES-256 и не могут быть расшифрованы без вашего пароля».

Недавно выяснилось, что это не так. Оказалось, что сотрудники Dropbox могут расшифровывать файлы, если сочтут это необходимым. 13 апреля 2011 года вторая часть предложения (выделена курсивом) была удалена из справочного раздела.
Читать дальше →

US Virtual Bank Account, или как вывести деньги с зарубежных платежных систем

Reading time6 min
Views63K

Преамбула.


В связи с бурным развитием мобильных устройств и ОС Google Android в частности, интерес к разработке программного обеспечения под данную платформу весьма закономерное явление. Как оказалось, он мало чем отличается от обычной разработки на Яве под десктоп/веб, а с учетом возможности использования «стандартного» IDE (Eclipse) путем скачки и встраивания SDK Андроида, а также наличия исчерпывающей документации многие технические вопросы снимаются сами собой. Концептуальный аспект (т.е. идея для реализации в виде ПО) также не заставила себя ждать, благо платформа сравнительно новая, не смотря на недавно вышедшую уже версию 2.1, и конкурентная среда соответственно не такая насыщенная, если взять, к примеру, разработку под тот же iPhone. (Тут могла бы быть развернутая часть о самом ПО, но ввиду некоторых нюансов, таких как незаконченность проекта и отсутствие конкретных результатов, пока ее пропустим).
Оставался последний, и, естественно, самый интересный (логично, не правда ли?) вопрос – денежный, а конкретно – как правильно вывести честно заработанные дензнаки, полученные от продажи ПО на Android Market.
Piccy.info - Free Image Hosting
Вдаваться подробности не буду, все-таки статья ориентирована на тех, кто примерно ориентируется в данной теме, скажу коротко — в данном случае под прицелом оказывается сервис обработки онлайновых платежей Google Checkout, который с нерезидентами США изначально не работает. Насколько мне известно, прямых путей решения данной проблемы нет, поэтому пришлось искать обходные дорожки.
Читать дальше →

Новое в Payoneer (бизнес счет) или сам себе режиссер

Reading time3 min
Views4.6K
imageДа, это свершилось! О чем собственно речь: в системе Payoneer появилась возможность получить бизнес-счет. Пока эта фича в закрытом бета-тестировании, но если Вы уже являетесь обладателем карты Payoneer, и на нее более менее регулярно приходят платежи от партнеров, то никакой проблемы с получением расширенного функционала для Вашего счета не возникнет.
Ниже я подробно со скриншотами покажу и объясню, как это работает и опишу, зачем мне это надо. Поехали.
Читать дальше →

Torrent-файл. Что же у него внутри?

Reading time7 min
Views57K

Введение


image
Добрый день.
Использую, как и многие, крупный торрент-трекер — rutracker.org, однако есть одна особенность которая меня раздражает.
Это добавление в список трекеров адреса ix*.rutracker.net, который служит для непонятных мне целей. Однако который часто (у меня — практически всегда) выдаёт ошибки (502 Bad Gateway и 0 No Response). Торрент-клиент (у меня Transmission) помечает торрент сломанным. Что само собой довольно сильно мне мешает. Особенно если учесть особенность Transmission — она задаёт статус торрента по последнему ответу трекера. То есть опрашиваем ix*, он возвращает ошибку, торрент помечается как Broken, через n минут/секунд опрашивается следующий трекер из списка — bt*.rutracker.org или retracker.local, которые возвращают успешный код и торрент снова становится нормальным. Такая чехарда не особо меня радует.

Решение банально — убрать этот нехороший адрес из списка. Однако файлов у меня много, из каждого вручную вырезать совсем не хочется, да и дополнительное действие при добавлении нового торрента выполнять тоже не было никакого желания. Поэтому принял решение разобраться в формате и автоматизировать удаление трекера из списка.
Читать дальше →

Zen coding — пишем HTML/CSS быстрее

Reading time1 min
Views52K
Добрый день смотрим сразу как это работает:



Zen Coding
chikuyonok — Сергей Чикуёнок
pepelsbey — Вадим Макеев

Этот способ ускоренного написания HTML и CSS кода разрабатывается Сергеем Чикуёнком, который «знает толк в извращениях».

HTML код пишется на CSS манеру:
div#content>h1+p

Нажимаем нехитрое комбо на клавиатуре (Ctrl+,) и получаем результат:
<div id="content">
    <h1></h1>
    <p></p>
</div>
Читать дальше →

Information

Rating
Does not participate
Location
Россия
Date of birth
Registered
Activity