Напоминаю, что я очень хочу стать участником сообщества #ityoutubersru - обязательно напишите АйТиБороде и другим членам сообщества в комментариях, чтоб пригласили "Петр Turbo" к себе!
Да что уж там, даже 2 млн считает…лень дальше перебирать. И время расчёта определённо одинаковое. Только кулер услышал как немного подзавелся, но на пару секунд всего
Очевидно, они открыли код, потому что сами не смогли разобраться, почему у них приложение крашится от tan(x*10), а программист, который с 1985 года писал этот калькулятор, уже умер
@@Ayleen_Hazar Для общего развития так сказать: Плевать. Как раз изначально родитель 1 и родитель 2 ввели где-то локально, чтобы людям легче было заполнять документы, так-что официально ты имеешь полное право использовать любой порадок. Если встретишь, вове расскажи
@@Смотрящий_за_пивом У индусов есть гении, конечно, но лучше всего себя показывают CEO компаний гигантов, где надо управлять многослойным зоопарком именно "инди"-разработчиков.
А вот если бы надо было решить задачу с LeetCode, спроектировать Pastebin на белой доске и разобрать последний конфликт на рабочем месте по STAR-методологии, то тут бы они вас уделали
"Уделали" бы ровно до момента, когда такие как он не откроют свои компании. И если не напартачить с "процессами", то такие корпы как Гугл и Майки сами себя зароют нафиг!
Прикольно. Я в 1991 году на фортране сделал программу, которая строила график функции с встроенностью сто крат. Внутри косинуса мог быть синус, внутри синуса логарифм и так сто раз . И подфункциональное выражение могло иметь сотню функций. Она строила и в декартовых и в полярных координатах. А еще находила решение системы нелинейных уравнений со ста неизвестными. И тоже любой сложности функции. Что с миром происходит?
@appleseed5711 Моё поколение этот мир просрало. Я программистом никогда не работал. Это было хобби пока преподавал в институте. Диплом мой был программой, хотя я инженер сварщик. Написал программу исследования функций , подарил кафедре математики. Она была ещё на дискете 32 кб. Эта программа была лучшей на то время. Только через шесть лет её превзошла западная программа, которую кафедра математики купила. И написал программу контроля знаний по сопромату. За это получил премию десять долларов. Потом уволился и стал торговать на базаре шмотками. Такой творческий путь.
Это всё лютый чистый код к множественными абстрактными фабриками, которые возвращают абстрактных визитёров, которые работают с абстрактными однострочными иммутабельными объектами для генерации тонн строк, которые тоже сами по себе иммутабельные, дядюшка Боб одобряет - красивый код и тонны мусора, которые сжирает сборщик мусора, трятя херову тучу процессорного времени, УХАХАХАХА, и да, вместо if, наверное, используется try catch, который от малейшего вздоха каждый раз получает абстрактные исключения от таких же абстрактных мутантов-счетоводов, раскручивая стек вызовов на каждой итерации, вот вам проблемы процессорного времени :)))))))
@@kerojey4442неплохой, чистый код сводит к минимуму усилия поддержки кода, а вменяемое использование, тормозит на 1-2мс чтобы пройти слои абстракции, не говоря, что на Java, C# это почти зерокост, а на Rust так вообще зерокост
Да. Дело именно в чистом коде. Как вы откровенно заколебали. Чистый код ему какаху в штаны подложил. Вот писал бы этот же индус без чистого кода - все отлично было бы. Да-да-да. Почему-то движок дума 3 - с оглядкой на чистый код сделан. Такие же фабрики, визитеры и прочие. Медленно? Да чет нет. Один из самых быстрых движков того времени учитывая сколько туда напихали новых технологий. Игрулька хорошо так работала на железе своего времени и при этом через несколько лет все еще выглядела отлично. А вот код какого-нибудь ЯндереДева - без этих ваших чистых кодов и прочего. И имеем в простенькой фигне дропы до 10фпс на мощном железе. Может хватит, нафиг нести чушь, которую где-то услышали и не понимаете про что вообще говорилось? В контексте майков - дело в том, что набирают по квотам, ставят сроки релизов и приоритеты в массе от балды. Сверху - культура в конторе давно сложилась: ЕСЛИ БУДУТ ВОЗБУХАТЬ ПОФИКСИМ. Не будут - пофиг. Все. Фиче поставили низкий приоритет, какой-то индус по быстрой нашел что-то, скопипаситл, закрыл таску и пошел по своим делам. Писал бы он хоть на ассемблере, хоть на перфокартах, хоть как - результат был бы такой же.
примерно 40 лет назад когда появились многопроцессорные системы, и только у вас есть 12 ядер, а вы вменяемо не можете ничего раскидать по всем 12-и ядрам, но зачем вам дали 12 ядер? что бы что?
Сейчас 31 декабря 2024 года, и у меня виндус 11 22H2 с последними обновлениями за ноябрь. Подобные баги этого калькулятора никуда не делись. Помню, сначала небольшим шоком было, что он мне не мог построить график простейших "школьных" функций. Потом дошло, что это же продукт Майкрософт, так что всё в норме : )
Здравствуйте, Петр! Недавно нашел ваш канал (этот и основной). Очень интересный контент, особенно нравится ваш ход мыслей о программировании и микроэлектронике. Сам учусь сейчас на радиотехнике, 3 курс. К сожалению, я не видел ваш стрим, где писался графический калькулятор из этого видео. Этот стрим где-нибудь остался? Можете скинуть ссылку? Очень любопытно посмотреть на это (и повторить самостоятельно). Заранее спасибо!
Мне кажется, что всё эти лаги были связаны с тем, что весь нынешний софт, а конкретно фреймворки и библиотеки, оказываются недостаточно гибкими в погоне за абстракцией, из-за чего для реализации каких бы то ни было задач приходится идти обходными, иногда небезопасными, путями. Все эти анимации и тд - это круто, ООП - это круто... Но... Я пробовал писать некое подобие игрового 2D движка на Pyglet. Естественно следовал хорошему тону в оформлении кода или старался ему следовать, на сколько это позволял Python и сам Pyglet, но реальность такова, что написав заготовку движка, примерно лишь 15% от задуманного, и сделав игру-бродилку на нём, я получил порядка 500 фпс. Сделав такую же игру "напрямик", без хард-кода, но без абстракций и прочего - я получил 1400 фпс. Вот и делаем выводы.
Давно это ясно. Вот до чего доводит питонизация головного мозга. Вместо языков программирования, пишут на змее, топ-1 по популярности недавно стал. Зато удобна зато учиться не нада зато манагер доволен что код быстрей написан зато абстракция зато анимашка крутится как дезигнер представил зато ничеголишнева зато латте попить можно пока выполняется код зато библиотеки. Так и живем: железо становится мощнее, а компы работают медленнее. У меня ноут из 90-х на винде 98 летает как пуля, а современный комп с современной же чистой виндой ловит тормоза и бсоды.
@@asante5979 ну, увы, реальность такова, что бизнесу нужен рабочий продукт, а как он работает - не важно. Пользователи схавают) К слову, пишу свой курсач на Django) (поступил на "Информационные системы и программирование, что является громким названием для профессии "Веб-дизайнер", что я терпеть не могу, но уже поступил - что поделать) А ведь и правда - зачем заморачиваться, если есть готовые и простые решения?)
Ну, они же от них не могут отказатся... типу.. Для дебаггера ведь нужны связующие точки с первоначальным исходником. А если компилятор будет убирать всю ту дребедень, что насрал прогер, то получается, что проще сразу писать по правилам компилятора условно. Та да.. машина не виновата, - она делает лишь то, что затребовал пользователь. И современные прогеры далеко все тоже не инженеры, и по сути тоже пользователи какого-то уровня абстракции. Не опустят они свое чсв на уровень машинных кодов и архитектуры компъютеров.
@@asante5979 Питон не виноват вообще. Кстати я заметил, что в частности производительности ничем не устапает, если им пользоваться правильно. Виноват подход к воспитанию кадров. И тот срач, что вместо легаси создан в бизнес-логике всех компаний. Ну, камон! Всегда в такой мир могут ворватся даденьки в свитерах и очечях, и загнать новые стандарты в массы! ;) Прост пока никто не хочет этого делать. И тогда на этому "веку" все наладится на след 10-15 лет. Пока можна купить больше мощностей, никто не будет трогать ни код, ни дезайн. А главное - пока дешевле.
@@bidanfullko1, куда ворваться должны дяди в свитерах? В Пайтон они не пойдут. Дяденьки не первый год держат оборону от всяких активистов, в частности от российских телезрителей.
Внесу пару поправок насчет тасок. В плюсах всё, что касается асинхронного кода, должно быть расписано ручками, да и планировщик можно написать однопоточный (boost::asio::io_context, например). Мелкомягкие тут используют самописный task, который, в общем-то, самый обычный (такую же концепцию еще в паре мест видел) и планировщик, который раскидывает таски на тредпул. Немного посмотрел код, эти товарищи солвер (m_solver, тот, что собственно считает график) не прикрепили. Он вызывается синхронно (m_analyzer->ParseInput()), и его ждут, потому и виснет всё, а затем он в таймаут вылетает. Через отладчик видно, что его все ждут. Насчет причин вылетов при перетаскивании окошка - согласен. В текущей версии пофикшено, кстати - окну вообще насрать на движения мышкой, пока солвер не пропукает всё. Ну, это всё спекуляции, на самом деле фиг его знает.
В шкиле меня учили брать минимальное количество точек для нарисования графика На первом курсе шараги меня учили, как будет изменяться стандартный график в зависимости от доп.условий А в калькуляторе винды всё через for считается и точки постоянно хранятся в оперативе?
создаем точку, не... говно, создаем абстрактную фабрику точек и через геттеры получаем ее координаты, на ее основе создаем линию, линий много, создаем абстрактную фабрику линий разных размеров точек и видов точек. Говно, лагает, делаем код многопоточным, создаем отдельный таск на создание точки и потом создания обьекта линии. Ну впринципе говтово, теперь можно for
@@eterlineсмешно, смешно. Все посмеялись? Тем временем компилятор и рантайм, которые буквально встраивают примитивные методы как при прямом доступе и игнорируют все оверхеды, буквально не создавая промежуточных ненужных объектов или размещая их в стеке тоже посмеялись
@@justfairytale5722 да естественно это так. Условный Rust это без утаек пишет в своей доке. Разве что в работе с интерфейсами иногда есть накладка по работе с разименованием.
@@justfairytale5722 просто опять же, зависит от языка и компилятора. Где-то подобное наложение сказывается и объявляется в тормозах(js дарова). Где есть компиляция и исполнение собранного из обьектных файлов, меньше. Естественно что современные компиляторы написаны под современные методы и подходы разработки. Мужик... Это буквально можно прочесть в документации
@@ItMohican а зач если есть адресная строка браузера? Бтв вчера смотрел видос о том как жоско лагает построение графиков функций в виндос калькуле, держу в курсе)))
Не отрисовывается все кроме tan(10*x), по крайней мере ближайшие 9,11, 20, 200 и даже 2000 рисует. Причём время на рассвет везде одинаковый по ощущениям, с секундомером не сидел) Вероятно 10 это какое-то супер магическое число 🧙 🪄
Поскольку сломан многопоточный код - при разных запусках программы, разной скорости нажатия на кнопки, загруженности системы и любых других рандомных факторов можно получать самые разные и неожиданные результаты. Когда демонстрировал на стриме даже Cos(x * 3) не отрисовался)
К сожалению современные проекты настолько комплексные что без стандартов черезжопного кодинга не обойтись. Но как видно аутсорс индусам некритичных задач может сделать каку в любом месте. И да, асинки это круто для не подвисания интерфейса от анимаций (когда анимация состоит из двух математических действий и одного условия), но для тяжёлых задач лучше выделять потоки. Не выделяется поток потому что всё друг на друга завязано? значит ищи где понасвязывал лишнего и развязывай. Я калькуляторы только на до диезе писал, один с исполозованием движка таблиц (он содержимое строчки в ответ превращал) а другой для расшифровки битов состояний из int либо обратно чтоб кодировать. Последний был чуть кривой, за пару фидбеков от людей его использовавших я вёс пофиксил. Вот уж не думал что покрасить пиксели в прямоугольном окошке согласно введённой функции это такая нереальная задача.
При этом у Microsoft существовало прекрасное приложение Microsoft Mathematics 4.0, в котором таких косяков не было. Но видимо с запуском Windows 8, они направили все силы на разработку Metro-приложений
А я возмущался что Windows Photo медленно работает. Лучше уже запустить мобильный Photomath или любое другое предложение чем мучать себя этой поделкой.
Интересно разраба в майкрософт который это сделал, ещё не уволили😂😂 твой говнокод оказался лучше чем код от майкрософт. Может петр пойдет в майкрософт роботать🤔
Вы пользовались диспетчером задач в 11 винде? Когда они его только обновили, он был ужасным, супердолгий запуск, постоянно багающийся UI и куча других проблем, и лишь спустя 3 года и кучу фиксов (я читал списки изменений) у них получилось исправить большую часть UI багов (запуск всё ещё очень тугой). За 3 года корпорация не смогла допилить простейшее приложение...
В топку такую корпорацию и их продукты, на..! -_- Потому что это банальное неуважение. Нужно скооперироватся и переписать все к черту.. а еще лучше - новая архитектура и дезайн. Застряли они в своих "окнах" тупых! Ничего не могут! Только и срут на то, что раньше нормально работало.
Да мне кажется у них просто атомарные операции отсутствуют намертво, из-за этого параллельные участки кода конфликтуют, хотя все равно что-то отрисовываться должно...
@ambi196 Практически ничего не поменяется (особенно для индикации конца блока), если первую скобку как отдельную строчку убрать с начальной колонки. Визуальный фокус намного лучше срабатывает на отступах, чем с символами (тем более - с очертаними "присмотрись внимательнее, а то спутаешь").
график функций с парсером на паскале? браво. я делал простто парсер для чисел и это было то еще уродство изза регэкспов. тем не менее, считал он верно. ща могу куда лучше, но дело было на c#. и чет смотрю и понимаю,что синтаксис паскаля ван лав. лаконичный и емкий. как классическая машина, пусть это вполне себе модный на время разработки языка синтаксис,но он действительно красив. крч люто плюсую
@@РоманСмородов-л2в как бы и нет. лаконичный синтаксис,тогда это джава.шарпы,но никак не плюсы.си и паскаль одинаково многословные. у паскаля синтаксис таки более классический и изза этого на маленьких прогах более читабельный. на маленьких. потому что с уровнями вложенности,растет бида с чтением. с другой стороны это не еще ада. крч,я с вами не согласен)
@@MrChelovek68 Вы явно не знакомы с последними версиями шарпа)) Превратили язык в невесть что. Си имба, есть убрать директивы и всякие "новшества" от разрабов компиляторов
@@etherzon если вы думаете,что я буду спорить,то ошибаетесь. я с "операторов верхнего уровня" писал в сообщество,что они пилят дерьмо и ломают даже обучательность языку. а про си, ну макросы нормас тема,если не злоупотреблять, а по делу. а новшества-тут люто плюсую. смузихлебный мусор реально бесит.
остается иногда трабл их планировщика, он иногда может забить на то, что горутину можно пустить в отдельный потом и просто делает ее асинхронно. (бред доходоит до того, что работа с атомиками и бенч этого на разных платформах выдает разные результаты в сравнении с обычной блокировкой мьютексами, хотя первые лежат под капотом того же sync). Хотя вроде как ведутся доработки и можно будет пинать менеджер самому. Однако каналы реально удобная вещь.
Подавляющее большинство контрибьютеров этой фичи на гитхабе - сотрудники майкрософт + code review + testing. Кроме того - винда продается за деньги - и от нее хочется чего-то большего чем "мы насобирали опен сурс кое как - не нравиться не используй".
@@turborium UWP/WinUI упакованные приложения работают в среде контейнера приложений Windows и управляються распределителем памяти. Твоё приложение запускается на прямую без контейнера, вот и perfomance высокий. Скорее всего для графиков они используют Win2D который работает на уровне системы и не является частью контекста упакованого UWP приложения, любой вызов API или взаимодействие с компонентами вне контейнера требуют время на выполение и обработку запроса для этого используются async/await.
@@turborium В UWP не понятия Window вроде как в WPF и мы не можем на прямую работать с окном, так как окно не являться вообще частью нашего приложения, окно нам выделяет система, по этому окно и CoreApplicationView которая работает в этом окне, существуют паралельно друг от друга. Так как окно отрисовывается на системном слое оно не зависит от выполнения операции async/await, что нельзя сказать про основной UI приложения который будет ждать пока Win2D отрисует график.
Пётр, технологии развиваются, асинхронный код неизбежен:) ну а насчет калькулятора, возможно они забыли поставить стену(barrier) чтобы синхронизировать потоки, до того как запускать отрисовку графика.
угараю. Попробовал построить график тангенса 10 икс в этом калькуляторе - ни в какую. Хотя график тангенса 9,99999икс и 10,00001икс он запросто строит быстренько
я регуляно использую Scientific режим калькулятора Windows на протяжении примерно 7 лет. я только сейчас узнал что оказывается у этого калькулятора существует режим рисования графиков. подозреваю что невероятно малому количествую пользователей нужно рисовать график sin(x) * cos(10x) * x. соответственно эту фичу и не доводят до идеала. автор как ребёнок, будто не знает как устроена коммерческая разработка. хотя если в 2021м году пишешь калькуляторы на Делфи, то веротно от реальной коммерческой разработки ты ооооочень далеко...
Не хочу быть адвокатом майков, но они просто забили хер на фичу, которая по размеру примерно 0.001% от размера винды. Людям кому нужна тригонометрия используют специальный софт, а то что завезли по приколу в виндовый калькулятор, никто не эочет больше тратить на это деньги.
Напоминаю, что я очень хочу стать участником сообщества #ityoutubersru - обязательно напишите АйТиБороде и другим членам сообщества в комментариях, чтоб пригласили "Петр Turbo" к себе!
Да что уж там, даже 2 млн считает…лень дальше перебирать. И время расчёта определённо одинаковое. Только кулер услышал как немного подзавелся, но на пару секунд всего
чел ты даже не представляешь как похож на другого чела прикалиста саша кроп)
А что вы хотели от маленькой инди-студии?
уже исправили
@@sezamenko неа
@@sezamenko нет, не исправили
@@sezamenko ни$уя
@@Lithar до сих пор не исправили кстати))))))
Очевидно, они открыли код, потому что сами не смогли разобраться, почему у них приложение крашится от tan(x*10), а программист, который с 1985 года писал этот калькулятор, уже умер
Ну ничего, так бывает, когда увольняешь программистов и нанимаешь манагеров и хрюш.
Маловероятно
а как иначе при капитализме
@@3than0lvideos22 Вот в совке программисты не умирали!
ахахахахах
Никогда бы не подумал, что Мэдиссон ещё и в программировании разбирается.
тоже медиссона вспомнил
В Майкрософт настолько все плохо, что их унижает внебрачный сын Мэдисона и Хованского!
А кто родитель два? Мне для домашнего задания😶
@@Ayleen_Hazar Для общего развития так сказать:
Плевать. Как раз изначально родитель 1 и родитель 2 ввели где-то локально, чтобы людям легче было заполнять документы, так-что официально ты имеешь полное право использовать любой порадок.
Если встретишь, вове расскажи
@@Ayleen_Hazar 2 отца, в доту не играл чтоли?
@@ld2848 ты не понял вопроса
Перефразирую, оба родителя 1. Понятно?@@Ayleen_Hazar
Уже прошло 3 года с выпуска видео, а калькулятор до сих пор крашится от tan (10*x)
У меня норм, ток что проверил
Ага! Попался, пират! А ну иди винду обновляй!
+ тоже не работает, на 11 свежей винде со всеми обновами
@@Vincent-vn4ct Работает всё
пиздабол
"Эта функция слишком сложна для графика". Реализующий ее алгоритм индус плохо учился в школе. Попробуйте повторить позднее. :)
Если это был индус, то забавно слышать недавние заявления маска.
Там написано "эта функция слишком сложна, чтобы отобразить в виде графика"
@@Смотрящий_за_пивом какие
@@Смотрящий_за_пивом У индусов есть гении, конечно, но лучше всего себя показывают CEO компаний гигантов, где надо управлять многослойным зоопарком именно "инди"-разработчиков.
Нет языков, где все эти функции не встроены в язык уже лет 30.
Си, С++, Java, JS, C#.
Они калькулятор на Asm писали или на BrainFuck
А вот если бы надо было решить задачу с LeetCode, спроектировать Pastebin на белой доске и разобрать последний конфликт на рабочем месте по STAR-методологии, то тут бы они вас уделали
"Уделали" бы ровно до момента, когда такие как он не откроют свои компании. И если не напартачить с "процессами", то такие корпы как Гугл и Майки сами себя зароют нафиг!
@bidanfullko1 таких челов, как автор, дохуя, но чëт никто свои компании не открыл
@@bidanfullko1 Ну.... с нуля писать операционки уже никто не будет, так-что врятли. Да и тут скорее всего рукожопость конкретных сотрудников
алгодроч и систем дизайн - легчайшее
Прикольно. Я в 1991 году на фортране сделал программу, которая строила график функции с встроенностью сто крат. Внутри косинуса мог быть синус, внутри синуса логарифм и так сто раз . И подфункциональное выражение могло иметь сотню функций.
Она строила и в декартовых и в полярных координатах.
А еще находила решение системы нелинейных уравнений со ста неизвестными. И тоже любой сложности функции.
Что с миром происходит?
Где ты работаешь? Ваше ведь поколение этот мир построило, или не?
@appleseed5711 Моё поколение этот мир просрало. Я программистом никогда не работал. Это было хобби пока преподавал в институте. Диплом мой был программой, хотя я инженер сварщик. Написал программу исследования функций , подарил кафедре математики. Она была ещё на дискете 32 кб. Эта программа была лучшей на то время. Только через шесть лет её превзошла западная программа, которую кафедра математики купила.
И написал программу контроля знаний по сопромату. За это получил премию десять долларов.
Потом уволился и стал торговать на базаре шмотками. Такой творческий путь.
@BO_3076 Уважаемо. Живут люди!
ну в мире есть вольфрам альфа
@@sralin что такое вольфрам альфа?
Это всё лютый чистый код к множественными абстрактными фабриками, которые возвращают абстрактных визитёров, которые работают с абстрактными однострочными иммутабельными объектами для генерации тонн строк, которые тоже сами по себе иммутабельные, дядюшка Боб одобряет - красивый код и тонны мусора, которые сжирает сборщик мусора, трятя херову тучу процессорного времени, УХАХАХАХА, и да, вместо if, наверное, используется try catch, который от малейшего вздоха каждый раз получает абстрактные исключения от таких же абстрактных мутантов-счетоводов, раскручивая стек вызовов на каждой итерации, вот вам проблемы процессорного времени :)))))))
Это проблемы компиляторов... Не исходного кода.
Чистый код это просто инструмент.
@@VladisS.Vostok2000 плохой инструмент
@@kerojey4442неплохой, чистый код сводит к минимуму усилия поддержки кода, а вменяемое использование, тормозит на 1-2мс чтобы пройти слои абстракции, не говоря, что на Java, C# это почти зерокост, а на Rust так вообще зерокост
Да. Дело именно в чистом коде.
Как вы откровенно заколебали. Чистый код ему какаху в штаны подложил. Вот писал бы этот же индус без чистого кода - все отлично было бы. Да-да-да.
Почему-то движок дума 3 - с оглядкой на чистый код сделан. Такие же фабрики, визитеры и прочие. Медленно? Да чет нет. Один из самых быстрых движков того времени учитывая сколько туда напихали новых технологий. Игрулька хорошо так работала на железе своего времени и при этом через несколько лет все еще выглядела отлично.
А вот код какого-нибудь ЯндереДева - без этих ваших чистых кодов и прочего. И имеем в простенькой фигне дропы до 10фпс на мощном железе.
Может хватит, нафиг нести чушь, которую где-то услышали и не понимаете про что вообще говорилось?
В контексте майков - дело в том, что набирают по квотам, ставят сроки релизов и приоритеты в массе от балды. Сверху - культура в конторе давно сложилась: ЕСЛИ БУДУТ ВОЗБУХАТЬ ПОФИКСИМ. Не будут - пофиг. Все. Фиче поставили низкий приоритет, какой-то индус по быстрой нашел что-то, скопипаситл, закрыл таску и пошел по своим делам. Писал бы он хоть на ассемблере, хоть на перфокартах, хоть как - результат был бы такой же.
@@VladisS.Vostok2000 это проблемы людей 😁
Я одного не могу понять, в какой момент разрабы решили, что они не смогут написать гребаный калькулятор без асинхронщины.
примерно 40 лет назад когда появились многопроцессорные системы, и только у вас есть 12 ядер, а вы вменяемо не можете ничего раскидать по всем 12-и ядрам, но зачем вам дали 12 ядер? что бы что?
@@AEF23C20 гадить много потоком там,где не нужно это раковая опухоль современного айти.
@@AEF23C20 вот оно будущее - бить микроскопом по мухам
@@AEF23C20 Та самая асинхронщина, которая с многопоточностью не имеет ничего общего, ага
ничего общего нет, только вот одно без другого - бессмысленно
Сейчас 31 декабря 2024 года, и у меня виндус 11 22H2 с последними обновлениями за ноябрь. Подобные баги этого калькулятора никуда не делись. Помню, сначала небольшим шоком было, что он мне не мог построить график простейших "школьных" функций. Потом дошло, что это же продукт Майкрософт, так что всё в норме : )
Здравствуйте, Петр!
Недавно нашел ваш канал (этот и основной). Очень интересный контент, особенно нравится ваш ход мыслей о программировании и микроэлектронике. Сам учусь сейчас на радиотехнике, 3 курс.
К сожалению, я не видел ваш стрим, где писался графический калькулятор из этого видео. Этот стрим где-нибудь остался? Можете скинуть ссылку? Очень любопытно посмотреть на это (и повторить самостоятельно).
Заранее спасибо!
Голос похож, на голос Меддисона. Всё видео не покидало данное чувство)
@@kirillbagrov4116 Есть такое
косит под него
@@bestrelaxmusic4613 так и чувствую мысли автора из утробы матери "а не родиться бы мне с голосом мэдиссона чтобы потом под него косить"
Не похож.
@@UniMindPerson 128 человек подумали иначе, ты лишь один так думаешь. Какие выводы сделаем?
Вы ничего не понимаете! Это первый калькулятор созданные манагерами без программистов! Камон!
Вот для того чтобы такого не было сущесвуют различные тесты, от юнит до QA.
Какие тесты в мире прототипов? За тестирование платить надо. Пользователи от тестируют даром.
Мне кажется, что всё эти лаги были связаны с тем, что весь нынешний софт, а конкретно фреймворки и библиотеки, оказываются недостаточно гибкими в погоне за абстракцией, из-за чего для реализации каких бы то ни было задач приходится идти обходными, иногда небезопасными, путями.
Все эти анимации и тд - это круто, ООП - это круто... Но... Я пробовал писать некое подобие игрового 2D движка на Pyglet.
Естественно следовал хорошему тону в оформлении кода или старался ему следовать, на сколько это позволял Python и сам Pyglet, но реальность такова, что написав заготовку движка, примерно лишь 15% от задуманного, и сделав игру-бродилку на нём, я получил порядка 500 фпс.
Сделав такую же игру "напрямик", без хард-кода, но без абстракций и прочего - я получил 1400 фпс.
Вот и делаем выводы.
Давно это ясно. Вот до чего доводит питонизация головного мозга. Вместо языков программирования, пишут на змее, топ-1 по популярности недавно стал. Зато удобна зато учиться не нада зато манагер доволен что код быстрей написан зато абстракция зато анимашка крутится как дезигнер представил зато ничеголишнева зато латте попить можно пока выполняется код зато библиотеки. Так и живем: железо становится мощнее, а компы работают медленнее. У меня ноут из 90-х на винде 98 летает как пуля, а современный комп с современной же чистой виндой ловит тормоза и бсоды.
@@asante5979 ну, увы, реальность такова, что бизнесу нужен рабочий продукт, а как он работает - не важно. Пользователи схавают)
К слову, пишу свой курсач на Django) (поступил на "Информационные системы и программирование, что является громким названием для профессии "Веб-дизайнер", что я терпеть не могу, но уже поступил - что поделать)
А ведь и правда - зачем заморачиваться, если есть готовые и простые решения?)
Ну, они же от них не могут отказатся... типу..
Для дебаггера ведь нужны связующие точки с первоначальным исходником.
А если компилятор будет убирать всю ту дребедень, что насрал прогер, то получается, что проще сразу писать по правилам компилятора условно.
Та да.. машина не виновата, - она делает лишь то, что затребовал пользователь. И современные прогеры далеко все тоже не инженеры, и по сути тоже пользователи какого-то уровня абстракции. Не опустят они свое чсв на уровень машинных кодов и архитектуры компъютеров.
@@asante5979 Питон не виноват вообще. Кстати я заметил, что в частности производительности ничем не устапает, если им пользоваться правильно.
Виноват подход к воспитанию кадров. И тот срач, что вместо легаси создан в бизнес-логике всех компаний.
Ну, камон! Всегда в такой мир могут ворватся даденьки в свитерах и очечях, и загнать новые стандарты в массы! ;) Прост пока никто не хочет этого делать. И тогда на этому "веку" все наладится на след 10-15 лет. Пока можна купить больше мощностей, никто не будет трогать ни код, ни дезайн. А главное - пока дешевле.
@@bidanfullko1, куда ворваться должны дяди в свитерах? В Пайтон они не пойдут. Дяденьки не первый год держат оборону от всяких активистов, в частности от российских телезрителей.
Медисон теперь еще и код пишет?
им нужен был юай тестер. Касательно тангенса у них проблема именно с tan(10x). тан(9х) или тан(11х) лагают, но работают. в целом шляпа конечно...
А tan(100x)?
@@theG4NS не поверишь, tan(100x) норм работает, пробоема именно с 10x, аххахх
это всё проделки 10x-инженеров, не иначе
Внесу пару поправок насчет тасок. В плюсах всё, что касается асинхронного кода, должно быть расписано ручками, да и планировщик можно написать однопоточный (boost::asio::io_context, например). Мелкомягкие тут используют самописный task, который, в общем-то, самый обычный (такую же концепцию еще в паре мест видел) и планировщик, который раскидывает таски на тредпул.
Немного посмотрел код, эти товарищи солвер (m_solver, тот, что собственно считает график) не прикрепили. Он вызывается синхронно (m_analyzer->ParseInput()), и его ждут, потому и виснет всё, а затем он в таймаут вылетает. Через отладчик видно, что его все ждут.
Насчет причин вылетов при перетаскивании окошка - согласен. В текущей версии пофикшено, кстати - окну вообще насрать на движения мышкой, пока солвер не пропукает всё.
Ну, это всё спекуляции, на самом деле фиг его знает.
В шкиле меня учили брать минимальное количество точек для нарисования графика
На первом курсе шараги меня учили, как будет изменяться стандартный график в зависимости от доп.условий
А в калькуляторе винды всё через for считается и точки постоянно хранятся в оперативе?
создаем точку, не... говно, создаем абстрактную фабрику точек и через геттеры получаем ее координаты, на ее основе создаем линию, линий много, создаем абстрактную фабрику линий разных размеров точек и видов точек. Говно, лагает, делаем код многопоточным, создаем отдельный таск на создание точки и потом создания обьекта линии. Ну впринципе говтово, теперь можно for
а, забыл, нужно еще адаптер, у одной линии есть метод отрисовки в положительном x, а у другой нет, бля
@@eterlineсмешно, смешно. Все посмеялись? Тем временем компилятор и рантайм, которые буквально встраивают примитивные методы как при прямом доступе и игнорируют все оверхеды, буквально не создавая промежуточных ненужных объектов или размещая их в стеке тоже посмеялись
@@justfairytale5722 да естественно это так. Условный Rust это без утаек пишет в своей доке. Разве что в работе с интерфейсами иногда есть накладка по работе с разименованием.
@@justfairytale5722 просто опять же, зависит от языка и компилятора. Где-то подобное наложение сказывается и объявляется в тормозах(js дарова). Где есть компиляция и исполнение собранного из обьектных файлов, меньше. Естественно что современные компиляторы написаны под современные методы и подходы разработки. Мужик... Это буквально можно прочесть в документации
Я, честно говоря, не понимаю почему в Microsoft так могут косячить. Например, в 10-ке очень бесит постоянно тормозящий просмоторщик фотографий.
В Майкрософте вся Индия, плюс лгбт лобби
Кто то реально пользуется стандартными приложениями?
@@Prolaps-us я пользуюсь калькулятором, он вроде без багов (но это не точно) xD
@@ItMohican а зач если есть адресная строка браузера?
Бтв вчера смотрел видос о том как жоско лагает построение графиков функций в виндос калькуле, держу в курсе)))
@@Prolaps-us мне просто привычно и удобно, когда он отдельной вкладкой висит, а не болтается ещё одним окошком браузера)
теперь туториалы по написанию калькулятора не кажутся такими бесполезными и легкими)))
Не отрисовывается все кроме tan(10*x), по крайней мере ближайшие 9,11, 20, 200 и даже 2000 рисует. Причём время на рассвет везде одинаковый по ощущениям, с секундомером не сидел) Вероятно 10 это какое-то супер магическое число 🧙 🪄
Поскольку сломан многопоточный код - при разных запусках программы, разной скорости нажатия на кнопки, загруженности системы и любых других рандомных факторов можно получать самые разные и неожиданные результаты. Когда демонстрировал на стриме даже Cos(x * 3) не отрисовался)
@@turborium мда уж..жаль не успел на стрим)
Я сижу на Windows XP. Потому что там были инженеры. И эта ОС огорожена от таких сеньоров.
А браузером через телефон пользуешься?😂
Калькулятор работает случайным образом :)
Никогда не уважал Microsoft за тормознутые продукты. Почти каждая программа от Microsoft регулярно лочит UI поток и тормозит на слабых ПК
Сеньёр не тот кто всё знает, а тот кто всё может узнать если нужно будет бизнесу, а не скажет я не знаю)
К сожалению современные проекты настолько комплексные что без стандартов черезжопного кодинга не обойтись. Но как видно аутсорс индусам некритичных задач может сделать каку в любом месте. И да, асинки это круто для не подвисания интерфейса от анимаций (когда анимация состоит из двух математических действий и одного условия), но для тяжёлых задач лучше выделять потоки. Не выделяется поток потому что всё друг на друга завязано? значит ищи где понасвязывал лишнего и развязывай. Я калькуляторы только на до диезе писал, один с исполозованием движка таблиц (он содержимое строчки в ответ превращал) а другой для расшифровки битов состояний из int либо обратно чтоб кодировать. Последний был чуть кривой, за пару фидбеков от людей его использовавших я вёс пофиксил. Вот уж не думал что покрасить пиксели в прямоугольном окошке согласно введённой функции это такая нереальная задача.
Я считаю что макасофт контора которая не умеет юзать многопоток.
На одном потоке по-любому лучше бы получилось.
При этом у Microsoft существовало прекрасное приложение Microsoft Mathematics 4.0, в котором таких косяков не было. Но видимо с запуском Windows 8, они направили все силы на разработку Metro-приложений
Это особая, уличная математика.
медисон ударился в IT
Бля, а голос реально один в один
Вот интересно, а сколько УЛЬТРАСВЭГСИНЬОРОВ писало эти 35к строк кода..)
А я возмущался что Windows Photo медленно работает. Лучше уже запустить мобильный Photomath или любое другое предложение чем мучать себя этой поделкой.
Photomath теперь без интернета не работает. Надо wxMaxima сразу скачивать или Grapher Free, если у вас телефон.
Интересно разраба в майкрософт который это сделал, ещё не уволили😂😂 твой говнокод оказался лучше чем код от майкрософт. Может петр пойдет в майкрософт роботать🤔
Не, до Сеньора апнули 😄.
Я сначала не поверил и пошёл проверять, и действительно 😮
Ещё бы подобных видосов посмотрел бы, угарно и познавательно))
Если лагает, тогда поменяй компьютер, наверное проблема с компьютером.
И поставь лицензионный линукс, его можно купить только у меня.
13:19 ваще ор 🤣🤣🤣👍👍👍
А ващет да, майкрософт опять высрал крайне полезное нихyя 😄
Я до последнего думал что это прикол какой-то, но попробовал у себя в калькуляторе написать функцию xy=y^52-x^52, и тоже не вышло (
Вы пользовались диспетчером задач в 11 винде? Когда они его только обновили, он был ужасным, супердолгий запуск, постоянно багающийся UI и куча других проблем, и лишь спустя 3 года и кучу фиксов (я читал списки изменений) у них получилось исправить большую часть UI багов (запуск всё ещё очень тугой). За 3 года корпорация не смогла допилить простейшее приложение...
В топку такую корпорацию и их продукты, на..! -_-
Потому что это банальное неуважение. Нужно скооперироватся и переписать все к черту.. а еще лучше - новая архитектура и дезайн. Застряли они в своих "окнах" тупых! Ничего не могут! Только и срут на то, что раньше нормально работало.
@@bidanfullko1, переходите на Windows XP.
Калькулятор лагает потому что он пересылает все что ты печатаешь прямо в майкрософт 🙃
3 года прошло, проблема осталась 😂
Он как Мэдисон, только тот Мэд стреляет на звуки мовы, а этот пишет код...
Да мне кажется у них просто атомарные операции отсутствуют намертво, из-за этого параллельные участки кода конфликтуют, хотя все равно что-то отрисовываться должно...
Отдельные строчки для открывающих скобок придумали индусы же. У них чем больше строк, тем больше зарплата.
не знаю, порой так проще понять, где конец блока кода
@ambi196 Практически ничего не поменяется (особенно для индикации конца блока), если первую скобку как отдельную строчку убрать с начальной колонки. Визуальный фокус намного лучше срабатывает на отступах, чем с символами (тем более - с очертаними "присмотрись внимательнее, а то спутаешь").
Я так понимаю это такой аналог обзора на "Месть Боксера" от мира разработки софта.
Видимо там работает так что если программа microsoft распознает введенную строку , например sinx она просто подставляет фотку графика из инета
график функций с парсером на паскале? браво. я делал простто парсер для чисел и это было то еще уродство изза регэкспов. тем не менее, считал он верно. ща могу куда лучше, но дело было на c#. и чет смотрю и понимаю,что синтаксис паскаля ван лав. лаконичный и емкий. как классическая машина, пусть это вполне себе модный на время разработки языка синтаксис,но он действительно красив. крч люто плюсую
Лаконичный и ёмкий это синтаксис С/С++, ибо Паскаль очень многословный и нагроможденный
@@РоманСмородов-л2в как бы и нет. лаконичный синтаксис,тогда это джава.шарпы,но никак не плюсы.си и паскаль одинаково многословные. у паскаля синтаксис таки более классический и изза этого на маленьких прогах более читабельный. на маленьких. потому что с уровнями вложенности,растет бида с чтением. с другой стороны это не еще ада.
крч,я с вами не согласен)
@@MrChelovek68 Вы явно не знакомы с последними версиями шарпа)) Превратили язык в невесть что. Си имба, есть убрать директивы и всякие "новшества" от разрабов компиляторов
@@etherzon если вы думаете,что я буду спорить,то ошибаетесь. я с "операторов верхнего уровня" писал в сообщество,что они пилят дерьмо и ломают даже обучательность языку. а про си, ну макросы нормас тема,если не злоупотреблять, а по делу. а новшества-тут люто плюсую. смузихлебный мусор реально бесит.
@@MrChelovek68 а, ну давайте покажите мне хоть один ненужный кеворд в Си) Напишите здесь какой-нибудь, который точно не нужен
Слушай, отличный канал! Успехов! Думаю будущее большое
Что говорить, если у них инженерный калькулятор от обычного отличается только количеством операторов?
Спустя три года ничего не изменилось. Этот калькулятор они делали для галочки
У меня официальный виндоус 11 с последними обновлениям. Проблема не была исправлена.
Самая лучшая реализация многопоточки/асинхронности, что я встречал - это горутины Golang'а.
остается иногда трабл их планировщика, он иногда может забить на то, что горутину можно пустить в отдельный потом и просто делает ее асинхронно. (бред доходоит до того, что работа с атомиками и бенч этого на разных платформах выдает разные результаты в сравнении с обычной блокировкой мьютексами, хотя первые лежат под капотом того же sync). Хотя вроде как ведутся доработки и можно будет пинать менеджер самому. Однако каналы реально удобная вещь.
А то что в excel они при наличии невидимых символов в ячейках вообще прямые линии с нулем по оси ординат шарашит это как?
Спустя 2 года ничего не поменялось)
Может кто то залетный запилил фичу (калькулятор же опенсорс), правда тут вопрос уже к ревьюверам будет
Подавляющее большинство контрибьютеров этой фичи на гитхабе - сотрудники майкрософт + code review + testing. Кроме того - винда продается за деньги - и от нее хочется чего-то большего чем "мы насобирали опен сурс кое как - не нравиться не используй".
@@turborium да этож монополист, им без разницы в принципе, как говорится, аналогов нет, и не думаю что будет в ближайшее время
Линукс, freebsd@@comachine
Парни а почему перестали выпускаться хайлайты?
Применяются новейшие методы фунционального программирования.
23.01.2025
Калькулятор все еще крашится от tan(10*x)
Кстати как раз недавно заметил эту проблему, почему-то именно на тригонометрии лагает люто, другие графики вроде норм делает
0:40 ахахахахахахахахах 😂😂😂
Автор не осилил асинхронное программирование на C# и теперь оно ему мерещится?
Пишу не ради спора, но все же: почему ты сидишь на венде? Просто больше нравится или нужны какие то утилиты которых нет на юниксе?
юникс терпеть не могу, его идеи такое себе.
@@turboriumа freebsd и linux
Я считаю, что это беспредел!
Ну, братан, начнём с того, что они написали винду. Начало уже такое, что я бы например просто сразу прощался.
Ты просто завидуешь chad программистам из майкрософта
Не понял большинства комментариев по поводу тормазнутости кода. Там же по всей видимости проблема в делении на ноль
Если бы было деление на 0, то код мгновенно должен падать, быть может подождав std::abort, а не виснуть
@irbares2421 выражусь точнее. Не деление на 0, а попытка поделить на все меньшее число для большей точности
На шиндовс 11, спустя 3 года ничего не изменилось))
Это Мэдисон из мира IT
Я думаю проблемма не в UWP. Скорее всего эта фича использует Azure а не ваш ПК. Ну или у разработчика этой функции не очень прямые руки.
Нет эта фича работает оффлайн - в видео я даже показал исходный код этой фичи
@@turborium UWP/WinUI упакованные приложения работают в среде контейнера приложений Windows и управляються распределителем памяти. Твоё приложение запускается на прямую без контейнера, вот и perfomance высокий. Скорее всего для графиков они используют Win2D который работает на уровне системы и не является частью контекста упакованого UWP приложения, любой вызов API или взаимодействие с компонентами вне контейнера требуют время на выполение и обработку запроса для этого используются async/await.
@@turborium В UWP не понятия Window вроде как в WPF и мы не можем на прямую работать с окном, так как окно не являться вообще частью нашего приложения, окно нам выделяет система, по этому окно и CoreApplicationView которая работает в этом окне, существуют паралельно друг от друга. Так как окно отрисовывается на системном слое оно не зависит от выполнения операции async/await, что нельзя сказать про основной UI приложения который будет ждать пока Win2D отрисует график.
Пожалуй, я продолжу сидеть на Windows XP.
Это вполне реально 😁 особенно без интернета.
Пётр, технологии развиваются, асинхронный код неизбежен:) ну а насчет калькулятора, возможно они забыли поставить стену(barrier) чтобы синхронизировать потоки, до того как запускать отрисовку графика.
Стена?
@@turborium да, std::barrier
@@turborium да и тем более без асинхронного кода даже ОС не было бы, это же по сути async EDA.
я не говорил что асинхронность не нужна. Я говорил о том что бездумное напихивание ее куда ни попадя - бред.
@@turborium с этим согласен) иногда лучше сделать читабельный код, нежели загромождённый
угараю. Попробовал построить график тангенса 10 икс в этом калькуляторе - ни в какую. Хотя график тангенса 9,99999икс и 10,00001икс он запросто строит быстренько
Сколько весит этот калькулятор? Уверен на 100%, что больше, чем WIndows 95, в которой уже был калькулятор.
Конечно. И написан он на Javascript, скорее всего, как и остальной GUI 11. Потому что только джаваскриптеры настолько упоротые
@@UniMindPerson фанкшн прототайп и 500 видов создания класса. бебебе
Мэдисон из альтернативного таймлайна
Мэддисон 21 минуту поясняет за графики в калькуляторе. Прекрасно.
Немного не хватает пейнт аналитики
огонь!
Шёл 2025 год, они до сих пор ничего не исправили.
Мэд, опять 5-ти слойную завернул, выпустив этот видос
Пользуясь случаем хочу сказать что он все еще лагает
косинус то правильно построился, со сдвигом 90 градусов.
А дальше библиотеки не поддерживали
О! Мэддисон из мира программистов. Рэспект однозначно
я регуляно использую Scientific режим калькулятора Windows на протяжении примерно 7 лет. я только сейчас узнал что оказывается у этого калькулятора существует режим рисования графиков. подозреваю что невероятно малому количествую пользователей нужно рисовать график sin(x) * cos(10x) * x. соответственно эту фичу и не доводят до идеала. автор как ребёнок, будто не знает как устроена коммерческая разработка. хотя если в 2021м году пишешь калькуляторы на Делфи, то веротно от реальной коммерческой разработки ты ооооочень далеко...
нахер такое говно вообще тогда нужно
😂 в 1960м году ракеты в космос запускали при помощи абака 2025 год ваш 500ядерный процессор слмшком слаб чтобы сложить 2+2😅
Боже, в каком месте это code review? Просто нытьё на майкрософт
Это сеньоры где надо сеньоры.
Не хочу быть адвокатом майков, но они просто забили хер на фичу, которая по размеру примерно 0.001% от размера винды. Людям кому нужна тригонометрия используют специальный софт, а то что завезли по приколу в виндовый калькулятор, никто не эочет больше тратить на это деньги.
Calc graph by ms - top
Двойники Мэддисона множатся!
Правильно понимаю, что все 20 минут чел просто вводит тригонометрические функции в два калькулятора?
А теперь смешное, он не может отрисовать x^7, но может отрисовать число сколь угодно близкое к 7.
Я не понимаю, что у вас с виндой не так. Все выражения из видео и твоё в том числе спокойно были отрисованы даже без зависаний
@@Respound Пофиксили возможно
скажи спасибо что не вылетела винда.
2025 год до сих пор не пофиксили ХААХХАХАХАХА
Дык они графики отрисовывают через Ai и Bing
Я напоминаю, что этот калькулятор opensource
И что? Мне за майкрософт в их платной ОС баги фиксить?
надо добавлять = y тогда работает
Это вы еще факториал не пробовали
Что за музон на 12:40?