Как стать автором
Обновить
  • по релевантности
  • по времени
  • по рейтингу

Vue 3. Что нового?

Разработка веб-сайтов *JavaScript *VueJS *

Многие из нас ждут выхода Vue 3 и похоже, что он почти здесь (релиз запланирован на второй квартал 2020 года) и уже есть возможность взглянуть или даже поэкспериментировать с бета-версией.

Читать дальше →
Всего голосов 8: ↑4 и ↓4 0
Просмотры 27K
Комментарии 4

ASP.NET: расширяем механизм путей SiteMapPath

.NET *
При разработке на ASP.NET мы привыкли для стандартных задач использовать стандартные компоненты. Одной из таких стандартных задач является вывод на каждой странице сайта пути к ней от главной страницы — фрагмента карты сайта (sitemap path). Для этого используется контрол SiteMapPath, берущий данные о карте сайта от провайдера карты сайта (SiteMapProvider) по умолчанию, который, в свою очередь, берет их из конфигурационного файла Web.siteMap.

Поместив этот контрол на мастер-страницу сайта, и описав в конфигурационном файле карту сайта, мы тем самым обеспечиваем вывод пути на всех страницах.

Но ASP.NET — расширяемая среда, и позволяет замещать почти все стандартные модули, и провайдер карт сайта — не исключение. Мы рассмотрим, как создать свой провайдер для получения расширенной функциональности для карты сайта.

Читать про SiteMapPath с динамическим содержимым
Всего голосов 1: ↑1 и ↓0 +1
Просмотры 1.9K
Комментарии 6

CAPTCHA для Вашего сайта

.NET *
Сегодня я расскажу о том, как можно быстро и легко прикрутить проверку CAPTCHA на Ваш сайт.


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


В данном примере я воспользовался бесплатным сервисом recaptcha.net. Вам придется пройти регистрацию, чтобы работать с ним, ибо понадобятся Public и Private ключи.


Читать дальше →
Всего голосов 26: ↑14 и ↓12 +2
Просмотры 17K
Комментарии 23

Программирование — миф или реальность?

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

Я пытался найти ответы на вопросы, которые меня интересуют, но не смог.
Всего голосов 26: ↑16 и ↓10 +6
Просмотры 1.3K
Комментарии 74

Еще один способ защиты от спама отображаемых на сайте емейлов

Спам и антиспам
Проблема защиты от спама емейлов, выложенных на сайте, уже наболевшая и давно затертая до дыр. Но я случайно нашел еще один способ борьбы.
Читать дальше →
Всего голосов 53: ↑42 и ↓11 +31
Просмотры 1.6K
Комментарии 79

Идеальный скриптовый язык для WEB.

Чулан
Добрый день уважаемые Хабралюди! В данный момент занимаюсь проектированием нового скриптового языка (по типу PHP, Perl) и в связи с этим хотел бы написать не абстрактный и ни кому не нужный язык (задание к дипломному пректу), а язык который можно было бы использовать в реальных проектах. Хотел бы узнать мнение Хабраобщества, как вы представляете себе идеальный скриптовый язык для WEB, какие функции наиболее востребованны, какой синтаксис удобней всего (язык объектно-ориентированный), и насколько он востребован на сегодняшний день.

UPD: хотелось бы реальных предложений по синтаксису языка.
Всего голосов 33: ↑22 и ↓11 +11
Просмотры 641
Комментарии 78

Data:URI CSS Sprites — современный подход к генерации CSS спрайтов

Клиентская оптимизация *
Мучения со стандартным подходом применения CSS спрайтов, а именно трудности модернизации и в некоторых случаях сложности оптимальной компоновки заставили искать альтернативный вариант оптимизации загрузки изображений. Очередной раз почитывая хабра-статьи, наткнулся на интересный подход реализации спрайтов с применением data:URI. В ходе дискуссий и умозаключений были определены слабые и сильные стороны данного подхода. Одним из значительных недостатков нового подхода является сложность сборки конечного CSS. Однако, при использовании data:URI имеет место возможность автоматизации процесса.
Читать дальше →
Всего голосов 39: ↑38 и ↓1 +37
Просмотры 3.5K
Комментарии 80

JavaFX — «пластилиновая ворона»

