Live data from Hacker News

Ask HN: With no CS degree, what was most frustrating about learning how to code?

news.ycombinator.com

11–20 of 22 posts

Re: Ask HN: With no CS degree, what was most frustrating about learning how to code?

#11
1) Real world examples of algorithms. I really wanted to get into algorithms and data structures, but it was always hard to find an actual reason for things.

2) More than anything, contributing to open source projects taught me how to code, how to read and edit existing code, and how to collaborate with other developers. In terms of early stages, Learn Python the Hard Way was huge, because it introduced me to all the OTHER online resources (like Stack Overflow) that were available. I also found some of the Udacity videos helpful.

Re: Ask HN: With no CS degree, what was most frustrating about learning how to code?

#13
I've got a little experience with both. I taught myself to program in the early days of the internet (well not that early, but 28.8 no less). I also was a CS student for a couple quarters before dropping out.

On the whole I think it's gotten a lot easier. I remember spending days on forums trying to solve little problems.

Either way the best way to learn is by doing.

Re: Ask HN: With no CS degree, what was most frustrating about learning how to code?

#14
Spaghetti/fat code is probably the biggest problem for new programmers - though they're probably not aware of it. It's very, very hard to make any module larger than ~500 lines without overcoming it.

This was a huge issue for me for probably about two years.

Then, I took a look at my projects using a dependency visualization tool (Structure101 for Java/C#) and I got a lot better as I fixed all of the tangled code/fat classes.

Re: Ask HN: With no CS degree, what was most frustrating about learning how to code?

#15
The most frustrating thing to code IMO is going through the tutorials, accomplishing them and then saying "now what?" It's easy to follow along things like CodeAcademy or LearnRails or any other site that teaches you the basics of getting started, but after that, where do you go? You no longer have the structure of a classroom that gives you the next project where you can build or challenge your skills...while not setting you up to fail and become discouraged.

I highly recommend finding a project you're actually passionate to work on after you are done with your tutorials. If you're passionate about it, you're going to push through the frustrating parts that feel like you're not prepared or don't have the experience.

Use co-workers, forums, communities like StackOverflow and use them aggressively. Become rigorous at searching Google to find the answers first and give it a few tries, but don't be ashamed when you hit the wall. For me, the only way things will stick is by practicing them and trying to take them to the next level!

Re: Ask HN: With no CS degree, what was most frustrating about learning how to code?

#16
You dont need a CS degree or even any degree for that matter to learn to code. What you need however is a good skill with basic mathematics and logic.

During my childhood finding a computer was the most frustrating part. I instead wrote programs on a fucking notebook.

Re: Ask HN: With no CS degree, what was most frustrating about learning how to code?

#17
1) when I was learning...as a 10 year old in 1985...lack of available learning materials and no one to ask questions. I got a magazine once a month, no one I knew could program. And the only language I had at my disposal was GW-Basic. Now: there are probably too many available resources. I'm teaching my kids and the amount of materials is staggering.

2) Just sitting down at the computer and struggling with it -- not looking for the easy way out, figuring out things myself. Teaching only gets you one step of the way, after that it is all you. I would spend hours ready every book I could and writing small programs.

2) Second part was programming as part of a team and doing code reviews. That will shape you up like nothing else. But you can't do this step if you don't do the other part (writing lots of code on your own).

Re: Ask HN: With no CS degree, what was most frustrating about learning how to code?

#18

1) when I was learning...as a 10 year old in 1985...lack of available learning materials and no one to ask questions. I got a magazine once a month, no one I knew could program. And the only language I had at my disposal was GW-Basic. Now: there are probably too many available resources. I'm teaching my kids and the amount of materials is staggering. 2) Just sitting down at the computer and struggling with it -- not…

This.

I started programming in 1984, writing in C64 basic, and didn't move on to C and assembler until 1989 (shortly after borrowing a modem from a friend), simply because I didn't even know such languages existed until then.

There's a staggering amount of (free!) information available nowadays for the budding programmer, to the point where your only major challenge is discerning the good from the bad (and that's easy enough to solve). The biggest accelerator to learning is having a pet project or three.

Re: Ask HN: With no CS degree, what was most frustrating about learning how to code?

#19
I don't have a C.S. degree. I had an Electrical Engineering degree which meant that I knew how to think logically and construct scripts of things. This means that I knew fuck all about data structures or modularization of code. However, I really really learnt how to build complex systems by studying more mathematics. Specifically pure math. It trains your mind to think in terms of raw abstractions in a way that hardens you and makes programming easy. It also helped that I took real analysis the same semester as I took Operating Systems. The brain has a small working memory set. The only way to deal with complicated systems is to learn to recognize the forest and not get lost amidst the trees. Even now, when I interview people or get interviewed, Ultimately I don't really care what tools you know, what languages you use. Sure, it is great that you know the stack that this company, this team uses. But ultimately, what matters to me and the work I do is how fast you can break down a problem and see the underlying simple backbone. These are the kind of people I like working with.

Re: Ask HN: With no CS degree, what was most frustrating about learning how to code?

#20
One thing I try to do is read everything that is considered well written or canonical in some way.

These types of resources tend to be informative, easy to grasp and often inspiring. They are things like books/textbooks, blog posts, tutorials(most tutorials suck though). They will usually reference other (even more canonical) resources so you shouldn't really have problems finding new stuff to read. You can pick and choose based on what sounds interesting and repeat.

This has been extremely efficient for me, and I have learned a lot pretty quickly.

Post reply on HN