Pull to refresh
38
0
Георгий Оганисян @Grox

Full Stack Web Developer

Send message

Численные характеристики онлайн-игр

Reading time12 min
Views64K
8 лет назад маленькая команда разработчиков, почти что бывшие студенты, решили сделать свою первую большую, как им тогда казалось, игру. Они выполняли все функции вперемешку. И гейм-дизайн, и программирование, и арт. Кто что умел. Получившаяся игра называлась «Возмездие». Это была браузерка. Она показала неплохие результаты: доходы с игры выросли от нескольких десятков до сотен тысяч рублей за первые месяцы. Для группы в несколько человек это уже какие-то деньги. В таком режиме игра просуществовала порядка года. А потом аудитория стала уменьшаться, доход начал падать. Разработчики подумали: «Наверное, мало контента». Игра была контентнозависимой, т.е. постоянно жила на обновлениях. Они поднажали, стали производить больше локаций, предметов, уровней, ремесленнических рецептов — всё, что делали раньше. Но пользователи все равно продолжали уходить. И было непонятно, почему это происходит. В итоге проект, просуществовав три года, закрылся — рано или поздно такой конец ждет все онлайн-игры.


Арт персонажа браузерной игры Возмездие

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

Такое не забывается — Oracle Database In-Memory

Reading time11 min
Views67K
Объемы баз данных и сложность запросов к ним всегда росли быстрее, чем скорость их обработки. Поэтому лучшие умы человечества много лет думали о том, что произойдет, когда оперативной памяти станет столько, что можно будет всю базу данных взять и поместить в кэш оперативной памяти.

В последние годы логический момент для этого, казалось бы, настал. Стоимость оперативной памяти падала, падала, и упала совсем. Еще в начале века казалось, что 256 МБ памяти для сервера — это нормально, и даже много. Сегодня нас не удивишь параметром 256 ГБ оперативной памяти на сервере начального уровня, а с промышленными серверами вообще настал полный коммунизм, любой благородный дон может набрать хоть терабайт оперативной памяти на сервере, если захочет.
Читать дальше →

Протокол WS2812B на STM32 без пустых циклов и прерываний. И как сделать правильную радугу

Reading time6 min
Views104K


На Хабре уже есть пара статей о работе с RGB светодиодами WS2112B, но почему-то они все используют довольно архаичный способ формирования битовой последовательности. Способ заключается в формировании точных интервалов времени с помощью пустых программных циклов. Возможно, это издержки использования Arduino, но мы, конечно, уже давно перешли на ARM Cortex-M4 в лице STM32 и можем себе позволить сделать красивее.
Читать дальше →

Яндекс выпустил антивирус для сайтов — Manul

Reading time4 min
Views117K
Поиск Яндекса ежесуточно показывает людям больше восьми миллионов предупреждений о том, что страница, на которую они хотят перейти, заражена. Часто владелец сайта вспоминает о том, что его сайт может быть взломан и на нём может быть размещен вредоносный код, только тогда, когда худшее уже случилось, трафик упал, и пользователи успели заразиться.

Чтобы вебмастера могли как можно быстрее реагировать на проблемы, мы уже несколько лет рассылаем предупреждения о заражении в Яндекс.Вебмастере. В них мы даём подробные инструкции, что нужно делать, а в самых сложных случаях вебмастерам помогает наша служба поддержки.



Однако всегда хочется лучшего. Одна из главных проблем, с которыми мы сталкиваемся при общении с владельцами зараженных сайтов, — это поиск источника заражения на стороне сервера. У Яндекса, который каждые сутки размечает тысячи сайтов как зараженные вирусом и опасные для устройств человека, есть регулярно обновляемая база вирусов. И у нашей команды появилась идея, выросшая в большой проект, – антивирус для сайтов. Так мы создали Manul, который решили выложить в open source. Это утилита, которая поможет вебмастеру понять, что произошло с сайтом и вылечить его. Под катом я расскажу подробнее о том, как он устроен и какие проблемы решает.
Читать дальше →

Мой опыт поиска работы программистом за границей: UPDATE 2

Reading time9 min
Views104K
UPDATE 1
UPDATE 2

Думаю, что многим будет полезен мой опыт поиска работы программистом за границей. Тем более что он совершенно отличается от описанного в публикации «Как айтишнику уехать в Германию. Часть 1».

