Pull to refresh
0
0
Logrus @Logrus

User

Send message

Регулярные выражения. Сборник рецептов

Reading time8 min
Views7.3K
Мы каждый день работаем с текстом, решая разные задачи. Проверяем текст на правильность ввода некоторых данных, ищем, заменяем некоторые значения, выделем некоторые данные из текста. Порой объём этих данных значительно возрастает и справиться с такими объёмами текстовой информации за актуальный промежуток времени не получается.

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

Сегодня я хотел бы познакомить вас с книгой Яна Гойвертса и Стивена Левитана «Регулярные выражения. Сборник рецептов», которая поможет вам понять как работать с регулярными выражениями.

Читать дальше →
Total votes 94: ↑62 and ↓32+30
Comments49

Современный подход к визуальной идентификации бренда

Reading time16 min
Views25K
Природа тенденций * Мир стал другим * Матерные слова * Прощай, привычный логотип * Сквозная система визуальной идентификации — что это? * Решительное «нет» хиромантии * Открытый для фантазии * Учимся понимать клиента


Под катом много букв и картинок про то, что такое хорошо и что такое плохо.
Total votes 84: ↑77 and ↓7+70
Comments72

Свободный и бесплатный софт

Reading time12 min
Views18K
Я знаю, подобный топик уже был, но я думаю этот будет более полным. Свобода… Зачем платить, если можно оценивать чужой энтузиазм и иногда, когда чувства переполняют, жать кнопочку Donate.

далее список программ
Total votes 80: ↑71 and ↓9+62
Comments241

Чёрный экран входа в Windows Server 2003

Reading time1 min
Views6.7K
В один прекрасный день Windows Server 2003 начал выдавать траурное (готичное?) приветствие. Выглядит это так
приглашение
На работу системы это никак не сказалось, но вводить пароль оказалось проблематично. В рунете решения не нашлось. А вот на одном из форумов на английском нашлась тема с точным описанием проблемы, причины и решения.

Как оказалось, причиной явления является…
Читать дальше →
Total votes 79: ↑69 and ↓10+59
Comments94

Как Яндекс распознаёт музыку с микрофона

Reading time10 min
Views159K
Поиск по каталогу музыки — это задача, которую можно решать разными путями, как с точки зрения пользователя, так и технологически. Яндекс уже довольно давно научился искать и по названиям композиций, и по текстам песен. На сказанные голосом запросы про музыку мы тоже умеем отвечать в Яндекс.Поиске под iOS и Android, сегодня же речь пойдёт о поиске по аудиосигналу, а если конкретно — по записанному с микрофона фрагменту музыкального произведения. Именно такая функция встроена в мобильное приложение Яндекс.Музыки:

image

В мире есть всего несколько специализированных компаний, которые профессионально занимаются распознаванием музыкальных треков. Насколько нам известно, из поисковых компаний Яндекс стал первым, кто стал помогать российскому пользователю в решении этой задачи. Несмотря на то, что нам предстоит ещё немало сделать, качество распознавания уже сопоставимо с лидерами в этой области. К тому же поиск музыки по аудиофрагменту не самая тривиальная и освещённая в Рунете тема; надеемся, что многим будет любопытно узнать подробности.
Читать дальше →
Total votes 321: ↑313 and ↓8+305
Comments113

Symfony 2: Полезные библиотеки и бандлы

Reading time9 min
Views54K
Уже около полугода для разработки веб-проектов используем Symfony 2. Накопился список полезных библиотек и бандлов, не входящих в состав symfony-standard, но значительно экономящих время и избавляющих от изобретения велосипеда.



Обзор больше теоретический и включает следующие разделы:
  • Админгенераторы
  • Пользователи
  • Импорт/экспорт xls
  • API и OAuth 2.0
  • Меню/навигация
  • Мультимедиа
  • Формы
  • Поиск
  • Пагинация
  • Файловая система
  • HTTP клиент

