Hacker News new | ask | show | jobs
by zoom6628 61 days ago
When I did tertiary studies in programming there wasn't AI but we did our programming exams in pencil and paper. The "beneficial" prep we had and I had since high school was using punch cards. And 24h turnaround time for compiles. That really makes you think. And you learn how to desk check even thousand line programs. Intense focus, structuring for readability (to catch typos) and simplicity (catch logic errors) helped enormously. Was not unusual to change hundred lines of code and submit knowing that it wouldn't compile but will throw up the other errors I couldn't find. Our exams would give us 4-6 attempts for clean compile AND correct output. The only space where I experience same challenge now (40+ yrs later) is embedded code. Desktops and web stuff have LSPs and dynamic reloads and interpreted code (not a thing for me when learning) with instant feedback.

Lots of skills from those old days that have been lost/ignored in the pretence of productivity.

2 comments

Yeah i really valued learning to code when I didn't have the internet available, if taught me patience and deep thinking, problem decomposition and organic (brain) execution
That is great for core principles. But languages and development environments have since assumed everyone has access to then internet. Meaning more "stuff" is the solution to problems (massive standard libraries or community created ones) rather that elegent language solutions.

The internet enabled all the complexity we have today. LLMs will have a similar effect, but instead of engineers actually having to understand the system (even in it's complexity) they will just be querying the oracle to build things or solve problems.

When the oracle can't help (or maybe refuses to) is when it gets interesting.

I learned HTML/CSS from a book on a computer with no internet access. Seemed reasonable at the time but in hindsight was absolutely ridiculous.
Similar to me, I learnt some html tags through a book which was sold at newsstand, once I was at my cousin's house using her computer without internet access, then I wrote a simple html page with the Win 95 cloud wallpaper as background image. My cousin was terrified how I did that!
24 hour turnaround for compiles, expected to change a hundred lines and it fail to compile, and you get 4-6 attempts, so up to 6 days to get a thousand line program working? Now you can compile and check a thousand line program in milliseconds. It seems so unarguably more productive, why do you call it a 'pretence' of being more productive?
> Now you can compile and check a thousand line program in milliseconds.

How do you define "productive?" Lines of code written per day? Bugs fixed per man hour? Fewest reported bugs per end user?

The fastest compiler in the world won't help you find all the runtime bugs that simply wouldn't have existed in the days of punch cards, when code was written with with more care and attentiveness since there wasn't a fast edit/compile/test development loop. YMMV, of course.