Сразу скажу, что я женат и у меня двое детей 5 и 11 лет. Это я говорю к тому, что требования к условиям переезда для семейного человека выше, чем без детей или вообще без семьи. Например, необходимо учитывать увеличение расходов на минимум 3-к квартиру, коммунальные услуги из расчета на 4 чел, платное образование и его уровень. Также важен транспорт, так как каждый день детям нужно добираться в школу и из школы. Еще одним важным критерием выбора страны для переезда является уровень медицины и экология. И наконец, расходы на содержание семьи из 4 человек на порядок выше чем на двоих и тем более — для одного. Все это ставит довольно жесткую нижнюю планку по зарплате.

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

В общей сложности поиск работы мне занял 9 мес. Страной назначения я выбрал Германию, так как IT там на высоком уровне, огромное количество стартапов, особенно в Берлине, высокий уровень бесплатного образования и сильная медицина. К тому же я более менее знал немецкий.
Читать дальше →

Создаем динамические веб-сайты с помощью PHP, MySQL, JavaScript, CSS и HTML5. 3-е изд

Reading time2 min
Views41K
Читать дальше →

Иностранный язык: 15 препятствий

Reading time20 min
Views48K

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

Содержание
  • Препятствия
    1. Недооценка своего таланта
    2. Недостаточное внимание практике
    3. Злоупотребление волей
    4. Отсутствие удовольствия
    5. Неэффективное распределение времени между слушанием, чтением, письмом и речью
    6. Игнорирование практики на начальном уровне
    7. Неэффективная организация практики слушания
    8. Неэффективная организация практики речи
    9. Неэффективное повторение изученного
    10. Неблагоприятные условия для обучения
    11. Большая надежда на преподавателя
    12. Игнорирование главной меры прогресса
    13. Несвязывание знаний
    14. Надежда на быстрый результат
    15. Игнорирование теории на продвинутом уровне
  • Ваш личный метод
  • Что вы думаете?

Читать дальше →

Три способа не выполнить цели на 2015 год

Reading time7 min
Views93K
Лет пять назад в моей жизни наметилась неприятная закономерность: я стал замечать, что процент выполнения «целей на год» год от года уменьшался, и достиг в итоге катастрофической отметки в районе 12%. При этом у меня абсолютно не было ощущения провального года, поэтому я начал подозревать что что-то не так. В результате несколько лет экспериментировал с постановкой целей, попутно изучая теорию и дискутируя с GKh. В результате мне удалось сформулировать способы постановки целей, максимизирующие вероятность их невыполнения – и хочу поделиться этим знанием с вами.

Читать дальше →

Опыт coding for equity. Итоги за 8 лет

Reading time5 min
Views23K

Фото с wiki.apidesign.org/wiki/HtmlForFood

Здравствуйте. Мы подвели итоги проделанной за восемь лет работы, посчитали проекты, куда наша студия входила технологическим инвестором, проанализировали успехи и провалы. Несмотря на некоторый достигнутый прогресс, мы пришли к выводу, что coding for equity не работает.

Под катом – описание причин отказа от практики технологических инвестиций, причин провалов проектов, которые мы кодили for equity, и разных схем работы с основателями в зависимости от временного периода, размера студии, ситуации на рынке. А также – немного грусти, философии и лирики.
Читать дальше →

Практический пример переиспользования кода, как повысить качество и ускорить разработку

Reading time1 min
Views12K
Выкладываем доклад мобильного архитектора ТКС Банка Дмитрий Тарасова «Практический пример переиспользования кода. Как повысить качество и ускорить разработку» с конференции мобильных разработчиков #MBLTDev, которая прошла в конце октября.


Презентация

В разработке может сложиться ситуация, когда у вас есть несколько приложений с общей логикой и поведением интерфейса. Дмитрий Тарасов рассказывает о пути, по которому развивалась разработка мобильного банка и кошелька ТКС для Android. Откровенный рассказ о последствиях нетехнологичных решений в стиле copy-paste общего кода из приложения в приложение. Следующий шаг — общая библиотека. Как ее оформить? В виде jar? Оформив, как ее подтягивать в проекты? Grandle или subtree/submodule? Что делать с неравномерным развитием потребителей библиотеки? Решить этот вопрос выстраиванием правил ветвления? Как это вписать в стандартную связку bug tracker — code review — CI (в случае ТКС Jira + Stash + TeamCity)? Что будет, если к изначальным двум приложениям добавится еще два, причем у последнего будет другой backend? Смотрите видео выступления.
Читать дальше →

