Pull to refresh
71
0
Алексей @foxweb

Оператор ЭВМ

Send message

10 причин для перехода на Ruby

Reading time7 min
Views87K
Я познакомился с Ruby сравнительно недавно, благодаря чудесному фреймворку Ruby on Rails. Я не считаю себя экспертом в Ruby, но я прочитал PickAxe, написал несколько утилит на Ruby для личного пользования, а также разрабатываю на Rails в свободное время.
Читать дальше →

Пишем Referrer tracker: мал да удал, с хранимыми процедурами MySQL

Reading time4 min
Views3.6K
Часто возникает желание посмотреть отуда приходят люди на ваш сайт, дабы пойти туда почитать что про нас любимых пишут, и рьяно вступить в полемику не отходя от кассы. Казалось бы, такая популярная штука как Google Analitycs должна делать это, но есть одна проблема — в отчете отрезаются GET-параметры, и если вы видите что ссылка с огромного форума, то вам еще предстоит найти нужную тему, что отнимает время (стоит упомянуть, что Google Analitycs требует дополнительного JS кода на страницах, что также отнимает время и трафик).
Дальше кратко про альтернативы и вперед изобретать велосипед

Методы защиты веб-формы без капчи

Reading time3 min
Views62K

О чём речь?


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

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

В этом обзорном посте я бы хотел рассмотреть незаметные для пользователя методы защиты от ботов.

Методы защиты


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

TextMate средствами gedit

Reading time3 min
Views7.1K


Так вышло, что в офисе я работаю за Маком, а вот ноут — «17 MacBook Pro — не самый лучший, на мой взгляд, вариант в разрезе производительность/цена. Anyway, это тема другого разговора. Ноут под Ubuntu.
А теперь вопрос: если кодить на Ruby/RoR — кто ваш лучший ТекстовыйПриятель? Все верно, Textmate — Великий Фетиш и Идол всех программистов на Ruby под Mac. Итак задача была предельно проста — найти инструмент под Linux, максимально приближенный к Textmate по тому объему функционала который я использую в работе.
Читать дальше →

Делаем Liquid Resize своими руками

Reading time12 min
Views16K
Вы наверное уже слышали о технологии масштабирования Liquid Resize, которая учитывает содержимое изображения. Если вам интересно как оно все работает и как можно реализовать все это самому, то читайте далее (осторожно, много рисунков).


(НЛО прилетело и растянуло этот рисунок здесь)
Читать дальше →

Обучение Ruby и Rails, частные занятия

Reading time2 min
Views5.3K
Update: Поскольку этот пост был написан давно и информация в нем немного устарела, если вы хотите научитсья Ruby On Rails, пожалуйста пройдите на эту страницу: snitko.ru/learn_rails.html, я пострался там все подробно изложить.

***

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

Условия обсуждаются индивидуально.
Контакты на snitko.ru

Под катом будет немного обо мне и еще немного о моем предложении.
Читать дальше →

MySQL и JOINы

Reading time6 min
Views149K
Поводом для написания данной статьи послужили некоторые дебаты в одной из групп linkedin, связанной с MySQL, а также общение с коллегами и хабролюдьми :-)

В данной статье хотел написать что такое вообще JOINы в MySQL и как можно оптимизировать запросы с ними.

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

Свободные векторные карты для GPS

Reading time1 min
Views5.8K
Не так давно став «администратором» usb-шного gps-приемника и Asus eeePC 901, я задался вопросом поиска подходящего софта для организации GPS-навигатора на базе eeePC.

На данный момент мною было найдено две программы, более-менее обладающих нужным функционалом: gpsdrive и navit. Первая мне как-то не очень понравилась и ковыряния с нею были отложены на потом, а вот со второй софтинкой я поковырялся более основательно.

Благодаря наботу скриптов, navit поддерживает множество различных форматов векторных карт (в том числе карты от garmin). Но меня больше интересовали открытые и свободные источники.
Читать дальше →

Многопроцессовые демоны на PHP

Reading time3 min
Views44K
Зачем может понадобиться писать демоны на PHP?
  • Выполнение трудоемких фоновых задач;
  • выполнение задач, которые длятся больше, чем время ожидания при HTTP-запросе (30 секунд);
  • выполнение задач на более высоком уровне доступа, чем серверный процесс (читай — под рутом).

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

JavaScript библиотека «Raphaël» — SVG расцветает, SVG и iPhone

