Показаны сообщения с ярлыком epiphany. Показать все сообщения
Показаны сообщения с ярлыком epiphany. Показать все сообщения

2015-06-11

Про огромный маленький мир

... или про то как я ощутил на себе глобализацию. Дальше пойдет набор не связанных между собой событий.

Как-то получилось что у меня в ленте несколько лет назад оказалось толпа белорусов из программерской тусовки, среди них был +Pavel Drobushevich

На работе мы решили перейти с YouTrack на TargetProcess. ТР оказался весьма нетривиален и наворочен. Чтобы разобраться в некоторых деталях разработчиков собрали на вебинар, и Steven показывал как они сами работают с TP.

Каково же было мое удивление, когда я увидел знакомую аватарку, а потом вспомнил: Павел писал как он перешел в команду TP. В этот момент меня просто накрыло: специалист из Америки показывает разработчку из России как работать с их системой на примере разработчика из Белоруси. Какова вероятность того что два разработчика знают друг друга, пусть и заочно. В этот момент весь мир показался мне Pale Blue Dot.

2015-03-17

Богатый папа, бедный папа

Немногл переписал отзыв, что не сложилось неправильной оценки, будто Киосаки - мегагуру финансового мира.

Товарищ порекомендовал книгу, поскольку про Киосаки слышал давно, взял и прочитал за один вечер. Сначала был в восторге, но потом остыл - появилось много вопросов к терминологии и фактических несоответствий. Не смотря на то, что книга совершенно художественная, написана мотивационным тренером для MLMщиков и про "смотрите как я пришел к успеху, познакомившись в детстве с крутым бизнесменом и начав делать кручу-верчу с недвижкой" - она дает пищу для размышлений, а это главное.

Школа жизни - это что-то вроде толчков, которые ты ощущаешь. Ну и про долги: если вы обнаружили, что закопались, перестаньте копать.



Очень многие не хотят работать "на дядю" и открывают свой бизнес. Если утрировать, низкая ответственность, малый объем информации которую надо держать в голове меняется на большую ответственность и больший объем информации ценой (возможно) большей прибыли. Суть работы от этого не меняется. Каждый день нужно вставать утром чтобы работать работу вне зависимости от наличия условного дяди. Киосаки называет это крысиными гонками. Я ощущаю это состояние давным давно. Характер моей работы не позволяет мне регулировать занятость. Рядом со мной есть много примеров таких предпринимателей, от wannabe успешных людей, которые не вызывают ничего кроме снисходительной улыбки, до действительно что-то создавших.

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


Третий пункт про денежный поток. Про то что одни люди накапливают пассивы, другие - активы. Этот принцип я инстинктивно ощущал и поэтому пассивов не накопил. Но и накапливать активы у меня не получается - богатого папы рядом не оказалось. С этим связана тяга к потреблению: с одной стороны меня совершенно не напрягает старый телефон побитый и облезший, с другой могу пойти и купить дорогую вещь, которая в принципе не особо нужна, ну на один раз максимум - в любом случае баланс у меня остается положителен последние десять лет.

P.S. Я давно понял к чему страмиться: хочу стать Ричардом Бренсоном, уединиться на острове, кататься на кайте и думать о том, как сделать мир лучше.

2015-02-09

Про языки и DSL

Я уже как-то писал про инсайты, приходящие именно в тот момент, когда ты готов услышать их. Хотя большой вопрос: каков вклад счастливой случайности? Может это знание, как тайные знаки всегда было рядом, а ты их смог увидеть и понять, только когда стал готов, а случай подвернется рано или поздно.

2015-01-11

Economics for dummies

Последний кризис я застал в 2008 году, будучи еще студентом, на содержании у родителей я не заметил видимо потому, что начал работать. Качественный скачок в доходах с 700р/мес до 5круб просто поглотил все ощутимые эффекты. Текущий же кризис хотелось бы не только пассивно наблюдать, но и понимать причины, маханизмы и последствия чтобы принимать осознанные решения.

В универе у нас было два (а может быть все четыре - не помню) семестра по экономике. Мы даже писали рефераты старательно выписывая параграфы из одного и старых изданий Экономикса. Но знания я вынес исключительно пассивные: есть микро и макроэкономики, спрос/предложение и куча других терминов - лежащие мертвым грузом, ни объяснить ни использовать их я никак не мог. Кстати интересно было читать книгу и вспоминать/угадывать русский перевод терминов которые еще остались в голове спустя 10 лет.

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

На работе периодически нам периодически закупают книги, третий закуп был для общего развития и заказывать книги нужно было не относящиеся к программированию. Я по приколу решил заказать Экономику для чайников и не ошибся: такая книга действительно была и даже выдержала переиздание. Внезапно, ожидания не оправдались и вместо легкого и непринужденного чтива перед сном книга оказалась офигительнейшим учебником по микро- и макроэкономике. 10 из 10, чистейший мастрид, такую крутую книгу не держал уже несколько лет в руках.


