Igor Kuznetsov

gtd

[GTD] Учимся мыть полы правильно или как заставить рутину работать на тебя

Забегая вперед скажу, что GTD возможно не совсем правильно и полно отражает суть статьи, но мне показалось приемлемым. Ситуация: С детства не любил уборку квартиры, ничего не изменилось и по сей день. Я не люблю мыть посуду и пол, гладить, стирать и что-то чистить, даже ботинки, но тут есть одно
2 min read
программирование

[Ruby] Читайте документацию или как красиво работать с many-to-many

Поделюсь решением проблемы, возникшей при выполнении очередной задачи на работе. Ситуация: Есть список рассылок List, у него может быть много подписчиков Subscribers (связь многие ко многим), реализовано через третью таблицу SubscriberLists. class List < ActiveRecord::Base has_many :subscriber_lists, :dependent => :destroy has_many :subscribers, :through => :subscriber_lists end Требуется: Выводить
1 min read
программирование

[Отзыв] Форд Н. Продуктивный программист

Вот и пришло время рассказать про еще одну [https://igkuz.ru/tag/otzyv/] прочитанную мной книгу. На очереди хорошая, но немного нудная публикация Нила Форда. Скажу сразу, читать её было нелегко ибо она местами занудна, но неплохо прочищает мозги в отдельных аспектах жизни программиста. Ближе к телу, пойду опять по
3 min read
программирование

Рабочее окружение на чистой системе: RVM+Ruby+GIT+Homebrew

Пришлось разворачивать рабочее окружение на новой чистой системе (Mac OS X 10.8.2), хотел написать красивый туториал с картинками, пока не наткнулся вот на этот [http://www.moncefbelyamani.com/how-to-install-xcode-homebrew-git-rvm-ruby-on-mac/] . Тут все описано как раз красиво и хорошо. Советую посмотреть тем, кто разрабатывает на Ruby. Для полного комплекта надо
1 min read
Ruby

[Ruby]: Сортировка и фильтрация по связанным ресурсам в разных локалях с Ransack

Задача была проста: есть модель User и связанная с ней модель Role, нужно организовать поиск и сортировку, и все бы ничего, да только связаны они many-to-many связью: has_many :roles, :through => :user_roles Истоки данного варианта соединения мне, к сожалению, были неизвестны, а задачу надо было решить. Почему именно ransack?
3 min read
программирование

[Отзыв] Мартин Р. Идеальный программист

Начну цикл статей, посвященный «отзывам» на книги. Пока писал, вспомнилось как в школе, каждый год после лета нам давали задание писать «отзывы» на книги, прочитанные за каникулы, поэтому и такой заголовок. Рассказывать буду о личном восприятии прочитанных книг, на объективность можете не рассчитывать. До этой публикации не читал ни одной
3 min read
программирование

[Ruby] Как написать свой gem #1

Очень много про это написано, поэтому тем, кто знает лучше не читать. Это скорее просто cheat sheet для себя. Разобью на несколько этапов, чтобы было понятнее, проще и все описать. Все не в понарошку гем configus, упражнение на новой работе. С чего начать? Для начала нам необходим bundler. Но если
1 min read
программирование

[PHP]: Вопросы на собеседовании #3

Продолжаю цикл статей [https://igkuz.ru/tag/sobesedovanie/] про вопросы, которые встречались мне на собеседованиях. Поехали: 1. Какова алгоритмическая сложность операции strlen? Вопрос интересный, чтобы ответить на него надо знать особенности выделения памяти и хранения массивов в PHP. Пытаясь решить задачку в лоб, можно получить ответ O(N), где N
1 min read
программирование

[PHP]: Вопросы на собеседовании #2

Продолжаю цикл статей (1 [https://igkuz.ru/blog/2012/07/13/1/], 2 [https://igkuz.ru/blog/2012/07/16/1/], 3 [https://igkuz.ru/blog/2012/07/17/1/]) , посвященных вопросам на собеседовании. В этот раз постараюсь рассказать про интересные задачки. Итак, поехали: 1. Задача на логику Ситуация: Представьте,
3 min read
программирование

[PHP]: Вопросы на собеседовании #1

В продолжение вступительной статьи [https://igkuz.ru/blog/2012/07/13/1/], сегодня расскажу про стандартные вопросы на собеседовании Php разработчиков. Начинаем с азов, гуру программирования данный пост скорее всего не заинтересует, и ничего нового они для себя тут не найдут. Поехали: 1. Что такое ООП? Назовите его основные принципы.
2 min read
JavaScript

Вопросы на собеседовании Front-End разработчиков

Начну небольшой цикл статей, где расскажу про некоторые популярные вопросы на собеседованиях. В основном рассказ пойдет про PHP, потому что это основной язык разработки для меня. Но начать хотелось бы с опубликования ссылки на вопросы для front-end разработчиков. Если вы сможете ответить на большую часть значит вы действительно очень хорошо
Linux

Simple Load Balancing with Nginx

Сегодня, изучая документацию к Nginx [http://wiki.nginx.org], наткнулся на интересный модуль [http://wiki.nginx.org/HttpUpstreamModule], ну и собственно простенький пример [http://wiki.nginx.org/LoadBalanceExample] конфигурации для него. Насколько я понял из описания, модуль устроен таким образом, что самостоятельно выбирает какому серверу проксировать запросы. Если вдруг сервер

Установка Percona Server на Ubuntu

Что же такое Percona Server? Percona Server это просто fork MySQL Server. Что это вообще значит? На протяжении последних нескольких лет, MySQL делал некоторые интересные открытия с точки зрения бизнеса. Их купил Sun, которая затем была поглащена Oracle, после чего вокруг начали витать разные дурные слухи. В итоге развитие MySQL
1 min read

[SVN]: merge trunk into tag/branch

На работе, в проекте основным репозиторием является svn. Каждая версия выпускаемого продукта, т. е. выливаемая на продакшн сервера, отмечается тэгом в svn, вида <название_проекта_сокращенное>-версия, например PHP, тогда наша метка будет иметь вид PHP-1.0.21. Бывают ситуации когда, вылились и через некоторое время надо срочно подлить что-то
1 min read

Конфиг сборки для php

Может кому-то пригодится конфиг, который использую для сборки php из сырцов: ./configure —prefix=/usr/local/php —enable-fpm —with-zlib —enable-pdo —enable-sockets —enable-calendar —with-iconv —enable-exif —enable-soap —enable-ftp —enable-wddx —with-zlib —with-bz2 —with-gettext —with-xmlrpc —enable-pcntl —enable-soap —enable-bcmath —enable-mbstring —enable-dba —with-openssl —with-mhash —with-mcrypt —with-xsl —with-curl —with-pcre-regex —with-gd —enable-gd-native-ttf —with-ldap —enable-pdo —

Тернарный оператор в php

Совсем недавно открыл для себя сокращенную запись тернарного оператора в php. Пример стандартной записи: $a = 0; $a = empty($a) ? 1 : 2; var_dump($a); Выведет: 1 Если, к примеру, надо проверить переменную на пустоту и присвоить собственно её или же совершить какое-то действие стандартным способом получиться следующая запись: $a = 0;