I am into my 2nd week of my apprenticeship as a full-stack developer. Unfortunately, the problem is that my trainer (colleague) and I have very much ideological differences in how one should brush up his/her programming skills.
Just a little bit of background: I am currently an apprentice (Azubi in German) in Germany. An apprenticeship is called Ausbildung here. In general, an Azubi is not expected to possess a professional coding skill to start an Ausbildung in the IT development. Ausbildung in Germany is lower academic qualification than university degrees in here.
So what exactly is the problem? My colleague who trains Azubis asked me some basic questions like "what is the function of static" “what are the differences between three different variables in Java”. I spectacularly failed to answer all of them correctly, even though I finished Codecademy courses in these topics.
I do NOT intend to diss Codecademy, it is all my fault to forget the basics.
Anyway, my trainer-colleague wants me to go over some of the “Java basics” again and asked me to create a basic ArrayList to play around. He said “playing around helped me learn the basics at my uni and I found it exciting.” I never enjoyed this kind of exercise and I rather prefer to learn all the things alongside I build out some projects.
I feel down right now and my motivation is so low. Do you agree with my colleague or any advice for keeping my spirit up?
Learning and re-learning is the name of the game. You’ll always forget something, everyone does. If you learnt it once the next time will likely be faster. Treat it more like any regular language where repetition and active usage are necessary to cement certain things in your mind; @toastedpitabread recently posed a useful quote from the immortal von Neumann-
Feedback, even negative feedback, is often valuable. Whilst negative feedback can be a knock to confidence now is the time to make the most of it. Once you redo these topics you’ll be a whole lot less likely to forget them again; it may not be the most enjoyable way to learn but a bitter experience can leave you with strong memories, turn what was a weakness into a strength in the future.
As for exercises your learning style is your own though I’d not knock advice provided by your superiors or those with experience; their contributions are often worth their weight in gold. Some folks might happy to test a simple tool every which way, others might find this dull without an end goal in mind. Perhaps you could mix the two. Take projects you’ve completed and try to implement solutions using a limited toolset like advised (or attempt some new projects with the same).
I agree. Redoing the same task, only striving to improve is a learning and improving experience. When work was slack, I’d often rework a program, only with more elegance and efficiency. You bring that forward to future work too. KAT.