Pull to refresh
13
0
Климин Андрей @klimin007

Пользователь

Send message

Составляем документацию разработчика пошагово без диет и тренировок

Reading time8 min
Views17K

Недостаточно просто написать инструкции — важно, как, в каком порядке и где вы их разместите. 

Привет! Это Теодора — технический писатель Платформы, жизненно важного департамента Ozon. Документация для нас имеет большое значение, потому что вся компания пользуется нашими разработками: инфраструктурой as a service; фреймворками и библиотеками; инструментами для работы с базами данных и аналитикой и прочим. Сотни инженеров ежедневно обращаются к нашим сервисам и нуждаются в их описании.

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

Читать далее
Total votes 55: ↑53 and ↓2+51
Comments6

Регулярные выражения в Python от простого к сложному. Подробности, примеры, картинки, упражнения

Reading time25 min
Views1.4M

Регулярные выражения в Python от простого к сложному




Решил я давеча моим школьникам дать задачек на регулярные выражения для изучения. А к задачкам нужна какая-нибудь теория. И стал я искать хорошие тексты на русском. Пяток сносных нашёл, но всё не то. Что-то смято, что-то упущено. У этих текстов был не только фатальный недостаток. Мало картинок, мало примеров. И почти нет разумных задач. Ну неужели поиск IP-адреса — это самая частая задача для регулярных выражений? Вот и я думаю, что нет.
Про разницу (?:...) / (...) фиг найдёшь, а без этого знания в некоторых случаях можно только страдать.

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

Надеюсь, вам удастся из него извлечь что-нибудь новое и полезное, даже если вы уже в ладах с регулярками.
Читать дальше →
Total votes 99: ↑98 and ↓1+97
Comments66

Как попробовать 60-процентную клавиатуру, если у вас её нет

Reading time16 min
Views41K

Клавиатура Vortex POK3R RGB V2 (источник — geekboards.ru/product/vortex-pok3r-rgb-v2)

Я правша, но держу мышку в левой руке. Потому что правая и так слишком нагружена стрелочками, цифровым блоком, кнопками Home, Delete и пр. А поскольку эти кнопки перенести невозможно, я перенёс мышку.

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

К сожалению, ни у моих знакомых, ни в местных магазинах таких клавиатур нет. А перед тем, как покупать, хотелось бы потестировать. Чтобы понять, смогу ли я на такой клавиатуре нормально работать, или это будет сплошное мучение?
Как проверить?
Total votes 29: ↑28 and ↓1+27
Comments63

Типографская раскладка для 60-процентной клавиатуры

Reading time22 min
Views19K


Оригинал фото: pxhere.com/ru/photo/1600961

Обычную часть раскладки я описывал в предыдущей статье. А сейчас расскажу о возможностях, которые превращают раскладку в типографскую: пробелы, тире, кавычки, апострофы, диакритические знаки.
А также лигатуры, диграфы и многое другое
Total votes 39: ↑39 and ↓0+39
Comments18

Подключаем RDP-клиента Windows к MacOS

Reading time4 min
Views16K

Привет, Хабр! Меня зовут Холодаев Алексей, я младший системный администратор в Cloud4Y. Сегодня хочу поделиться способом подключения стандартного RDP-клиента Windows к MacOS. Если интересно, ныряйте под кат.

Читать далее
Total votes 26: ↑25 and ↓1+24
Comments8

«Я не ответственный, я — Responsible» — как объяснить бабушке, что такое RACI-матрица

Reading time7 min
Views49K


Приехала я год назад к друзьям играть в настолки. А они ссорятся. Из-за того, что Маша сказала Саше вынести мусор / убрать носки / погулять с хомяком, а он не сделал, потому что тупо забыл. Рассказала я Саше и Маше про ToDoList и таск-трекеры и нарисовала им на холодильнике импровизированную асану. Маша наклеила стикеры с задачами и сроками, Саша терпеливо кивнул. Настолки состоялись.

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

Но потом решила, что всё нормально, лезут, т.к. вспомнила, что видела RACI-матрицу для распределения ответственности с шуточным объяснением через поездку семьи на дачу. Полезла искать эту картинку для Саши с Машей, нашла, а в ней куча ошибок:



