Как стать автором
Обновить
2
0
Максим @Mx21

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

Отправить сообщение

Как DRYить модели

Время на прочтение5 мин
Количество просмотров17K
В большинстве рельсовых проектов основная концентрация кода приходится на модели. Все наверняка читали про Slim controllers & fat models и стараются впихать в модели как можно больше, а в контроллеры как можно меньше. Что ж, это похвально, однако в стремлении утолстить модели многие часто забывают про принцип DRY — don't (fucking) repeat yourself.

Я тут постараюсь вкратце расписать, как в районе моделей и рыбку съесть, и про DRY не забыть.

Читать дальше →
Всего голосов 64: ↑60 и ↓4+56
Комментарии22

Как поставить задачу для простого (шаблонного) сайта

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

Помнится, кстати, что в комментариях к статьям о проектировании мне задавали такие вопросы вроде «А что делать, когда нет времени и денег на проектирование?». Ответ ниже.
Читать дальше →
Всего голосов 78: ↑75 и ↓3+72
Комментарии69

Стратегия восстановления поврежденной таблицы в MySQL

Время на прочтение4 мин
Количество просмотров11K
Началось все с того, что в один прекрасный момент ядро прибило демона mysqld и mysql_safe автоматом его перезапустил и все бы хорошо, да только таблицы в БД использовались MyISAM. В итоге пришлось воспользоваться myisamcheck но это совсем другая история. В процессе проверки и починки индексов пострадала одна таблица и было принято решение восстанавливать из бекапов, хорошо, что раз в сутки делаются.

Исходные данные:
  • имеем сервер БД с MySQL на борту;
  • поврежденную таблицу логов(статистики) чего угодно, что постоянно заполняется и может например не использоваться какое-то время;
  • суточный бекап;
  • бинарные логи с последнего суточного(полного) бекапа.

Задача:
  • сервер должен быть доступен для работы;
  • новые данные должны попадать в таблицу;
  • восстановить целостность данных.

Ожидаемый результат:
данные в поврежденной таблицы восстановлены без останова базы дынных;
таблица содержит все данные включая текущие.
Читать дальше →
Всего голосов 39: ↑36 и ↓3+33
Комментарии9

Rails custom Scaffolding

Время на прочтение4 мин
Количество просмотров26K

Наверное каждый в начале работы с ROR был впечатлен возможностью Scaffolding'а, который позволяет одной командой создавать migrations, controllers, models и views.

Но что делать если в своем проекте вы используете не стандартные Rails утилиты: erb, Test::Unit, fixturies, а сторонние инструменты: Haml, Rspec, Cucumber, Factory Girl и более того, хотите добавить собственные шаблоны?

Интересно? GOTO next line.

Исходные данные:
Ruby on Rails; Rspec; will-paginate; Haml; Factory-girl

Задача:
% rails generate scaffold post post:string
Генерирует:
  1. contoller's с поддержкой will_paginate, русскоязычными сообщениями
  2. model's с поддержкой will_paginate
  3. view's с заданным нами содержимым и в формате haml
  4. Rspec тесты, вместо Test::Unit
  5. Factory Girl factories вместо стандартных fixtures

Читать дальше →
Всего голосов 41: ↑38 и ↓3+35
Комментарии26

Где взять капитал начинающим предпринимателям

Время на прочтение3 мин
Количество просмотров2.1K
Многие IT специалисты рано или поздно приходят к выводу, что работать на себя эффективнее и выгоднее, чем быть наёмным работником. Набравшись опыта в какой-то области, хочется применить свои знания для улучшения благосостояния, но встаёт вопрос: «с чего начать?» и «где взять деньги для старта?» Как показывает практика, мало кто обращается за помощью к государству, но для начала своего дела все средства хороши и необходимо пользоваться любой возможностью!
Читать дальше →
Всего голосов 94: ↑81 и ↓13+68
Комментарии121

Что у сайта под капотом

Время на прочтение1 мин
Количество просмотров2.5K
Появился ещё один полезный инструмент для веб-мастера — UnderTheSite. Он изучает заголовки HTTP, код страниц (краулер скачивает примерно десять страничек), JavaScript и CSS, чтобы идентифицировать характерные следы тех или иных технологий (matcher’ы). Один запрос — и на странице отображается сразу полный список, что удалось обнаружить. Можно сразу набирать URL вида underthesite.com/sites/habrahabr.ru. Например:

Google: Google Webmaster Tools Verification, Google Analytics, Google Web Server, UTF-8 Unicode charset, Google Web Fonts, HTML5, Google Website Optimizer, YUI Library.

Яндекс: jQuery, Nginx, Open Graph Protocol, OpenID, OpenSearch, UTF-8 Unicode charset.

Хабрахабр: Google Analytics, Nginx, MooTools, swfobject, UTF-8 Unicode charset.

Автор просит добавлять новые технологии для определения: каждый может сделать это самостоятельно после регистрации.
Всего голосов 102: ↑86 и ↓16+70
Комментарии34

