Live data from Hacker News

Why Learning to Code Is So Damn Hard

vikingcodeschool.com

61–70 of 270 posts

Re: Why Learning to Code Is So Damn Hard

#61
post #58

As a self taught developer, I'm so thankful I first thought I wanted to be a designer. HTML and CSS made sense to me (the backend, even frontend js, forget it. I'd try to hack around it) and I sought deeper knowledge on the subject. Build systems and preprocessors were a gateway to command line tools and good organization skills. Once I was thrown into full stack development, I at least had something to lean on while…

I am part way through your trajectory. I was a designer first, fell in love with html/css, eventually gave in and learned js, started to really enjoy that and have now been edging my way to the back end for a while. Now I'm job hunting at the same time and definitely feeling that desert of despair. Was glad to see your post, gives me some hope!

Re: Why Learning to Code Is So Damn Hard

#63
Even with years of experience in a given language under your belt, heading into a new job and facing a new set of frameworks can lead to issues. It isn't quite like starting from zero again, but you have re-learn how to do the most trivial of things, as it may not even remotely resemble how you were used to doing it.

Re: Why Learning to Code Is So Damn Hard

#64
post #4

Earlier quoted context omitted.

As someone who is currently learning how to code, the author gets it mostly right. For me, the hardest parts of programming as a beginner - understanding OOP, data structures, etc. - didn't really 'click' until I stopped reading tutorials about them and start writing my own programs. The idea of 'objects' and 'instance variables' was mind boggingly confusing at first, but once I stopped worrying about how to make sen…

start writing my own programs Indeed, you can only get good at programming by doing it. As someone who learnt programming in the 90ies, one of the difficult things nowadays seems to be that there are so many languages, libraries, frameworks, hypes, etc. Of course, if you know your CS and have experience, most of it are variations on common themes. However, I can imagine that it can be very difficult to focus on one t…

I actually learned HTML, CSS and JS way back when I was in 6th grade. This was pre dot-com time and there were only a handful of resources. You could understand HTML and CSS in a day because there were so few HTML tags and requirements. 'Frameworks' was something that didn't even exist.

I somehow stopped my learning process before I hit 8th grade (around the same time I discovered that the opposite sex exists). When I picked it up again recently, the sheer number and complexity of frameworks and languages itself was daunting.

I can't imagine how hard it must be for someone who hasn't had a lick of coding experience. I could at least build a good looking website in HTML, CSS and simple JS before I started learning how to code.

It's damn tough and it has given me newfound respect for top coders. I work in marketing in my day job, and honestly, you could teach someone to replace me within a few weeks

Re: Why Learning to Code Is So Damn Hard

#66
post #45

Learning to code is not hard. At all. Not relative to things that actually are hard. Having trained as an electronic engineer, programming is by far one of the easiest things I've ever done, by an order of magnitude. You can tell by the number of teenagers that can code, how many teenagers can design a nuclear submarine? That is much harder to learn.

There's also the amount of context required. To write a basic program, you don't need to know how computers actually work. Sure, it helps, but it isn't a prerequisite.

Designing a nuclear submarine, however, requires a lot of interconnected disciplines that rely on an understanding of each other.

To a lesser degree, it's similar to setting up your own ESXi cluster at home. You need to know more than just VMware--you need to understand networking, storage, flashing and configuring the host BIOS... AWS is quite a bit easier than managing your own physical environment.

Which may relate to why we see more younger people getting into coding than infrastructure/operations (regardless of the money).

Re: Why Learning to Code Is So Damn Hard

#67

Many of the coders I know (which is mostly folk in their 40s) never learned from scratch. More often, we started in support roles, and slowly worked into the code. First, learning to read it to help troubleshoot issue, then making basic changes, and slowly picking up more and more of a specific codebase. Once the basics were understood, we'd start making basic apps on our own, often while still supporting more comple…

This. I so agree with this.

