Pull to refresh
10
0
Андрей @mamontoff

User

Send message

Сомнительная инициатива ВК…

Level of difficultyEasy
Reading time3 min
Views59K

Добрый день, вечер или что у вас там на марсе. Хотел бы обратиться к людям придумавшим новый, модный и очень интересный инструмент под кодовым названием «perfomance-review».

Немного обо мне. Я сотрудник ООО «ВК». Пожалуй это всё что я могу рассказать о себе, так как эта статья может нести репутационные и кадровые потери для компании в которой я работаю.

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

Давай к делу, хватит разводить сопли…

Читать далее
Total votes 224: ↑192 and ↓32+160
Comments324

Behavioral-интервью в IT: что это и как подготовиться? (вопросы с ответами для Software Developer + грамматика)

Reading time8 min
Views9.4K

Многоэтапный процесс интервью в IT иногда занимает до 40 дней, но как правило большинство кандидатов отваливаются именно после одного из первых этапов отбора - behavioral interview.

Обычно behavioral questions включают в себя вопросы на следующие темы...

Читать далее
Total votes 24: ↑20 and ↓4+16
Comments2

Архитектура Учи.ру: облака, модульность и унификация

Reading time7 min
Views2.1K

В этом году Учи.ру исполняется 10 лет. За это время компания пережила технологические и архитектурные трансформации. Она выросла из простого сайта, где можно было решать примеры на счёт столбиком, до группы компаний с курсами по школьным и внешкольным предметам, олимпиадами и многим другим. Команда научилась справляться с внезапным усилением трафика, одновременно запускать несколько задач и «распиливать» огромный монолит на кусочки.

Сейчас может показаться, что все используемые нами решения стандартны, но в далеком 2012 году мы внедряли их одними из первых. Я, Алексей Вахов, директор по инновациям Учи.ру, расскажу о ключевых технологиях и архитектурных принципах, которые лежат в основе платформы.

Читать далее
Total votes 7: ↑6 and ↓1+5
Comments1

Полноценное руководство по проведению встреч one-on-one для менеджеров

Reading time11 min
Views11K

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

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

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

Читать далее
Total votes 10: ↑10 and ↓0+10
Comments0

История Учи.ру: от мини-монолитов до микросервисной архитектуры

Reading time7 min
Views4.9K

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

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

Читать далее
Total votes 8: ↑6 and ↓2+4
Comments5

Опыт внедрения Service Mesh на Nomad и Consul

Reading time7 min
Views8.5K

В этой статье мы расскажем, как развернули Service Mesh, решили часть проблем микросервисной архитектуры и уменьшили нагрузку на разработчиков и инженеров инфраструктуры.

Читать дальше →
Total votes 18: ↑18 and ↓0+18
Comments2

Как мы находим неочевидные ошибки в интерфейсах онлайн-заданий для детей

Reading time7 min
Views24K
Каждый новый урок на платформе — это плод совместного труда методистов, дизайнеров, иллюстраторов, программистов и тестировщиков. Новые задания обычно проходят тестирование в школах, где методисты могут пронаблюдать, насколько они понятны ученикам, собрать отзывы и обратную связь. Но некоторые проблемы на малых выборках могут остаться незамеченными. И здесь приходит на помощь изучение детальных действий учеников — куда кликнули, какие числа ввели, какой ответ выбрали. Действия детей внутри задач дают ценную информацию, которая позволяет совершенствовать нашу платформу, чтобы сделать обучение более удобным и понятным. Доработки могут касаться как интерфейса заданий, так и формулировок объяснений и вопросов.


Читать дальше →
Total votes 21: ↑21 and ↓0+21
Comments6

Как работает реляционная БД

Reading time51 min
Views534K
Реляционные базы данных (РБД) используются повсюду. Они бывают самых разных видов, от маленьких и полезных SQLite до мощных Teradata. Но в то же время существует очень немного статей, объясняющих принцип действия и устройство реляционных баз данных. Да и те, что есть — довольно поверхностные, без особых подробностей. Зато по более «модным» направлениям (большие данные, NoSQL или JS) написано гораздо больше статей, причём куда более глубоких. Вероятно, такая ситуация сложилась из-за того, что реляционные БД — вещь «старая» и слишком скучная, чтобы разбирать её вне университетских программ, исследовательских работ и книг.

На самом деле, мало кто действительно понимает, как работают реляционные БД. А многие разработчики очень не любят, когда они чего-то не понимают. Если реляционные БД используют порядка 40 лет, значит тому есть причина. РБД — штука очень интересная, поскольку в ее основе лежат полезные и широко используемые понятия. Если вы хотели бы разобраться в том, как работают РБД, то эта статья для вас.
Читать дальше →
Total votes 232: ↑229 and ↓3+226
Comments134

Мониторинг для бедных или SAR + MySQL + Gnuplot

Reading time10 min
Views20K

Почему именно SAR?


Я уже довольно давно занимаюсь мониторингом. Поэтому по роду своей деятельности частенько сталкиваюсь с нестандартными ситуациями, когда приходится придумывать различные «велосипеды», для того, чтобы мониторить хост. Например, мы будем рассматривать ситуацию, когда у нас есть сервер (виртуалки или VDS), который очень ограничен в ресурсах.

Существует множество хороших систем мониторинга, таких как Zabbix, Nagios, Cacti и т.д. Но для нашей ситуации все они не подходят, в силу ясных причин — они сами потребляют ресурсы, которых у нас итак не очень много. Сразу возникает вопрос, как быть? И тут к нам на помощь спешит SAR.
Читать дальше →
Total votes 14: ↑14 and ↓0+14
Comments23

Искусственный рассвет

Reading time9 min
Views232K
Началось всё год назад. Перед Новым 2014 годом несколько пришел в упадок жизненный тонус. Процесс самокопания привел к следующей мысли:



— А, что ж так темно-то, Господи? © День радио.

Впрочем, для человека, живущего зимой по летнему времени — мысль вполне естественная.
Что же делать?
Total votes 187: ↑185 and ↓2+183
Comments87

Иерархическая Темпоральная Память (НТМ) и алгоритмы ее самообучения

Reading time2 min
Views13K
Привет всем Хабражителям, кто интересуется вопросами искусственного интеллекта! Всех с Прошедшими праздниками! Пора двигаться дальше.

В конце прошлого года я закончил перевод последней версии документа о «Hierarchical Temporal Memory» (HTM), который теперь можно найти рядом с оригиналом на сайте Numenta.com.

Что это такое и зачем оно все? Это последняя разработка весьма небезысвестного Джеффа Хокинса сотоварищи, моделирующая работу отдельных слоев коры головного мозга. Эта штуковина позволяет (если не накосячить все сделать правильно) выделять из входного потока данных сходные события, их последовательности, проводить их распознавание и предсказание. Всех, кого интересуют подробности, милости прошу под хабракат.

Читать дальше →
Total votes 86: ↑77 and ↓9+68
Comments39

Система отзывов и рейтингов для товара в интернет-магазинах

Reading time2 min
Views6.3K
Для покупателя в интернет-магазине (ИМ) очень важны рекомендации уже купивших, рейтинг товара, отзывы о нем. Наверняка, каждый пользовался Яндекс.Маркетом и представляет, что это такое.

Небольшой скриншотик для понимания
image

Читать дальше →
Total votes 10: ↑7 and ↓3+4
Comments14

Как легче начать работать с PostgreSQL имея опыт в MySQL?

Reading time1 min
Views974
Возникла передо мной задача подружиться с PostgreSQL. Сам я разработчик на PHP и до сих пор использовал СУБД MySQL. По ней имею довольно высокий уровень. Как, затратив наименьшие усилия, начать работать с Postgres? Перечитывать мануал — куча потерянного времени, потому что различия между двумя этими СУБД не сильно велики. Попытался поискать статей по теме миграции, но ничего толкового не нашел. Может у кого-нибудь есть такие статьи в букмарках, или кто-то сам писал? Или сможет опытом поделиться?

Речь конечно идет о чем-то более полном, чем описания отличий в счетчиках (инкрементных полях).
Total votes 11: ↑6 and ↓5+1
Comments6

PRFLR, или как работает ваш код на продакшине

Reading time2 min
Views3K
Коллеги, приветствую. Мы хотим рассказать вам о нашем проекте под названием PRFLR. Это инструмент для анализа быстродействия работы кода прямо в production режиме. И realtime.
Читать дальше →
Total votes 10: ↑8 and ↓2+6
Comments12

Начало работы с Push Notifications в PhoneGap

Reading time3 min
Views26K
Доброго времени суток, хабрапользователи!

