Pull to refresh
8
0
Send message

Такие разные CTO – как выбрать свой типаж

Level of difficultyEasy
Reading time7 min
Views3.5K

Роль CTO комплексна и многогранна. Здесь и менеджерские функции, и технологическая экспертиза, и стратегия. Функция CTO индивидуальна, едва ли не в каждой компании. Почему? Факторов много. Сфера бизнеса, технологичность компании, ее размер, даже этап развития.

В статье разберем основные типы CTO: какие они бывают, от чего это зависит, какие есть особенности у каждого. И наведем порядок в категоризации CTO.

Читать далее
Total votes 18: ↑10 and ↓8+7
Comments5

SOLID в Swift. Простое объяснение с примерами для начинающих

Level of difficultyMedium
Reading time3 min
Views13K

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

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

Читать далее
Total votes 10: ↑9 and ↓1+14
Comments20

Типичная задача на собеседовании: URL Shortener

Level of difficultyMedium
Reading time6 min
Views36K

Один из моих знакомых недавно сходил на собеседование, на котором его попросили спроектировать укорачиватель ссылок. Он растерялся и задачу — как хотел интервьюер — не осилил, а потом нашел в интернете популярное решение и попросил меня прокомментировать. Полная формулировка поставленной проблемы: «Как бы вы разработали службу сокращения URL-адресов, подобную TinyURL

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

Читать далее
Total votes 39: ↑23 and ↓16+15
Comments98

Новый перспективный веб-фреймворк Cample.js. Реактивность без VDOM

Level of difficultyMedium
Reading time2 min
Views12K

Всем привет! В данной статье я бы хотел рассказать о таком фреймворке как Cample.js.

На сегодняшний момент (версия 3.0.1), фреймворк является активно поддерживаемым в разработке нового функционала. Есть поддержка работы с данными, которые благодаря реактивности без виртуального DOM отображаются крайне быстро. Пример тестов.

Читать далее
Total votes 4: ↑3 and ↓1+6
Comments56

Как я потратил 100к рублей, чтобы удобно вести списки

Level of difficultyEasy
Reading time3 min
Views32K

Короче, меня задолбало, что списки всё время теряются. 

Раз за разом повторяется одна и та же ситуация. Знакомый советует фильм, я открываю заметки, где-то записываю. И эта запись навсегда растворяется в мировом пространства. 

Это происходит со всеми списками. С идеями, знакомствами, заметками из книг, местами, где я был. Вся эта бесконечная череда списков постоянно теряется. Ты постоянно начинаешь их заново. Может бы это я такой странный, а другие ответственно всё раскладывают по полочкам. 

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

Душа просила простого решения
Total votes 29: ↑26 and ↓3+28
Comments78

Нетоксичное общение в команде

Level of difficultyEasy
Reading time7 min
Views8.2K

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

Автор понимает, что сам неидеален в том, о чём пишет, но старается двигаться в правильном направлении.

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

Если это не так, и настроя на сотрудничество, помощь друг другу, на хорошее отношение друг к другу нет в принципе, — то все эти дальнейшие пункты не помогут. В данной статье мы НЕ рассматриваем такую ситуацию и что с ней делать.

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

Читать далее
Total votes 12: ↑7 and ↓5+5
Comments18

В командах с хорошей продуктивностью выкладываются не более чем на 85%

Reading time7 min
Views9.5K
Хотя некоторые компании и предпринимают подобные попытки, современную культуру выгорания не исправишь приложением для здорового образа жизни. Для этого потребуется изменение культуры в организациях и отношения к проблеме у руководства.

Традиционный подход


Устаревшее представление о высокой производительности можно сформулировать так: «максимум усилий = максимальный результат». На деле всё работает иначе, но многие управленцы до сих пор убеждены в верности этой формулы. Порассуждать о том, что «нужно заботиться о себе», они любят, но в своих базовых установках близки плохим ораторам-мотиваторам прямиком из 80-х («Без боли нет результата», «Без риска нет славы,» «Выложись на 110%» и всё в таком духе).

Когда руководители ожидают, что сотрудники будут отрабатывать по восемьдесят часов в неделю, и в то же время предлагают антистрессовые занятия йогой по пятницам, они создают вредоносное противоречие. Это классический пример того, что в психологии называют двойным посланием. Сотрудникам нельзя озвучивать это противоречие и озвучивать запрет тоже нельзя.
Читать дальше →
Total votes 18: ↑17 and ↓1+21
Comments8

Концепция «эстафеты» как альтернатива спринта

Level of difficultyEasy
Reading time5 min
Views3.5K

Эта статья мотивирована желанием выжать разработчика дать возможность разработчикам реализовать свой потенциал максимально и во многом опирается на книгу "Team Topologies" (Matthew Skelton and Manuel Pais).

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

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

