Habr.com

Ленты новостей Хабр
Все публикации подряд на Хабре
Обновлено: 19 мин. 31 сек. назад

Нужно ли писать документацию?

пт, 04/26/2024 - 22:16

Может ли IT-продукт жить без документации?

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

Читать далее

Месяц назад поставил Linux как основную ОС. Какие проблемы возникли? Рассказываю

пт, 04/26/2024 - 22:02

Через 1,5 года заканчивается поддержка Windows 10, а 11-я мне не подходит, ибо нельзя вертикально поставить панель задач (см. cнимок экрана, как у меня всё организовано). Поэтому решил попробовать переехать на Linux. Я не использую каких-то хитрых виндовых программ, под “Линуксом” всё оно точно есть: Firefox, Thunderbird, Telegram, Skype, LibreOffice для локальных документов, Гуглодоки для остальных, калькулятор, простенький редактор изображений, OneDrive и Яндекс.Диск; пожалуй, и всё.

Для себя выбрал окружение KDE, как наиболее похожее на “Винду”. Как раз вышло большое обновление - 6.0. Выбрал Fedora в качестве дистрибутива, ибо она внутри одной версии обновляется до более свежего ПО (КДЕ, ядро и пр.), что мне более по душе. Например Kubuntu 23.10 сидит на старой версии КДЕ 5.27.8, хотя давно вышло обновление 5.27.11; и даже только что вышедшая версия “кубунты” 24.04 не получила КДЕ 6.х.

Сначала поставил на старый ноутбук “Федору” 39 с КДЕ 5.27, использовал как кроватный бук для интернетанья. Хотя ноутбук старый и заметно тормозит (даже 1080 видео не тянет), но ради науки я честно страдал. :) Начал изучать как и что устроено, как настроить этот красноглазый “Линукс” и какие могут быть проблемы. На поверку оказалось, что всё настраивается просто и даже без правок в коде и компиляции чего-либо. :)

Как вышла бета “Федоры” 40, сразу обновился, а там уже есть КДЕ 6.0. И на медленном буке КДЕ 6.0 действительно работает пошустрее.

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

Читать далее

Yul: Учимся использовать inline assembly в Solidity

пт, 04/26/2024 - 19:48

В этой статье я расскажу про язык среднего уровня между Solidity и байт-кодом, который применяется в EVM. Основная задача Yul - это оптимизация смарт-контрактов по газу, как на уровне языка так и на уровне компилятора, а также гораздо больший контроль над выполнением кода. Мы вместе погрузимся в синтаксис языка с головой и попытаемся выплыть, а также научимся работать с разными типами памяти и приготовимся писать смарт-контракты с inline assembly вставками. Будет сложно, но интересно, погнали!

Читать далее

Дорожать, так всему: производители жёстких дисков, накопителей и ОЗУ поднимают цены

пт, 04/26/2024 - 19:44

На Хабре неоднократно затрагивалась тема роста цен на твердотельные накопители, HDD и DRAM. К сожалению, динамика стабильна — в ближайшем будущем стоимость указанных компонентов вырастет ещё больше. По мнению основных игроков рынка, главные факторы, которые привели к текущей ситуации, — рост спроса, инфляция и невозможность прямо сейчас развернуть дополнительные производственные мощности. Подробности — под катом.

Читать далее

[Перевод] Разбираемся с динамической памятью (кучей) в приложениях Java

пт, 04/26/2024 - 18:23
Начнём с простого вопроса. В самом ли деле каждый Java-разработчик понимает, как в Java работает память? Одна из обязанностей любого Java-разработчика — гарантировать, что в результате тонкой настройки приложения на Java из него получится выжать такую производительность, какую только возможно. Требуется время, чтобы научиться управлять памятью в Java и понять этот процесс, это касается всех, кто имеет дело с Java. В этой статье попробую объяснить, как овладеть этими умениями. Читать дальше →

[Перевод] Сложнейшая проблема компьютерных наук: центрирование

пт, 04/26/2024 - 18:00

Заявляю: «Мы, как цивилизация, разучились использовать центрирование». Ну то есть мы, конечно, знаем, как это делать — очень просто:

