Pull to refresh
13
0
Павел Семенов @lichnost

Тех. лид / Архитектор ПО

Send message

Борьба за эффективность: рынок low-code в объятиях искусственного интеллекта

Level of difficultyEasy
Reading time15 min
Views2.5K

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

Рассмотрим рынок Low-Code в России с прогнозом до 2031 года, а в конце статьи расскажем про Low-Code платформу Росатома

Подробнее
Total votes 3: ↑3 and ↓0+3
Comments4

Вёрстка — это не тупо

Level of difficultyMedium
Reading time3 min
Views9.7K

Небольшая сводка ошибок которые встречались во Frontende и Вёрстке за время работы с разными проектами. Конечно это очень малая часть и только те ошибки которые постоянно повторяются. Но всё же давайте пробежимся хотя бы по ним.
Мб кому-то этого и не хватало))

Читать далее
Total votes 14: ↑12 and ↓2+10
Comments23

OpenConnect: недетектируемый VPN, который вам понравится

Level of difficultyMedium
Reading time15 min
Views236K

Я уже написал здесь много статей на тему прокси-протоколов и прокси-клиентов, которые очень сложно детектировать и заблокировать, и которые используют пользователи в Китае, Иране, Ираке, Туркменистане, и теперь вот в России (мы здесь в отличной компании, правда?). Но довольно часто мне в комментариях писали, мол, это все отлично, но мне нужен именно VPN для целей именно VPN - доступа в частные локальные сети, либо для соединения клиентов между собой, и желательно так, чтобы его не заблокировали обезьяны с гранатой. Поэтому сегодня мы поговорим именно о VPN.

Классические OpenVPN, Wireguard и IPSec отметаем сразу - их уже давно умеют блокировать и блокировали не раз. Модифицированный Wireguard от проекта Amnezia под названием AmneziaWG — отличная задумка, но есть одно но...

Читать далее
Total votes 273: ↑272 and ↓1+323
Comments342

Алло, мы ищем таланты! Стажировка в IT как инвестиция в черную дыру?

Level of difficultyEasy
Reading time4 min
Views13K

Предыстория для данного поста началась чуть больше года назад, когда я решил собрать команду из пары PreJunior-разработчиков без опыта работать над своим open source проектом.

Если хотите узнать:

Как попасть в оплачиваемую интернатуру на разработчика к нам в команду?

Сколько в деньгах, времени и нервах ментора стоит вырастить миддла из не окрепшего юниора?

Зачем мне лично нужен весь этот геморрой?

Читать далее
Total votes 5: ↑3 and ↓2+4
Comments10

Generative AI. Как программистам держать нос по ветру

Level of difficultyMedium
Reading time11 min
Views12K

Вряд ли найдётся тот, кто ещё не знаком с ChatGPT, Midjourney, StableDiffusion - такая популярность говорит сама за себя. Хайп вокруг генеративного искусственного интеллекта (далее - ИИ) не утихает и уже начинает немного надоедать. Но мы, как разработчики, должны оставаться в курсе событий и принимать реальность такой, какая она есть.

А реальность такова:

• Использование Copilot и его аналогов, ChatGPT и других генеративных нейросетей увеличивает вашу продуктивность.

• Бизнес активно ищет возможности оптимизировать процессы или внедрить новые фичи на основе генеративного ИИ.

Давайте разберём каждое из этих утверждений.

Читать далее
Total votes 18: ↑16 and ↓2+16
Comments0

Как квантовые вычисления могут повлиять на разработку ПО

Reading time11 min
Views10K
Всем привет!

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


Читать дальше →
Total votes 16: ↑14 and ↓2+12
Comments13

Теперь я тимлид, но почему мне так плохо? Практические советы

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



То, что доклад на эту тему был признан лучшим на конференции для тимлидов и о тимлидах, показывает, насколько действительно часто встречается такая ситуация. Но надо признать, конечно, что Евгений Кот (bunopus) заработал это «признание» еще и великолепным перформансом. С удовольствием делимся с вами его записью.
Total votes 52: ↑51 and ↓1+50
Comments9

Аспирантка решила задачу подтверждения квантовых вычислений

Reading time11 min
Views63K

