Search
Write a publication
Pull to refresh
5
0
Виталий @orloff

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

Send message

Простейший Feed-ридер за 10 минут

Reading time3 min
Views8.4K
Была у меня идея, написать статью, о том, как можно создать свой RSS-ридер. Я даже начал ее реализовывать, но вчера на хабре появилась статья Maxter’a — Генерация RSS фидов с помощью класса Syndication. В этой статье рассматривался набор классов Syndication, для работы с фидами (Feeds) RSS и Atom. Благодаря Syndication можно не только генерировать фиды, но и читать их. В этой статье я хочу представить простейший пример RSS/Atom ридера, который можно написать буквально за 10 минут. Правда, доступна эта возможность только в .Net Framework 3.5…

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

Автоматическое определение языка произвольного текста на РНР — библиотека PHPLangautodetect

Reading time15 min
Views20K
Знаете, работа с стартапе, который пытается создать что-то новое и уникальное на рынке очень захватывает. И не только открывающимися возможностями, но и часто нетривиальными задачами и вопросами, которые ставятся перед создателями и которые раньше никто не решал. Вот один из таких вопросов как раз вчера появился передо мной: дано нам произвольную строку текста, заведомо известно, что она может быть двух, а в некоторых случаях и трехъязычной, то есть там смешанный текст из нескольких языков. Необходимо прозрачно для пользователя определить язык, на котором написан текст.

На самом деле задача не такая и редкая — подобная функциональность есть и в текстовых редакторах, и в переключателе клавиатуры PuntoSwitcher, да и в системах машинного перевода такой функционал востребован, не говоря уже про системы поиска информации. Кстати, именно в контексте создания специализированного поисковика и классификатора текстов и появилась такая проблема. Необходимо было получить такую возможность в собственной программе на платформе РНР и при этом не задействовать сторонние сервисы — подобная возможность в виде веб-сервиса присутствует в Google Language API (в своём блоге я уже исследовал этот сервис), однако она выполняется удалённо и имеет некоторые существенные для нас ограничения, в частности, процедура опознания языка выполняется с существенной задержкой и асинхронна по своей природе. Кроме этого очень хотелось иметь полный контроль над процессом и иметь возможность его гибко настраивать, чего, увы, нет в сторонних сервисах. Поэтому пришлось подумать и попробовать реализовать собственными силами, результат же представляем вашему вниманию.
Читать дальше →

Crop & Resize на страницах ваших сайтов

Reading time3 min
Views32K
Пройдясь по хабра-поиску выяснил, что готового решения для кропа-ресайза изображений, на движке JavaScript/HTML/CSS еще не предлагалось. Поэтому, позвольте представить вашему вниманию модуль для ваших сайтов, частично реализуюший функционал редактирования, распространенный на фото-хостингах.

К делу

Внешне задумка выглядит так:


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

Как заказывать сайт

Reading time5 min
Views3.2K
В блоге много сообщений о том, как ведут себя исполнители при создании веб-проектов, много о зловредном поведении заказчиков. Все делают одно дело, а взаимопонимания нет.
В результате множество проектов срывают сроки, требуют бОльших вложений и в итоге их качество и экономический эффект от запуска оказываются хуже ожидаемых. Что же делать?
Читать дальше →

Вредные советы или Как сделать самый плохой сайт

Reading time4 min
Views5.7K


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

Приступаем

Uz-Translations: иностранные языки, онлайн образование

Reading time1 min
Views2.7K


Уважаемые хабрапользователи, хочу представить вашему вниманию мой языковой проект: Uz-Translations — информационный блог для филологов и переводчиков. Сайт был запущен в 2004 году.

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

Буду рад услышать вашу критику и замечание в адрес сайта!

Подходы к кодогенерации

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

Верстка без float'ов

Reading time2 min
Views8.8K
Существует много разных способов css разметки. Некоторые базируются на абсолютном позиционировании, другие используют float'ы. Первый метод плохо поддерживает «резиновость» макета, тогда как второй это неплохой способ разметки.