Java *
Как уже известно Java программистам (и не только) на днях состоялся официальный релиз JavaFX. Я периодически проявлял интерес к данному направлению. Пришло время конкретно пощупать что ж это за «зверь» такой с модными буквами FX. Программировать что попало (т.е. тренироваться на кошках) конечно не интересно. Соответственно с пользой для дела написал компонент для веб сервиса загрузки файлов
Читать дальше →
Всего голосов 41: ↑38 и ↓3 +35
Просмотры 3.2K
Комментарии 34

Интернет-магазин контактных линз «ЭКЗОЛИНЗА»

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

С чем пришлось бороться. Представление многих видов товаров в интернет-магазинах имеют свои особенности. Особенность контакных линз в том, что самих брендов всего несколько десятков, но каждая контактная линза имеет несколько параметров — возможные диоптрии, радиус кривизны, цвет и другие. Поэтому несколько десятков позиций в каталоге выливаются в несколько тысяч позиций на складе. Хороший интернет-магазин должен быть связан с остатками на складе, чтобы показать посетителю, что такая-то линза с диоптрией -2 есть в наличии, а с -3 может отсутствовать. Это небольшое предисловие — так, чтобы Вы имели небольшое представление о контактных линзах.

Реализация. Было решено реализовывать с помощью AJAX технологий. Цели: уменьшить объем загрузки второстепенной информации, сделать удобным добавление товара в корзину.

Результат — www.exolinza.ru. Хотелось бы услышать Ваше мнение. Кроме того, пригласить участвовать в уникальной реферальной партнерской программе нашего интернет-магазина (подробности здесь: www.exolinza.ru/partner.asp)

Чтобы полностью оценить удобства и недостатки, можете проделать весь путь с тестовым заказом. Для тестовых заказов — при оформлении в поле фамилия укажите «Тест». Буду весьма признателен за здоровую критику, замечания и предложения.
Всего голосов 22: ↑8 и ↓14 -6
Просмотры 732
Комментарии 30

Капля, Унция и Ведро

Чулан
Это суперски, что на Хабре есть обучающие статьи. Так сказать: изучаем по шагам: Ruby по каплям, Питон унциями и что-то (забыл что) вёдрами. А… Чуть не забыл — Java — чашками.

На будущее можно предложить следующие единицы измерения:

  • карат
  • грамм
  • милилитр (не капля!)
  • фунт (это для среднего уровня)
  • пуд (это уже при изучении на уровне senior)


Можно, также, переключиться на скорость измерения: изучаем javascript со скоростью две функции в час, или разгоняем PHP до 50 строк в секунду.

Здорово, что есть учебные материалы, и странно, что так неоригинально придумывают названия. Видимо, чтобы взгляд цепляло? Но мне кажется, если человеку интересен Python то всё равно — каплями его выдавливают, или вёдрами льют :)

Было бы очень метко отмечать уроки в %, однако, все кто публикует (я так думаю) вряд ли имеют чёткий план изучения того или иного языка программирования. Поэтому для кого-то это будет 20%, а кто-то поймёт что язык стал понятен, а фунции — всегда можно будет глянуть в api документации.

У меня, по-крайней мере, на определённом этапе изучения «чего угодно» наступает момент «просветления», после которого любой учебный курс становится уже избыточным, а вопросы, которые возникают в ходе программирования находятся на грани возможностей языка (или, если быть точным, моих возможностей) — и почти с вероятностью 99% не раскрываются ни в каких учебных курсах, и что бывает совсем обидно — практически не предусмотрены во фреймворках.

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

Кстати, как у вас — я не знаю, у меня в области веб-программирования, самое интересное начинается именно при построении запросов к базе данных. Именно хитрые выборки со всевозможными ускорениями и оптимизацией — вот что тонкое место. А всё остальное (я пишу на CakePHP) — в основном настолько тривиально, что без особых хлопот «портанётся» на любой другой язык или фреймворк. Мне так кажется.

А вам?
Всего голосов 49: ↑23 и ↓26 -3
Просмотры 299
Комментарии 15

SharePoint – отличная платформа для веб-сайтов. Разве нет?

ECM/СЭД *
В России интернет сайтов на SharePoint пока немного (за рубежом их значительно больше), между тем эта платформа, широко используемая в интранет, выглядит очень привлекательной и в интернет/экстранет сценариях для заказчиков и для веб-разработчиков. Многие вообще не знают, что на SharePoint можно делать веб-сайты. А между тем, функционал платформы позволяет очень быстро создавать эффективные с точки зрения бизнеса веб-сайты, притом, что базовые Windows Sharepoint доступны бесплатно.

