this post was submitted on 08 Aug 2026
66 points (98.5% liked)

Programming

28157 readers
255 users here now

Welcome to the main community in programming.dev! Feel free to post anything relating to programming here!

Cross posting is strongly encouraged in the instance. If you feel your post or another person's post makes sense in another community cross post into it.

Hope you enjoy the instance!

Rules

Rules

  • Follow the programming.dev instance rules
  • Keep content related to programming in some way
  • If you're posting long videos try to add in some form of tldr for those who don't want to watch videos

Wormhole

Follow the wormhole through a path of communities !webdev@programming.dev



founded 3 years ago
MODERATORS
 

Inspired by this Lobsters thread, and some of the great comments within it, I would like to ask if anybody is doing some hobby programming this weekend?

top 50 comments
sorted by: hot top controversial new old
[–] HelloRoot@lemy.lol 26 points 1 week ago (6 children)

1h of videogame dev every day keeps the depression away

[–] alienscience@programming.dev 16 points 1 week ago

I find daily is better than weekly because I can actually remember what I was doing. However, it is mostly just a few hours each weekend for me a the moment.

load more comments (5 replies)
[–] alienscience@programming.dev 21 points 1 week ago

I got interested in constraint programming, and I had NO idea how it worked. It seemed like magic.

I have started on following the slides and code of MiniCP, and have started implementing the first steps in Rust. I find it very challenging but it is a great learning experience. I got such a thrill from solving the N-Queens problem in milliseconds from a program that I had written myself.

I am continuing to develop the implementation for a few hours this weekend. Because writing a constraint system is hard, I am also learning some new parts of Rust that I have not touched before.

[–] rozodru@piefed.world 19 points 1 week ago (1 children)

I'm trying to build my own Wayland WM. why when there are so many out there? because I don't feel like any of them do them well. either they all focus on fancy animations (hyprland) or slam you with features without focusing on specific things (mangowm) or primarily have issues with mouse/keyboard focus on games in window mode or just games in general when you toggle away from them and back (all of them) and that annoys me.

There's one specific game I play in window mode with multiple clients of the game running, it's EVE Online. ALL the Wayland WM's have issues with this. you move away from the window and back it doesn't grab the mouse back the first time or the keyboard won't work the first time going back. X11 WMs have ZERO issues with this. but like with Niri you have to switch workspaces and back just for it to grab the mouse/keyboard again. Hyprland you have to switch windows and back. Sway is the same type of deal.

So I'm trying to build a Wayland WM with a focus on gaming and vim style navigation as that's what I do on my machines. game and code. I just want to take a suckless type approach and do one thing and one thing well. I'm also tired of the idiotic configs and resource hogs of many of these. there's an x11 WM called SXWM written by a 13 year old whose config file is the most simple and clean one I've ever seen. many x11 WMs are like this (CTWM is another example of a clean and simple config) I want to adapt that to Wayland as hyprlands switch to lua and thus turning it into a mess also annoyed me.

it's a big project but one that I feel needs to be done. so I'm just building something that tiles, is solid with the mouse and keyboard, and has a very simple config and low resources. that's it.

[–] provectus@lemmy.ml 2 points 1 week ago

Good luck with it. You will learn a lot. Also there is no such thing as a Wayland wm, but rather a Wayland compositor, and that is a distinct difference between X11 and Wayland.

[–] CameronDev@programming.dev 14 points 1 week ago

I wrote a memory scanner that can regex over a processes memory. Goal was to make it easy to find CTF flags in memory. Dunno how useful it is in reality, but it was a fun tangent.

[–] MyNameIsRichard@lemmy.ml 11 points 1 week ago (1 children)

Learning the basics of rust and trying to build my new language first project

[–] alienscience@programming.dev 7 points 1 week ago (1 children)

Learning Rust is a journey. I actually gave up twice before I learnt it properly. I built a simple interpreter as my first project and I found it challenging.

I think that tutorials, and the support you get, is much better now though. Its also a language well worth learning.

[–] MyNameIsRichard@lemmy.ml 5 points 1 week ago

Yeah, it's certainly different!

[–] provectus@lemmy.ml 9 points 1 week ago (1 children)

I learning about kernels by writing my own.

[–] alienscience@programming.dev 4 points 1 week ago (1 children)

Is there a course or a book that you are following or did you just dive in?

