Developers naturally gravitate towards the "happy path" - default scenario in application execution in which everything works as expected, consequently neglecting exceptional behavior aspect of a software development.

This talk provides a comprehensive insight into widely adopted practices and patterns for dealing with exceptional conditions. Emphasis is on exceptions and applicable techniques that improve quality of the overall architecture, such as:

- structuring and organizing custom exception classes
- formatting exception messages using named constructors technique
- component-level exception
- exception wrapping

To make the story complete, second part of the talk focuses on a PHP-based solution for establishing a robust and extensible error handling system.

Comments

Comments are closed.

AlwinD at 11:20 on 9 Jun 2018

Great talk! Learned a lot new things about exception handling.

Good code examples.

Very clear talk. Did not took the hole 45 minutes. But that BooBoo and T-shirts jokes made up for that big time. Keep doing this type of talks. Can you share the slides?

Remco Brink at 11:23 on 9 Jun 2018

Easily one of the best talks so far. The code examples were great

Really great and clear code examples along with a few good laughs.

Mike Lerch at 11:45 on 9 Jun 2018

Talk was fun and easy to understand, but next time show the slides for a little bit longer.

Nikola Poša (Speaker) at 11:50 on 9 Jun 2018

I'm gonna be uploading slides next week. Follow me on Twitter where I'll notify you when they're up: https://twitter.com/nikolaposa

Mark Hamstra at 00:04 on 10 Jun 2018

Practical, educational, well done.

A R S at 09:12 on 10 Jun 2018

Nice, practical talk. Shows a multitude of better ways to handle errors in PHP than the often-used "return null or throw an exception and let some other class handle it"-method.

I've read a couople a uncle Bob books and some good parts I forgot about. Good talk and keep it up. About the return null type alternatives have a look at how Java offers an alternative https://docs.oracle.com/javase/8/docs/api/java/util/Optional.html
That and the Phunkie library has a similar php implementation https://github.com/phunkie/phunkie (look at the options section)

Jos Elstgeest at 12:30 on 10 Jun 2018

Great talk! Made me think about handling exceptions in a different way, you had time to spare so plenty of room for more insights and examples.

Good talk about exceptions/ edge cases.

A few slides were meant to be funny/ a joke, but they weren't 'presented' as a joke. T-shirts gag was fun though

Jochem Fuchs at 09:49 on 11 Jun 2018

Good talk! Not a lot of new info for myself peorsonally, but neverttheless well structured and good info.
It's funny to realise that techniques you use daily for other classes, you never really use for exceptions. The misconception that exceptions are somehow something different. That's my main eye opener from this talk :)

Onno Marsman at 13:46 on 11 Jun 2018

Great talk, and I left with some useful ideas. Don't stretch it to 45 mins, unless you can add some completely different insights, because I think it had the right speed.

Ronald D. at 18:33 on 11 Jun 2018

Good talk

Good informative talk with a lot of good suggestions. Should help that just start using exceptions a lot, but also devs that build libraries/packages.

Suggestion: add a "forSlug" create exception method to show what different named constructors might be useful.

Good talk, and since we are doing most of the improvements you've given i agree to all of them ^^

Great talk, especially with the examples. For me it was one of the best talks I've seen during this conference.

I think your presentation skills can be improved. It was a bit monotone and after a while, even though the topic was very interesting, my mind started to wander a bit. A few jokes (like at the end with the t-shirts) are allowed to keep your audience focused ;)

Nikola Poša (Speaker) at 16:10 on 12 Jun 2018

Big thanks to all of you who provided me very useful and constructive feedback! Slides are up: https://www.nikolaposa.in.rs/np/slides/dpc18/dealing-with-exceptional-conditions/

Arnout Boks at 19:18 on 14 Jun 2018

Really nice talk, good content, and clear explanations. Because you finished early, I would have loved if the talk had some more of this content. On the other hand, if you had spread out the content you had over 45 minutes, I probably wouldn't have complained. Just would have liked more of this. Maybe you could add a bit about the different SPL base classes?

Nikola Poša (Speaker) at 19:46 on 14 Jun 2018

Hi Arnout, thanks for the positive feedback! I definitely did not estimate the time well, probably rushed through few slides. I even removed a closing slide (longer talk) discussing Defensive Programming just a day before the talk, worried that I will exceed the time limit. Anyway, SPL base classes seems like a pretty good idea for enriching content, I'll definitely consider it.