Pull to refresh
0
0
Александр Холодович @kholodovitch

Lead Java backend developer

Send message

Знакомство с UnrealEngine. Часть 1

Reading time6 min
Views48K

Хотелось ли вам когда нибудь сделать свою игру или 3D презентацию, или просто узнать как работают другие игры? Мне всегда хотелось сделать свою игру, и было интересно узнать как работают уже существующие. Не буду скрывать что одной из моих любимых игр является Unreal, работающая на движке UnrealEngine от Epic Games. Первая версия движка появилась 1998 году. На данный момент актуальная версия движка четвёртая. Кроме самой серии Unreal на движке было сделано очень много игр.
Выпустив первую версию движка Epic Games приложила к движку UnrealEditor — редактор позволяющий делать свои уровни и моды для игры. В 2009 году Epic Games выпустила UDK который позволил делать свои игры. На мой взгляд этот движок достоин того, чтобы разобраться как с ним работать и что он может.
Я попытаюсь описать основы работы с UnrealEngine, но в силу некоторых причин я буду описывать его в основном по второй его версии. Большинство из описанного будет работать и в UDK и в UnrealEngine4. Итак, если вас это заинтересовало, добро пожаловать под кат.
Читать дальше →
Total votes 80: ↑62 and ↓18+44
Comments16

Как вести много проектов сразу и не закопаться в них

Reading time6 min
Views133K
Успеваете ли вы делать всё, что планируете? Храните ли сотни невыполненных задачек пылящимися на полке, или решаете одну за одной? Чувствуете ли вы в целом удовлетворение в достижении своих желаний (и неважно каких, рабочих или личных)?

Если на какой-либо из вопросов вы ответили негативно — эта статья для вас. В ней я поделюсь опытом, как делать больше и лучше!
Читать дальше →
Total votes 99: ↑83 and ↓16+67
Comments71

Некоторые наблюдения и советы по использованию Bittorrent Sync для синхронизации резервных копий

Reading time4 min
Views41K
Как только выпустили Bittorrent Sync, я сразу его стал использовать для резервирования файлов на домашнем компьютере, настроив штатным образом через web-интерфейс. Программа показала себя с наилучшей стороны, и у меня появилось желание использовать её также для копирования резервных копий на серверах…

Я настроил и использую уже около месяца Bitorent Sync в продакшене и готов поделиться некоторыми наблюдениями.
Подробности
Total votes 36: ↑34 and ↓2+32
Comments31

Размышления основателя MySQL о развитии проекта под крылом Oracle и о экономике открытых продуктов

Reading time4 min
Views23K
Один из основателей проекта MySQL, на данный момент руководитель проекта MariaDB Ульф Майкл Видениус (известный также под ником Монти), в интервью ITwire говорит о том, что Oracle провалила попытку сделать MySQL успешным продуктом, потому что компания не понимает открытую модель разработки программ.

«Это не в их ДНК», — добавил Монти. — «Они пытаются вести открытый проект в той же самой манере, в которой они разрабатывают свои закрытые продукты, и это большая ошибка».

Недавно Red Hat — компания, стоящая за разработкой наиболее популярного дистрибутива Linux в бизнес-секторе — объявила о том, что в готовящейся к выпуску седьмой версии дистрибутива MySQL будет заменён его ответвлением — MariaDB. За разработкой MariaDB в свою очередь стоит Монти и основанная им компания Monty Program Ab. Ранее под крылышко компании Монти также перешла компания SkySQL, вместе с другим со-основателем MySQL Дэвидом Аксмарком, который работал там как технический директор. Третий со-основатель MySQL — Алан Лариссон — также работает с Монти, помогая ему по мере необходимости своим советом и делом.

Монти сказал, что главной причиной, по которой всё больше и больше людей и компаний стали искать альтернативу MySQL, послужил в большей степени тот факт, что Oracle ясно показала своё нежелание играть по принятым правилам с сообществом разработчиков. Объясняя своё мнение, он добавил, что «выделение открытого ядра MySQL, удаление тестов из исходных кодов (большей частью для того, чтобы усложнить жизнь проектам, основанным на его кодовой базе) и создание таких условий, при которых никто не может разрабатывать MySQL с теми же привилегиями, какие есть у Oracle», это всё послужило причиной сложившейся ситуации.
Читать дальше →
Total votes 41: ↑38 and ↓3+35
Comments39

Перенос толстого банк-клиента BSS в т.ч. на Windows 7 x64

Reading time2 min
Views15K
Добрый день, сегодня я потратил много времени на перенос банк-клиента одного из банков, «идущего на острие прогресса» — называть его не буду. Использует этот банк очень распостраненный «толстый» BSS банк-клиент., написанный на Delphi в незапамятные времена. Сотрудник техподдержки услышав от меня слова Windows 7 x64 сказал что перенос осуществить невозможно. Однако меня это получилось, и я готов поделиться краткой инструкцией по переносу. К сожалению без скриншотов.
Читать дальше →
Total votes 16: ↑8 and ↓80
Comments17

Я делаю свой квадрокоптер. Часть 1. Уравнения динамики

Reading time2 min
Views178K

Оглавление


1. Уравнения динамики

Введение




Давным-давно я написал следующий комментарий: Всё.
После такой новости сажусь делать свой квадрокоптер. А то вон все делают, а я нет.
Не, ну а что.
Всегда хотел, чтобы у меня была какая-нибудь летающая штука. Были 2 вертолета радиоуправляемых. Но кончилось это плохо.
Я решил делать свой квадрокоптер. Как это кончится — посмотрим. Я не буду использовать какие-либо готовые полетные контроллеры, все запрограммирую самостоятельно. И постараюсь этот процесс описать в цикле статей. Сейчас представляю вашему вниманию первую часть. В ней будет бегло показано то, какие уравнения динамики скрываются внутри квадрокоптера.
Итак, поехали.

Немного уравнений и еще меньше текста
Total votes 121: ↑110 and ↓11+99
Comments133

Совершенный код и реальные проекты

Reading time12 min
Views82K
У меня есть проблема — я перфекционист. Я люблю совершенный код. Ведь это не только правильный подход к написанию программ, но и настоящее искусство. От чтения хорошего листинга я получаю не меньше удовольствия, чем от чтения хорошей книги. Проектировать архитектуру большого проекта ничуть не легче, чем проектировать архитектуру большого здания, а в случае хорошей работы — результат не менее прекрасен. Порой меня завораживает то, как изящно переплелись паттерны проектирования в создании совершенной программной системы. Меня восхищает внимание к деталям, когда абсолютно каждый метод настолько прост и понятен, что претендует на место классического примера совершенного кода.

Но, увы, всё это великолепие разбивается о суровую действительность и реальные проекты. Если мы говорим о продакшн-проекте, то пользователей не волнует, насколько красив ваш код и насколько хороша архитектура, их волнует, чтобы проект хорошо работал. Но я всё равно считаю, что в любом случае нужно стремиться писать правильно, просто при этом фанатизма быть не должно. После чтения различных холиваров на тему правильных подходов к написанию кода мне в глаза бросилась одна тенденция: каждый пытается применить означенные подходы не в целом к программированию, а только к своему опыту разработки, к своим проектам. Многие не осознают, что хорошие практики — это не абсолютные правила, которые должны строго соблюдаться в 100% сценариев, это лишь советы о том, как следовало бы поступать в большинстве ситуаций. На каждую хорошую практику всегда можно придумать несколько дюжин примеров, в которых она работать не будет. Но это вовсе не означает, что хорошая практика не такая уж и хорошая, просто её применили не к месту.

Читать дальше →
Total votes 114: ↑101 and ↓13+88
Comments99

Облака — ещё дешевле

Reading time5 min
Views115K
Наверняка вы слышали о сервисах Amazon EC2, Rackspace и им подобным. Может быть даже пользовались. Лично мне бывает нужен иногда личный VPN-сервер. Для этих целей я уже давно держал микро-инстанс на Амазоне, предоставляемый им в течении первого года бесплатно. Плюс использовал для архивов Amazon Glacier, который с его ценой «1 цент за гигабайт в месяц» можно считать тоже почти бесплатным. Но вот год закончился и за EC2 стало нужно платить. Архивы мои тоже разрослись прилично и затраты на Glacier аналогично перестали радовать.

Случайно пробежавший мимо обзор сервиса DigitalOcean по-началу оставил меня равнодушным. Ну, облачный сервис, ну виртуалки. Ну да, чуть-чуть дешевле (но не так чтобы уж очень), чего-то аналогичного Glacier вроде бы нет да и вообще оно того не стоит.

Я сильно ошибался. Ниже будет рассказано как на базе DigitalOcean сделать себе VPN-сервер в пару десятков раз дешевле такого же на Амазоне и сервис хранения архивов, в бесконечность раз дешевле Glacier.
Читать дальше →
Total votes 120: ↑102 and ↓18+84
Comments87

Алгоритм seam carving для изменения размера изображения

