Pull to refresh
149
0
Максименко Александр @mclander

Разработчик

Send message

Быть фулстеком и не быть им

Reading time13 min
Views13K
Я именно тот 40+ летний синглстек, который упоминался в нашумевшей статье. Когда я вижу таск, где бэкендер упоминает dTo, к которому нужно написать обвязку на фронте… Я запланировано выхожу из себя. Во-первых, я хорошо работаю, когда злой. А тут такой случай. А во-вторых (и это главное), я не хочу знать, что такое ДэТэО, где оно лежит и как с ним работать. Мне нужен только путь, метод, параметры и набор ответа. В терминах HTTP/REST. Я не хочу лезть в код бэка. Я даже не хочу догадываться о том, что исходя из имени класса dTo, можно легко вычислить путь.

Это вопрос уважения. Я не лезу в кухню бэка. А когда сам ставлю задачу на бэк, то чётко расписываю интерфейс (опять же в терминах REST) и кратко описываю, зачем оно мне надо и как собираюсь использовать. Как это реализуют на бэке – это не моё дело, как я реализую работу фронта и где расставлю кнопки – не их.

Вы уже поняли, о чём пойдёт речь в статье? Так вот – немного не о том. Я работаю синглом. Но на самом деле, я мультистек. Притом работал и давал результат сеньором и тимлидом во фронте, бэке, фуллстеке, системном и даже бизнес-анализе. И рад, что у меня такой бэкграунд.

Что в нём хорошего, и как я до такого дошёл под катом.

Поехали.
Читать дальше →
Total votes 43: ↑35 and ↓8+27
Comments57

Двустороннее связывание Angular, чуть больше понимания

Reading time7 min
Views29K
От переводчика
От переводчика: два года назад я начал свой первый проект на Angular(2+), имея большой и успешный бэкграунд AngularJS. Переход потребовал заметного форматирования мышления, поскольку слишком много на A1 и A2+ делается «чуть-чуть по другому». Болезненность перехода мне заметно снизил блог thoughtram. Я ещё год назад получил разрешение перевести эту статью «об элементарном и всем легко понятном». Но руки они такие руки (своих статей пачка недописанных). Что удивительно, статья неплохо переводится гугл транслейтом. Но некоторые нюансы в этом переводе терялись, не говоря об авторском стиле. Авторский стиль не сохранился в полной мере и в моей версии. Но, надеюсь, настроение и мысли статьи мне удалось передать.

Я понимаю, что Angular не самая востребованная тема на Хабре, но надеюсь, что перевод поможет кому-то, так же как исходная статья помогла когда-то мне.

Вот что вызывало вау-эффект в старом добром AngularJS, так это «двустороннее связывание». Эта магия мгновенно влюбляла в AngularJS, и ломала все представления о скучном программировании страниц и (о, ужас!) веб-форм. Изменения в данных мгновенно отображались на экране и наоборот. Те, кто раньше разрабатывал приложения на jQuery, воспринимали связывание, как попадание в сказку. А бородатые монстры, пилившие толстых клиентов ещё до jQuery, начинали судорожно пересчитывать бездарно потерянные человеко-месяцы.

И, более того, магия двустороннего связывания была доступна не только для специальных нотаций и избранных компонентов. Мы могли легко её использовать в наших собственных директивах и компонентах (просто установив параметр конфигурации).

В Angular2+ создатели отказались от встроенной двусторонней привязки данных (кроме как через ngModel). Но это не означает, что мы не можем использовать двустороннее связывание в собственных директивах… Просто халява кончилась и теперь нужно кое-что делать самостоятельно. И, желательно, c пониманием того, как оно устроено в Angular.
Читать дальше →
Total votes 6: ↑6 and ↓0+6
Comments0

Борщевик Сосновского. В МО ввели штрафы за распространение

Reading time20 min
Views108K
Изображение с pixabay. Автор YvonneH1 ноября 2018 года Московская Область без объявления войны (объявленной парой лет ранее), ввела финансовые санкции. Против собственников территорий, предоставляющих плацдарм для распространения борщевика Сосновского. Ура!

Мне, правда, интересно, кто будет платить за титаническую плантацию борщевика между Шереметьево и ниткой Аэроэкспресса. Плантацию, встречающую гостей и жителей Москву сразу по прилёту в белокаменную. Там растут просто миллионы штрафа.

