Pull to refresh
0
0
Spaut @Spaut

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

Send message

Строим гусеничного Bluetooth-робота с камерой. Часть 1

Reading time7 min
Views147K
По многочисленным просьбам я решил описать процесс создания вот такого робота с камерой на гусеничном шасси и управлением по bluetooth с помощью джойстика.

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

Новичкам про управление шириной канала в Linux

Reading time7 min
Views77K
Некоторое время назад меня попросили настроить в удаленном филиале простейшую балансировку трафика. Работают они, бедолаги, через ADSL, и отправка электронных писем большого объема (сканы документов) забивает им весь обратный канал, что приводит к проблемам в работе с офисными онлайн-программами через VPN.
В качестве шлюза у них используется Linux (Fedora). До этого я пару раз видел, как подобная балансировка настраивается через ipfw на FreeBSD, а так как знаю механизм iptables достаточно хорошо, не ожидал особых проблем. Но поискав в Интернете, я был неприятно удивлен тем, что iptables мне тут совсем не помощник. И знания о порядке прохождения пакетов через его таблицы и правила мне почти не пригодятся. Нужно изучать tc из пакета iproute2.

Неожиданно для себя, я потратил два дня, для того чтобы более-менее разобраться в балансировке трафика средствами iproute2. Сначала попалась не самая лучшая для новичка статья про HTB(здесь). Различные примеры из Интернет тоже порой вводили в ступор, так как в них часто не было описания конкретных опций или смысла их применения. Поэтому я и попытался собрать полученные мною знания в одну статью, а главное описать все на доступном для новичков уровне.
Читать дальше →

Chop Slider 2 — лучший jQuery-слайдер

Reading time5 min
Views54K

Добрый день. Несколько дней назад появилась необходимость использовать слайд-шоу на своём сайте, но оно должно было быть нестандартным, чтоб привлекало внимание пользователей. Искал в течение дня и ничего нормального не мог найти, были более менее подходящие «слайдеры», но душа хотела клубнички. После того как я облазил весь рунет, переключился на «забугорных» друзей и… удача! Забегая наперёд хочу сказать: этот обзор сделан потому, что в рунете нет никакого упоминания про это слайд-шоу, отсюда и логика.
Читать дальше →

Реалистичные тени при помощи CSS3 без использования изображений

Reading time7 min
Views143K
Привет, Хабр!

Хочу поделиться замечательным мастер-классом по созданию реалистичных теней для блоков на чистом CSS, найденном на просторах рунета по адресу http://mainview.ru/css/realistichnye-teni-pri-pomoshhi-css3-bez-ispolzovaniya-izobrazhenij. Естественно, для того, чтобы примеры работали как надо, необходим браузер с поддержкой CSS3.

image

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

Каркас для web-приложений, построенный на CodeIgniter

Reading time9 min
Views36K
image
Наверняка, многие веб-программисты изучали и, может быть, даже использовали такой замечательный фреймворк как CodeIgniter. Мой выбор пал на него ввиду того, что у него самый низкий порог вхождения, он наиболее прост в изучении, хорошая документация, быстрый и т.д. и т.п. Для простых проектов самое «оно», чтоб попробовать свои силы именно как разработчик. Само собой, для более серьезных проектов лучше использовать более функциональные и навороченные фреймворки.

Далее буду описывать, как я «апгрейдил» CodeIgniter, чтобы использовать этот каркас для разных проектов, т.к. базовый его функционал и примеры из документации, мягко говоря, очень простые, а в жизни всё гораздо сложнее. Итак, начнем-с.
Читать дальше →

Индикатор выполнения на CSS3

Reading time2 min
Views3.8K
Сегодня мы будем воссоздавать прогресс-бар из программы установки Adobe Flash Player средствами CSS3, используя градиенты и тени.



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

RTCKit: API голосового и видео общения в браузере

Reading time5 min
Views7.4K
image

Наиболее популярным протоколом IP-телефонии в настоящий момент является протокол SIP. Он позволяет взаимодействовать с большинством софтверных и железных телефонных компонентов, а также поддерживается многими сервисами. Существует несколько приличных реализаций стека данного протокола на языках C (PJSIP, Linphone) или Python (B2BUA, p2p-sip), с помощью которых легко встроить голосовые и видео коммуникации в настольное или серверное приложение.

