Customize Your Error Pages in Quarkus: Because 500 Deserves Better Than “Oops!”
Give your users something better than a blank 500 screen. https://myfear.substack.com/p/quarkus-custom-error-pages-rest-qute
#Quarkus #Java #Exception #ErrorPages
Customize Your Error Pages in Quarkus: Because 500 Deserves Better Than “Oops!”
Give your users something better than a blank 500 screen. https://myfear.substack.com/p/quarkus-custom-error-pages-rest-qute
#Quarkus #Java #Exception #ErrorPages
Шестидесятилетний заключённый и лабораторная крыса. F# на Godot. Часть 5. Ошибки и исключения
Мы закончили обсуждать тело функции, и теперь пришло время вывода данных. Простые сценарии мы сразу отбросим, так как по ним уже хорошо прошлись, когда изучали выражения. Мы начнём с косяков выполнения, под которыми я подразумеваю не баги, а непреодолимые препятствия с различной степенью неожиданности. Это может прозвучать странно, так как аварийный выход не подпадает под определения output , codomain и т. д. Я с этим согласен и пересматривать эти термины не собираюсь. Однако меня интересует не только легитимная часть, но и вообще всё, что выходит из функции. Вплоть до того, что в следующих главах я начну включать в это аморфное понятие сайд-эффекты, фоновые процессы и много чего другого. Я начал с ошибок, потому что Godot эту тему фактически проигнорировал, и вряд ли за ненадобностью, так как несколько раз мне уже было очень больно. У меня всё ещё не дошли руки покопаться в GDScript, так что я понятия не имею, вызван ли этот пробел ограничениями языка или архитектурным решением, но в любом случае нам его надо закрывать. C# и ФП пропагандируют разные подходы к ошибкам. F#, будучи на перепутье, испытывает влияние обоих. Можно много говорить про плюсы взаимного обогащения культур, но судя по публичным баталиям, это не совсем наш случай. Вместо синтеза я куда чаще наблюдаю эмоциональные взрывы в среде представителей то одного, то другого лагеря. Я не буду ввязываться в эту борьбу (в этот раз) и сосредоточусь на решении более насущной задачи. Мне нужно доработать интероп так, чтобы он соблюдал привычную систему распределения ответственности. Так что сегодня только рутина, без красивых ходов и эффектных бросков.
[Перевод] Обработка ошибок и их стратеги
В мире разработки бизнес-приложений, особенно построенных по принципам Domain-Driven Design (DDD) , важным элементом архитектуры является обработка ошибок. Неправильно реализованная стратегия может привести к логическому хаосу и плохому пользовательскому опыту. Представьте, если ошибка базы данных попадёт напрямую в UI — это не только некрасиво, но и опасно. Слоистая архитектура предполагает чёткое разделение ответственности:
https://woodruff.dev/error-propagation-with-so-simple-so-smart/ - #Rust has a really clean way of #Exception propagation . Nice post https://github.com/cwoodruff.
@simon_brooke that assumes several things that are proven wrong:
#TechBros didn't knew their #Algorithms (they do!)
#GAFAMs were unable to change what gets #boosted by their own Algorithms. (OFC they can!)
The same companies didn't knew the directly-linked damage they can if not cause, at least amplify (see #RohingyaGenocide in #Burma)
#TechBro|s in #SiliconValley weren't #facist to begin with (I mean, #PeterThiel is more of a #norm than #exception!)
That they never before sided with a #POTUS (In fact, they platformed #Trump and his #cult|ist #followers even after their failed #Coup and #HighTreason!)
Said #CEO|s and #CTO|s are powerless to stop any of this (in fact, they could force Trump to resign if they wanted to!)
That Trump exerts control over them (He could as.per #CloudAct but let's be honest, they control him more than he can control them!)
That #TechCompanies from the #USA didn't endorse and platform #facists and #authoritatians (espechally in the #EU) until then.
That the #US became hostile over night.
Ok #vibecoding fans.. here's Reason #76 for why #AI #codebots aren't ready to supplant us #developers.
Working on a #CLI that manipulates files; unhandled exception appears! Its late so I paste the exception+ #stacktrace into my notes2self.txt, go to bed.
Today, remember the #exception, go handle/fix/trap it. Still drops exception. WTF. Tearing hair out, I keep prompting Copilot, changing the model used, I have refactored whole swaths of code following its advice. Getting nowhere.
1/
#exception : or as to the decision of a judge, in the course of a trail, or in his charge to a jury
- French: exception
- German: die Ausnahme
- Italian: eccezione
- Portuguese: exceção
- Spanish: excepción
------------
Join our new subreddit for language learners @ https://reddit.com/r/LearnANewLanguage
Entendu sur #FranceInfo = Anthony BELLANGER : « Il faut constamment le rappeler : La Ve #République a des #Institutions issues de la #Guerre d' #Algérie : Ce sont presque des "Institutions d' #Exception ».
N'est-il donc pas grand temps de passer à une VIe République ?
Le problème étant que personne n'arrive à se mettre d'accord sur la physionomie que devrait avoir cette VIe République.
Pourquoi pas le Confédéralisme de Régions Fédérées et Fédérales ? Le Centralisme Jacobin est une aberration.
C++26 — встреча ISO в Хагенберге
В середине февраля в Хагенберге состоялась встреча международного комитета по стандартизации языка программирования C++. В этот раз прорабатывались следующие большие темы: std::hive Constexpr, ещё больше constexpr Безопасность, контракты, hardening, профили, UB и std::launder Relocate #embed Об этом и других новинках расскажу в посте
https://habr.com/ru/companies/yandex/articles/882518/
#c++29 #с++29 #c++26 #с++26 #с++ #c++ #reflection #constexpr #exception #simd #safety #security #undefined_behavior #memory #byte #bit #contracts #relocation #hive #object_pool #embed
【Kotlin Coroutines Flow】take や first は CancellationException が発生している
https://qiita.com/Xylocopa/items/56fd193eeeb53593e81b?utm_campaign=popular_items&utm_medium=feed&utm_source=popular_items
Почему мы отказались от выражения «assert» в Python
В текущем проекте на Python мы практически полностью отказались от использования выражений с ключевым словом assert , и в этой статье я расскажу почему. Рассмотрим кейсы где использование выражений assert уместно, а где оно может выстрелить в ногу, и как этого избежать.
Traceback в VBA? ЧТО?
Как часто вы ловите ошибки в VBA? А как часто вам приходится пытаться понять откуда ноги растут? Если макрос состоит из одной процедуры, это немного другая история... Но вот если у вас полноценный стек вызовов, когда: Main() -> NestedSub1 -> NestedFunc -> NestedSub2 ... -> NestedSubN как отловить, в каком произошла ошибка? Окей, вы скажите "Поставим On Error GoTo Catch и в Catch: Debug.Print "Function name" ", да? А если эту функцию вызывают несколько разных Sub/Function, как понять в каком из них произошла ошибка?
Linked is a good article about raising exceptions in python. For me it also showed me some interesting “advanced” (or is it idiomatic) python. https://salas.com/2025/01/06/when-to-use-raise-from/#python #exception-handling #raise #debugging #python-tips #programming
@jupiter_rowland OFC this is also due to the fact that the last 50+ years no serious attempt at teaching #TechLiteracy has been done anywhere in a formal matter.
Luckily #Education and #Knowledge isn't monopolized and Initiatives like @cryptoparty / #CryptoParty exist that basically get #TechIlliterates to a level that if they follow up what has been trained don't act as "#UnofficialEmployees" of #NSAbook et. al.
Either way, we'll all have to take part in making the world better, even if that meremy means not contribute to #Enshittification...
OFC that is a constant struggle.
Как Python исключения обрабатывает
Значительная часть моих знакомых и друзей занимаются профессиональной разработкой на C++. При знакомстве с кодом некоторых Python-программ у них возникают вопросы типа: "Почему в Python так часто используется try-except блок? Неужели это не создает дополнительных расходов для интерпретатора?" Обычно на этот вопрос я отвечал, что try-except - это более питонично, и приводил в качестве аргументов все то, что я написал выше. Т.е., да, фактически, на вопрос я не отвечал ничего дельного, потому что и сам не знал, а как это технически работает. Этим текстом закрываю пробелы в своих знаниях, да и вам, надеюсь, это будет интересно.
Broad suppression + exceptions
That's something Trump and cronies are doing. Criminalize/suppress huge swathes of behavior and/or people, then grant exceptions to those who show obedience, profitability, or some other benefit to Trump.
- Mass #deportation (unless you're a Republican business owner, then you can get special visas for your #undocumented workers)
- Economy-choking #tariffs (unless you're a business owner who knows how to suck up, then you'll get special exemptions)
- The #Press is Evil (unless your platform showers Trump with fawning praise)
- No #Abortion Ever (unless you're wealthy and can dodge and weave to another state)
- Seize your land to build the #borderwall (unless you give money to Trumpy interests, then the wall goes around your land)
etc.
Everyone is by default a criminal, denied rights, and/or marginalized. Only the mercy of the emperor can save you. This is one way the president becomes the emperor.
It’s strange to consider the fact that liberal democracy has mostly been the exception rather than the norm across the globe for the last fifty years.
Huh. I wasn't aware the second argument could now be a union. It has some surprising - perhaps inconsistent - behaviour:
>>> issubclass(int, int | None)
True
>>> issubclass(int, None | int)
True
>>> issubclass(int, (int, None))
True
>>> issubclass(int, (None, int))
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
TypeError: issubclass() arg 2 must be a class, a tuple of classes, or a union
>>> issubclass(int, None)
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
TypeError: issubclass() arg 2 must be a class, a tuple of classes, or a union
I would have thought the second form should throw an exception like the last two.
ISO C++ — встреча международного комитета в Польше
В конце ноября состоялась встреча международного комитета по стандартизации языка программирования C++. В этот раз без внимания не остались темы: Рефлексия времени компиляции и оператор «монобровь» Constexpr, много constexpr SIMD Structured bindings as a pack Безопасность, контракты, libc++ hardening, профили, UB и std::launder Сколько бит в байте? Об этом и других новинках расскажу в посте
https://habr.com/ru/companies/yandex/articles/860308/
#c++26 #с++26 #с++ #c++ #reflection #constexpr #consteval #exception #simd #safety #security #undefined_behavior #memory #byte #bit