Pull to refresh
0
0
Александр Шевченко @sheff_146

Frontend

Send message

Навигатор для трактора или эмиграция с цифрами

Reading time14 min
Views51K

Cover
https://www.deviantart.com/mrmarkchilcott/art/Warpig-662451056


Итак, ваш трактор отполирован до блеска, смазан, проведено ТО. Вы в костюмчике с иголочки стоите рядом, позвякиваете ключами и… не знаете толком куда же ехать. Внучатая племянница лучшей подруги двоюродной тети вашей мамы говорит, что лучше страны, чем Германия нет. Васек, товарищ детства, за бутылкой пива рассказал, что если куда и ехать, то в Эмираты. Там дорого-богато, а небоскребов сколько? Владимир Викторович, директор конторы, где вы в студенческие годы подрабатывали, считает, что где родился, там и пригодился, мол, страну поднимать надо. Направлений много, а жизнь одна. Давайте вместе вооружимся цифрами и попытаемся составить хотя бы отдаленно объективный список потенциальных мест дислокации на следующие N лет.

Читать дальше →
Total votes 80: ↑73 and ↓7+92
Comments0

Чистая Архитектура для веб-приложений

Reading time36 min
Views108K
Хочу поделиться с вами подходом который я уже много лет использую в разработке приложений, в том числе и веб-приложений. Многим разработчикам настольных, серверных и мобильных приложений этот подход хорошо знаком, т.к. является фундаментальным при построении таких приложений, однако в вебе он представлен очень скудно, хотя желающие использовать такой подход однозначно есть. Кроме того на таком подходе написан редактор VS Code.

Чистая Архитектура

В результате применения этого подхода вы отвяжетесь от конкретного фреймворка. Сможете легко переключать библиотеку представления внутри вашего приложения, например React, Preact, Vue, Mithril без переписывания бизнес логики, а в большинстве случаев даже вьюхи. Если у вас есть приложение на Angular 1, вы без проблем сможете перевести его на Angular 2+, React, Svelte, WebComponents или даже свою библиотеку представления. Если у вас есть приложение на Angular 2+, но нету специалистов для него, то вы без проблем сможете перевести приложение на более популярную библиотеку без переписывания бизнес логики. А в итоге вообще забыть про проблему миграции с фремворка на фреймворк. Что же это за магия такая?
Читать дальше →
Total votes 21: ↑17 and ↓4+16
Comments80

Полное руководство по сезонной депрессии (SAD). 7 видов светотерапии

Reading time26 min
Views61K


Я проделал большую работу по исследованию англоязычной литературы на тему «рекуррентное депрессивное расстройство (F33) с сезонным паттерном». В этой статье я системно изложу всю найденную информацию.

Почему эта статья важна:

  1. Лучшая книга по сезонной депрессии (Winter Blues) за все 27 лет её существования не была переведена на русский язык, а англоязычную версию не найти в открытом доступе. Я купил и прочитал книгу через Kindle, а также внедрил 70% описанных в ней методик в жизнь. Моя статья будет, по сути, пересказом книги и её адаптации под российские реалии
  2. Полное непонимание сезонной депрессии как обывателями, так и некоторыми профессиональными врачами в России, хотя эта страна находится в группе риска
  3. Низкое качество статей рунета в целом и статей по здоровью в частности. А статьи на Хабре, имеющие отношение к SAD, можно пересчитать по пальцам, и они не дают общей картины
  4. Производители ламп яркого света используют хитрые манипуляции, маркируя слабенькие лампы как дающие 10 000 люкс, но достигая этой яркости на расстоянии около 10 сантиметров от лампы до хрусталика глаза
Читать дальше →
Total votes 14: ↑13 and ↓1+17
Comments93

Работа в Сингапуре

Reading time6 min
Views17K

Короткая заметка о работе в Сингапуре.


Все цены приведены в сингапурских долларах (SGD) (53.61 рубль на момент написания).


Статья написана без учета covid ситуации и в достаточно сухом формате (факты), если будет интерес я расскажу подробнее.

Читать дальше →
Total votes 20: ↑18 and ↓2+23
Comments39

Подготовка к собеседованиям в IT-гиганты: как я преодолела проклятье алгоритмического собеседования

Reading time12 min
Views205K

Дисклеймер:


Я не программирую с трёх лет, не знаю наизусть Кнута, не являюсь призёром олимпиад по информатике и чемпионатов по спортивному программированию, не училась в MIT. У меня за плечами образование по информатике и 6 лет опыта в коммерческой разработке. И до недавнего времени я не могла пройти дальше первого технического скрининга в IT-гиганты из FAANG (Facebook, Amazon, Apple, Netflix, Google и подобные), хотя предпринимала несколько попыток. 

Но теперь всё изменилось, я получила несколько офферов и хочу поделиться опытом, как можно к этому прийти. Речь пойдёт о позиции Software Engineer в европейских офисах перечисленных компаний.
Читать дальше →
Total votes 155: ↑150 and ↓5+191
Comments342

«Чистый код» Роберт Мартин. Конспект. Как писать понятный и красивый код?

Reading time9 min
Views63K
Я решил написать конспект книги, которая всем известна, а сам автор называет ее «Школой учителей Чистого кода». Пристальный взгляд Мартина как бы говорит:

«Я тебя насквозь вижу. Ты опять не следуешь принципам чистого кода?»

image
Читать дальше →
Total votes 14: ↑13 and ↓1+17
Comments15

Как работают квантовые компьютеры. Собираем паззл

Reading time33 min
Views251K


Квантовые компьютеры и квантовые вычисления — новый баззворд, который добавился в наше информационное пространство наряду с искусственным интеллектом, машинным обучением и прочими высокотехнологическими терминами. При этом мне так и не удалось найти в интернете материал, который бы сложил у меня в голове пазл под названием “как работают квантовые компьютеры”. Да, есть много прекрасных работ, в том числе и на хабре (см. Список ресурсов), комментарии к которым, как это обычно и бывает, еще более информативны и полезны, но картинка в голове, что называется, не складывалась.


А недавно ко мне подошли коллеги и спросили “Ты понимаешь как работает квантовый компьютер? Можешь нам рассказать?” И тут я понял, что проблема со складыванием в голове целостной картинки есть не только у меня.


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

Получилось или нет - решать, как обычно, вам.
Total votes 111: ↑111 and ↓0+111
Comments105

23 минуты. Оправдание тугодумов

Reading time3 min
Views192K
Я всегда думал, что я – тупой. Точнее, что я — тугодум.

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

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

А я, выйдя с совещания, продолжал думать над задачей. И, как говорит устойчивое идиоматическое выражение, хорошая мысля приходит опосля. Находил нормальное, иногда интересное, а бывало – что и офигенное решение. Но оно уже никому не было нужно. Типа после драки кулаками не машут.

Просто культура в тех компаниях, где я начинал работать, была модерновая. Ну, как там это бывает – «совещание должно закончиться принятием решения». Вот чего придумали на совещании, то и принимается. Даже если решение — полная фигня.
Читать дальше →
Total votes 321: ↑305 and ↓16+365
Comments334

Как выполнять оценку по трём точкам?

Reading time3 min
Views77K
Вам стоит научиться выполнять оценку сроков задач по трём точкам, так как это, безусловно, лучшая техника для оценивания продолжительности работ совместно с участниками вашей проектной команды. Техника называется «оценка по трём точкам» потому, что участники команды дают пессимистичную, оптимистичную и наиболее вероятную оценки сроков завершения работ.
Читать дальше →
Total votes 30: ↑25 and ↓5+20
Comments25

Проблемные личности среди разработчиков

Reading time22 min
Views104K


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

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

