At the end of 2013, I resigned my position as an Assistant Scoutmaster with the Boy Scouts. It was a position I held for just over 12 years, so stepping down was a bit bittersweet for me.
More time on the one hand. Not nearly as involved as I'd like to be on the other.
I've been out of my position for three months now, and honestly, I miss it.
I miss camping with the Scouts. I miss the meetings filled with outdoors lessons. I miss being able to teach skills with knots and fire building and carving.
Last night, I had the opportunity to visit my old Scout troop. One of the boys is getting close to his Eagle rank, and since I'm still a registered merit badge counsellor, I'll meet when asked to help sign off requirements. Last night he completed his Communications badge, moving one step closer to Eagle.
Being at the meeting to sign off the requirement also meant I was able to visit a bit with some Scouts and a few leaders. I was looking forward to catching up - I know it's been only 3 months, but such an active troop moves fairly quickly.
I was still unprepared for how quickly they've moved and how much things had changed. I felt unwelcome; like an outsider. Only one of the boys said hi, and only two of the leaders had time to chat - even then, one only for a few moments as he was busy.
I left the meeting feeling a bit let down.
We often leave one place for another, still harboring the hope that we can one day return and pick things up where we left them.
Leaving a Scout troop to embark on new activities, leaving home for college, leaving a job for greener pastures.
Sometimes we'll leave one programming language to pick up another, hoping our skills in the first will remain after a short absence - but we're lying to ourselves.
With rare exception, programming languages keep moving forward. PHP 4 becomes PHP 5. .Net 4.5 becomes .Net 5.0. ECMAScript 5 becomes ECMAScript 6.
Leave a language - or a community - for even a little while and it will blaze forward without you. Return to it and you'll likely be starting over again. Not necessarily from scratch, but your skills will be rusty enough that you'll need to re-learn quite a bit.
I left the .Net world just under 2 years ago, and while I still value what I know of the framework and its various languages, I know that I've fallen behind. I left when .Net 4.0 (and ASP.Net 3) was just gaining speed - the current version in the wild is 4.5.1 (and ASP.Net 5.1), with a further release just around the corner.
If I were to go back to .Net, I'd have a lot of learning to do just to bring myself back up to speed.[ref]I have no intention of returning to .Net at the moment. However, I value my skills as a polyglot programmer, so I am trying to keep abreast of framework and language changes outside of the PHP world.[/ref]
What have you left to reach your current position? To learn the programming languages you use today? How much have you lost? How hard would it be to "go home" and return to your roots?