Проблема


Совсем иначе обстоит дело с веб-приложениями: сегодняшние браузеры пока не поддерживают возможность использования телефонии без дополнительных плагинов. Работы в этом направлении, несомненно, ведутся. Есть некоторая надежда на проект WebRTC, поддерживаемый Google и W3C, но, к сожалению, даже он не является панацеей. Во-первых, перспектива его поддержки в Internet Explorer весьма туманна, а во-вторых, протокол SIP он все равно не поддерживает. И к тому же, эта технология — некоторое будущее. А что же делать, если есть желание встроить SIP-телефонию в веб-приложение уже сейчас?

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

Анимация меню при помощи CSS3

Reading time8 min
Views38K


В данной статье я хотел бы показать вам некоторые приёмы создания эффектов при помощи CSS3 на примере меню. Идея заключается в простой композиции элементов: иконки, основного названия и вторичного названия, которое будет анимировано при наведении курсора, используя только CSS-переходы и CSS-анимацию. Мы рассмотрим несколько различных эффектов для элементов.
Читать дальше →

Приём и обработка SMS-сообщений на Linux-машине

Reading time5 min
Views43K
В одном из наших свежих проектов команде разработчиков была поставлена задача собрать максимально реальные контактные данные о пользователях нашего сайта. Жаркое обсуждение правильных и неправильных форм регистрации, одно- и двушаговые, дополнение информации по мере пользования сайтом… Казалось поток идей не остановится. Однако ни одна из них не гарантировала, что в результате мы не получим кучу никчемных данных. Валидировать? Можно, но разве все предусмотришь? Активация учетной записи через почтовый ящик для его валидации? Но куча сервисов типа 10 Minute Mail сводят на нет эффект. К тому же, специфика проекта не позволяла слишком растягивать процесс регистрации. Решено было, что пользователь должен зайти, сделать своё дело, а потом уже активировать или нет свою учетную запись. В конце концов прозвучала фраза «А давайте активировать по SMS!». Поиск провайдеров, изучение прайс-листов и отказ от идеи взвалить обработку SMS на стороннюю контору… Стало понятно, что принимать и обрабатывать их придется самим.
Читать дальше →

Тысяча .psd-шек

Reading time1 min
Views844


Привет, друзья!

Честно говоря, никогда не пиарился на Хабре и даже не знаю — с чего начать.

В общем, суть кратко — я создал ресурс — 1000psd, на котором буду размещать каждый рабочий день по одной уникальной .psd-шке собственного изготовления.

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

Без ограничений.

К тому же, если кто-то хочет увидеть на ресурсе что-то конкретное — сэт иконок для своей цмс-ки, например, но при этом эти иконки смогут пригодиться и другому человеку — милости прошу в фидбек. Рано или поздно при должном интересе это будет реализовано и опубликовано на сайте.

Для удобства есть Твиттер и РСС.

Вот, наверное, и все :)

Успехов!

Оптимизация PNG и JPEG без потери качества. Часть 2

Reading time5 min
Views26K
Здравствуй Хабр!
Вот и настало время второй, и, надеюсь, долгожданной части. Настоятель рекомендую ознакомится с первой частью, ибо без этого будет тяжело понять, о чем я буду писать. В этой части я отойду от теории к практике, а именно покажу небольшое проект для комплексной оптимизации изображений.
Читать дальше →

Импорт фото из Picasa и Flickr в альбомы В Контакте

Reading time1 min
Views1.2K
Picrolla
Лето близится к концу, и у всех накопилось огромное количество фото, которые нужно разобрать, отредактировать и, конечно же, показать всем-всем-всем. Думаю, у каждого есть любимый сервис для такого случая. Раньше, на ноутбуке с Windows, таким сервисом для меня была Picasa, а с переходом на Mac, стало удобнее пользоваться Flickr. Сегодня я хочу рассказать о Picrolla. Это приложение для импорта фотографий из Picasa и Flickr в альбомы В Контакте.
Что умеет Picrolla

