Search
Write a publication
Pull to refresh
77
0
Send message

Пора закончить холодную войну между DevOps и разработчиками ПО

Reading time6 min
Views5.9K

Если бы нам довелось прочитать разговор в Slack между разработчиком ПО и инженерами DevOps, то он мог бы выглядеть примерно так:

Разработчик ПО: Это займёт кучу времени. «Мне нужно новое окружение для моего приложения».

Два часа спустя…

DevOps: Почему разработчики ПО думают, что я умею читать мысли!? «Ладно, а какие типы инстансов вам нужны?»

Час спустя (после обсуждения с командой…)

Разработчик ПО: «Мне нужен g3.8xlarge для тестирования новой функции визуализации».

На следующий день…

DevOps: «Хорошо, а в какой AZ он должен находиться? И ещё с какой группой безопасности он должен быть связан?»

Разработчик ПО: Они что, не знают всего этого сразу? «Любая AZ в us-west-1, группа sg-3164z279».
Читать дальше →

Практика vs. CGI: краткий экскурс в главные дебаты вокруг спецэффектов в фильмах ужасов

Reading time14 min
Views5K

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

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

Помимо этого, читателей ждёт бонус — мы перейдём от слов к делу и войдём в роль современных 3D-артистов, попробовав свои силы для создания ролика, способного появиться в кино, используя для этого только наши дремучие офисные ПК и облачные мощности RUVDS. Не переключайтесь, будет жутко интересно!
Читать дальше →

Операционные усилители. Часть 7: Операционные усилители на лампах

Level of difficultyHard
Reading time7 min
Views8.3K

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

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

История эта началась в январе 1952 года, когда Джордж Филбрик (George Philbrick) и его компания GAP/R (George A. Philbrick Researches, Inc) выпустили операционный усилитель K2-W на двух лампах 12AX7.

Термин «операционный усилитель» появился задолго до этого, ещё в ранние сороковые. Лампы 12AX7 стали массово выпускаться, начиная ещё с 1948 года. Для усиления сигналов электронные лампы стали применяться прямо с момента их создания в 1906 году. Что же изменилось?
Читать дальше →

Инструменты мониторинга производительности приложений: зачем они нужны и как используются

Reading time6 min
Views4K

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

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

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

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

Я не узнаю о том, что моё приложение сломано благодаря тому, что клиент сообщит об ошибке напрямую. Такие клиенты не сообщают о багах или ошибках; они просто перестают пользоваться приложением и ищут другую команду, которая работает более слаженно.

За более чем десять лет работы разработчиком ПО я много времени тратил на поиск лучших инструментов для повышения моей продуктивности.
Читать дальше →

Упс и опаньки… Юмору не место в сообщениях об ошибках

Reading time5 min
Views31K

Сообщения об ошибках — чуть ли не единственное место, где пользователь программы может напрямую пообщаться с её автором. Ну как пообщаться… Ответить он всё равно ничего не сможет. Даже если сильно хочется. А иногда в сообщениях об ошибках такой треш, что действительно очень хочется ответить. Или просто взглянуть в глаза того инженера, который это сочинил.
Читать дальше →

Инженерия данных != инженерия ПО

Reading time13 min
Views5.9K

В последние годы мы видим, как инженерия данных всё больше сливается с индустрией DevOps. В обоих этих направлениях для доставки надёжных цифровых продуктов клиентам используется облачная инфраструктура, контейнеризация, CI/CD и GitOps. Это схождение в плане использования одного набора инструментов заставило многих думать, что инженерия данных не имеет значительных отличий от инженерии программного обеспечения. Как следствие, первая оказывается «несовершенной», поскольку дата-инженеры отстают с внедрением эффективных практик разработки ПО.

Но такая оценка ошибочна. Несмотря на то что в обработке данных и разработке ПО используется много общих инструментов и практик, между ними есть ряд существенных отличий. Игнорирование этих отличий и управление командой дата-инженеров по аналогии с командой разработки ПО является ошибкой. Так что цель данной статьи – подчеркнуть некоторые уникальные проблемы в инженерии данных и пояснить, почему в этой области иногда требуется особый подход.
Читать дальше →

Собирается ли Тувалу эвакуироваться в киберпространство, чтобы не утонуть?

Reading time10 min
Views8.8K

В декабре 2021 года в мировых СМИ появились публикации о том, что правительство тихоокеанской страны Тувалу обсуждает цифровизацию государства. «Мы обсуждаем технологии, с помощью которых сможем создать цифровую нацию, чтобы мы могли продолжать действовать сообща, даже находясь в другом месте», — заявил министр юстиции, связи и иностранных дел Саймон Кофе.

Речь шла не только о том, чтобы перевести все сервисы «в цифру», что с 2010-х становится общепринятой практикой во множестве стран мира, а для Тувалу с расстояниями между островами в десятки километров выглядит особенно актуальным. Нет, всё куда серьёзнее: правительство Тувалу объявило о планах превратить свою страну в цифровую копию внутри метавселенной. Да ещё и с полным общественным и государственным функционалом, который можно будет использовать из любой точки планеты посредством VR.
Читать дальше →

