Search
Write a publication
Pull to refresh
14
0

Java Developer

Send message

Путь к победе на Russian AI Cup 2012

Reading time11 min
Views28K
Здравствуйте, Хабравчане!
Предлагаю вашему вниманию историю своего участия и победы в финале конкурса по программированию CodeTanks 2012.



Про соревнование я узнал на Хабре, решил выяснить подробнее, пошел на сайт проекта. Обрадовала возможность писать на С++ под Linux без танцев с бубном. Сразу подумалось, что будет выигрыш в производительности по сравнению с участниками, пишущими на языках типа Java/Python. Ну и сам формат соревнования мне понравился: до первого раунда две недели, дальше по неделе перерыва между раундами. Не нужно в жутком цейноте рожать правильно работающий код, а можно относительно спокойно все продумать и запрограммировать. Дальнейшее изучение правил и просмотр боев на сайте только укрепили решение участвовать: мне гораздо более интересно программировать AI в сложном и плохо определенном окружении, чем в полностью формализованном, типа настольных игр.

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

Книги, которые должен прочитать Java программист: от новичка до профессионала

Reading time4 min
Views650K

Книги, которые должен прочитать Java программист: от новичка до профессионала


[Примечание переводчика: термины градации «профессионализма» оставлены англоязычные в связи с трудностью их адекватного перевода на русский и несовпадением с привычными Junior-Middle-Senior-Lead. Перевод достаточно вольный — если знаний языка хватает, то лучше читать оригинал, как и советует автор. Оба языка для меня не родные, так что про ошибки сообщайте в личку — исправим. Здесь и далее в квадратных скобках примечания переводчика]

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

Игру для Kinect, от нечего делать

Reading time3 min
Views25K


В далёком уже 2010 году, появился на свет Kinect от Microsoft. Но, к счастью или нет, новость о чудо-сенсоре меня не «зацепила». Вспомнил, а точнее напомнили мне о нём спустя год, когда появилась мысль о приобретении, как оказалось, стильного пыле сборника – Xbox 360 Slim. Хоть и включается консоль только во время пьяных вечеринок, положительных эмоций и весёлых видео оставляет после себя не мало. Но наигравшись в стандартные Adventures и Joy Ride, в голову взбрела идея о создании собственной игры для Kinect-а, как оказалось, всё довольно просто…
Читать дальше →

Мониторинг активности групп VK. Обрабатываем данные на VKScript

Reading time7 min
Views10K
Столкнулся с задачей мониторинга активности пользователей всем известной социальной сети. Передо мной стояла задача собирать данные о количестве пользователей, находящихся онлайн в определенной группе или сообществе.
Читать дальше →

Ключевые люди по тегу #AndroidDev

Reading time3 min
Views16K
image
Часто замечаю, что большинство программистов, разрабатывающих приложения для Android, не в курсе последних новостей Android Community. Если о появлении новой версии ОС знают практически все, то выход различных полезных библиотек или интересных для разработчиков статей часто остается незамеченным.

За последний год у меня сформировался список контактов в соц. сетях наиболее известных личностей из Android Community. Эти люди регулярно пишут статьи, публикуют библиотеки, отвечают на StackOverflow и т.д. Подобный список помогает одному из первых узнавать новости сообщества Android Developers, поэтому решил поделиться им здесь.
Читать дальше →

Знакомьтесь, filestream.me

Reading time3 min
Views35K
image

Смотрите какой хабар


Хочу поделиться с хабра-сообществом невероятно полезным сервисом, случайно найденном мною на просторах интернета.

Просто удивительно, что одно из самых прогрессивных облачных файлохранилищ не только не попало в обзор "Файлы уходят в облака. Выбираем облако", но и вообще никак не упомянут на Хабре. Итак filestream.me — это то, что получиться, если скрестить все сервисы из вышеупомянутого обзора и добавить им часть функционала из файлов-почтой, а именно:

UPD, мне передали следующую копипасту от разработчиков сервиса.

в чем профит?

Айти-Событие.рф – все IT-события Рунета!

Reading time3 min
Views13K
Сегодня мы запускаем наш новый проект «Айти-Событие.рф» — это портал освещающий мероприятия в сфере информационных технологий, робототехники и телекома на территории России, Украины и Белоруссии.


