Pull to refresh
27
0.1

Mission Critical

Send message

Как вставить печать в документ, чтобы боги не убили котёнка

Reading time6 min
Views137K
Была у пользователей Эльбы мечта — вставлять изображения печатей и подписей в счета, акты, накладные и прочие серьезные документы. Отчего бы не порадовать мечтателей, подумали мы. Оглядевшись по сторонам, мы поняли, что обычно в таких случаях всю грязную работу сваливают на пользователя (ну, вы знаете: «картинка должна быть 300 на 400 пикселей, с высоким контрастом, хорошим разрешением и идеально белым фоном»). Но судя по опыту нашей команды, которая бывает в колл-центре, даже простая загрузка изображения с фотоаппарата повергает пользователей в глубокую депрессию, и вызволять их приходится богопротивными способами, а-ля «вставьте картинку в Ворд». Конечно, не может быть и речи о том, чтобы заставлять пользователей чистить печати в фотошопах — пусть фотографируют как умеют, а Эльба выполнит за них все остальное!



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

Индийский Groupon выложил базу с паролями 200 000 пользователей

Reading time2 min
Views1.4K
Вся база данных пользователей SoSasta.com (индийский клон Groupon, куплен американской компанией в январе 2011 года) случайно попала в открытый доступ и была проиндексирована Google. База включает в себя почтовые адреса и пароли в открытом виде 204 926 пользователей.

Базу обнаружил австралийский веб-разработчик Дэвид Гржелак во время рутинного поиска в гугле по запросу filetype:sql hotmail gmail password.


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

Массовое надписывание и загрузка изображений в Picasa Web Albums

Reading time4 min
Views2K

Пролог


Люди, публикующие изображения в Интернете, наверняка задумывались о том, чтобы хоть как-то обозначить своё авторство.

Один из самых очевидных способов — добавлять на изображения надпись с указанием вашего веб-сайта, имени, копирайта или копилефта. Для этого домохозяйка откроет любимый графический редактор, выберет инструмент «Текст» и напишет красивыми буквами послание будущим поколениям.

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

Вторая рутинная операция фотографа-блогера-графомана — загрузка изображений на уютный хостинг.

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

Посему скрипт. Поэтому я люблю Линукс. Поэтому я люблю Picasa Web Albums: Google отдал нам на растерзание googlecl — очень простую утилиту для работы с сервисами Корпорации Добра из командной строки (про неё уже кратко рассказывалось на Хабре).

Скрипт очень прост и легко подстраивается под новые неожиданные нужды.

Довольно лирики

MBR для флешки своими руками или как сделать из одного устройства три

Reading time8 min
Views114K
Мое почтение читающему!
Топик мог бы получиться просто катастрофически огромным, поэтому перейдем сразу к делу. Впереди вас ждет рассказ, о том, как можно одну флешку сделать одновременно загрузочной как для ОС семейства Windows, так и *nix, а также сделать из нее live-usb. Заранее прошу прощения за жаргон, не сторонник, но так короче.

Аннотация


