Search
Write a publication
Pull to refresh
11
0
Дьяченко Илья @Delias

Front-end developer

Send message

Номер телефона

Reading time1 min
Views292K
Регулярное выражение для валидации номера телефона:

^((8|\+7)[\- ]?)?(\(?\d{3}\)?[\- ]?)?[\d\- ]{7,10}$

Ориентировано на российские мобильные + городские с кодом из 3 цифр (например, Москва).

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

5 основных ошибок интернет-магазинов

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

image

Итак…

1. Отсутствие фирменной концепции (логотипа, слогана, и т.п.).


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

Многие владельцы интернет-магазинов банально не понимают (лично спрашивал) – огромная часть продаж строится на бренде. У человека в голове есть ряд ячеек, заполненных брендами известных фирм. К примеру, «наушники – Koss», «операционная система – MacOS X», «газировка – Coca-Cola», и т.д. и т.п. Первоочерёдная задача фирменой концепции – заполнить ячейку «интернет-магазин — ?» вашим названием. Тогда пользователь будет возвращаться снова и снова.
Читать дальше →

Пишем своё первое приложение на Android

Reading time10 min
Views1.8M

Предисловие


Цель данного поста — с одной стороны поделиться своим успешным опытом старта разработки приложений на платформе Android и с другой стороны поспособствовать развитию рынка софта для этой замечательной и бурно растущей платформы за счёт (без ложной скромности скажу) возможно Вас, прочитавших данный пост. В сети, конечно, можно найти материалы на тему разработки приложения «чуть сложнее, чем helloworld», но как правило они разрозненные и в них не описываются различные мелкие подводные камешки. В данном посте мы рассмотрим полный цикл разработки приложения, начиная с чистого компьютера до готового apk-файла. Под катом скрины.
Читать дальше →

Как открыть отдел интернет-магазина в торговом центре или почему мы теперь стоим рядом с отделом PocketBook

Reading time8 min
Views49K
В прошлом материале я рассказывал про то, как выбирать место для интернет-магазина в реале. В нём были базовые теоретические выкладки, после которых многие запросили продолжения с конкретными числами. В этом топике — конкретные советы по открытию в торговом центре на примере одной из наших точек.

Топик будет полезен тем, кто:
  • Имеет свой интернет-магазин и хочет реальный;
  • Не знает, как открывать точку в ТЦ;
  • Выбирает между точкой самовывоза и разными вариантами магазинов.

Выжимка:
  • ТЦ хорош аудиторией, но плох жесткими условиями и высокими стартовыми затратами;
  • В ТЦ сложно, но реально встать;
  • Как презентоваться;
  • Персонал нанимается до открытия;
  • Какие бывают подставы;
  • Как делали открытие мы и как его нужно было делать.
Читать дальше →

76 новых материалов на русском

Reading time3 min
Views1.7K
image

Недавно был снова обновлен центр по Internet Explorer на MSDN. Были добавлены 76 статей и книг, посвященных следующим темам:



Полный список материалов со ссылками под катом
Читать дальше →

Пишем простое приложение на jQuery Mobile

Reading time8 min
Views59K
imageФреймворк jQuery Mobile вышел уже относительно давно, но только сейчас мне удалось им заняться. До этого имел дело с jQTouch и Sencha Touch. У каждого из них есть свои плюсы и минусы, но сегодня речь пойдет именно про разработку на jQuery Mobile. Для получения базового опыта я опишу создание простого приложения с несколькими страницами, интеграцией с твиттер и гуглокартами, ну и набором базовых элементов. Поехали!
Читать дальше →

PHPLego: Ненавязчивый AJAX

Reading time9 min
Views21K


Здравствуйте дорогие хаброчитатели!

Думали ли Вы когда-нибудь о том, чтобы Ваш сайт одинаково хорошо работал с включенным JavaScript-ом и без JavaScript-а? Чтобы, если JavaScript включен, блоки сайта перегружались AJAX-сом, а если JavaScript-а нет, то происходил просто переход на новую страницу?

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