Примеры использования и код можно изучить на страницах каждого проекта на github.com или на официальных сайтах, но если будет интересно, некоторые решения можно рассмотреть отдельно.

Читать дальше →
Total votes 42: ↑39 and ↓3+36
Comments16

Административный интерфейс с SonataAdminBundle

Reading time10 min
Views50K
В базовой поставке Symfony 2 предусмотрен только минимальный функционал создания CRUD интерфейса. Для реализации административного интерфейса разработан ряд бандлов, в частности SonataAdminBundle.
Читать дальше →
Total votes 18: ↑16 and ↓2+14
Comments12

Развитие валидации форм

Reading time9 min
Views22K

Валидация форм была педантичным занятием с момента появления web. Первой пришла серверная валидация. Затем она развилась в валидацию на стороне клиента для проверки результатов в браузере. Теперь у нас есть такие гиганты как HTML5 и CSS3: глава о формах HTML5 предлагает нам новые типы для input полей и атрибуты, которые делают возможным проверку ограничений поля. Базовый UI модуль CSS3 предоставляет несколько псевдо-классов, которые помогают нам стилизовать состояние валидности и менять внешний вид поля в зависимости от действий пользователя. Давайте взглянем на комбинацию обоих для создания валидатора форм основанного на CSS, который имеет достаточно широкую поддержку браузеров.

Чем больше мы можем дать подсказок пользователю, как правильно заполнять форму, в процессе заполнения, тем меньше шансов, что он сделает ошибку. Взгляните на пример CSS3 валидации форм в браузере поддерживающем CSS3 UI псевдо-классы, например Chrome 4+, Safari 5+ или Opera 9.6+. Я использовал CSS3 UI псевдо-классы и HTML5 атрибуты форм для создания валидации основанной на CSS. Давайте посмотрим как это работает.
Читать дальше →
Total votes 71: ↑69 and ↓2+67
Comments31

Penisland, или как написать спеллчекер

Reading time7 min
Views12K
Есть хорошая статья Питера Норвига, в которой он рассказывает как написать спеллчекер в 20 строк кода. В этой статье он показывает как поисковые системы могут исправлять ошибки в запросах. И делает это довольно элегантно. Однако, у его подхода есть два серьезных недостатка. Во-первых, исправление более трех ошибок требует больших ресурсов. А гугл, кстати, неплохо справляется и с четырьмя ошибками. Во-вторых, нет возможности проверки связного текста.



Итак, хочется исправить эти проблемы. А именно, написать корректор коротких фраз или запросов, который:
  • умел бы выявлять три (и более) ошибки в запросе;
  • умел бы проверять «разорванные» или «слипшиеся» фразы, например expertsexchange — experts_exchange, ma na ger — manager
  • не требовал много кода для реализации
  • мог бы достраиваться до исправления ошибок на других языках и других типов" ошибок

Остальное — под катом.
Читать дальше →
Total votes 133: ↑131 and ↓2+129
Comments49

extsrc.js — загружаем все скрипты асинхронно и уже после отрисовки страницы (даже с document.write)

Reading time4 min
Views21K
Хочу Вам рассказать о штуке, которую я изобрел сегодня, чтобы ускорить процесс загрузки сайтов. Все вы знаете, что <script src="..."></script> задерживает отрисовку страницы, пока не загрузится этот скрипт. Если их десятки — это может сереьезно замедлить работу сайта — в результате пользователь 20 секунд пялится на пустую (или недорисованную) страницу из-за какого-нибудь тупящего социального виджета (умножить на десяток этих виджетов).

Не правда ли было бы круто, если бы можно было сказать <script extsrc="..."></script> ("extsrc" = "грузи потом"), чтобы скрипты загружались после того как страница отрисована?

Все бы хорошо, но есть document.write… Сегодня я наконец решил его проблему — представляю extsrc.js — скрипт, который запустит все скрипты после отрисовки страницы (даже если они содержат document.write — и правильно отрисуется все).