Как-то пришлось много раз подряд устанавливать на одну и ту же машину кучу разных операционных систем, как от товарищей господ из Майкрософт, так и любимых всеми нами *nix`ов. При этом инсталляторы вновь устанавливаемых ОСей периодически терли загрузчики ранее установленных, так что приходилось их восстанавливать вручную, загружаясь с live-usb. Но самое ужасное, что при всем при этом под рукой была всего одна флешка (и еще 15 компьютеров правда, но толку от них было мало, так как разбирать их по причинам гарантии в надежде на лишний жесткий диск было нельзя). Флешка к счастью была большого объема. Вот тут-то и возникла идея сделать из одной флешки две, а лучше три (хотя можно и 4) разных девайса.

Немного теории


Как сделать из одной флешки несколько с целью последующей установки на нее одновременно нескольких установщиков ОС и еще live-операционки? Ответ очевиден — сделать на флешке несколько разделов!
Читать дальше →

Генерация приглашений, похожих на инвайты сайта habrahabr

Reading time5 min
Views11K
Скрипт генерирует приглашения для регистрации на сайте в виде картинки 51x51 пикселей формата PNG, написан на PHP, в качестве базы данных использует MySQL. Сделан ради интереса, будет интересен только новичкам.
подробнее

Многопользовательский чат на BAT

Reading time3 min
Views22K
Был период, когда в универе задали сделать несколько чатов. В зависимости от вариантов, были заданы различные способы взаимодействия программ от сокетов до майлслотов (mailslot). Когда задания были прикончены, остались силы взяться за скрипты BAT. Вот что получилось…



Всё что нужно для запуска:
1. Взять код по ссылке в конце статьи
2. Сохранить код в файл *.bat
3. Положить файл в сетевую папку
4. Запустить файл с разных компов (можно и с одного)

В комментариях предложили использовать совместно с DropBox, но говорят — что работает весьма не быстро.
Читать дальше →

GeoIP, попытки нетрадиционного использования

Reading time5 min
Views14K
Делать было вечером, делать было нечего...

Предыстория


В один прекрасный момент, случайно наткнулся на старый сервис, который позволяет вешать картинку на свой сайт, которая показывает географическое положение посетителей. Их много и разных.
Вещь сама по себе не такая уж полезная, мне как то данные awstats'а хватает за глаза.
Но для демонстрации посетителю, что он не случайный идиот прохожий забредший на мертвый сайт это дело подходит.
Дальше как и полагается раскинул мозгами на тему, а как же они это делают, разобрался и вроде успокоился…

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

Внимание, автор не является кодером в хорошем смысле этого слова, поэтому лиц, которых может шокировать копрокод прошу удалиться.
Читать дальше →

Google начинает учитывать в выдаче мета-теги rel="author" и rel="me"

Reading time2 min
Views9.9K
С 7 июня Google начал учитывать в поисковой выдаче авторский мета-тег HTML5 (rel="author") со ссылкой на личный профиль автора.

Written by <a rel="author" href="../authors/mattcutts">Matt Cutts</a>

По правилам использования авторских мета-тегов личная страница автора обязательно должна располагаться на том же домене, что и авторский текст. Для связывания страниц на разных доменах с одним автором используются взаимные ссылки с пометкой XFN (rel="me"). Если на Хабре стоит ссылка на личную страницу автора,

<a rel="me" href="http://mattcutts.com">Read more about Matt</a>

то на домене mattcutts.com должна быть обратная ссылка на Хабр:

Matt has also written <a rel="me" href="http://mattcutts.habrahabr.ru/blog/">lots of articles for the Habrahabr</a>.
Читать дальше →

Управление радиоэфиром через браузер

Reading time5 min
Views33K
Airtime LogoВ процессе создания своей радиостанции поток идей дошел до ведения эфиров через веб-интерфейс. Сначала пытался найти готовые решения, но в рунете почти ничего не нашел. Начал продумывать способ реализации и чудом наткнулся на статью в английской версии Википедии про Airtime (до 18 января 2011 г. – Campcaster) от Sourcefabric.

Возможности Airtime:
  • Создание эфирной сетки и плейлистов через веб-интерфейс ;
  • Загрузка музыки через браузер (поддержка drag and drop);
  • Регистрация ведущих, которые имеют доступ к админке и могут управлять эфирами;
  • Создание виджетов с расписанием эфиров и треков для сторонних сайтов;
  • Возможность записывать эфиры для повторной трансляции;
  • Несколько вариантов трансляции аудиопотока.
Минимальные системные требования, описанные в официальной инструкции: 1Ghz процессор и 512Mb оперативной памяти.
Читать дальше →

Квадрокоптер своими руками: Часть I

Reading time4 min
Views345K
ВНИМАНИЕ, статья устарела, но её всё еще можно использовать в ознакомительных целях
Как и обещал, как только полечу — напишу полноценный пост по поводу сборки своего летающего агрегата. Наверняка многие давно посмотрели как «обычный» офисный сотрудник собирает это за 2 часа, сразу отмечу что я не «обычный» офисный работник, поэтому летчик из меня пока не очень, но важно что квадрокоптер летает и адекватно реагирует на управление. Первое и самое главное — если решили собирать, не экономьте и не думайте что вы умнее тех кто уже летает, так же учтите, что теория несколько расходится с практикой.
Есть большое число прошивок, готовых контроллеров, вариантов датчиков, моторов и т.д. и т.п. — выбрать есть из чего, но в статье остановлюсь только на одном варианте, основанном на Arduino Mega, прошивке MegaPirate и относительно дешевых датчиках.
много интересного читаем тут

Устройство слежения за движущимся источником света

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

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

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


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

PHP + Word

Reading time4 min
Views87K
image

Что делать, если нужно создавать много Word файлов одинакового вида, но разного содержания? Например заполнять бланки, квитанции.

Есть 3 варианта:
1) использовать одну из библиотек для работы с Word документами
2) сохранить документ в формате docx, открыть архиватором и внутри мы увидим "\word\document.xml" — чистый xml, с которым можно работать через str_replace (спасибо Enuriru за подсказку)
3) использовать сторонний сервис, который сделает за меня большую часть работы

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

Второй варинт хорош и прост, когда мы работаем с word документами в формате .docx, но к сожалению он не поддерживает формат .doc

В процессе проработки третьего варианта, наткнулся на интересное решение LiveDocx

Преимущества:
— файл шаблона можно создать привычным способом через Word
— представление документа в форматах doc, docx, rtf, pdf
— не нужно заморачиваться с представлением Word документа через html или XML
— простота подключения
— надежность — сервис существует давно и под него даже есть готовая библиотека от Zend
Недостатки:
— в бесплатной версии ограничение на 250 генерируемых документов в сутки
— шаблон нельзя менять (например нельзя сгенерировать таблицу с кол-вом строк, равным количеству элементов в базе)

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

Создание простого 3D приложения с помощью ShiVa3D

Reading time3 min
Views29K
ShiVa3D LogoВ этом году на Хабре довольно популярными стали статьи про написание игр на Unity3D. Но почему-то ещё никто не рассказывал про конкурентов. Сегодня я расскажу о самом главном (на мой взгляд) конкуренте – ShiVa3D.
Читать дальше →

Рекурсивный zip-архив

Reading time5 min
Views40K
Многие хабрапользователи наверняка знакомы с квайнами — программами, выводящими собственный исходный код. Сегодня я хочу показать как сделать интересный вариант квайна — ZIP-архив, который распаковывается сам в себя.

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

Класс-клиент goo.gl и настройка API

Reading time4 min
Views36K
UPD: репозиторий теперь на Гитхабе.

Здравствуйте, коллеги!

Помню, в свое время меня очень обрадовала новость, что у гугловской сокращалки урлов появились официальные API. В то время я как раз разрабатывал приложение, которому часто требовалось сокращать ссылки новостных лент. Я как раз прикручивал bit.ly, но испытал соблазн попробовать новый сервис от Гугла. Воспользовавшись документацией, я за несколько часов набросал базовый функционал и встроил скрипт в проект.

С течением времени в скрипт вносились изменения, и, наконец, я решил дополнить код комментариями, написать простую документацию и выложить всё на гуглокод.

Основные возможности и особенности класса от конкурентов:
Читать дальше →

Synergy — платформа для создания интернет-магазинов

Reading time2 min
Views14K
Synergy Logo По сути Synergy является кумулятивным Open Source расширением Spree, ориентированным на создание интернет-магазинов в России.
Миссия проекта состоит в том, чтобы предоставить весь необходимый фунционал, специфичный для российских интернет-магазинов, а также упростить интеграцию рекомендуемых расширений.

В свою очередь Spree – это полнофункциональная платформа электронной коммерции, работающая на фреймворке Ruby on Rails 3. Она создана с целью упростить разработку интернет-магазинов путем включения в нее всего базового функционала, необходимого разработчикам.
Читать дальше →

Автоматическая преднастроенная установка Ubuntu: isolinux и preseed

Reading time11 min
Views72K
Как известно, Ubuntu Linux уже давным-давно содержит полный набор инструментов, необходимых для работы большинства офисных сотрудников. А то, что не содержит, можно доустановить, либо же запустить с сервера, например, с помощью FreeRDP и Remmina. В результате — экономия средств и сильное упрощение администрирования клиентов. Многие фирмы уже начали потихоньку заменять свой парк машин на тонкие клиенты и полноценные компьютеры с Linux. И если вы тоже хотите пересадить пару отделов на Ubuntu, то возможно я смогу помочь вам сэкономить немного времени.

В этой статье я расскажу, как создать на основе Ubuntu (а так же любых её модификаций, включая Ubuntu Sever) или Debian преднастроенную, автоматически устанавливающуюся систему. Разобравшись в описанном ниже весьма несложном материале вы сможете делать свои собственные сборки Ubuntu с необходимыми вам приложениями и настройками, которые будут способны устанавливаться в полностью автоматическом режиме как с диска, так и по сети. В итоге при желании вы сможете добиться того, что вам будет достаточно просто включить компьютер и пойти пить чай, чтобы вернувшись увидеть установленную и полностью настроенную под ваши запросы систему со всем необходимым вам для работы софтом.

Подробнее...

Создание зеркала репозитория Ubuntu с помощью apt-mirror

Reading time6 min
Views43K
Зачастую при развёртывании сети машин на Ubuntu возникает проблема с организацией доступа в интернет с целью установки новых программ из стандартных репозиториев. Например, когда доступен лишь очень узкий канал в интернет или траффик не является безлимитным. К счастью, принцип организации пакетной системы Ubuntu позволяет очень гибко управлять тем, что и откуда качать с использованием штатных средств управления пакетами. В частности, вы можете создать локальную копию нужных вам интернет-репозиториев Ubuntu и подключить её как основной источник приложений в вашу локальную сеть. Таким образом все компьютеры в вашей сети не будут требовать соединения с интернетом для установки новых программ и обновлений. И при этом, что самое важное, сохранится весь функционал пакетных менеджеров.

В этой статье я расскажу как создать локальную копию репозитория с помощью утилиты apt-mirror. Это простая и удобная утилита для создания локальных копий репозиториев Ubuntu, использующая такой же синтаксис, как и в файле /etc/apt/sources.list, в котором указываются все репозитории для Ubuntu.

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

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

Собираем Atari Punk Console

Reading time3 min
Views29K
В комментариях к топику с комиксом об азах пайки кто-то отметил, что лучший Hello World! для начинающего радиолюбителя — это мультивибратор — генератор прямоугольных колебаний.

Всё верно, но на первый взгляд сам по себе мультивибратор кажется довольно скучным. Однако в компании с одновибратором (да, всё это довольно смешно звучит) его можно превратить в Atari Punk Console — простейший электронный музыкальный инструмент, схема которого впервые была опубликована в 80х годах изобретателем Форрестом Мимсом.

Обретя популярность благодаря своей простоте и обросшее огромным числом модификаций устройство до сих пор является неотъемлемой частью некоторых субкультур и часто используется музыкантами, пишущими в жанре 8-bit и около него. Адресовав соответствующий запрос Google вы увидите выдачу длиной более чем в 2 млн. страниц среди которых примеры изготовления, синтезаторов и секвенсоров на базе APC, корпусов к нему и пр.

Под катом лежит модифицированная принципиальная схема, список компонентов, рекомендации по сборке в домашних условиях. Так же есть видео с демонстрацией, а ленивым доступен комплект для сборки.
Читать дальше →

Складываем облака в одну корзину

Reading time3 min
Views23K


Облачные хранилища данных, несомненно, одно из самых интересных и актуальных направлений в IT. Достаточно сказать, что за лидерство здесь идет активная борьба между такими гигантами как Microsoft, Google, Amazon. Интерес к этому активно подогревается также сторонними разработками, активно использующими эти сервисы. Например, менеджер Dropbox, который, как теперь уже кажется, был всегда. Уже не верится, что каких то 2 года назад он почти не был известен.

Со временем я «оброс» различными хранилищами, хранилища в свою очередь обросли сервисами. И недавнее гугление по названию Gladinet при чтении комментариев здесь, на Хабре (извиняюсь, не смог найти комментарий), привело на сайт разработчиков desktop приложения Gladinet, вполне достойного пристального внимания.

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

Приложение встраивается в проводник и другие файл-менеджеры (в моем случае Total Comander) как дополнительный диск, в котором собираются все виртуальные устройства.
Читать дальше →

Information

Rating
5,168-th
Registered
Activity