Search
Write a publication
Pull to refresh
0
0
Мирон Яновский @Yanovsky

User

Send message

Свой Web-PDF принтер за 10 минут

Reading time9 min
Views4.8K


Как потратить совсем немного времени и сделать что-нибудь простое и оригинальное, поражающее своей глобальностью — но абсолютно бесполезное? Очень просто. Давайте сделаем свой принтер.

Нам понадобится (кроме головы и рук) только работающий web-сервер с поддержкой cgi-bin, к которому у нас есть доступ по FTP. Есть такой? Поехали!

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

Петр Зайцев ответит на любые ваши вопросы

Reading time1 min
Views7K
image Петр Зайцев — Эксперт по производительности MySQL, бывший тимлидер группы High Perfomance в MySQL Inc, ведущий блога MySQLPerformanceBlog.com и, наконец, CEO Percona Inc.

17 октября в офисе компании «Parcsis» (город Самара) состоится семинар от Петра Зайцева. Участие в семинаре бесплатное, но к сожалению, количество участников ограничено стенами нашей аудитории и на событие попадут около 40 человек. Хочется пригласить людей, которым это будет действительно интересно и полезно. Семинар рассчитан изначально на специалистов высокого уровня — реально оценивайте свои знания, чтобы вам банально не было скучно.
Читать дальше →

Создание игры на Javascript Canvas

Reading time13 min
Views71K

Здравствуйте! Я предлагаю вам со мной создать небольшую казуальную игру на нескольких человек за одним компьютером на Javascript Canvas.
В статье я пошагово разобрала процесс создания такой игры при помощи MooTools и LibCanvas, останавливаясь на каждом мелком действии, объясняя причины и логику добавления нового и рефакторинга существующего кода.
Читать дальше →

Myna — онлайн аудио редактор

Reading time2 min
Views55K
В последнее время мы часто сталкиваемся с онлайн сервисами, которые заменяют нам обычный софт. Как правило, это простенькое подобие привычных нам программ, при этом доступных из любого места, где есть интернет. Поэтому для уменьшения размера или качества изображения, нам уже не требуется устанавливать фотошоп — у нас есть онлайн альтернативы. Я искал нечто подобное в сфере звука. И вот на что я наткнулся:

image Myna — это онлайн аудио редактор, который позволяет легко и просто загружать, записывать и компоновать (миксовать) аудио файлы в сети, то есть непосредственно в браузере. + сервис включат в себя набор бесплатных эффектов и сэмплов (для некоммерческих целей).

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

Кража информации у работодателя

Reading time1 min
Views7.9K
Были ли у вас случаи, когда:
  • Вы или ваш коллега увольнялись и копировали все данные работодателя (документацию, базы данных, контакты клиентов, контакты сотрудников [чтобы их можно было найти, если требуются работники])?
  • Вы или ваш коллега, сидя дома после увольнения, использовали эту информацию в любых целях?
  • Вы или ваш коллега пытались продать эту информацию «на сторону» или на её основе открыть собственный бизнес, конкурирующий с предыдущим работодателем?

Если не можете говорить про себя — говорите «про знакомого».
Из того, что я видел:
  • Данные копирует на флэшку или диск половина увольняющихся. Это может быть документация, исходный код и т.п.
  • Эта информация просматривалась человеком пару раз максимум (за исключением случаев, когда имеющиеся документы использовались как шаблоны для новых).
  • Никто не воспользовался информацией для непрятных для предыдущего работодателя целей — частично из-за отсутствия понимания, как эту информацию и знания можно коммерциализировать.

Какие примеры есть у вас?

Беспилотник для сбора данных о WiFi-сетях

Reading time1 min
Views4K
Видимо, после прочтения новости о покупке дронов компанией Google, группа хакеров то ли в шутку, то ли всерьёз создала прототип беспилотника, который способен облетать территорию по заданному маршруту и собирать информацию о WiFi-сетях. Они взяли модель МиГ-23, установили на неё компьютер Via Epia 10000G Pico ITX (1ГГц Via C7, 1 ГБ RAM) под управлением Windows XP, интерфейс телеметрии ArduStation и систему автоматического пилотирования ArduPilot.



Свою разработку они назвали Wi-Fi Aerial Surveillance Platform. Вот ссылки на инструкции, как можно сделать такой дрон в домашних условиях.

