?

Log in

Система - внутри и вне. Игра - правила и реалии. Жизнь - принципы и факты.

Recent Entries

You are viewing the most recent 25 entries.

7th December 2015

5:57pm: Happy 2016

30th April 2015

10:36am: Расслабин
Только что я в очередной раз возмущался какие америкосы тупые.

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

Ну тупыыыыые.

Менеджер послушал и принес мне это:

27th April 2015

4:44pm: XCOM: Enemy Within
Не, правда. Enemy Within прекрасен.

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

Пройдя Enemy Within на второй сложности, я решил начать на сложность выше.



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

Это один из тех случаев, когда с изменением сложности игра меняется почти полностью. (:
4:36pm: Американских военных заставили ходить в туфлях на каблуках
Нет, я серьезно: что это за хренота? Уровень идиотизма зашкаливает.

29th September 2014

11:00am: Котлеты и сарказм.
Стоит помнить, что кавычки также могут означать сарказм:

7th September 2014

1:23am: Брюссель

Первое впечатление от Брюсселя - стремный и грязный.

Запись сделана с помощью приложения LiveJournal для Android.

1st July 2014

12:59pm: Кривоид.
Android хорошая система для пользователя, потому что сравнима по качеству с iOS и наиболее распространена. И нет тупых ограничений вроде "подключение только через iTunes". Мне нравится использовать телефон на Android. Как пользователю.

И для индусов. Потому что Java. И потому что распространена, соответственно интернет наводнен инструкциями "как сделать калькулятор" или "использование *очевидный механизм* при разработке на Android".

Но для разработчика система очень спорна. Внутренности системы очень кривые. О, я, конечно, говорю не о linux-части. Я говорю о Java фреймворке, который используется для разработки софта.



Мне периодически приходится сталкиваться с wtf-проблемами и в связи с этим приходится копаться в исходном коде фреймворка. И каждый раз он меня ужасает. Внутренняя инкапсуляция нулевая - фреймворк изобилует не-private полями и доступом к ним извне.

Инкапсуляция? Не, не слышал:

AThread thr = new AThread();
thr.start();

synchronized (thr) {
   while (thr.mService == null) {
      try {
         thr.wait();
      } catch (InterruptedException e) {
      }
   }
}


Фреймворк часто грешит тем, что хранит критические данные в пользовательских классах. Например у меня был баг, что первый элемент Grid'а работает неправильно - он нажимается только после того, как Grid будет подвинут. То есть обработка нажатия откладывается до тех пор пока Grid не начнет скроллиться. Причем то же самое и с кнопками внутри элемента. А оказалось что все из за того, что этому элементу переставлялся layout params, в котором каким то образом (я уже не помню деталей) оказывались критичные для корректной работы Grid'а данные.

Или вот еще, в андроиде:
- 280 файлов классов больше 1к строк.
- 92 больше 2к строк.
- 17 больше 5к (sic!) строк.
- 10 больше 10к (argh!!!) строк.

И, до кучи, там есть класс, в файле которого почти 20к строк. Конечно, там дофига документации в классе, но все равно, сам факт. 20к строк.

Забавы ради отмечу, что для одного проекта мне нужно было разработать масштабируемый UI-фреймворк, архитектурно схожий с андроидовским и до кучи туда же прослойку, которая позволяла отлаживать и запускать приложение на десктопной машине, а после перекомпилировать под целевую платформу (Symbian S60).

Весь фреймворк был около 30к строк. Да, с вьюшками, layout manager'ами, анимированными инерционными списками (даже поддерживавшим reuse элементов) и даже iOS'овским барабаном.

В результате такой переусложнения Android фреймворка постоянно лезут нетривиальные проблемы.

Вот например сейчас я столкнулся с тем, что метод Application.onCreate, который вызывается один раз на старте приложения вызывается системой почему то второй раз. И происходит это в спагетти-ActivityThread, которого 5к строк.

29th June 2014

12:44am: Великая Сила (Star Wars)


Любопытно, а вдруг мы можем использовать Великую Силу,  но только в моменты, когда мы максимально в это пе верим? То есть мы могли бы попытаться и это бы сработало, но мы никогда не пытаемся, потому что не верим.  (:

Запись сделана с помощью приложения LiveJournal для Android.

26th June 2014

1:41pm: Специалисты и профессионализм

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

 

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

 

Это понятно все. Не все люди вменяемы. Но вот что самое тяжелое, это то, что ему нельзя просто ответить: "если ты такой умный, почему же ты все время пишешь такой кривой код?". Это, к сожалению, не профессионально.

Запись сделана с помощью приложения LiveJournal для Android.

12:10pm: Haskell
Я тут делаю очередную попытку осилить такой язык как Haskell.

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

Нашел неплохую книжку: Real World Haskell. Претензии есть, конечно, но на текущий момент это книга с самым подробным, четким и последовательным изложением, которую я видел.
10:09am: Я кидаю камни... это бессмысленно, но успокаивает.
Хочу отдельно отметить этот выпуск xkcd.

23rd June 2014

10:11am: Clips
Сегодня у нас клипы!



И это:



Музыка не то чтобы очень крутая, но клипы прекрасны.

20th June 2014

3:13pm: Болтать
Сыворотка правды с мякотью - болтать до и после употребления.
10:06am: No Heads!

11th June 2014

10:07am: Volkswagen: Eyes on road
Крутейший ролик, посвященный безопасности движения:

10th June 2014

12:00pm: Приключения Зомби-Бомжа
Сегодняшний explosm прекрасен.

Вчерашний, впрочем, тоже очень хорош.

9th June 2014

10:39am: Модели +
Последнее время начало появляться все больше всяких статей, фоток и т.п. про "моделей плюс". Типа толстые (местами даже, простите, жирные) тетки демонстрируют телеса задрапированые в легкую драпировочку.

И продвигается это под соусом мол, "не страшно что ты толстая, вон есть модели +, значит это нормально".

И вот у меня есть вопрос в связи с этим: это что за бабуйня?



Избыточный вес - это не нормально (внезапно поэтому он и называется "избыточный"). Более того, избавиться от существенной части такого количества избыточного веса довольно просто.

Но подается это под видом "ты жирная, и люби себя такой, это нормально". Нет, я не считаю, что жирным теткам надо забиваться под диван (ха-ха, как бы им это удалось?) и ненавидеть себя. Но есть принципиальная разница между "понимать свои недостатки" и "не замечать недостатков".

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

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

Довольно странная позиция, на мой взгляд.

upd: Метаболизм 22летней жирдяйки позволит ей сбросить лишний вес в течении года (ну максимум двух) и прийти в хорошую подтянутую форму без особых последствий. А когда окажется что ей уже 35 и она один жир (и ей осталось только пойти работать вахтершей), ей будет на порядок сложнее подтянуться. Так что, на мой взгляд, это вообще преступление, пропагандировать то, что жирной быть нормально.

2nd June 2014

10:07am: Кризисный лук
Начал играть в Crysis 3.

По моему первому впечатлению, охотничий лук, который они добавили - это эпик фейл. Баланс в игре выносится полностью. Судите сами - очень мощный, абсолютно бесшумный, не нарушает маскировку. Да еще и патроны можно собирать обратно. Фактически, можно убить одного чувака, подождать пока подбежит следующий чтобы узнать что случилось, убить его, подождать следующего... Они сами складываются в горку.

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

30th May 2014

9:58am: Crashlytics
О да, я чувствую себя брюзгой. Может это старческое "а вот в наши годы", но определенно, развитие инструментов разработки идет по пути ухудшения.

Теперь тем же путем идет Crashlytics. Раньше, чтобы посмотреть стек упавшего приложения, мне достаточно было просто перейти по ссылке. Теперь же эта хрень хочет, чтобы я поставил IDE и plugin к ней. Просто для того, чтобы посмотреть стек. Я не собираюсь использовать никакие эпические возможности которые они заложили куда либо, мне просто нужно глянуть одним глазом что же там за падение.

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

А плагин еще и глючит.



Написал в суппорт письмо в духе "как мне просто посмотреть лог", жду ответа.

UPD: как оказалось, это товарищи управляющие проектом выкинули меня зачем то из списка доступа.

Так что оказывается плагин можно не ставить. Однако то, что у меня нет доступа к проекту, прямо скажем, из поведения системы неочевидно. Почему просто нельзя написать "у вас нет доступа к проекту"?

UPDUPD: в суппорте мне ответили, что да, они понимают что ошибка неочевидна и что они передадут специалистам мой отзыв.

28th May 2014

2:53pm: IDE и инструментарий иже с ними
Вообще ценность IDE сильно преувеличена.

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

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

Аналогично, существует масса приложений для "записи мыслей", но, как оказалось, обычный блокнот на пружинке куда удобнее.
1:53pm: Руккола
- "За горизонтом что то грукало," -
стихи писал Иван Иваныч Руккола.

или вот еще вариант тов. Вербеца:

Иван Иваныч Руккола,
потерял на войне руку-на.

27th May 2014

12:18pm: Gradle and Android
Google в качестве среды разработки и системы сборки для Android'а теперь позиционируют Gradle и Android Studio.

Возможно сам по себе Gradle и хорош, но его связка с инструментарием для сборки Андроид-приложений сделана так коряво, что часто приходится тратить по полдня просто на сражения с системой сборки.

А Android Studio настолько сырая, что ее приходится перезагружать по надцать раз на день.

Эй, Google, я понимаю "все бета". Но выкатывать такой инструментарий - это, вообще говоря, откровенное неуважение к тем, кто разрабатывает под платформу. Я удивлен что говорю это, но даже с Symbian'ом не было столько глупых проблем с системой сборки и средой разработки.
Powered by LiveJournal.com