Несколько позже, чем хотелось, но продолжаем наш разговор о получении текста из разных форматов данных. Мы с вами уже познакомились с тем, как работать с изначально XML-base файлами (docx и odt), прочитали текст из pdf, преобразовали содержимое rtf в plain-text. Теперь перейдём в вкусненькому да сладенькому — формату DOC.
Михаил @1allen
backend developer
Полнотекстовый поиск и его возможности
6 min
206KМногие СУБД поддерживают методы полнотекстового поиска (Fulltext search), которые позволяют очень быстро находить нужную информацию в больших объемах текста.
В отличие от оператора LIKE, такой тип поиска предусматривает создание соответствующего полнотекстового индекса, который представляет собой своеобразный словарь упоминаний слов в полях. Под словом обычно понимается совокупность из не менее 3-х не пробельных символов (но это может быть изменено). В зависимости от данных словаря может быть вычислена релевантность – сравнительная мера соответствия запроса найденной информации.
В статье рассказывается как работать с полнотекстовым поиском на примере БД MySQL, а так же приведу примеры «нестандартного» использования данного механизма.
В отличие от оператора LIKE, такой тип поиска предусматривает создание соответствующего полнотекстового индекса, который представляет собой своеобразный словарь упоминаний слов в полях. Под словом обычно понимается совокупность из не менее 3-х не пробельных символов (но это может быть изменено). В зависимости от данных словаря может быть вычислена релевантность – сравнительная мера соответствия запроса найденной информации.
В статье рассказывается как работать с полнотекстовым поиском на примере БД MySQL, а так же приведу примеры «нестандартного» использования данного механизма.
+73
Скругленные углы на чиcтом CSS без JS без картинок с анти-аллиасингом
2 min
7.7KРаз уже пошла такая пьянка бурное обсуждение, то предложу и свой метод скругления углов, с характеристиками, которые можно увидеть в названии топика.
Хочу заметить, что это не улучшение какого-то из существующих методов, а совершенно новый (по крайней мере, я нигде не смог найти — наверное, плохо искал ;) метод. В статье 38 статей о создании закругленных углов на сайтах данный метод также не был упомянут.
Итак, что же мы имеем: чистый CSS, без единой картинки, без JavaScript (хотя и с ним, для демонстрации, тоже сделаем), с анти-аллиасингом (то есть плавные переходы), прозрачные углы (то есть в фоне может быть что угодно), тянущийся по высоте и ширине и, конечно же, кроссбраузерный метод.
Хочу заметить, что это не улучшение какого-то из существующих методов, а совершенно новый (по крайней мере, я нигде не смог найти — наверное, плохо искал ;) метод. В статье 38 статей о создании закругленных углов на сайтах данный метод также не был упомянут.
Итак, что же мы имеем: чистый CSS, без единой картинки, без JavaScript (хотя и с ним, для демонстрации, тоже сделаем), с анти-аллиасингом (то есть плавные переходы), прозрачные углы (то есть в фоне может быть что угодно), тянущийся по высоте и ширине и, конечно же, кроссбраузерный метод.
+109
Список полезных инструментов для CSS разработчика
8 min
71KTranslation
Это не попытка создать список всех существующих инструментов для CSS разработки. Только некоторые, наиболее полезные были отобраны и размещены в соответствующих категориях.

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