Кэширование данных, возможно последняя вещь которую Вам стоит использовать

Reading time3 min
Views14K
Недавно у меня был достаточно горячий конфликт с популярным PHP пакетом для электронной коммерции. В результате мне захотелось рассказать об одной распространенной ошибке в архитектуре веб приложений.

В чем же эта ошибка?
Читать дальше →

Pirobox — хорошая альтернатива jQuery Lightbox

Reading time1 min
Views20K
Pirobox — легкий и быстрый скрипт галереи на jQuery.

Автор скрипта итальянец Diego Valobra (http://www.diegovalobra.com), талантливый человек.
В сжатом виде скрипт весит всего 10Кб, есть несколько тем внешнего вида, слайдшоу, корректная работа с PNG, клавиатурная навигация, проверка состояния ссылок (битая/не битая), возможность открыть картинку в новом окне.

На данный момент последняя версия — 1.2.2.

Официальный сайт
Скачать
Demo

Связываем домен и динамический IP

Reading time2 min
Views171K
Что мы имеем:
1. компьютер с осью и установленными mysql, apache, php (тут ничего писать не буду, благо мануалов хватает)
2. интернет с присваиваемым динамическим IP, роутер.

Что мы хотим:
1. Что бы люди вбивая в адресную строку браузера доменное имя второго уровня (купленное нами или полученное на каком либо сервисе), попадали на наш сайт (в независимости от того на каком IP он сейчас находиться).
2. Хотим это бесплатно.

Итак, то как это было реализовано мной в виде краткой инструкции можно прочитать под катом, быть может кому-нибудь это пригодиться или просто-напросто будет интересно. Так же, буду рад объективной критике. Спасибо за внимание, и кому интересно добро пожаловать под хабракат.

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

Прохлаждаемся: кондиционер своими руками

Reading time4 min
Views227K
Статья даже для тех, у кого руки не от туда растут.

Мечта москвичаПреамбула: меня 5 недель не было в Столице всея России. По возвращении жара меня встретила ещё в Пскове, а дым – в Твери. Но в Москве меня ждал ещё один сюрприз – ажиотаж на вентиляторы и кондиционеры. Внимание! Под катом куча картинок и трафика.

Вентиляторов нигде не оказалось, кондиционеров тоже. Даже если и удастся что-то найти – наценка будет x4 и более. А очередь на установку кондишена – перевалила за 3 недели ожидания.

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

Кликайте же скорее все, кто тоже хочет себе прохладу домой.

jQuery in Action. Глава 2

Reading time9 min
Views23K
Как я и обещал, вторая глава из книги «jQuery in Action» (авторы Bear Bibeault и Yehuda Katz). Как и из первой главы, выбрал все самое вкусное и интересное ;-)

Напоминаю, что первую главу можно прочесть здесь.

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

Scalar type hints в PHP

Reading time1 min
Views3.2K
Johannes Schlüter опубликовал в своем блоге информацию о том что в trunk (PHP) появилась поддержка scalar type hints. Многие из нас очень давно этого ждали.

Выглядит это приблизительно так:
<?php
function check_counter( int $counter)
{
return;
}
?>


Если попытаться передать в такую функцию не int, получим Catchable fatal error.

Десять советов начинающим программистам

Reading time5 min
Views110K

Предисловие


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

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

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

1. Будьте самостоятельными


Если у вас есть какой-то вопрос, и вы не знаете как с ним поступить, то вначале постарайтесь исследовать его самостоятельно. Не ждите постоянной помощи от коллег — у них и без вас работы хватает. Используйте всю мощь поисковых систем, специализированных ресурсов (например, stackoverflow), профессиональных блогов, форумов разработчиков, и конечно же хабра. Большинство типичных «граблей» можно обойти различными эффективными вариантами, а для решения базовых задач есть дюжины готовых решений. Просто пойдите и возьмите.

читать далее...

Php + Cache + Tags = phpCacheTag

Reading time5 min
Views2.6K
Однажды, читая Хабр, я наткнулся на пост уважаемого dmitrykoterov про кеш и теги, который мне очень запал в душу. Как-раз тогда я возился с кешем и тоже, как и очень многие, пришёл к выводу, что ему(кешу) очень не хватает нативных тегов, по которым удобно было бы определённые порции кеша рубить одной строчкой. Рубить, не вдаваясь в именования переменных, которые под этими тегами числятся. Странно что осуществлением этой возможности занимаются сторонние разработчики, если говорить о самом популярном у нас memcache.