Простите. Не могу промолчать. Не надо так.
Читать дальше →
Total votes 86: ↑80 and ↓6+74
Comments45

Примеры ассемблерного кода для ZX Spectrum

Reading time6 min
Views21K

Я не буду делать длинное вступление. Один знакомый хакер однажды сказал, что 10 строк кода могут быть понятнее и интереснее, чем 1000 слов объяснений. Все эти примеры написаны на ассемблере для архитектуры Z80 и запускаются на ретро-компьютере ZX Spectrum 48k.

Что внутри?
Total votes 48: ↑48 and ↓0+48
Comments29

Разбираемся с сессиями в SQLAlchemy

Reading time5 min
Views21K

В этой небольшой статье я хочу дать ответ на вопрос, который возник у меня, когда я познакомился с сессиями в SQLAlchemy. Если сформулировать его кратко, то звучит он примерно так: “А зачем оно надо вообще”? Меня, как человека пришедшего из мира джанги, сессии приводили в уныние и я считал их откровенной фигней, которая усложняет жизнь. Но я ошибался. Как оказалось, сессии в алхимии - штука очень даже полезная.

Читать далее
Total votes 6: ↑6 and ↓0+6
Comments2

Айтишный пицца-квест. Итоги

Reading time6 min
Views2.4K

Привет! На связи Cloud4Y.

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

Читать далее
Total votes 23: ↑23 and ↓0+23
Comments4

Что стоит знать при переходе на Mac

Reading time9 min
Views89K

Вчера на Хабре вызвал шумиху пост об ужасных неудобствах Mac. В комментариях много было сказано о неинтуитивности macOS: мол, зачастую без гугления не поймёшь, как что-то сделать. И даже не узнаешь, что это вообще возможно сделать. И всё это значит, что с UX что-то не так.

Тут возникает вопрос «а поняли бы мы Windows без гугления, если бы не были знакомы с ней с детства?» Но я хочу не ввязываться в бесконечные споры «какая ОС лучше» а подойти конструктивнее. Действительно, при переходе с Windows возникает ряд неинтуитивных моментов. И чтобы при этом не приходилось гуглить кучу разных вопросов или читать длиннющие пользовательские руководства, я решил описать в одном тексте самые главные вещи, которые приходят мне в голову.

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

Читать далее
Total votes 185: ↑168 and ↓17+151
Comments403

Если вы не чистите зубы, то я их вам почищу: FAQ про гигиену

Reading time12 min
Views118K
image

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

Про чистку зубов есть очень много вопросов, поэтому пробежимся по основным:

  • Что будет, если не чистить зубы?
  • Можно ли чистить зубы редко, но ходить к стоматологу время от времени, чтобы он их вам «мощно почистил»?
  • Как проходит чистка зубов в стоматологии?
  • Почему швейцарцы чистят зубы вообще без пасты?
  • Работает ли жвачка?
  • Какие щётки выбирать и как? Что насчёт электрических?
  • Правда ли, что щётку надо выкидывать, когда хотя бы одна ворсинка отклоняется от вертикали?
  • Зачем нужны скребки для языка, межзубные ёршики, зубная нить и всё остальное?
  • Ирригатор заменяет чистку зубов щёткой?
  • Ополаскиватель для рта — хорошая тема?
  • Когда важнее чистить зубы — утром или вечером?
  • Чем ИТ-специалист отличается от среднего пациента по анамнезу относительно гигиены ротовой полости?
Читать дальше →
Total votes 165: ↑159 and ↓6+153
Comments209

Что такое UX/UI дизайн на самом деле?

Reading time4 min
Views1.1M
Очень много недопонимания в среде дизайнеров и разработчиков. Также много глупых вопросов, связанных с UX и UI у новичков. Часто просто из-за того, что люди не знают сути понятия UX/UI и, не зная о чем говорят, называют вещи не своими именами.

Я хочу раз и навсегда поставить точку и простым понятным языком объяснить, что значит «UX/UI дизайн».

UX/UI дизайн на примере точильных камней
Разные типы интерфейсов для заточки лезвий.

Читать дальше →
Total votes 19: ↑16 and ↓3+13
Comments33

Как я искал пацанский движок для блога

Reading time8 min
Views42K


Я много пишу в интернетах и мне захотелось завести свой личный стэндалон блог, куда можно писать мелкие заметки и статьи, не подходящие для других площадок. Главная проблема личного блога — мне лень оформлять посты. Чтобы черкануть пару строк в каком-нибудь Wordpress, нужно слишком много телодвижений. Я попробовал несколько разных движков и каждый раз ловил себя на ощущении, что мне не хочется ими пользоваться, намного быстрее и проще писать в записную книжку вроде Evernote или Notion. Так я стал искать идеальный движок для блога, отвечающий всем моим потребностям.

Мои требования к идеальному движку:


  • Желательно self-hosted — я пережил много закрытий сервисов, от narod.ru до google+ и точно знаю, что рано или поздно все протухает, поэтому надежнее всего держать контент у себя. Также посты могут удалять по каким-то фейковым жалобам или по DMCA, как это происходит на Medium и LiveJournal.
  • Возможность подключения своего домена — мне нужен сайт-визитка со всеми проектами и ссылками в одном месте, где можно разместить портфолио, резюме, контакты.
  • Минимум телодвижений и интерфейса — в идеале интерфейса CMS вообще не должно быть видно, админская панель не нужна, посты должны редактироваться, создаваться и просматриваться в одном месте.
  • Полноценный WYSIWYG редактор — поддержка разметки Markdown и обработка её в реальном времени, подсветка кода, вставка картинок из буфера обмена.
  • Нормальные комментарии — возможность оставлять анонимные комментарии и авторизовываться через максимум соц. сетей для персонифицированных комментариев.
  • Минималистичный внешний вид — я не хочу заниматься версткой и темами, подходящее оформление должно быть из коробки.


Внутри я рассказываю какой вижу идеальную CMS, редактор постов и комментарии, почему большинство существующих движков устарели на десять лет, и сравниваю между собой разные движки.
Total votes 94: ↑87 and ↓7+80
Comments80

Замена Punto Switcher, раскладки Бирмана с помощью скрипта на autohotkey

Reading time5 min
Views13K
В данной статье я не предлагаю полностью заменить Punto Switcher (Спасибо Сергею Москалёву за данную программу), а только в очень ограниченном функционале. Довольно давно пользуюсь программой Punto Switcher, но не в целях автопереключения, а как переключатель по левому и правому Shift. Ещё со времен Dos мне удобно такое переключение, да и под Windows (особенно это касается 7 версии) мне не надо задумываться, какой там язык окажется в окне, а достаточно нажать левый Shift и мой основной русский уже готов к вводу. Заметьте, что пока правая рука на мышке, то левая уже может или переключать языки или выставить русский всего лишь нажатием на левый Shift, и для этого даже не надо никуда отвлекаться, все делается автоматически. Таким образом, мне всегда было удобно переключать язык на русскую раскладку левым Shift-ом, а английский правым Shift-ом.

Время идёт, и тут понадобилось еще один язык внедрить пользователям, да ещё хотят поддержку раскладки Бирмана, да и других раскладок. Какое это неудобство я смог оценить сам и вот поэтому и пришлось придумывать, на чём это можно сделать. Если взять просто раскладку Бирмана, так по правому Alt если есть горячие клавиши, то они перекрывают эту раскладку и ничего не работает. А таких горячих клавиш полно, так как на каждый ярлык рабочего стола можно быстрый вызов по «Ctrl+Alt+клавиша» навесить. Если же сделать по подобии раскладки Бирмана, но без правого Alt, по клавишам, то проблема переключения кучи этих языков так и так будет стоять.

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

Под катом рисунок «Расширение раскладки клавиатуры в программе «Keybord Assistant 1.0»» и подробное пояснение к этому рисунку.
Читать дальше →
Total votes 20: ↑20 and ↓0+20
Comments32

Пользовательские шорткаты в Windows с помощью Autohotkey

Reading time11 min
Views22K
По следам недавних и не столь недавних публикаций о шорткатах в Windows (1, 2) и Linux решил написать о том, как при помощи программы Autohotkey (Windows-only, инсталлятор, портабельная (zip) версия) можно задавать свои собственные клавиатурные сокращения для тех команд, для которых в системе по умолчанию никаких шорткатов не предусмотрено. Во многом свою роль здесь сыграло желание иметь в Винде те же шорткаты, что и на Маке, на котором я одно время много работал.

