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

>There's a really important distinction that should be made between personal "fun" projects and professional "work" projects.

I can't support this enough. And it took me years to realize this (again). I often had the same struggles as the blog post states. With my master thesis (and just out of pure curiosity) I built a risc-v CPU as a proof-of-concept (to show that my DDR- and Cache-Controller inteded for a ARMv4 core is somehow portable to a different CPU). Somehow I kept working on it every now and then, because i wanted to make it "perfect" (64 bit, FPU, linux, you name it). That ended in much frustration and it still hasn't evolved.

But then suddenly I got reminded that in august this year was a sports event that friends of us arrange. For years I wanted to build a kind-of big display which shows the score and remaining time and is visible outside (from like 10m). My perfectionism always ruined. But this time I was determined to do it and get it done. My RISC-V CPU on an FPGA was the perfect fit for this. So I built a co-processor which drives these common RGB LED matrices and shows time and score. The timing itself and a remote where realized with arduino.

The code looks utter garbage, it barely works, but I had fun and my friends loved it. And most importantly: I "finished" it, as in it worked. I had to force myself really hard to do it. But I enjoyed it and it's fine that it ain't perfect. I also learned a bunch. Now I am determined to improve it for next year and I don't even think about different projects atm.

Edit: it was so imperfect, that you couldn't really take pictures of it, because something is wrong with the refresh rate (it looked fine for the human eye): https://litter.catbox.moe/193vp5.jpg



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

Search: