Как стать автором
Обновить
-2
0
Антон @braineater

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

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

«Ускоряем» открытие тяжелого сайта

Время на прочтение3 мин
Количество просмотров17K
На днях потребовалось ускорить открытие сайта. Проблема заключалась в том, что одни только JS-файлы, даже собранные в один и сжатые обфускацией, весили более 500kB, а ведь еще есть css тоже довольно крупный.
В связи с этим, пользователям, у которых файлы закешированы (например новый пользователь или после билда сменилась версия), с медленным интернетом приходилось ждать довольно долго, смотря на белый экран.
Читать дальше →
Всего голосов 16: ↑10 и ↓6+4
Комментарии11

Плагин для Smarty — Combine

Время на прочтение2 мин
Количество просмотров5.7K
Плагин позволяет собрать несколько CSS или Javascript файлов воедино.

Я согласен, что подобных программных решений очень много, например Minify, YUI Compressor или конкантенатор из Pagespeed service от Google. Но для шаблонизатора Smarty мне подобного не попадалось, и я решил написать свое и попроще.
Combine
Плагин работает довольно просто: когда один из включаемых файлов изменяется, он создает новый выходной файл и возвращает к нему путь.
Читать дальше →
Всего голосов 13: ↑10 и ↓3+7
Комментарии10

Мега-Учебник Flask, Часть 1: «Привет, Мир!»

Время на прочтение6 мин
Количество просмотров579K
Это первая статья в серии, где я буду документировать мой опыт написания веб-приложения на Python, используя микрофреймворк Flask.

Здесь список всех статей в серии:
Часть 1: Привет, Мир!
Часть 2: Шаблоны
Часть 3: Формы
Часть 4: База данных
Часть 5: Вход пользователей
Часть 6: Страница профиля и аватары
Часть 7: Unit-тестирование
Часть 8: Подписчики, контакты и друзья
Часть 9: Пагинация
Часть 10: Полнотекстовый поиск
Часть 11: Поддержка e-mail
Часть 12: Реконструкция
Часть 13: Дата и время
Часть 14: I18n and L10n
Часть 15: Ajax
Часть 16: Отладка, тестирование и профилирование
Часть 17: Развертывание на Linux (даже на Raspberry Pi!)
Часть 18: Развертывание на Heroku Cloud

Моя предыстория


Я разработчик ПО с двузначным числом лет опыта разработки комплексных приложений на нескольких языках. Впервые я познакомился с Python для создания привязок к C++ библиотеке на работе. Вдобавок к Python, я писал веб-приложения на PHP, Ruby, Smalltalk и, верите вы или нет, еще на С++. Из всего этого, я нахожу комбинацию Python/Flask самой гибкой.
Я хочу начать это долгое и удивительное путешествие
Всего голосов 63: ↑60 и ↓3+57
Комментарии31

Коктейли ко дню программиста

Время на прочтение5 мин
Количество просмотров188K
Здравствуй, Хабр!

Осталось несколько дней до дня программиста и, конечно, в эту 13-ю пятницу, многие из пользователей хабра буду отмечать этот праздник. Буду отмечать и я.

По случаю профессионального праздника, мне бы хотелось поделиться с хабравчанами рассказом о своём небольшом кулинарном проекте, который удалось реализовать буквально накануне. Думаю из названия поста уже стало понятно, что это — коктейли для программиста. Кажется, до этого момента IT и миксологию еще никто не пытался объединить, а потому у меня есть некоторая надежда на успех моего начинания.

Все началось вот с чего: моя супруга увлекается кулинарией и ведет небольшой кулинарный блог. В прошлом году на мой день рождения она пригласила к нам в гости на кухню настоящего бармена из барного startup-проекта БАРаДОМа.нет. С момента знакомства с Артёмом (барменом который превратил мой день рождения в домашнюю барную вечеринку), у меня появилась идея: найти рецепты (или придумать самим) коктейлей, которые бы вписались в IT-тематику.

Итогом нескольких дней активной переписки с Артёмом стала вот такая небольшая коктейльная карта:

  • Ruby
  • Python
  • Суровый Perl
  • JMP (aka Assembler)
  • Profit!
  • Epic fail
  • Memory leak


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

Чин-чин!
Всего голосов 240: ↑217 и ↓23+194
Комментарии109

Процедурная генерация планов помещений

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

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

По процедурной генерации планов помещений есть много, очень много статей. Вот ещё пяток ссылок на статьи. Только исходников ни к одной из них нет.

В этой статье я расскажу о том, как я реализовал на Unity3d один простой метод генерации, который приводит к хорошим результатам и легко модифицируется. С картинками и исходниками.
Читать дальше →
Всего голосов 99: ↑97 и ↓2+95
Комментарии29

Шаблон бизнес-плана (финансовая модель) студии/агентства

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

В рамках нашего спецпроекта с NetCat для веб-студий и агентств мы подготовили большой материал по финансовой модели студии с кучей KPI, разработали реальный образец — и предлагаем обсудить его. Это эксклюзивный материал, ранее я не публиковал нигде этого шаблона и не выступал по данной теме.