Push Notifications не включены в API PhoneGap. Если сделать небольшой поиск по документации PhoneGap, то можно найти только Notifications которые представляют собой обычные alert диалоги с вожможностью использования в них звуковых эффектов и вибрации.
Но что делать, если вам просто необходимо создать кроссплатформенное приложение с Push Notifications? Я хочу обратить Ваше внимание на тестовый пример работы с некоторыми из них при помощи Android. В результате, из разработанного проекта можно будет получить также iOS, BlackBerry и Windows Phone приложения.


image
Читать дальше →
Total votes 33: ↑27 and ↓6+21
Comments1

Фильтр Блума на PHP

Reading time3 min
Views18K

Что это?


Википедия гласит:
Это вероятностная структура данных, придуманная Бёртоном Блумом в 1970 году, позволяющая компактно хранить множество элементов и проверять принадлежность заданного элемента к множеству. При этом существует возможность получить ложно-положительное срабатывание (элемента в множестве нет, но структура данных сообщает, что он есть), но не ложно-отрицательное.



А попроще


Это способ проверки существования элемента в огромной выборке.
как это работает?
Total votes 43: ↑38 and ↓5+33
Comments23

Пара слов об интернационализации приложений

Reading time12 min
Views46K
Я давно регулярно читаю Хабр и заметил, что здесь довольно мало внятных статей о локализации ПО, ориентированных на разработчиков. По своему опыту управления проектами локализации я могу сказать, что локализация — это не только перевод строк и адаптация приложения к контексту той или иной страны, но и постоянное противоборство (в идеальных случаях — равноправное взаимодействие) с разработчиками.
В этой статье я постараюсь на примере показать, как можно создать так называемый localization-friendly code, то есть, организовать ресурсы таким образом, чтобы существенно облегчить локализацию приложения, снизив избыточные временные и финансовые затраты.
Сразу же оговорюсь, что речь пойдёт в первую очередь об интернационализации, то есть, об учёте всех лингвистических особенностей на этапе разработки. Если же ресурсы вашего проекта изначально не подразумевали локализацию, а впоследствии вы решились на неё, то их «затачивание» под локализацию может выйти намного дороже, чем доход от неё.



Читать дальше
Total votes 115: ↑113 and ↓2+111
Comments66

Простое сравнение изображений с помощью php

Reading time3 min
Views27K
Алгоритм возможно не новый, и не является идеалом, но, на удивление, работает. Никаких графов и корелляции.

Для начала, стоит отметить, что сравнение очень приблизительно (по крайней мере, на данном этапе), временами две совершенно разные фотографии оказываются похожими процентов на 60%, так же не учитываются жесткие модификации (повороты, инверсия, обрезка) – для этого нужно доводить и доводить. Лично для меня самым главным оказались два параметра: скорость, независимость от разрешения изображения и возможность сравнивать «изображения» прямо в базе данных.
Читать дальше →
Total votes 161: ↑153 and ↓8+145
Comments64

Избавляемся от дублирования сквозного кода в PHP: рефакторинг кода с АОП

Reading time12 min
Views44K
Думаю, каждому программисту знаком принцип единственной ответственности, ведь не зря он существует: соблюдая его, можно написать код лучше, он будет более понятным, его будет легче дорабатывать.

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

Эта статья о том, как можно избавиться от дублирования сквозного кода, и как сделать его чуточку лучше с помощью АОП.

Читать дальше
Total votes 93: ↑89 and ↓4+85
Comments48

ГИС: определение вложенности административных округов

Reading time4 min
Views6.2K
Встала задача организовать административные центры в чёткую иерархию по принципу матрёшки, например, Украина — Крым — ЮБК — Ялта, и исправить имеющиеся ошибки в текущей базе данных.

В этой статье я расскажу, как я решил эту проблему с помощью KML-файлов обрамляющих границ и Postgres+Postgis.

Дело в том, что база, которой мы пользуемся для нашего проекта, не коммерческая (user generated, open source) и в ней есть ошибки. Например, самый частый случай — множесто городов приписаны к стране, но не относятся ни к одному из её регионов и областей, мы называем их orphaned cities.

Плюс к этому, бизнес у нас туристический, так что административно-политическое дробление стран не всегда подходит, иногда нет-нет да и приходится добавлять туристические регионы вручную. Например, такого административного региона как «Южный берег Крыма» нет, но есть такой туристический район, по которому туристы выбирают, куда ехать — ищут «дома на ЮБК», а не «дома в ялте, гаспре, гурзуфе и вообще где-то там».
Читать дальше →
Total votes 13: ↑13 and ↓0+13
Comments4

Information

Rating
Does not participate
Location
Москва, Москва и Московская обл., Россия
Date of birth
Registered
Activity