Live data from Hacker News

Ask HN: I just want to have fun programming again

news.ycombinator.com

211–219 of 219 posts

Re: Ask HN: I just want to have fun programming again

#211

You seem to have two very conflicting wishes here: 1) To have fun 2) To write a cross-platform web-base app with good HTML canvas inter-op ... If you really want to deliver this cross-platform app, then it seems that's going to be more work than fun, although no doubt good tool/framework choice can help minimize the headaches. For a fun project it seems better to avoid all of the things that you already know are goin…

I agree, solving multi-platform issues is never fun. Most of it is just either a chore, or getting locked into a very constraining framework.

Re: Ask HN: I just want to have fun programming again

#212
Have you ever programmed a video game? It is a nice experience. And weird, if you are used to apps.

> I'm not a fan of the complexity

That is a very frequent trap many devs fall into when doing a video game. You start with the intention of programming a video game and you end up spending all your energy building a video game engine first. Resist that with all your might. I recommend trying to make a little game that "works" from the start, and then doing small improvements gradually while making sure that what you have is still a "working game". If you spend more than an hour with your game in a non-runnable state, revert to the previous commit and reassess.

Second problem complexity-wise is ... just incidental complexity. In general, 3D games are one order of magnitude more complex to do than 2d games, so I would recommend the later.

You could try doing something in PICO-8 [1]. It's a game dev environment with artificial limitations. Like the number of colors (16), the screen resolution (128x128) and others. It's programmed in a dialect of Lua, which is in itself a very tiny language. It is possible to make something overly complex with those limitations, but you have to try really hard. And it is fun.

[1] https://www.lexaloffle.com/pico-8.php

Re: Ask HN: I just want to have fun programming again

#213
Have you thought about learning new technologies? Maybe if you vary your tech stack, you would feel more motivated :) I recommend this article, if you're interested in Blockchain: https://www.ratherlabs.com/post/the-roadmap-to-become-a-bloc...

Let me know if it was useful for you! Good luck with everything!

Re: Ask HN: I just want to have fun programming again

#214
For me the fun of programming came back when I allowed myself to do things that are completely useless, apart from the fact that it brings me joy. It started with 6502 assembly programming for a breadboard computer I built. Right now I am programming C using old Borland tools on an old MS DOS computer. Again, super useless, but oh so fun.

And who knows, maybe this new knowledge will be useful professionally one day (I learned a lot about very low level computer concepts, and I didn’t know C before), but that is totally not the goal. Just the absence of the pressure to be useful brought back all the fun for me.

Re: Ask HN: I just want to have fun programming again

#215
post #134
post #120

Earlier quoted context omitted.

Big +1 on this. If you're OK with a broader definition of "programming" and have a bit of money to throw around, I've found tinkering with https://www.home-assistant.io/ to be very satisfying. I got more sense of accomplishment from scripting "text me when I leave the house if I forgot to set the alarm, and turn on the front porch lights when I arrive back if it's after sunset" than I did from months of corporate wor…

Deploying Home Assistant is largely how I taught myself Docker, Kubernetes etc. Its much easier to learn solving a "real" example. You can learn a ton just trying to do a production grade home assistant deployment - move on to SSL termination at the load balancer with letsencrypt, try different deployment strategies for upgrading the server with zero down time, write custom extensions... etc etc. I've now got a small…

> I've now got a small Pi cluster running k8s to deliver a bunch of services at home, and its all really easy to maintain. I've absolutely used the skills and knowledge gained in my day job too, which is nice.

I'm reasonably sure that being able to talk about my home k3s-on-pi's cluster was a positive factor in getting my latest job :)

Re: Ask HN: I just want to have fun programming again

#216
Not sure about the cross platform side but I am here to mention Elixir : I started learning some days ago and I am having a lot of fun so far doing exercises on the exercism learning platform.

My background is C and C++. I had tried fp before but it didn't stick. It gets awkward really quick. No such things with Elixir.

Re: Ask HN: I just want to have fun programming again

#218

For UI I do think JS is your best option atm. You don't have to write JS to generate JS, you can use Typescript or go more exotic to things like Rescript. In terms of CSS; you'll need some form of styling in whatever language, there are plenty of abstractions on top of CSS if you want [something not css]. I would suggest having a look at Next.js if a web app would work, React Native (use Expo) if you want mobile, or…

I deal with web stuff all day every day at work, so that's definitely not what I would choose for a fun hobby project. It's not your best option if that's what you're trying to get away from.

Someone else mentioned .NET. There's also Delphi and Lazarus. Both are cross-platform and have full-fledged UI systems, without any of the web ecosystem nonsense. It's a totally different experience than web development.

Re: Ask HN: I just want to have fun programming again

#219
You can also use golang + go:embed to ship the assets that are e.g. needed for a webview.

This way you can start very easy and learn about the cross-platform UIs later (if you by then still stick to the commitment to the project).

Learned golang last year, decided to refactor many projects in it. It makes cross-platform development a lot easier, except for native UIs (as of now). But fyne and others are getting there very quickly.

The core strength of golang is its build toolchain, with cross-compilation from Linux to anywhere, basically. Additionally it makes you "think in structs" due to how the language is designed, so serialization/deserialization can be pain at first but once you realize the benefits of un/marshalling, it's amazing.

The batteries-included approach of the golang core libraries + golang.org/x is a nice dev experience, there's all kinds of libraries in there that you could ever need, already available in pure golang (with zero C dependencies, so CGO_ENABLED=0 makes it as cross platform as it can get).

Post reply on HN