Обновить

Как из Google Colab пушить в свой GitHub

Это статья с инструкцией для тех, кто как и я столкнулся со всевозможными ошибками при попытке подключения и внесения изменений в свой репозиторий через “облачную IDE” Google Colab (далее - колаб).

Читать далее

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

Уровень сложностиСредний

Особая благодарность Робину Хэнсону и Алексу Табарроку за отзывы и рецензии

Одно из приложений Ethereum, которое всегда вызывало у меня наибольший интерес, - это рынки предсказаний. Я писал о футархии, модели управления на основе предсказаний, придуманной Робином Хэнсоном, в 2014 году. В 2015 году я был активным пользователем и сторонником Augur (смотри, мамочка, мое имя есть в статье Википедии!). Я заработал 58 000 долларов, делая ставки на выборы в 2020 году. А в этом году я стал активным сторонником и последователем Polymarket.

Для многих людей рынки предсказаний - это ставки на выборы, а ставки на выборы - это азартная игра, которая хороша, если помогает людям развлечься, но по сути не более интересна, чем покупка случайных монет на pump.fun. С этой точки зрения мой интерес к рынкам предсказаний может показаться непонятным. Поэтому в этом посте я постараюсь объяснить, что именно в этой концепции меня привлекает. Вкратце, я считаю, что (i) рынки предсказаний даже в том виде, в котором они существуют сегодня, являются очень полезным инструментом для мира, но более того (ii) рынки предсказаний - это лишь один пример гораздо более крупной и невероятно мощной категории, обладающей потенциалом для создания лучших реализаций социальных сетей, науки, новостей, управления и других областей. Я назову эту категорию «инфофинансы».

Читать далее

Инструкция по настройке Docker для приложения с PostgreSQL и Prisma

Уровень сложностиПростой

Настройка Docker для приложения с PostgreSQL и Prisma — это быстрый и эффективный способ развернуть ваше приложение в контейнеризованной среде. С помощью Docker Compose можно легко настроить взаимодействие между приложением на NestJS, Prisma и базой данных PostgreSQL. В этом процессе важно учитывать правильную последовательность запуска контейнеров, чтобы приложение успело подключиться к базе данных. Мы предлагаем решение с использованием скрипта wait-for-db.sh, который гарантирует, что база данных будет доступна перед выполнением миграций и запуском приложения. Этот подход позволяет избежать ошибок и обеспечит стабильную работу вашего проекта в контейнерах. Настройка Docker Compose, правильное использование переменных окружения и выполнение миграций Prisma при старте приложения — всё это делает процесс развертывания максимально удобным и надежным. Следуя простой инструкции, вы сможете быстро настроить и запустить ваше приложение с PostgreSQL и Prisma в Docker.

Читать далее

Google обновил правила для файла robots.txt 2024

Уровень сложностиПростой

Совсем недавно Google обновил свою документацию о файлах robots.txt, уточнив, какие поля больше не поддерживаются поисковыми ботами. Обновленную интерпретацию спецификации robots.txt глазами Google

Читать далее

Неалгоритмеческая задачка по C++

Уровень сложностиСредний

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

Читать далее

Исправление ошибки AH01071: Got error 'Primary script unknown' HESTIACP v.1.8.12

Уровень сложностиСредний

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

Информация взята из этого источника

Мы можем рассмотреть на данный момент(10.11.2024) два способа исправления этой ошибки.

Смотреть полностью

Расширение типов внешних библиотек в TypeScript

Уровень сложностиПростой

Задача: расширить typescript insterface npm пакета. Звучит просто.

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

Читать далее

Иррациональные числа: «водяные знаки» на ткани вселенной?

Уровень сложностиПростой

Введение: От яблок к иррациональным числам

Представьте мир, где существуют только целые числа. Одно яблоко, два яблока, три... Но вот мы сталкиваемся с задачей: у Пети четыре яблока, вы просите половину дать Васе. Сколько останется у Пети? Кажется, что правильный ответ — два. Но Петя, будучи мальчиком предприимчивым, отвечает: "Три с половиной". Так мы обнаруживаем, что числа бывают не только целые, но и дробные. Дробные числа можно записать по-разному, например, "три с половиной" — это 3,5.