Результат? Супер-быстрая загрузка страниц, даже если там море всяких внешних скриптов.

Использование:

Заменяем <script src="..."> на <script extsrc="...">.

Итого получается:

<script src="http://whiteposts.com/extsrc_js/extsrc.js"></script>
<script extsrc="..."></script>

все остальное под катом
Total votes 171: ↑157 and ↓14+143
Comments131

Отчёт о Web Standards Days в Киеве. Теперь официально

Reading time2 min
Views877

Не прошло и десяти дней, как мы публикуем официальный отчёт о встрече Web Standards Days, прошедшей в Киеве 18-го сентября. Как это обычно случается, финальная программа сильно отличалась от заявленной ранее — но только в сторону её улучшения. На встрече прозвучало шесть докладов:
  • Веб-стандарты в большом проекте: что помогает, а что мешает. Андрей Сумин, PDF 138 КБ;
  • Про проектирование интерфейсов и немного про Adobe Fireworks. Вадим Пацев, PDF 1,2 МБ;
  • Веб в кривых. Второе рождение SVG. Вадим Макеев, HTML 15,6 МБ;
  • Введение в Web Performance: W3C, Webkit, IE9 и будущее. Николай Мациевский, PDF 4,1 МБ;
  • Разработка веб-приложений. Обзорная экскурсия. Виталий Рыбалка;
  • Обзор новых API JavaScript. HTML5 и самостоятельные черновики W3C. Антон Немцев, HTML 750 КБ.
…причём порядок их следования составлялся налету, по мере появления докладчиков, что добавило некоторой динамики и неожиданности в нашу и без того нескучную программу.
Читать дальше →
Total votes 42: ↑40 and ↓2+38
Comments21

HTML5 для веб-дизайнеров. Часть 4: Формы 2.0

Reading time11 min
Views22K
HTML5 для веб-дизайнеров

  1. Краткая история языка разметки
  2. Модель HTML5
  3. Мультимедиа
  4. Формы 2.0
  5. Семантика
  6. HTML5 и современные условия


Когда браузеры стали поддерживать JavaScript, за ним быстро закрепились две основные задачи: эффекты при наведении мышью и улучшения для веб-форм. Потом в CSS появился псевдо-класс :hover и необходимость в скриптах для многих ситуаций первого плана отпала.

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

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

Нетрудно догадаться, что прежде они были частью отдельной спецификации WHATWG под названием Web Forms 2.0.
Читать дальше →
Total votes 124: ↑121 and ↓3+118
Comments30

13 антисоветов разработчику, желающему написать хороший веб-сайт

Reading time4 min
Views3.8K
Привет, разработчики на хабре!

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

1. Не проставляйте ключи!


СУБД пишут умные люди. Некоторые из них даже получают за это деньги. Зачем подсказывать им, как устроены данные? Пускай догадываются сами из названий полей и самих данных. В крайнем случае, админы поправят профайлером.
Читать дальше →
Total votes 146: ↑85 and ↓61+24
Comments101

Электронная цифровая подпись для чайников: с чем ее есть, и как не подавиться. Часть 1

Reading time4 min
Views135K
Итак, все чаще в кругах, работающих с документами все чаще звучат слова «электронный документ» и, связанное с ним почти неразрывно «электронная цифровая подпись», иначе — ЭЦП.

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

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

Читать дальше →
Total votes 105: ↑85 and ↓20+65
Comments108

Проверяй позиции в поисковиках %username%, бесплатно

Reading time1 min
Views745
Привет, Хабражители!
Несколько месяцев назад открылся сервис проверки позиций Сеумка.

Он позволяет владельцам сайтов отслеживать позиции своих сайтов в Google, Яндекс и Rambler в автоматическом режиме.

После длительного тестирования мы счастливы выставить сервис на обозрения Хабрасообщества.
Узнать, что к чему...
Total votes 48: ↑39 and ↓9+30
Comments57

Эта неделя в jQuery, том 6