display: flex; justify-content: center; /* Горизонтальное центрирование */ align-items: center; /* Вертикальное центрирование */
Не спрашивайте, почему вам нужно запомнить четыре слова вместо просто горизонтальное/вертикальное; всё равно лучше, чем было до этого.

Ещё можно использовать сетку:

display: grid; justify-items: center; /* Горизонтальное центрирование */ align-items: center; /* Вертикальное центрирование */
Также не спрашивайте, почему выражение justify-content стало justify-items. Читать дальше →

[recovery mode] Трезвый взгляд на Америку как место для жизни и бизнеса

пт, 04/26/2024 - 17:57

Меня зовут Руслан Галифанов, и я занимаюсь полиграфическим и IT-бизнесом в России и ближнем зарубежье. Так уж вышло, что я с разными целями езжу в Америку более 10 лет, побывал в десятках штатов и изучил страну вдоль и поперек. У меня есть хорошие знакомые, которые ведут там бизнес. В Штатах есть вещи, которые значительно лучше, чем в России, но есть и те, которые гораздо хуже. Сегодня я поделюсь личными впечатлениями от поездок и жизни в Америке, не буду приукрашивать или специально нагнетать.

Читать далее

Как в IT и бизнесе применяют теорию игр

пт, 04/26/2024 - 17:30

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

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

Читать далее

Как сэкономить время, силы и деньги компании с помощью дерева метрик

пт, 04/26/2024 - 16:28

Привет, Хабр! Меня зовут Калаш, и я больше 11 лет в IT. Запустил несколько интернет-магазинов, мобильное приложение, программу лояльности с нуля. Консультирую и менторю начинающих продактов. Проверил более 2300 проектных работ студентов курса для продакт-менеджеров в Яндекс Практикуме. Мои студенты отлично справляются с проектами, где нужно работать с метриками, но незаслуженно мало внимания уделяют дереву метрик. Незаслуженно — потому что этот инструмент помогает организовать продуктовый процесс так, чтобы работа с метриками была согласованной и прозрачной.

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

Прочитать далее

[Перевод] Искусство README

пт, 04/26/2024 - 15:55

Привет, Хабр!

На связи Андрей из сообщества ITMO.OpenSource. Мы считаем, что важно делать открытую науку, поэтому пишем об открытом коде, проводим митапы «Scientific Open Source» и разрабатываем научные решения с открытым кодом.

Мы убеждены, что открытая наука – это не просто код на github, но и совокупность факторов, которые позволяют этим кодом эффективно воспользоваться: запустить, модифицировать, внедрить в другие проекты. Поэтому я решил перевести популярную статью JS-разработчицы Киры Окли «Art of README». Несмотря на разницу в экосистемах (я пишу преимущественно на Python), мне кажется, многие идеи этой статьи актуальны для любого проекта на любом языке.

Читать далее

Поезд «Jira – Kaiten». Путь Х5

пт, 04/26/2024 - 15:52

Около года назад мы начали миграцию с системы Jira, которая использовалась для управления задачами, на российскую платформу Kaiten. Проект миграции – весьма амбициозный, ведь всего в системе у нас работают около 7 500 пользователей с огромным количеством сложных процессов. В рамках миграции нам необходимо было перевести все производственные процессы из одной системы в другую, и это требует очевидно много усилий от всех участников проекта.

Мы накопили серьёзный опыт и хотим им поделиться с вами. Меня зовут Роман Кузнецов, я отвечал за этот проект в X5 Tech, поэтому знаю в нём каждую мелочь – расскажу обо всём по порядку.

Читать далее

Как я выбирал авто-холодильник для путешествий

пт, 04/26/2024 - 15:50

Сохранение еды в путешествии – важный фактор комфорта. А охлаждение напитков в жаркий летний день – по-настоящему, бесценно. Раньше это было проблемой. Чего только не придумывали: охлаждали еду и воду, опустив в садке в реку, обматывали мокрыми тряпками, и даже выкапывали погреб в каждом месте стоянки. Всё это, конечно, лучше, чем хранение еды на жаре. Но очень неудобно и неэффективно.

Казалось бы, решение в виде термоэлектрического автомобильного холодильника было найдено еще 50 лет назад. Однако, на практике, такими холодильниками можно худо-бедно пользоваться только «на ходу», потому что они жутко прожорливы и неэффективны. Я сталкиваюсь с выбором авто-холодильника уже не первый раз. И каждый раз это превращается в какое-то хождение по мукам...

