Search
Write a publication
Pull to refresh
34
0
Дмитрий @Keyten

JavaScript

Send message

Поддержка камеры и распознавание цифр в браузере «Опера»

Reading time3 min
Views6.7K
Я вчера заморочился на отличненько. Мне показалось скучным и грустным вводить цифры счёта за квартиру в окошко «Госуслуг» и решил сделать автоматическую распознавалку чисел, попутно изучив работу с камерой из браузера.
Читать дальше →

Grab — python библиотека для парсинга сайтов

Reading time13 min
Views150K
Лет пять-шесть назад, когда я ещё программировал преимущественно на PHP, я начал использовать библиотеку curl для парсинга сайтов. Мне нужен был инструмент, который позволял эмулировать сессию пользователя на сайте, отсылать заголовки обычного браузера, давать удобный способ отсылки POST-запросов. Сначала я пытался использовать напрямую curl-расширение, но его интерфейс оказался очень неудобным и я написал обёртку с более простым интерфейсом. Время шло, я пересел на python и столкнулся с таким же дубовым API curl-расширения. Пришлось переписать обёртку на python.
Читать дальше →

Меценатство (спонсорство) и складчина (краудфандинг): две разные формы финансирования разработок шрифтов

Reading time5 min
Views4.7K
Любителей новых шрифтов с поддержкою кириллицы наверняка порадует известие о том, что даровитый и плодовитый дизайнер-шрифтовик Иван Гладких, более известный как Джованни Лемонад (Jovanny Lemonad), объявил о скором выходе в свет двух новых бесплатных шрифтов с русскими буквами.

Во-первых — шрифт Russo:
[шрифт Russo]
(Хотя в своём блоге Лемонад только анонсировал этот шрифт, фактически он ужé есть в Google Web Fonts под именем Russo One.)

Во-вторых — шрифт Stalin, итог переработки (и дополнения) шрифта Metro:
[шрифт Stalin]

Я уверен: оба они станут приятным дополнением к тем бесплатным шрифтам с кириллицею, которые Лемонад рисует сам и собирает от других шрифтовых дизайнеров. За несколько лет там подобралась обширная коллекция (чуть более трёх десятков шрифтов и семейств): «Prosto», «Upheaval Pro», «Captcha Code», «Zhizn», «Flow» (и «Flow Bold»), «Powerview», «Hardpixel», «Bicubik», «Hattori Hanzo Light», «Fontin Sans Cyr», «Airport», «Furore», «Bender», «Epool», «Dited», «Unimportant», «Metro», «Days», «Otscookie», «Philosopher», «Molot», «London», «20 db», «Neucha», «Cuprum», «Нобр первый», «Нобр второй», «Нобр третий», «Puzzle», «SuwiKisu» и «Жопа».

Эта новость и сама по себе заслуживает пристального внимания, но для меня она послужит также поводом поговорить со всеми вами о том, что Гладких ищет спонсора.

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

Интерактивная визуализация данных Envision.js

Reading time1 min
Views5.3K
Envision.js библиотека для создания быстрых динамических и интерактивных визуализаций данных на HTML5.


Возможности:

1) Визуализация в реальном времени.
2) Временная шкала
3) Визуализация валют ( как на яндексе прям )
4) Поддержка Ajax в интерактиве.
5) Можно побаловаться фракталами.

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

Хабр vs TechCrunch

Reading time4 min
Views7.7K
Как опубликовать обзор вашего стартапа на TechCrunch? Что круче — Хабр или TechCrunch? Какой он, TechCrunch effect?

image

В конце прошлого года мы запустили проект TradingView, о чем незамедлительно поставили в известность Хабр. Чуть более месяца назад о нас написал TechCrunch. Под катом детальная информация из первых рук о результатах этих экспериментов и ответы вопросы.

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

oEmbed. Делаешь веб-сервис? — Делай и oEmbed

Reading time3 min
Views15K


Конечно вы видели этот эффект, когда вставляешь в фейсбуке или вконтакте ссылку, и в посте тут же начинает подгружаться какой-то контент с сайта, на который ведет ссылка. И я видел, но даже не представлял, насколько это легко можно сделать с oEmbed'ом.

oEmbed.com — впринципе, на этом можно было бы и закончить читать тем, кто хочет провести самостоятельное мини-исследование.
Но вот мой рассказ, как этим пользоваться и много ссылок

Постигаем Git

Reading time6 min
Views56K
От переводчика: в этой статье нет описания команд git, она подразумевает, что вы уже знакомы с ним. Здесь описывается вполне здравый, на мой взгляд, подход к содержанию публичной истории в чистоте и порядке.

