Писал на Vue, Svelte. Пробовал и другие фреймворки. Как-то раз я загуглил "лучший ui фреймворк", и на первом месте в выдаче оказался $mol. Конечно, я не поверил и начал разбираться...
Изучаем дифракцию Фраунгофера с помощью Wolfram Language и WLJS Notebook
Дифракционная картинка света и тени, получаема на большом расстоянии от силуэта объекта, находящегося перед источником света, — математически пропорциональна двумерному преобразованию Фурье
Из основ оптики: дифракция — это явление, которое возникает, когда свет (или другая волна) проходит через препятствие или отверстие и отклоняется от "очевидного" прямолинейного пути. Дифракция Фраунгофера относится к особому случаю, когда наблюдение осуществляется на большом расстоянии от объекта (или с использованием линз).
По сути форма объекта находящегося перед источником света (например, отверстия или препятствия) преобразуется в характерную картину света и тени на экране, называемую дифракционной картиной.
Ниже приведен код, который можно вставить в блокнот и попробовать порисовать самому. Это ни что иное, как лишь двумерное фурье-преобразование силуэта в реальном времени
Кто и как создаёт архитектуру программного обеспечения, какими навыками должен обладать такой специалист и каковы его карьерные перспективы? Чему учиться и как развиваться мидлам и синьорам, чтобы начать работать с архитектурой?
Раз в год-два мне приходится вспоминать, что Python — не C++.
В этот раз я наткнулся на случай, когда отформатировать и склеить колонки результата запроса на стороне PostgreSQL и распарсить Python-ом оказалось эффективнее, чем запрашивать колонки как отдельные значения.
Конкретнее, при переходе от этого запроса:
SELECT * FROM o_relations ORDER BY id DESC LIMIT %(limit)s
к этому:
SELECT CONCAT(entry_id::text, '|', tag_id::text) AS ids FROM o_relations ORDER BY id DESC LIMIT %(limit)s
скорость извлечения данных увеличилась примерно в 4 раза.
Причиной тому тяжёлая конвертация данных из формата С в формат Python внутри Psycopg.
18 ноября завершился наш облачный IT-турнир — интеллектуальное IT-соревнование для профи по направлениям DevOps, Go и кибербезопасность.
Напомним, что участники соревнования должны были решить все задания за 50 минут и набрать как можно больше баллов. Турнирная таблица обновлялась в режиме реального времени — мы с интересом следили за тем, как IT-специалисты устанавливают новые рекорды.
Свои навыки решили проверить 892 участника, а 537 из них стойко дошли до самого конца и выполнили все задания 🦾. В итоге в лидеры вырвались:
В лиге DevOps:
🥇1 место — @evgeniy_fyodorov, 1437 очков.
🥈2 место — @Kciod, 1290 очков.
🥉3 место — @dimadragon, 1219 очков.
В лиге Go:
🥇1 место — @smetanin, 2843 очков.
🥈2 место — @melpnz, 2778 очков.
🥉3 место — @itas, 2745 очков.
В лиге кибербезопасности:
🥇1 место — @T_Frost, 1868 очков.
🥈2 место — @KiraCoder, 1814 очков.
🥉3 место — @georgybelyakov, 1787 очков.
Поздравляем! Они получат ачивку победителя и карьерную консультация от Марины Ломадзе — руководителя рекрутмента в Cloud․ru. Мы уже начали связываться с победителями, чтобы рассказать, как получить заслуженные призы😊.
А у всех хабраюзеров, которые верно решили более половины заданий турнира, появятся ачивки IT-Лиги в профиле на Хабре.
Хотите узнать правильные ответы на задания IT-турнира? Ставьте плюс в комментариях, а также указывайте номер или название задания. Если наберется много желающих, позже мы сделаем небольшой обзор с решениями.
Самый простой способ свести человека с ума: Заставить его делать то, что он делает.
Программист. Учился в универе, работал три года. Хорошо программирует на PHP. Прилежно выучил все стандартные фреймворки, знает best practices, понимает как правильно деплоить проекты и докером, и композером. Знает как чистить репы, исправно ведёт коммиты, и пушит всё хорошо и вовремя. Получает зарплату, чуть выше средней, и рад жизни.
Давайте подойдём к этому программисту и скажем “РНР мёртв, мальчик! Тебе надо учить Раст!” И теперь, программист, который последние шесть лет учился программировать начинает думать “Хмм, возможно я не умею программировать”. О, нет, мальчик. Программировать-то ты как раз и умеешь. Ты в состоянии выполнять задания, следить за архитектурой и кодом, делать правильные коммиты и работать в команде. На каком языке ты это делаешь - я плевал с высокой колокольни.
Если бы мне платили по пять центов за каждый раз, когда я слышал о том, что PHP - мертв. Я слушал это в 2004 году, я слушаю это в 2024. Что не мешает некоторым людям деплоить Вордпрессы. (При том, что я не в восторге от PHP, но я отдаю себе отчёт в том, что в 2021 году 80% всех сайтов в интернете написаны на РНР)
Вам не надо учиться программировать, если вы это уже знаете. Вам нужно улучшать свои, и без того хорошие, знания, чтобы становиться ещё круче. Не ведитесь на завывания маркетологов о том, что вы не знаете вещи, которые вам уже известны. Это всё - маркетинговый бред, с целью продажи курсиков.
Ежемесячный дайджест: главные новости за октябрь☂️
🦾 Провели хардкорную IT-конференцию про внутрянку облачных решений и русского AI — GoCloud Tech. Как это было и что говорили участники читайте в статье и смотрите доклады в записи.
🌾 Развернули IT-инфраструктуру в полях… в нашем новом ролике! Как широки просторы для ваших идей в Сloud.ru смотрите на YouTube, на RuTube или в VK.
⚙️ Увеличили бесплатный объем хранилища Evolution Object Storage — его хватит, чтобы загрузить медиафайлы, бэкапы или архивы. А про опыт тех, кто уже запустил проект в облаке с помощью бесплатных ресурсов Evolution free tier, читайте в статье.
🎓 На вебинаре рассказали про новые бесплатные курсы по основам облачных технологий и сертификацию. Обсудили, зачем изучать облачные сервисы, как устроено обучение на курсах Cloud.ru, что дает электронный бейдж и как может помочь в построении карьеры.
Это не IDE, а neIDE - простое графическое приложение для быстрого запуска небольших программ на C++. Может пригодиться когда появилась идея или что-то прочитал и хочется быстро протестировать, но нет времени на запуск тяжеловесных IDE типа Visual Studio или открывать в браузере 1001-ю вкладку чтобы протестировать в godbolt.org. Нужно лишь назначить комбинацию клавиш на запуск или создать ярлык в доке. Можно конечно по-быстрому запустить vim, набрать код и ручками напечатать "g++ main.cpp && ./a.out", но мне надоело так постоянно делать, поэтому написал программу, которая все это делает сама. Ближайший аналог - geany - мощный блокнот, где можно прописать свои команды, но она мне показалась слишком перегруженной функционалом.
В общем, представляю neIDE, где есть только кнопка "Run", поле для ввода кода и поле вывода результатов/ошибок. При запуске загружает код-заготовку. Работает только с тем кодом, что в окне ввода. Нет возможности подгружать внешние файлы. Написана на wxWidgets. Компилирует код под с++17, но можно легко скорректировать под нужный стандарт. Заточена на Linux, но при некотором упорстве можно скомпилировать на Windows. Минимум строк кода, можно форкнуть и быстро доработать под свои хотелки.
Всё чаще слышно про подключение ИИ к процессу код-ревью. Звучит круто, но есть нюансы.
AI-ревьюеры сегодня напоминают слишком старательного джуна: пытаются найти проблемы даже там, где их нет. В хорошо написанном коде они умудряются находить множество "проблем", создавая лишний шум. В итоге разработчики тратят больше времени на фильтрацию этих замечаний, чем на исправление реальных проблем.
Кроме того, AI смотрит только на код в текущем PR, не понимая ни архитектуры проекта, ни бизнес-требований. В итоге выдает технически правильные, но часто бесполезные рекомендации. Особенно это заметно в крупных проектах, где каждое изменение влияет на кучу связанных компонентов. Где есть "исторически сложившееся"
Код-ревью — это не только поиск багов. Это обмен опытом и обсуждение подходов. AI не может понять, подходит ли решение для конкретной команды, насколько оно масштабируемо и как впишется в существующую кодовую базу.
Сильные стороны AI все же есть. Он никогда не устает и не пропускает очевидные ошибки. Он быстро проверяет синтаксис, ищет типовые уязвимости, следит за стандартами кодирования. Может быстро проверить форматирование, найти потенциальные утечки памяти, отследить использование устаревших методов API. Это реально экономит время.
Поэтому AI в код-ревью лучше использовать как доп помощника - базовые проверки и очевидные ошибки. А разработчики-люди всё еще нужны для работы с пониманием контекста.
Для тех, кто рассматривает TypeScript как инструмент (язык) для борьбы с ошибками: склонность к ошибкам и время их исправления в TypeScript оказались не значительно ниже, чем в JavaScript. Среднее отношение коммитов с исправлениями ошибок в проектах на TypeScript было более чем на 60% выше (0.126 против 0.206), и в среднем проектам на TypeScript требовалось более чем на один день больше для исправления ошибок (31,86 против 33,04 дней).
Более высокий уровень опыта в парном программировании не способствовал получению высокого балла в викторине по программированию на Java. Уверенность в своих силах была единственным значимым фактором, влияющим на итоговые результаты обучения, тогда как опыт парного программирования и взаимодействие уверенности с опытом парного программирования не имели значительного влияния на конечные результаты обучения.
Типизация на основе вывода типов — популярная функция в Kotlin, и её использование не зависит от характеристик проекта, таких как размер, популярность или количество разработчиков. Например, в тестовом коде вывод типов чаще применяется в объявлениях полей и возвращаемых значениях функций, чем в других местах.
Генеративный ИИ может предсказывать действительные проблемы с удобством использования в исходном коде, которые легко просмотреть и исправить до выпуска приложения, избегая неудовлетворенности пользователей и ухудшения их опыта. Однако важные проблемы, выявленные экспертами по удобству использования, были упущены UX-LLM.
«Профессиональный TypeScript» — поможет в разработке масштабируемых JavaScript-приложений. Лучше совмещать чтение с практическими заданиями или курсами.
Бесплатный бот Спич для расшифровки голосовых и кружочков
Бот впервые увидел свет год назад и успел собрать много довольных пользователей и отзывов. После перезапуска бот снова работает, всё ещё бесплатно и без ограничений.
Бот расшифровывает голосовые и кружки в текст. Можно переслать ему сообщение или добавить в чат, тогда он будет переводить все гс и кружки от всех участников.
Полезно если под рукой нет наушников, вы на важном совещании или просто не любите гс и кружки.
Предвещая возможное подозрение на пиар, предлагаю заглянуть в коменты прошлого поста и опрос в конце; действительно многим людям бот оказался полезен, многие писали лично, именно в связи с этим пишу пост о том что бот перезапущен.
Подключайтесь к вебинару «Как мигрировать IT-инфраструктуру в облако с минимальными рисками: опыт Cloud.ru и ALP ITSM».
📅 Когда: 21 ноября в 11:00 мск
📍 Где: онлайн
Чтобы быстро мигрировать в облако без простоев и лишних затрат, нужно тщательно проанализировать цели и потребности бизнеса, а также грамотно спланировать весь процесс перехода.
На вебинаре эксперты из Cloud.ru и ALP ITSM поделятся практическим опытом переноса IT-инфраструктуры в облако и расскажут, как избежать ошибок и минимизировать риски миграции.
Вы узнаете:
в чем преимущества перехода в облако для бизнеса;
как не ошибиться при выборе облака;
как минимизировать риски и простои в ходе миграции;
какие современные инструменты и сервисы помогут упростить миграцию;
как избежать ошибок при переходе в облако.
В результате вы будете знать, из каких этапов состоит процесс миграции и как разработать оптимальную стратегию переноса IT-инфраструктуры в облако. А еще получите чек-лист для подготовки к миграции и выгодные предложения от Cloud.ru и ALP ITSM, чтобы провести перенос максимально эффективно 🔥.
Будет полезно IT-директорам и руководителям отделов инфраструктуры, CEO компаний, системным администраторам, а также всем, кто планирует миграцию из облака в облако.
Если у вас есть вопросы, их можно задать на самом вебинаре или в комментариях под постом. Эксперты Алексей Ри — менеджер по работе с клиентами в Cloud.ru и Алексей Горюнов — руководитель проектного офиса в ALP ITS, ответят на них в прямом эфире.
А вы знали, что cloud computing skill — навык облачных вычислений, который входит в топ-10 самых востребованных hard skills (по аналитике LinkedIn за 2023 год)?
Чтобы вы могли подтвердить свои знания и навыки, мы создали Cloud.ru Fundamentals — серию курсов и сертификаций о базовых принципах облачных технологий и подходах к их внедрению.
Cloud․ru Evolution Fundamentals — курс про работу с IaaS-сервисами платформы Cloud․ru Evolution и их настройку под свои проекты и задачи.
Cloud․ru Cloud Fundamentals — курс про основы использования и внедрения облачных технологий, а также сертификация — чтобы вы могли официально подтвердить свои знания и навыки, получить электронный бейдж и иметь аргумент для повышения или перехода на другую должность.
Хотите узнать больше? Тогда подключайтесь к вебинару «Как подтвердить знания про облака: анонс новых курсов и сертификации».
Если у вас есть вопросы, задавайте в комментариях под этим постом — мы передадим их экспертам. И подключайтесь к вебинару, чтобы узнать ответы и поучаствовать в розыгрыше трех бесплатных консультаций с топ-экспертами 🔥.
В одной из недавних статей узнал про сайт HighLoad.fun, было интересно решить несколько задач и забраться в лидеры. Если кто-то любит highload задачи, то зову принять участие. Общался с автором проекта HL в телеграме - отзывчивый добродушный человек, планируется версия сервера 2.0 с новыми плюшками. Может и выглядит как реклама, но моя заинтересованность чисто спортивная, я решаю такие задачи сколько себя помню, это как кроссворды для меня, а без конкуренции нет желания улучшать результат. В секции C++ конечно соревновательный дух активнее, но я пишу на C# и там результатов не так много.
Подключайтесь к вебинару «Безопасность облачной инфраструктуры: стратегия и инструменты противодействия».
📅 Когда: 19 ноября в 11:00 мск
📍 Где: онлайн
По данным компании StormWall, Россия вошла в топ-10 стран по числу DDoS-атак за первую половину 2024 года, получив 6,8% от мировой DDoS-активности. Атаки на облачные и веб-сервисы становятся все более частыми, что делает защиту критически важной для стабильной работы приложений и самого бизнеса.
На вебинаре эксперты Cloud.ru и StormWall расскажут, как современные облачные решения помогают снизить киберриски и обеспечить безопасность, а также раскроют возможности эффективной DDoS-защиты.
Вы узнаете:
какие есть подходы к созданию безопасной облачной инфраструктуры;
какой уровень безопасности предлагает «облако из коробки»;
как распределяются обязанности по информационной безопасности между облачным провайдером и клиентом;
как DDoS-атаки влияют на бизнес;
как менялся ландшафт DDoS-атак в России в 2024 году;
как выстроить эффективную защиту от кибератак;
когда подключать защиту от DDoS-атак;
какие есть возможности управления защитой и мониторинга угроз.
Будет полезно IT-директорам, директорам по информационной безопасности, руководителям разработок веб-сайтов и мобильных приложений, а также всем, кто заинтересован в повышении уровня безопасности своей компании.