Search
Write a publication
Pull to refresh
48
0

Пользователь

Send message

Блог Яндекс.Карт объявляется открытым

Reading time1 min
Views1.8K
Наш сервис активно развивается и растёт. Растёт число новых функций, растёт наша команда, растёт посещаемость. В общем, всё растёт и это хорошо. :)

Обо всём, что происходит с Яндекс.Картами, мы хотим рассказывать более подробно, регулярно и интересно, поэтому мы запускаем официальный блог сервиса Яндекс.Карты.

Яндекс.Карты сегодня — крупный картографический русскоязычный сервис, объединяющий целую линейку полезных для пользователей интернета приложений:
  • в первую очередь сам веб-сервис Яндекс.Карты (maps.yandex.ru) — это не только поиск по карте и организациям, но и множество различных полезных функций
  • мобильные Яндекс.Карты — как приложение, так и сайт для мобильных браузеров
  • интерактивные карты метро, а так же и мобильное приложение Яндекс.Метро
  • API Яндекс.Карт — инструментарий для публикации Яндекс.Карт на сайтах или блогах

Обо всём этом и не только вы сможете читать в нашем блоге.

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

Где можно нас читать?
Во-первых, в блоге Яндекс.Карт в Я.ру (добавляйте нас в «Друзья») и RSS-трансляции, а наиболее заметные новости мы продолжим писать и здесь — в корпоративном блоге.

Во-вторых, анонсы новых постингов можно читать в Twitter-аккаунте @yandexmaps

Кроме этого, напомним, что узнавать про Яндекс.Карты можно еще в Клубе пользователей мобильных Яндекс.Карт, клубе разработчиков API Яндекс.Карт и блоге Аналитического центра Яндекс.Пробок.

Организация HTTP-туннеля на примере утилит для работы с MySQL

Reading time2 min
Views24K
Если вы не знаете, что такое HTTP-туннель, для управления MySQL предпочитаете десктопное приложение вместо веб-интерфейса и выполняется одно из следующих условий:

  • у вас есть возможность выхода во внешний мир только через HTTP-прокси
  • в вашей сети установлено ограничение на возможность работы только с 80 портом
  • хостинг-провайдером разрешено работать с базой только через локалхост


то эта небольшая заметка для вас.
Читать дальше →

Текст любой ценой: RTF

Reading time14 min
Views88K
Что ж продолжим наши изыскания на предмет получения текста из различных форматов данных. Не так давно мы с вами научились вытаскивать текст из zipped-xml-based файлов (odt и docx), а также, в начале этой недели, из pdf. Сегодня мы продолжим с обещанным rtf.

Rich Text Format (он же rtf), вы могли бы подумать, достаточно забытый, хотя и не очень сложный формат представления текстовых данных. Что ж, относительно несложный для получения текста, но за свою историю: от своей первой версии до текущей 1.9.1 — он приобрёл под 300 страниц официально документации и огромное количество надстроек, которые в большей степени нам будут мешать при получении plain text'а. Попробуем их обойти…
Читать дальше →

Вращение предметов без флэш

Reading time2 min
Views10K
Всем привет.

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

Пожалуй, все встречали подобные инструменты основанные на технологии flash. Однако я считаю, что её использование здесь не к чему. Поэтому потратив несколько часов я реализовал подобный функционал на javascript в виде плагина к jQuery.

вертеть дальше

Разработка собственной Файловой модели (вместо QDirModel и QFileSystemModel)

Reading time8 min
Views8.9K
В этой статье я расскажу о создании собственной файл модели в Qt. Сразу скажу что модель создавалась под конкретную задачу и не планировалось для широкого использования, так что в ней может и не быть того что вам хочется. Еще хочется добавить что опыт программирования на С++/Qt у меня не столь велик, поэтому вполне готов к комментариям типа: «Ваш код г%вно».

Теперь о том, а зачем собственно...


Известно что в Qt 4 есть две встроенных модели работы с файлами:
QDirModel и
QFileSystemModel.

Однако, эти модели очень медленно работают с большим количеством файлов.
QDirModel так вообще безобразно, у второй дела получше, но даже если сравнивать с виндовым проводником, то все равно отвратительно. Как показало исследование профайлером, при каждом запросе к содержимому папки идет очень долгое ожидание мутекса.

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

Текст любой ценой: PDF

Reading time12 min
Views93K
Продолжаем разбирать текстовые форматы на предмет получения текста. Итак, обещанный ранее PDF.

С portable document format'ом не всё так просто, как DOCX или ODT, что мы рассматривали в прошлый раз, но всё же это всё ещё изначально текстовый, а не бинарный формат. Вы удивлены? Тогда давайте посмотрим на то, что там внутри. Дальше действительно много текста.

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

Как заработать на бесплатном

Reading time4 min
Views16K
Недавно New York Times опубликовал статью о бизнес-модели freemium, рассказав о ней на примере Evernote. Мы подготовили перевод этого текста.

Как заработать на бесплатном
Дэймон Дарлин

Оригинал статьи: http://www.nytimes.com/2009/08/30/business/30ping.html

30ping600_1
Фил Либин (Phil Libin), исполнительный директор Evernote, бесплатного сервиса хранения данных, рассказывает, что сервис работает на разных платформах, в том числе и мобильных.

30ping190_2Бесплатное распространение продукта всегда считалось хорошей маркетинговой идеей. Даже самый наивный потребитель в состоянии оценить возможность заполучить что-то задаром. Слово «бесплатно» стало заклинанием для бизнес-гуру, которые призывают веб-стартапы добиваться быстрого роста, снижая цену большинства своих услуг до нуля.

Но для тех, кто собирается зарабатывать деньги, бесплатные услуги становятся палкой о двух концах. Определенно, это привлекает пользователей, осталось лишь найти тех, кто за все это будет платить. Хотя тысячи бизнесов предлагают бесплатные онлайн-услуги (самые большие из них — сервис Flickr от Yahoo и YouTube от Google), лишь немногие могут заявить о своей прибыльности. (Аналитики утверждают, что ни Flickr, ни YouTube таковыми не являются.) Несмотря на привлекательность подхода, сделать так, чтобы он работал, весьма непросто.

И впрямь, недавно выяснилось, что eBay ищет способ избавиться от Skype. А проект по созданию персональных веб-сайтов Sampa, организованный выходцами из Microsoft, свернут.

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

Запасной вариант — предоставление платного премиального сервиса некоторым клиентам в надежде, что выручка от этих пользователей покроет расходы от всех остальных. Так поступают многие сайты — например, тот же Flickr.

Фред Уилсон (Fred Wilson), венчурный капиталист из Нью Йорка, дал классическое определение этому подходу и даже придумал для него соответствующий термин: «freemium». И он до сих пор продолжает получать восторженную поддержку этой идеи от читателей своего блога, «A VC».

Но остается вопрос: как же все-таки это работает? Фил Либин (Phil Libin), исполнительный директор компании Evernote, стартапа в Маунтин-Вью (Mountain View), штат Калифорния, любезно согласился посвятить меня в финансы своей частной компании и приоткрыть завесу этой тайны.

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

dklab_multiplexor: постоянное Javascript-соединение с сервером в условиях сотен тысяч онлайн-клиентов

Reading time4 min
Views6.8K
Dklab_multiplexor — это инструмент, который позволяет держать одновременно сотни тысяч долгоживущих открытых HTTP-соединений с сервером. Например, если на вашем сайте находится одновременно несколько сот тысяч посетителей, каждый из них может быть связан с сервером постоянным соединением, установленным из JavaScript. Это например, полезно при организации онлайн-чатов или мгновенных уведомлений.

Dklab_multiplexor не претендует на полную универсальность или исключительность (кстати, если знаете аналоги, близкие по простоте к multiplexor-у, пишите в комментариях). Это лишь простейший инструмент, который наконец-то дошли руки опубликовать.

Зачем это нужно?


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

Данную задачу можно решить двумя способами.
  1. Неправильный способ. Раз в 10 секунд делать из JavaScript запрос на сервер для проверки, не появилось ли новых сообщений. Этот метод не работает, если на сайте одновременно находится очень большое количество пользователей, т.к. нагрузка на сервер растет слишком быстро. Кроме того, потребление трафика пользователем также оказывается крайне высоким.
  2. Правильный способ. Устанавливать постоянное и длительное соединение с сервером, ожидая поступления данных через него. Если сообщений нет, соединение просто держится открытым на протяжение нескольких минут. Если соединение по каким-либо причинам закрылось, оно вновь открывается. В итоге и трафика потребляется мало, и нагрузка на сервер оказывается невелика. Так работает GMail, Мой Круг и т. д., и именно на этом принципе построен dklab_multiplexor.
+-------------------+                    ------------------ 
| Сервер обработки  |                   |                  |   <===WAIT=== Клиент A
| и базы данных     |  ======IN=======> |   Мультиплексор  |   <===WAIT=== Клиент B
| (e.g Apache + PHP |                   |                  |   <===WAIT=== Клиент C
+-------------------+                    ------------------ 
(указаны направления установления TCP-соединений).
Читать дальше →

Список полезных инструментов для php разработчика

Reading time10 min
Views150K
PHP один из самых широко используемых языков для создания вебсайтов. PHP фреймворки, такие как Zend, CakePHP, CodeIgniter и т.д и open source классы и библиотеки упростили разработку.
Независимо от того, являетесь ли вы опытным разработчиком или новичком, инструменты, которые вы используете, имеют прямое влияние на вашу продуктивность. Здесь собран список действительно полезных утилит и расширений для PHP разработчиков, которые помогут ускорить разработку, и улучшит итоговое качество кода.
Читать дальше →

5 нетехнических ошибок, которые допускают программисты

Reading time3 min
Views1.3K
Есть два множества навыков, которые необходимо культивировать хорошему программисту: технические и нетехнические. К сожалению, некоторые программисты сосредотачиваются только на технической части. Когда это происходит, у них появляются плохие привычки, которые служат поводом к 5 нетехническим ошибкам.
подробнее об ошибках, которые я может быть допускаю

Ползучая гадость, или о проблемах с отдельно взятой БД отдельно взятого приложения

Reading time5 min
Views2.1K
Сегодня я хочу озвучить одну проблему, с которой сталкивается разработчик, как только в поле его зрения попадает работа с БД. Самое грустное заключается в том, что я не знаю, как решать ее правильно, и что делать. Вернее, знаю что, но мне это не помогает и не поможет. Думаю, что и вам тоже.
Ниже будет длинная ввводная, по результатам коей, я не сомневаюсь, можно наговорить про меня много интересных вещей, которых хватит на несколько формуляров по 7-Б и направлений на пожизненное принудительное лечение, но вы уж дочитайте.
Поглумиться над дауном

Data Extracting SDK: Часть 1

Reading time4 min
Views1.6K
Data Extracting SDK написан на .NET Framework 3.5 и содержит средства для извлечения и анализа данных из текстовых файлов и web-ресурсов. Прислушиваясь к результатам опроса выкладываю первую версию Data Extracting SDK CTP (Community Technical Preview) на всеобщее обозрение.

Основные возможности:
  • Html Processing — загрузка, анализ html
  • DOM анализ — получение ссылок, изображений, таблиц
  • извлечение ссылок, фильтры, возможность написания своих фильтром, глубокий анализ сайта
  • извлечение электронных адресов, телефонов, urls и т.д.
  • анализ контента сайта (количество элементов, плотность слов)
  • возможности для SEO анализа
Остановимся на основных возможностях SDK.
Читать дальше →

olap для маленькой компании

Reading time4 min
Views51K
В посте Многомерные кубы, OLAP и MDX Vitko написал: «тема очень интересная и с каждым днем становится все более актуальной». К сожалению, это заклинание произносится уже очень давно (по крайней мере я его слышу с 2004 года ), но olap проектов до сих пор очень мало. Возможно, потому что традиционно считается, что всё, что связанно с olap нужно только для крупных компаний с большими объемами накопленных данных и стоит очень дорого. Но это не совсем так. Я хочу рассказать о проекте, который внедрен в одной относительно небольшой компании.
Читать дальше →

Типограф (плагин к редактору FCK)

Reading time1 min
Views2.3K
(Пора выйти из тени)
О моем плагине уже писал товарищ
Теперь можно типографировать 4-мя типографами.
К уже имеющимся
rmcreative.ru/article/programming/typograph, typograf.ru,
Типограф студии Артемия Лебедева.
Добавил ещё один off-line типограф — студии Евгения Муравьева.

Все типографы настроены на работу с UTF-8.

Страница — Типограф для FCKEditor

Плагин делался первоначально для себя и так как к посту не было ни одного коммента, то и не правился.
Типограф для FCK.
Типограф для FCK.Форма типографирования

Обзор литературы по Data Mining

Reading time7 min
Views66K
Добрый день!

Публикация нескольких статей о Data Mining показала высокий интерес сообщества к данной теме. Много вопросов было задано по типу «где почитать» и «с чего начать». Предлагаю вашему вниманию подборку литературы, ресурсов для уверенного старта в данной области.

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

Одно слово для выпускника: статистика (перевод)

Reading time5 min
Views2.7K
For Graduates, Just One Word: Statistics

 

Оригинал

Взял на себя смелость перевести интересную статью из The New York Times.


 

Закончив Гарвард по специальности  “Археология и антропология”, Кэрри Граймс изучала виды поселений Майя, отмечая на карте места, где были найдены  артефакты. Но потом ее увлекло то, что она называет “все эти математические и компьютерные штуки”, которые были частью ее работы.

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

Простота в дизайне. Эпизод 1. Червь Уорхола

Reading time2 min
Views1.9K
as simple as possible, but not simpler

В 2001, после эпидемии CodeRed, Николас Вивер написал крайне интересную статью про быстрораспространяющихся червей «Warhol Worms: The Potential for Very Fast Internet Plagues», у которой была потом ещё пара сиквелов. Краткое содержание статьи: если к механизму распространения червя добавить ряд оптимизаций, то червь может поразить всю уязвимую популяцию за 15 минут и даже быстрей. Грубо говоря, сломать интернет быстрей, чем админ допьёт кофе. Оптимизации были интересные:
  1. hitlist scanning (заранее создать список первых 1000-10.000 жертв, чтобы избежать начальной пологой стадии экспоненциального роста)
  2. permutation scan (обнаружив уже заражённую машину, перескочить в списке адресов, поскольку следующие за заражённым адреса уже наверняка просканированы)
  3. partitioned scan (родительский червь раздаёт потомкам диапазоны адресов, чтобы совершенно исключить повторное сканирование)
  4. subnet scan — очевидное сканирование локальной подсети в первую очередь

Меня тогда очень поразили такие возможности червестроения. Я тогда накатал статью «Modular Worms», что черви будущего будут со сменными насадками, апдейтиться прямо в сети и т.д. Мою статью, как обычно, отклонили, а лет через пять, как обычно, именно такие черви стали использоваться для строительства ботнетов. Сначала был Agobot, а потом дело встало на поток. Даже появился термин «open-source worm».

Реальный же червь Уорхола появился 25 февраля 2003 года. Он назывался SQL Slammer, заражал MS SQL Server. И этот червь не использовал ни единой хитрой оптимизации. Он тупо распространялся по UDP, умещаясь внутри одной-единственной датаграммы. Это было проще, это было дешевле. Ведь все мы знаем, что TCP нужно отправить три пакета только чтобы начать общение. При этом необходимо держать структуры данных в ядре, ждать ответа, ставить таймеры и т.д. и т.п. Напротив, UDP червь мог тупо забивать аплинк датаграммами, сколько уж влезет. А влазит много: 1Mbits это 332 «споры» в секунду, каждая спора 376 байт. Глобальное распространение червя произошло за 10 минут. Может и быстрее, подумал я, ведь моя статистика собиралась с шагом 10 минут. И в одном файле червя не было, а в следующем он уже был. Я проверил таймстампы — да, примерно 10 минут. Зарубежные коллеги тоже сказали 10 минут. Этот рекорд до сих пор не побит.

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

FlightFiles — файловый менеджер на PHP-GTK

Reading time1 min
Views652
imageЛюди, критикуя модуль PHP-GTK, называют, как правило, две причины:
  • PHP не предназначен для десктопа;
  • На PHP-GTK нет серьёзных программ.

Первое оспаривать бесполезно, т.к. это уже въелось в подсознание. Да и нет желания разводить холивар. А вот для опровержения второго и был создан проект FlightFiles, о котором я хочу сегодня коротко рассказать.
Читать дальше →

Хранение кода в бд или собираем код по кирпичикам

Reading time7 min
Views10K
Данная статья написана Napolsky. По известным причина он не смог ее опубликовать. Если статья вам понравилась — поощрите автора известным способом.

В этом топике я расскажу об одном разрабатываемым мною подходе в веб программировании, сердцем которого является хранение кода в базе данных. Несколько замечаний по дальнейшему тексту:
  • Под словосочетанием «код страницы» имеется ввиду исполняемый (php) код
  • Во всех вопросах, касательно производительности, имеется ввиду чистое время генерации страницы, без использования акселлераторов, систем кеширования и т д

Как все начиналось


Для того чтобы понять, а «зачем оно собственно надо» быстренько пройдем тот путь, который и привел меня к хранению кода в бд. Так сложилось, что свой путь в веб программировании я начинал не с написания каких-либо скриптов или модулей для существующих систем, а сразу с написания собственного движка сайта с абсолютного нуля. К этому моменту я имел двухлетний опыт программирования на C++ и, конечно же, по накатанной пытался строить свой веб движок на ООП (правда в то время в PHP от ООП было одно название :) ). В пределах разумного, я очень люблю свои «велосипеды». Особенно большие. И прежде чем воспользоваться готовым решением, всегда задаюсь вопросом «а нельзя ли написать получше?».
Читать далее

Очищаем веб-страницы от информационного шума

Reading time5 min
Views3.7K
Приветствую всех!

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

Будем очищать веб-страницы от «информационного шума».

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

Information

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