Все формулы в книге крайне просты даже для школьника младших классов. Весь раздел микроэкономики крутится вокруг двух графиков: спрос/предложение и маржинальный доход (удивлен кстати что ни разу не упомянута критическая цепь). Макроэкономических раздел посвящен рецессиям и весьма не богатым механизмам борьбы с ними. Laissez faire и Кенессианская модель роли государства. Последний раздел 10 заблуждений, 10 полезных вещей и 10 интересных вещей вообще самодостаточен.

2014-08-17

Русская модель управления

Великолепнейшая книга, постоянными ссылками на сотни источников скорее напоминает не популярую литературу, а научное исследование. Автор рассматривает историю России со времен образования Московского государства до кризиса 1998 года, когда была написана книга. Прохоров сравнивает вызовы, которые стояли перед западной моделью управления и перед Россией, что и привело к тому что мы имеем на протяжении последней тысячи лет. Внешние признаки, институты менялись, но внутренние механизмы всегда колебались между двумя состоянияниями: стабильном и кризисно-мобилизационном. Чем резче перемены в социально-политическом строе, тем заметнее неизменность базовых, структурообразующих элементов национальной системы управления.

2014-08-07

Про истинный смысл ORM

В программировании есть несколько тем, которые любят объяснять люди не готовые к этому. Мои любимые темы:
* рекурсия на примере факториала - что за бред
* тестирование на примере арифметических операций, которое примитивно до невозможности, чтобы объяснить тестирование нужно сначала вкурить SOLID и рассмастривать сложные примеры близкие к реальности
* ООП на примере калькулятора - не надо натягивать сову на глобус, или графических фигур - чуть лучше, но неопытный объяснятель может не знать про LSP и рано или поздно скатывается в проблему квадрата-ромба. Еще одним открытием может стать множество видов полиморфизма. Чтобы объяснить параметрический полиморфизм, нужно сначала понять обобщенное программирование. Проблема курицы и яйца. Сюда же rich vs anemic, AOP и другие вопросы.
* Что-то мне подсказывает что большая часть статей про монады объясняют совсем не то что нужно.

Недавно меня накрыло на тему ORM. Главной причиной всех танцев с абстракцией от БД подается возможность легко заменить базу данных. Что?! За?! Бред?! За все годы работы я видел две смены БД в проекте: с Oracle 9 переехали на Oracle 10 XE, а с MySQL переехали на MariaDB. Под этим флагом идет безнадежная борьба за чистоту запросов: только JPQL/HQL, скажем нет нативным запросам. Вдруг мы захотим сменить БД. К сожалению, рано или поздно наступает момент, когда выразить запрос средствами ORM становится невозможно, либо он достигает совсем неприличных размеров и, скрепя сердце и зажмурившись, программист пишет нативный SQL.

Внезапно все меняется, если посмотреть на ORM как на оптимизатор рутиного CRUD-а и не более. Если для сложной выборки быстрее написать SQL, то не нужно мучить ORM, рядом можно нарисовать DTO-шку, чтобы ORM закинул в него данные. Пуристы забывают про то что это нужно для экономии времени и сокращения количества ошибок в программе со 100500 формочками. Время машины стало дешевле времени человека и мы можем себе позволить неэффективность в маленькой области, выигрывая в целом.

2014-06-19

Никогда не ешьте в одиночку

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

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

Через всю книгу проходит идея о том, что если помогать людям (особенно если достаточно просто познакомить двух людей) и не вести счет добрым делам, то вокруг вас вырастет круг соратников. Успеха не достигнуть в одиночку.

Книга великолепна, читается на одном дыхании.

2014-03-09

Про лямбды и API

Dive into lambdas

Наконец-то добрались руки чтобы пощупать такие долгожданные лямбды, качнул свеженькую восьмерку и набросал некоторые варианты использования, которые могут быть полезны для увеличения связности кода. Сходу набросал три примера, сырцы в песочнице.

2014-02-12

Прикладная топология в исходном коде

Не развидеть

Бывают такие вещи, которые, однажды увидев, начинаешь замечать абсолютно везде. Для меня недавно таким открытием были теги {@see} и {@link} в джавадоках. Я неистово стал превращать исходники в такую вики. Параллельно сделал другое открытие, код не изотропен, связность пространства нарушается: попав из точки А в точку Б, я не всегда могу вернуться назад с той же скоростью - приходится обходить иерархию или вспоминать назание класса (черт возьми, у меня в активной памяти буфер на 7 элементов, названия класса из него выталкивается, даже если я пререшел из него десять секунд назад), чтобы по Ctrl+N перейти на него. Тут не спасают даже линки в джавадоках. Дальше я собрал подборочку таких моментов с реальными примерами.

2014-02-09

Заставившие задуматься эпизоды из жизни эникейщика

В очередном капитанском посте у jdevelop увидел старую эпичную ссылку про инженерную археологию и реверс-инженеринг завода. Сразу вспомнилось несколько кулстори из жизни эникейщика, произошедших на заре карьеры: такие себе инсайты, заставившие крепко задуматься о происходящем и мысленно провести After Action Review.

2013-11-27

Инсайты и нормализация данных

