Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

Hey. Good question! People think I'm crazy, but I promise you I'm very sober about my approach to my courses.

I teach CS & mathematics at a university here in London. Empirically, I've noticed that students can find ways to be productive but they are seriously lacking the fundamentals.

To be fair, it is nothing short of overwhelming to try and grok the fundamentals of computing using modern machines, modern OSs, and a modern dev toolchain.

So what I try to do with the courses is to go back in time and limit myself with a closed hardware box that is still small and simple (compared to what we have today).

Instead of using a fake instruction set, I can have students learn the basics of MIPS, use a very simple assembler, output binary code, and execute those instructions on a hardware that exists (or existed once). That allows me to explain about CPU architecture with real examples, talk about DMA, endianness, interrupts, and so many other concepts that students can read online but they don't really grok until they get their hands dirty with grease.

Weirdly enough, so far it's been proven to be a good idea. It's definitely not for everyone, but if someone is at a stage of their career where they think it's fun to learn about RISC pipeline, fixed-point math, game physics, 3D graphics, compressing assets, computer architecture, etc., then I still think this type of course is valid!

I'm positive that in 25 hours learning how to program the original PlayStation they'll learn a lot more about computer science than taking an expensive class to read about 'Digital Transformation' or something like that.

To each, its own.



Hey, the website isn’t loading for me right now (i’ll try again later) so i wanted to ask: does the course include examples on how to run the code on a playstation, real or emulated?


Hi there. Sometimes using a VPN can block users.

All the examples from the lectures we execute using an emulator. The final big project is the only one that I actually burn a CD ISO and run on the real PlayStation. You don't need to do it, but I still show how it's done for those who want to know.


That really makes a lot of sense. Given the constraints, the PlayStation is indeed a good fit (if you want to be sadistic, I can't think of a worse fit than the Atari Jaguar with its numerous pipeline hazards inside its proprietary RISC processors).

I do think using a modern SDK would streamline the experience without compromising on the authenticity, it might be a good idea to at least mention this option since the original Sony SDK is technically leaked tooling.


That's why I take your courses. I work in embedded so the low-level always interests me. There's too many devs who just throw javascript or python at a problem and need an i9 just to run their calculator app.


Considering those goals, what about similar approaches using ESP32 based handhelds instead?

It seems it could have been a better approach without the possible legal issues of PS1 homebrew development.


Why ESP32 over any other microcontroller? ARM and MIPS are much more widely used in industry.

Nostalgia is obviously a big factor in why people get excited for these courses, so PSX is a good choice. Although I do agree that using a non-proprietary SDK would've been a smarter decision.


Was an example given its maker communities of gaming handelds.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: