Как стать автором
Обновить
14
0
Антон @aohorodnyk

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

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

Резервное копирование: Кейс Google

Время на прочтение2 мин
Количество просмотров46K
Сегодня мы разберем профильную тему на основе кейса Google Tech Talks, которым поделился один из инженеров компании, а тематических журнал High Scalability проанализировал рассказ ИТ-специалиста Google.

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

Подборка: 40+ полезных инструментов, ресурсов и исследований о работе с email

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


В нашем блоге на Хабре мы часто пишем о создании почтовых рассылок — верстке HTML и CSS, работе с plain-text сообщениями и описываем интересные эксперименты. Сегодня мы представляем вашему вниманию подборку полезных ресурсов, туториалов и исследований на английском и русском языках, посвященных работе с email.
Читать дальше →
Всего голосов 10: ↑8 и ↓2+6
Комментарии2

400 потрясающих бесплатных сервисов

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

Рад представить дополнение оригинального списка из 300 потрясающих бесплатных сервисов. Автор оригинальной статьи Ali Mese добавил ещё +100 новых сервисов, которые помогут найти все — от источников вдохновения и редакторов фотографий до создания опросов и бесплатных иконок.

И еще подборку +500 инструментов от 10 марта 2017 г. смотрите здесь.



A. Бесплатные веб-сайты

  • HTML5 UP: Адаптивные шаблоны HTML5 и CSS3.
  • Bootswatch: Бесплатные темы для Bootstrap.
  • Templated: Коллекция 845 бесплатных шаблонов CSS и HTML5.
  • Wordpress.org | Wordpress.com: Бесплатное создание веб-сайта.
  • Strikingly: Конструктор веб-сайтов.
  • Layers: Создание сайтов на WordPress (new).
  • Bootstrap Zero: Самая большая коллекция бесплатных шаблонов Bootstrap (new).
  • Landing Harbor:  Продвижение мобильного приложения c помощью бесплатного лендинга (new).
Читать дальше →
Всего голосов 108: ↑89 и ↓19+70
Комментарии38

О профессиональных наказаниях подчиненных в интеллектуальной IT-среде

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


Текст написан по мотивам выступления руководителя студии «Сибирикс» Владимира Завертайлова на летней партнерской конференции «1С-Битрикс» BitrixSummerFest и представляет личное мнение выступавшего.

Полное выступление Владимира можно посмотреть по ссылке.

Тема это болезненная, и говорить о ней открыто не любят. Конечно, каждому хотелось бы работать в коллективе, где никто и никого не наказывает. Увы, но теория управления пока не дает нам рецептов построения совершенно бесконфликтных коллективов, в которых все работают ответственно и с полной самоотдачей, не проявляя никаких пороков в рабочее время, где начальники сплошь тактичны и мудры. Впервые о проблематике наказаний я задумался несколько лет назад, сидя в офисе часов в 12 ночи. В тот момент я, будучи директором компании, выполнял обязанности программиста. Я отлаживал код, написанный сотрудником, который всё бросил, не дописал и ушел домой. В скайп стучится заказчик, пишет грозные слова, «срочно, всё пропало», давит и торопит меня. А в таких ситуациях у меня начинает болеть спина. И я сидел и думал, а что для программиста означает «нести ответственность за проект»?

Скажем, я, как директор, за срыв проекта огребаю по полной, в первую очередь — финансово. Ведь вся ответственность за работу компании лежит на директоре. А как быть с программистом или дизайнером?
Читать дальше →
Всего голосов 75: ↑37 и ↓38-1
Комментарии109

Безопасная авторизация с PHPixie 3

Время на прочтение6 мин
Количество просмотров9.2K
image
Сегодня вышел самый долгожданный компонент PHPixie 3 — Auth для авторизации пользователей. Авторизация это наиболее критическая часть любого приложения, сделать ее правильно трудно, а ошибки могут скомпрометировать множество пользователей, особенно если речь идет об оупенсорсе. Использование устарелых hash-функций, криптографически небезопасных генераторов случайных чисел, неправильная работа с кукисами встречаются слишком часто. Я уже когда-то писал о старой уязвимости в Laravel, которую кстати полностью так не исправили. Поэтому в PHPixie Auth я очень внимательно отнёсся к аутентификации, особенно к долгим сессиям и кукисам.

Кстати в конце статьи у меня для вас есть очень радостная новость (спойлер: PHPixie теперь член PHP-FIG)
Читать дальше →
Всего голосов 18: ↑14 и ↓4+10
Комментарии22

Шпаргалка Java программиста 2: Триста пятьдесят самых популярных не мобильных Java opensource проектов на github