Что нужно знать Android-разработчику

Время на прочтение7 мин
Количество просмотров57K
imageБуквально месяц назад на Хабре появился топик примерно с таким же названием и посвящалась она начинающим программистам, разжевывая некоторые особенности разработки под эту платформу. Еще тогда я подумал о написании этой статьи, так как показалось, что подходить к началу работы в новой среде лучше с другой стороны. А именно, с более философской. Чтобы не набивать шишки всегда лучше использовать чужой опыт, которым с вами и делюсь.

Прошлым летом совершенно неожиданно для себя я приобрел смартфон Nexus One. Своей покупкой был страшно доволен и подолгу ковырялся в его софтовой начинке, восхищаясь продуманностью системы. Поскольку я уже давно являюсь разработчиком игр, захотелось смастерить что-то свое и для этого устройства. После достаточно плотного изучения платформы, чтения специальной литературы, появились и первые ласточки в виде различных украшательств экрана. Надо заметить, что несмотря на то, что я с java никогда серьезно не работал, язык показался легко осваиваемым и интуитивно понятным. Очень сильно помогла и документация от Гугла. Все это в совокупности вселяло надежды на успешную разработку первого серьезного проекта, дизайн которого уже начал складываться с первых шагов изучения Android. Энтузиазма добавил и тот факт, что после пробного выкладывания приложения с живыми обоями на маркет за первые сутки его скачало почти тысяча пользователей. В голове завертелись мысли о коммерческих проектах и «легкой наживе».

Это была лирично-оптимистичная преамбула, а теперь перейдем к реальной действительности.
Читать дальше →
Всего голосов 132: ↑121 и ↓11+110
Комментарии95

Советы для начинающих по самостоятельной подготовке к сдаче экзаменов Microsoft

Время на прочтение3 мин
Количество просмотров54K
Hello Habraworld!

В этой статье я бы хотел поделиться своим небольшим опытом в области самостоятельной подготовки к сдаче сертификационных экзаменов Microsoft на примере MCITP: Enterprise Administrator

Итак, что же нам необходимо?
Читать дальше →
Всего голосов 41: ↑30 и ↓11+19
Комментарии40

10 способов улучшить свои навыки программирования

Время на прочтение4 мин
Количество просмотров88K

1. Выучить новый язык программирования


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

Среди языков программирования отличный познавательный эффект и наверстывание опыта дают: Lisp (или Scheme), Форт, PostScript или Factor (стековые языки программирования), Haskell (строго типизированный, чистый функциональный язык) либо OCaml (объектно-ориентированный язык функционального программирования), Пролог (логическое программирование), Erlang (отличные паралельные вычисления).

Читать дальше →
Всего голосов 239: ↑227 и ↓12+215
Комментарии96

Видеоуроки по Python от Khan Academy

Время на прочтение1 мин
Количество просмотров14K
Некоммерческая организация Khan Academy начала публиковать микролекции по языку программирования Python для начинающих. Первый урок посвящён написанию простой программки вычисления факториала с использованием цикла.



P.S. Khan Academy специализируется на массовом образовании. С 2006 года её основатель Салман Хан записал более 2300 микролекций в области науки и математики. По данным на июнь 2011 года, у канала Khan Academy на YouTube зафиксировано около 64 млн просмотров.

Khan Academy на YouTube
Всего голосов 67: ↑63 и ↓4+59
Комментарии28

TOP-100 ведущих веб-студий России-2011

Время на прочтение1 мин
Количество просмотров744
Привет, Хабр!

Мы опубликовали результаты шестого ежегодного рейтинга «Top-100 ведущих веб-студий России Тэглайн-2011». Респондентов просили оценивать компании по совокупности показателей.

Теперь первая десятка рейтинга выглядит следующим образом:

image

Читать дальше →
Всего голосов 91: ↑63 и ↓28+35
Комментарии95

Верстка почтовых рассылок: разбор полетов

Время на прочтение4 мин
Количество просмотров27K
В предыдущих своих топиках я давал лишь сухую теорию о верстке рассылок, и считаю, что подошло время практики. Кардинально новой информации относительно предыдущих статей читатель не почерпнет, но увидит как применяются на практике описанные ранее мною советы. В качестве примера будем использовать макет рассылки выдуманной компании(рисовал сам). С макетом, а затем и разбором верстки можете ознакомиться по катом.

Читать дальше →
Всего голосов 58: ↑51 и ↓7+44
Комментарии17

Верстка почтовых рассылок

Время на прочтение6 мин
Количество просмотров71K
Привет, Хабр!

В этой статье я бы хотел поделиться своими познаниями в кроссбраузерной и кроссмейлерной верстке почтовых рассылок. Под словом кроссмейлерность подразумевается — корректное отображение верстки во всех почтовых клиентах. Я считаю, что статья вполне актуальна, в виду того, что на хабре эта тема несколько раз освещалась, но некоторые нюансы были неточными, а другие просто устарели. По долгу службы я долгое время занимался версткой html расылок по всему миру, и приведенные ниже правила будут касаться следующих почтовых клиентов и веб-интерфейсов: MS Outlook 2003-2010, mail.ru, rabmler почта, Яндекс почта, Gmail, Yahoo! Mail (Classic), Thunderbird 2.0-3.0, Hotmail, Windows Live Mail, Apple Mail 3-4, AOL Mail, Lotus Notes 8-8.5.
Читать дальше →
Всего голосов 150: ↑146 и ↓4+142
Комментарии81

Railswizard — сервис быстрого создания rails-приложений

Время на прочтение1 мин
Количество просмотров1.1K
Собственно, railswizard.

Можно не только за минуту сделать себе базовое приложение, но и посмотеть, что же внутри рельсовых шаблонов. Код полностью доступен на гитхабе.

Удобно и поучительно.
Всего голосов 31: ↑28 и ↓3+25
Комментарии21

Создание очередной казуалки на Flash-платформе с физикой. Часть I

Время на прочтение6 мин
Количество просмотров6.7K
Привет, дорогой друг.

Начну с того, что геймдевом я занимаюсь относительно недавно.
Поэтому на качество кода и информации не полагайтесь %)

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

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

Читать дальше →
Всего голосов 84: ↑75 и ↓9+66
Комментарии50

Типовые ошибки на собственных сайтах веб-студий

Время на прочтение8 мин
Количество просмотров68K
Привет, Хабр! Я продолжаю цикл статей по теме маркетинга и продаж в веб-студиях / интерактивных агентствах. В этом материале я хочу поговорить о собственных сайтах студий и типовых ошибках, которые очень часто совершают их владельцы.

Этот дайджест основан на моем приличном опыте мониторинга и анализа сайтов на рынке веб-разработок (исследования конкурентов в ADV, мониторинг и анализ участников «Тэглайн», проведение заказных аудитов для студий и пр.).

Я попытался систематизировать основные «ляпы» и упущения по нескольким основным категориям, на которых и остановлюсь подробнее:
  • Ошибки позиционирования;
  • Ошибки расстановки приоритетов;
  • Неправильная презентация компании и услуг;
  • Неправильная презентация портфолио и кейсов;
  • Ошибки в коммуникации с заказчиком;
Читать дальше →
Всего голосов 133: ↑130 и ↓3+127
Комментарии49

Пишем игру для Android c помощью AndEngine. Часть 2

Время на прочтение6 мин
Количество просмотров11K
Всем привет!
Как и обещал, вторая часть статьи.
Во избежание недопонимания, перед прочтением ознакомьтесь с первой частью статьи.
Уже ознакомились? Тогда добро пожаловать под кат где я познакомлю читателя с игровыми объектами.
Читать дальше →
Всего голосов 37: ↑34 и ↓3+31
Комментарии4

Это должен знать каждый

Время на прочтение3 мин
Количество просмотров83K
Спрос на Android-разработчиков весьма велик сейчас. Я решил подготовить список того, что нужно знать каждому разработчику под эту платформу. Это не только то, что вас могут спросить на собседовании, а весь спектр знаний, который скорее всего пригодится в работе. Бонусом идет пара интерсных вопросов про платформу.
Читать дальше →
Всего голосов 139: ↑124 и ↓15+109
Комментарии21

Пишем игру для Android c помощью AndEngine. Часть 1

Время на прочтение4 мин
Количество просмотров55K
Всем привет.
Сегодня я расскажу вам как с помощью AndEngine написать небольшую игру. Стаья получилась довольно большая и, чтобы не утомлять читателя, пока мы остановимся на первой ее части. Все что нужно от читателя — это знание java, ООП и умение обращаться с Eclipse и Android SDK. Забегая вперед, у нас получится что то похожее на Mirrors Maze либо Laser Logic.
Вторая часть статьи.
Третья часть статьи.
Читать дальше →
Всего голосов 64: ↑56 и ↓8+48
Комментарии31

Дорога к свету

Время на прочтение10 мин
Количество просмотров23K

Простейший робот из подручных средств



image
Наш простой робот

Многие, кто из нас сталкивался с вычислительной техникой, мечтали собрать своего робота. Чтобы это устройство выполняло какие-то обязанности по дому, к примеру, приносило пиво. Все сразу берутся за создание наисложнейшего робота, однако зачастую быстро обламываются в результатах. Своего первого робота, который должен был делать умищу фишек, мы так и не довёли до ума. По этому нужно начинать с простого, постепенно усложняя своего зверя. Сейчас мы поведаем тебе как из подручных средств, которые есть у каждого дома, можно создать простейшего робота, который будет самостоятельно передвигаться по твоей квартире.
Читать дальше →
Всего голосов 172: ↑165 и ↓7+158
Комментарии92

Информация

В рейтинге
Не участвует
Откуда
Россия
Дата рождения
Зарегистрирован
Активность