Я не претендую на то, что изложенный ниже подход — единственно верный и является «серебряной пулей». Конечно, есть много других вариантов организации модели, но большинство компаний держат свой формат в строжайшем секрете. Подобную общую организацию бизнес-плана лично я использую и для всех своих проектов в боевых условиях — конечно, с другими KPI и формулами, детализацией и пр.

image

Вводная


Данный бизнес-план, несмотря на то, что он выглядит довольно сложно, на самом деле, является очень упрощенной моделью. Мы сделали ряд допущений и упрощений, чтобы показать в простом виде, как зависят друг от друга основные значения. «Боевые» финансовые модели реальных агентств, конечно, еще более сложны.

Надеюсь, что вы постараетесь «поиграть» со значениями – изменяя константы и показатели, которые подаются на вход «руками» — и посмотрите, как меняется динамика развития компании.
Читать дальше →
Всего голосов 55: ↑49 и ↓6+43
Комментарии15

Получаем бесплатный SSL сертификат

Время на прочтение4 мин
Количество просмотров516K
Привет, хабр!

О StartSSL я узнал от небезызвестного lissyara, в связи с чем ему очень благодарен.

Для начала расскажу, что же за зверь это. Как известно, SSL сертификаты выдаются центрами сертификации, чьи корневые сертификаты хранятся в хранилище сертификатов браузера\ОС (либо другого ПО, использующего SSL). Цена на большинство сертификатов зашкаливает, и платить приходится за каждый сертификат. Но у StartSSL весьма интересный подход — сами сертификаты у них бесплатные, вы платите только за проверку вашей личности.

Так же не может не радовать наличие русскоязычной поддержки.
Читать дальше →
Всего голосов 136: ↑123 и ↓13+110
Комментарии134

Дайджест интересных материалов из мира веб-разработки и IT за последнюю неделю №68 (28 июля — 3 августа 2013)

Время на прочтение7 мин
Количество просмотров30K
Предлагаем вашему вниманию очередную подборку с ссылками на новости, интересные материалы и полезные ресурсы.


Читать дальше →
Всего голосов 56: ↑48 и ↓8+40
Комментарии0

Вернулся невод с тиной морскою…

Время на прочтение2 мин
Количество просмотров79K
Года полтора назад я решил провести небольшой эксперимент. Цель была посмотреть на концентрированный новояз. Сделал я следующее:
1) Распарсил bash.im (тогда ещё bash.org.ru) и создал частотный словарь встречающихся там слов.
2) Распарсил Википедию и создал частотный словарь (точнее не совсем так, словарь Википедии у меня к тому моменту уже был, я его делал раньше для совсем других целей).
3) Рассортировал словарь Баша по встречаемости в порядке убывания, шёл по нему и печатал те слова, которые ни разу не встречались в Википедии.
Читать дальше →
Всего голосов 150: ↑143 и ↓7+136
Комментарии93

Знай сложности алгоритмов

Время на прочтение2 мин
Количество просмотров1M
Эта статья рассказывает о времени выполнения и о расходе памяти большинства алгоритмов используемых в информатике. В прошлом, когда я готовился к прохождению собеседования я потратил много времени исследуя интернет для поиска информации о лучшем, среднем и худшем случае работы алгоритмов поиска и сортировки, чтобы заданный вопрос на собеседовании не поставил меня в тупик. За последние несколько лет я проходил интервью в нескольких стартапах из Силиконовой долины, а также в некоторых крупных компаниях таких как Yahoo, eBay, LinkedIn и Google и каждый раз, когда я готовился к интервью, я подумал: «Почему никто не создал хорошую шпаргалку по асимптотической сложности алгоритмов? ». Чтобы сохранить ваше время я создал такую шпаргалку. Наслаждайтесь!
Читать дальше →
Всего голосов 312: ↑296 и ↓16+280
Комментарии99

Работа с цветом: полезные инструменты, книги, статьи для веб-дизайнеров

Время на прочтение2 мин
Количество просмотров91K
Работа с цветом — это первое, что должен уметь любой дизайнер. В интернете огромное количество разрозненной информации на эту тему, я попытался собрать самое полезное в одной подборке. Большинство полезностей с уклоном в веб-дизайн.

Инструменты




Colour Lovers — старый и функциональный инструмент для подбора цветовых схем. Аналоги — Colourcode, Color Scheme Designer и конечно Kuler. Подобных сайтов великое множество, но эти, на мой взгляд, самые удобные.
Читать дальше →
Всего голосов 67: ↑66 и ↓1+65
Комментарии8

Курс лекций «Стартап». Питер Тиль. Стенфорд 2012. Занятие 16

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

Весной 2012 г., Питер Тиль (Peter Thiel), один из основателей PayPal и первый инвестор FaceBook, провел курс в Стенфорде — «Стартап». Перед началом Тиль заявил: «Если я сделаю свою работу правильно, это будет последний предмет, который вам придется изучать».

Один из студентов лекции записывал и выложил транскипт. В данном хабратопике degorov, переводит шестнадцатое занятие, редактор astropilot.

Занятие 1: Вызов будущего
Занятие 2: Снова как в 1999?
Занятие 3: Системы ценностей
Занятие 4: Преимущество последнего хода
Занятие 5: Механика мафии
Занятие 6: Закон Тиля
Занятие 7: Следуйте за деньгами
Занятие 8: Презентация идеи (питч)
Занятие 9: Все готово, а придут ли они?
Занятие 10: После Web 2.0
Занятие 11: Секреты
Занятие 12: Война и мир
Занятие 13: Вы — не лотерейный билет
Занятие 14: Экология как мировоззрение
Занятие 15: Назад в будущее
Занятие 16: Разбираясь в себе
Занятие 17: Глубокие мысли
Занятие 18: Основатель — жертва или бог
Занятие 19: Стагнация или сингулярность?
Читать дальше →
Всего голосов 51: ↑47 и ↓4+43
Комментарии6

Simple-Science — Простые опыты (дайджест #24)

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

Сегодня в выпуске #24:


  • бумажная болгарка;
  • одноразовый патефон;
  • стекло плавится в микроволновке;
  • перегретая вода в СВЧ печи;
  • дистилляция воды;
  • цветное пламя солей.

Внимание:
Некоторые опыты могут быть опасны для здоровья. При их проведении нужно обязательно соблюдать технику безопасности.
Читать дальше →
Всего голосов 70: ↑58 и ↓12+46
Комментарии31

Дайджест интересных новостей и материалов из мира айти и веб-разработки за последнюю неделю №55 (27 — 5 мая 2013)

Время на прочтение7 мин
Количество просмотров27K
Предлагаем вашему вниманию очередную подборку с ссылками на новости, интересные материалы и полезные ресурсы.


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

Имитируем адаптацию глаза к темноте в 3D, или HDR для чайников

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

title

Для имитации этого эффекта в играх используется механизм, называемый tonemapping.

tonemapping — процесс проекции всего бесконечного интервала яркостей (HDR, high dynamic range, от 0 и до бесконечности) на конечный интервал восприятия глаза/камеры/монитора (LDR, low dynamic range, ограничен с обоих сторон).

Для того, чтобы работать с HDR, нам понадобится соответствующий экранный буфер, поддерживающий значения больше единицы. Наша же задача будет состоять в правильной конвертации этих значений в диапазон [0..1].

Читать дальше →
Всего голосов 113: ↑111 и ↓2+109
Комментарии31

4 шага на пути в Google, не имея высшего образования

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


Как получить должность инженера в Google, не имея высшего образования?
Вот вам небольшая история.
Читать дальше →
Всего голосов 249: ↑219 и ↓30+189
Комментарии55

Необыкновенный способ генерации лабиринтов

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

Вас ждет много анализа и немного частных производных. Код прилагается.
Прошу под кат!

Читать дальше →
Всего голосов 265: ↑264 и ↓1+263
Комментарии53

Оптимальный алгоритм игры в морской бой

Время на прочтение4 мин
Количество просмотров959K
Пару дней назад я с удивлением узнал, что некоторые мои знакомые не умеют играть в морской бой. Т.е. правила они, конечно, знают, но вот играют как-то бессистемно и в итоге часто проигрывают. В этой записи я постараюсь изложить основные идеи, которые помогут повысить уровень вашей игры.
Читать дальше →
Всего голосов 186: ↑163 и ↓23+140
Комментарии124

Сборка flex/as3 проекта с использованием gradle

Время на прочтение11 мин
Количество просмотров9.8K
После не самого удачного, на мой взгляд, эксперимента по сборке flex с использованием maven (подробности тут), решил попробовать gradle, про который пишут, что он взял лучшее от ant и maven и это следующий шаг в развитии. Решил провести эксперимент по такому плану:
  • flex compile (Path to FlexSDK/maven dependency)
  • as3 compile
  • flex unit run (dependency)
  • fla compile as static resource
  • reliase compress
  • code quality (FlexPMD)
  • multy module project

Кому интересно, что из этого получилось, прошу под кат, потому как текста достаточно много. Он писался прямо по ходу эксперимента, если читать совсем лень, то в конце есть ссылка на тестовый проект.
Читать дальше →
Всего голосов 6: ↑5 и ↓1+4
Комментарии7

Неделя бесплатных курсов на Сreative Live

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


C 3 по 8 июня Сreative Live запускает неделю курсов для начинающих по дисциплинам:
  • After Effects 8 июня
  • Photoshop 7 июня
  • Illustrator 6 июня
  • Dreamweaver 5 июня
  • InDesign 4 июня
  • Graphic Design Essentials 3 июня


Курсы будут проходить на английском языке, в режиме реального времени, как с живой аудиторией в студии, так и в online-режиме с 9 утра до 4 вечера (America/Los Angeles).
Курсы бесплатены для просмотра в реальном времени, однако запись всего курса будет стоит $199. или по отдельности $59 за каждый.
Читать дальше →
Всего голосов 7: ↑6 и ↓1+5
Комментарии4

Информация

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