Is it? A couple of million people have learnt to code quite well. Some learnt quickly, others after lot of time and effort. Most are still learning after years of experience.
Learning something new is generally difficult. For example, a baby doesn't just stand up and walk. Most people don't just get on a bike and pedal away the very first time.
If you would like some help from HN folks, perhaps you could tell us what language(s) you have tried, describe how you find learning to code difficult, what you have tried and what the results have been so far. Doing so might elicit feedback that is in line with your experiences to date.
I have the opposite. I speak fluently 4 languages and could pick up another language (spanish) easily. But I can't code. I'm still trying to learn Java but I'm stuck all the time.
> Learning new languages is pretty simple if they're in a family I know.
Does your list of languages include fairly disparate examples, such as languages that do not have a Latin base or share a portion of their vocabulary with ones you know?
I think the point being made was the type of language learned. Shared concepts reduce learning time. Knowing Perl, Ruby, Assembly, etc may not help too much learning something like Haskell or Clojure. Knowing Lisp might help quite a bit. Prolog would be another thing entirely.
It is not really ! I found The Coding the simplest job ever :)
This is the only thing which ALWAYS works the way being told: Whatever you put to your code, it will work exactly the way you phrase it ! (this doesn't mean - the way you expect)
A lot of programmers who have an easy time coding (even in a new language) are relying on several years of experience and StackOverflow. When I look at a select box on a page, my brain automatically thinks "okay, was this rendered using HTML or JS? what styles have been applied? is there an onchange callback? how is the data being populated? what's the data model look like? is it using two-way data binding or posting with a form?" I can only speculate about these aspects because I've had to build them all before. I absolutely struggled when I first had to deal with new concepts like Javascript frameworks or unit testing, but after sticking it out for a few months, I was able to internalize how they work and see the underlying design patterns, rather than just the implementation details.
If you could elaborate on certain issues that you're running into, we might be able to give you more insight into what exactly is tricky about it.
Thanks for the comments. When I get stuck i look up stackoverflow and various other forums for help and may or may not find the answer to the problem. However I feel like they're bandaid solutions and i can follow instructions to make things work but don't understand why the errors occur. Also what can prevent such errors in the future and how can i feel confident as a coder.
Honestly, this was me for a long time and I believe many programmers go through this. When trying to build a project, I would look things up on stackoverflow and try to follow tutorials, but then I would do something that caused an error and I had no idea how to fix it. I thought I broke it for good and just abandoned the project. This happened many times with many projects. I became so frustrated, I wanted to give up. But I couldn't. After a while, I became more confident and began to understand what things meant, and how to fix errors (all from just struggling with the language).
There was this long period of struggling to get things to work but I feel like there was this moment where a switch turned on and I began to feel more confident writing code and solving problems.
My recommendation is you keep on struggling. Keep on messing up and embrace failure. Eventually, you'll figure it out. Enjoy the journey of learning to code, don't be so fixed on being the best right away.
I find it difficult to remember the jargon and idioms, and this day in age when one might switch between a few different languages just to solve one problem, it just gets more difficult.
I don't have a degree. Hell, I barely completed high school. But if push comes to shove, I can dig deep in a foreign codebase in a foreign language and figure out where something is going wrong.
11 comments
[ 3.6 ms ] story [ 33.1 ms ] threadLearning something new is generally difficult. For example, a baby doesn't just stand up and walk. Most people don't just get on a bike and pedal away the very first time.
If you would like some help from HN folks, perhaps you could tell us what language(s) you have tried, describe how you find learning to code difficult, what you have tried and what the results have been so far. Doing so might elicit feedback that is in line with your experiences to date.
I read/write/speak English well. Learning Finnish? Painful. Slow. Hard.
On that basis learning code feels too easy!
Does your list of languages include fairly disparate examples, such as languages that do not have a Latin base or share a portion of their vocabulary with ones you know?
I think the point being made was the type of language learned. Shared concepts reduce learning time. Knowing Perl, Ruby, Assembly, etc may not help too much learning something like Haskell or Clojure. Knowing Lisp might help quite a bit. Prolog would be another thing entirely.
This is the only thing which ALWAYS works the way being told: Whatever you put to your code, it will work exactly the way you phrase it ! (this doesn't mean - the way you expect)
If you could elaborate on certain issues that you're running into, we might be able to give you more insight into what exactly is tricky about it.
There was this long period of struggling to get things to work but I feel like there was this moment where a switch turned on and I began to feel more confident writing code and solving problems.
My recommendation is you keep on struggling. Keep on messing up and embrace failure. Eventually, you'll figure it out. Enjoy the journey of learning to code, don't be so fixed on being the best right away.
I don't have a degree. Hell, I barely completed high school. But if push comes to shove, I can dig deep in a foreign codebase in a foreign language and figure out where something is going wrong.