Официальный релиз JetBrains Upsource 1.0: просмотр и рецензирование кода

Reading time4 min
Views23K
Возможно, вы уже наслышаны, а если нет, то самое время узнать, что на днях мы выпустили первый официальный релиз Upsource.

Что такое Upsource?


Upsource — это инструмент для просмотра VCS-репозиториев, навигации по ним, а также для обсуждения и рецензирования кода (code review). Upsource предназначен для установки на собственном сервере компании и умеет работать с репозиториями Git, Mercurial, Subversion и Perforce.

В Java-проектах Upsource дополнительно осуществляет анализ кода аналогично тому, как это делает IntelliJ IDEA, а также предлагает знакомые по IDE функции Find Usages, Go to Declaration и Type Hierarchy.

Если помните, в августе мы анонсировали программу раннего доступа к Upsource, ну а сейчас дожили до релиза. Особо стоит отметить, что перед релизом мы обстоятельно подумали о лицензировании и ценах, и в итоге пришли к тому, что лицензия для небольших команд — до 10 пользователей (8 обычных пользователей, 1 гость и 1 администратор) — будет совершенно бесплатна. Для более крупных команд предлагается ряд коммерческих лицензий от 25 пользователей.

Upsource 1.0
Читать дальше →

Идеальный программист

Reading time2 min
Views41K
Доброго времени. В конце октября был хороший пост «Умей говорить «нет» и умей говорить «да»».
Мы оперативно запросили электронные права на книгу, из которой автор поста брал идеи.

image

Идеальный программист. Как стать профессионалом разработки ПО
Автор: Р. Мартин
Прототип: The Clean Coder: A Code of Conduct for Professional Programmers
Читать дальше →

14 действенных советов по контент-маркетингу для малого бизнеса (часть 2)

Reading time4 min
Views21K
image

В первой части материала о контент-маркетинге для малого бизнеса мы рассказали о многих «полезностях». Что ж, обещанное продолжение — следует ниже!
Читать дальше →

Карьера разработчика в Финляндии: большое интервью с Михаилом Самариным

Reading time30 min
Views27K
Я познакомился с Михаилом Самариным около месяца назад, когда он заинтересовался моей деятельностью по организации конференций. Михаил уже 15 лет живёт в Хельсинки и занимает должность одного из бизнес-директоров в компании Futurice, крупном финском аутсорсере. Среди прочего, Михаил — дважды спикер JavaOne (2011, 2012) и дважды Microsoft MVP (2013, 2014).



В связи с известными событиями, вокруг все чаще слышно одно и то же: «пора валить». Сам я нынче далёк от этой мысли как никогда (у меня сейчас много проектов, и все связаны с Россией, да и Европу с Штатами я не шибко люблю), не заметить эмигрантские настроения трудно. Особенно в среде программистов.

Ситуация такова, что Futurice (по-фински читается «ФутурИс», а по-английски «ФьючурАйc») с каждым днём всё сложнее искать хороших разработчиков в Финляндии, стране с населением в 5 миллионов человек. В связи с этим компания решила начать искать толковых инженеров в России и релоцировать их в Хельсинки. И в частности, делать это на российских программерских конференциях, например, на .NEXT.

Вещи, которые рассказал Михаил, показались мне безумно интересными, и поэтому я попросил его дать мне интервью, которое и предлагаю вашему вниманию.
Читать дальше →

Как я нашел работу в Сан Франциско

Reading time5 min
Views52K
Все, что я здесь пишу — это мой личный опыт и наблюдения. За то время, что я искал работу, столкнулся с тем, что в интернете очень много, мягко говоря, противоречивой информации по данной теме. Все люди очень разные, ситуации у всех очень разные — то, что сработало со мной, не сработает с вами, и наоборот. Поэтому мой текст нужно воспринимать не как инструкцию, а как просто одну из историй о том, как можно найти работу в Сан Франциско.

Кроме того, важно иметь в виду, что описаный в статье опыт актуален на момент написания (сентябрь 2014 года). Экономическая ситуация меняется, иммиграционное законодательство тоже (по крайней мере, в теории), это все тоже нужно учитывать.
Читать дальше →

Подготовка к тесту IELTS

Reading time6 min
Views14K
image

