Pull to refresh
21
0
Александр @Pyjamec

User

Send message

Ответы генерального директора ABBYY Сергея Андреева на вопросы читателей Хабра. Часть 1

Reading time11 min
Views37K
image
Уважаемые читатели и писатели Хабра!

Хочу сказать спасибо всем участникам этого обсуждения за их искреннее желание сделать нашу страну лучше. Это видно во всех вопросах, заданных здесь, даже если они порой звучат жёстко и предубеждённо. Я посчитал важным ответить на вопросы, потому что ABBYY слишком давно не рассказывала о том, чем мы занимаемся, и как мы это делаем. А отсутствие информации порождает много нелепых догадок. Итак, время отвечать на вопросы.

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

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

Как оценить задачу до начала разработки сайта

Reading time5 min
Views29K
Постановка задачи — ключ к успеху любой работы. Если задача не поставлена чётко, то невозможно даже понять, решена ли она.

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

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

HTML5 как победа научного материализма

Reading time15 min
Views6.3K
Стандарт HTML5 уже почти готов к использованию. Где-то все еще идут жаркие споры по конкретным секциям DOM, видеокодекам, анимации и прочим 3D, но основа HTML5 — его синтаксис, атрибуты и теги — уже устаканились. Эти разделы стандарта не меняются уже многие месяцы; окончательно и по факту их зафиксируют релизы IE9 и FF4, после чего какие-либо их изменения в рамках пятой версии станут невозможны.
Так как костыли для старых версий IE уже созданы и обкатаны, то уже совсем-совсем скоро, начиная новый проект, можно будет открыть свой любимый редактор и, не скрывая наслаждения, написать

<!doctype html>

Сначала, конечно, html5 появится скорее в бложиках энтузиастов, чем на серьезных сайтах, но — вот увидите — через несколько лет в каждой региональной газете появятся объявления типа «ремонт и настройка ПК, заправка принтеров, 1С, сайты на HTML5».

В IT, как и в других областях техники, спецификации бывают хорошие, как у Страуструпа, а бывают плохие и даже отвратительные, как спецификация ECMAScript. По моему скромному мнению, спецификация HTML5 обещает стать воистину великой, просто-таки образцовой вершиной этого бюрократического жанра.
Пролистывая на выходных свежую версию черновика стандарта (от 5-ого марта), я в очередной раз не мог не восхититься изящностью принятых решений и филигранной точностью формулировок родившейся в тяжелых муках спецификации.

Эта статья о том, почему стандарт html5 получился именно такой, и что на самом деле скрывается за его внешне обтекаемыми формулировками.
Читать дальше →

(Как написать (Lisp) интерпретатор (на Python))

Reading time16 min
Views14K


Перевод статьи "(How to Write a (Lisp) Interpreter (in Python))" Питера Норвига. В данной статье Питер довольно кратко, но емко описывает принцип работы интерпретаторов и показывает как можно написать совсем крошечный (всего 90 строк на Python) интерпретатор подмножества языка Scheme. Перевод публикуется с разрешения автора.

Питер Норвиг (англ. Peter Norvig) — американский ученый в области вычислительной техники. В данный момент работает директором по исследованиям (ранее — директор по качеству поиска) в корпорации Google. Ранее являлся главой Подразделения вычислительной техники в исследовательском центре Амес NASA, где он руководил штатом из двухсот ученых, занимающихся разработками NASA в областях анатомии и робототехники, автоматизированной разработке ПО и анализа данных, нейроинженерии, разработки коллективных систем, и принятия решений, основанном на симуляции.

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

Android Development Tutorial. Часть 2/?

Reading time14 min
Views87K
Ларс Вогель — евангелист Eclipse.
Под катом Вы обнаружите продолжение перевода его статьи, которая описывает процесс создания Android-приложений с помощью Eclipse. Используется Eclipse 3.6, Java 1.6 и Android 2.3 (Gingerbread).
Часть 1
Читать дальше →

Простая библиотека для парсинга HTML

Reading time2 min
Views10K
Недавно зарелизил Leaf, это небольшая библиотека для парсинга HTML на Python.
Она уже довольно долгое время покрывает все мои нужды в парсинге, но еще есть идеи для развития.
Эта библиотека по сути обертка над lxml, которая делает работу с ней гораздо приятней.
далее...

Web Platform Installer: обзор третьей версии

Reading time7 min
Views13K
Совсем недавно выпущена третья финальная версия Web Platform Installer (WebPI) – инструмента, который позволяет быстрее всего развернуть рабочее место веб-разработчика и проще всего установить необходимые веб-приложения из большого набора готовых шаблонов.

