Pull to refresh
154
23.3

Маркетолог

Send message

Домашние эксперименты с радиолампами. Часть 1. Теория

Reading time10 min
Reach and readers8.9K

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

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

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

Читать далее

Мнемотехника в помощь айтишникам

Reading time15 min
Reach and readers2.9K

Пару лет назад я поступила в IT-класс, где был огромный упор на профильные предметы. Нас обучали работе с системами счисления, алгоритмизации, анализу информационных моделей, моделированию, программированию, кодированию и декодированию информации, знакомили с началом дискретной математики и теорией игр.

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

Читать далее

Уменьшение тёмной энергии может помочь избежать «болота» невозможных вселенных

Reading time11 min
Reach and readers2.8K

Самая большая 3D-карта космоса намекает, что тёмная энергия, которая питает расширение Вселенной, может ослабевать. Некоторые физики-теоретики ожидали именно этого. 

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

Утром 4 апреля физики собрались в конференц-зале на третьем этаже в лаборатории Джефферсона Гарвардского университета. Прошёл слух, что будет большое объявление от коллаборации Dark Energy Spectroscopic Instrument (DESI), группы физиков, которые исследуют тёмную энергию — загадочную, отталкивающую форму энергии, которая пронизывает Вселенную. Конференц-зал в Гарварде был настолько переполнен людьми, желающими посмотреть прямую трансляцию, что некоторые сидели на полу. В конце концов все решили перейти в более просторный лекционный зал внизу. 

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

Читать далее

Шестидесятилетний заключённый и лабораторная крыса. F# на Godot. Часть 3. Алгоритмы c пересадками

Level of difficultyEasy
Reading time18 min
Reach and readers1.6K

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

Читать далее

Почему троичные вычисления лучше двоичных

Level of difficultyMedium
Reading time4 min
Reach and readers22K

Давно изучаемая, но нечасто применяемая вычислительная система с основанием 3 всё же может найти применение в кибербезопасности.

Как рассказывали детям 1970-х годов в Schoolhouse Rock!, три — это магическое число. Три поросенка; три кровати, миски и медведя для Златовласки; три трилогии «Звёздных войн». Чтобы табуретка стояла сама по себе, нужно как минимум три ножки, и как минимум три точки, чтобы определить треугольник. 

Число 3 также предполагает другой способ счёта. Наша знакомая десятичная система счисления с основанием 10 использует 10 цифр от нуля до 9. Двоичная система, наш цифровой lingua franca, представляет числа, используя только две цифры: 0 и 1. 

Но математики давно изучают число три. Рассмотрим, например, основание 3 или троичную систему, которая использует три цифры. Обычно это цифры 0, 1 и 2, но также используются и симметричные обозначения: –1, 0 и 1.

Читать далее

Шестидесятилетний заключённый и лабораторная крыса. F# на Godot. Часть 2. Выражения

Level of difficultyEasy
Reading time16 min
Reach and readers1.6K

В прошлой части я говорил про адаптацию API Godot к F#. Далее в планах было разобраться с общей структурой приложения, но я столкнулся с необходимостью закрыть серьёзный пробел в публичном корпусе текстов. Так что в этой и последующих частях я буду объяснять нечто странное — как из обычной функции путём эволюции получается работающая программа на Godot.

На мой взгляд, у большинства F#-новичков тактический и стратегический уровень находятся в разных вселенных. Типа вот здесь в локальном пространстве у нас ФП, а на глобальном внезапно тащит только ООП. Это, конечно, хорошо, что мы можем склеивать две парадигмы, но мне кажется, что эта непреодолимая стена на границе сферы деятельности ФП не такая уж непреодолимая. Существование её обусловлено не объективными причинами, а недостатком опыта.

Читать далее

Рекомендатель кино или как я писал свое DIY-решение для поиска новых фильмов

Reading time13 min
Reach and readers2K

Вечер. Пересматриваю «Пятницу 13». Не люблю пересматривать фильмы, даже хорошие. Но выбрать интересное кино из потока новинок сложно. Поэтому мне захотелось написать свой рекомендатор кино. Этим и займусь в выходные. 

В статье покажу, что получилось написать за 2 дня. Писал всё «на коленке» по доступным библиотекам и данным. Получилcя DIY-рецепт. Всё платформозависимое работает в Docker, чтобы повторить и развернуть можно было везде. 