Давайте разберем довольно типовой сценарий и вы скажете — стоит ли использовать Sharepoint для веб, а если не стоит, то прошу прокомментировать — почему? Здесь еще дело в том, что в рамках семинаров TechDays я выступаю с демонстрацией создания такого сценария и вы можете скачать и презентацию и пошаговую инструкцию как ее сделать – можете попробовать и вы на своем компьютере. По этой причине, мне тем более интересны комментарии и отзывы.

Ситуация


Есть небольшая компания, пусть будет “Рога и копыта”, которой нужно сделать сайт для работы с поставщиками и партнерами.

short-horns-and-hooves
Сценарий, который требуется отработать:
Читать дальше →
Всего голосов 132: ↑73 и ↓59 +14
Просмотры 33K
Комментарии 190

А как Вы делаете Pagination на своих сайтах

Чулан
Часто встречаю сайты у которых пагинатор сделан следующим образом

Вариант №1
указывается интервал от и до
пример:
...?start=1&end=10

Вариант №2
указывается просто начальная позиция
...?start=10
А сам разработчик уже потом в запросах добавляет, сколько именно выбрать записей от данной позиции

Вариант №3
когда указывается просто номер страници а разработчик потом сам вычисляет с какой позиции и сколько нужно выбрать

Лично я использую третий вариант.

Относительно первого варианта, я думаю что это вообще зло.
Поскольку если есть куча данных и есть куча джойнов
то легко вписато самому ...?start=1&end=1000000
Ну я думаю что сами догадаетесь что может случиться с сервером.

Относительно второго варианта, в принципе в нем нет ничего плохого, но как по мне просто не эстетично.
Мне больше нравится видить, 1, 2, 3,… 11
Чем 10, 123, 153,…

А что Вы думаете по этому поводу?
Всего голосов 24: ↑14 и ↓10 +4
Просмотры 362
Комментарии 82

Собираем среду разработки сайтов на Маке

Чулан
Хотелось бы дать небольшую наводку маководам, как установить себе окружение для локальной разработки сайтов. В данном примере рассматривается установка с MacPorts набора Apache+PHP+MySQL+phpMyAdmin. Сразу скажу, что я данный топик не является детальным и отлаженным руководством по установке и у кого-то что-то может не получиться, поэтому сделаю ссылку на готовые и отработанные решения — продукт MAMP и руководство по установке, на которое ссылается php.net.
Среда в которой выполнялась установка: Mac Mini, OS X 10.4.
Итак, ставим среду разработки на Мак:
  1. Устанавливаем MacPorts.
  2. Устанавливаем Apache.
    Вводим в терминале:
    sudo port install apache2
    Пароль, который спросят — ваш маковский пароль
    Первоначально я хотел поставить апач 1.3, но связать его с php5 с ходу не получилось, поэтому поставил второй.
    Запускаем:
    sudo /opt/local/apache2/bin/apachectl start
    Проверка: смотрим в браузере localhost
  3. Устанавливаем PHP с поддержкой MySQL:
    sudo port install php5 +mysql5
    sudo cp /opt/local/etc/php.ini-dist /opt/local/etc/php.ini
  4. Добавляем модуль PHP в Apache
    sudo /opt/local/apache2/bin/apxs -a -e -n «php5» /opt/local/apache2/modules/libphp5.so
    Вставляем содержание /apache2/conf/extras-conf/mod_php.conf в /apache2/conf/httpd.conf ручками или инклудом в том же httpd.conf.
    Добавляем index.php в индексные файлы.
    Перезапускаем апач:
    sudo /opt/local/apache2/bin/apachectl restart
    Проверка: создаём test.php в /opt/local/apache2/htdocs/ с содержанием <?php phpinfo() ?> и проверяем его по адресу localhost/test.php
  5. Устанавливаем MySQL:
    sudo port install mysql5 +server
    Даём права пользователю mysql на /opt/local/var/db/ и вложения в неё. Я делал через Finder, наверное можно и через терминал.
    Устанавливаем БД:
    sudo /opt/local/bin/mysql_install_db5 -user root
    Запусаем демона:
    sudo /opt/local/libexec/mysqld -u root
  6. Устанавливаем phpmyadmin:
    sudo port install phpmyadmin
    Заходим на localhost/pma/setup/index.php
    Устанавливаем новый сервер localhost без пароля
    Заходим в phpmyadmin под root