Сейчас на сайте уже добавлено порядка 140 событий и каждый день мы публикуем ~5-10 новых.
К настоящему моменту мы реализовали практически весь задуманный базовый функционал сайта. Текущее состояние портала — бета-версия.
Читать дальше →

Обновленные карты Марса от Google

Reading time1 min
Views37K
Компания Google серьёзно обновила спутниковые фотоснимки Марса в проекте Google Mars. Значительная часть территории Марса теперь представлена снимками, сделанными камерой Context Camera (CTX) на спутнике разведки Марса (Mars Reconnaissance Orbiter). Фотографии имеют великолепное разрешение 6 метров на пиксел — это лучше, чем большая часть покрытия Земли в Google Maps (15 метров на пиксел) и гораздо лучше, чем прежние фотоснимки Марса. Чтобы оценить разницу в качестве, можно сравнить один и тот же участок со старых карт и обновленных карт.



Отдельные участки поверхности Марса отсняты даже с разрешением
30 см на пиксел! Это поработала камера HIRISE на том же спутнике разведки Марса.
Читать дальше →

Как стать миллионером в AppStore или немного формул про продвижение и продажи. Часть 1

Reading time5 min
Views106K

Схема успеха



Джон, мы потеряли два листа математических выкладок! Что делать?
Как обычно, Билл… напиши: «отсюда с очевидностью следует…»


image

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

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

Как сделать рабочий стол, или аутсорсинг решает

Reading time3 min
Views275K
Хабраюзер любит темы про домашние рабочие места, поэтому покажу и я свое, свежеиспеченное.



Топик отношу к DIY – потому как все здесь сделано для меня, благодаря мне и для меня. БОльшая часть «работ» была отдана профессионалам, и это не потому что я «такой уж рукожопый» (хотя и это присутствует), а потому что я хочу пользоваться вещами, удовлетворяющими моим требованиям. А сделать такие самостоятельно – будет очень долго, нервно, муторно => дорого (да и не факт, что получится).

Собственно говоря, руководствуясь этим правилом в последнем ремонте ничего мною лично и не делалось.☺
Читать дальше →

Рендер Diablo3. Как это работает

Reading time7 min
Views117K
Как устроены графические движки популярных игр с мировым именем? Какие технологии применяют разработчики в самых крупных игровых компаниях? Действительно ли, чтобы сделать красивую игровую графику необходимо применять самые передовые технологии современной 3D графики? На эти вопросы мы попробуем ответить на примере рендер части игры Diablo3, от компании Blizzard Entertainment.
Читать дальше →

Малоизвестные особенности Java

Reading time4 min
Views142K
Готовясь к собеседованию, я решил освежить память да и вообще поискать каверзные и малоизвестные нюансы языка Java. Выборку пяти наиболее интересных на мой взгляд моментов я вам и предлагаю.

Вот уже подоспела и вторая часть статьи.


1. Нестатические блоки инициализации.

Всем, я думаю, известно, что в Java существуют статические блоки инициализации (class initializers), код которых выполняется при первой загрузке класса.

class Foo {
	static List<Character> abc;
	static {
		abc = new LinkedList<Character>();
		for (char c = 'A'; c <= 'Z'; ++c) {
			abc.add( c );
		}
	}
}


Но существуют также и нестатические блоки инициализации (instance initializers). Они позволяют проводить инициализацию объектов вне зависимости от того, какой конструктор был вызван или, например, вести журналирование:

class Bar {
	{
		System.out.println("Bar: новый экземпляр");
	}
}


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

Map<String, String> map = new HashMap<String, String>() {{
	put("паук",  "арахнид");
	put("птица", "архозавр");
	put("кит",   "зверь");
}};


Очень даже мощное средство, не находите?

JFrame frame = new JFrame() {{
	add(new JPanel() {{
		add(new JLabel("Хабрахабр?") {{
			setBackground(Color.BLACK);
			setForeground(Color.WHITE);
		}});

		add(new JButton("Торт!") {{
			addActionListener(new ActionListener() {
				public void actionPerformed(ActionEvent event) {
					System.out.println("Хабрахабр - торт!");
				}
			});
		}});
	}});
}};


