Code, headbang, grouch, repeat!
Hey folks! My name is João Antunes and I'm an experienced tech professional who's always trying to push things forward.
I've worked across different projects and industries, building (micro)services, web applications, IPTV applications and a bunch of other stuff.
I love to explore new technologies, dig up some fringe topics and dive into over-engineering sessions, but always trying not to forget the basics and how they're essential to everything else.
Area of Expertise
With microservices and cloud technologies being all the rage these days, event-driven systems are also getting their fair share of spotlight.
While the reinvigorated interest in these concepts and technologies is great, just using the simplest available library to push events through your chosen messaging infrastructure won't cut it!
In this session, we’ll discuss why there’s more to it than calling a couple of methods, common pitfalls that can get your system into an inconsistent state, be it event-driven or not, as well as some ideas and patterns to address them.
Object oriented is one of the most broadly used programming paradigms. Problem is, most of the times, even if we use a primarily OO programming language, we're not really taking advantage of it or other useful paradigms and language features, ending up in a mostly procedural scenario.
In this session, I’d like to share some ideas to improve our code, making it easier to understand and maintain, taking better advantage of our languages’ capabilities, mixing paradigms as appropriate.
None of these ideas are new, but it seems we keep forgetting them and get back to the same old mess.
Presentation consisting on some slides and a lot of sample code.
Samples in C# but contents should be applicable across language/tech stack.
Ideal session duration 45-60m, but may be adapted to fit a smaller slot.
Even if they're not our main focus, many of us regularly create console applications in .NET, be it to test some feature, run some benchmarks or automate some tasks.
In all these use cases, we get the job done, but not being the main focus of our day-to-day job, things end up a bit hacky and not as easy to use as they could.
What if I told you we can have our cake and eat it too? Or, in better words, we can create these console applications to help us, but make them more user friendly without too much hassle.
That's exactly where Spectre.Console comes in, an open source library that helps us create beautiful console applications, from parsing command line arguments, prompting the user for information, providing progress reports and much more!
In the world of modern software development, microservices and other distributed architectures have become the go-to solutions for building scalable and resilient applications. However, these approaches also introduce a heightened risk of system failures, when not properly designed.
What happens to your precious data if there’s an hardware failure halfway through processing? How about a network hiccup? Will your API be able to handle client retries and retain consistency?
In this talk, we'll explore various ways in which things can go south, along with some ideas to navigate these challenges and build resilient systems.
JetBrains .NET Days Online 2022
.NET Virtual Conference 2022
Session titled: "Next level console apps with Spectre.Console"
Session titled: "OOPs, I did it again"
Session titled "Back to basics: the mess we're making out of OOP"
Code, headbang, grouch, repeat!