Pull to refresh
30
0

Web-разработчик, Android-разработчик

Send message

Незаконченная история перехода с Delphi на C#

Reading time10 min
Views39K

Предисловие


Всем доброго времени суток. Начиная с 2003 года, и по сегодняшний день, я профессионально занимаюсь разработкой прикладного программного обеспечения в среде Delphi 7 — Delphi 2010. И надо сказать, что эта работа позволяет мне достаточно неплохо зарабатывать на хлеб и пользоваться уважением своих коллег в нескольких организациях, с которыми я работаю.
Но многие наверняка знают о трудностях компании Borland, и как следствие провальной судьбе нескольких, вышедших подряд, версиях Delphi. Все Delphi, начиная с версии 8 (~2003 год) по 2007-ю, были не просто непопулярны. Их IDE были крайне нестабильны. Фатальные сбои среды разработки, требующие перезапуска, становились неотъемлемой частью процесса программирования. Сам язык менялся настолько незначительно, что большинство разработчиков на вопрос: “Что изменилось в новой версии?” могли только невнятно пробубнить: “Ну,… кажется, были добавлены новые компоненты…”. И только в 2009 году отделившаяся от Borland компания CodeGear смогла вывести на рынок относительно стабильную RAD Studio 2009, включающую новую версию Delphi. Подведя итоги, получаем 6 с лишним лет застоя, на фоне бурно развивающихся информационных технологий.
Поэтому и по сей день, значительный процент профессиональных разработчиков Delphi работает в 7-й версии. Могу только посочувствовать их упорству и посоветовать (если они и далее желают работать с Delphi) как можно скорее осваивать Delphi 2010. В сравнении с Delphi 7, 2010-я версия — это качественный скачек вперед. Я не стану подробно останавливаться на сравнении, поскольку это расходиться с темой статьи, но совсем промолчать не могу. Таких людей нужно чаще мотивировать, поскольку привыкание может быть существенной помехой на пути профессионального развития. Перейдя на версию 2010, вы получите стабильно работающую IDE, значительно превосходящую по комфорту работы среду Delphi 7. Из языковых возможностей вы приобретете поддержку юникода, возможность работы с обобщенными типами и анонимные методы, которые также могут плодотворно сказаться на качестве кода и скорости работы.
Читать дальше →
Total votes 118: ↑82 and ↓36+46
Comments226

Начались продажи Highscreen Boost 2: 6 000 мАч и Книга рекордов Гиннеса

Reading time2 min
Views87K
Можно как угодно относиться к Highscreen, но одного у бренда не отнять – хитовой модели Highscreen Boost, самого «долгоиграющего» смартфона на просторах России. Примерно в начале сентября на разных сайтах я заметил первые проскакивающие сведения о том, что Highscreen готовит к выпуску Boost 2. Несколько дней назад на Hi-Tech.Mail.Ru «засветилась» пара «продуктовых» фото смартфона, а сегодня утром в спаме я заметил рассылку, которая возвестила о старте продаж новинки.

Читать дальше →
Total votes 62: ↑53 and ↓9+44
Comments100

Теперь можно привязать Google Play Developer Console к аккаунту Google Analytics

Reading time1 min
Views12K
Здравствуйте,

Сегодня увидел в Google Analytics возможность привязки аккаунта Google Play Developer Console
(смотрел Конверсии — Google Play — Карта переходов — вроде бы раньше такой вкладки я не видел).
Что нам это даёт — теперь можно будет посмотреть не только сколько новых пользователей скачало приложение,
но и количество просмотров страницы приложения на Google Play, что было обещано ещё на Google IO.

Читать дальше →
Total votes 27: ↑25 and ↓2+23
Comments2

Romo: домашний питомец

Reading time5 min
Views58K
Конструкторы, Lego, радиоуправляемые машинки и вертолёты, компьютерные игры… Индустрия производит массу товаров для детей любых возрастов, но давайте будем честными: покупка и последующие игры для пап увлекательны не меньше (а порой гораздо больше), чем для их любимых чад.

Недавно ко мне приехала посылка с очередной игрушкой для сына (ага, я тут ни при чём!) — робот Romo:

(iPhone в комплект поставки не входит)

Хочу познакомить всех читателей с этим замечательным, не побоюсь этого слова, домашним питомцем. Мы в офисе уже успели наиграться в него.
Читать дальше →
Total votes 105: ↑90 and ↓15+75
Comments16