Остальные четыре пункта под катом.
Читать дальше →

Новое для веб-дизайнера за октябрь 2012

Reading time2 min
Views71K
Продолжаю сентябрьскую подборку новых полезных штук для веб-дизайнеров.

Сервисы и инструменты


Cut&Slice me — бесплатный плагин для фотошопа, который помогает быстро готовить элементы дизайна для различных типов устройств.

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

«Мнемотехника» и «изучение иностранного языка» несовместимые понятия?! Давайте разберемся

Reading time13 min
Views284K
Здравствуйте, Уважаемые Хабрапользователи!



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

Курс лекций «Стартап». Питер Тиль. Стенфорд 2012. Занятие 4

Reading time23 min
Views150K

Этой весной, Питер Тиль (Peter Thiel), один из основателей PayPal и первый инвестор FaceBook, провел курс в Стенфорде — «Стартап». Перед началом Тиль заявил: «Если я сделаю свою работу правильно, это будет последний предмет, который вам придется изучать».

Один из студентов лекции записывал и выложил транскипт. В данном хабратопике я перевожу четвертое занятие. Редактор Astropilot.

Занятие 1: Вызов будущего
Занятие 2: Снова как в 1999?
Занятие 3: Системы ценностей
Занятие 4: Преимущество последнего хода
Занятие 5: Механика мафии
Занятие 6: Закон Тиля
Занятие 7: Следуйте за деньгами
Занятие 8: Презентация идеи (питч)
Занятие 9: Все готово, а придут ли они?
Занятие 10: После Web 2.0
Занятие 11: Секреты
Занятие 12: Война и мир
Занятие 13: Вы — не лотерейный билет
Занятие 14: Экология как мировоззрение
Занятие 15: Назад в будущее
Занятие 16: Разбираясь в себе
Занятие 17: Глубокие мысли
Занятие 18: Основатель — жертва или бог
Занятие 19: Стагнация или сингулярность?
Читать дальше →

Базовые темы популярных CMS на Twitter Bootstrap

Reading time1 min
Views47K
Все мы любим популярный CSS-фреймворк Twitter Bootstrap, облегчающий разработку. За год существования многие CMS обзавелись базовыми темами на основе Bootstrap. Представляю вашему вниманию подборку таких шаблонов.

Wordpress


BootstrapWP


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

Асинхронная загрузка рисунков в TextView

Reading time3 min
Views11K
Ни для кого не секрет, что TextView в Android поддерживает HTML-теги. Среди них поддерживается и тег , а для его обработки используется класс ImageGetter. И если с отображением локальных графических файлов никаких проблем не возникает, то при попытке программно подгрузить удаленный рисунок в TextView мы получаем NetworkOnMainThreadException на Android версии 3.0 и выше. Как выяснилось, в поисковиках информации для решения этой проблемы находится мало, да и далеко не все из предлагаемых решений работоспособны. Тем не менее, рабочее решение существует.
Читать дальше →

HighLoad 2012

Reading time14 min
Views37K
На днях в Москве прошла «конференция разработчиков высоконагруженных систем» HighLoad++, участником которой мне посчастливилось стать. Ниже я хочу кратко пройтись по докладам, которые посетил в рамках конференции, выделив в них интересные на мой взгляд моменты.

Сразу предупрежу, что какие-то вещи я мог понять неправильно, какие-то переврать. Если для вас это важно — не читайте этот пост, а приходите на следующую конференцию лично!
Читать дальше →

Часы из винчестера за пару часов

Reading time4 min
Views127K
В 2009 году на Хабре я увидел фото с часами из винчестера за 60 долларов. Так как я просто торчу от железок, люблю их тискать и разглядывать, а блеск блинов из HDD меня просто завораживает, то штуковина понравилась и через какое-то время я по мере умений повторил чужой опыт. Впереди время праздников, выходных и, возможно, кто-то захочет заняться таким же рукоделием. Тем более, что все это очень просто. Дальше трафик и картинки.
image
Читать дальше →

Information

Rating
Does not participate
Location
Белгород, Белгородская обл., Россия
Date of birth
Registered
Activity