Duke Nukem: Manhattan Project (2002)

Reading time5 min
Views4.9K

В 2002 году, пока всё прогрессивное человечество ждало выхода заявленной ещё в 1997 году игры Duke Nukem Forever, дабы скрасить ожидание, на рынке появился платфомер Duke Nukem: Manhattan Project. Игра была в целом хорошо встречена игроками и критиками. Duke Nukem: Manhattan Project является четвёртой в серии игр про Дюка Нюкема для ПК, а если брать все платформы, то аж десятой. Игра разработана компанией Sunstorm Interactive, известной серией симуляторов охоты Deer Hunter и выпуском дополнений для Blood, Shadow Warrior и самого Duke Nukem 3D. Так что люди знали, что делали, и эстетика Duke Nukem 3D тут чувствуется. 3D Realms продюссировала проект, а компания Arush Entertainment выступила в роли издателя.
Читать дальше →

Выжимаем все соки: PGO Оптимизация ядра Linux

Reading time9 min
Views13K

Сложность вычислительных задач и систем растёт с каждым днём. Для бизнеса ускорение кода даже на пару процентов даёт улучшение производительности, заметное снижение издержек и уменьшение задержки(latency). В первую очередь это касается мобильных и встраиваемых систем, высоконагруженных серверов, научных вычислений и 3D-графики. Так был разработан относительно перспективный и молодой метод оптимизации — Profile-Guided Optimization, далее просто PGO-оптимизация. Данный метод эффективно используют такие известные компании, как Google, Mozilla Foundation, Intel, Oracle, IBM и другие. Практически ни один современный веб-браузер не обходится без PGO-оптимизации.

Не так давно компанией Google был предложен набор патчей, включающий PGO-оптимизацию в ядре Linux. Мною был протестирован этот набор патчей в работе и доработан. Мне хотелось бы рассказать об этом методе оптимизации ядра Linux, о том, с какими трудностями можно столкнуться, и как их решить.

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

Системная инженерия, или за что мне платят деньги

Reading time8 min
Views11K

Писать введения сложно, так что позвольте сразу перейти к делу. Я работаю консультантом. Обычно я работаю над проектами, в которых используется оборудование (электроника и механические детали), но преимущественно помогаю по части ПО: от кода микроконтроллеров до программ для десктопов, а иногда и для серверов.

Иногда меня приглашают для реализации чего-то конкретного, например, драйверов или proof of concept. Иногда меня приглашают, когда команда собирается переходить на Rust. Иногда меня приглашают, когда команда хочет превратить «прототип» в «продукт». По большей части я помогаю людям с основами системной инженерии.

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

Тем не менее она работает и помогает, поэтому я хочу продолжить стучать этим молотком. Может быть, когда-нибудь я напишу об этом книгу, а пока написал статью с неупорядоченными мыслями.
Читать дальше →

Как оценить реальную производительность своего кода

Reading time9 min
Views15K

Код, который мы пишем, и который будет исполнен процессором, — две разные вещи. На уровне ассемблера существует миллион вариантов, в каком виде интерпретировать и запустить высокоуровневые команды. Более того, современные компиляторы сильно оптимизируют код, а результат этой оптимизации похож на магию.
Читать дальше →

Каково это: строить бизнес в разработке, когда тебе 40

Reading time8 min
Views22K
Кадр из фильма «Перекрёсток» (1986)

Я родился в 1981-м, так что в прошлом году мне стукнуло 40. Если верить Википедии, это первый год поколения Y (миллениалов). Миллениалов обычно ассоциируют с претенциозным характером, и в моём случае так оно и есть. Родители кучу раз говорили мне, как тяжело им приходилось работать и идти на жертвы, чтобы обеспечить для меня достойное образование. Из этого следовало, что мне следует как можно лучше учиться и усердно трудиться, что я и делал (спасибо вам за совет, мама и папа ✝). И вот чему я научился. Это моя история о росте, обязанностях и пределах.
Читать дальше →

Как робот-министр должен помочь киберпанкизации Японии

Reading time6 min
Views4.5K

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

Разработчик робота, профессор Хироси Исигуро, создал робота не просто так. Он должен стать «лицом» проводимой министром Коно политики форсированной цифровизации Японии. В том числе — реализации амбициозной, но буксующей программы цифровых реформ и повсеместного внедрения государственной идентификационной системы My Number.
Читать дальше →

Фундаментальная нестыковка двух отличных теорий: гравитация и квантовая физика

Reading time8 min
Views26K
image