Читать далее
Total votes 5: ↑2 and ↓30
Comments28

Заражённый разум

Reading time15 min
Views31K

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

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

Читать далее
Total votes 173: ↑163 and ↓10+188
Comments146

Пособие по программированию модулей ядра Linux. Ч.1

Reading time19 min
Views41K

Перед вами последняя версия пособия по программированию модулей ядра Linux, вышедшего 2 июля 2022 года. Пособие большое, поэтому материал будет разбит на серию статей. В первой части мы разберём, что такое модули ядра, рассмотрим необходимые подготовительные этапы для их создания и в завершении по традиции напишем первый простейший модуль «Hello world», попутно разобрав вопросы лицензирования, передачу аргументов командной строки и прочие нюансы. Это пособие вы можете смело воспроизводить и изменять в соответствии с условиями Open Software License v 3.0.
Читать дальше →
Total votes 43: ↑43 and ↓0+43
Comments4

Что под капотом у нейронной сети. Нейросеть c точки зрения математики и программирования

Level of difficultyEasy
Reading time3 min
Views28K

Цель данной публикации – комплексное рассмотрение строения искусственных нейронных сетей c точки зрения и математики и программного кода. В данной работе нейронная сеть реализуется на языке Python с использованием библиотеки tensorflow.keras. Статья сосредоточена в основном на строении и функционировании искусственной нейронной сети, поэтому такие этапы как обучение и т.д. в ней не затрагиваются.

Читать далее
Total votes 28: ↑15 and ↓13+9
Comments28

Как заставить программистов пахать? 5 неочевидных советов

Level of difficultyEasy
Reading time4 min
Views79K

Для начало придется забыть слово заставить. Задача помочь сотрудникам полюбить зарабатывать вам деньги.

Меня зовут Слава. Я создал и развалил сеть ночных клубов, прошел 300 собеседований на маркетолога, проработал как подрядчик и сотрудник в более 50 компаниях. Сейчас занимаюсь системным маркетингом.

Там, где я работал, были разные системы управления, но всегда работал один и тот же принцип.

Читать далее
Total votes 156: ↑135 and ↓21+136
Comments283

Made at Intel. Притчи

Level of difficultyEasy
Reading time10 min
Views24K

Так получилось, что, наверно, лучшее время из моей более чем 20-летней карьеры в Интел я провел в Developer Relations Division — DRD (2005–2013). В его задачу входила работа с производителями софта по всему миру и отчасти поддержка продаж. Моим непосредственным начальником в тот момент был Пареш Г. Паттани, а его — ХрИстос Георгиопулос. Этот занятный персонаж уже встречался нам здесь. Христос был этническим греком, но довольно нетипичным — высоким, светловолосым и голубоглазым. До Интел успел поработать в CERN в области ядерной физики. Несколько раз бывал на конференциях в России и кое-что разбирал по‑русски. Фраза «Зовите меня просто ХристОс» сказанная на языке Гоголя и Достоевского всегда приводила нас в восторг. Обладал хорошим и тонким чувством юмора. Даже я (отнюдь не самый скучный парень) понимал далеко не все его шутки. Но также, он достаточно глубоко мыслил, и я много чего у него набрался. Все мы тогда очень неплохо ладили — это время осталось у меня в памяти некоторым количеством веселых и поучительных историй. Некоторые из них я приведу в этой главе.

Читать далее
Total votes 125: ↑122 and ↓3+150
Comments21

Руководство по Кросс-Платформенному Системному Программированию для UNIX и Windows: Уровень 1

Reading time68 min
Views11K

С помощью этого учебного материала мы научимся писать кросс-платформенный код на Си, используя системные функции популярных ОС (Windows, Linux/Android, macOS и FreeBSD): управление файлами и файловый I/O, консольный I/O, пайпы (неименованные), запуск новых процессов. Мы напишем свои небольшие вспомогательные функции поверх низкоуровневого системного АПИ (API), для того чтобы наш основной код, используя эти функции, мог работать на любой ОС без изменений. Этот учебный материал — начального уровня. Я делю сложные вещи на части, чтобы примеры кода здесь не были слишком заумными для тех, кто только что начал программировать на Си. Мы обсудим различия между системными АПИ и разберёмся, как создать кросс-платформенный программный интерфейс, который скрывает все эти различия от пользователя этого интерфейса.

Читать далее
Total votes 20: ↑19 and ↓1+24
Comments27

Когнитивистика и футурология: как наши фантазии могут повлиять на наше будущее

Reading time28 min
Views5.7K
Можно управлять тем, что можно представить.
Нельзя управлять тем, что нельзя представить.
Это относится и к нашему будущему.


Так не стоит ли обратить внимание не только на моделирование будущего, но и на наши возможности интерпретации полученных результатов?

