Pull to refresh
21
Karma
0
Rating
Антон @kosmonaFFFt

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

ELK Stack для хранения логов Django приложения

System administration *Django **nix *
Tutorial

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


Решением было создание централизованного лог хранилища с агрегацией логов и поиском. Выбор пал на ELK стек. ELK — сочетание трех OpenSource проектов: ElasticSearch, Logstash и Kibana. ELK хранит логи, строит графики и есть поддержка полнотекстового поиска с фильтрами. В статье описывается процесс настройки ELK стека для хранения логов Django приложения.

Читать дальше →
Total votes 12: ↑12 and ↓0 +12
Views 28K
Comments 2

Использование искусственных иммунных систем для решения задачи символьной регрессии

Artificial Intelligence
Sandbox
Доброго времени суток, уважаемое хабро-сообщество!

Представляю на ваш суд статью, написанную по мотивам моей магистерской работы (факультет прикладной математики, информатики и механики Воронежского ГосУниверситета). Ее тема «Применение распределенных искусственных иммунных систем для решения задачи символьной регрессии». Постараюсь коротко (но содержательно) рассмотреть основные понятия искусственных иммунных систем и мой подход к их реализации для решения задачи символьной регрессии – восстановления символьного представления функции по заданному множеству ее значений в некоторых точках. Программа была написана на языке Python (версии 3.3), исходники доступны на Github.
Читать дальше →
Total votes 20: ↑18 and ↓2 +16
Views 8.2K
Comments 5

Работаем с EMS по нарушению сроков доставки посылок — инструкция

E-commerce management *
Недавний пост в «Я негодую» о работе EMS в нашей стране и полном пофигизме почтовых работников выявил потребность в инструкции о том, что можно сделать, чтобы когда-нибудь проблемы с посылками у EMS прекратились.

Сходу расстрою — посылкой управлять никак нельзя. Если она долго не «прилетает» в Россию (т.е. статус Экспорт стоит, а Импорт — нет) — тут вряд ли что-то поможет. Однако страхуемся, делаем по шагам, описанным ниже.
Порадовать тоже могу: процентов 95 посылок все-таки доходят. Объем для сравнений — порядка 10 посылок в месяц из США и Европы.
Обращаю внимание, что многие посылки (процентов 60 всех отправлений) я получаю «от себя», используя сервисе вроде Шипито. В некоторых случаях это означает, что почта не может отказать в претензиях по причине того, что они представляются «не отправителем». Однако во многих случаях рекомендую идти и биться за свою посылку при помощи процессов и документов, представленных ниже.
Читать дальше →
Total votes 175: ↑171 and ↓4 +167
Views 209K
Comments 108

50 цитат о программировании всех времён

Programming *
Translation
Перевёл после прочтения комментариев к статье «О ненависти к C++». В цитатах можно найти ответы на большинство возникших там вопросов.

50. Программирование сегодня — это гонка разработчиков программ, стремящихся писать программы больше и с лучшей идиотоустойчивостью, и вселенной, которая пытается создавать больших и лучших идиотов. Пока вселенная побеждает.
— Rick Cook

49. Lisp — это не язык, а строительный материал.
— Alan Kay

48. Ходить по воде и разрабатывать программы, следуя спецификации, очень просто… если они заморожены.
— Edward V Berard
Читать дальше →
Total votes 344: ↑336 and ↓8 +328
Views 149K
Comments 136

Генерируем OfficeOpenXML-документы за 5 минут

.NET *
Часто надо бывает из приложения на ASP.NET сгенерировать отчёт на сервере в OpenXML-формате.

Есть несколько привычных способов сделать это:
  1. «Нашёл, слинковал, заюзал» – идём в Гугл, ищем библиотеку для генерации docx или xlsx, подключаем, разбираемся, генерируем. Это привычно, но долго.
  2. «Фу» – использовать COM. Это не рекомендуется, требует установленного Microsoft Office на сервере, не очень thread-safe, с x64 не дружит и вообще старомодно.
  3. «Ъ» – разобраться с форматом, собрать из XML и зазипать. Брутально.
  4. «Microsoft way» – об этом способе рассказывается под катом.