Иногда приходится встречать статьи, в которых прямо или косвенно заявляется – дескать, физика «кончилась», всё уже открыто и всё понятно. Ну или почти всё. На самом деле нет: мы, конечно, давно и довольно успешно пытаемся понять и разложить по полочкам нашу Вселенную, но притворяться, что нам уже практически всё понятно, нет никакого смысла. Вот вам простой пример: у нас есть две невероятно хорошо работающие теории, которые мы уже много лет успешно подтверждаем экспериментами, и мы ещё ни разу не видели ни одного экспериментального факта, нарушающего либо Общую теорию относительности (ОТО) Эйнштейна, либо Стандартную Модель (СМ) физики частиц.
Читать дальше →

Аналоговая симуляция громкоговорителя Marshall

Reading time7 min
Views7.6K

Привет, Хабр! Акустические музыкальные инструменты, такие как скрипки, виолончели, гитары и укулеле, снабжены резонаторным ящиком, передающим колебания струн воздуху, а также создающим узнаваемое звучание инструмента.

У цельнокорпусной электрогитары такой резонатор, на первый взгляд, отсутствует как структура. Но на самом деле его функцию выполняет кабинет, то есть акустическая система с одним или несколькими (обычно 4 или 2) специальными громкоговорителями.

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

Светодиодная консоль для игры в Pong

Reading time7 min
Views3.3K

Появление игры Pong ознаменовало начало новой эры. И хотя это была не первая видеоигра, именно она породила ажиотаж в этой сфере развлечений. Впервые для потребителей это чудо игростроя стало доступно с момента релиза Magnavox Odyssey в 1972 году. Odyssey поставлялся с 12 играми, но настольный теннис (Pong) стал на тот момент самой популярной из них. Позднее в компании Atari доработали принцип виртуального настольного тенниса, выпустив тот самый Pong, который мы все помним и любим. В течение нескольких лет я даже был в некоторой степени одержим этой игрой. У меня была идея воссоздать её с использованием матрицы светодиодов. Эта идея показалась мне весьма занятной в плане реализации, и я решил создать такую вариацию, которая бы и отдавала дань корням, и несла в себе мои авторские штрихи.
Читать дальше →

Лишние кирпичики карьеры?

Reading time8 min
Views27K
Я работал в одной международной, но небольшой ИТ-компании и нередко участвовал в подборе кандидатов: задавал несложные технические вопросы, «щупал» подходы кандидата, оценивал в том числе его мотивацию и опыт. Специфика компании была такова, что личность разработчика играла важную роль, а самим особенностям создания приложений мы обучали отдельно. Поэтому хорошие, крепкие джуны или младшие мидлы мне были гораздо более интереснее снобов «И чё, вы вот так работаете? А я вот в SpaceX космические корабли вот этими руками проектировал в ООО «Грандпрограмма» 10 лет переменные именами своих девушек называл». Но менее опытные кандидаты имели свою специфику.



Запомнился один случай: искали фронтендера на несложный проект с перспективой заманчивого роста. Поскольку платили мы всегда выше рынка, резюме шли пачками. Моё внимание привлекли два: одно, на половину странички, с каким-то бессвязным оформлением, но с прикольным опытом и второе, на пяти листах с описанием всех достижений, начинающихся чуть ли не с успешно рассказанного стишка в детском садике. Решили всех посмотреть. А если серьёзно, то правда старались звать как можно больше ребят и среди соискателей эти двое, конечно, попали. Вы уже догадались, что человек-«пять листов» доставил немало смешных и фейспалмовых моментов? Да, это был реальный испанский стыд: полный ноль по всем каналам. А вот парень с огрызком резюме как раз был принят на работу. Через полгода мы узнали, что он спикер ИТ-конференций, победитель хакатона и успешный игрок в спортивное «Что? Где? Когда?». И знаете что? Эти факты на собеседовании могли увеличить и его шансы и его потенциальную зарплату (минимум процентов на 30). А он просто не считал это чем-то значимым.
Читать дальше →

Радиоуправляемые мотоциклы

Reading time7 min
Views12K
Картинка youtube-канал RC Crawler Extreme

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

Понятно, когда это радиоуправляемая машинка. Но мотоцикл…
Читать дальше →

Java и низкая задержка

Reading time8 min
Views9.1K
Источник

Я уже сбился со счёта, сколько раз мне говорили, что Java — неподходящий язык для разработки приложений, основным требованием к которым является высокая производительность. Обычно первым делом я прошу уточнить, что подразумевается под словом «производительность», поскольку две самые популярные метрики — пропускная способность и задержка — иногда конфликтуют друг с другом, а способы оптимизации одной из них существенно ухудшают вторую.

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

Код, который пишет себя сам

Reading time10 min
Views69K
Источник

Мы уже привыкли к тому, что нейросети генерируют картинки, распознают человеческую речь и на основе этого осуществляют различные действия, даже ведут паблик вместо своего хозяина. А как же обстоят дела насчёт программного кода?

Читать дальше →

Information

Rating
Does not participate
Works in
Registered
Activity