К обзору!

Как мы создавали дизайн-систему: опыт компании Звук

пт, 04/26/2024 - 15:22

Привет, Хабр! Меня зовут Мария Бажина, я Android Developer в компании Звук. 

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

Спойлер – в результате разработка фич стала быстрее в 2 раза, сборка дизайн-макетов ускорилась в 3-4 раза, а UI приложения удалось избавить от хаоса из рандомных шрифтов и иконок и унифицировать. Подробнее – в статье. 

Читать далее

Под капотом у Fortnite. Как работает клиент-серверная архитектура Fortnite: Battle Royale

пт, 04/26/2024 - 15:16

С момента релиза Fortnite прошло уже без малого семь лет. Игра практически сразу добилась коммерческого успеха, но появление соревновательного режима Battle Royale вдохнуло в нее новую жизнь, превратив Fortnite в настоящий культурный феномен. Уже осенью 2018 года количество игроков в Fortnite: Battle Royale приблизилось к 80 миллионам, а через два года число зарегистрированных пользователей достигло 350 миллионов. Одновременно в «королевской битве» сражаются миллионы игроков с разных уголков мира. Как серверы Fortnite выдерживают подобную нагрузку?
Читать дальше →

Отправляем GC в отпуск и создаем эксзепляры классов .NET сами

пт, 04/26/2024 - 15:15

Придерживаясь великой цитаты "правила созданы для того, чтобы их нарушать", давайте нарушим какие-то основополагающие правила CLR. Как на счет того, чтобы послать GC с его работой в отставку и самим заняться размещением в памяти экземпляров классов? Заодно разберемся, как все это работает где-то там под капотом CLR.

Читать далее

Отображение иерархии в SQL запросе

пт, 04/26/2024 - 15:15

В процессе тестирования одного курса по SQL на stepik.org встретилась задача, из которой сочинилась другая, более интересная:

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

Читать далее

[Перевод] Возможно, загадочный манускрипт Войнича посвящён вопросам секса и зачатия

пт, 04/26/2024 - 14:31

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

В статье, опубликованной в журнале Social History of Medicine, мы с моим соавтором Мишель Л. Льюис предполагаем, что секс является одним из предметов, подробно описанных в манускрипте, и что самая большая диаграмма изображает и секс, и зачатие.

Читать далее

Как правильно передавать секреты запускаемым программам?

пт, 04/26/2024 - 14:28

Эта статья о том, как правильно передавать секреты запускаемым программам.

Бывает встречаются Unix-системы, на которых некоторые администраторы передают процессам пароли в открытом виде, совершенно не заботясь о том, что их видят все пользователи данной системы.

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

$ ps -ef

и возможно и увидеть некоторые секреты, которых видеть не должны, например, у одного из процессов ниже открыт пароль basicAuth.password (пароль в тексте изменен).

$ strings /proc/1101/cmdline /usr/local/bin/vmagent --remoteWrite.url=http://vm-cluster.local:1234/api/v1/write --remoteWrite.basicAuth.username=user-rw --remoteWrite.basicAuth.password=123456 --promscrape.config=/usr/local/etc/vmagent-config.yml

Как же быть? Есть несколько способов этого избежать.

Читать далее

Этому городу нужна конференция по FPGA: шесть актуальных докладов про разработку микроэлектроники в Санкт-Петербурге

пт, 04/26/2024 - 14:22

Приглашаем верификаторов, RTL-инженеров и FPGA-разработчиков на конференцию FPGA-Systems 2024.1 в Санкт-Петербурге и онлайн. Обсудим аспекты безопасности в рамках систем на кристалле, тестирование верификационных компонентов, фреймворк PyUVM и его использование для верификации цифровых дизайнов ASIC и FPGA, разработку трансиверов и многое другое. 

Регистрация уже открыта — заполняйте форму по ссылке и присоединяйтесь к конференции. Под катом — полная программа встречи.

Читать далее

Не всё так просто с луддитами, как кажется

пт, 04/26/2024 - 14:10

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

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

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

Читать далее

Сейчас на сайте

Сейчас на сайте 0 пользователей и 0 гостей.