Но с такими возможностями часто приходит полное отсутствие уважения к участникам проекта других профессий. Это отсутствие уважения может оказаться настолько глубоким, что порождает в уме разработчика твёрдую уверенность, что он не только самый ценный участник программного проекта, но и необходим компании в целом. К сожалению, хотя лишь малое число разработчиков способны накапливать что-либо напоминающее богатство, многие ведут себя так, словно они следующие Марк Цукерберг, Билл Гейтс или Стив Джобс; хотя это очень далеко от истины. Это приводит к личностным проблемам, которые так же увлекательно наблюдать со стороны, как страшно созерцать в себе.
Читать дальше →
Total votes 93: ↑74 and ↓19+55
Comments179

Манифест жёсткого программиста

Reading time4 min
Views75K

Предисловие


Данный текст предполагает, что читатель ознакомлен с т.н. agile-манифестом разработки программного обеспечения и его т.н. основополагающими принципами.


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



Содержание


  1. Манифест жёсткого программиста
  2. Основополагающие принципы манифеста жёсткого программиста
  3. Комментарии


Манифест жёсткого программиста


Мы постоянно открываем для себя более совершенные методы разработки программного обеспечения, занимаясь разработкой непосредственно и помогая в этом другим. Благодаря проделанной работе мы смогли осознать, что:


Концепция важнее новых требований
Качество важнее скорости
Делать как надо важнее, чем делать как просят


То есть, не отрицая важности того, что справа, мы всё-таки более ценим то, что слева.

Читать дальше →
Total votes 150: ↑120 and ↓30+90
Comments389

Как сказать «нет» иностранному заказчику и не испортить деловых отношений

Reading time3 min
Views13K

В жизни много ситуаций, когда нужно говорить “нет”. Вам что-то подсказать? — Нет, спасибо, я просто смотрю. Пакетик нужен? — Нет, спасибо, я со своим.

Важно говорить “нет” и в деловом общении. Один из наших преподавателей-носителей языка, Уильям, ранее работал менеджером проектов в Америке и собрал свою подборку советов, как сказать “нет” и не испортить деловые отношения.

Говорим «нет» на английском


Теперь перейдем к способам сказать “нет”.
I’d rather not, thanks.
Спасибо, но я все же откажусь.

I appreciate your time, but no thank you.
Благодарю за потраченное время, но вынужден отказаться.

I know it's important to you, but I can't.
Знаю, как это важно для вас, но не могу.

That sounds great, but I’ll have to say no.
Звучит отлично, но вынужден отказаться.
Читать дальше →
Total votes 34: ↑28 and ↓6+22
Comments49

Как не опозориться с локализацией и интернационализацией

Reading time10 min
Views9.5K
На тему этой статьи меня натолкнула история из очень недавнего прошлого. Я зашёл на страничку продукта, именуемого Суперсайтом, компании Не Будем Тыкать Пальцами LLC (но люди из домейнерской индустрии узнают). Заходил я из своего уютного офиса в Латвии и с удивлением обнаружил следующую картину:


И меня, мягко говоря, смутила валюта, в которой была указана стоимость услуг. Ведь на дворе вторая половина 2018 года, а латвийский лат официально прекратил своё существование в январе 2014 и был заменён на евро. И за 4 года не упомянутая выше компания не удосужилась провести ревизию используемых локалей.

Под катом я расскажу, что следует помнить при интернационализации и локализации своего продукта и где черпать данные для периодических ревизий.
Локализироваться
Total votes 35: ↑34 and ↓1+33
Comments9

О-нотация в проектировании программного обеспечения

Reading time7 min
Views12K
Разбираясь с SOLID, я часто натыкался на то, что неследование этим принципам может приводить к проблемам. Проблемы известны, но плохо формализованы. Эта статья написана с целью формализовать типичные ситуации, возникающие в процессе написания кода возможные решений и вытекающие из этого последствия. Мы поговорим, чем нам грозит плохой код и как проблемы растут вместе с ростом программы.
Читать дальше →
Total votes 12: ↑10 and ↓2+8
Comments5

