В данной статье представлен способ максимально быстро получить результат используя Google Colab в качестве платформы для обучения модели HTR.
Разработка
- Новые
- Лучшие
- Все
- ≥0
- ≥10
- ≥25
- ≥50
- ≥100
Все нововведения Windows 11 21H2
Релизной версией Windows 11 стала версия 22000.194.co_release_svc_prod1.210911-1543, которая уже доступна для скачивания.
Windows 11 – это смесь пользовательских интерфейсов Windows 10X и Windows 10. Стартовый экран по умолчанию очень похож на стартовый экран из первой. И это первый Windows, который больше не распространяется в виде x86 ISO-образа.
Недельный геймдев: #38 — 3 октября, 2021
Из новостей на этой неделе: Playco приобрели разработчика движка PixiJS, Opera запустила платформу GXC для публикации игр из GameMaker Studio.
Из интересностей: попытка перенести Spelunky 2 на NES, доклад про оптимизацию загрузки и стриминга в Ghost of Tsushima.
Уроки по SDL 2: Урок 13 ввод текста и прокрутка экрана
В этом уроке мы научимся создавать миникарту, прокручивать экран по ней, и писать текст с клавиатуры на экран.
код:
Небольшая автоматизация небольшого производства
Практически все инженеры, причастные к разработке в небольших компаниях, занимаются, по мимо самой разработки, приемосдаточными испытаниями и отладкой уже серийных изделий. Чаще всего изделия подвергаются климатическим испытаниям, испытаниям на виброустойчивость, в целом список испытаний зависит от целевого назначения изделия и места его эксплуатации, в общем изделие загоняют в критические режимы работы. Если испытания производятся силами организации, то место их проведения обрастает кучей проводов и контрольно-измерительными приборами конечно разработчик знает, что со всем этим делать, но если вам повезло, и ваша организация имеет человека, призванного заниматься приемосдаточными испытаниями то конечно его нужно вводить в курс дела и объяснять, как работать с этим изделием. Частенько, предприятия, даже не большие, выпускают не один продукт, а несколько(ну или разные модификации одного детища) и конечно к отладке каждого из вариантов нужно, так или иначе, подготавливать рабочее место, что не облегчает и точно не ускоряет работу. Но есть из этого выход, который облегчит если не жизнь, то хотя бы рабочий процесс наладчику, и инженеру, и инженеру-наладчику, а имя этому выходу - стенд для испытаний.
MastermindCMS2 – Теги
В этой статье речь пойдет о специальных тегах, которые вы можете использовать для сборки динамических шаблонов в MastermindCMS2.
За свою карьеру программиста я видел множество разных технологий и фреймворков от гигантов индустрии, таких как Oracle, Microsoft, IBM и т. п. Но в каждом из них было какое-то неудобство. А конкретнее у них у всех было одно общее, это необходимость реализовывать серверную логику чтобы можно было использовать ее в шаблонах. И это мне сильно не нравилось, приходилось делать одну и ту же работу из проекта в проект.
Один из таких подходов разнесения логики был паттерн программирования MVVM(Model-View-ViewModel). Его активно продвигали во фреймворках для C#. Структурно с точки зрения разнесения логики, я считаю этот паттерн самым удобным.
Когда я поставил задачу себе разработать удобный фреймворк для работы, то у меня в голове был только один концепт реализации. Который содержал в основе именно MVVM, но я не считал, что это то, что я хочу получить в итоге. Так как проблема написания серверной логики оставалась открытой. И я поставил себе задачу спроектировать фреймворк так чтобы не нужно было каждый раз писать бэк для очередного проекта. Ведь грубо говоря, мы с вами коллеги, решаем одни и те же задачи для разных проектов. Авторизация, управление каталогом продуктов, отправка писем по электронной почте, чаты и прочая энтерпрайз муть. Соответственно опираясь на эти задачи, я начал думать, что нужно сделать чтобы напрямую оперировать с этим на бэке. В результате я решил писать логику парсинга шаблонов на беке, а фронтенд часть делать гибкой и независимой.
Мигаем светодиодом по протоколу Zigbee или модуль управления Триколор GS SMH-ZW-I1 с прошивкой PTVO
После написания поста Zigbee роутер с WiFi или прокачиваем модуль управления Триколор GS SMH-ZW-I1 меня стали терзать смутные сомнения, что многое осталось недосказанным, недопаянным и недопрошитым.
На самом деле прошить чип CC2351 в координатор или роутер Zigbee довольно тривиальная задача, и гораздо интереснее сделать на его основе END-Device. Большинство читателей Хабра знакомы с Arduino или ESP8266, и знают, что каждый новичок, изучающий основы программирования микроконтроллеров и схемотехники на этих платах для разработки первым делом учится мигать светодиодом. Поэтому предлагаю рассмотреть модуль управления Триколор GS SMH-ZW-I1 в качестве своеобразной платы для разработки и тоже помигать имеющимся на ней светодиодом. Сделать это можно не написав ни единой строчки кода, с помощью конфигуратора замечательной прошивки от ptvo , специально предназначенной для создания своих Zigbee устройств на чипах CC2530, CC2531, да еще и с поддержкой усилителей сигнала CC2590, CC2591, CC2592, RFX2401.
Тем, кому стало интересно - добро пожаловать под кат!
К-распределение плотности вероятности. Единорог среди всех распределений
На Хабре имеется небольшое количество статей, главным образом в помощь начинающим аналитикам данных, в которых описываются всевозможные статистические распределения случайных величин. Упоминания об одном единственном я в них не нашел. Имя ему К-распределение. Хочу вам показать этого единорога.
На практике такое распределение используется, как правило, довольно узкими специалистами. В основном при математическом моделировании работы радиолокационных станций (РЛС), а также радаров с синтезированной апертурой и то в определенных условиях. Аналитиками данных в повседневной жизни конечно же не используется. Хотя, возможно К-распределение может описывать какие-то процессы, кто знает, эта сторона вопроса требует дополнительного изучения. Предлагаю аналитикам данных над этим подумать, а также всем желающим.
Пятьдесят лет на стезе программирования. Часть II. Первые шаги. Учёба в Дзержинке и я еду в Вентспилс-8
Захват контроллера домена с помощью атаки PetitPotam
В этой статье я расскажу про атаку PetitPotam, которая позволяет при определенных условиях захватить контроллер домена всего за несколько действий. Атака основана на том, что можно заставить контроллер домена аутентифицироваться на вашем хосте, получить его хэш и ретранслировать его в службу Active Directory Certificate Services для повышения привилегий. Статья предназначена для пентестеров и тех, кто хочет узнать об актуальных атаках на Active Directory.
Киберучения: полезная информация для защитников критической информационной инфраструктуры
В этой краткой заметке разберем, что такое киберучения, как они проводятся и какую пользу можно извлечь, анализируя отчеты об уже проведенных мероприятиях.
Галопом по ЯПам: основы Typescript
В данном туториале рассматриваются базовые фичи статически-типизируемого языка программирования TypeScript. Приводятся подробные описания, листинг кода, а также мини-задания для изучения TypeScript.
Советы по оптимизации производительности растрового потока
Недавно я сел за работу по настройке производительности FlutterFolio, приложения, которое было создано в качестве демонстрации дизайна для Flutter Engage. С помощью одного изменения я сделал FlutterFolio значительно быстрее.
Использование сертификатов в ASP.NET Core
В последнее время использование протокола HTTPS для Web-ресурсов является обязательным требованиям ко всем более-менее большим Web-проектам. Эта технология основана на использовании так называемых сертификатов. Раньше за получение своего сертификата нужно было платить. Но сегодня появление таких сервисов, как Let's Encrypt сделало возможным получение сертификатов бесплатно. Таким образом, цена больше не служит оправданием отказа от использования HTTPS.
В самом простом случае сертификат позволяет установить защищённое соединение между клиентом и сервером. Но это далеко не всё, на что они способны. В частности, недавно я смотрел на Pluralsight курс Microservices Security. И там среди прочих упоминалась такая вещь, как Mutual Transport Layer Security. Она позволяет не только клиенту убедиться в том, что он общается именно с тем сервером, с которым хочет, но и сервер может узнать, что за клиент с ним общается.
Всё это накладывает на разработчиков необходимость знать способы работы с сертификатами. Именно поэтому я и решил написать эту статью. Я задумал её как место, куда можно обратиться за основными сведениями, если что-то забудешь. Не думаю, что специалисты найдут в ней что-то новое, но надеюсь, что она будет полезна новичкам и тем, кто захочет освежить свои знания в этом вопросе.
Сжатие данных LZW
Если бы вы взглянули почти на любой файл данных в компьютере, просматривая символ за символом, то наверняка обратили бы внимание на множество повторяющихся элементов. LZW — это метод сжатия данных, который воспользовался этим повторением. Оригинальная версия метода была создана Лемпелем и Зивом в 1978 году (LZ78) и доработана Уэлчем в 1984 году, отсюда и аббревиатура LZW (Lempel, Ziv and Welch). Как и в любом адаптивном/динамическом методе сжатия, идея заключается в том, чтобы (1) начать с исходной модели, (2) читать данные по частям, (3) обновлять модель и кодировать данные по мере продвижения. LZW — алгоритм сжатия на основе "словаря".
Это означает, что вместо сведения в таблицу количества символов и построения деревьев (как при кодировании по Хаффману), LZW кодирует данные, обращаясь к словарю. Таким образом, чтобы закодировать подстроку, в выходной файл нужно записать только одно кодовое число, соответствующее индексу этой подстроки в словаре. Хотя LZW часто рассматривается в контексте сжатия текстовых файлов, его можно использовать для любого типа файлов. Однако, как правило, он лучше всего справляется с файлами где есть повторяющиеся подстроки, например, с текстовыми файлами.
Школа Open Source-разработчика COMMoN: видео, итоги
Многие программисты хотели бы поучаствовать в открытой разработке. Но зачастую они сталкиваются с проблемой – непонятно, как сделать первый вклад в Open Source, какие для этого нужны навыки и какие практические шаги, чтобы созданный код был правильно оценен, принят в проект, и предложенное решение было полезно сообществу.
Чтобы помочь новичкам сделать первые шаги к личному коммиту, я и мои коллеги в Samsung R&D Institute Russia (SRR) провели онлайн-школу «Community of Open Source Newcomers» (COMMoN), совместно с партнерами – компаниями Arenadata и DeepPavlov.ai. Под катом – ссылки на видеозаписи всех занятий школы.
«Направления» Рувеба
Статья задумана как констатация существующей проблемы – сравнительно низкого качества российских веб-ресурсов, и как стартер для серии предстоящих публикаций, развивающих эту тему. Обозначить проблему – единственная ее цель, поэтому она не предполагает какого бы то ни было анализа, тем более готовых ответов на логичный вопрос «что делать?».
В отличие от российских дорог (используются здесь в качестве метафоры), космоса, науки, медицины, образования, экономики и с чем еще наши дела обстоят не лучшим образом, развитию которых традиционно что-то мешает, как то яйц, простите, санкции, шпионы и иноагенты, встречный ветер, сглаз и т. п., пример веба примечателен.
Во-первых, он по природе своей децентрализован и в настоящее время на удивление демократично не стеснен законодательством – во-вторых.
Объяснить состояние российского веба одной лишь неблагоприятной экономической обстановкой вряд ли получится. Как мы увидим из представленных в статье данных, в Китае, в котором перечисленные выше, а заодно и другие сферы деятельности находятся в менее удручающем и более оптимистичном состоянии, качество веба также оставляет желать лучшего.
Технологии и наилучшие практики, использующиеся во всем мире для строительства веба, доступны повсеместно и многие из них open source и free. Сам процесс строительства не требует капитальных вложений, требующихся на строительство дорог, газопроводов, запуск космических станций. Поэтому, в отличие от прочих глобальных составляющих жизни любого общества, применительно к вебу вопрос «почему он у нас такой хреновый?» не является риторическим.
Нам нужны не дата-саентисты, а дата-инженеры
Данные. Они повсюду и их становится только больше. За последние 5-10 лет data science привлекла множество новичков, пытающихся ощутить вкус этого запретного плода.
Но как сегодня выглядит ситуация с наймом в data science?
Вот краткое изложение статьи в двух предложениях.
TLDR: в компаниях на 70% больше вакансий на должности дата-инженеров, чем на должности дата-саентистов. Так как мы обучаем новое поколение практиков в сфере обработки данных и машинного обучения, давайте сделаем больший упор на инженерные навыки.
Так как моя работа заключается в разработке обучающей платформы для профессионалов в области данных, я много думаю о том, как эволюционирует рынок вакансий, связанных с данными (машинное обучение и data science).
Общаясь с десятками перспективных новичков в сфере данных, в том числе и со студентами лучших вузов мира, я увидел серьёзное недопонимание того, какие навыки являются наиболее важными, помогают выделиться из толпы и подготовиться к карьере.
Дата-саентист может работать в любом сегменте следующих сфер: моделирование машинного обучения, визуализация, очистка и обработка данных (например, преобразование данных для SQL), проектирование и развёртывание на производстве.
С чего вообще начинать рекомендации курса обучения для новичков?
Данные говорят громче слов. Поэтому я решил провести анализ должностей в сфере данных, на которые есть вакансии у компаний, выходивших из Y-Combinator с 2012 года. Вопросы, которыми я руководствовался в своих исследованиях:
Упрощённые рейкасты в Unity
Всем привет, меня зовут Григорий Дядиченко, и я технический продюсер. Недавно я столкнулся с одной интересной задачкой в ходе реализации проекта, и подумал что стоит наверное рассказать про физику в Unity, про нюансы работы с ней и про то, какие существуют альтернативные варианты в решении разных задач. Как связывать это всё дело с EventSystem и расширять Unity классы. Если вам это интересно - добро пожаловать под кат.
Делаем на Android анимацию как в Doom. Приложение-огонь
Как же отрисовать огонь? Нам нужно придумать реалистичное движение пикселей, изменение цветов. На самом деле алгоритм очень прост и уже описан не раз. Давайте реализуем его в Android.