[–] provectus@lemmy.ml 7 points 1 week ago

osdev is the way, https://wiki.osdev.org/Expanded_Main_Page. I am also following this, so I do not need to build a cross compiler, https://arjunsreedharan.org/post/82710718100/kernels-101-lets-write-a-kernel. I am writing a 64 bit kernel, so I am going to use limine as the bootloader.

[–] trem@lemmy.blahaj.zone 8 points 1 week ago

A few weeks ago, I threw down a CLI for getting web-links for a local repo, so you could e.g. run forge path docs/index.md and it would give you a permalink for your GitHub/Codeberg/etc. repo to that index.md file.
Now I've used it for a few weeks and I'm realizing all the dumb assumptions I've made about how Git repos work.

For example, there's also a subcommand forge issue 123, which gives you a link to issue #123, but of course, it's not necessarily true that you actually have your issues where your code lives. You might have a separate JIRA, or you might be working on a fork from which you'll post a PR later.

Now I'm trying to figure out how to make it work at the very least for my own use-cases, ideally without requiring configs for every repo.

But yeah, it's great fun. Some excellent puzzles and also very humbling, because I'm pretty much supposed to be an expert in Git and yet:

  1. you suddenly see me googling shit like "git fetch vs. push url", and
  2. I struggle just as much to formulate proper requirements as our customers at $DAYJOB.
[–] Pencilnoob@lemmy.world 8 points 1 week ago

Not 100% programming but I've been getting into homelab stuff lately. Yesterday I got Fedora installed on an old MBP, and I'm hoping it'll be a good moonlight client to my main gaming desktop.

Now the living room TV can be run from the MBP and folks can still watch TV while I'm gaming. Then if I'm in the mood I can do couch gaming.

The first attempt last night worked so well! I was shocked to be playing a shooter like Just Cause 3 without any visible lag. Very impressive!

For programming, it's time I hosted my tarot card website on my home Ubuntu server. It's been a few weeks of testing the site just by running it from the command line. I'm still a little shaky on the hosting stuff, but I think I'll use a systemd service to ensure it starts up when the server reboots.

[–] tias@discuss.tchncs.de 7 points 1 week ago

I'm working on a classifier to keep the chaos of my inbox under control. It uses the gemini LLM API (gemini-flash-lite) to add labels to each email depending on things like:

  • does it require an action from me?
  • does it require a reply from me?
  • is there a deadline?
  • is it an invoice?
  • is the information just an event about changes to information that exists in another system (i.e. a notification that can be deleted)

Currently upgrading from the 2.x to the 3.x model and tuning some of the prompts.

[–] one_old_coder@piefed.social 7 points 1 week ago (1 children)

Kotlin Multiplatform because I'm unemployed, and Kotlin is a nice language and it's been decades since I haven't done a mobile application (the last ones were in Java for Android and Objective-C for the iPhone).

[–] alienscience@programming.dev 5 points 1 week ago (1 children)

I haven't used Kotlin for years but I did do a $WORK project in it once. I prefer co-routines in Kotlin to using async in Rust (which makes sense because it is a higher level language with a garbage collector). I also like how easy it is to write Domain Specific Languages (DSLs) in Kotlin.

Good luck with the job search. Its hard out there at the moment.

[–] andioop@programming.dev 6 points 1 week ago* (last edited 1 week ago)

I'm lucky enough to sometimes take public transit that publicly posts its data on arrival times and the like. Have been working on a script to tell me when there's a track change (which changes where I need to wait for the train) because I'm a lazy person who wants to just have a notification fly across my phone screen instead of actually checking on the website. Currently working on testing some functionality before dumping it on my Raspberry Pi. I usually work on this while on the transit, but hopefully I'll do some of it this weekend.

Also would like to get working on the bog-standard baby coder personal project habit tracker, to make sure I remember how to do front end, back end, etc. I've learned I am more likely to use a system I built for myself. We will see if I get to it!

[–] cafuneandchill@lemmy.world 6 points 1 week ago (1 children)

Sadly, nothing; not very enthusiastic about programming at the moment. Though I'm currently going through Practical SDR by No Statch Press and learning GNU Radio. It's basically a flowchart constructor for Python code, so I guess that counts

[–] alienscience@programming.dev 4 points 1 week ago

I lost enthusiasm and then my interest slowly came back as I wanted to learn things. Just in case you haven't seen this page, I thought it was really cool when I read it years ago: https://blinry.org/50-things-with-sdr/