Читать дальше →
Total votes 19: ↑16 and ↓3+13
Comments30

Хватит уже бояться субъективно красивых решений в коде — вы же не роботы

Reading time4 min
Views13K


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

Читать дальше →
Total votes 53: ↑33 and ↓20+13
Comments40

Happy Hacking Keyboard

Reading time5 min
Views73K

Преамбула


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



Мне надоели эти баталии, и я решил, что пришло время найти какую-нибудь компактную замену стандартной 104-кнопочной клавиатуре.

Требований было немного: удобная, надежная, матовая (Почему-то маркетологи решили, что потребителям нравится глянец и стали лепить его в промышленных масштабах на всё, чего касается потребительский палец). И механическая.
Читать дальше →
Total votes 59: ↑45 and ↓14+31
Comments223

Используете ли вы цифровой блок клавиатуры?

Reading time11 min
Views26K

Отдаём дань уважения классическому стандарту клавиатур. Ушедший реликт старой вычислительной эпохи? Или необходимая для повышения продуктивности вещь? Давайте разбираться.




Разбираясь с барахлом в моём домашнем кабинете – а в последнее время я точно не один занимаюсь подобными вещами – я сдул пыль с довольно большого количества забытых мною вещей. У меня это была куча электронных устройств, которыми я не пользовался годами — Amazon Echo Dot, Ouya, предоплаченный телефон с кучей отключённых приложений от Google, и т.п.

Под этой кучкой обнаружилось неожиданное: блок дополнительных клавиш для моей беспроводной клавиатуры, которую я использую в ежедневном режиме. У моей модели, Microsoft Sculpt Ergonomic Keyboard, цифровой блок идёт отдельным беспроводным модулем, и я, очевидно, убрал его и забыл об этом. Я упомянул об этом случае в нашем рабочем чате для всяких приколов, с саркастическим замечанием типа «да кто вообще сегодня подобным пользуется?»
Читать дальше →
Total votes 23: ↑19 and ↓4+15
Comments232

Протокол MQTT и открытый проект клиента MQTT на Delphi

Reading time7 min
Views43K

Протокол MQTT применяется для обмена сообщениями в интернете вещей. Интересен прежде всего тем, что поддерживается крупнейшими провайдерами облачных сервисов, такими как IBM, Microsoft, Amazon.
Можно бесплатно получить аккаунт в этих сервисах, настроить там службу приема MQTT сообщений и наблюдать через эти сервисы за жизнью своих устройств, например, в умном доме. Также через эти сервисы устройства могут общаться между собой.

Демонстрация подключения клиента к службе MQTT облака IBM Bluemix прилагается.

Читать дальше →
Total votes 12: ↑9 and ↓3+6
Comments3

Беспроводные устройства Xiaomi в умном доме ioBroker

Reading time9 min
Views43K
Приветствую всех любителей домашней автоматизации. Решил поделиться опытом использования беспроводных Xiaomi устройств с интерфейсом ZigBee. Я, честно говоря, против применения любых беспроводных устройств в любой автоматизации, от серьезных АСУТП больших объектов до малой автоматики типа охранно-пожарной сигнализации или умного дома, но… Решения Xiaomi подкупили дешевизной, доступностью, отличным дизайном и множеством положительных отзывов от пользователей, решил попробовать.

Этот пост следует воспринимать, как пошаговую инструкцию для интеграции ZigBee устройств в инфраструктуру умного дома. Описанное здесь ни в коем случае не является аксиомой и можно найти много других способов подключения ZigBee устройств. Если всё же пропускать детальное описание, то можно составить впечатление о сложности или легкости объединения устройств от разных производителей в одну локальную платформу на примере ZigBee и ioBroker (о нём чуть позже). Я расскажу в этой статье, как подключить устройства к умному дому, отобразить информацию с них на планшете или просто в браузере и отправить сообщения через телеграм о смене состояния устройств. Если я вас заинтересовал, то прошу под кат.
Total votes 35: ↑35 and ↓0+35
Comments36

Information

Rating
Does not participate
Location
Россия
Date of birth
Registered
Activity