Reading time2 min
Views1.3K
Другая неделя, другая коллекция ссылок на некоторые из самых интересных и захватывающих событий в Сети, касающихся jQuery.

Одним из самых интересных событий на этой неделе стал выпуск Glimmer. Glimmer позволяет легко создавать интерактивные элементы на вашей веб-странице, используя мощь библиотеки jQuery. Вы можете использовать мастера Glimmer для генерации скриптов jQuery, отрабатывающих самые общие интерактивные сценарии. Glimmer также имеет расширенный режим, обеспечивая дизайнер для создания эффектов на основе уже существующих HTML и CSS. — примечание от переводчика — есть отдельная статья на Хабре про Glimmer.

Также стоит упомянуть новый облик сайта jQuery для дизайнеров от Реми Шарпа.
Читать дальше →
Total votes 42: ↑36 and ↓6+30
Comments14

Сброс стилей с помощью CSS Reset

Reading time6 min
Views345K
Данная статья — первая из цикла на тему укрощения CSS. Сегодня мы рассмотрим технологию CSS Reset.

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


Каждый браузер устанавливает свои значения стилей по умолчанию для различных HTML-элементов. С помощью CSS Reset мы можем нивелировать эту разницу для обеспечения кроссбраузерности стилей.

Например, вы используете элемент a в вашем документе. Большинство браузеров, как Internet Explorer и Firefox, добавляют ссылке синий цвет и подчёркивание. Однако представьте, что через пять лет кто-то решил создать новый браузер (назовём его UltraBrowser). Разработчикам браузера не нравился синий цвет и раздражало подчёркивание, поэтому они решили выделять ссылки красным цветом и полужирным шрифтом. Именно исходя из этого, если вы установите базовое значение стилей для элемента a, то он гарантированно будет таким, каким вы хотите его видеть, а не как предпочитают его отображать разработчики UltraBrowser.

Читать дальше →
Total votes 100: ↑85 and ↓15+70
Comments102

Дао бизнесмена

Reading time6 min
Views1.6K

ВСЕГО ТРИ СУЩНОСТИ УПРАВЛЯЮТ ЭТИМ МИРОМ


Представьте, что Вы — это я.
Я, который разложил мир на три составляющие.
Человек, который строит бизнес и личность из: (1) концентрации, (2) энергии и (3) свободы.
Всего три сущности управляют нашим бизнесом и нашей личностью.
Постройте треугольник эффективности из этих сил, развивайте его в себе, и в вашей организации. рис. Концентрация, энергия и свобода — организуют треугольник эффективности.

Читать дальше →
Total votes 75: ↑44 and ↓31+13
Comments60

Запись и обработка акапеллы

Reading time3 min
Views40K
image
Человеческий голос в песне наиболее критичен к восприятию на слух, а потому звучать он должен максимально естественно. Большинство звукорежиссёров сходятся во мнении, что записывать вокал нужно так, чтобы свести к минимуму его последующую обработку, и это, конечно, правильно. Вот только реализовать подобное можно лишь на профессиональной студии с хорошим (желательно ламповым) оборудованием. А можно ли обойтись без этого дорогущего оборудования, но вместе с тем максимально приблизиться к студийному качеству звучания? Можно! Этим мы сейчас и займёмся.

Читать дальше →
Total votes 55: ↑50 and ↓5+45
Comments85

Клиентская оптимизация и этапы разработки

Reading time9 min
Views4.1K
Обычно пользователю нет дела до того, какие подходы мы применяем при разработке, как настроен сервер, какие клиентские и серверные фреймвёрки мы используем. Его может волновать на сколько сайт полезный, удобный и быстрый. Наша же задача заключается в том, чтобы не доставлять пользователю неудобства, радовать его, и тем самым заставлять его покупать наш мега-продукт или смотреть на наши замечательные баннеры. Эта статья о том, как создавать быстрые сайты.
Читать дальше →
Total votes 72: ↑65.5 and ↓6.5+59
Comments33
1

Information

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