Live data from Hacker News

Learning to program is getting harder

allendowney.blogspot.com

181–190 of 422 posts

Re: Learning to program is getting harder

#181
post #125

I disagree. Creating a program that meets todays' users expectations is what's harder. But learning programming by itself, is way easier. We have Python, Ruby, Javascript... We have the Web as a platform and as documentation. We have communities and cheap, fast computers. The hello world has never been easier to do. What's hard is to make a real time offline first SPA with a beautiful responsive design that uses the…

> The hello world has never been easier to do. We also used to have BASIC pre-installed on a lot of different systems, and were able to write a GUI just by writing to the frame buffer directly. A helloworld was just: 10 PRINT "Hello, World!" I learned to program in BASIC, with just the on-disk manuals. I can't say that it's easier today - I didn't need anything extra back then, and had a snake game up and running in…

> were able to write a GUI just by writing to the frame buffer directly.

And, among other problems, that GUI was inaccessible to people with disabilities, e.g. blind people or people who need to use an alternative input method. It probably wasn't internationalized or as good-looking as today's GUIs either.

In the words of Billy Joel (in the song "Keeping the Faith"), "say goodbye to the oldies but goodies, cause the good old days weren't always good, and tomorrow ain't as bad as it seems."

Re: Learning to program is getting harder

#182

Anecdotally, what I've seen is that older programmers, in addition to being programmers, also have the skills of a computer helpdesk technician. They can debug Windows problems, hardware problems, know how to mess with the BIOS, and have no problem installing or configuring any piece of software. This helps immensely when setting up your IDE or debugging weird problems with compiling. Younger programmers seem to comm…

I agree completely --- being one of the "older programmers" --- and think it could be phrased thus: a new generation of "coders" is being forced to learn how to write instructions for the machine, when they are barely computer-literate. Having taught some introductory CS courses a few years ago, the amount of struggling with basic things like file naming, directory hierarchies, and even simple hardware use was a cons…

There aren't really any clues as to how a computer works on an iphone. There isn't even a visible filesystem. It's no wonder students today have no idea how a computer works.

Re: Learning to program is getting harder

#183

I love Ruby the language, but I absolutely hate Ruby the platform. I've never run across a more hostile landmine-ridden terrain for new developers. Every time I have to ramp up a new dev, I just resign myself to the fact that it's going to take anywhere from an hour to three or four to get everything installed. God forbid they've actually tried to use Ruby before on their machines. I've dipped on job prospects which…

Before the tire fire that is rvm became "standard", it was normal to just download the version you needed and build it from source. There's nothing forcing us to use crappy, obscure tools like rvm and rbenv. And I agree with you on all points.

Re: Learning to program is getting harder

#184

Earlier quoted context omitted.

I've never met a good programmer that wasn't (at least initially) self taught. Presumably they exist, but I've never met one. I do agree though, I find when I'm teaching my juniors I sometimes have to give a little history lesson as part of it (things like why 8.3 filenames).

> why 8.3 filenames Why is that, exactly? I grew up in that era, I remember when floppies were actually floppy, and I've been well into computers ever since, but I don't believe I could tell you why. If I had to guess, I'd guess that FAT used a fixed number of bytes for each filename.

It was 6.3 before that. The PDP-10 system :-)

Re: Learning to program is getting harder

#185

Anecdotally, what I've seen is that older programmers, in addition to being programmers, also have the skills of a computer helpdesk technician. They can debug Windows problems, hardware problems, know how to mess with the BIOS, and have no problem installing or configuring any piece of software. This helps immensely when setting up your IDE or debugging weird problems with compiling. Younger programmers seem to comm…

I agree with your observation, but I don't agree with your diagnosis of the cause. I think it's mostly down to the increasing abstraction and ease of using software. When I was a kid, I wouldn't have described "computing" as a hobby, but just getting certain games to install and run on my parent's cheap Gateway PC would require a lot of fiddling around. My younger siblings have no more or less interest in computing t…

I think there's also an aspect of people's expectations changing. Twenty or thirty years ago, no one expected new software to run on a ten-year-old computer and no one expected Windows software to run on a Mac or vise versa. (Linux was pretty far outside the mainstream.)

Now, we have a proliferation of computing environments, and it's hard to give people generic advice about how to install and use a tool that would apply equally across all those various environments. Browser standards seem to be the one thing that's relatively common across platforms, so a lot of that stuff moves online.

Re: Learning to program is getting harder

#186

Earlier quoted context omitted.

I would have murdered them on the spot for that response

Probably both are correct. But which one is more useful in this context?

The interviewer or whoever should provide the context. Otherwise it’s a pointless question.

The issue is when they don’t provide context and expect you to list off some random framework or something.

Re: Learning to program is getting harder

#187

Earlier quoted context omitted.

I would have murdered them on the spot for that response

Probably both are correct. But which one is more useful in this context?

Why is a pothole round?

Nope - sorry, looks like you're not a mythical unicorn!

Re: Learning to program is getting harder

#188
post #44

I don't know...if you can't figure out how to install python on a local machine...maybe you don't have any business being a coder to begin with. I mean, come on... edit: the downvotes from the delicate snowflakes crack me up...

Agreed sort of. Especially when the solution is often easily searchable.

I’ve hired interns and junior folks who have trouble with the command line (special circumstances for FT hire). I offer help, but also tell them that it’s their responsibility to understand any extant skill gap and learn. I’ve worked with at least one older boot camper who threw fits when they had to learn something new on their own to debug a problem. I’ve worked with much older career programmers who’ve done the same.

I don’t think it’s a matter of being a coder or not, rather some people aren’t problem solvers, and some people are lazy, and some people dumb, and some people want to be somewhere else. If I had my pick, I’d never work with these people. However, sometimes the people doing the hiring shouldn’t be managers, you could say, and sometimes the people making the decisions have incentives to hire bad people. Then you end with experienced newbies, and have to fill a position eventually.

A better articulated post would posit the problem is not inherit to people not knowing things, but people not having to.

Re: Learning to program is getting harder

#189
post #125

I disagree. Creating a program that meets todays' users expectations is what's harder. But learning programming by itself, is way easier. We have Python, Ruby, Javascript... We have the Web as a platform and as documentation. We have communities and cheap, fast computers. The hello world has never been easier to do. What's hard is to make a real time offline first SPA with a beautiful responsive design that uses the…

> The hello world has never been easier to do. We also used to have BASIC pre-installed on a lot of different systems, and were able to write a GUI just by writing to the frame buffer directly. A helloworld was just: 10 PRINT "Hello, World!" I learned to program in BASIC, with just the on-disk manuals. I can't say that it's easier today - I didn't need anything extra back then, and had a snake game up and running in…

I think

    while True:
        print('Hello, World!")
is not that much worse. Granted you have to launch a shell first. Obviously the programming stack got more complex and users' expectations got higher (which is a good thing), so it is more work to make a program that is useful.

But the things that have been simple then are still simple today - they are just not popular anymore or not installed by default.

Post reply on HN