Время на прочтение39 мин
Количество просмотров167K
Что это и зачем оно надо: Как известно, главное преимущество Java мира в том в нем существует огромное количество open-source проектов на на все случаи жизни, однако найти нужный на github'e не так просто, так как описание проекта часто мало информативно, зачастую сложно даже понять этот проект для Android'a или нет. В этой статье я автоматически и полуавтоматически собрал Java проекты, убрал старые и проекты только для Android'a, выбрал 350 набравших больше всего звезд, разделил по категориям и перевел описания.

Если вы хотите убедиться что базы данных пишут не только на C, найти проекты для работы с большими данными или нейронными сетями, пишите свой язык программирования для JVM и хотите посмотреть как это уже сделано или же просто хотите узнать какие новые возможности можно найти в Java мире open-source то это статья вам, думаю, может пригодится.

В чем смысл серии статей 'Шпаргалки Java программиста'
За время работы Java программистом я заметил, что как правило программисты постоянно и планомерно используют от силы 10-20% от возможностей той или иной технологии, при этом остальные возможности быстро забываются и при появлении новых требований, переходе на новую работу или подготовке к техническому интервью приходится перечитывать все документации и спецификации с нуля. Зато наличие краткого конспекта особенностей тех или иных технологий (шпаргалок) позволяет быстро освежить в памяти особенности той или иной технологии.


Другие статьи серии: часть 1. JPA и Hibernate в вопросах и ответах

Update: Внимание, актуальная версия со много большим количеством ссылок, находиться теперь в моем github'e проекте useful-java-links, по этой ссылке.


Читать дальше →
Всего голосов 51: ↑43 и ↓8+35
Комментарии49

Как научиться делать игры: полезные ресурсы

Время на прочтение9 мин
Количество просмотров110K
Когда я начинал строить свою карьеру в игровой индустрии шесть лет назад, то часто задавался вопросами по геймдеву. Начиная от поиска общего понимания того, как разрабатываются и оперируются онлайн-игры, до частных вопросов типа того, как лучше рекламировать конкретную игру. Тогда было мало структурированной информации по созданию и продвижению игр, новичку разобраться и найти ответы было исключительно сложно. Практически единственным источником информации был собственный опыт и консультации более опытных коллег. Сейчас ситуация кардинально изменилась. Информации по игровой индустрии настолько много, что рискуешь в ней просто утонуть. Для того, чтобы упростить процесс получения нужных мне знаний, я структурировал и делал себе пометки по всем источникам информации о геймдеве. Далее в статье предлагаю всю эту информацию в удобной форме для общего пользования.

image
Читать дальше →
Всего голосов 52: ↑49 и ↓3+46
Комментарии52

Релиз Phalcon 2.1.0 beta 1

Время на прочтение6 мин
Количество просмотров7.9K
Мы рады представить вам первый бета-релиз Phalcon 2.1!

Релизы 2.1.x будут поддерживаться в течении более длительного периода, 2.1 будет нашей первой версией с долгострочной поддержкой (LTS).

В 2.0.x мы ввели несколько новых фич и поправили множество багов. Однако, наше внимание всегда было обращено на сохранение обратной совместимости с Phalcon 1.3.x, в то же время мы стимулировали разработчиков обновляться до 2.0.x. Это дало достаточно времени разработчикам на внесение изменений в свои приложения для работы с новой веткой.

Phalcon 2.1 предоставляет новые возможности, некоторые из которых несовместимы с предыдущими версиями, поэтому убедитесь, что вы проверили свои приложения перед обновлением production-систем.

Мы уверены, что изменения в этом релизе оправдают обновление :)
Читать дальше →
Всего голосов 16: ↑14 и ↓2+12
Комментарии0

Мой подход к настройке экономики игры: электронные таблицы

Время на прочтение7 мин
Количество просмотров26K
Этот пост был написан в ответ на предложение Бренды Ромеро и Яна Шрайбера о том, чтобы разработчики поделились своими любимым методами работы в Excel.

Я выполнил достаточно много проектов по экономике игр, используя Excel. На сегодняшний день при конфигурации и настройке экономики игр чаще всего мне нужно создать определенный столбец данных, чтобы каждое значение ячейки автоматически рассчитывалось на основе формулы с одной или несколькими переменными (например, расчет стоимости каждого оружия на основе того, какой ущерб оно наносит и какое пространство занимает в инвентаре игрока).


Читать дальше →
Всего голосов 22: ↑19 и ↓3+16
Комментарии7

Сравниваем Nim и Rust

Время на прочтение10 мин
Количество просмотров34K
Предлагаю читателям «Хабрахабра» перевод статьи «A Quick Comparison of Nim vs. Rust». Мои замечания будут выделены курсивом.

Rust и Nim — два новых языка программирования за развитием которых я слежу. Вскоре, после моего первого поста о Rust, вышел в свет Nim 0.10.2. Это побудило меня поближе познакомиться с Nim и, естественно, сравнить его с Rust.

В этом посте я собираюсь показать вам две простых программы написанных на Nim и Rust с грубым сравнением их времени выполнения и выскажу мои субъективные впечатления от программирования на этих языках.

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

Как бороться с OutOfMemoryError на практике, или ох уж мне эти базы данных

Время на прочтение17 мин
Количество просмотров73K
Приветствую, Хабр!
Немного лирики
Сегодня, 2015-03-21, я решил сделать пол-дела, и всё-таки начать писать статью о том, как же всё-таки начать понимать, что же делать с OOM, да и вообще научиться ковырять heap-dump'ы (буду называть их просто дампами, для простоты речи. Также я постараюсь избегать англицизмов, где это возможно).
Задуманный мной объём «работ» по написанию этой статьи кажется мне не однодневным, а посему статья должна появиться лишь через пару недель спустя день.

В этой статье я постараюсь разжевать, что делать с дампами в Java, как понять причину или приблизиться к причине возникновения OOM, посмотреть на инструменты для анализа дампов, инструмент (один, да) для мониторинга хипа, и вообще вникнуть в это дело для общего развития. Исследуются такие инструменты, как JVisualVM (рассмотрю некоторые плагины к нему и OQL Console), Eclipse Memory Analyzing Tool.
Очень много понаписал, но надеюсь, что всё только по делу :)
Читать дальше →
Всего голосов 50: ↑49 и ↓1+48
Комментарии31

Как REST-архитектура влияет на скорость и надежность работы сайта

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

Унифицированный программный интерфейс


Ключевой момент: совместимость с HTTP-методами в плане безопасности и идемпотентности.

Безопасный запрос — это запрос, который не меняет состояние приложения.

Идемпотентный запрос — это запрос, эффект которого от многократного выполнения равен эффекту от однократного выполнения.
Читать дальше →
Всего голосов 29: ↑22 и ↓7+15
Комментарии31

Дизайн блога: какой он должен быть

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


Предлагаю перевод статьи How To Desing Blogs за авторством Ezequiel Bruni.

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

Для людей, у которых есть собственные блоги, преимущества очевидны:
  1. Гибкий формат. Полная свобода, чтобы обсудить различные темы. Даже если блог имеет центральную тему, они могут время от времени отрываться от нее, чтобы исследовать другие идеи, которые их интересуют;
  2. Записи могут быть как короткими, так и длинными, как вам нравится;
  3. Записи не обязательно должны содержать текст. Видео и фото блоги могут быть привлекательными и популярными;
  4. Блоги можно использовать для становления кого-то в качестве эксперта в своей области, тем самым увеличивая возможности для бизнеса;
  5. Блоги невероятно легко создавать благодаря таким сервисам, как WordPress.com, Blogger и так далее.

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

Всё о версиях Windows 8.1 и о том, как легально загрузить последний образ без подписки

Время на прочтение6 мин
Количество просмотров767K
Хочу поделиться в одной заметке важной, на мой взгляд, информацией о версионности образов Windows 8.1, и о том, как любой желающий может совершенно легально загрузить ту языковую версию и издание, которые ему требуется. С учётом того, что после выхода Windows 8.1 образы пересобирались минимум пять раз, вопрос версионности становится интересным для администраторов и энтузиастов.

Недавно я писал о том, как можно совершенно легально загрузить самый последний Microsoft Office с сайта Microsoft — как корпоративную версию, так и коробочную Retail — любые языки и продукты, со всеми интегрированными обновлениями. Сегодня я расскажу, как сделать то же самое и с операционной системой — средствами предоставляемыми самой Microsoft.

Но для начала я хочу рассказать о версиях Windows 8.1. Не об изданиях — этого добра в сети много, а именно о публичных версиях сборок ОС. Ведь для любого администратора удобно загрузить образ со всеми интегрированными обновлениями, чем устанавливать сотню самостоятельно. Причём загрузить образ с сайта Microsoft, а не самодельную сборку с торрентов. Всё что я буду рассказывать о версиях ОС Windows 8.1 применимо и к Windows Server 2012 R2, за исключением канала для бесплатной загрузки образов для переустановки ОС. Но давайте всё по порядку.
Читать дальше →
Всего голосов 75: ↑71 и ↓4+67
Комментарии60

Настройка современного Puppet сервера с нуля

Время на прочтение9 мин
Количество просмотров64K
Недавно я переосмыслил процедуру установки нового сервера Puppet с нуля на Ubuntu 12.04, включая все современные свистелки и перделки. В итоге у меня получился этот гайд.

Для начала нам потребуется чистая Ubuntu c работающей сетью и настроенным DNS.

В итоге мы должны получить:
  • Установленый везде Puppet 3-й версии
  • Конфиги в git репозитории с общим доступом
  • Динамические окружения, управляемые r10k
  • Поддержку PuppetDB
  • Поддержку Hiera


Данное руководство довольно длинное, т.к. все настройки делаются вручную, чтобы впоследствии легко можно было пользоваться результатом и подстраивать его под себя. Единственным исключением является PuppetDB, который проще установливать через собственный модуль от Puppet Labs, а не вручную.

Предполагается, что все команды будут выполнены от пользователя root на сервере Puppet, если не указано иное.
Читать дальше →
Всего голосов 33: ↑30 и ↓3+27
Комментарии15

Время против памяти на примере хеш-таблиц на Java

Время на прочтение3 мин
Количество просмотров18K
Эта статья иллюстрирует т. н. компромисс скорости и памяти — правило, которое выполняется во многих областях CS, — на примере разных реализаций хеш-таблиц на Java. Чем больше памяти занимает хеш-таблица, тем быстрее выполняются операции над ней (например, взятие значения по ключу).

Читать дальше →
Всего голосов 31: ↑27 и ↓4+23
Комментарии28

Что должен делать стартап, чтобы выжить?

Время на прочтение8 мин
Количество просмотров25K
В прошлом материале блога мы рассказывали о проекте SHOPPILOT (История проекта SHOPPILOT: От факапа до стартапа). С ними мы познакомились будучи в Акселераторе ФРИИ. На этот раз хотим поделиться теми знаниями, которые дает процесс обучения в акселераторах. Расскажем о том, как за 3 дня нам дали азы стартаперства на программе Web Ready GenerationS 2014, которая проходила на базе ФРИИ. Из данной статьи можно узнать, какие стадии проходит стартап, прежде чем превратиться в бизнес, как лучше прописать бизнес-модель проекта для привлечения инвестиций и несколько лайфхаков, которые помогут стартапу выжить. Сначала заставим немного «поскучать» над теорией, а затем «развеселим» реальными кейсами.

В первый день обучения директор акселерационных и образовательных программ ФРИИ Дмитрий Калаев рассказал о том, как стартапу просчитать для инвестора сумму необходимых инвестиций, что делать, если у проекта сложная бизнес-модель, а также остановился на других полезных для начинающего предпринимателя вещах, подкрепляя теоретическую часть практическими кейсами проектов Акселератора ФРИИ.
Читать дальше →
Всего голосов 28: ↑17 и ↓11+6
Комментарии6

Меняем Java на Scala. Базовое приложение

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

Лето на дворе, скоро отпуск и появилось немного свободного времени поделиться наработками, каким-то опытом по написанию Web приложений на Java платформе. Как основной язык я буду использовать Scala. Это будет похоже на небольшой гайд, как человеку с опытом Java постепенно начать использовать Scala и не отказываться от уже имеющихся у него наработок.

Это первая часть из серии статей, в которой мы уделим внимание базовой структуре приложения. Ориентирована на людей знающих Java, работавших со Spring, Hibernate, JPA, JSP и другими 3-4ех буквенными сокращениями. Я попытаюсь рассказать как максимально быстро и безболезненно начать использовать Scala в ваших проектах и по-другому проектировать ваше новое приложение. Все это будет вокруг проекта, который должен выполнять ряд требований:
1. Приложение полностью закрыто, работаем только после авторизации
2. Наличие удобного API (REST мы забудем (он уже история) и напишем что-то вроде Google AdWords API, со своим SQL like запросником)
3. Возможность запуска на сервере приложений так и без него
4. i18n
5. Миграция БД
6. Среда для разработки должна разворачиваться через Vagrant
7. И, по мелочи, логирование, развертывание…

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

Читать дальше →
Всего голосов 36: ↑27 и ↓9+18
Комментарии14

10 полезных советов: Под каким соусом собирать контакты посетителей сайта

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

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

В данном материале мы аккумулировали опыт наших клиентов и некоторых игроков рынка. Опыт наш базируется на длительной практике в маркетинге и на работе с клиентами нашего сервиса Witget, который помогает владельцам сайтов и маркетологам, собирать контакты посетителей сайта.
Читать дальше →
Всего голосов 41: ↑7 и ↓34-27
Комментарии13

Динамическое добавление свойств в языке Java

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

Инструмент родился как способ побороть недочеты проектирования малой кровью. Я с трудом могу представить ситуацию, где использование инструмента могло бы быть продиктовано иными причинами.
Читать дальше →
Всего голосов 11: ↑8 и ↓3+5
Комментарии4
1

Информация

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