Reading time7 min
Views30K
Seam carving это алгоритм для изменения размера картинки, сохраняющий важный контент и удаляющий менее значимый. Он был описан в статье S. Avidan & A. Shamir. Он дает лучший результат, чем обычное растягивание изображения ввиду того, что не меняет пропорций значимых элементов изображения. Две фотографии ниже демонстрируют работу алгоритма – исходное изображение имеет размер 332x480, в то время как модифицированное seam carving'ом 272x400.


В данной статье я опишу работу алгоритма используя псевдокод и код Matlab. Оригинал статьи, написанный мной на английском доступен тут, исходный код на гитхабе.
Читать дальше →
Total votes 84: ↑82 and ↓2+80
Comments29

Три задачи для программистов, которым не нужна математика

Reading time2 min
Views38K
Древний холивар о том, нужна ли программисту математика, получил неожиданное продолжение в спорах о ЕГЭ. Активно начала продвигаться идея о том, что вообще не надо проверять знания, а надо проверять умение быстро искать ответы. Ну и как вывод – замена ЕГЭ на чемпионат по поиску в Гугле/Яндексе. На мой взгляд, с тем же успехом можно проводить экзамен в виде поиска по школьной библиотеке. Почему-то никто не замечает такой очевидной истины, что быстро находит ответы те, кто знают, что искать, то есть как раз обладают знаниями. Для подтверждения этой идеи я составил 3 задачки для программистов, алгоритмы решения которых я нашел бы за пару минут.
Читать дальше →
Total votes 172: ↑114 and ↓58+56
Comments212

Стоит ли разрабатывать карточные игры?

Reading time2 min
Views3.6K
Разработка цифровых карточных игр год-два назад считалась в России бесперспективной. По крайней мере без серьезного бэкграунда или финансовой поддержки. Я попытался найти данные, оправдывающие разработку цифровых TCGs.
Читать дальше →
Total votes 9: ↑3 and ↓6-3
Comments1

Minnowboard – мини-компьютер на Intel Atom

Reading time2 min
Views31K

На прошедшей в конце мая конференции «Automotive Linux Summit» Intel представила роботизированную руку – «рыбака», определявшую похожие на рыбок предметы и помещавшую их в аквариум. Мозгом робота был мини компьютер Minnowboard, аналог Raspberry Pi на процессоре Intel Atom. Проект Minnowboard находится сейчас на стадии последних приготовлений к выходу на рынок, поэтому информация о нем, думаю, будет небезынтересна хабра сообществу, тем более, что эта тема поднимается здесь в первый раз.
Читать дальше →
Total votes 34: ↑31 and ↓3+28
Comments45

Десять возможностей C++11, которые должен использовать каждый C++ разработчик

Reading time12 min
Views535K
В данной статье рассматривается ряд возможностей С++11, которые все разработчики должны знать и использовать. Существует много новых дополнений к языку и стандартной библиотеке, эта статья лишь поверхностно охватывает часть из них. Однако, я полагаю, что некоторые из этих новых функций должны стать обыденными для всех разработчиков С++. Подобных статей наверное существует много, в этой я предприму попытку составить список возможностей, которые должны войти в повседневное использование.

Сегодня в программе:
  • auto
  • nullptr
  • range-based циклы
  • override и final
  • строго-типизированный enum
  • интеллектуальные указатели
  • лямбды
  • non-member begin() и end()
  • static_assert и классы свойств
  • семантика перемещения
Читать дальше →
Total votes 133: ↑125 and ↓8+117
Comments115

Bitcoin: теперь по 100$ штука (не 1-е апреля), и Avalon

Reading time1 min
Views95K
Помните старые, добрые времена, когда Bitcoin стоил 30$ штука (это было всего месяц назад)?
Все это в прошлом. Обменный курс стал трехзначным, т.е. превысил 100$ за 1 BTC.

Месячный объем торгов — превышает 150 млн$, а размер денежной массы — впервые превысил 1 млрд $.

Сложность майнинга (подбора хэшей SHA256, необходимых для проведения платежей в системе — за что полагается часть эмиссии биткоинов) за последний месяц резко возросла — т.к. заказчикам наконец стали приходить специализированные компьютеры производства Avalon с процессорами, заточенными именно под расчет SHA256. Butterfly Labs же пока создать такую систему не смогла, хотя обещала поставки 7 месяцев назад и до сих пор принимает предзаказы.

Под катом — несколько фотографий майнера от Avalon.
Читать дальше →
Total votes 101: ↑86 and ↓15+71
Comments468

Получены фотографии кристалла специализированного Bitcoin-процессора Avalon