К сожалению автоматический запуск MySQL и Apache, как это обещал MacPorts у меня не заработал, поэтому запускаю ручками:
$ sudo /opt/local/apache2/bin/apachectl start
$ sudo /opt/local/libexec/mysqld -u root
Данная проблема с MacPorts уже описывалась на Хабре и были найдены какие-то решения.
Всего голосов 23: ↑12 и ↓11 +1
Просмотры 561
Комментарии 8

Релиз RichFaces 3.3.1 GA

Чулан
RichFaces

Команда RichFaces с гордостью объявляет о выходе очередной версии библиотеки – 3.3.1 GA. Было также разработано специальное демонстрационное приложение Photo Album, которое доступно для скачивания. Приложение построено с использованием компонентов RichFaces.
Читать дальше →
Всего голосов 8: ↑5 и ↓3 +2
Просмотры 259
Комментарии 9

Объектная база данных Eloquera 2.0

Чулан
Релиз второй версии объектной базы данных Eloquera запланирован на следующий месяц. Ничего особенного, вроде бы — мало ли релизов случается еженедельно.

Но группа of crazy Russian programmers из Eloquera решила поставить небольшой эксперимент. После некоторых споров и ругани консультаций с руководством компании было решено дать доступ к отдельным билдам базы группе профессиональных программистов, не связанных с Eloquera. Зачем? На предмет «поругать»/«похвалить», а также доказать, что «свободные птицы» будут более эффективны в использовании базы и нахождению отдельных недочетов, чем штатная команда тестировщиков. Ну, и показать, что crazy Russians изобретательны до невозможности — что просто замечательно.:-)

Напомню, что Eloquera — клиент-серверная объектная база данных для .NET 2.0 и выше, со своим движком хранения данных и индексирования, поддерживающая запросы.
И какие запросы!
Всего голосов 8: ↑5 и ↓3 +2
Просмотры 207
Комментарии 42

почти.там

Разработка веб-сайтов *
Публикую по просьбе farcaller, т.к. у него не хватает кармы. Поэтому плюсы, пожалуйста, туда.

Я уже как-то писал про очень интересную и перспективную технологию по имени Cappuccino. Сегодня я хочу обратить ваше внимание на второй по качеству проработки проект на этом новом фреймворке — almost.at.

Дебютировавшем проектом на Cappuccino остается 280slides от авторов самого Objective-J и Cappucino. Almost.at показывает нам, что можно сделать даже более функциональный проект на зароджающемся фреймворке.

И так, что же такое — almost.at? Это сервис, который отслеживает интересные (с точки зрения администрации) темы в сети: на твиттере (в виде твитов и картинок) и просто по ключевым словам. Делает это он в красивом mac-like интерфейсе.



Читать дальше →
Всего голосов 47: ↑34 и ↓13 +21
Просмотры 497
Комментарии 13

Делаем поиск детских садов и школ по-настоящему удобным. Прикладное использование Яндекс Карт

Я пиарюсь
Последние несколько месяцев мы работали над проектом Osvita.com.ua — образование в Украине. Среди прочих разделов 2 были посвящены дошкольному и школьному образованию — «Школы» и «Детские сады», выбор которых для большинства обусловлен территориальным расположением — чем ближе к дому, тем лучше. При этом все каталоги сделаны по принципу: вот вам 500 садиков с адресами и телефонами — ищите. Делать очередной бестолковый клон совсем не хотелось.

Хотелось так: ввести адрес и найти все сады в нужном радиусе от дома, да ещё и отсортированные по удаленности, да ещё и увидеть на карте.

И все оказалось вполне реальным. Вот что получилось: (тестовый адрес: г. Киев, ул. Луначарского, 1/2).

image

Как получилось под хабракатом
Читать дальше →
Всего голосов 40: ↑37 и ↓3 +34
Просмотры 1.8K
Комментарии 46

Что почитать по веб-разработке

Разработка веб-сайтов *
Топик Много книг, хороших и разных навёл на мысль сделать похожий каталог наиболее удачных и интересных книг по веб разработке.

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

update: Теперь есть электронные версии книг!

Начнём…
Читать дальше →
Всего голосов 118: ↑99 и ↓19 +80
Просмотры 205K
Комментарии 137