Бывают такие моменты инсайта, когда внезапно последний элемент паззла встал на место и все стало просто и понятно. Такие яркие впеатления надолго остаются в памяти. Наблюдаю за изучением баз данных и как раз вспомнился один из таких моментов, как это происходило у меня.

Между седьмым и восьмым классом два наших информатика написали систему тестирования на VB, вопросы же хранились в базе Access. В то время мы с другом активно увлекались программированием, собирая диски с бейсиками и коллекции OCX компонентов. Access я ковырял, даже подключался из бейсика, рассматривал Борей, понимал что есть таблицы, представления, формы, отчеты, скрипты же были магией. SQL не трогал - хватало построителя запросов.

Так вот, та самая база хранилась на Самом Главном Компе, желтом от сигаретного дыма. Комп назывался GOUROU. Мы мечтали на него попась, но шара с базой подключалась только на время тестирования либо забивания вопросов, поскольку Access был файловой базой. В один прекрасный момент, возможно на перемене между тестированием групп, мы увидели, что база доступна. Дискету с базой я нес домой прижав дрожащими руками к груди, как самую большую ценность.

Так повезло, что пароля на базе не было. Я быстро распечатал таблицы с говорящими именами test, question, answer. Распечатал аксесную ER-диаграмму. И долго пытался понять, как же они между собой связаны. Нашел вопрос, нашел варианты ответов, нашел правильный и то, чем он отличался от неправильных - булеву пометку. Увидел внешние ключи и в этот момент все стало на свои места - паззл сложился. Быстро накидал отчет с правильными ответами и отдал распечатки подружке.

Ближе к выпуску, я заметил, что со всех компов был удален Access - видимо просекли эту фишку. Проблема была в том, что на всех компах был установлен VB 6.0, с которым поставлялся DataViz, в котором можно было быстро накидать SQL запросец с ответами на нужный тест. Замуровали дверь, но оставили открытым окно.

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

З.Ы. Еще один момент из того же времени. Олимпиада по физике, задача, для лобового решения которой не хватит математического аппарата восьмиклассника. Это последняя задача, мы сидим и тупим. Видя, что дела плохи нам всем озвучивается подсказка (аналогия между объемом тонкостенного полого шара и объемом крышки стола). Пара человек говорит АГА!!!111, дичаеше начинает дичайше строчить и считать на калькуляторе. Остальные негодуют. Учительница по физике говорит: вы в равных условиях, поскольку слышали подсказку все, но семена понимания не взойдут без почвы знания.

2013-09-20

Гипертекстовый код на Java

В любой уважающей себя IDE есть ctrl+click-to-go, когда можно щелкнуть на переменной и перейти к объявлению, щелкнув на методе - перейти в его реализацию, щелкнув на классе перейти в это класс. Тривиальнейшая и очевиднейшая вещь воспринимается как должное, пока не сядешь за какой-нибудь Visual Studio Express, где её почему-то нет поправка: в VS есть F12 (Eclipse и NetBeans это умеют, но зачем ездить на жигулях, если есть бесплатный кадиллак). Но мы не будем рассматривать отщепенцев.

Зачастую положительные изменения не происходят, пока не преодолен некий болевой порог. Неудобство воспринимается как должное. Когда наконец происходит СУКАБЛЯЗАЕБАЛОАЖБЕСИТ начинаешь что-то думать. Наступает эдакий момент откровения.

2013-08-05

Инструмент мастера

Помни, Гарри: сила волшебника
Не зависит от размера волшебной палочки

Посмотрел тут видео про эффективную работу с IntelliJ IDEA, узнал несколько новых полезных возможностей. Productivity guide - это вообще уберфича, такое я видел только в Идее, хотя ничего волшебного, тот же Eclipse давно собирает статистику использования и периодически предлагает загрузить к ним на сервера.

То чувство, когда пользуешься любимой IDE
В любом случае подобных видео over 9000 для любого, достаточно продвинутого редактора. Смотреть как работает мастер можно бесконечно. И прямо таки физическую боль вызывает наблюдение человека совершающего монотонную ручную работу, особенно если её можно оптимизировать, особенно, если есть официальный способ, и достаточно просто заглянуть в справку.

2012-12-23

Снова о прозрении

Новые знания усваиваются постепенно и ответы на появившиеся вопросы ищутся в рабочем режиме. Но иногда появляется совершенно новая область, либо накапливается критическая масса знаний и количество готовится перейти в качество. Настоящий когнитивный кризис: вопросы растут лавинообразно, а ответы всё никак не находятся.

Интересы причины таких качественных скачков. Самыми яркими этапами у меня были понимание как работает сервлет-контейнер, отличия rich и anemic, тестирование, мавен. Сейчас меня распирает от DI. Сервлет-контейнер не был похож ни на десктопные приложения, которые я писал и понимал как отлаживать, ни на php скрипты. Maven потребовал серьезнейшего мозгового усилия и чтения двух книг, потому что он был абсолютно непохож на известный мне ant. Подходы к доменной модели были понятны, но не было практики, чтобы выяснить границы применимости.