Урмила Махадев провела восемь лет в магистратуре в поисках ответа на один из наиболее базовых вопросов квантовых вычислений: откуда нам знать, что квантовый компьютер сделал хоть что-то на квантовом уровне?




Весной 2017 года Урмила Махадев оказалась в неплохом положении, с точки зрения большинства аспирантов. Она только что решила важнейшую проблему квантовых вычислений – области изучения компьютеров, черпающих свои возможности из странных законов квантовой физики. Вместе с более ранними её работами, новый результат Махадев, описывающий т.н. «слепые вычисления», сделал «очевидным тот факт, что она является восходящей звездой», — сказал Скот Ааронсон, специалист по информатике из Техасского университета в Остине.

Махадев, которой на тот момент было 28, уже седьмой год была в магистратуре в Калифорнийском университете в Беркли – гораздо дольше, чем срок, который требуется большинству студентов, чтобы потерять терпение и захотеть уже закончить обучение. И вот, наконец, она смогла составить «прекрасную докторскую диссертацию», — сказал Умеш Вазирани, её куратор в Беркли.
Читать дальше →
Total votes 90: ↑79 and ↓11+68
Comments109

Невыдуманные IT-истории о самозванцах и почему появились эти непонятные практики на собеседованиях

Reading time8 min
Views97K

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

Несколько дней назад Филипп fillpackart Ранжин выпустил статью под заголовком «Хватит подозревать разрабов в самозванстве. Научитесь лучше собеседовать», в которой поднял очень острую для индустрии проблему неадекватных собеседований. Я ее прочитал, ужаснулся, прочитал еще раз и задумался: «а почему вообще такая фигня происходит?». С этим вопросом я отправился к паре знакомых HR-специалистов и директору Crossover Russia Владимиру vme Еронину (что в итоге вылилось в статью в блоге) и, как оказалось, ноги подобных неприятных и непонятных практик растут, как обычно, не из нашей собственной культуры найма.

К сожалению, тренд на слепое копирование всего и вся, «чтоб было не хуже, чем на Западе», жив и в 2018 году. И если в иностранных компаниях подобные вещи хоть как-то можно оправдать, закрыв глаза на градус маразма, то для России и стран СНГ множество из выработанных заокеанскими коллегами механизмов вообще неприменимы. Вот только не все HR-специалисты и руководители это понимают.

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

Так что, если вы считаете, что самозванцев в IT не существует и никто не будет в здравом уме проходить собеседование на Senior Java, не имея достаточных навыков, то добро пожаловать под кат, я вас удивлю.
Читать дальше →
Total votes 155: ↑138 and ↓17+121
Comments243

Человек-функция или перестаньте нанимать технологии

Reading time6 min
Views39K
Не думал что соберусь писать об этом статью и тем более на Хабр, но, как говорится, «с этим надо что-то делать». Наболело.

За 10 лет своей карьеры сначала Системным Администратором, потом Системным Инженером и DevOps-ом, успев побыть простым исполнителем, тех- и тим-лидом, я посетил и провел десятки собеседований в компаниях разного размера в разных странах, учувствовал в формировании требований при поиске сотрудников и… ребята, найм — это мрак.

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

Попробую объяснить почему.
Читать дальше →
Total votes 72: ↑71 and ↓1+70
Comments241

KPI — три буквы преткновения

Reading time11 min
Views26K
Disclaimer: в этой статье есть целый блок рассуждений о том, как считать показатели KPI для сотрудников-программистов и разработчиков — по многочисленным просьбам читателей.

KPI обсуждаются на конференциях, про KPI пишут сложные статьи в журналах, KPI ненавидят сотрудники и недолюбливают боссы. KPI своей медалькой и работой считают HR-специалисты. И почти всё это с KPI происходить не должно, потому что это обыденная метрика, показывающая результативность каждого сотрудника и обеспечивающая конвертацию результатов труда в некие баллы, а уже баллы при желании в деньги. Время идёт, проблемы не убывают, KPI в ИТ-сфере — так вообще притча во языцех. В этот раз мы решили разобрать три важных вопроса использования ключевых показателей в компаниях. Даёшь тянуть правильную морковку!


KPI должен быть правильным
Total votes 46: ↑38 and ↓8+30
Comments186

Поиск узлов дисперсии управления (как перестать делать тупую работу и передать её другому)