Мы продолжаем наш цикл публикаций о тесте IELTS — экзамене, который проверяет навыки владения английским языком.

Напомним, что в двух предыдущих статьях мы дали общую характеристику тесту IELTS, поговорили о его системе оценивания, а также подробно описали особенности четырех секций экзамена — Reading, Listening, Speaking и Writing. При желании вы можете ознакомиться с предыдущими статьями об IELTS тут и тут.

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

И как всегда, просим вас писать свои пожелания и замечания в комментариях. Спасибо!

Читать дальше →

PHPStamp — честная генерация DOCX документов из шаблона

Reading time2 min
Views27K
Это еще одна попытка реализовать стабильный, полноценный шаблонизатор офисных документов, основанных на XML, пользуясь стандартными для PHP средствами DOMDocument и XSL.

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

Изобретения — изобретателям. Или почему вам не нужен огромный принтер

Reading time8 min
Views31K
Введения не будет. Просто я считаю, что технологию развивают люди, а не компании. Точно не коммерческие компании. Самое интересное у энтузиастов и гиков.

Когда-то давно, когда вышла моя первая публикация «Что будет, если вы задумаете собрать 3D принтер своими руками», на меня сразу обрушился шквал писем с помощью в создании принтера и пр. С тех пор я не переставал собирать и разбирать принтеры, следить за новинками и пробовать себя во многом. На сегодняшний день на моем счету больше 12 проектов с нуля, но только один меня разочаровал и обрадовал одновременно.

В августе 2014 года в славном городе Санкт-Петербурге прошла небезызвестная выставка GeekPicnic, в которой я участвовал уже во второй раз. На ней скромно, на отшибе и стоял самый высокий российский 3D принтер PRISM PRO (мне до сих пор не импонирует это название, но что поделать):

image

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

Исследование, которое может показать, что Вселенная это компьютерная симуляция

Reading time3 min
Views167K
Ученые говорят, что если Вселенная продукт симуляции, то мы увидим подсказки в высокоэнергетических космических лучах.
Одна из самых взлелеянных идей в современной физике, квантовая хромодинамика, теория которая описывает сильное взаимодействие, как она связывает кварки и глюоны в протоны и нейтроны. Это основание вселенной.

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

Конечно, есть одна или две проблемы на этом пути. Квантовая хромодинамика мозгосносяще сложна и оперирует вычислениями на планковских масштабах. Поэтому даже используя самые мощные суперкомпьютеры мира, физики могут симулировать лишь маленькие кусочки космоса размером в несколько фемтометров (10^-15).

Звучит не впечатляюще, но важно, что такая симуляция практически неотличима от происходящего в реальности (по крайней мере насколько мы это понимаем).

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

И снова, работа симулируемой клетки будет неотличима от реальной.

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

Сегодня мы получили в некотором роде ответ от Силаса Бине из университета Бонна в Германии, и его коллег. Они говорят, что есть возможность найти проявления симуляции нашей вселенной, по крайней мере в некоторых сценариях.

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

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

Читать дальше →

Как справиться с джетлагом

Reading time4 min
Views12K


Джетлагом (jet lag) называется синдром смены часовых поясов. С ним сталкиваются в той или иной мере практически все путешественники. Когда мы путешествуем на самолёте, то, прибыв в страну, чей часовой пояс существенно отличается от нашего «родного», мы оказываемся в состоянии рассинхронизации. Например, нас одолевает сон и усталость, потому что дома сейчас глубокая ночь, а тут, в другой стране, ранее утро или конец дня. Когда же на чужбине мы ночью спускаемся по трапу, то бодры, полны сил и хочется чем-нибудь заняться. Вот только темно, всё закрыто и ничто не работает.

К счастью, нет нужды терять первые отпускные сутки на адаптацию и акклиматизацию. Достаточно правильно подготовиться к перелёту в «дальний» часовой пояс, и привыкание пройдёт гораздо быстрее и мягче. Нет, мы не будем вам советовать рабоче-крестьянский метод в виде скорейшего обильного возлияния, чтобы упасть и уснуть. Это как раз первейший способ напрочь потерять первый день, а то и два, совершенно неконструктивный подход. Нет, вместо этого мы хотим предложить вам другие меры по интенсивной адаптации, не вредящие организму и не крадущие драгоценное время отпуска.
Читать дальше →

Information

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