[–] mlg@lemmy.world 6 points 1 week ago (2 children)

I'm messing with making a kernel softmac driver that can handle Nintendo specific 802.11 frames so that MelonDS can connect to a real DS or to another device using the native Nintendo wirelesss protocol.

Lot's of interesting reading and packet capture fun with Wireshark has given me an idea of where to start, but the tricky part is that the DS needs less than 20us of round trip latency for it to work, which is insanely low. Otherwise the connection is considered interrupted and gets dropped.

afaik, the only part that "verifies" the latency are ACK frames which the DS expects a return for every frame transmitted, so it should in theory be possible to just make a small driver that generates ACK frames at kernel priority, and forwards the rest of the frame to MelonDS for actual game handling.

I'm hoping it turns out that easy but the MelonDS forums have a long ass thread about how much of a PITA the DS wireless multiplayer timing synchronization requirements are.

[–] xianjam@programming.dev 3 points 1 week ago

Wow, this would be quite cool. When DS emulators were new, I wanted this to be a thing so bad.

Unrelated (and not what I'm doing this weekend), but I've always been interested in reversed-engineering the DS / DSi firmware drivers that connects to WiFi to attempt to backport the 802.11b driver to WEP-only DS games.

[–] Maddier1993@programming.dev 3 points 1 week ago

Ooh, It does sound interesting. My wild conspiracy is that Nintendo has made hardware offloaded functions that run with sub-microsecond latencies so this 20 us looks more like blocking non-DS hardware from communicating with the DS.

[–] nnullzz@lemmy.world 6 points 1 week ago

Started a DSP/Audio plugin journey last weekend. This weekend I’m going to try to build a utility plugin I’ve had in mind for years. New to c++ so it’s been refreshing to be programming something totally different than my norm of web APIs and frontends.

[–] nbsp@programming.dev 6 points 1 week ago

upgrading unloved django blog to 5.2, rebuilding vps, moving everything to uv and working out how that's going to play with piku.

if get that done, fix up some of the css on my blog and start a blog post to use as back country and camping check list (bc i forgot some stuff i really should have taken on last tour).

half arsed look for new job.

help bro cut down a tree.

clean the car.

[–] fieldswork@sh.itjust.works 5 points 1 week ago

Finally working to finish Eloquent JavaScript - whether this is me procrastinating on revamping and migrating my personal website or trying to fill in my knowledge gaps is a mystery to me.

[–] A_norny_mousse@piefed.zip 5 points 1 week ago* (last edited 1 week ago) (4 children)

Polishing my current SailfishOS installation. Some systemd services to tweak things, some user scripts in .desktop files (i.e., menu icons). I'm not an app developer but I love how I can do all my Linux tweaking on my phone, too.

The OS has gotten a lot better recently, and I'm on the most suitable non-dedicated device now. It should last me some years.

load more comments (4 replies)
[–] mbp@slrpnk.net 4 points 1 week ago

I've been tinkering with integrated programming and physical circuits. Working with my hands to "code" a physical piece of hardware that does a specific purpose has been a breath of fresh air in the age of Al.

[–] idunnololz@lemmy.world 4 points 1 week ago

Trying to get a release of Summit (!summit@lemmy.world) ready. I've been trying to catch back up after taking a month hiatus about 2 months ago and still playing catch up.

Been ignoring the community for too long so after this release will need to go tend to requests and bug reports. It's a lot of work :/

[–] shape_warrior_t@programming.dev 4 points 1 week ago* (last edited 1 week ago)

Just finished "version 0" for a very simple programming language yesterday, and I'm looking to work on "version 1" this weekend. Rust is truly fun to program in... although writing all the tests was not a very fun experience. But doing the work for that meant I was guaranteed to have a reasonably good grasp of the semantics by the time I finished.

Since it's Rust, there's no garbage collector -- heck, for this particular language, there's not even any memory allocation after startup. Instead you get a giant global array of "memory" to work with. The only data type is the 32-bit integer (and thus, using UTF-32 for strings is actually the """correct""" choice for this language). I'm using a vaguely Lisp-like syntax that revolves around {[a tree] formed from (brackets and whitespace)}... which was probably slightly easier to parse than more traditional syntax, but Rust's current lack of pattern matching "through" Vec (for example, letting you extract e from {a b [c (d e)] f} in one step) didn't always make it feel that way.

Nest up: adding while loops, exponentiation and bitwise operators, and most interestingly, string and character literals. (The char literals would just evaluate to their character codes, and string literals would only be usable in a specific write-to-memory construct.) And also expanding the standard library. I'd say "version 1" would really be the more properly "complete" version of the language. I also want to do a functional programming variation (ditching the global memory in favour of reference counted cons cells), and also the whole language is kind of just a stripped down version of another much bigger language half-formed in my head, but that's all probably for... not this weekend, at any rate.

[–] echo@lemmy.ml 4 points 1 week ago

I’ll probably continue working on my Swift GTK/libadwaita wrapper and the demo project that makes use of the library. Doing it this way has been very pleasant, it allows me to put it through real world tests and helps me identify stopgaps in the toolkit I wouldn’t otherwise notice through unit tests alone.

[–] remotedev@lemmy.ca 4 points 1 week ago (1 children)

Yeah, Same here honestly

[–] insomniac_lemon@lemmy.cafe 4 points 1 week ago (5 children)

I have a couple of ideas bouncing around, but they might be too ambitious (plus harder that I use a less common language, often via bindings).

The first is a lot of ideas for a mesh editor, but not sure where to start. Technically, I already started a while ago with a text-based* polygon format/loader for Raylib so if I had some (high-level) way to export that polygon to a 3D file (single/double-sided faces or extruded) that'd be the first step. However I never really used/continued what I made (2D) because of how windings (fan vs strip) are, not good** as you'd need to keep track of it during usage. Perhaps something else might be better, like p5js?

The other is a frameless+floating X11 WM, and I'm similarly unsure of what I should use for drawing a title/titlebar and window buttons (and inset controls if possible). .xpm for bar/buttons is a maybe.

* sparse (a rectangle is 4 numbers on an otherwise empty grid), not like traditional (filled) ASCII art

** maybe expecting winding from an unordered list of points is too much, but not sure there's an easy way to cover windings for most situations. Color index (8-way) used as face hints, or similar (4-way?) for inside direction? Multiple origins for raycasts?

load more comments (5 replies)
[–] rimu@piefed.social 3 points 1 week ago* (last edited 1 week ago)

Yeah a little bit of coding

Here and there.

A couple of lines probably.

[–] Valmond@lemmy.dbzer0.com 3 points 1 week ago (4 children)

Working on my latest videogame, very early stages but it's coming along nicely.

I also sot up a git server at home and a ssh access key on my el-cheapo laptop and I feel very good every time I push a branch from it to home.

I do have performance issues with Rider though (JetBrains C# IDE), I have disabled basically everything except syntax coloring and still it's just lagging insanely all the time. 20 seconds i7 quad core peak because I (shudder) select text, or erase some letters in a comment. Aaaaaa! If anyone knows a C# ide that works well with Godot on linux I'm all ears. Syntax coloring, debugging & autocomplete if possible, FOSS would be fantastic (microsoft code thingy sucks ass btw IMO).

Godot is fantastic BTW!

load more comments (4 replies)
[–] yuman@programming.dev 3 points 1 week ago* (last edited 1 week ago) (1 children)

got fed up with the local marketplace options so Imma scrap together a market. haven't touched django in like a decade, not up-to-date on tooling, don't wanna pay for 3rd party services... what can possibly go wrong?

[–] orhtej2@eviltoast.org 3 points 1 week ago

Something akin of Flohmarkt? Perhaps better to join forces?

[–] orhtej2@eviltoast.org 3 points 1 week ago

Will probably try to migrate my Matrix homeserver from Dendrite to Continuwuity. No official migration path exists, what could possibly go wrong 😜

[–] nexusshell@lemmy.1095.me 2 points 1 week ago

I’m spending part of it on one of those changes that sounds tiny but touches half the desktop app: keeping a WebKit-backed terminal alive while SwiftUI rebuilds navigation. SSH can remain connected while the UI loses scrollback and visual state, so I’m separating the long-lived session from the transient view tree and letting SwiftUI rebuild only the native shell. Then feedback triage, and deliberately no new feature this weekend.

[–] jazztickets@lemmy.world 2 points 1 week ago

Writing code inside Mindustry's logic processor that test belt speeds, benchmark different schematics, etc.

load more comments
view more: next ›