Но что будет, если мы захотим разделить 5 яблок на троих детей? Мы получим дробь 1,66666..., где цифра 6 повторяется бесконечно. Это число нельзя записать точно с помощью конечного числа знаков после запятой. И хотя это число бесконечно и поэтому выглядит необычно, всё же оно является рациональным числом, потому что может быть выражено с помощью дроби 5/3.

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

Давайте попробуем. Это делается с помощью простой формулы, которая звучит в наших головах со школьной скамьи: сумма квадратов катетов равна квадрату гипотенузы. Записывается она так: a² + b² = c², где a и b — катеты, а c — гипотенуза. В нашем случае катеты равны 1 метру, а гипотенуза — это диагональ квадрата, которую мы хотим найти. Подставляем значения в формулу: 1² + 1² = c² Получаем: 1 + 1 = c² => 2 = c² Чтобы найти c (диагональ), нужно извлечь квадратный корень из 2: c = √2

Читать далее

Опыт прохождения виртуальной стажировки в иностранной компании

Уровень сложностиПростой

О платформе (Forage, theforage.com) виртуальных стажировок я узнала, когда обучалась на Магистра в ВУЗе в Лондоне два года назад. Опыт прохождения таких стажировок нам должен быть учитываться для зачета. Конечно, по началу, меня это очень вдохновило! Ведь нам предстояло просто сразу поработать в иностранной компании без всяких дополнительных и мучительных этапов написания резюме, отклика на разных платформах по поиску стажировок, прохождения собеседований и т.п. Однако, всё оказалось не так уж и радужно, хотя и положительные моменты тоже были, о чем я и хочу поделиться.

Платформа Forage была основана всего-лишь в 2017 г. как стартап, в число инвесторов которых входит и Y Combinator! Задумка заключалась в том, чтобы дать студентам бесплатную возможность получения опыта для добавления его в резюме, чтобы выделиться среди других кандидатов при поиске работы. А вот финансирование планировалось получать за счет компаний, которые представляли программы стажировок.

На данный момент платформа имеет 250 программ-стажировок от 125 компаний, и уже более 6 млн. человек зарегистрировались в программах.

Надо отметить, что компании, представленные на платформе — известные, такие как, BCG, PWC, J.P.Morgan, RedBull, Walmart, Pepsico и др. Области же стажировок представлены тоже широко: и маркетинг, и дизайн, и финансовый сектор, и программирование, и аналитики данных. Хотя, справедливости ради, надо отметить, что для именно бесплатного прохождения стажировки нужно, чтобы университет, от которого вы представлены со статусом “студент” должен быть зарегистрирован на этой платформе.

Читать далее

Feature-Sliced Design (FSD): Основы и практические примеры архитектуры

Уровень сложностиПростой

Когда я только начинал свою карьеру фронтенд-разработчика, часто сталкивался с проблемами поддержки кода в проектах. Со временем я понял, что структура кода имеет решающее значение. Так я узнал о Feature-Sliced Design. Этот подход помогает разбивать проект на функциональные части, что упрощает работу с кодом и его сопровождение. Давайте разберемся как это работает.

Читать далее

Алкоголь и здоровье: рекомендации и препараты

Уровень сложностиПростой

«Безопасной» дозой алкоголя считается ~30г чистого спирта в день (т. е. 75г водки / 300г вина / 750г пива), причём два дня в неделю должны быть трезвыми. Это для мужчин. Для женщин доза в два раза меньше. И всё это — при условии здорового организма, при различных заболеваниях даже эти «нормы» будут вредны. При превышении указанных дозировок начинаются проблемы со здоровьем.

Читать далее

Голосовой ассистент на Python

Уровень сложностиСредний

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

Импорт необходимых библиотек

В начале кода подключаются следующие библиотеки:

os: для работы с операционной системой, например, для выполнения команд выключения компьютера.

psutil: для управления процессами, включая их завершение.

subprocess: для запуска приложений.

speech_recognition: для распознавания голосовых команд.

pyttsx3: для синтеза речи.

g4f: для работы с моделью GPT.

webbrowser: для открытия веб-страниц.

pycaw: для управления звуком.

pathlib: для работы с файловыми путями.

Инициализация синтезатора речи