Читать далее

Квантовать или не квантовать LLM?

Reading time8 min
Reach and readers4.5K

Многие онлайн-сервисы предлагают доступ к проприетарным LLM. Однако по различным причинам может возникнуть необходимость использовать эти модели на своем оборудовании. Аренда серверов, особенно с GPU, может быть дорогой и зависит от требований к RAM/VRAM. Квантование моделей помогает снизить эти требования.

Читать далее

Как интегрировать синхронный код в асинхронный. Инструкция

Reading time8 min
Reach and readers3.3K

Когда создаешь новое приложение, особенно если оно должно быстро обрабатывать данные, использование библиотеки asyncio — это хороший выбор. Она позволяет работать с неблокирующими библиотеками, asyncpg и aiohttp. Однако чаще всего программисты работают с уже существующим кодом, который использует блокирующие библиотеки. Поэтому большую часть времени может занять адаптация и модернизация старого кода, так как асинхронный код не дружит с синхронным (им мешает GIL).

GIL (Global Interpreter Lock) — это механизм, который предотвращает одновременное выполнение нескольких потоков в Python. Это означает, что даже если у вас есть многопоточное приложение, только один поток может выполнять Python-код в любой момент времени. Поэтому можно запускать дополнительный поток для выполнения операции ввода-вывода.

Читать далее

Шестидесятилетний заключённый и лабораторная крыса. F# на Godot. Часть 1. Встреча с фреймворком

Level of difficultyEasy
Reading time16 min
Reach and readers2.5K

В прошлый раз я в основном говорил о трудностях, которые возникают при попытках совместить F# и Godot. Это была вынужденная мера, так как нас в первую очередь интересовало «стандартное» поведение на случай, когда нестандартное и удобное почему-то не сработало. Можно сказать, что мы учились падать без серьёзных последствий перед тем, как научимся совершать броски и болевые приёмы. Нужный ход, если мы не хотим за пару занятий инвалидизировать большую часть группы, но всё-таки это не то, за чем мы пришли в секцию. Теперь пришло время перейти к рутине, а за ней — и к более агрессивным техникам.

Читать далее

IBM 701: История создания одного из первых коммерчески успешных компьютеров

Level of difficultyEasy
Reading time8 min
Reach and readers1.7K

В 1952 году компания IBM, уже тогда известная своими новаторскими решениями в сфере вычислительной техники, представила миру свой первый электронный компьютер – IBM 701. Его появление стало началом нового этапа – эры цифровых технологий. Об IBM 701 мы упоминали в материале «История IBM: От табуляторов до суперкомпьютеров». В этой статье погрузимся в историю создания этого устройства и расскажем, что же сделало IBM 701 столь значимым.

Читать далее

P2P общего назначения

Level of difficultyMedium
Reading time10 min
Reach and readers2.3K

IT-индустрия совершила интересный виток развития в последние десятилетия. На заре IT-революции, когда компьютеры были дорогими, их ресурсы, хоть и скромные по нынешним временам, нужно было использовать эффективно. Это привело к появлению многопользовательских OS, например, семейства UNIX, созданию компьютерных сетей и появлению протоколов удаленного доступа. 

Стремительное развитие производительности чипов и удешевление железа привело к революции персональных компьютеров. Однако опережающий рост вычислительных потребностей запустил развитие на новый круг. Сейчас найдется немного компаний и организаций, которые обходятся исключительно персональными компьютерами и сервисами в локальной сети. Когда-то диковинные IaaS, PaaS, SaaS, распределенные вычислительные технологии плотно вошли в жизнь. Доступ к удаленным системам — обыденная потребность не только для администраторов и программистов. Все знают о протоколах ssh, rdp, vnc, многие пользуются TeamViewer, AnyDesk, Remmina, X2Go и т. п. Ввиду того, что IPv4 сети и порожденный ими NAT пока еще более чем актуальны, не каждое из перечисленных средств позволяет подключиться к машине, находящейся за NAT, если у вас нет возможности пробросить порты.

Читать далее

Adwaita-swift: теперь можно писать приложения для GNOME на языке Swift

Reading time9 min
Reach and readers970