Что же такое борщевик Сосновского и почему с ним надо бороться. Как это делать. Как это делать не нужно. А так же научные и псевдонаучные факты в нескучно-популярном изложении.
Читать дальше →
Total votes 289: ↑268 and ↓21+247
Comments684

Почему люди играют в игры

Reading time5 min
Views65K

10+1 причина того, почему мы делаем то, что делаем.


Статья из серии «хулиганский геймдизайн». О геймдизайне пишет системный аналитик и программист, работавший какое-то время назад в геймдеве (ни разу не гейм дизайнер).


Статья написана в соавторстве с капитаном Очевидность. При этом спорная и изобилует авторской экстраполяцией. Хотя ничего, что опровергалось бы известными мне фактами, я стараюсь не писать.


Поехали?

Читать дальше →
Total votes 28: ↑26 and ↓2+24
Comments60

Я не знаю как это сделать! Честно-честно

Reading time5 min
Views52K
Это статья о простом приеме мотивации молодого специалиста. Если коротко: сильный специалист признается, что не знает как решить задачу, чтобы мотивировать новичка. О паре случаев из жизни под катом.
Читать дальше →
Total votes 104: ↑91 and ↓13+78
Comments33

Я позвонил, чтобы потратить ваше время

Reading time1 min
Views94K
Эта фраза неизменно вызывает улыбки у окружающих, имеющих обыкновение прислушиваться к телефонным разговорам. Сперва: «Здравствуйте, расскажите мне о вашем замечательном предложении». Потом: «Ага,… ага,… ага..». И финал: «Меня это не интересует, я позвонил просто, чтобы потратить ваше время. Поскольку вы тратите моё, прислав мне СМС».
Читать дальше →
Total votes 255: ↑231 and ↓24+207
Comments139

Free2Play MMORPG. Типы игроков и их монетизация

Reading time19 min
Views108K
Уже два года как я не работаю в геймдеве. Соответственно, появилось время и желание обобщить мысли об этом бизнесе безобразии. От откровенно хулиганских, до претендующих на исследование.

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

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

Поехали?
Читать дальше →
Total votes 126: ↑99 and ↓27+72
Comments170

Зачем бы я поставил Яндекс-бар

Reading time3 min
Views25K
Зачем нужны бары их производителям — понятно. Таким несложным, в техническом отношении, способом анализируется мой трафик. И мне показывается таргетированная, а значит и более дорогая реклама вещей, которые я уже купил захочу купить.

Поиск из омнибокса и «подсветка» подозрительных сайтов, поддерживаемые всеми вменяемыми браузерами, нивелировали сомнительные удобства, предоставляемые барами. Поисковики хотят бары, но что они могут предложить, из того, что не интегрировано в браузер? Игры, информеры соц сетей, порно новости? Мне неинтересно.

Но есть пара вещей, за которые я бы не отказывался от «слежки» за мной.
Читать дальше →
Total votes 121: ↑70 and ↓51+19
Comments49

Screensaver = обновлятор?

Reading time2 min
Views1.4K
Запускаешь систему и первое с чем приходиться сталкиваться — это апдейтеры. Да, круто, что уязвимости и ошибки в моём ПО исправляются с минимальным лагом. Но почему это происходит в момент загрузки компьютера?

Я пользуюсь Quicktime лишь немногим чаще, чем вижу его сообщения об апдейтах. Точнее, об апдейтах Safari, который поставился заодно и используется редко-редко, для тестов. А PDF файлы открываю реже, чем обновляется Acrobat Reader.

Я не против обновлений. Но почему они стартуют в момент загрузки и жрут ресурсы в тот момент, когда мне этого хочется меньше всего?
Читать дальше →
Total votes 83: ↑73 and ↓10+63
Comments72

Замена SIM-холдера у Samsung Galaxy Tab 10.1 P7500

Reading time2 min
Views24K
Планшет покупался в подарок маме и в приличной запарке по работе. Посему SIM-ку к нему я покупал тоже на бегу.

— Дайте симку для планшета!
— Для iPad'a?

Тут бы мне задуматься и переспросить, но я ответил «да». В итоге приобретается «обрезанная» симка. Практически тут же засовывается в SIM-холдер. Куда естественно радостно проваливается. И упорно не только не желает работать, но и вылезать.