Для себя я сформулировал задачу, по следующим критериям:
  • Переход по разделам сайта внутри и вне блоков должен осуществляться обычными ссылками, без каких бы то ни было onclick=”…”.
  • При включенном JavaScript-е блоки сайта перегружают только свою область страницы (свой div). При выключенном JavaScript-е должен происходить обычный переход по ссылке.
  • Должен существовать только один глобальный обработчик нажатия на ссылки $(“a”).click(…), который и делает всю работу по перегрузке нужных элементов страницы. Если же JavаScript отключен, то этот обработчик просто не срабатывает, и сайт продолжает работать в обычном режиме.
  • Постинг форм при включенном JavaScript-е также обновляет только ту область, в которой находится эта форма. При отключенном – все работает как обычно.
  • Должна быть возможность запретить AJAX-презагрузку некоторым областям страницы, например, поставив им какой-нибудь класс «noajax». Это если после перехода по ссылке меняется слишком много данных на странице, и они все в разных блоках. Тогда разумней перегрузить всю страницу целиком, чем обновлять каждый блочёк по отдельности. Оно и быстрее будет.
  • Должна быть возможность указать ссылке блок, который она должна перегрузить. Допустим, если нам нужно перегрузить не только текущий блок, но и блок родитель.
  • Если блок был загружен ранее, то он должен браться из кеша, дабы не гонять лишний трафик и не напрягать лишним запросом сервер.
  • В случае, если блок загружен из КЭШа, пользователь должен как-то понимать что эта не самая актуальная информация, и иметь возможность обновить блок.
  • Никакого JavaScript-a. Это конечно мое личное мнение, но я ненавижу писать на JavaScript-е. Поэтому я добавил еще один пункт. Смысл его в том, чтобы разрабатывая модули к сайту я не писал ни строчки JavaScript-а (ну максимум одну-две на модуль, и то для каких-нибудь чекбосов в форме). Не знаю, как ты, дорогой хаброчтец, но я, твою мать, лучше продам свою душу дьяволу, чем буду дебажить свой JavaScript во всех многообразиях браузеров!


Ну, вот собственно и все пожелания. Итак, приступим к реализации…
Читать дальше →

AndroidDev #1. Создаем файловый менеджер

Reading time10 min
Views71K


Android — перспективная и динамично развивающаяся операционная система. И многие программисты хотят научиться программировать приложения для OS Android, но беглый поиск структурированных материалов в сети Интернет и, в частности, Рунете, приводит их в ступор. Действительно, до сих пор существует проблема поиска обучающих статей (особенно на русском языке) по разработке приложений для этой весьма популярной операционной системы.
Ну, что ж, будем потихоньку улучшать данную ситуацию при помощи Хабра.
Сразу предупрежу, что материалы предназначены для тех, кто не имеет опыта разработки приложений для Android, но очень-очень хочет этот опыт приобрести.

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

CMS своими руками. Теория велосипедостроения

Reading time8 min
Views25K
Как много веселых ребят
И все делают велосипед.
А один из них как-нибудь утром
Придумает порох.
Виктор Цой.

image

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

Итак, я стал смотреть, по каким же запросам попадают ко мне начинающие «разработчики велосипедов», и постарался осветить некоторые вещи, которые для меня самого были неочевидны в начале работ.

Ну-с, показывайте ваши синяки...

3 главные проблемы сайтов web-студий

Reading time3 min
Views15K
Не самая новая тема, не самые свежие идеи. Но, раз количество сайтов с подобными ошибками только растёт, мои советы могут быть вам полезны.

image

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

#1: Текст главной страницы


Надеюсь, не нужно объяснять, насколько важен для web-сайта хороший текст. Особенно, если сайт коммерческий. Но, в то же время, тексты 90% сайтов web-студий СНГ бесполезны. Почему я так считаю?