Если вы не понимаете, что побудило сделать git именно таким, то вас ждут страдания. Используя множество флагов (--flag), вы сможете заставить git работать так, как по вашему мнению он должен работать, вместо того, чтобы работать так, как git того хочет. Это как забивать гвозди отверткой. Работа делается, но хуже, медленнее, да и отвертка портится.
Читать дальше →

Code52 — новый проект каждую неделю

Reading time1 min
Views3.3K
imageЕсли вы хотите заняться open source проектом, но не знаете с чего начать, то Code52 вам поможет. В начале года несколько программистов (Andrew Tobin, Brendan Forster и Paul Jenkins) решили создать место для легкого старта в open source мире.
Раз в неделю реализуется одна новая идея. Уже сейчас в Code52 17 проектов. Преимущественно используюется .NET платформа, но создатели не собираются себя ограничивать. Например, проект sayw.at, стартовавший вчера, будет написан на NodeJS.

Подробнее о Code52

Creative Commons и базы данных: большой ликбез

Reading time8 min
Views5.6K
Давно хотел перевести, но сейчас как раз подходящее время в связи со сменой лицензии у OpenStreetMap.

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

Большая часть потенциальной ценности данных, в частности их ценность для всего общества, реализовывается за счёт использования без организационных преград. Как это происходит (юридически)? Многие сайты дают узкое разрешение на использование данных с помощью условий предоставления услуг. Активно обмен специальными данными происходит среди исследователей. И всё чаще открытые данные освобождаются посредством распространения на публичных условиях (например, лицензий CC или передачи в общественное достояние CC0) для преодоления ограничений авторского права, которые в противном случае способны ограничить распространение или повторное использование данных.

Многие организации, учреждения и правительства используют инструменты CC для данных.

Лицензии CC используются для баз данных следующими организациями (подробнее):
Australia Federal Government, Australia Queensland State Government, ChEMBL, DBpedia, Finnish Libraries, Freebase, Geocommons, Google, Greece Government, Italian Government, MusicBrainz, Mydosis Portal, New Zealand Government, Open Directory Project (dmoz), OpenStreetMap, Powerhouse Museum, Spain (Basque) Government — Open Data Euskadi, Stack Overflow, Uniprot, United Kingdom Government.
Читать дальше →

Порочный симбиоз пиратов и копирастов или как текстовый редактор перевернул моё мировоззрение

Reading time8 min
Views4.3K
Принято считать, что между пиратами и копирастами идёт война. Это очень похоже на правду. Но правда и то, что их противостояние подпитывает и укрепляет обе стороны. Разве пиратские партии в Европе смогли бы набрать сколько-нибудь значительное количество сторонников без громких юридических расправ, учинённых копирастами? Разве авторы продолжали бы довольствоваться крохами со стола корпораций и кабальными условиями эксклюзивных контрактов, если бы копирасты не были их единственной защитой от принудительного пиратского «коммунизма»?

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

StartPSD — в помощь дизайнерам сайтов, автоматизируем работу

Reading time1 min
Views3.9K
Сегодня решил поделиться с вами своими материалами по автоматизации работы в photoshop. А именно это тот стартовый шаблон с которого я начинаю делать любой дизайн сайта.
Подправил, добавил, оформил в виде приятного продукта под названием — StartPSD.
Можно скачивать, редактировать, пользоваться на здоровье!

Встречайте.
image
Читать дальше →

Власть над демонами или автозапуск в Linux

Reading time5 min
Views365K
Для реализации автозапуска в Linux написано уже немало и на разных языках, но приходится искать, потому постарался свести большую часть тут. Здесь не рассказывается полностью весь процесс с нуля, но предоставлено достаточно информации и ссылок, чтобы сделать атоматический запуск программ в Linux реальностью.
Читать дальше →

История игры Триплекс, или сколько нужно квадратиков чтобы сломать голову

Reading time17 min
Views11K
Чтобы освоить азы Web программирования, я решил написать HTML5 игру — головоломку под названием Triplex (www.quadpuzzle.ru). Написать игру для себя и для друзей — полдела. Захотелось довести проект до ума, сделав из игры продукт для широкого круга пользователей. Насколько получилось — судить вам.

    Правила игры просты. На игровом поле разложены фигуры из квадратиков. Цель игры — уложить все фигуры в указанный прямоугольник. Вращать можно только одну фигуру, помеченную кружком, если она есть. Решение в каждой задаче существует и единственное.

                        

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

Как веб-приложение может скачать в кэш 2 ГБ, а вы не заметите

Reading time2 min
Views6.1K
В последние несколько дней я экспериментировал с офлайновым кэшем веб-приложений HTML5, осуществляя тесты и изучая поведение браузера в граничных ситуациях.

Один из этих экспериментов связан с квотой на максимальный размер кэша.

