Сейчас блоггеры усиленно подводят итоги уходящего года, и я тут подумал – а чем я хуже? Мне тоже есть что рассказать! Рассказывать я буду конечно про технические вещи, с которыми успел “поиграться” в 2011 году. Поехали…
ПО, которое удалось зарелизить:
-
JetBrains ReSharper SDK, включая онлайн документацию. Также получилось добавить одну фичу непосредственно в ReSharper.
-
ActiveMesa R2P — обновления для ReSharper 6.0 и 6.1, также несколько фич по запросам пользователей (что особенно приятно). Появилось много классных вещей, без которых я и сам уже жить не могу. Впрочем, пишется в основном для себя, так что это понятно.
-
ActiveMesa MathSharp — нужно иметь много наглости чтобы просить почти 100 долларов за приложение, которое писалось максимум неделю. И покупают ведь! Первое приложение которое я выпускаю по ClickOnce, и не без факапов конечно же, но тем не менее… теперь точно понятно, что пользователи готовы качать 100-мегабайтный инсталлятор .Net 4 и их это не особо напрягает.
Языки и их использование:
-
D — открытие года для меня. Уже успел купить и прочитать книжку Александреску а также попробовать пописать на нем. Впечатления крайне позитивные, несмотря на отсутствие 64-битной поддержки а также явную “недопиленность” стандартной библиотеки Phobos. D – это язык на котором хочется писать и шипить ПО, в том числе и кросс-платформенное. Настоятельно рекомендую!
-
C# — продолжаю пользоваться, всем в принципе доволен. Обрастаю библиотеками с методами расширений, т.к. в любом проекте одно и то же, снова и снова. Также активно использую монаду Maybe для R2P.
-
C++ — продолжаю пользоваться, нововведения меня не очень затронули, в основном использую “хорошо забытое старое” а также типичный стэк – Intel TBB, OpenMP, SIMD.
-
F# — пришел к выводу что он очень хорош для определенного круга задач, и не очень хорош для всего что требует серьезного использования ООП. При написании MathSharp, да и вообще парсеров, он очень полезен. Для математики тоже весьма неплох, хотя тут уже его приемущества чисто психологические (т.е. это приемущества для математиков, но не для меня).
-
JavaScript — практически не использую напрямую, пишу все на C# и транскомпилирую через SharpKit (см. ниже). За пределами
$.getJSON()
стараюсь вообще не трогать.
Программы и компоненты, которые продолжают давать ощутимые бенефиты:
-
Контролы DevExpress (WinForms) — использую их с 2006 года и в целом доволен, особенно доволен стилизацией, до которой конкурентам далеко. Контролы DX продолжают лидировать в плане красивости UI, а это важно для пользователей.
-
Intel Parallel Studio — до черного пояса Intel мне как до луны, но инструментарием я продолжаю пользоваться, причем весьма успешно. Как ни странно, мне намного больше импонирует использование связки C# & IntelCPP чем связки C# & C++/CLI.
-
TypograFix продолжает развиваться, улучшаться, и этот пост я пишу, конечно же, на нем. (Через RDC, сидя на Mac’е.)
Программы и компоненты которые понравились и стали частью процесса:
-
Innovasys Document!X — теперь это моя стандартная тула для генерирования документации (CHM и Web) как для коммерческих, так и для OSS проектов. Действительно хороший продукт, который стоит своих денег.
-
Red Gate SmartAssembly — все любят ругать Red Gate за Reflector, но продукт SmartAssembly они выкупили у другой компании, и продукт это неплохой. SA – это обфускатор, ILMerge и репортилка исключений в одном флаконе. Да, ценник “зашкаливает”, но мне очень нравится функционал и UI. Нет, я не страдаю любовью к обфускаторам т.к. считаю эту затею бессмысленной, но вот красивый exception reporting многого стоит.
-
WiX — да-да, бесплатный пакет для создания инсталляторов существует уже давно, но “распробовал” его я только в этом году. Теперь все инсталляторы которые не используют ClickOnce делаются именно на WiX. Единственное, чего не хватает – это фич автообновления. Правда автообновление уже давно перестало быть большой проблемой. Но все равно хочется иметь его “из коробки”.
-
ActiPro Syntax Editor (WinForms) — казалось бы, что особенного в контроле-редакторе который показывает подсветку синтаксиса и code completion для C#? А то, что процесс динамического прототипирования можно сделать более “цивильным”. А динамическое прототипирование дает настолько серьезный прирост производительности, что не делать его уже кажется грехом. Впрочем, мне кажется я никогда не смогу объяснить людям все его бенефиты. Что же, это не критично.
-
SharpKit — транскомпилятор из C# в JavaScript. Чтобы не писать JS, который есть зло и должен умереть, хотя кто-то и соглашается на нем писать. Тулкит имеет завязки на разные фреймворки вроде jQuery, да и свои байндинги писать на так уж сложно.
Программы, которые я больше не планирую использовать:
-
SQL Server и другие RDBMS, а также такие ORM-фреймворки как Telerik OpenAccess. MongoDB хватает “за глаза”, и подход NOSQL идеален для большинства задач. Единственное исключение пока это embeddability, и тут я пожалуй продолжу пользоваться SQL CE (например в том же R2P), т.к. хороших альтернатив мало.
-
IIS и ASP.NET MVC — с момента моего перехода на подход JS+REST, эти технологии оказались нерелевантными. Хотя, по правде сказать, я по-прежнему использую IIS 6 для хостинга WCF REST приложений, но по крайней мере клиентскую часть я писать на ASP.NET больше не намерен.
-
NDepend — в нем есть полезные фичи, но они запрятаны под слоями академичного анализа который, если честно, не очень-то полезен для анализа моего кода. Гораздо полезнее обычные механизмы статического анализа.
-
Typemock Isolator — я на самом деле давно забросил использование такой “тяжелой артиллерии”, но недавно попробовал снова и был разочарован: оказалось что в VS Ultimate Typemock генерит много багов, и умеет работать только при определенно выставленной конфигурации, которая меня не устраивает.
-
Telerik MVC поскольку его больше не существует :) не говоря уже о том что я больше не буду писать под ASP.NET.
Технологии, которые удивили или порадовали:
-
Kindle DX — пожалуй лучшее мое приобретение года. Вопрос о покупке iPad’а даже не стоял, а KDX я прикупил после долгих раздумий и не сожалею – уже прочитал на нем уйму книг. Глаза он щадит, размер вменяемый для чтения “почти А4”. Есть конечно фейлы – бесплатный 3G не работает в России и Латвии (в Скандинавии – на ура), браузер допотопный, WiFi нету, и книжки которые продает Amazon (типа ‘Kindle Edition’) покупать нельзя т.к. все листинги кода в них – битмапы, оптимизированные под “маленький” киндл. Что просто чудовищно. PDF FTW.
-
Windows Phone 7 — честно скажу: я ожидал увидеть очередное мертворожденное детище. А получилась операционка с уникальным, красивым user experience. Ведь могут когда захотят! Теперь остается ждать планшетов, хотя скажу сразу: если iPad 3 будет выпущен с Retina Display, куплю не задумываясь, ибо хочется, наконец-то, вменяемого разрешения. Если оно будет, можно будет и PDFы попробовать читать, и travel guides всякие, комиксы, и так далее…
-
Qt Creator — не совсем “моё”, конечно, но Qt Creator порадовал тем что он, во-первых, работает, а во-вторых даже более-менее понятен. В принципе, если приложение действительно нужно сделать кросс-платформенным, то я бы скорее смотрел на Qt чем на Java или AIR. И все это в очередной раз подчеркивает, что если хочешь чтобы твой алгоритм был кросс-платформенным, пиши его на С++. Ну или на С, это тоже сработает.
Что технологического я ожидаю в 2012 году:
-
Запуск Visual Studio 2012, в комплекте с поддержкой Metro-style apps, AMP и отладкой на GPU, C#5 и так далее. Запуск новой Студии в Петербурге буду проводить лично, если только Microsoft не передумает и не снимет снова Прибалтийскую для эвента на 500 человек как на запуск 2010й. Впрочем, я не против, так и так.
-
Разработческая конференция на пароме, курсирующем по скандинавии. С последующими туристическими ответвлениями. Будет весело.
-
Смерть и/или перерождение RIM. Серьезно, что же с ними будет? Кто-нибудь может себе представить WP7 на Blackberry?
Ну и наконец:
-
В 2012м я окончательно уеду из России (куда – пока секрет, скажу лишь что это не Англия и не Швеция). Впрочем, произойдет это небыстро – переезд это дело мутное, нужно сделать 1000 дел, все проверить-перепроверить, совершить несколько плановых полетов. Главное что это произойдет – понимание этого уже радует.
P.S.: С Новым Годом!!!
Оставить комментарий