At some point I’ve switched to management, so I am not hands-on for quite some time, but because I genuinely enjoy programming, i was blogging, contributing to open source projects, and do competitive programming exercises to make myself a better programmer. I was feeling a little tired at some point, and Ive decided to take a break, focus on work and family for the moment.
Working on my personal server. I’m trying to delegate services as much as possible: maintaining your own infrastructure is fun, but it takes time. I already have moved DNS to a provider, and I am slowly migrating multiple email accounts and Dovecot/Fetchmail to a single Google Workspace account (at least it is my own domain).
Improving my Gnus (Emacs) configuration to deal with the way Gmail handles IMAP labels.
Probably starting a new Satisfactory base now than Update 6 is out.
For work:
Finishing the Docker runner for my job scheduling platform (it currently only support local execution and Kubernetes).
I love hearing about folks personal servers. I think I’m like you - i use it as my test bed and playground for things i want to learn. What is your favorite thing you host locally?
I used to use bare repos on an ssh server, but switched to gitea because it can be configured to create a repo on push. This allows me to easily create new repos from any machine with access.
Now I use it as an authentication store for some services. Gitea can be an oauth provider and is much simpler than many of the alternatives to run.
I host all my private Git repositories (because I can and because all Git operations are way faster than with GitHub, which is satisfying when pushing). I also have NGINX for my website, a private IRC server (ngircd) for a few friends, a mail setup with Fetchmail/Dovecot and Influx/Grafana (mostly for the fun of it).
Everything is running on FreeBSD and managed with a deployment system written in pure POSIX sh.
While it sometimes means a couple hours spent upgrading the system or fixing some kinks, it is satisfying. I have learned a lot about software and ops that way.
Note to any developer out there: running your own server will change the way you design software. Running in production is not easy.
When you run a server, you have to deal with software not working properly, because it happens all the time. Thus you learn how important it is to write precise and meaningful error messages with the right context. You learn how software should behave consistently, and how this behaviour should be documented.
Having to deal with software in production is a good wakeup call for all developers.
I’ve been keeping a personal server for years (website, VCS, file synchronisation, file sharing, chat servers/client/bots, central place for all my note keeping, all sorts of Internet processing), but I don’t share your experience. Things go wrong very rarely, mostly during development. The worst problem I’ve had was with the laptop killing its battery circuitry and then randomly shutting down, resolved by retiring the machine.
If anything, I’ve learnt to use #!/bin/sh -e and actually keep logfiles–cron mails error output automatically, systemd needs to be nudged into doing that. Knowing that something’s wrong at all is what’s important.
Also not who you’re replying to, but I love hosting Snipe-It locally to track all the machines flowing in and out of my repair lab (plus my own machine and parts collection).
I always felt like the right balance for DNS was: run BIND, but only as a “hidden master”; let some third party service AXFR from you and handle all of the public requests.
I’m going to add async helper support to my template library handlebars-rust. The first version might be straight forward to satisfy my friend’s feature request. But I’m looking for elegant way for maintaining both sync and async api.
There’s a crate that might be worth looking into that does like a derive-type thing that IIRC de-asyncifies your code to make the sync version of the method. I wish I could remember the name, I think one of the AWS helper crates uses it?
Yes, it’s maybe_async which use a macro to remove async/await for sync version. The minor gap is my code is sync-first so I want to use some conditional compilation techniques to add async capability to it. However the function signature is not allowed to be modified via #[cfg]. Still looking for ways to avoid copy & paste between sync & async impl.
Taking our older son to his first overnight camp, where he’ll learn archery and leatherworking and whatever else it is kids do these days with their long hair and rock music and roller skates.
Hopefully, COVID permitting, see some family friends.
If we’re very lucky, our new car will be delivered.
The remainder of the parts for the Z4 have arrived, so I’m aiming to have that back on the road this weekend. As a stretch goal I might even fit some replacement suspension parts I’ve had sat waiting on the dining table for three months.
The garage is mostly empty ahead of building work starting. I see another dump run in my near future as I’ve been pretty ruthless with chucking unused/useless/worthless stuff away rather than moving it from the garage to the shed Just Because™.
Also looking forward to sailing my Supernova (dinghy) for the first time this year on Sunday, in the Commodore’s summer regatta. Two aims: don’t come dead last; don’t get wet. Let’s see how successful I am at them.
I haven’t finished the post mentioned in https://lobste.rs/s/1vzkdw/what_are_you_doing_this_week#c_40fpkn yet (though I did get it started, and wrote a lot of notes on Wednesday night), so I’ll be seeing if I have all of the puzzle pieces to sort that out.
(I’m waffling a little about how much to stuff in this post, and what to save for some deep-dive posts that’ll use this series as background…)
Been melting this week and hopefully it ends this weekend so I have energy to work on my games. I’ve been excited whole year for this vacation I’m on now but this heatwave really knocked my productivity away.
To be honest, that’s probably good. I’ve been resting proper this week and playing games. Still got two more weeks of vacation left so I have plenty of time, weather reports say that next week should be more rainy and I’m waiting for that.
Uh, so this weekend? Hoping the weather calms down and play games as usual, and enjoy the time with my two pet lizards (13 year old leopard gecko and one year old bearded dragon) who are loving this heat. :)
Drinking it up with my friends before moving out of the country. Also hopefully getting a Node app switched to TypeORM, even though their latest version seems very unpolished.
still convalescing from a month of covid + a nasty secondary sinus infection. it went into my jaw and made all my teeth hurt which was uncomfortable and disturbing but a course of antibiotics seems to be clearing it out slowly.
if i have the energy i hope to shop around for some journals / mags / websites / etc to submit a scifi short story to. its about ~740 words and not really a proper story, more a series of vignettes and fictional textbook entries about the nature of consciousness which tries to take a different tack on emergent intelligence than what i call “Boltzmann brain last-thursdayism”. So if you know anywhere that would be interested in something like that I’d love to hear about it, not too familiar with the publishing landscape. Will probably just end up self-publishing on my website otherwise.
I’ve decided not to do any meaningful programming work for a year. So this weekend I am planning to do nothing, except having fun with my family.
More power to you! Is that just on the side though, or do you also not do any for work? If not, how do you get by?
At some point I’ve switched to management, so I am not hands-on for quite some time, but because I genuinely enjoy programming, i was blogging, contributing to open source projects, and do competitive programming exercises to make myself a better programmer. I was feeling a little tired at some point, and Ive decided to take a break, focus on work and family for the moment.
Vacation!
Hacking at wasm4 in Zig, may stream things too
For myself:
For work:
I love hearing about folks personal servers. I think I’m like you - i use it as my test bed and playground for things i want to learn. What is your favorite thing you host locally?
Not who you’re replying to, but I’d probably list gitea as my favorite thing I host locally. It’s small, lightweight and an amazing little service.
And if you don’t care about collaboration features in the web ui, cgit is a very light and straightforward option.
I used to use bare repos on an ssh server, but switched to gitea because it can be configured to create a repo on push. This allows me to easily create new repos from any machine with access.
Now I use it as an authentication store for some services. Gitea can be an oauth provider and is much simpler than many of the alternatives to run.
I host all my private Git repositories (because I can and because all Git operations are way faster than with GitHub, which is satisfying when pushing). I also have NGINX for my website, a private IRC server (ngircd) for a few friends, a mail setup with Fetchmail/Dovecot and Influx/Grafana (mostly for the fun of it).
Everything is running on FreeBSD and managed with a deployment system written in pure POSIX sh.
While it sometimes means a couple hours spent upgrading the system or fixing some kinks, it is satisfying. I have learned a lot about software and ops that way.
Note to any developer out there: running your own server will change the way you design software. Running in production is not easy.
This is a weird statement. Change how?
When you run a server, you have to deal with software not working properly, because it happens all the time. Thus you learn how important it is to write precise and meaningful error messages with the right context. You learn how software should behave consistently, and how this behaviour should be documented.
Having to deal with software in production is a good wakeup call for all developers.
I’ve been keeping a personal server for years (website, VCS, file synchronisation, file sharing, chat servers/client/bots, central place for all my note keeping, all sorts of Internet processing), but I don’t share your experience. Things go wrong very rarely, mostly during development. The worst problem I’ve had was with the laptop killing its battery circuitry and then randomly shutting down, resolved by retiring the machine.
If anything, I’ve learnt to use
#!/bin/sh -e
and actually keep logfiles–cron mails error output automatically, systemd needs to be nudged into doing that. Knowing that something’s wrong at all is what’s important.Also not who you’re replying to, but I love hosting Snipe-It locally to track all the machines flowing in and out of my repair lab (plus my own machine and parts collection).
I always felt like the right balance for DNS was: run BIND, but only as a “hidden master”; let some third party service AXFR from you and handle all of the public requests.
That’s what I do for my domains. It works well.
I’m going to add async helper support to my template library handlebars-rust. The first version might be straight forward to satisfy my friend’s feature request. But I’m looking for elegant way for maintaining both sync and async api.
There’s a crate that might be worth looking into that does like a derive-type thing that IIRC de-asyncifies your code to make the sync version of the method. I wish I could remember the name, I think one of the AWS helper crates uses it?
Yes, it’s
maybe_async
which use a macro to remove async/await for sync version. The minor gap is my code is sync-first so I want to use some conditional compilation techniques to add async capability to it. However the function signature is not allowed to be modified via#[cfg]
. Still looking for ways to avoid copy & paste between sync & async impl.Hoping for the return of running water to my house. Going to some fireworks if they don’t get rained on. No nerd stuff in the plans.
Taking our older son to his first overnight camp, where he’ll learn archery and leatherworking and whatever else it is kids do these days with their long hair and rock music and roller skates.
Hopefully, COVID permitting, see some family friends.
If we’re very lucky, our new car will be delivered.
Sounds like a blast. I’d be in bliss doing archery and leather working for the weekend!
Planning out the most secure way to run old servers for fun and allow some limited form of Internet access. Wrote a bit about it on the blog.
Met some friends for speciality coffee and spent time with my family (It’s the end of the weekend in Israel)
The remainder of the parts for the Z4 have arrived, so I’m aiming to have that back on the road this weekend. As a stretch goal I might even fit some replacement suspension parts I’ve had sat waiting on the dining table for three months.
The garage is mostly empty ahead of building work starting. I see another dump run in my near future as I’ve been pretty ruthless with chucking unused/useless/worthless stuff away rather than moving it from the garage to the shed Just Because™.
Also looking forward to sailing my Supernova (dinghy) for the first time this year on Sunday, in the Commodore’s summer regatta. Two aims: don’t come dead last; don’t get wet. Let’s see how successful I am at them.
Do you have pics of the z4?
I was going to lament my lack of posting pictures anywhere, then remembered I’d put some on instagram. Turns out there’s a few.
Edit: also the reason I bought it explained on twitter, with the state it was bought in. https://nitter.net/Caius/status/1426857721912074240
such a beautiful ride!
Learning Elixir https://elixir-lang.org/, working my way through the Elixir track on https://exercism.org (A programming language learning site that deserves attention)
Why Elixir…? it seems, like Ruby to have borrowed a lot of good stuff from all over, and then put it on top of the Beam VM which is great because….
http://beam-wisdoms.clau.se/en/latest/eli5-processes.html
I haven’t finished the post mentioned in https://lobste.rs/s/1vzkdw/what_are_you_doing_this_week#c_40fpkn yet (though I did get it started, and wrote a lot of notes on Wednesday night), so I’ll be seeing if I have all of the puzzle pieces to sort that out.
(I’m waffling a little about how much to stuff in this post, and what to save for some deep-dive posts that’ll use this series as background…)
I almost never get these done on Saturday :) https://lobste.rs/s/mz3tlu/trouble_with_anonymous_gizmos
Been melting this week and hopefully it ends this weekend so I have energy to work on my games. I’ve been excited whole year for this vacation I’m on now but this heatwave really knocked my productivity away.
To be honest, that’s probably good. I’ve been resting proper this week and playing games. Still got two more weeks of vacation left so I have plenty of time, weather reports say that next week should be more rainy and I’m waiting for that.
Uh, so this weekend? Hoping the weather calms down and play games as usual, and enjoy the time with my two pet lizards (13 year old leopard gecko and one year old bearded dragon) who are loving this heat. :)
Drinking it up with my friends before moving out of the country. Also hopefully getting a Node app switched to TypeORM, even though their latest version seems very unpolished.
still convalescing from a month of covid + a nasty secondary sinus infection. it went into my jaw and made all my teeth hurt which was uncomfortable and disturbing but a course of antibiotics seems to be clearing it out slowly.
if i have the energy i hope to shop around for some journals / mags / websites / etc to submit a scifi short story to. its about ~740 words and not really a proper story, more a series of vignettes and fictional textbook entries about the nature of consciousness which tries to take a different tack on emergent intelligence than what i call “Boltzmann brain last-thursdayism”. So if you know anywhere that would be interested in something like that I’d love to hear about it, not too familiar with the publishing landscape. Will probably just end up self-publishing on my website otherwise.
Kicking around the idea of writing a small book. Looking at using Markdown + pandoc for workflow, does anyone have opinions/wisdom here?