Live data from Hacker News

Learning to program is getting harder

allendowney.blogspot.com

411–420 of 422 posts

Re: Learning to program is getting harder

#411
post #347

Earlier quoted context omitted.

But manhole covers are always bigger than the hole. Otherwise, they'd fall in at installation and the problem would be immediately obvious. The point here is more that a circle has the same diameter regardless of orientation. There's no way to rotate it to make it fit through a hole it couldn't before, like you can do with a rectangle.

This is also true of a triangle, and indeed there are triangular manholes.

Aren't the altitudes/heights of a triangle shorter than its sides?

The height of an equilateral triangle is about 87% of the length of one of its sides.

Re: Learning to program is getting harder

#412

Earlier quoted context omitted.

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.

Wait, the previous generation had no phones at all. Do you mean that today's generation use phones instead of computers? In that case, I understand your point.

Classic: http://coding2learn.org/blog/2013/07/29/kids-cant-use-comput...

Re: Learning to program is getting harder

#413

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…

Perhaps it's more to do with the stock of people who learnt CS.

In the older generation, CS was a relatively obscure and difficult skill with little to no easy-guides that it filtered the set of students to only those who were insatiably curious and were fuelled by learning new things.

In contrast, CS has become so ubiquitous that nearly everything has a "how do it" guide that eases the entry of nearly anyone, with little or not interest or whose motivation might be less than ideal. Thereby, possibly leaving room for more anecdotal evidence for this perceives shift in skill.

Re: Learning to program is getting harder

#414
post #411

Earlier quoted context omitted.

This is also true of a triangle, and indeed there are triangular manholes.

Aren't the altitudes/heights of a triangle shorter than its sides? The height of an equilateral triangle is about 87% of the length of one of its sides.

True. Whether they fit through the hole depends on how thick they are.

Re: Learning to program is getting harder

#415

Earlier quoted context omitted.

> With an IBM XT 286, on the other hand, it was all in my face. Earlier in the pre-PC age, for the hobbyists you had similar experiences with home computers like Tandy RadioShack, ZX spectrum, Commodore Vic-20 or 64, not to mention the Amigas and Ataris (and all the others I’m old enough to have forgotten). Early Macs also let you mess around (and mess up) your system too. It was an exciting time in computing indeed,…

Yes, it was sloppy of me to say "PCs". I meant personal computers, more generally. Which arguably includes all the pre-PC ones.

I believe they were called "home computers", then?

Re: Learning to program is getting harder

#417

Earlier quoted context omitted.

The manual didn't tell you anything. The books didn't tell you anything. They scratched the surface, which if you knew nothing might have seemed profound, even mind-blowing, but if you were trying to do anything non-trivial you were left grasping for answers. I tried to build games on the C64 using BASIC and, while I had some success, the results were always limited by the fact that it was in BASIC, it was going to b…

Why didn't you just buy the Commodore Programmers Reference Guide[0]? It had an entire guide to C64 machine language, and circuit schematics . The book even tells you to buy the 64MON cartridge if you're serious about programming in assembly. This book wasn't rare. A friend of mine had it, we lived in the middle of nowhere. These programs and cartridges were not rare. I had multiple catalogs for buying these things a…

If my local library didn't have it, and the local bookstore didn't have it, the book may as well have not existed. The local bookstore was the size of a shoe store and carried a handful of popular titles and the most technical books they had were about building decks or, if you were lucky, rebuilding motorcycles.

You say the book wasn't rare, but I didn't know anyone who had one, or who even had access to one. I had a friend with a technical reference like that, but it was for the Apple ][, so that was no use. The only access to computers at all was at the local school, and the faculty had no idea how to use them for anything other than to train kids on typing.

Now that book is available online for free which is a sterling example of how much things have changed. Anyone who wants this information can get it if they look hard enough, and anyone with questions can get them answered by experts.

Re: Learning to program is getting harder

#418
post #152

Earlier quoted context omitted.

I thought the guide that came with the C64 mentioned the Programmer's Reference Manual. I remember asking my dad to get a copy and he told me that I had to finish the first book before we could get it. > I cracked that book open and my mind was blown! I really wish I had had the opportunity to read through one when I was younger.

It did. The last page of the User's Guide[0] that came packaged with every C64 says: > Commodore hopes you've enjoyed the COMMODORE 64 USER'S GUIDE. Although this manual contains some programming information and tips, it is NOT intended to be a Programmer's Reference Manual. For those of you who are advanced programmers and computer hobbyists Commodore suggests that you consider purchasing the COMMODORE 64 PROGRAMMER…

My "local dealer" was a Radio Shack and they didn't sell anything Commodore related. If you wanted to know about Tandy, though, did they ever have you covered!

Re: Learning to program is getting harder

#419
post #56

I'll be honest with you. Programming is actually pretty easy to learn. As long as you have a vague idea of how logic works and are eager to learn with the right approach, you can pick it up pretty quickly. A lot of the concepts floated around in programming have crazy sounding names but are actually not that bad. What's really hard to learn, however, is full on software engineering. Knowing how something works end to…

Hi, I completely agree you. I am currently learning how to code. I am at that point where I know the syntax of of a few language pretty well and can code up small programs. However, I do have difficulties in architecting and developing a fully functional application. How did you solve this problem?

Not sure you'll see this but honestly man, if you have friends in the field just ask them, plain and simple. Not saying this is you, but often people don't go this route because pride, etc.

If you don't know people in the field, chances are there are software people where you work - some are douchy to people just learning (pfft, you think you can learn this craft in months?) but others are willing and eager to help others. Find them and again, just ask them to point you in the right direction.

Lastly, find a class. Nothing crazy like a 25k bootcamp or anything, but find something like building a site end to end in 2 days or something like that.

A lot of this stuff is tribal knowledge and not captured well in tutorials. There are excellent tutorials for learning the technical things, but not necessarily for putting everything together into a working app.

Hope that helps!

Re: Learning to program is getting harder

#420
post #374
post #367

Earlier quoted context omitted.

I think I'm in the group that doesn't immediately see the obvious gain of teaching in a Docker container vs. teaching how to install pyenv/virtualenv. Is it mainly cutting out troubleshooting differences between host OS's while also getting isolated python environments? Maybe I do see the win there, after all?

I think you're starting to see it. By the way, everything isn't just thrown into a single container. We use Docker to set up the whole app over a series of containers. So postgres, redis, the flask app and celery all run in their own containers. Without Docker, you're responsible for getting not only virtualenv set up, but also installing postgres and redis on your box, which is wildly different on Windows, MacOS and…

Ah yes, makes total sense if you're setting up not just a Python environment, but an entire stack. Very cool.
Post reply on HN