Reading time2 min
Views66K
2 месяца назад я писал о том, что первые заказчики начали получать специализированные компьютеры для майнинга / поддержки сети Bitcoin — Avalon. Я сразу же написал разработчику Avalon'a — Yifu Guo, и он согласился выслать мне несколько микросхем для вскрытия. Однако, посылка погрязла в пучине слоупочты России.

К счастью, со мной связался needbmw — оказалось ему приехал Авалон с одним поврежденным чипом, его отпаяли и отдали мне минуя почту. Теперь мы наконец сможем одним глазком взглянуть на внутренности процессора. Особенно это будет интересно многочисленным желающим разработать свой Avalon с блекджэком и косить миллионы.
Читать дальше →
Total votes 98: ↑92 and ↓6+86
Comments91

Разработка контентного приложения для iOS, атакуем русский App Store

Reading time7 min
Views6.4K
Вступление

Разработчиком мобильных приложений под iOS я стал совсем недавно. Все началось с обычного увлечения, когда пришла мысль попробовать свои силы в новых технологиях. После нескольких успешных проектов на фрилансе я решился на разработку своего собственного приложения – визитки для фирмы, в которой на тот момент работал инженером-конструктором. К сожалению, после всех согласований и утверждений, когда проект уже был в рабочем состоянии на моем телефоне, я так и не смог получить добро на публикацию его в App Store. Бюрократическая машина в нашей стране работает исправно.



Читать дальше →
Total votes 13: ↑9 and ↓4+5
Comments9

Портирование кода на мобильные устройства iOS/Android

Reading time13 min
Views20K
Что вам кажется привлекательней: сталкиваться с новыми интересными задачами и разрабатывать нетривиальные алгоритмы или переписывать с одного языка на другой уже существующую логику и воевать со странными особенностями конкретных API? Я занимаюсь мобильной разработкой уже лет 8, и, не раздумывая, выбираю первый вариант, но и повоевать с API тоже люблю. Тем, кто со мной согласен, но еще не знает, как заниматься первым и сводить к минимуму второе, будет интересно заглянуть под кат.

Читать дальше →
Total votes 48: ↑43 and ↓5+38
Comments16

Одно предложение, которое делает нас сильнее

Reading time2 min
Views93K
Это мой самый короткий топик, суть которого в одном предложении. Часто именно с этого предложения начинается успешный стартап, бизнес и любое другое начинание.

Это шаблон описания сути вашей компании или проекта в одном предложении. Я открыл его для себя во время стажировки в США. Составив его, мы реально становимся сильнее. В последствии мне это помогло выбрать правильный курс, сфокусироваться и расставить приоритеты.
Читать дальше →
Total votes 198: ↑168 and ↓30+138
Comments51

Как я не спал год или создание социального Android приложения

Reading time8 min
Views35K
Доброго времени суток, уважаемые хабражители. Я работаю в большой IT компании Android-разработчиком.

Все началось примерно год назад. Тогда, я решил начать свой первый проект. Идея приложения пришла мне практически сразу. Ее первоначальная версия звучала примерно так — «Я хочу, чтобы каждый мог узнать независимое мнение людей всего мира, по интересующему вопросу».

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

В статье присутствуют цены на те или иные услуги сайтов с которыми мне удалось связаться.
Читать дальше →
Total votes 119: ↑114 and ↓5+109
Comments30

Анонс Visual Studio 2013

Reading time6 min
Views50K
Вчера на конференции TechEd Брайан Харри сделал анонс выпуска Visual Studio 2013 и Team Foundation Server 2013 а также множества новых возможностей этих продуктов связанных с управлением жизненным циклом приложений. Некоторые из этих новых возможностей уже доступны прямо сейчас в Team Foundation Services и позднее в этом месяце (а точнее во время конференции Build) будут опубликованы предварительные версии VS 2013 и TFS 2013. Релиз этих продуктов состоится в конце этого года.
Наконец то (и с большой радостью) мы можем рассказать вам о том, что ожидается от нашего продукта в новой версии. К сожалению, рамки этой статьи не позволят вместить описание всех новинок которые мы подготовили в VS 2013, основной акцент будет сделан на возможности связанные с управлением жизненным циклом приложений и совместной работой.
Читать дальше →
Total votes 71: ↑55 and ↓16+39
Comments72

Information

Rating
Does not participate
Location
Санкт-Петербург, Санкт-Петербург и область, Россия
Date of birth
Registered
Activity

Specialization

Backend Developer, Chief Technology Officer (CTO)
Lead
From 300,000 ₽
Java
Spring Boot
Hibernate
Apache Kafka
RabbitMQ
C#
MySQL
Redis