Как стать автором
Обновить
58
0
Данил Письменный @dapi

Инженер-программист

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

Как мы год живем без sprockets и с react

Время на прочтение3 мин
Количество просмотров9.3K
Привет!

Мы в taaasty.ru уже полтора года живем на react-е и почти год без sprockets. Это так здорово, хочу поделиться. За одно расскажу как работает react с рельсами в режиме prerender.

image
Читать дальше →
Всего голосов 15: ↑13 и ↓2+11
Комментарии12

Легкая верстка в вынужденных местах: хелперы, декораторы, элементы форм

Время на прочтение3 мин
Количество просмотров6K
Многие уже знают о том что во вьюхах не рекомендуется использовать логику и вообще какие-либо манипуляции с данными. Для этого подобный код выносят в декораторы, кастомные элементы формы, компоненты и просто хелперы в конце-концов.

Действительно, при таком подходе view-файлы начинают выглядить лучше. Но кастомные элементы форм и хелперы становятся просто невыносимыми.

Но есть простой и элегантный способ как сделать их чище и проще…

Читать дальше →
Всего голосов 10: ↑8 и ↓2+6
Комментарии7

Class-level instance variables

Время на прочтение3 мин
Количество просмотров18K
В последнее время было много публикаций на эту тему, но у новичков снова и снова возникают вопросы. Публикую свой вариант обьяснения почему не работает как ожидается переменная экземпляра, объявленная в теле класса:

class User
  @var = 1
end

Читать дальше →
Всего голосов 4: ↑3 и ↓1+2
Комментарии14

Краткий обзор отличий LESS от SASS

Время на прочтение2 мин
Количество просмотров66K
Вчера пол дня потратил на подробное изучение LESS и его отличие от используемых нами SASS/SCSS.

Синтаксис SASS мне импонирует больше чем SCSS за его краткость. Но большая вложенность стилей в SASS может быстро ликвидировать все преимущества его краткости. В любом случае разницу между SASS и SCSS не принципиальна. LESS оказался ближе к SCSS чем к SASS. И, в общем, это тоже самое. Отличий не много, но парочка из них принципиально меняют расстановку сил.

Читать дальше →
Всего голосов 47: ↑37 и ↓10+27
Комментарии48

С корабля на бал

Время на прочтение3 мин
Количество просмотров1.5K
image

По статистике, мы нанимаем одного из 10-20 обратившихся кандидатов на должность веб-разработчика. При таком потоке необходимо быстро распознавать подходящие кандидатуры. Разного рода синтетические тесты при отборе сотрудников я не люблю – бессмысленая трата времени. Лучший способ проверить – сразу кинуть в бой.

— Привет, я крутой веб-разработчик, вот мое реюзме!
— Привет, спасибо, резюме не надо, давай аккаунт на github, бери тикет No.123 и вперед! Слишком крутой для тебя? Ну выбери сам, какой тебе больше нравится, из того что есть. Другой работы нет.

Минимум затрат личного времени, максимум объективности.

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

Мы делаем это так.
Читать дальше →
Всего голосов 113: ↑99 и ↓14+85
Комментарии213

Всплывающие flash-сообщение из глубин фоновых задач

Время на прочтение1 мин
Количество просмотров2.4K
Каждый раз, когда необходимо выводить flash-сообщение сталкиваешься с одними и теми же проблемами: непонятно где эти сообщения выводить, толи заранее на странице определить место, которое жалко, толи сделать растягиваемый дизайн, что не всегда удобно. А еще этих сообщений может быть много, а еще каждый норовит сохранять их под своим ключем (warning, notice..). Когда понадобилось посылать пользователю сообщения из delayed_job стало понятно что нужно решить эту проблем раз и навсегда.

gem gritter_notice — выводит flash и удобно обрабатывает сохраняемые в базе всплывающие сообщения в 5 строчек кода.

image

Читать дальше →
Всего голосов 56: ↑47 и ↓9+38
Комментарии19

Классы — это объекты

