Habr.com

Syndicate content Хабр
Все публикации подряд на Хабре
Updated: 52 min 10 sec ago

Обобщённые типы. Часть 1/3. Полиморфные типы высокого рода

Sat, 04/13/2024 - 16:08

В предыдущей статье раскрывались некоторые базовые понятия теории типов. В этот раз мы рассмотрим обобщённые типы (generics) – необходимость появления такой абстракции, ключевые особенности и различные сценарии использования в программировании.

Читать первую часть обзора

[Перевод] «Искусство схемотехники»: предисловие к 3 изданию

Sat, 04/13/2024 - 16:01

На днях узнал, что вышла русскоязычная версия третьего оригинального издания книги «Искусство схемотехники» (статья на Хабре). Новость заинтриговала. Так как достаточно давно увлекаюсь этой книгой и не понаслышке знаю, что отечественные читатели ее очень ждали. Точнее даже, заждались. Авторы оригинальной книги еще в 2015 году сделали рекламу своему произведению, разместив в свободном доступе, на сайте, посвященному книге, предисловие к третьему изданию. Но это не только реклама, но и достаточно детальное описание книги, а также декларация концепций и идей в ней заложенных. Надеюсь, мой скромный любительский перевод не будет воспринят издательством «Бином» в штыки: целей что-либо нарушать у меня нет. Если что, ко мне можно обратиться на почту. Я всегда рад конструктивному диалогу и считаю, что давно сложились условия, когда отечественная версия оригинальной книги просто обязана превзойти оригинал. Кроме того, реклама от самих авторов-корифеев еще никому не вредила.

Я заказал себе «первый том» от «Бинома». Скоро должна книжечка прийти. Я ее внимательно изучу, и по результатам будет рецензия. Надеюсь, книга оправдает мои ожидания. Даже интересно сравнить свои навыки в переводе с профессионалами. А пока, предлагаю приступить к чтению предисловия.

Читать далее

Театр образования

Sat, 04/13/2024 - 15:10

А не пора ли нам ещё раз обсудить, что раньше было лучше, а нынче всё не так, всё не то и вообще молодёжь какая-то не та?

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

А может лучше сразу в комментарии?

[Перевод] Не бойтесь бросать свои пет-проекты

Sat, 04/13/2024 - 15:00


Веб-индустрия переполнена историями о пет-проектах, которые переросли в успешный бизнес. Вот и я нередко увлекаюсь какими-нибудь идеями после основной работы. И хотя это определённо заманчивая перспектива, работа над личным проектом не всегда столь лучезарна – порой они просто не выгорают. Если вы читаете эту статью, то есть вероятность, что вы недавно отказались (или подумываете отказаться) от своего пет-проекта. В таком положении находились многие из нас. Да что тут говорить, заброшенные личные проекты даже стали своего рода мемом в среде разработчиков.

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

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

И здесь я хочу рассказать о своём недавнем пет-проекте, который забросил в тот же день, в который запустил. Читать дальше →

Квантовая случайность против детерминизма и супердетерминизма. Изгоняем демона Лапласа

Sat, 04/13/2024 - 14:41

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

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

Читать далее

МРЭМ – 200. Электронный микроскоп родом из СССР. Цифровизация захвата изображения

Sat, 04/13/2024 - 14:33

В 2020 году я опубликовал  здесь статью, в которой описал свой советский растровый микроскоп МРЭМ-200  1987 года выпуска. Мне было приятно, что статья вызвала большой интерес и помогла мне познакомиться с  людьми со схожими увлечениями.

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

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

В декабре 2022 года в Телеграмме я познакомился  с еще одним владельцем микроскопа МРЭМ-200. В  этой статье я буду, называть этого человека, по его просьбе, «Владелец МРЭМ-200 из Москвы, пожелавший остаться анонимным».  Он  решил проблему прямого компьютерного захвата, использовав  видео с youtube (https://www.youtube.com/watch?v=ruuxn2u3yao) известного  американского популяризатора науки Бена Краснова (Ben Krasnow). «Владелец МРЭМ-200 из Москвы, пожелавший остаться анонимным» творчески переработал информацию Бена Краснова, адаптировал софт под технические особенности  своего микроскопа  и  любезно поделился со мной этим софтом. У меня появилась программа, которая замечательно строила и сохраняла изображение на экране компьютера синхронно с изображением на родных мониторах микроскопа. Между компьютером и микроскопом добавился отдельный модуль согласования, в котором помещался АЦП с выходом USB и операционные усилители с регулировкой коэффициента усиления:

Читать далее

Китайский процессор Loongson 3A6000 уже работает в мини-ПК. Возможности и характеристики модели Morefine M700S

Sat, 04/13/2024 - 14:20

Китайцы за последние несколько лет сильно продвинулись в разработке чипов, включая современные процессоры. Один из них — Loongson 3A6000, по производительности он примерно равен Intel Core i3-10100F. Но речь сегодня не столько о чипе, сколько об устройстве, в котором он работает — мини-ПК Morefine M700S. Подробности под катом.
Читать дальше →

BDUI: sapere aude или продолжай писать на коленке

Sat, 04/13/2024 - 14:10

Backend Driven UI — относительно новая парадигма создания приложений. Она позволяет сделать продукт индивидуально полезным для каждого пользователя. На личном опыте я убедился, что это очень важно в современном процессе мобильной (и не только) разработки.

В данной статье я постараюсь подсветить ключевые аспекты концепции, оценить её пользу как для процесса разработки, так и для бизнеса. Ближе к концу приведу реальные примеры применения BDUI в рамках наших проектов. Сразу оговорюсь, что фокус внимания будет на in-house потребностях построения корпоративных приложений.

Вперед

Запускаем PrivateGPT на GPU AMD Radeon в Docker

Sat, 04/13/2024 - 13:54

PrivateGPT — это проект, который расширяет возможности работы LLM-моделей, позволяя добавлять неограниченное количество личных данных.

31 октября 2023 AMD Radeon предоставила поддержку PyTorch для любительских видеокарт. Полный список видеокарт и ОС можно посмотреть здесь. Описанная инструкция протестирована на AMD Radeon RX 7900 XTX.

Для запуска нам понадобится Ubuntu с установленными: git, make, docker и ROCm.

Читать далее

Территория Большого Взрыва. От трёх китов к изначальной сингулярности

Sat, 04/13/2024 - 13:48

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

Читать далее

16-битная операционная система на коленках

Sat, 04/13/2024 - 13:10

В мире компьютерных наук мало что может сравниться с созданием собственной операционной системы. В этой статье мы погрузимся в увлекательный мир разработки операционных систем, создав 16-битную ОС с помощью языка ассемблера NASM под архитектуру процессоров Intel x86-64. Мы рассмотрим каждый этап разработки, начиная с основ и заканчивая реализацией ключевых компонентов.

Заменит Windows?

Google Chrome — теперь и за деньги. Браузер с ИИ предназначен для бизнеса. Что это за новинка?

Sat, 04/13/2024 - 13:00

Корпорация Google умеет удивлять. На днях она представила специализированную версию своего браузера Chrome для бизнеса. Это платный обозреватель, который содержит элементы ИИ, предназначенные для борьбы с киберугрозами. Подробности — под катом.

Читать далее

Геймификация в EPM системах: фан или крутая фича? Разбираем на примере Форсайт

Sat, 04/13/2024 - 11:30

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

Что из этого получилось

Who's online

There are currently 1 user and 2 guests online.