В этой статье дается обзор третьей версии WebPI с перечислением изменений по сравнению со второй версией и описанием функционала, который будет полезен каждому веб-разработчику (и не только).

Что такое Web Platform Installer?


imageПовседневная работа веб-разработчика состоит из использования ряда инструментов для создания новых проектов или работы со структурой одного большого проекта. В качестве таких часто используемых инструментов можно перечислить следующие: среда разработки (IDE), сервер баз данных и инструменты по работе с базами данных, сервер приложений и сопутствующие инструменты, шаблоны готовых приложений (CMS, форумы, блоги, wiki-движки и так далее).

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

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

Таким удаленном хранилищем и является Web Platform Installer. C помощью WebPI вы всегда имеете доступ к самым последним версиям инструментов веб-разработки, создания и редактирования баз данных, шаблонам веб-приложений самых последний версий. Кроме того, при всем богатстве выбора WebPI предлагает все инструменты бесплатно.

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

OAuth 2.0 простым и понятным языком

Reading time7 min
Views890K
Логотип OAuth 2.0

На хабре уже писали про OAuth 1.0, но понятного объяснения того, что такое OAuth 2.0 не было. Ниже я расскажу, в чем отличия и преимущества OAuth 2.0 и, как его лучше использовать на сайтах, в мобильных и desktop-приложениях.

Что такое OAuth 2.0


OAuth 2.0 — протокол авторизации, позволяющий выдать одному сервису (приложению) права на доступ к ресурсам пользователя на другом сервисе. Протокол избавляет от необходимости доверять приложению логин и пароль, а также позволяет выдавать ограниченный набор прав, а не все сразу.

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

Простой конвертер текста в речь с использованием Google Translate

Reading time1 min
Views48K

Недавно Гугль обновил русский язык в Google Translate, сильно улучшив произношение.
Я решил сделать конвертер текста в речь на базе их переводчика.
Читать дальше →

java.util.concurrent. Часть первая: Зачем и почему?

Reading time4 min
Views29K
Часть первая, в которой множеством слов раскрывается смысл существования этого API
Эта статья, хоть и не является прямым переводом, основана на статье Брайана Гетца Concurrency in JDK 5.0

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

Простой пример выполнения HTTP-запроса к web-сервису и разбор XML-ответа

Reading time3 min
Views52K
Привет всем хабровчанам!

Сразу хочу сказать, что, хотя тема не «Hello world», но рассматриваемая задача довольно проста и приведена здесь на Хабре скорее в качестве средства экономии времени для разработчиков, которым, возможно, надо будет поработать с XML-ответами от web-сервисов. Для XML-разбора я использовал DOMparser (я знаю и про SAXParser, конечно) как это привычно для меня в PHP.

У Приватбанка (Украина) имеется API, с которым можно ознакомиться здесь. После изучения его становится ясно, что сервис достаточно информативный и было бы удобно иметь на мобильном устройстве средство общения с ним. Посмотрим как можно опросить этот сервис и получить такую избитую, но иногда полезную информацию как актуальный курс валют. После прочтения топика, в принципе, не составит труда написать и другие полезные функции.

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

Финальный релиз PySide 1.0.0

Reading time1 min
Views2.3K
PySideВ блоге Qt появилась новость о релизе PySide 1.0.0 с множественными багфиксами и поддержкой всех вкусностей Qt 4.7 (Qt Quick, QML), а также Qt Mobility.
Также сообщается, что запланированна поддержка Python 3k и более Pythonic API )
Читать дальше →

Запуск Chaco и Mayavi на PySide

Reading time4 min
Views1.8K
Ну вот и появился долгожданный релиз PySide. Некоторые хабравчане начнут им пользоваться в первый раз, некоторые уже имели с ним дело.

В своей работе приходится пользоваться кроссплатформенными визуализатором Mayavi и построителем графиков Chaco (кому интересно — читаем code.enthought.com/chaco и code.enthought.com/projects/mayavi). Моей задачей было встроить их фрэймы в свое приложение HPGL-GUI. Изначально я писал все на PyQt4 и в меня устраивало все, кроме одной вещи. Проблемой стала лицензия. PySide выпускается под LGPL v2.1, что как раз подходит под коммерческие нужды.

На помощь пришел PySide, который уже начали активно использовать в качестве бэкэнда к продуктам Enthought. Тут-то меня и ждали первые подводные камни.

Отсутствие документации как именно использовать PySide для встраивания.
Немного проблуждав по исходникам, выяснил, что достаточно указать переменную окружения 'QT_API' в значение 'pyside':

