Why is that???
Main issues were :
- Understanding programming logic
- How do I go from step 1 (basics) to step 2 (short programs) to step 3 (etc.)?
UNDERSTANDING PROGRAMMING LOGIC / TEACHING CURRICULUM
When you’ve never programmed before, your first encounter with programming logic is not necessarily a moment of truth: most of all, it doesn’t feel logical at all ! This is what struck me first ! I used to like maths at school… but faced with JS variables, functions and iterations, I was quite lost in the beginning.
After a while you do understand its inner logic, but it’s a different logic from yours, that you need to acquire, like learning a foreign language.
What’s the best way to learn a new language ? Immersion (eq. to drowning in some cases !), or rational explanations, or step-by-step tutorials ? With or without translation ? 30-mn practice a day, or 2-weeks full immersion ?
So I turned towards Codecademy whose JS curriculum is much easier and more progressive, and I felt slightly less stupid very quickly.
However there is a gap between what you learn at Codecademy (the basics), and the next step you’re supposed to take to start programming little funny things. And that’s the second difficulty I faced : how to combine variables, functions, objects in a logical way… in what order ? How to make them work together ??
Understanding how they work separately doesn’t help you make them work together. I struggled many days over small pieces of code that would work very well independently, but wouldn’t work when together, without any bugs…
This is a serious difficulty and despite the overwhelming quantity of forums, tutorials etc. on the web, it doesn’t give YOU a specific path to follow, or specific answers!
HOW DO I GO FROM STEP 1 TO STEP 2 TO STEP 3 ?
So once I got past step 1 that is understanding the basics and the logic, I got myself stuck in what I would call step 2 : being able to program small games or short programs, and going a little bit further with what I had learnt.
I did find a few tutorials and exercises to practice around (JS Fiddle), with sometimes many different options and ways of coding to meet the same objective, which was quite interesting, however I feel lost in a sea of options and things to explore.
Where can I find the best help and support to help me solve the issues I’m facing with my code ?
And most important : what should I learn now, in what order, and what for ?
I guess that answer is up to me to figure out… It’s obviously not part of the curriculum, and most free (and even paying) programs are not that sophisticated, probably because their underlying assumption is that you want to become a developer, so you will make your way anyways through everything available, because you’re motivated enough to do so.
However I am not aspiring to become a developer, but to know this field well enough for other projects that I have, and I find if difficult to make my way through everything available to customise my learning path to my own needs.
Why was that ?
Setting the right balance between « depth » and « breadth » in a teaching curriculum is certainly not an easy job, and it certainly depends on the curriculum objectives and students’ profiles.
Maybe we’re too many wanting to learn code nowadays, and it’s time for more segmented and focused offers depending on your background and your personal objectives ?
I leave you to reflet on that, and with these 2 excellent articles that I found very helpful:
Next article: Learning to code – The 100-day milestone
(This article was first published on the blog Momslearningtocode.com, now closed).