Чтобы инструмент был по-настоящему полезен, у него должна быть хорошая документация и дружелюбный интерфейс. К сожалению, некоторые инструменты в списке не полностью попадают под данные критерии. Если кто-то знает лучшие альтернативы с более дружелюбным интерфейсом и большей функциональностью, пишите в комментариях.
+161
Wordpress — стандарты кодирования плагинов
8 min
4.8K
Увлекшись написанием плагинов для Wordpress'а составил правила хорошего тона…
+66
Теперь Мультиязычный!
1 min
8.5K«Он (Ринсвинд) мог кричать «Помогите» на четырнадцати языках, и вымаливать помилования на сорока двух.»
«Эрик» Терри Пратчетт
Не так давно (месяца четыре назад) ребята из МедиаСтудии мне предложили сделать плагин для Wordpress, который бы позволил вести блоги или созадвать сайты на нескольки языках.
В результате получилось вот это — WP Multilingual. К запрашиваемым функциональностям просто вести блог на нескольких языках, я добавил еще (думаю все таки полезных возможностей) несколько, если коротко просумировать то WP Multilingual умеет:
Интерфейс программы локализирован Украинским, Русским, Греческим (спасибо дизайн-бюро «make» и Ирине в особености), Французким и Итальянским.
Пока есть несколько идей развития — одна из них предложена Марком Гошем и заключается в добавлении возможности автоперевода при помощи к примеру сервиса Google Translate — которые будут реализованы по мере наличия свободного времени.
Временная страница плагина находится по адресу WP Multilingual.
Буду рад услышать дельные коментарии и предложения.
P.S.
Пользуясь случаем — если кто изявит желание сделать перевод интерфейса на собственную родную речь, свяжитесь со мной при помощи хабрапочты.
«Эрик» Терри Пратчетт
Не так давно (месяца четыре назад) ребята из МедиаСтудии мне предложили сделать плагин для Wordpress, который бы позволил вести блоги или созадвать сайты на нескольки языках.
В результате получилось вот это — WP Multilingual. К запрашиваемым функциональностям просто вести блог на нескольких языках, я добавил еще (думаю все таки полезных возможностей) несколько, если коротко просумировать то WP Multilingual умеет:
- Управлять Постами и Страницами на нескольких языках
- Настраивать локализацию Wordpress'а для админчасти — (это полезно если блог ведуть несколько человек и все они разных национальностей) на свой лад. Кому украинский, кому русский, кому английский не измененный.
- Настраивать локализацию Wordpress'а для тем — вводится зависисмость локализации темы от выбраного языка
- Управлять переводом категорий/тегов/блогрол линков
Интерфейс программы локализирован Украинским, Русским, Греческим (спасибо дизайн-бюро «make» и Ирине в особености), Французким и Итальянским.
Пока есть несколько идей развития — одна из них предложена Марком Гошем и заключается в добавлении возможности автоперевода при помощи к примеру сервиса Google Translate — которые будут реализованы по мере наличия свободного времени.
Временная страница плагина находится по адресу WP Multilingual.
Буду рад услышать дельные коментарии и предложения.
P.S.
Пользуясь случаем — если кто изявит желание сделать перевод интерфейса на собственную родную речь, свяжитесь со мной при помощи хабрапочты.
+27
Золотые горы стартапу, или не живем бесплатно, даже если назвался 'free'
11 min
1.8KЭтот топик — приглашение к обсуждению. В конце обещаю очень полезную вещь.
В последнее время, все больше появляется бесплатного и открытого. Все понятно, когда Google делает великолепный инструмент на котором можно было бы много заработать (SketchUp) — бесплатным — все понимают, что компания и так зарабатывает много денег и ей важнее заполучить больше пользователей. Хотя и есть платная версия. Однако все больше и больше из нас придумывают новые идеи, такие как YubNub (сервис не мой), и подобные, которые облегчат жизнь пользователям. Сделать — день-два, отладить неделя-десять, донести до ума пользователей — год.
Однако встает вопрос — тратить время на развитие сервиса — это терять деньги. Элементарно — сервер, люди, личное время — все деньги отнимает. Раньше эту проблему могла бы решить реклама…
В последнее время, все больше появляется бесплатного и открытого. Все понятно, когда Google делает великолепный инструмент на котором можно было бы много заработать (SketchUp) — бесплатным — все понимают, что компания и так зарабатывает много денег и ей важнее заполучить больше пользователей. Хотя и есть платная версия. Однако все больше и больше из нас придумывают новые идеи, такие как YubNub (сервис не мой), и подобные, которые облегчат жизнь пользователям. Сделать — день-два, отладить неделя-десять, донести до ума пользователей — год.
Однако встает вопрос — тратить время на развитие сервиса — это терять деньги. Элементарно — сервер, люди, личное время — все деньги отнимает. Раньше эту проблему могла бы решить реклама…
+106
Программирование под Windows CE с помощью Embedded Visual C++, часть 1
4 min
22KЭтот пост для настоящих программистов, которые вместо букваря учили алфавит по третьему изданию справочника по C++. Программировать под Windows CE будем на C++ с помощью Embedded Visual C++.
Итак, нам понадобятся:
Итак, нам понадобятся:
+12
Десять смертных грехов веб-типографики
2 min
4.4KTranslation
В то время как множество дизайнеров быстро осваивают стандарты веб-разработки, остаётся только удивляться как часто они ухитряются нарушают основные правила типографики. Вот список из десяти грехов, которых вам следует избегать:
1. Использование дефисов вместо тире em-dash.

Если вам нужно прервать мысль, то делайте это с помощью символа (alt+0151), а не парой знаков «минус». Это, пожалуй, главный источник раздражения для всех редакторов.
1. Использование дефисов вместо тире em-dash.

Если вам нужно прервать мысль, то делайте это с помощью символа (alt+0151), а не парой знаков «минус». Это, пожалуй, главный источник раздражения для всех редакторов.
+108
38 статей о создании закругленных углов на сайтах
4 min
12KМоя статья на Временно.нет

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