Две недели назад я писал о генерации и подаче манифеста приложения, используя ASP.NET MVC. Здесь используется тот же код, но с добавлением в кэш сотен PDF-файлов по 7 МБ.

public ActionResult Manifest()
{     
    var cacheResources = new List<string>();
    var n = 300; // Play with this number

    for (var i = 0; i < n; i++)
        cacheResources.Add("Content/" + Url.Content("book.pdf?" + i));

    var manifestResult = new ManifestResult("1")
    {
        NetworkResources = new string[] { "*" },
        CacheResources = cacheResources
    };

    return manifestResult;
}

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

Android. Обзор боевых приложений

Reading time2 min
Views322K
Доброго времени суток!

Наряду со статьей "iPhone: MiTM атака из кармана", родилась почти аналогичная статья про Android.

Мы уже знаем, на что способен iPhone. Уступает ли ему Android?

Было рассмотрено около 25 боевых приложений. Хочу предоставить вам результат маленького исследования. Многие приложения даже не запустились, некоторые подвесили телефон намертво, но некоторые даже работали!

Весь софт тестировался на телефоне LG Optimus, с версией Android 2.3.

Итак, краткий обзор боевого софта на Android:

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

Введение в CSS3 Grid Layout. Работаем с сетками

Reading time10 min
Views113K
Update: Часть сведений в данной статье устарели. Рекомендую свежие материалы на css-live.ru.

Введение


intuition game grid

Модуль CSS3 Grid Layout — это один из самых интересных, на мой взгляд, модулей в семействе CSS3. Официальная история модуля в виде черновика спецификации насчитывает сегодня чуть менее года. О предварительном анонсе еще с названием CSS Grid Alignment на TPAC 2010 Владимир Юнев писал еще в декабре 2010. Надо также отметить, что с чуть другим названием и несколько отличным синтаксисом, но с той же сутью, он был заявлен в качестве WD еще в 2007г. Сегодня работы по доводке модуля идут полным ходом, предварительная реализация уже есть в Internet Explorer 10 и есть надежда, что поддержка новых возможностей также появится в будущих версиях других популярных браузеров.

Зачем нужен Grid Layout?


Задача, которую решает модель CSS3 Grid Layout, очень проста и понятна любому веб-верстальщику (да и не только ему): предоставить удобный механизм расположения контента по виртуальной сетке.

В отличие от старых табличных подходов, основанных на использовании table, здесь не замусоривается семантика документа и представление четко отделено от содержания. В отличие от различных вариаций блочной верстки со становящимися при сколь-нибудь сложной структуре безумными и многоэтажными float'ами в сочетании с вручную просчитанными отступами, здесь описание стилей становится тривиально простым и прозрачным. В отличии от абсолютного позиционирования с привязкой к координатам, здесь сохраняется гибкость. В отличие от популярных сегодня css/js-библиотек для разметки по сетке путем указания соответствующих классов (взять хоть те же bootstrap или yui css grids), здесь не замусоривается привязка классов.

Сплошное удовольствие! Осталось только дождаться широкой поддержки :) Впрочем, если вы планируете делать приложения в стиле Metro для Windows 8 на html/js, ключевые возможности, описываемые в модуле CSS3 Grid Layout, уже работают — и можно двигаться вперед, используя удобные и практичные механизмы.
Читать дальше →

Спасибо за HTML5 File API или читаем ID3-тег и заполняем форму не загружая MP3-файл

Reading time6 min
Views14K
HTML5 Powered with Offline &amp; Storage
С появлением HTML5 у нас появляется много новых и интересных возможностей. Позволяющих создавать еще более качественные приложения.

Например, File API. Доступ к файлам клиента довольно удобная штука. Мы можем к примеру заполнить форму используя информацию из выбранного пользователем файла:
  • Заполнить форму об аудио-файле из тегов
  • Заполнить форму о фото из EXIF
Читать дальше →

IPv6 — он рядом. Часть 1

Reading time7 min
Views48K


Сегодня идет множество дискуссий насчет сроков по внедрению IPv6 везде и всюду. Но очевидно одно: без телодвижений крупных компаний ничего не выйдет. Google уже использует IPv6, существуют сети, которые предоставляют IPv6, в том числе некоммерческие.
В этом посте я хотел бы рассказать не только как приобщиться к миру IPv6, но и некоторые тонкости, связанные с ним, о которые мне пришлось споткнуться.
В данном случае рассматривается не самый тривиальный сценарий настройки, в котором используется домашний сервер и вы полностью распоряжаетесь выделенным вам адресным пространством.
Читать дальше →

Information

Rating
7,081-st
Location
Москва, Москва и Московская обл., Россия
Date of birth
Registered
Activity