Today I was at Swetugg a Swedish .NET conference organized by the very awesome members of the Sweden .NET User Group also known as SWENUG. I thought it would be nice idea to write down my impressions of the different talks, the event itself and point you to some resources if you yourself find any of it interesting.
tl;dr Great small conference with interesting talks on Gamification, SOLID, TDD, Design, Akka.net, ApprovalTests, F# and Web Security.
So I woke up early as usual, planned my month, week, started writing some morning code, breakfast, shower, lost happily into my own thoughts went out…
…into a freaking blizzard…
No problem, Swedes are accustomed to this kind of things so I did get to the conference on time… for some Gamification by Johan Normén, gamification with a twist…
Gamification With a Twist
Generally, when we talk about gamification in the context of software development we usually discuss about the addition of game mechanics to the software that we develop in order to improve the experience of our users so that they enjoy and have fun while they are using our products.
In this case however, Johan gave it a little twist and applied gamification not to software but to work processes (the way we work), to job dynamics and job themselves, trying to bring light into how we can make our jobs more fun.
One tidbit of information that I found particularly interesting was the use of player cards to identify the members of a team that are working together as a way to get to know each other and play to each others strengths and weakness (not to mention that it is a freaking cool idea just by itself! XD):
His slides were super funny, I had no clue that there was such as huge number of cool minion photos in the internets (more material for my own presentations hahaha – malevolent laughter).
Is TDD Dead? Is It? Is It?
I followed the DHH TDD polemic quite closely so this was pretty interesting to me just because of that. But it was a completely surprise because I so thought Emily Bache was going to bash TDD and propose some new magic unicorn approach to testing and instead she actually defended it by debunking with each one of DHH arguments.
It was quite interesting nonetheless, aside from my own confussion, I love to hear about how other people approach unit testing and TDD. Emily with a more experienced approach to TDD defended a more practical approach to it, getting away from the fundamentalism and finger-pointing, warning about the inherent bias towards indirection that using TDD indiscriminately may lead you to, and emphasizing the need for more higher-level testing such as integration, component and end-to-end testing as an vital complement to your unit testing sweet.
Practical SOLID in the Real World
Interesting bit of knowledge, my first blog post ever was about the SOLID principles. XD
Design For Dumm… Developers
Jessica Engström had a very good talk on design for developers focused on mobile apps but applicable to any platforms or devices. She covered a little bit of everything: color, typography, branding, logotypes, photos and care to detail.
You can find out more about Jessica on twitter and at her blog. She and her husband also organize the codingafterwork.se user group which you may be interesting in joining if you feel like hacking after work.
Lunch Pannel On Unit Testing In The Wild and Podcasting
At lunch there was a very interesting discussion panel on unit testing in the wild. Emily Bache, Ulrika Malmgren, Henrik Ebbeskog, Torbjörn Gyllebring, discussed the topic of unit testing and testing in general in the real world and in their experience moderated by Peter Orneholm.
Akka.NET, The Actor Model And Writing Highly Scalable, Distributed Systems
This was one of the most interesting talks I heard today. Before the talk itself I had no freaking idea whatsoever as to what the heck Akka.net was. Håkan Canberger was very clear to explain that Akka.net is an implementation for .NET of the Actor Model that lets you build highly performant, scalable, distributed systems by leveraging this actor model which sidesteps concurrency and relies on . There was too much good stuff in this talk to explain in a summary post so I recommend you to take a look at the akka documentation, at .NET Rocks ep 1058 or at this other talk on Akka.NET with a “similar” content if you are interested:
Honestly, at the end of this talk I wanted to build everything .NET-ty with Akka.net. It felt like the next evolutionary step in building loosely coupled applications.
The slides were freaking gorgeous btw with beautiful design and purposeful, meaningful animations that lead to a better understanding of the actor model itself. Kudos to that.
I am very into testing and always on the hunt for new tools that make it as pain free and as fluent a experience as possible. Henrik Ebbeskog brought it on with Approval Tests a testing framework based on the golden master concept where you record your expectations of how a system behaves in text format and then you compare subsequent results of your tests with this golden master that now represents the correct expected result of your system under tests.
Very interesting and he had the guts to do some TDDing live onstage. Kudos to him :). Have a look at ApprovalTests in action:
Henrik also wrote a blog post on ApprovalTest with stuff that he didn’t have time to show during his session at the conference.
In Favor Of Functional Programming And an Introduction To F Sharp
Robin Ridderholt had a great presentation on F# and the advantages inherent to functional programming (i.e. immutable types, function composition, pattern matching, terseness, good for concurrency, paralellism, etc). He was super clear and articulate, and he uses vsvim, so that makes him automatically a winner.
He discussed the basic syntax and features of the language (also it’s great interoperability with other CLR languages), and demoed how to make a simple FizzBuzz implementation in F# and refactor it, into actual idiomatic F# with pattern matching (that was pretty cool shit).
A Hilarious Talk About Web Security
Nial Merrigan wrapped the day with a talk on web security. Here you have a guy that is a freaking beast in the speaking arena: hilarious, engaging, enthralling, en-nergetic, en-…tropy? You are lucky, he has his session on youtube. Please enjoy:
And that was it. Did you find anything interesting? Follow people at your own discretion :)
And yes! There were other talks that I was unable to attend due to the fact that I haven’t yet found the way to be in two places at the same time. Working on it. In the meantime I beg you pardon. You can find the rest of the awesome speakers at Swettug’s purple website. And thank you very much to the organizers! Great job!
If you want to know what happened at day 2, follow along into this other article.
To close, here you have the twitter thread for
#swetugg with all the photos and smart comments: