Live data from Hacker News

Don’t Believe Anyone Who Tells You Learning To Code Is Easy

techcrunch.com

21–30 of 186 posts

Re: Don’t Believe Anyone Who Tells You Learning To Code Is Easy

#21
post #7

> They don’t tell you that a lot of programming skill is about developing a knack for asking the right questions on Google and knowing which code is best to copy-paste. And they don’t let you in on a big secret: that there is no mastery, there is no final level. The anxiety of feeling lost and stupid is not something you learn to conquer, but something you learn to live with. Just because you haven't achieved mastery…

On the other hand, most masters will not call themselves that, and will resist being labeled as such. Because ironically, true mastery can only be achieved through humility.

Re: Don’t Believe Anyone Who Tells You Learning To Code Is Easy

#22
post #16

You need multiple things to come together. Some are abstract and general, some are more specific. You need to know the tools you are using, the capabilities of your platforms. At some lowest level it is about solving problems and knowing how to drill down and understand requirements, split a large problem into sub-problems. In that respect it is not unlike an architect or an engineer or carpenter. Then it comes to ab…

"And I have made the that mistake. Friends and family member I have tried to show/teach programming." I'm just curious, knowing what you know now, how would you go about trying to show someone how to program? I may have that opportunity soon and I was going to suggest thinking about a simple yet everyday problem that arises, and try to make it better with an app (could be phone, web app, client app, etc).

I would be more patient. I would start with something they want to do, like a practical project. "make a garage door opener". Or make a "robot controller", beer brewing temperature probe with a web server, an app to teach morse code.

The more abstract aspects often become internalized through experience and through concrete examples. Say I didn't care about all the network or socket programming until I had to implement a chat-like server. Looking back thinking "oh yeah algorithms are important" but I only internalized that until I picked the wrong one and got horrible performance. Or until I started interviewing and everyone and their cousin wanted algorithms -- so yes they are important in getting a good job ;-).

Anyway this "example before abstract" is just my personal idea. Googling for example is something I do very often. Say when I get to an API section, I quickly look for example first. Man pages that have examples.

Re: Don’t Believe Anyone Who Tells You Learning To Code Is Easy

#23
post #15

>They don’t tell you that a lot of programming skill is about developing a knack for asking the right questions on Google and knowing which code is best to copy-paste" This is a misleading simplification. I'm sure I'm preaching to the choir here, but I'm going to elaborate anyway. Learning to program isn't fundamentally about learning what text to type in to a box somewhere. It's about learning to think computational…

On the other hand, there is a lot to be said about knowing what question to ask and how to ask it. In the age of Stack Overflow, using the wrong terminology or being too specific with your question can lead to never finding that chosen, community-wiki'd answer with 500 upvotes that holds the solution to your problem (or shows you that you have been following the wrong line of inquiry, built upon the wrong set of assumptions).

Re: Don’t Believe Anyone Who Tells You Learning To Code Is Easy

#24
post #16

You need multiple things to come together. Some are abstract and general, some are more specific. You need to know the tools you are using, the capabilities of your platforms. At some lowest level it is about solving problems and knowing how to drill down and understand requirements, split a large problem into sub-problems. In that respect it is not unlike an architect or an engineer or carpenter. Then it comes to ab…

"And I have made the that mistake. Friends and family member I have tried to show/teach programming." I'm just curious, knowing what you know now, how would you go about trying to show someone how to program? I may have that opportunity soon and I was going to suggest thinking about a simple yet everyday problem that arises, and try to make it better with an app (could be phone, web app, client app, etc).

I learned programming with HTML/PHP. It's great in that HTML is really easy to understand and lets you draw colorful text and pictures to the screen almost immediately. Then, you can jump to Turing-completeness with a new kind of tag, "And then get them over to Python or something ASAP. PHP doesn't have enough structure for a beginner to learn good software design principles, it's best kept to just teaching a thing or two about loops and control structures.

Teaching HTML + JS is tempting, but then you kinda have to explain the whole DOM too, which just makes things complicated.

Re: Don’t Believe Anyone Who Tells You Learning To Code Is Easy

#25
post #7

> They don’t tell you that a lot of programming skill is about developing a knack for asking the right questions on Google and knowing which code is best to copy-paste. And they don’t let you in on a big secret: that there is no mastery, there is no final level. The anxiety of feeling lost and stupid is not something you learn to conquer, but something you learn to live with. Just because you haven't achieved mastery…

If you want to be super technical, sure. But in the context of this article that quote rings true. The masters really are surprisingly few in our field. At least the sort of masters I think you're talking about. In my experience most programmers have a sense of imposter syndrome that is very tough to crack so including that quote in the article was something I liked and think is important for other developers to hear. The amount of knowledge and experience needed for true mastery is so deep and wide that in practical terms I would agree with that quote completely.

Re: Don’t Believe Anyone Who Tells You Learning To Code Is Easy

#27
post #16

You need multiple things to come together. Some are abstract and general, some are more specific. You need to know the tools you are using, the capabilities of your platforms. At some lowest level it is about solving problems and knowing how to drill down and understand requirements, split a large problem into sub-problems. In that respect it is not unlike an architect or an engineer or carpenter. Then it comes to ab…

"And I have made the that mistake. Friends and family member I have tried to show/teach programming." I'm just curious, knowing what you know now, how would you go about trying to show someone how to program? I may have that opportunity soon and I was going to suggest thinking about a simple yet everyday problem that arises, and try to make it better with an app (could be phone, web app, client app, etc).

Learn to question everything. Use CodeAcademy, KhanAcademy, and w3schools.com. Don't listen to people who tell you something is a horrible idea. You're far to ignorant on programming to have your own opinion and accepting someone else's will just stunt your progress.

It's like learning to speak another language; you're talking to a child. You have to tell/teach it everything about it's life. Eventually it'll be able to live by it's self.

When you're ready for application programming, look for topics on c/c++ and other languages that people seem to love. Find out what your favorite game/website is built in and see if you can replicate it.

Re: Don’t Believe Anyone Who Tells You Learning To Code Is Easy

#30
Programing is easy for who has already learned it. The second language is easier to learn than the first one. I think that's why programers keep telling programing is easy.

I admit that the learning curve of programing is a little steep. But isn't every skills in the world the same? Think about the first time a child learn to walk, the first time a child learn to speak. No healthy adults think these things hard to do now.

The conclusion: the programing is just like any skills in the world, they are always hard for the new beginners but become easier and easier while you are getting familiar with them. Saying if it is statically hard or not isn't an accuracy statement.

Post reply on HN