WiFi Kettle, или как идея превращается в серийное устройство

Reading time4 min
Views97K
Думаю, представляться смысла не имеет, так как меня тут многие знают, и как автора разных статей, так и как создателя Box Overview. Я долго не писал, потому что был занят одним интересным проектом.



Да, та самая статья (Умный чайник для умного дома) — это про нас. Я не планировал что о нашем проекте напишут так быстро, но зато стало понятно, что интерес к нему есть, и стоит уже написать о нем подробнее.

Все началось вот с этой моей статьи, написанной буквально за пару часов, в которой я показал, как с помощью платы на MSP430 и китайской коробочки с андроидом можно удаленно через браузер включать и выключать нагрузку. Еще предположил, что так можно включать чайник, когда лень за ним идти в другую комнату.
Читать дальше →
Total votes 144: ↑134 and ↓10+124
Comments280

Сериализация в Java: как заглянуть внутрь черного ящика

Reading time9 min
Views16K
Испокон веку в Java есть чудесный механизм сериализации, который позволяет, не прилагая особых умственных усилий, сохранять в виде последовательности байт сколь угодно сложные графы объектов. Формат хранения хорошо документирован, есть куча примеров, сериализованные объекты «весят» вполне себе немного, пересылаются по сети на раз, есть куча возможностей для кастомизации… Все это звучит прекрасно, но только до тех пор, пока вы не останетесь один на один каким-нибудь многомегабайтным бинарным файлом, содержащим очень-очень ценные и нужные именно сейчас данные.

Как голыми руками залезть в этот файл, и понять, что же хранится внутри этого огромного сериализованного графа объектов, не имея исходного кода? На эти и многие другие вопросы может ответить Serialysis – библиотека, которая позволит вам детально проанализировать сериализованные java-объекты (сериализованная форма — это мой вариант перевода выражения serial forms, решил не уходить далеко от оригинала). Таким образом можно получить информацию об объекте, которая не доступна через его публичный API. Библиотека также является полезным инструментом при тестировании сериализации ваших собственных классов.
Читать дальше →
Total votes 24: ↑22 and ↓2+20
Comments1

Пишем фреймворк для разработки игр — Mechanic Framework

Reading time26 min
Views25K
Добрый день, жители Хабра!
Сегодня мы будем писать фреймворк с названием Mechanic Framework для удобной разработки игр под андроид.

image

Что нам потребуется:


  • Установленные Eclipse и Android SDK
  • Приличное знание Java либо другого С-подобного языка. Лучший пример – C#
  • Терпение


Читать дальше →
Total votes 60: ↑48 and ↓12+36
Comments20

Google Constitute — сравнение 160 мировых конституций

Reading time1 min
Views25K


Компания Google запустила уникальный научный проект Constitute — справочник по всем мировым конституциям.

«Конституции уникальны настолько же, насколько и народы под их управлением, — пишет компания в официальном блоге, — они существуют в той или иной форме уже тысячу лет. Каждый год появляется примерно пять новых конституций, а 20-30 пересматриваются»
Читать дальше →
Total votes 43: ↑39 and ↓4+35
Comments36

Спасем крупнейшую медиатеку в рунете. Вся база rutracker у Вас на компьютере

Reading time10 min
Views195K
image

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

К сожалению, решить проблему своими силами у меня не хватило ни времени, ни, будем откровенны, знаний. Но, к счастью, мои слова возымели действие на людей, которые и тем и другим обладают. В итоге эти люди организовались и сообща сделали то, о чём так долго говорили большевики о чем я писал, а именно с помощью скриптов обошли рутрекер, сдампили все описания раздач с хешами, распарсили их и скомпоновали в удобную для употребления базу. В дополнение к этому так же была написана «морда»: программа для удобной работы с базой конечных пользователей, не знающих с какого конца держат grep. К сожалению, аккаунта на хабре никто из этой команды не имеет (если не считать read-only), в песочнице статья могла бы потеряться, поэтому меня выбрали как рупор для данной площадки. Я, честно говоря, раздумывал совсем недолго и только над тем, как правильнее все сделать. Если будут какие-то вопросы — задавайте мне в комментах, я либо отвечу сам, либо переадресую разработчикам. Технические тексты от первого лица, но я имею к ним косвенное отношение, они оставлены в таком виде для простоты восприятия.

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

Техническая часть, ссылки и немного лирики
Total votes 290: ↑274 and ↓16+258
Comments257