Reading time6 min
Views38K


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

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

Чаще случается, что не хватает каких-то кусков власти или ответственности. И мы тут на десятом году развития компании внезапно нашли работающую модель для того, чтобы понимать сразу, чего не хватает. То есть так же лажать, но чуть реже.
Читать дальше →
Total votes 108: ↑104 and ↓4+100
Comments72

Памятки по искусственному интеллекту, машинному обучению, глубокому обучению и большим данным

Reading time4 min
Views36K


В течение нескольких месяцев мы собирали памятки по искусственному интеллекту, которыми периодически делились с друзьями и коллегами. В последнее время сложилась целая коллекция, и мы добавили к памяткам описания и/или цитаты, чтобы было интереснее читать. А в конце вас ждёт подборка по сложности «О большое» (Big-O). Наслаждайтесь.

UPD. Многие картинки будут читабельнее, если открыть их в отдельных вкладках или сохранить на диск.
Читать дальше →
Total votes 51: ↑47 and ↓4+43
Comments9

Нейронные сети для начинающих. Часть 1

Reading time7 min
Views1.5M
image

Привет всем читателям Habrahabr, в этой статье я хочу поделиться с Вами моим опытом в изучении нейронных сетей и, как следствие, их реализации, с помощью языка программирования Java, на платформе Android. Мое знакомство с нейронными сетями произошло, когда вышло приложение Prisma. Оно обрабатывает любую фотографию, с помощью нейронных сетей, и воспроизводит ее с нуля, используя выбранный стиль. Заинтересовавшись этим, я бросился искать статьи и «туториалы», в первую очередь, на Хабре. И к моему великому удивлению, я не нашел ни одну статью, которая четко и поэтапно расписывала алгоритм работы нейронных сетей. Информация была разрознена и в ней отсутствовали ключевые моменты. Также, большинство авторов бросается показывать код на том или ином языке программирования, не прибегая к детальным объяснениям.

Поэтому сейчас, когда я достаточно хорошо освоил нейронные сети и нашел огромное количество информации с разных иностранных порталов, я хотел бы поделиться этим с людьми в серии публикаций, где я соберу всю информацию, которая потребуется вам, если вы только начинаете знакомство с нейронными сетями. В этой статье, я не буду делать сильный акцент на Java и буду объяснять все на примерах, чтобы вы сами смогли перенести это на любой, нужный вам язык программирования. В последующих статьях, я расскажу о своем приложении, написанном под андроид, которое предсказывает движение акций или валюты. Иными словами, всех желающих окунуться в мир нейронных сетей и жаждущих простого и доступного изложения информации или просто тех, кто что-то не понял и хочет подтянуть, добро пожаловать под кат.
Читать дальше →
Total votes 70: ↑60 and ↓10+50
Comments64

Нейронные сети в картинках: от одного нейрона до глубоких архитектур

Reading time7 min
Views96K
Многие материалы по нейронным сетям сразу начинаются с демонстрации довольно сложных архитектур. При этом самые базовые вещи, касающиеся функций активаций, инициализации весов, выбора количества слоёв в сети и т.д. если и рассматриваются, то вскользь. Получается начинающему практику нейронных сетей приходится брать типовые конфигурации и работать с ними фактически вслепую.

В статье мы пойдём по другому пути. Начнём с самой простой конфигурации — одного нейрона с одним входом и одним выходом, без активации. Далее будем маленькими итерациями усложнять конфигурацию сети и попробуем выжать из каждой из них разумный максимум. Это позволит подёргать сети за ниточки и наработать практическую интуицию в построении архитектур нейросетей, которая на практике оказывается очень ценным активом.
Читать дальше →
Total votes 67: ↑62 and ↓5+57
Comments53

Предсказания будущего в фильме «Космическая одиссея 2001 года»: 50 лет спустя

Reading time38 min
Views39K

Здесь и далее ссылки с кадров фильма ведут на видео с соответствующими сценами

Мимолётное видение будущего


Был 1968 год. Мне было 8 лет. «Космическая гонка» была в самом разгаре. Недавно в первый раз космический зонд опустился на поверхность другой планеты (Венеры [это была советская автоматическая межпланетная станция "Венера-3" / прим. перев.]). Я жадно изучал всё, что было связано с космосом.

