Is it me or because I’m not coding daily because my job is in a different sector I find this very challenging. I understand it I can read it I can conceptually understand it’s general application and function. I understand the flow of things and the progression. I optimize things in my career. But When I come to the section where your write your own code I find it super challenging. I can’t grasp where in coding you begin. My mind seems to want to jump to a simple conclusion. Which I may add never seems to work. Maybe it’s because I lack the understanding of structure. Where does one decide where to begin coding and end it. How many operations can I throw Into one argument. Why is syntax always seem different when I look online to solve problems. Are there truly that many ways to solve a problem. I just find my self always trying to think of these things first before I write it.
It is challenging. These are skills that you have to build with time and lots and lots of practice. As your skills grow, the problems you’re trying to solve get more complex and it stays challenging. Not to mention the fact that the technology itself is always a moving target.
“Music is a proud, temperamental mistress. Give her the time and attention she deserves, and she is yours. Slight her and there will come a day when you call and she will not answer. So I began sleeping less to give her the time she needed.”
Patrick Rothfuss
Practice, practice, practice man.
It’s definitely not just you! coding can be challenging. I do not believe there a ‘type’ of person that is meant for coding. Like playing a guitar, it just takes practice (hence the quote above).
The best advice I can offer you is to continue with it, persevere, get to the projects. Personally, I found coding difficult once I first began, but then after a while of playing with it something clicked.
Once you’re building your projects make them your own. Go outside of the basic spec, take your time and be proud and excited about everything you’re building! That is when the magic will happen.
What is your day job? What sector is it in? Is there anyway to bridge the gap and bring coding into your day job?
Maybe the question should be “Are you thinking computationally?” Humans and computers don’t think alike. Computers are dumb machines and must be told what to do, step by step, and in much detail. So to solve a problem (or challenge) using computers, one must break down the problem into smaller and smaller pieces, and be able to outline a series of discrete steps for solving each small piece of the problem. This is formulating the algorithm to solve the problem. Once you have the step-by-step algorithm, then one can start translating that algorithm to code (using whatever computer language).
For example, sorting numbers. Give humans a series of numbers and ask them to sort from smallest to largest, humans can do so easily. Using computers, one needs to tell the computer how to sort the numbers. Okay, maybe bad example, because now we have a super-duper .sort() function. But inside that .sort() function is an algorithm telling the computer step-by-step how to sort the numbers. Is that .sort() function using Bubble Sort, or QuickSort, or Merge Sort, etc…
There can/will always be more than one solution to a given problem. There is no one correct answer. Some programming solutions may be simpler but slow, while some may be more complex but also faster. Some solutions may be easily ported to another language, while another solution may be using built-in functions only available in that language.
Anyways, this Google course may help.
https://computationalthinkingcourse.withgoogle.com/unit?lesson=8&unit=1
I’m new to learning to code too. This is probably my third or fourth time attempting a language and it’s cilcked into place a lot faster/easier this time for some reason.
Try and have a small project on the go and give yourself a week to finish it. Something like a “Rock, Paper, Scissors” or a Quiz or something appropriate to the level you’re at. Have a think about how you might approach the problem, then when you open your blank text editor for the first time, use comments to divide the page up into the various sections and describe what’s going where… for example you’ll probably want to stick all your variables at the top, mark a space up for an Array, then a section where your going to put your functions - describe the functions etc. Structuring it like this has really helped me keep my code organised and build a clearer picture in my mind of how everything is interlinked