Язык программирования Swift наиболее широко применяется в разработке программного обеспечения для операционных систем от компании Apple. Но не так давно появилась заметка, в которой говорится, что теперь на этом языке можно писать программы, основанные на GTK4+Libadwaita.

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

Читать далее

Теория игр может сделать ИИ более корректным и эффективным

Level of difficultyMedium
Reading time8 min
Reach and readers2K

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

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

Именно это и происходит со многими большими языковыми моделями (LLM), сверхмощными инструментами машинного обучения, которые поддерживают ChatGPT и другие чудеса искусственного интеллекта. Генеративный вопрос, который является открытым, дает один ответ, а дискриминативный вопрос, который подразумевает необходимость выбора между вариантами, часто дает другой. «Происходит разрыв, когда один и тот же вопрос формулируется по-разному», — сказал Атул Пол Джейкоб, докторант Массачусетского технологического института.

Читать далее

Используем gocv, чтобы определить возраст, эмоции и пол человека по фото

Reading time11 min
Reach and readers1.6K

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

Для демонстрации будем использовать модели caffe и onnx. Сервис напишем с использованием golang. Ниже приведен пример изображения, на котором распознан пол и примерный возраст человека. В нашем сервисе мы будем возвращать JSON, в котором будут указаны возраст, эмоции, пол и местоположение лиц на фотографии.

Читать далее

Проклятие знания. Как когнитивные искажения влияют на разработку?

Level of difficultyEasy
Reading time8 min
Reach and readers3.1K

Все сталкивались с ситуацией, когда нужно было объяснять что-то другому человеку — будь то коллега, ребенок, друг или родственник. Иногда это происходит легко и непринужденно, а иногда… превращается в настоящую пытку. Особенно когда человек, которому мы объясняем, никак не может «включиться» и понять. 

 В такие моменты мы начинаем думать: «Как это можно не понять? Это же элементарно!» или «Он просто прикидывается, чтобы я сделал его работу!». Но, скорее всего, истина лежит гораздо глубже. Мы забываем, что когда-то и сами этого не знали. И в этом замешано проклятие знания.

Проклятие знания — ошибка мышления, из-за которой мы предполагаем, что другие люди обладают теми же знаниями, что и мы.

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

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

Читать далее

Когда имён недостаточно. REST-клиент на F#. Часть 2. Методы

Level of difficultyMedium
Reading time14 min
Reach and readers960

В прошлой части мы проецировали внешние контракты в DTO на примере REST. В этой будем проецировать методы контрактов в нечто, что позволит вызывать их вот так:

let! issues = gitflic.project.["kleidemos"].["myFirstProject"].issue.GET(limit = 24)

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

Читать далее

ИИ нуждается в огромной вычислительной мощности. Могут ли помочь световые чипы?

Reading time7 min
Reach and readers2.1K

Оптические нейронные сети, использующие фотоны вместо электронов, имеют преимущества перед традиционными системами. Но они также сталкиваются и с серьезными препятствиями.

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

Читать далее

Интеллектуальное право: за что может прилететь информационному посреднику. Объясняем на примере хостинг-провайдера

Reading time11 min
Reach and readers1.6K

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

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

Читать далее

Когда имён недостаточно. REST-клиент на F#. Часть 1. DTO

Level of difficultyEasy
Reading time14 min
Reach and readers1.4K

В данном цикле я хочу поговорить об одном из вариантов представления REST-клиента. Но я буду обсуждать частное (REST), чтобы использовать его как точку опоры для перехода к общему — проблеме проекций внешних контрактов. В первых двух частях я сосредоточусь на синтаксисе и «архитектурных» ходах, а потом поговорю о генераторах кода. Сложность будет расти с каждой частью, но предлагаемые подходы даже в рамках одной части можно применять независимо. Например, сейчас мы поговорим про DTO (Data Transfer Object), в следующий раз — про перенос методов и их иерархии. Это близкие модули, но их взаимное влияние осознанно будет сведено к минимуму.

Ранее я накатал большой цикл по локальному F#-кодогену и высказал намерение периодически возвращаться к генераторам на примере каких-то узконаправленных задачек. Данный цикл — пробный шар в этом направлении. Он логически вытекает из последних двух частей цикла, так что осилившие «Большой код» смогут посмотреть на уже знакомые концепции немного под другим углом.

Читать далее

Information

Rating
Does not participate
Location
Россия
Works in
Registered
Activity