Изменить мир! С помощью смартфона на базе Android

Reading time1 min
Views18K
В прошлом году мы писали о том, как распределенные вычисления, проводимые на компьютерах 600 тыс. пользователей, способны сотворить чудо и в обозримом будущем найти решение многих глобальных проблем всего человечества.

Спустя год возможности платформы расширились, и теперь каждый обладатель смартфона на базе Android может присоединиться к этой уникальной инициативе!
Читать дальше →
Total votes 30: ↑25 and ↓5+20
Comments19

Чтение конфигурационных файлов в Java: nProperty

Reading time10 min
Views87K
image
Многие разработчики сталкиваются с необходимостью чтения конфигурационных (*.ini, *.prop, *.conf, etc.) файлов в разрабатываемых приложениях. В Java есть стандартный класс Properties, с помощью которого можно очень легко загрузить ini-файл и прочитать его свойства. При большом объеме конфигурационных файлов чтение и запись настроек в объекты превращается в очень нудную и рутинную работу: создать объект Properties, конвертировать каждую настройку в нужный формат и записать его в поле.

Библиотека nProperty (Annotated Property) призвана упростить этот процесс, сократив примерно в два раза требуемый код для написания загрузчиков настроек.

Чтобы показать, каким образом возможно обещанное сокращение кода в два раза, ниже приведены два примера: в первом примере используется стандартный класс Properties, во-втором — nProperty.

Прошу под кат за подробностями
Total votes 28: ↑24 and ↓4+20
Comments53

Почему карточки это будущее веба?

Reading time4 min
Views18K
image

Kарточки — будущее веба. Они становятся лучшим дизайн-паттерном для мобильных устройств.

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

Все это меняет архитектуру веба — от связанных между собой страниц к связанным в единый интерфейс элементарных частей информации.

image

Агрегация зависит от:
  • Человека, потребляющего контент, его интересов, предпочтений и поведения.
  • Интересов его друзей, их предпочтений и поведения.
  • Местонахождения и контекста.
  • Рекламного таргетинга.


И если главным посредником между человеком и вебом стал экран телефона или планшета, то главным дизайн-паттерном становятся карточки. И вот почему.
Читать дальше →
Total votes 65: ↑31 and ↓34-3
Comments36

Java-конференция Joker: предварительная программа, Unconference и другие подробности

Reading time6 min
Views6.8K
Привет, хабр!

Как многие из вас уже знают, 15 октября в Питере пройдёт Joker 2013, конференция по Java-технологиям, организатором которой выступает сообщество JUG.ru, а генеральным спонсором — компания «Одноклассники». Конференция ориентирована на профессионалов в области разработки ПО на Java. Участников ожидает более 30 докладов от гуру Java-разработки на русском и английском языках, стенды компаний-лидеров в области Java-разработки и зона свободного общения, где можно будет пообщаться с друзьями и коллегами или просто отдохнуть.

Что ожидает участников:
  • 14 октября: мастер-классы
  • 15 октября: 4 трека, 30 докладов
  • 16 октября: закрытый Unconference!

Подробно о конференции Joker 2013
Total votes 16: ↑16 and ↓0+16
Comments65

Накорми кролика и работа с Admob Mediation

Reading time2 min
Views14K
image

Я пишу маленькие игры под свой iPhone. Игры выкладываю в магазин Apple Appstore — и получаю удовольствие от этого процесса.
Иногда удается получать не только удовольствие, но и небольшие деньги. Каким образом?
Я размещаю рекламу других игр (прости меня, Господи) в своем приложении и мне ежедневно падают центы. Центы падают с двух рекламных площадок — площадки Apple, называемой iAd и площадки Google, называемой Admob. Запомнить несложно.

Зачем две площадки? Потому что iAd крутится на iPhone-нах только в цивилизованных странах. Россия (Онищенко, ау!) не входит в список цивилизованных, чистоплотных стран по мнению Apple. Я вынужден с Apple согласиться. Однако не стоит унывать — на наших территориях нас спасает Google.

Как же сочетать двух монстров в одном маленьком приложении? Для этого есть компании, которые получили сленговое название медиаторы.
Ранее я пользовался медиатором по имени adwhirl.com, но в сентябре 2013 года эта компания умрет. Я перешел к новому медиатору Admob Mediation и хочу поделиться опытом работы с ним.

Читать дальше →
Total votes 36: ↑26 and ↓10+16
Comments19

Отзывчивое Android-приложение или 1001 способ загрузить картинку

Reading time16 min
Views55K
О реализации многопоточности при разработки Android-приложений уже написано немало. В этой же статье хочется провести сравнение нескольких распространенных на сегодня способов скачать/прочитать/сохранить/посчитать, при этом не дав пользователю повода для раздражения. Постараться понять, когда то или иное решение будет уместным, а чего лучше не делать вовсе. Попытаемся показать, почему привычных вещей, таких как класс Thread и пакет java.util.concurrent оказывается недостаточно, когда речь заходит об Android-приложении.

Читать дальше →
Total votes 38: ↑36 and ↓2+34
Comments17

Анимация фрагментов в Android

Reading time8 min
Views62K
Всем доброго времени суток. Этот пост хочу посвятить теме фрагментов для Android. На Хабре есть уже переводы и некоторые статьи, которые упоминают о том, как начать работать с фрагментами под Android. Например, статья Fragments API в Android 3.0. В ней находится описание того, что такое фрагменты и в какой версии Android они доступны, поэтому те, кто ещё не добрался до неё могут при желании ознакомиться, я же не буду пересказывать этого в своём посте. Поэтому сразу перейду к делу.
Читать дальше →
Total votes 27: ↑25 and ↓2+23
Comments11

Несколько интересностей и полезностей для веб-разработчика (выпуск 3)

Reading time3 min
Views60K
Доброго времени суток, уважаемые хабравчане. С прошедшим вас днем программиста. За последнее время я увидел несколько интересных и полезных инструментов/библиотек/событий, которыми хочу поделиться с Хабром.

Cloudconvert




Великолепный онлайн конвертер файлов, который поддерживает в общей сложности 140 форматов следующих типов: archive, audio, cad, document, ebook, image, presentation, spreadsheet, video. Синхронизируется с Dropbox и Google Drive, благодаря чему возможно использование на всех смартфонах. А самое приятное это то, что для данного сервиса существует функциональное и простое API.

Читать дальше →
Total votes 145: ↑134 and ↓11+123
Comments29

Поздравляем с Днём программиста!

Reading time3 min
Views24K

src

Не знаю, как для вас, а для меня этот праздник был всегда каким-то несерьёзным. Возможно, это потому, что уважения к календарным праздникам у меня всю жизнь было мало. Они обезличивают событие, делают его каким-то общим (т.е. ничьим), и в остатке получаются лишь формальные поздравления (штампованные и приевшиеся) и выходной день (если, к примеру, это 23 февраля или подобные праздники).

Мы, программисты, чаще всего интроверты, потому что такой склад характера позволяет сконцентрироваться на интересной задаче, укрывшись в своём «пузыре» от внешних раздражителей.
Читать дальше →
Total votes 142: ↑110 and ↓32+78
Comments51

Работа над авторским озвучанием World of Tanks

Reading time4 min
Views64K
Доброго дня.

Я работаю в студии, которая занимается озвучанием компьютерных игр. Хочу рассказать о том, как мы работали над озвучанием World of Tanks.

World-of-Tanks

Конечно, многие любят рубать в WoT, я и сам потратил там немало времени и денег покупая новые танки и премиум снаряды. Игра классная, спору нет.

Но гоняя на своих танках, самоходках и САУ я всегда задавался одним вопросом.

И наверняка многие из вас задавали себе такой же вопрос:  "Неужели правда озвучку в World of Tanks записывали вот так?"


Читать дальше →
Total votes 129: ↑116 and ↓13+103
Comments86

Новый игровой ПК от Gigabyte помещается на ладони

Reading time2 min
Views46K


Я нечасто играю в игры, а если и играю, то на PS Vita, которая не требует особых телодвижений для начала игры. Но периодически встречаю информацию об игровых устройствах, которые хотелось бы иметь в качестве дополнения в своем игровом «хозяйстве». Так вот, на днях встретилась новость о крохотном, если так можно выразиться, игровом ПК от Gigabyte, являющимся частью линейки Brix II. Этот компьютер по размеру очень невелик, и помещается в ладони взрослого человека. При этом разработчики позиционируют свой ПК именно как игровой, а не просто мини-десктоп. Стоит отметить, что длина ребра корпуса этого компьютера — всего 11,5 сантиметра.

Читать дальше →
Total votes 41: ↑40 and ↓1+39
Comments60

Information

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