В итоге был поврежден симхолдер. Как заменить его своими руками под катом. Осторожно — фотки.
Читать дальше →
Total votes 54: ↑39 and ↓15+24
Comments28

Python, Модули, SWIG, Windows

Reading time4 min
Views20K
Эта статья – описание моих экспериментов по сборке модулей для Python. Мне понадобился высокоуровневый интерфейс к библиотеке LibRaw, притом в первую очередь под Windows.

Последний раз модуль для питона на C++ я писал в 2004 году. Модуль к мертворожденной (к счастью не мной) библиотеке ( я тупо продавал свои умения за зарплату). Естественно, навыки не закрепились. Помню, что SWIG сильно облегчил мне работу, поскольку нужен был объектный интерфейс, а «ручками» его писать ломало. Память у меня профессиональная – то есть избирательная и короткая, поэтому пришлось прыгать сначала.

Это статья только про настройку SWIG для Python под Windows. Писать же модули на C/C++ с использованием SWIG гораздо проще, чем всё настроить (кстати, у меня такое впечатление, что это парадигма современного программирования).

Читать дальше →
Total votes 24: ↑21 and ↓3+18
Comments5

Вам не страшно открывать редактор?

Reading time13 min
Views3.1K
В какой-то момент я стал замечать, что пишу более качественный: оптимальный, логичный и читаемый код, но пишу его медленно. По крайней мере, куда медленнее, чем лет 15 назад. Да, на старый код без слёз не взглянешь: всё можно сделать оптимальнее и, по крайней мере, читабельнее. Но код был написан быстро.

Проблема в контроле. Я стал жестче и глубже контролировать код и… стал тратить на этот контроль слишком много ресурсов.

Основной принцип прост. Если контролю подлежит 10-20% случаев, то на контроль надо тратить… 0% ресурсов. Баги и переписывания всё равно будут. Но лучше разделить кодирование и отладку и на время кодирования об ошибках вообще забыть.
Читать дальше →
Total votes 171: ↑128 and ↓43+85
Comments115

Nikon D800 анонсирован, где же Canon 5D Mark III?

Reading time9 min
Views3.6K
Почти неделя прошла от анонса полнокадровой зеркалки Nikon D800. Почти всё, что ждали никонианцы почти год, в новом флагмане (полу)профессиональной линейки Никона воплощено. Японцы обещаю начать продажи нового чуда в середине марта. Во что, правда, верится с некоторым скрипом, после истории с задержкой выхода D7000.

А что же Canon?


Canon EOS 5D Mark III, анонс которого ждали не менее долго, так и не вышел из под покрова тайны. Придется брать дело в свои руки. Давайте пофантазируем, чем производители ремней с красной каймой, смогут ответить производителям ремней с каймой желтой.
Читать дальше →
Total votes 37: ↑22 and ↓15+7
Comments31

Установка Ruby on Rails под Windows

Reading time2 min
Views97K
Заинтересовал меня Rails. Купил пару книг, прочитал… достаточно чтобы, зачесались руки и пришло время ставить сабж. И приступать… хотя бы к экспериментам.

Задача: поставить Rails под Windows 7 (не спрашивайте меня почему) и запустить сервер.

Оказалось — это квест. Пары щелчков мышью недостаточно. Конечно, если не использовать Railsinstaller, на что мне правильно намекнули в комментариях (спасибо, dreamfall).

Несколько же часов моих поисков, завершившихся таки полной и безоговорочной инсталляцией, под катом.

Читать дальше →
Total votes 35: ↑20 and ↓15+5
Comments51

Монтаж четвертушками

Reading time2 min
Views4K
Я прилично времени провожу в поездках. Ноутбук всегда с собой, но творчески работать удается не всегда. А вот заниматься монтажом оказывается самое то. В монтаже больше всего времени отнимает просмотр материала и проработка стыков сцен. Особенно это касается «сырого», «стихийного» материала. Когда много дублей, в дублях много брака и приходиться сшивать ролик буквально единственно возможным образом.

Вот незадача: мой ноутбук ASUS UL30A, не тащит хайресное видео в любимом Sony Vegas'e, при работе от батарей. Я молчу о FullHD.

Небольшой, но полезный трюк под катом.
Читать дальше →
Total votes 37: ↑32 and ↓5+27
Comments30

Information

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