I was lucky enough to fiddle with computers as a kid, so I kind of knew what I wanted to do, so I had years and years of "play time" in which I gently and accidentally introduced myself into programming, databases, operating systems, hardware, the web, etc. Often, things that I never thought would be useful turned out to be down the road. I also learned to be more fearless when experimenting and understanding a system - versus it takes some people years to get out of the "afraid to break things" mindset into the mindset of experimentation, trying things out, prototyping, poking things to understand them.

I think these are things that the sausage factory modality of education can't really provide, and working in the field will definitely give you this kind of thing too.

But the issue I see often is that the self taught or "graduated" (whatever that means) from support folks aren't taken as seriously as a person with a BsC in CS from a "legitimate" engineering school.

I /did/ get a formal degree, and it taught me tons (won't comment on the whole is it necessary thing) but I think it would have been way harder for me to get a programming job otherwise even though I probably had adequate skills for an entry level job in many places.

I don't think in many places today that someone would consider training a support person to do engineering, for various good and bad reasons, and we need to think hard about providing more long term learning-through-doing and on the job apprenticeships that other craftspeople do.

Re: Why Learning to Code Is So Damn Hard

#68
I think "coding" professionally involves a lot more than being able to write simple programs for fun on his own. That's why I don't really like the term "coding".

I considered myself a good programmer, but during my first job as an intern, I was confronted to million of lines of barely documented C++ code (a C compiler for some obscure micro-controler). Most of my time was spent trying to understand what this code was doing, and praying that I didn't break anything. The days were long with no distraction and I had a lot of pressure from my boss. It was horrible.

Second job (still as an intern) was the opposite. I was supposed to design a prototype website for a bank. There were a lot of boring meetings and nothing really interesting to do.

I didn't feel I could be successful or happy in such an environment (and I ended up in academia). On the other hand, I had schoolmates that weren't passionate about programming and that learned it much later than I did, and did quite well (being persistent with good social skills).

I always wonder if I could have had a better experience in different companies.

Re: Why Learning to Code Is So Damn Hard

#69
post #45

Learning to code is not hard. At all. Not relative to things that actually are hard. Having trained as an electronic engineer, programming is by far one of the easiest things I've ever done, by an order of magnitude. You can tell by the number of teenagers that can code, how many teenagers can design a nuclear submarine? That is much harder to learn.

I think the biggest advantage, the ease comes from the instant feedback you get while learning. Tweak something? See what it does. Nothing's more frustrating to learn than something that comes with no feedback. i.e. relationships, getting a job, education its self

Re: Why Learning to Code Is So Damn Hard

#70
post #45

Learning to code is not hard. At all. Not relative to things that actually are hard. Having trained as an electronic engineer, programming is by far one of the easiest things I've ever done, by an order of magnitude. You can tell by the number of teenagers that can code, how many teenagers can design a nuclear submarine? That is much harder to learn.

I'd disagree, except that so much of this depends on how you define "learning to code".

Digging into someone else's code base to understand it well enough to fix bugs and add features without introducing unintended side-effects is, at least for me, quite a challenge. It takes a tremendous amount of persistence, the ability to build a mental blueprint containing substantial amounts of logic, and - most importantly - the ability to swap into the mindset of whoever wrote the app, rather than the way you would have written it.

You know, a lot of us have studied tough things - I was a pure math major and I was a PhD student for a while in a very math-ish engineering department at Berkeley where most of the day was spend on proofs about stochastic systems or convexity. This sort of background isn't unusual here on HN, yet many of us would say that while code itself contains a wide range of challenges and difficulties, the field absolutely has monumental challenges that will push very smart people as far as they can go, maybe farther.

I once (about 15 years ago) got rebuked (gently) by a researcher at Sun Labs once when I dismissed a potential project as "easy." A museum was looking for someone to help build a search engine for their art collection. I said "a db search across some metadata, that's not a huge challenge." The researcher replied, with a mild smirk, "oh, I didn't realize you'd already solved all the issues in image search."

So then I backpedalled a bit and talked about the specs the museum had mentioned, "oh, well, they're just looking for search on some metadata". He replied, "well, maybe that's the only way they understand the problem, but you don't need to accept those limits".

Post reply on HN