Время на прочтение3 мин
Количество просмотров12K
Кто изучает Ruby, знает, что в нем все сущности — объекты, но порой не догадывается насколько. Так вот, классы в Ruby это тоже объекты.



Как это понять..
Всего голосов 56: ↑50 и ↓6+44
Комментарии64

Унарный амперсанд

Время на прочтение1 мин
Количество просмотров5K
Расскажу как в Ruby работает такая элегантная конструкция:

User.all.map &:name           # получить массив имен пользователей

вместо

User.all.map { |user| user.name }

Сначала кажется что это свойство перечисляемых классов, но на самом деле это не так.
Читать дальше →
Всего голосов 64: ↑59 и ↓5+54
Комментарии17

loop_dance — фоновый планировщик быстрого развертывания

Время на прочтение2 мин
Количество просмотров1.4K
В последнее время в проектах часто приходится создавать демона, который периодически фоном что-то проверяет или отсылает.

Обычно подобную задачу решают с помощью таких пакетов как whevenever, daemon_controller, daemon_generator и т.д. и все казалось бы просто и понятно, но надоело каждый раз городить огород и писать одно и тоже. Мне нужно всего-лишь чтобы раз в час выполнялось какое-нибудь User.notify_all

Презентую loop_dance — gem для быстрого развертывания управляемого демона в рельсовом окружении.
Читать дальше →
Всего голосов 32: ↑31 и ↓1+30
Комментарии21

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

Время на прочтение5 мин
Количество просмотров2.9K
В догонку недавно пробежавшей теме о семейным бюджете в Google Docs, расскажу как просто управлять личными финансами без изнурительного журналирования всех движений денежных средств, с помощью «промышленного метода» применяемого в коммерческих организациях.
Читать дальше →
Всего голосов 32: ↑29 и ↓3+26
Комментарии6

Управление проектами с почасовой оплатой

Время на прочтение5 мин
Количество просмотров4.2K
Расскажу о том, как превратить почасовую оплату в отличный способ управления проектом. А также о том, как заказчику (менеджеру проекта) не волноваться о завышении сроков разработчиком, а разработчику не беспокоиться, что заказчик будет его двигать по срокам.

время-деньги
Всего голосов 23: ↑13 и ↓10+3
Комментарии22

BDD с помощью Cucumber

Время на прочтение3 мин
Количество просмотров105K
Если вы привыкли сначала писать код, а потом его тестировать, то с BDD такой подход совсем не уместен. Сила BDD в том, что он помогает вести разработку начиная со стадии оформления ТЗ. Для BDD это список свойств (фич), который уместно писать вместе с заказчиком.

Но самое главное, что по этому же списку происходит автоматическое тестирование проекта. Инструмент тестирования (в нашем случае это Cucumber) методично пройдет по вашему перечню и дотошно проверит реализацию каждой фичи.
Читать дальше →
Всего голосов 34: ↑30 и ↓4+26
Комментарии21

Простой способ получить поля модели в ActiveResource

Время на прочтение1 мин
Количество просмотров721
Если вы пробовали использовать REST, то знаете, что при подключении ресурса через ActiveResource возникает проблема в отсутствие схемы ресурса.
небольшое решение
Всего голосов 6: ↑5 и ↓1+4
Комментарии0

Вольпинизм

Время на прочтение2 мин
Количество просмотров6.7K
Занимаясь, по долгу службы, исполнением собственных замыслов я, как и большинство здесь собравшихся, столкнулся с тем, что не все идеи и проекты находят свое воплощение.

Не устали еще это слышать? :)

Наверняка уже читали о том, что для успеха проекта необходимо иметь цель и план?

Есть кое что еще…
Читать дальше →
Всего голосов 16: ↑10 и ↓6+4
Комментарии8

Обманывая других мы вредим сами себе

Время на прочтение2 мин
Количество просмотров9.4K
Думаю что и на этот счет у Английских ученых есть свои исследования, правда я с ними не знаком, зато у меня в этом большой собственный опыт.

Опыт, с которым давно пора покончить.

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