Но, как и многие мощные инструменты, float'ы имеют свои изъяны. Для начала, верстка на основе float'ов не такая простая к пониманию, а также float'ы есть источником многих багов (в основном в ИЕ), что делает их не идеальным вариантом в погоне за кроссбраузерностью.

Итак, речь далее пойдет о
семантически корректном методе верстки

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

Reading time3 min
Views31K
Если вы регулярно гуляете по интернету (а ведь большинство читателей Хабра этим и занимается, не так ли?), то у вас не займет ного времени накопить большой список сайтов, которые хотелось бы посетить позднее. Дефолтный менеджер закладок в браузере Firefox вряд ли устраивает вас полностью. Для лучшей организации накопления коллекции закладок, синхронизации их с другими компьютераи или просто более легкого доступа к ним написана много расширений. Итак, давайте рассмотрим лучшие из них.

Foxmarks: расширение для людей с несколькими компьютерами

Вы используете несколько компьютеров или операционных систем на одном? Если так, то расширение Foxmarks поможет автоматически синхронизировать закладки между ними. Оно так же позволяет получать доступ к закладкам из интернета. Это очень полезное расширение, если вы используете публичные компьютеры для доступа в сеть, не имея возможности установить на них что-либо. Foxmarks синхронизирует ваши закладки, сохраняя их на удаленном сервере. С этим расширением вы забудете о бэкапе закладок при форматировании или смена компьютеров. Так же для любителей безопасности есть опция шифрования.
Читать дальше →

IP География

Reading time2 min
Views14K
Недавно мне пришлось иметь дело с программой для ведения статистики кликов некой системы обмена объявлений. При щелчке как обычно собиралась информация о клике (на какой странице произошло, во сколько, браузер, ИН объявления и IP). В представлении статистики состояла задача — узнать город из которого произошел переход. Раньше я этим не интересовался особо поэтому только сечас у меня началось более глубокое знакомство с GeoIP системами.

Кроме того как это удалось
Я расскажу еще о некоторых интересных сервисах

10 шагов к созданию сайта (для клиента)

Reading time8 min
Views21K
Когда вы принимаете решение создать сайт, перед вами возникает ряд проблем, связанных обычно с вопросом — а что именно нужно делать, как и в каком порядке?

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

Самый недооцененный язык в мире

Reading time5 min
Views8.7K
JavaScript logo
JavaScript, также известный как Mocha, или LiveScript, или JScript или ECMAScript один из самых популярных языков программирования. Фактически каждый персональный компьютер имеет его интерпретатор и активно им пользуется. JavaScript всецело обязан своей популярностью тому, что он стал основным скриптовым языком для веба.

Несмотря на его популярность, немногие знают, что JavaScript — это очень хороший объектно-ориентированный язык с множеством возможностей. Почему многие этого не понимают? Почему этот язык настолько не понят?

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

Очень длинные слова — что делать?

Reading time2 min
Views16K

Суть проблемы


Возможность пользователя ввести оооочень длинное слово без пробелов, и тем самым «взорвать» layout — это старая проблема. Вот так она решается на Хабре.

Решать её можно несколькими способами

25 способов улучшить свой сайт

Reading time3 min
Views31K
Эта небольшая статья поможет новичкам (и не только) оценить удобство собственного сайта и укажет основные недочёты, присущие многим сайтам. Ваши пользователи скажут вам спасибо =)

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

Интернет магазин ручных игрушек: есть ли у него будущее?

