Pull to refresh
29
Karma
0
Rating
Артём Старченко @Starche

Tech Lead

Находчивость и смекалка. Как мы теперь чиним железки Cisco

КРОК corporate blog Cisco *Network technologies *Network hardware
✏️ Technotext 2022

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

Читать далее
Total votes 104: ↑102 and ↓2 +100
Views 34K
Comments 97

Релиз Invoke AI 2.0 — интерфейса и инструментария для Stable Diffusion (win/linux/mac)

Python *Image processing *Machine learning *Artificial Intelligence
Sandbox

Привет всем! Сегодня состоялся релиз InvokeAI 2.0: A Stable Diffusion Toolkit, проекта, цель которого — предоставить энтузиастам и профессионалам набор надежных инструментов для создания и редактирования изображений с помощью нейросети. InvokeAI требует всего ~3,5 Гб видеопамяти для создания изображений 512x768 пикселей (и еще меньше для 512х512), и совместим с Windows/Linux/Mac с M1 и M2.

Вау, как круто!
Total votes 24: ↑24 and ↓0 +24
Views 8.9K
Comments 12

«Ленивый сахар» PostgreSQL

Тензор corporate blog High performance *PostgreSQL *SQL *Database Administration *

SQL - декларативный язык - то есть вы описываете "что" хотите получить, а СУБД сама решает, "как" именно она будет это делать. Некоторые из них при этом позволяют им "подсказывать", как именно лучше выполнять запрос, но PostgreSQL - нет.

Тем не менее, "синтаксический сахар" некоторых языковых конструкций позволяет не только писать меньше кода (учите матчасть!), но и добиться, что ваша база будет делать часть вычислений "лениво", только при фактической необходимости.

Читать далее
Total votes 42: ↑42 and ↓0 +42
Views 20K
Comments 15

Распознаем фигуры по массиву точек: эллипсы и не выпуклые фигуры

Abnormal programming *Java *Algorithms *

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

Читать далее
Total votes 12: ↑12 and ↓0 +12
Views 4.2K
Comments 6

Как писать bash-скрипты надежно и безопасно: минимальный шаблон

System administration *Programming **nix *Development for Linux *DevOps *
Translation

Скрипты на Bash. Как много в этом слове. Любому разработчику рано или поздно приходится их писать. Почти никто не скажет "да, я люблю писать bash-скрипты", и поэтому этой теме уделяют мало внимания.

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

Читать далее
Total votes 109: ↑109 and ↓0 +109
Views 56K
Comments 27

Как проходят архитектурные секции собеседования в Яндексе: практика дизайна распределённых систем

Яндекс corporate blog High performance *System Analysis and Design *Industrial Programming *Distributed systems *
✏️ Technotext 2021
Привет, меня зовут Костя Кардаманов, я работаю в отделе технологий разработки Яндекса. Обычно такой же фразой я приветствую и кандидатов на собеседовании. А сегодня я хотел бы рассказать вам, как и зачем мы проводим интервью по дизайну систем с бэкенд-разработчиками. Сразу скажу: для фронтендеров, мобильных разработчиков и ML-инженеров подобный тип собеседований применим слабо, так что эти специальности мы здесь обсуждать не будем.

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

Что такое дизайн информационных систем


Основная цель любой IT-компании — производить сервисы, которые решают задачи пользователей. Мы должны уметь собирать элементы системы в единый механизм, который будет эффективно выполнять поставленную цель, и если первый тип собеседований нацелен в первую очередь на проверку необходимого минимума, то интервью про дизайн систем проверяет достаточность навыков кандидата в достижении конечной цели. Далекому от IT пользователю принципы и устройство систем могут казаться бесконечно сложными, но мы, их разработчики, должны иметь (не обязательно детальное) представление о принципах функционирования и роли каждого компонента.

Опытный читатель может сказать — в мире полно платных и бесплатных решений, из которых я могу собрать систему как из деталей конструктора, зачем мне понимать устройство этих деталей?
Читать дальше →
Total votes 94: ↑92 and ↓2 +90
Views 75K
Comments 37

Лучшее в мире видео-объяснение нейронных сетей, глубокого обучения, градиентного спуска и обратного распространения

Image processing *Machine learning *Studying in IT Popular science Artificial Intelligence
image

Видео от 3Blue1Brown отличаются поразительной понятностью и лаконичностью. Делать конспект видеоуроков по нейронным сетям у меня не получилось, ибо это была бы просто раскадровка, да и особая магия динамики именно видео непросто передать.

Из комментариев к прошлым публикациям мне стало понятно, что есть большое количество людей, кто не знает про канал, поэтому хочу поделиться четырьмя видео (+ русские субтитры и дубляж) и сэкономить время школьникам, родителям и учителям, чтобы они могли иметь быстрый доступ к самому интересному и качественному объяснению одной из самых важных тем современности.
Total votes 65: ↑61 and ↓4 +57
Views 53K
Comments 24

Обновление версий PostgreSQL, или Как не уронить базу при update?

Домклик corporate blog PostgreSQL *
Мы решили поделиться памяткой (чеклистом) нашей команды по обновлению PostgreSQL. В ней мы взяли за основу фичи, представленные в релизе официальной документации PostgreSQL, провели анализ на предмет нарушения совместимости и кому стоит обратить внимание на обновленную функциональность.

Читать дальше →
Total votes 72: ↑61 and ↓11 +50
Views 32K
Comments 21

Как мы ловим Deadlock`и на PostgreSQL и чиним их

Lesta Studio corporate blog Python *PostgreSQL *

Предисловие


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

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


Читать дальше →
Total votes 35: ↑32 and ↓3 +29
Views 53K
Comments 27

Настраиваем top в GNU/Linux

Cloud4Y corporate blog Configuring Linux **nix *
Однажды мой знакомый, который на тот момент администрировал некое веб-приложение на сервере под управлением GNU/Linux, пожаловался на одного вредного администратора сервера. Тот ни в какую не хотел устанавливать htop, несмотря на все просьбы.

Я немного удивился и поинтересовался, в чём причина такого странного поведения. Если упростить, то дальнейший наш диалог получился вот таким:
Читать дальше →
Total votes 84: ↑81 and ↓3 +78
Views 42K
Comments 69

Ущербно-ориентированное программирование

Abnormal programming *Programming *Designing and refactoring *
Translation
Ущербно-ориентированное программирование — это набор подходов, поощряющий повторное использование кода и гарантирующий долгосрочное использование производимого программистами кода в боевых системах. Количество строк кода является повсеместно применяемым показателем значимости приложения, а количество строк, которые программист пишет за рабочий день — полезная метрика, применяемая при планировании проектов и распределении ресурсов. Ущербно-ориентированное программирование — это один из наиболее эффективных способов получить наиболее объемный исходник в кратчайшие сроки.

Ущербный — имеющий изъян, неполноценный. Вредный, недостаточный.

Наследование


Наследование — это способ получить возможности старого кода в новом коде. Программист наследуется от существующей функции или блока кода, копируя этот кусок к себе и внося правки. Унаследованный код, как правило, конкретизируется под новые нужды с помощью возможностей, которые не поддерживал старый код. В таком смысле, старый код остается нетронутым, но новый наследуется от него.
Читать дальше →
Total votes 203: ↑174 and ↓29 +145
Views 87K
Comments 115

Information

Rating
Does not participate
Location
Киев, Киевская обл., Украина
Date of birth
Registered
Activity