Reading time1 min
Views3.2K
Raphaël — это небольшая JavaScript библиотека с простым синтаксисом для работы с векторными форматами: SVG и VML (для IE). Впрочем, как я успел заметить у разработчика возникают проблемы с VML (когда многие вещи в SVG делаются очень просто в VML не всегда есть простая альтернатива)

часы
Читать дальше →

Оптимизация MySQL запросов

Reading time4 min
Views126K
В повседневной работе приходится сталкиваться с довольно однотипными ошибками при написании запросов.

В этой статье хотелось бы привести примеры того, как НЕ надо писать запросы.
Читать дальше →

Загрузка Linux за пять секунд

Reading time1 min
Views5.2K
На конференции Linux Plumbers Conference двое хакеров Арьян ван де Вен (Arjan van de Ven) и Оук Кок (Auke Kok) провели демонстрацию сразу двух систем Linux, каждая из которых загружалась быстрее пяти секунд. В первом варианте использовался модифицированный вариант дистрибутива Fedora, а во втором — модифицированный Moblin. В обоих случаях хакеры оптимизировали работу ядра (по вышеуказанной ссылке, а также в этом интервью можно узнать все подробности, что они сделали).

Разработчики уверяют, что результат показан без каких-либо трюков: окончание загрузки регистрируется только тогда, как CPU освобождается и прекращаются операции чтения с диска. Сама загрузка не включает в себя время входа в сеть, но включает загрузку NetworkManager.

Асинхронная инициализация железа позволила ускорить загрузку ядра до 1,02 с (на ядре 2.6.28 они уменьшат время до 0,5 с). Дальше загрузка шла параллельными потоками.


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

Простой калькулятор на " боярском" диалекте MSVС++

Reading time2 min
Views34K
Последующий код навеян этим крутым топиком с «боярскими» дефайнами кейвордов С++. Мы творчески дополнили набор, и получился следующий текст программы:
Читать дальше →

Анимированный фон средствами jQuery или «Эй, а ведь круто! Как Flash!»

Reading time3 min
Views13K
jQuery + CSS Sprite
Занимательные поделки от Джонатана Снука. Данная статья будет интересна скорее новичкам, нежели более умудренным разработчикам, хотя мистер Снук достаточно авторитетен и его методики могут быть полезны всем.
Любопытно... Что там у вас?!

Полезная информация со встречи с Хоконом в Петербурге

Reading time2 min
Views586
Вчера прошла встреча с Хоконом Ли — отцом CSS, технических директором Opera Software и YesLogic Pty Ltd (princexml). Было сказано много информации, которую я как, вероятно, и многие из вас знаем, поэтому постараюсь выделить что-то действительно полезное
  • Почему Dragonfly лучше Firebug
  • @face-font в Опере (доступен эсперементально)
  • Почему Оперы нет на iPhon'е
  • Популиризация ogg с помощью p2p, пиратов и Opera
  • Следующая встреча
Читать дальше →

Эмуляция многопоточности в PHP

Reading time10 min
Views30K
Суть многопоточности (для приложения) состоит в том, что процесс может состоять из нескольких (однотипных) потоков, выполняющихся «параллельно», то есть без упорядочивания по времени — выполнился один, пошел следующий. Использование многопоточности позволяет ускорить выполнение задачи и/или снизить нагрузку, таким образом, улучшая быстродействие самого приложения.

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

Я рассмотрю простой пример, как можно достичь эмуляции многопоточности в PHP.
Читать дальше →

Правила личной эффективности от ЭД

Reading time21 min
Views66K
Заранее предупреждаю и извиняюсь, но оно того стоит: букаф многа.

Введение

В средней школе я был «круглым» двоечником, которого переводили в следующий класс только под значительным влиянием моего отца, в то время проректора ФПИ, довольно влиятельного (в личном общении) и властного человека.

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

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

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

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

Один из лучших классов для загрузки файлов на сервер. (PHP)

Reading time1 min
Views13K
Хочу познакомить вас с одним из лучших классов, на мой взгляд, для загрузки файлов на сервер.
позволяет делать с изображением все что угодно
Ничего лучше чем пример быть не может, так что сразу к делу…
Читать дальше →

Information

Rating
Does not participate
Location
Москва, Москва и Московская обл., Россия
Date of birth
Registered
Activity

Specialization

Backend Developer, Database Developer
Senior
From 5,000 $
Ruby
Ruby on Rails
PostgreSQL
Git
Linux
OOP
Docker
RabbitMQ
Elasticsearch
Apache Kafka