Читать дальше →
Total votes 71: ↑63 and ↓8 +55
Views 71K
Comments 31

Гравитационный поиск. Gravitational Search

Algorithms *Mathematics *

Предисловие


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

Читать дальше →
Total votes 30: ↑23 and ↓7 +16
Views 18K
Comments 11

Символьная регрессия

Programming *Data Mining *
Sandbox
При решении задач с применением методов машинного обучения, как правило, мы выбираем наиболее подходящий алгоритм в контексте задачи, а также способ настройки его параметров.

Давайте рассмотрим несколько иной подход: вместо того, чтобы самостоятельно выбирать алгоритм, разработаем программу, которая способна автоматически генерировать алгоритмы для решения задач.

Читать дальше →
Total votes 78: ↑74 and ↓4 +70
Views 38K
Comments 76

Как из болота вытягивать ITшника или об общении в стрессовых ситуациях

Project management *
Tutorial

Неприятности случаются… Неожиданно плохой фидбек, проблемы с заказчиком или коллегами, не повысили зарплату, странные баги, внезапный овертайм или закрытие проекта — подобные события запускают цепочку реактивных реакций:

  • Нет, тут есть ошибка -> сами гады -> а может все не так и плохо -> ппц -> ладно, давай выкручиваться

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

  • Как узнать каждое состояние и предугадать следующее?
  • Как помочь выйти себе и собеседнику из цепочки?
  • Что не делать, чтобы не усугубить ситуацию?
Читать дальше →
Total votes 199: ↑186 and ↓13 +173
Views 272K
Comments 88

Microsoft Project delenda est

Project management *
В жизни многих обитателей софтверной индустрии иногда настаёт момент, когда им приходится нарисовать план проекта. Люди, что-то слышавшие об управлении проектами, читавшие книжки на эту тему (особенно книжки, не описывающие конкретную индустрию), а также учившиеся управлению проектами где-либо (в ВУЗе, на курсах и т.п.) чаще всего автоматически выбирают для создания этого плана Microsoft Project. Иногда использование MS Project навязывается руководством, клиентом, процессными стандартами в компании и т.п.

Для софтверных проектов выбор MS Project обычно крайне неудачен и ниже мы объясним почему, но сначала напомним несколько простых фактов о том, как устроены софтверные проекты, особенно в контексте заказной разработки.
Читать дальше →
Total votes 29: ↑21 and ↓8 +13
Views 26K
Comments 31

Хостинг mercurial репозиториев с помощью nginx, gunicorn и supervisor

Version control systems *
imageСпособов хостинга mercurial репозиториев достаточно, но я сочинил именно такой вариант по следующим причинам:
  1. nginx: мало кушает, быстро работает — скорость
  2. supervisor: мониторит процесс, перезапускает если что — надёжность
  3. gunicorn: wsgi, большие возможности по настройке — эффективность
Кроме того, т.к. я разрабатываю на django, и сайты запускаю под этой же связкой, есть и четвёртая причина — унификация, а она очень полезная вещь.

Если вас заинтересовала тема, то конкретные инструкции и конфиги — под катом.
Читать дальше →
Total votes 13: ↑13 and ↓0 +13
Views 3.8K
Comments 18

Сборка Mingw в Windows своими руками

Open source *
В сети можно найти много описаний сборки mingw и GNU утилит под ним. Я тоже решил написать свой вариант, так как во-первых он на русском. Во-вторых используются последние стабильные исходники (по состоянию на 27.01.2011). В третьих добавлена оптимизация циклов (graphite loop optimizations). В четвертых я описываю причины выбора тех или иных опций конфигурации исходников. В пятых, чтобы не забыть.
Читать дальше →
Total votes 34: ↑30 and ↓4 +26
Views 67K
Comments 29

Information

Rating
Does not participate
Location
Иннополис, Татарстан, Россия
Date of birth
Registered
Activity