I ran across an interesting post this morning from Frans Bouma, of LLBLGen fame. He is a long-time .NET developer who felt a bit complacent in the work he had been doing on .NET and ORM development. Frans decided to explore some of the recent cool technologies to see how green the grass was on the other side of the technology fence.
After I finished LLBLGen Pro v4.2 this summer, I fell into the usual ‘post-project’ dip, where everything feels ‘meh’ and uninteresting. Needless to say I was completely empty and after 12-13 years of doing nothing but .NET / C# / ORM development, I didn’t see myself continuing on this path.
I found myself in the very same place a few years ago. Microsoft felt wrong, it felt boring. No, I didn’t know everything about .NET but I felt I had experienced everything there was about the part of the ecosystem that effected me. I left .NET and haven’t returned but a piece of me does think back with some fond memories, like I left part of my life behind.
Frans did what so many do, pickup something that seems everyone is enjoying, in this case Go:
I already knew this of course when I went into this journey, so learning Go was, in hindsight, more of a ‘let’s do this, see where it leads me’ kind of thing than a real move to Go. After learning the language and working with the tools available I realized it wasn’t the world I wanted to be in. The main reason was that I develop and sell tools for a living, I’m not a contractor and Go’s commercial ecosystem is simply not really there. After my Go adventure I had learned a new language but nothing of what I needed to get past my problem.
Then try something else, Objective-C on OS X:
To learn a language and platform, it’s best to use it in a real project. Some time ago I had an idea for an app for musicians (I’m an amateur guitarist) on OS X. This was the perfect opportunity to learn a new language and platform, so I did the radical move to learn Objective-C with XCode, targeting OS X. I have to say, this was a true struggle. XCode was ‘OK’, but Objective-C was something I hated from the start.
In his case he discovered something in these other languages and frameworks that opened his eyes to something he could explore and use in .NET, where he ended up going back to:
My little journey brought me back to .NET without realizing it, to find back the love of writing code by finding motivation in an element that’s a core part of an OS I don’t use in my daily work. It opened the route out of the rabbit hole by showing a new path I could take without leaving my life’s work behind; on the contrary: it opened my eyes to completely new opportunities and ideas.
The reason this post interested me so much is because how familiar it sounds for me personally. I seem to continually am bored lately with the technology I work with and I venture to try new things. Trying new things, exploring unfamiliar territory is good. It opens your eyes to something that may send you down an entirely new path. It’s easy to stick with what you know, to not get out of your comfort zone but you miss out on many opportunities.
The post is a good read and I recommend you read it.