Код инициализирует синтезатор речи с помощью pyttsx3, который позволяет ассистенту произносить текстовые сообщения. Функция speak(text) использует этот синтезатор для озвучивания заданного текста.

Закрытие и открытие приложений

Функция close_process(process_name) ищет и завершает указанный процесс на компьютере. Она перебирает все запущенные процессы, используя psutil, и завершает тот, который соответствует введенному имени.

Функция open_application(app_name) ищет указанное приложение в заданных директориях (C:, D:, E:) и запускает его, если находит. Она использует os.walk для рекурсивного обхода директорий.

Поиск в браузере

Функция search_in_browser(query) открывает браузер с результатами поиска на Яндексе. Она формирует URL-адрес с запросом и вызывает webbrowser.open(). В случае ошибки функция сообщает об этом пользователю.

Получение прогноза погоды

Функция get_weather(query) реализует возможность запроса прогноза погоды, формируя поисковый запрос для Яндекса. Однако для более точной реализации желательно использовать специализированный API для получения актуальных данных о погоде.

Управление звуком

Функции mute_sound() и unmute_sound() управляют уровнем громкости системы. Они используют библиотеку pycaw для установки звука на ноль или возврата к нормальному уровню.

Спящий режим

Функция sleep_mode() переводит ассистента в режим ожидания, где он ждет команды "проснись". Ассистент использует микрофон для прослушивания, и при распознавании ключевой фразы возвращается к активной работе.

Распознавание голосовых команд

Функция recognize_command() активирует распознавание голоса и возвращает распознанный текст. Если команду не удалось распознать, ассистент уведомляет пользователя об ошибке.

Выключение компьютера

Функция shutdown_computer() выполняет команду на выключение компьютера с помощью os.system().

Взаимодействие с GPT

Функция gpt(com) взаимодействует с моделью GPT, отправляя ей текст запроса и получая ответ. Ответ озвучивается с помощью функции speak().

Читать далее

Решение проблемы с переходом по объектам с Ctrl в IntelliJ IDEA

Столкнулся с проблемой в IntelliJ IDEA: объекты при нажатии Ctrl перестали переходить друг на друга, а команда mvn clean compile не помогала. Попробовал выполнить операцию File > Invalidate Caches / Restart с установкой всех галочек, после чего объекты перестали подсвечиваться красным, но по-прежнему переход по Ctrl не срабатывал.

После нескольких попыток нашел решение, которое помогло:

Читать далее

Полный гайд по AJAX — Как работать с асинхронными запросами в браузере

Уровень сложностиПростой

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

Читать далее

Как я потерял производительность из-за Redux и чем я его заменил?

Уровень сложностиСредний

Redux хорош, но, как оказалось, не всегда. В статье делюсь, какие сложности возникли с производительностью и почему отказ от Redux стал логичным решением. Если ваш проект страдает из-за Redux — это может помочь!

Читать далее

Как нейросеть помогла чайнику собрать мебель: история одного проекта

Уровень сложностиПростой

Привет, Хабр! Сегодня хочу поделиться историей о том, как искусственный интеллект помог мне — человеку, никогда не имевшему дела с самостоятельной сборкой мебели, успешно собрать шкаф. Спойлер: всё получилось!

Читать далее

Deadlock — Идеальный баланс разработки | MagicH #1

Уровень сложностиПростой

Deadlock - Идеальный баланс | MagicH #1

Недавно корпорация Valve анонсировала новую многопользовательскую сетевую игру Deadlock в жанре MOBA и шутера от 3-го лица, что делает её действительно уникальным экземпляром среди всех разработок многомиллиардной компании, но есть ли реальные шансы у Deadlock на новую соревновательную игру претендующую на киберспорт мирового уровня?

Читать далее

Приложение для изучения китайских иероглифов

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

Это приложение было разработано для заказчика и доступно на GitHub: Chinese Filter.

Детали здесь

Моделирование разъёмов USB Type-А и USB Type-C в CST Studio Suite, в диапазоне частот 1-15 ГГц

Уровень сложностиСредний

В начале работы над данным исследованием я заметил отсутствие каких либо материалов по теме исследования АЧХ USB type-C и USB type-А разъемов, как на русском так и на английском языках. Своей задачей вижу, возможность поделится с сообществом своими результатами, выводами и наработками.

Читать далее