Давайте посмотрим на вопрос со стороны заказчика и будем предельно откровенны. Сколько студий «уже 10 лет на рынке web-разработки»? Сотни. В скольких студиях «работают только квалифицированные специалисты»? Во всех. У какой студии «самая качественная и расширяемая CMS»? У каждой.
Читать дальше →

Hg Init: Часть 6. Архитектура репозиториев

Reading time5 min
Views30K
Это шестая, заключительная часть из серии Hg Init: Учебное пособие по Mercurial от Джоэля Спольски (Joel Spolsky). Предыдущие части:



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

Часть 6. Архитектура репозиториев



Наш рецепт становится все лучше:

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

Тупая интеграция phpbb3 с любым сайтом

Reading time4 min
Views13K
Рассмотрим стандартную задачу — на сайт с уже существующими пользователями нужно добавить форум. При этом не писать новый модуль самому, но поставить готовое популярное решение типа phpbb3 и синхронизировать регистрацию/авторизацию/профили пользователей сайта с форумом. Минимально нужно, чтобы пользователи сайта стали пользователями форума, и чтобы авторизованный пользователь сайта автоматически становился авторизованным пользователем форума и наоборот, а так же происходила синхронизация при изменении профиля.

В сети есть плагины для синхронизации phpbb и wordpress (WP-United) и универсальные руководства (1,2), но последние, как правило, начинаются словами «скопипастить эти… дцать функций из functions.php» и «вставить в эти 3 таблицы вот такие данные».

Другой метод интеграции — начать использовать таблицы пользователей и методы к ним из phpbb на остальном сайте, но это обычно требует значительных модификаций системы.

Расскажу про свой способ, который тормознее обычных, но зато требует минимальных изменений файлов сайта и форума (по 10 строчек на каждом для подключения файла с классом-синхронизатором в 5кб).
Читать дальше →

Проверяем отказоустойчивость сайта

Reading time4 min
Views36K
Результаты тестирования. Время ответа сервераЭто очередной пост их уже традиционной предновогодней серии про проверку отказоустойчивости сайта и готовности его принять всех ваших посетителей, озадаченных выбором подарков или предновогодними скидками. В этом выпуске я рассмотрю создание тестов в расширенном режиме с использованием записи действий (Proxy recorder), что позволяет почти полностью эмулировать поведение реальных пользователей из реального браузера у вас на сайте. Также немного будет затронута тема анализа самих графиков по отказоустойчивости.
Итак, поехали.
Читать дальше →

Hosts Commander — модификация hosts из командной строки

Reading time3 min
Views26K
Я хотел бы посвятить немного времени файлу hosts. Года два назад, когда я в очередной раз забирался в глубину системных директорий, чтобы подправить всего одну строчку в этом файле, мне подумалось, как было бы классно работать с hosts из командной строки. Тогда идея отправилась в дневничок, и долгое время оставалась нетронутой. Пару дней назад я реализовал почти все идеи, которые пришли в голову по этому поводу. Результатом делюсь с хабрасообществом. Буду рад, если кому-нибудь пригодится.

Что получилось?


А получилась небольшая программа hosts.exe, которую кратко можно охарактеризовать так:
  • Операции добавления, удаления и отключения хостов
  • Поддерживает операции над хостами по маске
  • Простые выборки из hosts по атрибутам и маске
  • Создание резервных копий hosts и откат последней операции
  • Поддержка IDN (можно создавать русскоязычные домены)
  • Поддержка IPv6 адресов
  • Поддержка алиасов (несколько доменных имён в строке)
  • Сохраняет исходное оформление и кодировку файла hosts
  • Большое количество алиасов для каждой команды (кому как удобнее)
Читать дальше →

Обзор: 10 русских SaaS-систем управления проектами