Reading time2 min
Views574
В феврале в Рунете появился весьма неординарный «ручной» проект под названием «Мартовский заяц». (http://www.ma-zay.ru) «Ручной» не только потому, что в этом Интернет магазине продают эксклюзивные игрушки и подарки, сделанные вручную, но и потому, что все затраты на создание и продвижение проекта пока составили всего семь тысяч рублей.
Несмотря на столь скромные затраты, проект производит впечатление продуманного и грамотно выполненного. Оригинальный дизайн, достаточно удобный интерфейс, обилие креативных «фишек» (фирменные персонажи –зайцы, сказки писательницы Дарьи Грин, грамотная работа над созданием коммьюнити и т.д.) – все это говорит только в плюс этого стартапа. Из минусов –небольшое число товаров на сайте ( около ста лотов) и несовершенная система оплаты (оплатить покупку можно только через яндекс деньги или терминал e-port в пункте выдачи).
Однако учитывая небольшой срок существования проекта и темпы его развития а также относительно свободную нишу в данном сегменте рынка, «Мартовский заяц» имеет все шансы на успех.
О том, как создать стартап-проект, имея в кармане семь тысяч рублей, а также о том, для чего нужна «душевность» в стартаппинге – читайте в интервью портала LiveIdea с управляющей проектом Анастасией Лапшиной.
Читать дальше →

Собеседования на должность PHP разработчика

Reading time3 min
Views71K

Довольно часто (постоянно) мне приходиться проводить собеседование людей желающих устроитсья в мой отдел на должность «junior PHP developer» и «PHP developer». И, с завидным постоянством, я и team-lead отдела задаем одни и те же вопросы…
Читать дальше →

Плагины для лиса в прямом эфире

Reading time6 min
Views1K
Вчера ночью мне не спалось, и я решил сделать что-то полезное (в кои-то веки). Поскольку приносить пользу окружающим можно лишь принося пользу себе, я попытался облегчить себе жизнь: создать плагин, мониторящий изменение некоторых чисел на одной странице (нечто вроде «количества непрочитанных комментариев в топиках, за которыми следишь» и «количества писем», если больше нуля — повод пойти и прочитать эти новые комментарии. Эти числа выводятся на двух известных коллективных блогах вверху страницы, но узнать об их изменении их состояния можно лишь обновив эту страницу — никакого механизма почты-rss-и т.п. не предусмотрено. Ну, надеюсь, понятно объяснил). Через полтора часа была готова более-менее стабильная версия плагина, и я буду рад рассказать вам о том, как повторить мой подвиг в любое время года.

Итак, на повестке дня: Создаем плагины для FireFox быстро и чисто.
Читать дальше →

Высокопроизводительные AJAX-приложения

Reading time1 min
Views741
Примечание: ниже перевод презентации «High Performance Ajax Applications», подготовленной ведущим специалистом из Yahoo (а теперь уже из Apple) Julien Lecomte. В ней автор освещает некоторые аспекты оптимизации как JavaScript-приложений, так и веб-сайтов вообще. В целом, советов много, и почти все, действительно, по делу. Однако, встречается и откровенная реклама Yahoo :) Мои комментарии далее курсивом.

Часть 1. Разработка для высокой производительности



Планируем и проектируем для высокой производительности



  • Ориентируемся на производительность с самого первого дня
  • Тесно работаем с дизайнерами и менеджерами продукта
  • Понимаем рациональность дизайна
  • Объясняем компромиссы между дизайном и производительностью
  • Предлагаем альтернативы и показываем, что еще возможно (на уровне прототипа)
  • Пробуем силы в реализации нетривиального дизайна (нельзя сразу говорит «нет»)
  • Помогаем упростить дизайн и взаимодействие с пользователем (добиваемся компромисса)


читать дальше на webo.in →

PHP и ООП. Совмещаем \«несовмещаемое\»…

Reading time4 min
Views4.1K
Объектно-ориентированное программирование — как стиль жизни. Это не просто применение конструкций типа class или interface — это способ мышления, когда любая сущность программы является не просто набором инструкций, а представляет из себя \«живое\» существо…

Думаю напоминать что такое ООП, в рамках данной статьи, будет лишним, посему перейду сразу к проблематике вопроса.

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

Information

Rating
Does not participate
Location
Москва, Москва и Московская обл., Россия
Date of birth
Registered
Activity