Доступность интерфейсов. Лекция Яндекса

Reading time21 min
Views21K
Меня зовут Дима, я работаю в офисе Яндекса в Санкт-Петербурге и занимаюсь внутренними сервисами в команде разработки интерфейсов Толоки. В этом году я подготовил лекцию для Школы разработки интерфейсов. Ниже — её расшифровка.

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


— Что скрывается под модным нынче термином accessibility? Какие у вас есть варианты? Для слепых, чтение с экрана, с ограниченными возможностями, координация движений… Все верно. Доступность — возможность использования интерфейса всеми, независимо от физических или технических ограничений.
Total votes 32: ↑30 and ↓2+28
Comments11

8 простых шагов к провалу начинающего менеджера по разработке

Reading time9 min
Views14K


Поздравляю — вы новый менеджер! Нет, честно, от всей души. Слышите сарказм в голосе? Ну извините, я пытался как мог, но конечно, вместе с волнением есть доля сомнений и грусти. Наверное, вам придётся пройти через всё то, через что прошёл я и многие другие. Вы много лет работали инженером-программистом (или вставьте тут другую профессию), хорошо себя проявили, заслужили титул «сеньора» и вас считали неформальным лидером в коллективе. Вероятно, до настоящего момента были тимлидом. Возможно, какое-то время даже сопротивлялись этому «повышению», не хотели уходить из программирования, терять навыки. Но на самом деле боялись, что не справитесь. Наконец, каким-то образом вас уговорили рискнуть — и вот вы здесь. От ведущего инженера к начинающему менеджеру.

Как преуспеть в новой роли? Как опять пройти через все ступени и достичь такого уровня результатов и доверия, которого все ожидают, особенно вы сами? Сотни книг и тысячи блогов пытаются найти эти ответы, так что не буду притворяться, что у меня есть секрет успеха. Но я знаю несколько способов, которые совершенно точно гарантируют вам провал.
Читать дальше →
Total votes 23: ↑21 and ↓2+19
Comments9

Матрица мотивационных ценностей для управления разработчиками

Reading time7 min
Views8.1K

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

Читать дальше →
Total votes 19: ↑15 and ↓4+11
Comments20

DocumentFragment: что это такое и как с ним (не) бороться

Reading time4 min
Views33K
Дисклеймер
Похоже, у меня начинается новая серия статей — немного скучная и сугубо утилитарная. В них будут содержаться разъяснения моментов, которые часто вызывают трудности у моих студентов. Если вы матёрый веб-девелопер, скорее всего, вам будет неинтересно. Если вы ждёте извращений в силе «Пятничного JS», их тут не будет, увы.


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

image
Я преисполнен любопытства и желаю читать дальше
Total votes 22: ↑22 and ↓0+22
Comments23

Разбираемся с артиклями: продвинутый уровень

Reading time4 min
Views41K
Если вы уже освоили базовые правила и уверенно применяете их в речи и письме, то пришло время узнать некоторые тонкости, которые обычно рассматриваются на высоких уровнях. Мы приготовили для вас еще одну шпаргалку, которая поможет выучить оставшиеся правила расстановки артиклей раз и навсегда.

image
Читать дальше →
Total votes 21: ↑19 and ↓2+17
Comments15

Разбираемся с артиклями: базовые правила

Reading time4 min
Views34K
Артикли в английском языке – одна из самых сложных тем. Если при изучении слов мы можем опираться на мнемотехнику, схожее звучание или даже написание слов, то в случае с артиклями нам деваться некуда: в русском языке их попросту нет. Так что придется изучать правила. Их довольно много, и лучше поделить их на категории базовых и продвинутых. В этой шпаргалке рассмотрим базовые правила.

image
Читать дальше →
Total votes 25: ↑24 and ↓1+23
Comments41
1
23 ...

Information

Rating
Does not participate
Location
Praha, Hlavni Mesto Praha, Чехия
Date of birth
Registered
Activity