Как разместить картинку внутри QR-кода

Reading time2 min
Views141K
Автор блога Hack A Day Брайан Бенчофф (Brian Benchoff) разобрался в алгоритме генерации QR-кодов (стандарт ISO 18004) и составил инструкцию, как можно внедрить в QR-код произвольное изображение. Например, логотип фирмы.

Для работы использовались генератор QR-кодов и Microsoft Paint для попиксельного редактирования.

Шестая версия QR-кодов представляет собой квадрат со стороной 41 пиксел.



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

CSS хаки

Reading time4 min
Views126K
Браузеры и стандарты. Вечная погоня. Из-за несоответствий стандартам, из-за разных способов рендеринга страниц большая часть времени веб-дизайнера уходит на то, чтобы загладить эти несоответствия (использовать хаки). В итоге, вместо эффективной работы, дизайнер вступает в противоестественные отношения с браузерами, теряя драгоценное время.
Читать дальше →

Изображения без width/height

Reading time1 min
Views8.7K
Хорошим тоном считается всегда указывать для изображений, которые мы используем на странице, их длину и ширину. Часто такие картинки, если мы не укажем их размеры, могут во время загрузки раскачивать нашу верстку.
Чтобы во время разработки было более наглядно, где мы пропустили картинки без указания размеров, ребята из 37Signals предложили небольшой, но чрезвычайно полезный сниппет:

img:not([width]):not([height]) {
  border: 2px solid red !important;
}

Теперь все картинки, для которых мы не указали размеров — будут подсвечены красной рамкой, и пропустить их будет гораздо труднее.

Оригинал статьи

HTML5 Drag and Drop загрузка файлов

Reading time4 min
Views138K
image
Благодаря нововведениям HTML5 создавать Drag and Drop интерфейсы стало гораздо проще. К сожалению, эти нововведения еще не обладают обширной поддержкой браузеров, но надеюсь в скором времени это изменится (на данный момент работает в Firefox 4+, Chrome и Opera 11.10).

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

Chosen: сделай выпадающие списки более дружественными

Reading time1 min
Views55K
Плагин Chosen создан для оформления красивых и удобных выпадающих списков с помощью jQuery и Prototype. Для установки плагина достаточно просто скачать файлы и прописать одну строчку:

$(".chzn-select").chosen()
(версия для jQuery)

По умолчанию в Chosen вместо длинного текстового списка предлагается поле, по нажатию на которое появляется список. Поддерживается автодополнение ввода, выбор нескольких пунктов меню, элемент optgroup и др. Выглядит вполне нативно. В общем, лучше один раз увидеть.

Поскольку Chosen заменяет стандартный элемент HTML, то не нужно беспокоиться, как он работает с браузерами без поддержки JavaScript. Также не нужно ничего менять в бэкенде: формы сабмиттятся как обычно, изменения только в пользовательском интерфейсе.

Некоторые форки:
Chosen для MooTools
Модуль Chosen для Drupal 7

Пишем примитивную биллинг-статистику для Asterisk

Reading time5 min
Views17K
Как известно, Asterisk может хранить детализацию звонков, она же CDR (Call Detail Records). CDR может храниться разными способами, это и обычный csv-файл и практически любая база данных. У нас, например это обычная база на MySQL, с одной единственной табличкой — cdr. Была поставлена цель: написать скрипт который бы считал стоимость звонков.
Читать дальше →

Регулярные выражения для валидации распространенных видов данных

Reading time2 min
Views500K
Для проверки текстовых полей на валидность обычно используют регулярные выражения. Существует несколько наиболе распространенных видов таких даных, как например номер кредитки, дата в определенном формате и т. д. На сайте html5pattern.com собирается коллекция регулярных выражений для таких данных (там это позиционируется, как возможное содержимое html5-атрибута pattern у inpit-элементов, но эти регулярные выражения можно использовать и для привычной валидации с помощью javascript). Актуальные для российской аудитории примеры, вместе с соответствующими регулярными выражениями вы можете посмотреть под катом.
Читать дальше →

Information

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