Где простираются границы нашей возможности фантазировать и представлять? И – самое главное – можем ли мы предложить какой-нибудь осмысленный инструмент для их измерения?..
Читать дальше →
Total votes 9: ↑8 and ↓1+11
Comments13

Made at Intel. Специалист по этике

Level of difficultyEasy
Reading time8 min
Views19K

Название позаимствовано у Гарри Гарриcона. Но речь у нас пойдет сегодня не о фантастике, а о намного более приземленных вещах. Всякого рода рода Ethics&Compliance кейсах, о том как они разруливаются ... или не разруливаются.

Как я не стал чемпионом   

Начну с веселого случая. В 2013-м меня только назначили GMом интелового RND в России. И прилетела к нам тем летом девочка из Израиля — Ethics&Compliance. Cовсем молоденькая, только что институт закончила. Это, вообще может быть ее первая рабочая командировка была. Ортодоксальная еврейка, не из бывших наших. Так что общались на английском, он у нее очень хороший, почти без акцента. Что девочке от меня надо было я примерно понимал, только вот делать этого мне ужасно не хотелось, поэтому искал какой‑нибудь легитимный повод, чтобы соскочить.

Читать далее
Total votes 77: ↑71 and ↓6+90
Comments47

Спик инглиш, парле франсэ, шпрехен зи дойч, 说中文: дайджест для тех, кто идёт до конца

Level of difficultyEasy
Reading time7 min
Views11K

Этот дайджест я планировала выпустить в пятницу. В попытках сделать заголовок чуть интереснее, я забила в переводчик «говорить по-китайски», он мне выдал 说中文. По привычке проверила перевод в обе стороны, вроде всё адекватно. «А вдруг не так и китаисты с Хабра меня поправят?», — подумала я и полезла за фактчекингом, в ходе которого выяснила, что есть 汉语 — китайский устный и 中文 — китайский письменный, но 汉语 мало используется в повседневной речи и больше в академической среде, а ещё есть ультрапросторечной 中国话. И вообще версия 中文 выжила другие, потому что в официальных документах и буклетах китайский язык обозначается именно так. Далее я погрузилась в чтение статей про иероглифы, символику баланса и центра мира, многонациональный Китай… Короче, глубокая ночь воскресенья, я доделываю дайджест и думаю, что нужно почитать про остальные иероглифы. 

Иногда поражаешься, какие триггеры срабатывают и превращают зубрёжку неправильных глаголов в удовольствие! Когда-то именно чтение книги о французских колониях (государствах Магриба) дало мне наибольший толчок в изучении французского языка: почему-то загадочный мир Северной Африки в звучании парижской речи показался мне даже более привлекательным, чем традиционно манкие Лувр, Версаль, Канны, порт Бордо и Марсель. А ведь на тот момент мне казалось, что я ненавижу все эти глаголы, грависы и проч. 

А вообще, меня давно тревожит мысль: а знаю ли я язык достаточно хорошо? А насколько хорошо знают остальные? А почему один знакомый говорит как native speaker, а второй из его же группы — «иняз финишд»? Делитесь историями и достижениями, а я расскажу, что меня вдохновило в 37 лет сесть за учебники и начать качать французский с твёрдой целью дойти до устойчивого финиша.

Читать далее
Total votes 18: ↑17 and ↓1+26
Comments43

Поэтический редактор: Rust + Tauri

Reading time16 min
Views9.7K

В чём-то сочинение стихов похоже на написание кода — имеет значение только "чистый" текст — и этот текст, как и код, подчиняется определенным правилам. Поэту могли бы пригодиться те самые "автоподсказки" и подсветка кода стихов. Может, даже с какой-то поддержкой рефакторинга, помочь поэту найти слабое место. Но найти что-то подобное (особенно на русском языке) у меня не вышло. Например, на запрос poetry editor в основном выпадают сервисы по найму редакторов-людей. Проекты, конечно, есть, но они либо слабые, либо мёртвые (поправьте меня, если я неправ).

Значит, задумал я на коленках склепать IDE для поэтов…

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

Моя первая книга по Java

Reading time4 min
Views4.2K

Статья о том, как я написал и полностью довёл до издания мою первую книгу по Java, про что эта книга, какие у неё особенности и где можно её купить. Приводится список глав с кратким описанием их содержания.

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

Плохие уроки дебатов

Reading time7 min
Views7.3K


Будучи студентом, я играл в классические дебаты по формату Карла Поппера с элементами политического кейса. Это такой КВН для любителей поспорить. В том смысле, что это игра, она для студентов, и такая деятельность оптимизирует какие-то навыки. А вот какие именно, это интересно понять. Давайте разберёмся, какое влияние оказывает на ваше мышление умение хорошо спорить.

Подебатировать
Total votes 25: ↑23 and ↓2+26
Comments53

Information

Rating
Does not participate
Registered
Activity