Reading time1 min
Views15K
Столкнулся с задачей подбора системы управления проектами для своей команды. Порадовало, что на Хабре есть много полезных статей и обзоров по этому поводу (и не менее полезных комментариев к ним). Помимо этого переворошил еще множество обзоров и отзывов разных людей и в ходе поисков наткнулся на интересную сводную таблицу Обзор: 10 русских SaaS-систем управления проектами.

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

Посчитал табличку достойной внимания Хабра, но чтобы не обижать автора и не копипастить, ограничусь ссылкой на табличку в его ЖЖ. Если автор присутствует на Хабре, буду рад познакомиться.

Файлшаринг — ничего лишнего — ge.tt

Reading time1 min
Views1.5K
image
Сложно представить более простой сервис для файлшаринга в сети. Регистрация не обязательна, никакой рекламы, зашел на сайт, залил файл, получил короткую ссылку — все. Срок хранения — 30 дней. Ограничение — размер файла 2Gb, ну и конечно нельзя заливать противозаконные файлы — будут удалены при получении сервисом предупреждения.

Судя по описанию сервиса, бизнес модель будет построена по принципу фремиум — дополнительные возможности для платных аккаунтов.

Ge.tt

Рисуем флуоресцентным акрилом по твердой поверхности

Reading time8 min
Views59K
Когда-то тут пролетал топик по рисованию акриловыми красками по ткани.
Давно пытаюсь пнуть себя, чтобы описать собственный опыт в этом деле. Надеюсь, информация будет полезной для тех, кто хочет порисовать, но не знает, с чего начать. Под катом описание процесса разрисовывания обычной комнатной двери флуоресцентными акриловыми красками.
[осторожно, там фотки]
Читать дальше →

Бизнес-план. Статья 3. Описание продукта. Кто сказал, что это будут покупать?

Reading time3 min
Views12K
Приветствую всех!
Продолжаем писать бизнес-план

Статья 1. Начало
Статья 2. Описание бизнеса

Темой этой статьи является то, что вы продаете.

Что мы продаем?


Как вы помните, я часто рекомендую вам задавать себе побольше вопросов. Сегодня не исключение.
Итак, какой вопрос является лучшим на тему вашей продукции? «Каков наш продукт или услуга?» Нет.
Нужно задавать себе следующий вопрос: «Что мы продаем?». Казалось бы, разницы нет. Ан нет, есть.
Присмотримся внимательнее: например, вы думаете, что продаете молотки, гвозди, краску, обои, ламинат. Однако клиенты у вас покупают не это. Клиенты покупают улучшенный интерьер дома, решение мелких проблем по хозяйству, и прочее. Заметили разницу? Думать о своем продукте лучше уровнем вверх, прослеживая его комплексные цели. Так будет легче позиционировать и продавать.
Вышеуказанный подход позволит вам ставить более четкие цели. В примере выше цель — обеспечить возможность ремонта, улучшения жилищных условий клиентам. Ребята из 37Signals продают не программу Basecamp для проджект-менеджеров, а возможность командам совместно управлять проектами и укладываться в сроки.

Почему это будут покупать?


image
* перевод «Твоя мама это неподходящий рынок для проверки»
Читать дальше →

Кейс «Проектирование веб-сервиса бронирования билетов». Бизнес-анализ. Описание предметной области

Reading time2 min
Views16K
Параллельно с описанием бизнес-процессов, контекста и профилей заинтересованных лиц необходимо изучать предметную область. Основными инструментами здесь являются словарь терминов (который лучше составлять совместно с экспертом предметной области) и диаграмма сущностей, которая изображает, какие есть сущности, и какие между ними есть взаимосвязи.

IV. Описание предметной области


Законодательные ограничения

— Зрителю должно быть больше 14 лет (для сделкоспособности).
— Необходимо дополнительное пользовательское соглашение, в котором пользователю будет необходимо дать согласие на использование его персональных данных.
— В соглашении также должно быть указано, что услуга бронирования предоставляется безвозмездно.

Словарь терминов

Диаграмма сущностей

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


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

Information

Rating
Does not participate
Location
Украина
Registered
Activity