Зачем мы врем?

Читать дальше →
Всего голосов 67: ↑46 и ↓21+25
Комментарии99

Физис

Время на прочтение2 мин
Количество просмотров1.2K
Писать от души получается, когда не по себе. А когда не по себе — лучше писать, чем мучаться молча. Мутит что-то внутри. Толи чая перепил, толи от людей. Толи от положения. Хотя какое тут положение.

Завтра снова приниматься за дело. В шесть утра телефон пилим-пилип. Сарделька, натуральный кофе (оп-па, а без кофе уже никак), 20 минут душ, ежедневник. Хабр, Жажда (zhazhda.ru), одноклассники, может быть news2, снова жажда, jdu.ru, снова жажда, висит там ещё два человека.

Психологи говорят, что помимо хорошо изученных напряженностей управляющих человеком, есть ещё и ни хера не изученный 'физис'. Это такое стремление всего живого к росту и жизни. Та самая жажда жизни. Что с живыми не делаешь, а она всегда у них присутствует. А если её нет — тыц, суицид. И почему она есть, почему её нет — не понятно. Почему химические процессы в организме при тысячи возможных вариантов протекают именно так, что это приводит к росту — фиг на самом деле знает — просто физис и все тут. А если его нет — все достаточно быстро кончится.

У меня бывает физис пропадает. День-два. Когда дело до стенки доходит, и уже некуда дальше — отталкиваешься от неё, как от дна моря.

В детстве, когда ещё плохо плавал, любил затаить дыхание и нырять поглубже, опускаешься до тех пор, пока не встретишь ногами дно, а как встретишь — сжимаешься и выталкиваешься как пружинка. Если хорошо выпрямиться можно внезапно выскочить, как дельфин :) Однажды опускался так, опускался, а дна нет. Уже и воздух кончается. Наверх грести — не хватит запаса кислорода, скорость небольшая, да и плаваю плохо. А вниз — уже страшно — неизвестно где дно там, может быть с одного прыжка и не получится выпрыгнуть — тогда точно воздуха нехватит. Незнаю что сработало физис или усталость, но решил опускаться. Все равно этим бы все закончилось. Уже уши закладывает и темно как-то… А, вот одно дно, мягкое такое, не заметное. Уже не нервничаешь, спокоен, понимаешь, только один шанс, и лучше быть спокойным, кислород попусту не тратить. Сжался сильно-сильно, как мог сильно, секунду замер и — стрелой вверх! Обтекаемый весь такой, как супермен, блин, и чувствуешь вокруг поток воды, ждешь до последнего, до последнего, до последнего! Вот уже не двигаешься, гребок руками… ии-и-и! Не получилось как дельфин, получилось как старый дед — ыыыык… аааа, кх-кх-кх…

Физис…

В жизни, заметил, таже фигня. Когда тебя что-то прижимает к стенке, опускаешься, кажется все плохо и на совсем, а потом понимаешь, до бесконечности это продолжатсья не может и вот уже через некоторое время, чувствуешь твердую почву под ногами. Глубоко, но твердую. Встал на неё покрепче, походил, отдохнул, успокоился, переосмыслил, а в общем-то не так все и плохо, низко, зато уверенно. Нормальная такая почва под ногами. При желании можно так сжаться и прыгнуть — что вообще улетишь!
Всего голосов 16: ↑6 и ↓10-4
Комментарии7

Идеи и результат

Время на прочтение5 мин
Количество просмотров688
Корреляция

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

— Ах он такой, дурак, он нас умных не слушает, делает неизвестно что, его проект провалится!

И уж если он, действително проваливается, тут нет конца счастья! Вот оно! Свершилось то, о чем они говорили! Их не слушали и, вот, проект загнулся! Ура товарищи! Ещё раз доказали что мы были правы!

Я попытался разобраться в этом феномене и понял что проблема в видении целей проекта и задач которые перед собой обычно ставят одни и другие.

Читать дальше →
Всего голосов 30: ↑27 и ↓3+24
Комментарии27

Информация

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