Safe and sound code with kotlin

Following my first talk about writing safe code in kotin at London Kotlin Meetup #2 I recently had one in Saint-Petersburg. It was organised by Spb Google Developers Group, namely by Oleg Makarov. Event took place in the most appropriate place – place where kotlin was born – Jetbrains “Universe” Office at Vasilyevskiy island (it’s not kotlin island as someone might think :D).

Read more

US trip: observations about language

I recently visited USA(California) and I want to share some observations about language
Just a reminder – I’m not a native speaker but grew up on American English, thanks to videos, forums, music and podcasts. Nevertheless I’m living in UK and as you can guess English here is a bit different.

During the trip I collected short list of different words which are common in American but not in British English:

Read more

RPI Zero scan button

While I was finishing wireless scanner and printer server I realised that traditional document scanning approach is not so nice from UX point of view.

I really like the way office scanners in multi-functional devices work. Normally if you want to scan you just load stack of paper into and put your email address. Scanner does the rest and in minute you’ll get ready-to-use pdf file in your inbox.

I was thinking about having button attached to RPI Zero which initiates scanning and document upload.

Read more

Итог 2016

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

Шутка для нердов про сложный 2016 год:

Read more

Spanish: 200 дней с duolingo

В феврале этого года я взялся за испанский с помощью duolingo. Если кто то вдруг не знает – это сервис для изучения языков. Я бы сказал он именно для

  1. начала изучения – когда человек ничего вообще не знает. Так сильно проще выучить базовые слова, выражения, послушать и как то промямлить фразы, научиться комбинировать всё это вместе.
  2. поддержания ритма занятия – каждый день зелёная сова напоминает тебе выполнить свой минимум. Они считают streak – количество дней которые подряд занимался. Ладно 7 дней жалко потерять, а 30? 100? И всё, просто нет прощения. Где бы ты не был, чем бы не занимался – до 23.40 будь добр найди интернет и сделай минимум.

Помимо этого на дуо очень забавные фразы и дискуссии, читатели моего твиттера наверное уже устали от скриншотов с дурацими фразами в духе “My sister thinks she is normal, but I do not / Mi hermana pequeña piensa que es normal, pero yo no” – зато очень легко запоминается

Read more

Udacity: Machine Learning for Trading

Recently I’m interested in ML in terms of trading and I found course on Udacity platform which dedicated exactly for this topic.

Course structured as 3 big chunks:

1) Data reading and normalisation, vector algebra, regression using python(numpy, pandas) – mostly practice-focused
2) Market mechanics is for whom like me who doesn’t know anything how trading works. Module covers market data and some market indicators like Daily Return, Moving Average, Bollinger Bands, etc. It’s less practical but it’s still possible to code all formulas provided
3) Machine Learning overview. This module mostly about ML approaches, mostly focused on Q-Learning. It’s mostly theoretical, hence you have to go deep into details of implementation yourself. But yet it gives you sense of variety of options you’ve got.

Read more

А кажется много не надо

Я старался и стараюсь всю жизнь обходиться минимальным удобныбными инструментами

В 14 мне казалось что не нужно дорогой паяльной станции с регулятором температуры и заземлением – а стал заниматься микроэлектроникой
В 15 мне казалось что скорость интернета – вторична, 300кбит есть и хватит – а стал продавать интернет
В 17 я был счастлив с Pentium I, пока другие играли в игры я мне для консоли хватало линукса

В 20 у меня был микронут от Lenovo c Intel Centrino, я писал на поганом пхп и впринципе не тормозило, но накопилось потихоньку. Как известно – java занимается двумя вещами: жрёт память и тормозит, пришлось добавить памяти. Тулы начинали тормозить, пришлось купить другой ноут

Я был очень счастлив на i3 с 4гб памяти но потихоньку тулы (idea, android) стали всё тяжелее и тяжелее. Мне не казалось это большой проблемой особенно смотря на прожорливые макось и венду, которым 4гб надо было чтоб просто запуститься, я уж не говорю про работу

Потом система сборки андроида стала создавать десятки тысяч файлов, а идея – строить гигабайтные индексы. Я со своей скромностью(я ж не мажор и не геймер!) не сразу решился купить SSD. Он кстати заметно помог.

В какой то момент времени система сборки Андроид просто перестала обновляться – эти идиоты прекратили поддержку 32х. Смешно, что при этом всё равно часть тулов работали на 32 и поэтому нужно было ставить 32х подсистему в 64х ось. Гугл Алё, всё в порядке в консерватории?! Ладно тулы для разработчиков – даже chrome перестал поддерживаться для 32х версии.

И вот сейчас сижу я с i7, с 12гб памяти в которую очевидно помещается сильно меньше при тех же задачах в 32х системе, /tmp – в ramfs, файловый кэш/индекс идеи – на незашифрованном диске. So far so good.

И вдруг меня потянуло на ML. Я только начал, но уже надоело проводить эксперименты оставляя тренироваться модель каждый раз тюня на чуть-чуть на ночь чтоб утром посмотреть результаты – приходится заранее планировать машинное время, это похоже на девяностые годы, да?) А какая альтернатива? Платить кучу денег amazon ec2 или покупать десктоп за £1000+ с какой нить GTX 1080?

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

рефлексия

«Чем заняться сегодня?»

С детства нам прививают безосознанный, практически на уровне рефлексов, график нашего дня, месяца, года, жизни. Я не утверждаю хорошо ли это или плохо, но так выходит (и надеюсь это не со зла). Школа – самый яркий пример. Проснутсья рано, собраться, пойти в школу, там “отсидеть”, после школы сделать уроки и погулять в свободное время. А в 9 вечера – «спокойной ночи малыши» и спать. И так по циклу

Что ещё хуже, родители любят своих детей и неправильно фольмулируют задачу – мол, хорошие оценки значит всё в жизни будет. Да нифига. Вспомните свой первый курс и хвастающихся одногрупников с красным дипломом, сколько процентов из них не дошло до второго курса или скатились в дно? В их сознании они уже победили и дальше делать ничего не надо, всё будет само.

Общество нам навеевает расписание жизни: родиться, садик, школа, универ, семья, работа до конца. Всех кто нарушает этот режим – презирают, ибо нельзя быть на столько другим.

Мозг аттрафируется и перестаёт думать. Перестаёт думать о завтра, о интересах, о саморазвитии – уже с детсадовского возраста известны планы на всю жизнь. Хочешь получить второе образование после 30 – а зачем? Хочешь научиться рисовать после 20 – как тебе это поможет в работе на заводе? Хочешь выучить язык – тебе заняться больше нечем?.

Read more