import os
os.environ['QT_API'] = 'pyside'

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

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

Android Development Tutorial. Часть 1/?

Reading time6 min
Views121K
Ларс Вогель — евангелист Eclipse.
Под катом Вы обнаружите перевод его статьи, которая описывает процесс создания Android-приложений с помощью Eclipse. Используется Eclipse 3.6, Java 1.6 и Android 2.3 (Gingerbread).
Часть 2
Читать дальше →

Конференция JavaOne Oracle Develop Россия

Reading time1 min
Views653
Конференция JavaOne (ex. TechDays) пройдет в этом году в Москве, 12-13 Апреля, в здании Российской Академии Наук. В конференции три потока: JavaEE, JavaSE, JavaME и мастер-классы. Возможно небольшое отклонение от заданной темы в тех или иных докладах.
С программой конференции можно ознакомиться здесь: www.oracle.com/ru/javaonedevelop/javaone-agenda-ru-302317-ru.html

На конференцию, поделиться знаниями и опытом, приедут специалисты из США, Европы, Азии и конечно из Санкт-Петербургского Центра Высоких Технологий Oracle. Пленарный доклад конференции будет состоять из двух частей: Стив Харрис (главный человек в Oracle по JavaEE) расскажет по перспективах технологии JavaEE7, а Хенрик Шталь о том, как Oracle видит развитие JavaSE. Джером Доше (архитектор Glassfish) расскажет, как наиболее эффективно пользоваться своим детищем.

Также желающим набраться практического опыта небезынтересными будут 5 полуторачасовых мастер-классов.

Во второй день конференции в дополнение к стандартным трекам, откроется небольшой зал Lightning talk где вы сможете послушать 20 минутные выступления от российского Java сообщества

Регистрация на конференцию по ссылке: www.oracle.com/ru/javaonedevelop/index.html

Если есть какие-то вопросы или пожелания, задавайте на все отвечу

Музыкальный информер

Reading time2 min
Views1.3K



Представляю хабросообществу музыкальный сервис — www.album-info.ru. Назначение сервиса — информировать подписавшихся пользователей о выходе новых релизов своих любимых исполнителей. Принцип следующий: регистрируетесь, выбираете музыкантов, которые Вам интересны, и когда у них выйдет новый альбом или сингл, получите по E-mail соответствующее уведомление. Данный сервис это ещё одна ступень автоматизации задач нашей жизни. Теперь не нужно ничего искать, по факту получите письмо, и ни одного релиза не пропустите.

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

hGate – web врата в управление репозиториями Mercurial

Reading time3 min
Views4.2K

Краткая версия

Что предлагается: web интерфейс управления репозиториями и пользователями mercurial — hGate.
Кому полезно: тем, кто использует связку Mercurial+HgWebDir и создает репозитории или пользователей чаще, чем раз в пару месяцев.
Где скачать и как установить: bitbucket.org/shedar/hgate
Если Вам интересно, зачем это было делать, подробный перечень возможностей и что будет дальше — продолжаем.
Читать дальше →

Онлайн-фотошкола Fotoshkola.net

Reading time3 min
Views1.8K
Сегодня в онлайн-фотошколе Fotoshkola.net начал обучение тысячный студент. Отличный день для того, чтобы рассказать об этом проекте хабрасообществу.

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



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

SaveWeb: история сайтов

Reading time4 min
Views3.7K
SaveWeb

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

Когда я понял, что время летит, сжигая старое и рождая новое — мне захотелось на мгновение остановиться, обернуться, посмотреть по сторонам. Было бы интересно вернуться в прошлое — там можно увидеть то, чего не видел ранее, то, чего в настоящем уже не существует, а в будущем будет другим. Удовлетворить простое любопытство, сравнить как выглядел сайт год назад и как выглядит сейчас — вот стимул, который заставил меня создать SaveWeb, который еще очень молод, но, кажется, уже умеет останавливать время :)
Читать дальше →

Marble Run: победитель конкурса Mozilla Labs Gaming

Reading time1 min
Views832
В конкурсе браузерных игр Mozilla Labs Gaming победила игра Marble Run (github). Каждый участник рисует трассу для шарика, падающего под действием гравитации. По мере увеличения количества трасс становятся доступными новые строительные фигуры. Народ уже нарисовал около десяти тысяч трасс (см. галерею на сайте).



В разработке использовались PrototypeJS, cookies-js-helper и box2d-js.
Читать дальше →

Information

Rating
Does not participate
Location
Ростов-на-Дону, Ростовская обл., Россия
Date of birth
Registered
Activity