Затем 3 апреля 1968 года (в Британии – 15 мая) вышел фильм "Космическая одиссея 2001 года", и мне очень хотелось его увидеть. Поэтому в начале лета 1968 я впервые в жизни попал в кинотеатр. Меня привезли посмотреть дневной показ, и я был практически единственным зрителем в зале. По сей день я помню, как сидел на плюшевом кресле и с нетерпением ожидал, когда поднимут занавес и начнётся кино.
Total votes 37: ↑35 and ↓2+33
Comments32

Нейросетевой синтез речи своими руками

Reading time12 min
Views94K
Синтез речи на сегодняшний день применяется в самых разных областях. Это и голосовые ассистенты, и IVR-системы, и умные дома, и еще много чего. Сама по себе задача, на мой вкус, очень наглядная и понятная: написанный текст должен произноситься так, как это бы сделал человек.

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



Я решил попробовать сделать полностью нейросетевой синтез своими руками, а заодно и поделиться с сообществом своим опытом. Что из этого получилось, можно узнать, заглянув под кат.
Total votes 62: ↑61 and ↓1+60
Comments22

Квантовые вычисления: справочные материалы

Reading time3 min
Views12K
А вы любите шпаргалки? Мы обожаем и поэтому сегодня публикуем статью, в которой собрана вся самая главная информация о квантовых вычислениях. Мы собрали её из пяти статей по теме, которые вышли до этого. Но самое главное — это только шпаргалка, а не quick-guide для новичков. Новичкам советуем изучать все статьи целиком, ссылки есть в списке под катом!

Читать дальше →
Total votes 15: ↑15 and ↓0+15
Comments11

Разбор основных концепций параллелизма

Reading time17 min
Views66K
Всем кофе!

Завтра у нас плавненько стартует практически юбилейный поток курс «Разработчик Java» — уже шестой по счёту начиная с апреля прошлого года. А это значит, что мы снова подобрали, перевели интереснейший материал, которым делимся с вами.

Поехали!

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

РАЗДЕЛ 1

Вступление

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

РАЗДЕЛ 2

Концепции

Концепция Описание
Atomicity (атомарность) Атомарная операция — это операция, которая выполняется полностью или не выполняется совсем, частичное выполнение невозможно.
Visibility (видимость) Условия, при которых один поток видит изменения, сделанные другим потоком

Таблица 1: Концепции параллелизма

Читать дальше →
Total votes 17: ↑15 and ↓2+13
Comments12

Мифы о кэше процессора, в которые верят программисты

Reading time6 min
Views75K
Как компьютерный инженер, который пять лет занимался проблемами кэша в Intel и Sun, я немного разбираюсь в когерентности кэша. Это одна из самых трудных концепций, которые пришлось изучить ещё в колледже. Но как только вы действительно её освоили, то приходит гораздо лучшее понимание принципов проектирования систем.

Вы можете удивиться: зачем же разработчику ПО думать о механизме кэширования в CPU? Отвечу. С одной стороны, многие понятия из концепции когерентности кэша непосредственно применимы в распределённых системах и на уровнях изоляции СУБД. Например, представление реализации когерентности в аппаратных кэшах помогает лучше понять разницу в моделях согласованности (консистентности) — отличие строгой согласованности (strong consistency) от согласованности в конечном счёте (eventual consistency). У вас могут появиться новые идеи, как лучше обеспечить согласованность в распределённых системах, используя исследования и принципы из аппаратного обеспечения.

С другой стороны, неправильные представления о кэшах часто приводят к ложным утверждениям, особенно когда речь идёт о параллелизме и состоянии гонки. Например, часто говорят о трудности параллельного программирования, потому что «у разных ядер в кэшах могут быть разные/устаревшие значения». Или что квалификатор volatile в языках вроде Java нужен, чтобы «предотвратить локальное кэширование общих данных» и принудительно «читать/записывать только в основную память».
Читать дальше →
Total votes 75: ↑70 and ↓5+65
Comments72

Information

Rating
Does not participate
Location
Краснодар, Краснодарский край, Россия
Date of birth
Registered
Activity

Specialization

Backend Developer, Software Architect
Lead
From 600 ₽
Development management
Startup management
People management
Software development
Java
JavaScript
Python
CI/CD
Designing application architecture