phpCacheTagВ итоге в свой очередной субботне-воскресный кодо-марафон я решил, всё же, заняться этим вопросом вплотную и написать универсальную библиотеку для любого кешевого бэкенда, будь то memcache или кеширование в файлах на чистом php. Библиотека написалалсь и поселилась на googlecode. Простите за английский, чуть ниже постараюсь исправиться.

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

Голограммы в ночных клубах

Reading time1 min
Views3.4K
Поскольку американские законы делают сложным содержание нормального стрип-клуба с девушками, танцующими на столе, то владельцы клубов начинают задумываться об использовании современных технологий. Например, компания Digital Illusions открыла первый в мире стрип-клуб с исключительно голографическими женщинами. Клуб Lolita’s Cantina начал работу 22 июля в Лас-Вегасе.

Нужно сказать, что голографические женщины ни в чём не уступают настоящим, а кое-где даже превосходят их (видео).

Владельцы клубов уже предвкушают, когда на голографические технологии можно будет перевести также музыкантов, конферансье и других артистов, выступающих на сцене и требующих непомерно большие гонорары. Ничего не поделаешь, высокие технологии продолжают уровень безработицы в развитых странах — вот и до стриптизёрш уже добрались.

Как собрать Кубик Рубика 5х5х5 (часть 1)

Reading time8 min
Views42K
В далеком 2008 году в мои руки попал кубик рубика нестандартных размеров. Как собирать такое чудо, я тогда и понятия не имел. Поначалу мы с друзьями собирали его частично, не имея понятий об алгоритме сборки, но потом захотелось всё-таки научиться собирать его полностью. Через гугл я нашёл некоторое подобие алгоритма сборки, но он к сожалению был неполный и грешил неточностями. Некоторое время анализировав нагугленное и алгоритм классической сборки кубика 3х3х3 я осознал полный алгоритм сборки куба не только 5х5х5, но и 4х4х4 (хотя у меня под рукой не было такого куба, я написал программу для моделирования такого кубика в 3D и проверил алгоритм). Всем, кто хотел бы научиться собирать такой кубик — добро пожаловать под кат.
Читать дальше →

Правильная работа с исключениями в PHP

Reading time4 min
Views69K
В предыдущей статье я предложил свести все «механизмы ошибок» к исключениям, поэтому логично будет объяснить, как правильно работать с исключениями в PHP.
Сначала поясню, почему я выбрал именно исключения, как механизм работы с ошибками:
  1. Исключения — это гибкий, расширяемый метод обработки ошибок;
  2. Это стандартизованный механизм – человеку, не работавшему с вашим кодом, не нужно будет читать мануал, чтобы понять, как обрабатывать ошибки. Ему достаточно знать, как работают исключения;
  3. С исключениями гораздо проще находить источник ошибок, так как всегда есть стек вызовов (trace).

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

Иерархические (рекурсивные) запросы

Reading time10 min
Views541K
Дерево объектов

Чтобы понять рекурсию, сначала надо понять рекурсию. Возможно, поэтому рекурсивные запросы применяют так редко. Наверняка вы представляете что такое SQL-запрос, я расскажу, чем рекурсивные запросы отличаются от обычных. Тема получилась объемная, приготовьтесь к долгому чтению. В основном речь пойдет об Oracle, но упоминаются и другие СУБД.

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

Underscore.js — библиотека, которая так хороша, что должна быть вне закона

Reading time3 min
Views50K
Каждый, кому приходилось писать объемные куски осмысленного кода на javascript, рано или поздно понимал, что ему многого не хватает в этом языке или просто неудобны некоторые врожденные конструкции. Для сглаживания шероховатостей применяются jQuery, Prototype, MooTools etc. Кто-то уже мало представляет себе, как можно кодить без них. Сегодня я расскажу о еще одной маааленькой библиотечке, которая делает мир javascript-программиста еще прекраснее. Речь пойдет о Underscore.js
Go ahead, make my day

Information

Rating
Does not participate
Location
Санкт-Петербург, Санкт-Петербург и область, Россия
Date of birth
Registered
Activity