I have 15 years or so development experience, in Unix, C, C++ mainly, (along with assorted script / minor languages) the last 5 years of this was contracting. My various testimonials and references over the years eventually convinced me I was pretty good at it too. Now, for the last 8 years I've been entirely non-technical and now know that to have been the wrong choice. The problem I face now apart from the skill set on the resume would put off some potential employers, is I've almost completely forgotten C++ and the little Java I had.

I don't much fancy starting from scratch again! But that's how it feels when I sit and look at any non trivial C++ code. All that OO and class stuff and I'll pretty much give you a blank look.

Surprisingly my C is still ok, well syntactically, though I imagine my design capabilities have taken quite a hit too.

Anyone had experience of something similar? Am I realistically looking at years to get back to being half decent again? Apart from much practice and reading anything I can usefully do to get up to speed again faster?

Ideally I don't want to face being stuck with the career change I mistakenly made 8 years ago. Help!

This question appears to be off-topic. The users who voted to close gave this specific reason:

"Questions seeking career or education advice are off topic on Programmers. They are only meaningful to the asker and do not generate lasting value for the broader programming community. Furthermore, in most cases, any answer is going to be a subjective opinion that may not take into account all the nuances of a (your) particular circumstance." – MichaelT, Kilian Foth, GlenH7, Dan Pichelman, Bart van Ingen Schenau

Can your memory be jogged by looking at C++ programs, or have you completely forgotten portions of the language?
–
MaxpmApr 8 '11 at 3:16

8 years is a long time to jog memory on language specifics.But The experience and familiarity will make it much much faster to pick it up again.
–
Aditya PApr 8 '11 at 3:25

Hm, it's hard to quantify. I still have the broad outline of concepts OO, inheritance and the like, can follow reasonable examples (with a bit of struggle sometimes), but feel like I'm only only getting the outline not the detail. It's a new feeling for me with coding - I used to pick things up with ease, but then I've cut no code at all in the current career.
–
AlexApr 8 '11 at 3:26

The last time I wrote assembly was like in highschool - 7 years ago.. But recently I tried some stuff with x86 instruction set and all I needed was a couple of days to get back to my previous levels. It all depends on how much interest and enthusiasm you had when you did it the first time. If you did programming as a "job".. sorry, you won't remember much.
–
user19224Apr 27 '11 at 4:14

1

@Alex: Why start with C++ programs again when you can learn other languages instead? There's Java, Python, Ruby, Javascript (ECMAScript), Brainfck, etc that will jog your brain all over the place with *new and better stuff.
–
SpoikeApr 27 '11 at 6:48

4 Answers
4

What you need is the updates on current happenings in the c++ world.
The best and the most obvious place is stack overflow.Besides your obvious mentioned methods. This will expose you to thinking of others in solving issues. With your experience it would be easy to spot which method/concept is relatively new.

Why stack overflow than the other c++ forums?Besides the favored QA format and popularity, the rep/badges/community aspect encourage the users to provide quality Q and A.

This is highly subjective and I can't say I am in the same situation, but I have been mostly off programming for most of my career, though keeping a foot in on the side (mostly in the form of shell scripting, awk and other such tinkering). But like you, although in a different direction, my first professionally used language being Ada83, I would find it hard to come back to it after well over 10 years without any practice.

I'd say it takes courage to start with. Courage to recognise your own mistake (you've done that bit) & courage to go back to the drawing board (you are doing this, as I understand).

Surely, like riding a bicycle, your reflexes are somewhat blunted but all they need is enough practice to get back up to speed. And once you're there again (much faster than learning from scratch), your other (less wanted) experience will surely bring some unexpected benefits. So in the end you should be a better developer than what you used to be.

What better than getting your teeth into something that needs debugging? I would think that would be the quickest path to finding your feet again. Pick a project of interest.

Great idea, now to find something not too frighteningly complex! Are there better places to look than sourceforge?
–
AlexApr 22 '11 at 11:34

@Alex: I'm not sure what to say. Not all projects on sourceforge are necessarily complex. The more complex part is to find one that suits you. Is there anything in particular that you'd love trying? Well look for a project in that area.
–
asoundmoveApr 22 '11 at 15:52

I offer the anecdotal story of my great aunt, who didn't speak her native language for over a quarter century and thought she'd forgotten it. But days after trying to communicate with a new neighbor, it all started coming back very quickly.

Find some non-trivial programming projects and start coding again. Put in the hours. Learn some new OOP languages so you don't feel like you're in a rut. Maybe even publish some small apps in one of the app stores, and use that to add currency to your portfolio/CV.

If your goal is a career change back to programming, are you in a position where you can apply for jobs and attend interviews? If you are, it might be a useful exercise to see what interest you get. If you're offered a job well that'll be the quickest way to get back into it.
I don't think it will take years to get up to speed if you've got 15 years experience however convincing an employer to take you on might be a challenge.

Good point actually, I've been avoiding testing the waters yet until I feel a bit more up to speed again technically. Might be an idea to see how fast I can land an interview while I'm reading up again.
–
AlexApr 28 '11 at 14:53