Часто сталкиваешься с необходимостью создания блоков с круглыми краями. Задавшись вопросом как вообще можно решить поставленную задачу, сделал подборку интересных статей и уроков на данную тему.
Здесь представлен обзор 38 статей, разбитых на 4 категории по способам реализации.
+4
Аморфное стадо на службе у своей лени
2 min
3KНавеяно недавними постами «Вы готовы отлучить себя от Одноклассников, Вконтакте и прочих подобных соцсетей раз и навсегда?» и «Законно ли слежение за компьютером сотрудника?».
Откуда мысли.
Возвращаясь из соседнего здания в нашем бизнес-центре и проходя мимо панорамных окон первого этажа, кинул взгляд внутрь, дабы узнать — что твориться внутри и чем занимаются сотрудники. Был, мягко скажем, удивлен. 90% сотрудников были заняты явно не прямыми своими обязанностями — вконтакте, одноклассники, несколько игр, форумы, снова вконтакте, снова одноклассники, снова вконтакте и так почти на всех мониторах, которые попали в мое поле зрения.
Откуда мысли.
Возвращаясь из соседнего здания в нашем бизнес-центре и проходя мимо панорамных окон первого этажа, кинул взгляд внутрь, дабы узнать — что твориться внутри и чем занимаются сотрудники. Был, мягко скажем, удивлен. 90% сотрудников были заняты явно не прямыми своими обязанностями — вконтакте, одноклассники, несколько игр, форумы, снова вконтакте, снова одноклассники, снова вконтакте и так почти на всех мониторах, которые попали в мое поле зрения.
+125
css fix для различных браузеров
2 min
12KПредставьте себе абстрактный разговор абстрактного заказчика с абстрактным верстальщиком.
— У тебя бага в менюшке, все наверх съехало, — говорит заказчик.
— Посмотрел во всех браузерах, нету! Ты в каком смотришь? — говорит верстальщик.
— В фаерфоксе.
— Нормально все там, — говорит верстальщик, просмотрев сайт во всех версиях фаерфокса.
— Осталось бага. Если это важно, то я с мака.
+149
Интересные сайты
1 min
2.3KСовершенно случайно наткнулась на сайт ff0000.com
Это прямо не сайт, а игрушка:) Чувствуешь себя булгаковской Маргаритой, попавшей на шабаш к ведьмам.
Это прямо не сайт, а игрушка:) Чувствуешь себя булгаковской Маргаритой, попавшей на шабаш к ведьмам.
+31
Текстура для веб-дизайна
1 min
13K
Первым в этом списке я выбрал http://www.textureking.com/ — красивый и понятный дизайн сайта, а также хороший выбор текстур которые разделены на 14 категорий.
Следущим будет http://www.cgtextures.com/ — огромное количество текстур и их категорий (вожможно он и получше textureking :), вам решать.
+61
Использование пространств имен для организации JavaScript-кода
3 min
16KTranslation
На текущий момент большинство web-приложений состоят из большого числа библиотек, виджетов и сниппетов из многих и многих источников. Следует помнить, что код других разработчиков может взаимодействовать с вашим кодом в случае, если происходит подключение обоих их на одной странице. А если вы оперируете глобальными переменными, то это и вовсе небезопасно.
+23
Пространство имён в Javascript-коде 2
1 min
8.1KПрочитав заметку об использовании пространств имён в Javascript коде мне захотелось поделиться подходом, который использую я. Он изобретён не мной, конечно, но, возможно кто-то о нём не знает. Этот подход отличается от предложенных в той статье тем, что позволяет кроме функций и данных видимых снаружи, также определять данные и функции локальные для пространства имен и невидимые снаружи.
+15
5 советов IT-специалисту на примере вёрстки
5 min
2.7KЭпидемия советов по вёрстке добралась и до меня (спасибо Юре Артюху) — с удовольствием ими поделюсь. Данные советы довольно общие и в принципе применимы к многим IT-специальностям, — вёрстка здесь используется просто как пример.
+47
C#: требования и рекомендации по написанию кода
5 min
150KНе так давно в комментариях к топику AlexS высказал идею использования соглашения об оформлении на Хабре кода примеров темы .Net написанных на C#.
Я немного поизучал имеющиеся предложения из этих источников:
submain.com/blog/FreeCVBNETCodingGuidelinesEbookDownload.aspx
idesign.net/idesign/DesktopDefault.aspx
и скомпилировал черновик который описывает самые базовые правила оформления кода написанного на C#.
Предлагаю:
— обсудить этот черновик;
— внести в него все необходимые изменения;
— утвердить как стандарт написания C# кода на Хабре.
Более того, предлагаю создать документ, который можно было бы предложить как рекомендации habrahabr comunity для всех других программистов C#.
Под катом вы найдете текст черновика. Предлагаю всем желающим обсудить его и подвергнуть надлежащей правке.
Я немного поизучал имеющиеся предложения из этих источников:
submain.com/blog/FreeCVBNETCodingGuidelinesEbookDownload.aspx
idesign.net/idesign/DesktopDefault.aspx
и скомпилировал черновик который описывает самые базовые правила оформления кода написанного на C#.
Предлагаю:
— обсудить этот черновик;
— внести в него все необходимые изменения;
— утвердить как стандарт написания C# кода на Хабре.
Более того, предлагаю создать документ, который можно было бы предложить как рекомендации habrahabr comunity для всех других программистов C#.
Под катом вы найдете текст черновика. Предлагаю всем желающим обсудить его и подвергнуть надлежащей правке.
+17
jQuery для JavaScript-программистов
12 min
71KTranslation
Примечание: ниже расположен перевод статьи «jQuery for JavaScript programmers», в которой автор высказывает свое мнение об этой библиотеке, ориентируясь, в первую очередь, на продвинутых программистов, и приводит несколько десятков примеров ее использования.
Когда jQuery увидела свет в январе 2006, я подумал: «очередная красивая игрушка». Выбор CSS-селекторов в качестве базиса было, конечно, изящной идеей (подробнее о ней в моей заметке getElementsBySelector), но использование цепочек преобразований выглядело немного замысловато, и сама библиотека, по-видимому, не покрывала всех возможных случаев. Я расценивал тогда jQuery только как временное и проходящее решение.
Только несколько месяцев спустя понял я, насколько же ошибался по отношению к ней. jQuery является просто произведением инженерного искусства. Она умело покрывает достаточно широкой диапазон повседневных функций и предоставляет при этом удобный API для расширений, с помощью которых можно добавить любую другую функциональность. Абстрактность в ней заложена на уровне ядра — речь идет о выборе DOM-элементов — и она извлекает из него максимум пользы. И что важнее всего, использование этой библиотеки подразумевает следование хорошему стилю в программировании и хорошо сочетается с другими частями JavaScript-кода.
Большинство современных обзоров jQuery делают упор на дизайнеров и неопытных разработчиков. Я попытаюсь объяснить, почему она также нужна и опытным программистам.
Когда jQuery увидела свет в январе 2006, я подумал: «очередная красивая игрушка». Выбор CSS-селекторов в качестве базиса было, конечно, изящной идеей (подробнее о ней в моей заметке getElementsBySelector), но использование цепочек преобразований выглядело немного замысловато, и сама библиотека, по-видимому, не покрывала всех возможных случаев. Я расценивал тогда jQuery только как временное и проходящее решение.
Только несколько месяцев спустя понял я, насколько же ошибался по отношению к ней. jQuery является просто произведением инженерного искусства. Она умело покрывает достаточно широкой диапазон повседневных функций и предоставляет при этом удобный API для расширений, с помощью которых можно добавить любую другую функциональность. Абстрактность в ней заложена на уровне ядра — речь идет о выборе DOM-элементов — и она извлекает из него максимум пользы. И что важнее всего, использование этой библиотеки подразумевает следование хорошему стилю в программировании и хорошо сочетается с другими частями JavaScript-кода.
Большинство современных обзоров jQuery делают упор на дизайнеров и неопытных разработчиков. Я попытаюсь объяснить, почему она также нужна и опытным программистам.
+45
15 примеров отличной типографики
2 min
12KTranslation
Британский сайт I Love Typography, посвящённый типографике, опубликовал список с примерами отличной типографики. Этот список составлен по итогам II кв. 2008 года. Предыдущие «хит-парады» можно найти здесь и здесь.
Каждый пример сопровождается кратким комментарием, а нажатие на скриншот ведёт на оригинальный сайт.
Нет флэша, нет картинок, нет лишнего шума; просто хорошо стилизированный шрифт и хорошо написанный текст: реальное доказательство того, что с помощью только шрифта можно получить отличный результат. Хотелось бы увидеть ещё несколько примеров такого рода.

Каждый пример сопровождается кратким комментарием, а нажатие на скриншот ведёт на оригинальный сайт.
Seed Conference
Нет флэша, нет картинок, нет лишнего шума; просто хорошо стилизированный шрифт и хорошо написанный текст: реальное доказательство того, что с помощью только шрифта можно получить отличный результат. Хотелось бы увидеть ещё несколько примеров такого рода.

+50
Information
- Rating
- Does not participate
- Date of birth
- Registered
- Activity
Specialization
Backend Developer, Web Developer
Senior
From 3,999 €
PHP
Symfony
JavaScript
MySQL
Unix
Docker
Kubernetes
Laravel
Golang