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

A similar story here. I was into the game and started running a Minecraft server hosting company in high school (selling VPS'es with a Minecraft control panel, effectively). I ended up learning and doing the operations, maintenance, support, marketing, taxes--the usual jack-of-all trades of being a startup. My connections and experience there led directly to me joining another company, which has subsequently been acquired and landed me at Microsoft.

I wish more CS/programming classes, particularly pre-college, were game-oriented. A Java course I took in school had us writing a 'database' command line app that held fake enrollment information. Had that kind of thing been the only exposure to programming that I was given, I almost certainly would not have entered the field. But show someone like me a way to automate or expand something like Runescape or Minecraft? That, I'm interested in.




> A Java course I took in school had us writing a 'database' command line app that held fake enrollment information. Had that kind of thing been the only exposure to programming that I was given, I almost certainly would not have entered the field.

Me neither. That said, in retrospect, I believe university is more similar to real jobs that people give it credit for - the tedium only gets worse in a typical dayjob. As much as I hate "fake enrollment DB" exercises, they're pretty accurate description of how the work looks like.

(I used to want to go into gamedev professionally; due to various life events I went a different way. Judging by stories from both HN and IRL people I know from the industry, I may have dodged a bullet here.)


The thing that always bothered me is that the “fake enrollment DB” doesn’t solve a problem anyone has. It’s play-acting at solving a problem. So you get the tedium of work instead of the fun of play, but the productivity of play instead of work.

Yeah, you can get there that way but it’s a slog, and the reward is a long way off. That’s not like work. At work you get a regular paycheck even if enrollment DB isn’t thrilling.


I'm a teaching assistant for an intro to programming class, and I do feel that solving an endless train of toy problems is problematic for students. From my experience, the best way to learn is to understand a real problem, determine it's requirements, then design a solution. However the professor and I struggle to find real problems that are approachable for novices with varied backgrounds.

I saw an open source class called nand to tetris where students had a semester to create a machine that could play tetris, starting with only nand gates. I thought that seemed like a much more fun progression for computer hardware than the undergrad courses I took. I would love to discover something similar for programming but so far I haven't found it.


Some things I'd have loved to be told to build:

    Simple 2d game
    To do app
    Timesheet app
    Implement a clone of x with something extra of your choosing
    Top Twitter celebrity app using its API
    Building a search engine
    Creating a programming language
An issue with the programming courses at my uni was that none of them used a database. The programs were toy apps by design. Instruct students to use sqlite or MongoDB, and encourage them to use PostgreSQL/MySQL.

Our database class did use databases, but we had no integration of the two subjects.


To do app has always seemed an optimal one to me, since it should be relatively accessible, no matter your prior experience, but infinitely customizable. I remember a YC founder telling me that both pg and sama didn't think there was a broadly available to do app that met their needs, so they both rolled their own (and continue to update it as their needs change). That seems like a pretty optimal intro project to me


I thought that the Java Robocode stuff was interesting and could help inject some fun or 'gamification' into development. Would that not be a useful challenge for CS students? https://robocode.sourceforge.io/


Thank you for sharing. This is similar to what we were looking for, something that gamifies the assignments to get students more engaged. Part of the problem is that there are so many free coding resources out there that it's tricky to find a mature one that people have gone through and found rewarding.


Game development is the poster child of this goal; many a programmer (myself included) started this way, on their own. It offers a highly desirable goal (fun and a creative outlet) while forcing you to pick up many of the important programming concepts as the complexity of your code increases.


I've almost finished with my cooperative work/university CS degree, and I always disliked programming "games" there.

Creating the 10000th Conways Game of Life? Developing some crappy game on my own? No, thanks.

Developing something for an existing game? That would have been great! I'm all with you.


Tell Matt S. I say hi!




Consider applying for YC's Fall 2025 batch! Applications are open till Aug 4

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

Search: