Это обзорная статья, если немного сумбурная — извините. Только-только исправил все ошибки в postinker elf2e32, её описание и ссылка на гитхаб — в конце статьи.

C#, C++, Lua
Templates in C++ have evolved from little more than token substitution into a programming language in itself. Many useful aspects of C++ templates have been discovered rather than designed.
Начну с истории вопроса.
Очень давно я написал Fresh IDE – навороченнoe IDE для программирования на ассемблере, а точнее на FlatAssembler.
Fresh IDE долгие годы меня полностью устраивал, поэтому я с перерывами выпустил 2 главные версии и начал просто его использовать, время от времени внося какие-то исправления и изредка новые функции.
Когда перешел полностью на Linux, оказалось, что Fresh IDE прекрасно работает под WINE, и я продолжил им пользоваться без угрызений совести. В процессе даже удалось исправить несколько багов WINE (вот, вот и вот).
Как бы то ни было, но я начал писать библиотеку для переносимости ассемблерных программ между Linux и Windows (и KolibriOS). Одновременно с этим задумался и над тем, чтобы сделать Fresh IDE переносимым. Из-за архитектуры библиотеки, огромная часть кода уже и так была переносимой. А точнее все, что не касалось GUI. К сожалению, GUI был полностью написан на Win32 API и его нельзя просто так перенести на другие платформы.
Поэтому и пришлось начинать все сначала. И третья версия Fresh IDE писалась почти с нуля.
Здравствуйте, дорогие друзья!
Вот и заканчивается 2023 год. В этой статье я хочу продолжить начатую в 2021 году традицию вспоминания наиболее важных событий из жизни ReactOS за год. То что статьи не появляются на Хабре, не значит что система мертва. Медленно, но верно, в ReactOS реализуются разные фичи и исправляются баги. И в данной статье мы рассмотрим что произошло в жизни системы в 2023 году.
Носители языка — худшие коммуникаторы в мире
В комнате, полной людей, для которых язык не является родным, «нет никаких шансов на понимание». Возможно, это их язык, которым они владеют, но послание часто теряется.
Что же подразумевается под разгоном матрицы монитора? Подразумевается увеличение частоты обновления монитора со стандартных 60 Гц и на сколько получится — 70-75, бывает и 120, и даже 150 Гц (!). Зачем это нужно? Чтобы повысить плавность картинки. Что означает, что частота обновления монитора — 60 Гц? Это означает, что картинка на экране меняется ровно 60 раз в секунду. При этом видеокарта может выдавать как меньшее количество fps, так и большее. Если количество кадров, выдаваемых видеокартой, меньше частоты обновления, то, значит, какой-то кадр будет дважды (а то и трижды) выведен на экран, что может привести к ощутимым задержкам. Если же количество кадров, выдаваемых видеокартой, больше частоты обновления монитора, то получится так, что на экран будет выдаваться сразу два-три кадра, что приведет к артефактам:
Генетический алгоритм нужен, когда ты знаешь параметры своей нейросети, но не знаешь, что должно получиться на выходе, например, этот алгоритм можно использовать для игры в Google динозаврика или Flappy Bird, потому что там ты не знаешь, что должно быть на выходе, но у тебя есть возможность сортировать наиболее жизнеспособные варианты, например по времени, это называется фитнес функций.
У меня никогда не получалось найти такой алгоритм и чтобы он работал, и был простым, и его можно было использовать, поэтому я приступил к созданию своего легкого, простого, прекрасно работающего Genetic Algorithm.
Моя цель не растянуть написания этой статьи, и замучить читателей её длиной, поэтому сразу приступим к коду. Как уже упоминалось, код простой, поэтому большую часть не нужно описывать целыми сочинениями.
Вначале нам потребуется импортировать модули:
Всем привет. Сегодня я расскажу об инструментах, которые существуют в .NET для параллельной работы с какими-то внешними ресурсами и приведу примеры, где и как их можно применить.
При параллельной работе с каким-то ресурсом, нам нужно синхронизировать доступ к нему, чтобы не попасть в состояние годнки или банально не перегрузить его. Для этого в .NET существуют следующие вещи:
Уже чуть более трех месяцев я учил испанский язык с помощью тренажера DuoLingo. Это первая часть эксперимента. Моей целью было оценить объем знаний и перспективы использования DuoLingo изучающими иностранный язык.
Я не тратил много времени, 10-15 минут в день, иногда меньше. При этом я намеренно не использовал других источников. В общем, действовал, как средний студент без особой мотивации.
Привет Хабр! Меня зовут Иван, сегодня поговорим о вопросах на собеседованиях Джуну+ (от 6 месяцев работы) и узнаем как ответить на них не как ChatGPT. Я как инженер по ручному и автоматизированному тестированию провожу собеседования на роль Junior+ QA (с дальнейшим ростом в автоматизаторы). Делюсь своим списком вопросов и ответов, которые я ожидаю услышать.
Придумывать заново велосипед не собираюсь. Поэтому ниже список ресурсов на вопросы для подготовки к собесу QA. К сожалению ресурсы предоставляют не все ответы, в том числе не все правильные.
База для Junior QA
1. Что такое тестирование?
Сравнение ожидаемого результата с фактическим результатом ПО. Тестирование это не поиск багов!
Своими словами: тестирование - это процесс сопоставления спецификаций продукта с его финальным результатом. Под финальным результатом мы можем понимать то, что тестировщик получает, когда разработчик реализует функционал по задаче и мы начинаем его тестировать. В ручном тестировании мы сравниваем тестовые случаи с реализованным проектом, а в автоматизированном тестировании мы преобразуем ручные тестовые случаи в автоматические проверки для реализованного проекта.
Сегодня речь пойдет НЕ о новомодной нейросети, не о космической программе NASA, не о созвездии Близнецов, и даже не об очередной криптобирже. Интернет-протоколу Gemini не повезло с названием, его все время путают с чем-то другим.
А протокол интересный, дело в том, что он (1) минималистичный, как Gopher, а значит, (2) удобный для создания самодельных компьютерных программ, работающих с ним, (3) радикально защищает читателя от скриптов, всплывающих окон и прочего, при этом (4) заточен на параноидальную приватность и безопасность, и еще там (5) непривычный подход к шифрованию канала передачи данных, о чем сейчас и поговорим.
Допустим, вам нужно быстро распарсить 8-битные целые числа (0, 1, 2, …, 254, 255) из строки ASCII/UTF-8. Задача взята из проекта simdzone под руководством Йероена Коеккоека (NLnet Labs). Дана строка и её длина: например, ’22’ и длина 2. Наивное решение на C может выглядеть так:
Введение:
- обычный ChatGPT 3.5 работает тут https://chat.openai.com, но для генерации картинок нужен Dall-E 3 отсюда https://openai.com/dall-e-3 и желательно ChatGPT 4 (правильно осознать ваш креативный запрос), а они доступны только по премиум подписке (for Plus and Enterprise users) за 20 долларов в месяц
- чтобы обойти это ограничение, воспользуемся бескорыстием Microsoft, вложившей в OpenAI (разработчика ChatGPT) больше 13 млрд долларов для развития своего поисковика Bing
- Bing предоставляет доступ одновременно и к ChatGPT 4 и к Dall-E 3, но через браузер Microsoft Edge и при наличии учётной записи Microsoft
Подготовка:
- создайте учётную запись в Microsoft https://signup.live.com/signup?lic=1
(если учётка уже существует, от Skype, например, пропустите этот шаг и найдите логин и пароль)
- скачайте браузер Edge https://www.microsoft.com/ru-ru/edge/download?form=MA13FW
(если браузер уже скачан, пропустите шаг)
Процесс:
- открываем браузер Edge и логинемся в нём с учётной записью Microsoft
- скачиваем VPN-плагин для браузера Edge, например, по ссылке далее и активируем его https://microsoftedge.microsoft.com/addons/detail/browsec-vpn-%D0%B1%D0%B5%D1%81%D0%BF%D0%BB%D0%B0%D1%82%D0%BD%D1%8B%D0%B9-/fjnehcbecaggobjholekjijaaekbnlgj
- открываем в браузере Edge ссылку https://www.bing.com/search?q=Bing+AI&showconv=1 и сохраняем ее в избранном
- если увидите три плашки "Творческий", "Сбалансированный" и "Точный" в разделе "Выбор стиля беседы" и строку запроса как в мессенджере в нижней части экрана, значит всё получилось (если видите "обычный" поиск Bing с разными ссылками типа "Новости о Bing AI", "Что такое Bing" и строку запроса в верхней части экрана, значит что-то не получилось)
Фронтенд-разработка — это как собирать лего без инструкции: иногда весело и творчески, но порой ты забираешься на кровать и кричишь: «*@#%*, да где же этот пропавший блок?!»
Каждый новый проект во фронтенде — это как уникальный набор лего, и ты никогда не знаешь, какие интересные вызовы подкинет он на этот раз.
В этой статье, опираясь на личный опыт, я расскажу, что такое современный фронтенд, какие задачи решают фронтендеры и что вообще происходит в мире фронтенда.
Задача
Есть AWS аккаунт, на котором требуется поднять статический сайт (html, js, css, png, jpg) на своём домене example.com.
Ссылки: http://example.com, http://www.example.com, https://www.example.com должны перенаправлять на основной сайт https://example.com.
План действий
Покупка домена.
Выпуск SSL сертификата.
Заливка файлов html, js, css в S3.
Создание двух CloudFront distributions (основного и для редиректа с www).
Привязка CloudFront функции редиректа к CloudFront distribution.
Создание A-записей в DNS.
Ранее я писал Как я решил сделать игру, вдохновившись Heroes of Might and Magic, и потерял деньги. И вы статью хорошо приняли (62к просмотров).
Я решил вспомнить, а с чего всё начиналось и чем по итогу закончилось - провести ретроспективу. Разработка игр - это мое хобби в свободное от работы время. Тем не менее за этот период я зарелизил 50 игр. Пробовал разработать больше, но разумеется заморозки, лень и подобные отмазки)
Возможно, кому-то будет интересно проследить этот путь и узнает себя со стороны. В прошлой статье я рассказал о первых поделках методом "тыка" с 2005 по 2008.
Сейчас я расскажу о первых играх, которые смог продать.
Да, хейтеры, их покупали, представляете оО. Вот такую "фигню") А если бы вы делали, то вообще бы разбогатели и показали мне как надо)
Доброго времени суток. И полгода не прошло с момента написания моей первой статьи про лампы. По условиям конкурса, я должен потратить грант на написание ещё одной классной статьи, и это... не та статья. К сожалению, свободного времени у меня совсем немного и, хотя я и продолжаю работать над самодельными радиолампами, у меня пока нет результатов достойных публикации. Но, поскольку приближаются новогодние праздники, я решил написать небольшую статейку о моей попытке изготовить новогоднюю игрушку.
Градиентный спуск лежит в основе большинства методов AI/ML. Звучит как-то странно и пугающе. Спуск? Блин, надеюсь, мне не придется прыгать с парашютом...?
Не волнуйтесь, возможно, все же придется прыгнуть, но только если вы этого захотите. Это объяснение способен понять даже ваш 10-летний племянник.