Hacker News new | past | comments | ask | show | jobs | submit login
Ask HN: What rabbit hole(s) did you dive into recently?
238 points by RetroTechie 24 days ago | hide | past | favorite | 380 comments
You get nerd-sniped. Assigned a bug to squash. Some new tech or gadget arrived, to familiarize yourself with.

While researching / reading up / debugging, you stumble upon something interesting. Upon looking into that, yet another subject catches your attention.

You know how this goes. So... (see title). Bonus questions: what intermediate steps did you pass along the way? What stuck in your mind the most?




So, I decided to install Linux on my formerly-Windows-only laptop, and thought it was cool enough to go full time and ditch Windows completely. The downside was the lack of access to top tier games. No problem though, my plan was to take a break from gaming, figuring that by the time Linux had caught up with compatibility, computers would also be much more powerful and I'd be able to resume gaming at some point in the future on better kit, and not have to worry about janky framerates on struggling hardware.

Linux proved interesting enough that I kept finding all sorts of cool new rabbit holes to go down - shell scripting, filesystems, Python, databases. It was side-quests within side-quests! Plus, having kicked my gaming habit, I had plenty of time to explore these.

Anyway, to cut a long story short, that was 23 years ago. I ended up getting a career in tech, relocated, got married, had kids, lived the American Dream... The "life" rabbit hole kind of got in the way of my plans, so I can't wait to finally get back on track and play GTA III on a decent box.


The old-laptop -> install-linux-because-windows-wont-run -> tech-career pipeline is absolutely real.

It got me to learn C, graphics programming, operating systems, networks and firewall, literally everything I wanted to do required a couple of days deep in arch linux wiki learning about all kinds of inter-connected systems.


Yep, this is how I spent High School, although I did have prior interest in computers. I started tinkering with Debian on a hand-me-down HP pavilion and ended with a ThinkPad T60 with Arch. Developed a lot of skills that helped me get started in my career.


When I ditched Windows and installed Ubuntu 8.04 on my personal computer was my gateway into further tech (building PCs, using a terminal, programming, etc.) and set the foundation for my career.


Is a router a decent box? https://kittenlabs.de/real-gaming-router/


This was a phenomenal read. Thanks for linking


It was a big moment for me too when I realized that the real world has infinitely many interesting things to do and explore. The real world is incredibly detailed.


Hard disagree.

The real world only has pain and suffering. Endless trials and never a payout.

Games on the other hand and very detailed and have a well defined path to success.


This oddly enough has been quite a big issue in my life as of lately.

I need to get off my ass and start working towards better things in real life in order to (potentially) better my situation e.g. new job, better hobbies, etc..

However, I have always had issues with gaming on and off throughout my life (perhaps a lot more on than off). I seriously think that a lot of my issues with gaming is that games are preferential to life in many regards. In a game, I know if I work hard and follow the steps/guides/quests, then I will be rewarded. Goals are obtainable in that if I fail to achieve them it is my fault -- because I did something incorrectly.

Sadly, when I take breaks from gaming, I am not a productivity machine. I just find something else to waste the time with.

In the back of my mind, I want to believe that if I work hard and better my situation, then will finally be rewarded. But I have worked hard to get where I am, and I am still awaiting the reward, so to speak.

So, I think a part of my brain has taken the shortcut to destroy my motivation because I know that Sisyphus isn't the only one rolling the boulder up the hill thinking, "maybe this time will be different?"


Try recording yourself playing video games. You will quickly snap out of the illusion and realize that you're passing through life staring at a screen.


This is funny considering the whole streaming ecosystem. You might be out of touch.


I am also a software engineer, so wouldn't this still be true for my work?


I had an unhealthy comfort meal that I couldn't kick. I filmed myself eating it and was disgusted by the sight of myself. That worked. I still eat it sometimes but in much smaller portions and not nearly as often.


Yes this is the exact effect I am aiming for. There's just something about watching yourself from a different perspective that lets you have fresh judgment on it as if it were a different person.


But you won't be rewarded? It's a game and has no bearing on your real life, I don't follow this train of thought at all.


I perhaps did not explain myself well.

The areas I want to improve in my life mainly pertain to my career. I believe it is important to note that I am not a Type-A, career focused, go-getter kind of person.

I am a developer like mainly others on this site. I am also quite unfulfilled and unsatisfied in my current position. I am grateful to be employed, but when I describe my position to others, I am generally met with a response like, "Run! Now, and never look back."

So, in order for me to get out of my current position, I am going to have to put in a lot of work in my free time. That's not necessarily a bad thing, of course. However, say I land a new job due to my efforts. I seriously do not think it will be fulfilling nor increase my happiness in the grand scheme of life. I seriously think where ever I end up will be a different round of the same "game" with different players, so to speak.

I do not feel that my motivation to change comes from some internal burning passion, but rather some obligatory "should" feeling i.e. I should find a better job, I should study <insert topic>, I should work out more, etc..

Though, you are right -- gaming has no bearing on my real life. The rewards from any game are, more or less, fruitless. Though, I guess my point is that real life is pretty damn fruitless too. If anything life just feels like chasing a carrot hanging from a stick. I have lived my entire life with this concept of an ever moving delayed gratification. There is no end to the real life grind, no clear guaranteed steps on how to progress, no checkpoints, no redos, etc.. Seriously, what am I missing? What I am grinding for?


The hardest part of life is to reward the process over the outcomes. Videogames don't have that constraint.


But when you succeed in the game, then what? Yes, the real world is full of endless trials and never a payout. But the entire point is that there is no point. The fun is in the journey. The real treasure is the friends you make along the way, to quote the meme.


Yes but isnt the suffering and occasional ecstatic wins the whole point. Learn to enjoy this journey.


The real problem with real world is that it is so boring most of the time.

Well designed video games can be hard or even harder than real life but they give you constant endorphins or dopamine hits to keep you going.

And you can take a break from video games without any negative repercussions.


I think you may be confusing what is providing the payout. There is not a single game I’ve played that payed me money that also had a well defined path to success. Gambling any simple game is a near gauranteed loss of money. Poker can payout, but it’s a truly grindy game, and one bad night can wipeout months of grinding. Blackjack can have positive expected value, but good luck successfully counting cards for more than a couple hours without getting permabanned. So what game are you playing that provides payout that isn’t based mostly on dopamine that is provided by you in the real world? And if it’s just numbers go brr that is the payout, you can always buy a counter and watch those numbers go up. In fact, you might be able to train yourself to get a hit of dopamine if you get a clicking counter that goes up when you click it…

Still, it sounds like you may be in a bad place, and my heart goes out to you. Hang in there. Life doesn’t always get better, but seasons change, and this too will pass.


Let's hear your distro journey! What did you start with, what do you currently use?


I started with Mandrake (ironically for the game ban, I bought a retail version that came bundled with a copy of The Sims that had been rigged to run with wine), then tried Linux From Scratch (very educational), then a brief spell on Gentoo (because my Dell laptop needed some extra config to get the wifi working anyway, so I figured why not compile all the packages - then I figured out why). Then I liked KDE so moved to openSUSE, but then I stopped liking KDE when 4 came out and broke everything, so I moved to Ubuntu. Then I stopped liking GNOME when 3 broke everything, and at any rate I didn’t have so much time to fiddle any more, so I moved to Xubuntu, and there I remain.


Big fan of Xubuntu! Recently switched to OpenSUSE Tumbleweed so I could have rolling release, but I still use XFCE as my desktop manager!


This is the one!

Same here.

Life happened.

What I told my dad would never happen (not using Linux From Scratch or Gentoo - like how can he use Windows and like just get things done instead of digging deep and solving problems all the time?) did happen.

I now use Debian derived but more up-to-date and easy to use for mainstream people distros (like shudder Ubuntu) and they're relegated to server and TV duty and I hope nothing breaks when I upgrade from LTS to LTS version coz "I don't have time for this!" and I play a few games here and there on my Windows laptop.

But I think it's important to have gone through the "rabbit hole" in the middle. All the digging and understanding I did I still do all the time at work. I just no longer spend the other half of my life on it. I spend it digging into other things.


I think the ??? --> Gentoo --> Something Stable pipeline is a defining characteristic of 90s/00s nerds.

I _think_ the first Linux distro I ever installed was Slackware, but ashamedly, I can't remember. In my defense, I would've been about 10 years old at the time. I played around with a ton of others (I'm fairly certain I tried Debian Woody), but settled on Gentoo, because of course. Forget just tying up the phone line for dial-up, I tied up both of the family computers with distcc.

After a career break wherein I did relatively little with computers for a decade, I got back into Linux and quickly realized I did not care about -funroll-loops. I've been running Debian non-stop since Jessie, on everything from repurposed laptops, to ancient tower servers, to slightly-less-ancient racks.

> But I think it's important to have gone through the "rabbit hole" in the middle.

This right here. There is an endless stream of "how do I learn Linux?" questions on Reddit, and the answers are always some variation of "read this book," "take this course," etc. Perhaps there is value there, but I learned it by trying to do stuff. Like getting an HP PSC 2610 to talk to hplip and CUPS over LAN. Or getting a Chaintech AV-710's (an obscure sound card that happened to use an excellent DAC for 2-channel output) to work under ALSA. Doing these kinds of things forced you to read man pages, forums, newsgroups, etc. And when you succeeded, you could write up a HOWTO, and the three other people in the world who also needed this particular combination would give thanks.


You just described my life back when Slackware OG was alpha in 1993, but on a 386 PC. 31 years later I never used my EE degree but traveled through all sorts of aspects of IT and IS.


You'll have to do some research to figure out how to get a decent copy of the old, moddable GTA III, and not the remastered, ported ones.


A lot of the top tier games run fine on Linux using Steam/Proton Compatibly layer or just pure Wine. Do explore that.


Eerly similar story! Linux is the ultimate rabbit hole.


PDF files, and why the heck they are so slow to read. Hours upon hours of perf(1) and fiddling with ugly things in C. My main takeaway is everyone in the world is doing things HORRIBLY wrong and there's no way to stop them.

(Digression: did you know libpng, the one everyone uses, is not supposed to be an optimized production library—rather it's a reference implementation? It's almost completely unoptimized, no really, take a look, anywhere in the codebase. Critical hot loops are 15 year old C that doesn't autovectorize. I easily got a 200% speedup with a 30-line patch, on something I cared about (their decoding of 1-bit bilevel to RGBA). I'm using that modified libpng right now. I know of nowhere to submit this patch. Why the heck is everyone using libpng?)

The worst offender (so far) is the JBIG2 format (several major libraries, including jbig2dec), a very popular format that gets EXTREMELY high compression ratios on bilevel images of types typical to scanned pdfs. But: it's also a format that's pretty slow to decompress—not something you want in a UI loop, like a PDF reader is! And, there's no way around that—if you look at the hot loop, which is arithmetic coding, it's a mess of highly branchy code that's purely serial and cannot be thread- nor SIMD- parallelized. (Standardized in 2000, so it wasn't an obvious downside then). I want to try to deep-dive into this one (as best as my limited skill allows), but I think it's unlikely there's any low-hanging optimization fruit, like there's so much of in libpng. It's all wrong that everyone's using this slow, non-optimizable compression format in PDF's today, but, no one really cares. Everyone's doing things wrong and there is no way to stop them.

Another observation: lots of people create PDF's at print-quality pixel density that's useless for screens, and greatly increases rendering latency. Does JBIG2 support interlacing or progressive decoding, to sidestep this challenge? Of course it doesn't.

Everyone's doing PDF things wrong and there is no way under the blue sky to make them stop.


> The worst offender (so far) is the JBIG2 format (several major libraries, including jbig2dec), a very popular format that gets EXTREMELY high compression ratios on bilevel images of types typical to scanned pdfs. But: it's also a format that's pretty slow to decompress—not something you want in a UI loop, like a PDF reader is! And, there's no way around that—if you look at the hot loop, which is arithmetic coding, it's a mess of highly branchy code that's purely serial and cannot be thread- nor SIMD- parallelized.

Looking at the jbig2dec code, there appears to be some room for improvement. If my observations are correct, each segment has its own arithmetic decoder state, and thus can be decoded in its own thread. The main reader loop[1] is basically a state machine which attempts to load each segment in sequence[2], but it should not need to. The file has segment headers which contains the segments offsets and sizes. It should be possible to first decode the header and populate the segment headers, then spawn N-threads to decode N-segments in parallel. Obviously, you don't want the threads competing for the file resource, so you could load each segment into its own buffer first, or mmap the whole file into memory.

[1]:https://github.com/ArtifexSoftware/jbig2dec/blob/master/jbig...

[2]:https://github.com/ArtifexSoftware/jbig2dec/blob/master/jbig...


- "If my observations are correct, each segment has its own arithmetic decoder state, and thus can be decoded in its own thread."

Yeah, but real-world PDF JBIG2's seem to usually have one segment! One of the first things I checked—they wouldn't have made it that easy, the world's too cruel.

It's sort of a generic problem with compression formats—lots of files could easily be multiple segments that decompress in parallel, but aren't—if people don't encode them in multiple segments, you can't decompress them in multiple segments. Most formats support something like that in the spec, but most tools either don't implement that, or don't have it as the default.

e.g. https://news.ycombinator.com/item?id=33238283 ("pigz: A parallel implementation of gzip for multi-core machines" —fully compatible the gzip format and with gzip(1)! No one uses it).


Yikes! Doesn't seem like there's anything that can be done to solve that then.

I guess the only way to tackle it would be to target the popular software or libraries for producing PDFs to begin with and try to upstream parallel encoding into them.

Or is it possible to "convert" existing PDFs from single-segment to multi-segment PDFs, to make for faster reading on existing software?


Conversion's a very good solution for files you're storing locally! I'm working on polishing a script workflow to implement this—I haven't figured out which format to store things into yet. I don't consider it a full solution to the problem—more of a bandaid/workaround.

The downside is that any PDF conversion is a long-running batch job, one that probably shouldn't be part of any UX sequence—it's way too slow.

Emacs' PDF reader does something like this: when it loads a pdf, its default behavior is to start a background script that converts every page into a PNG, which decodes much more quickly than typical PDF formats. (You can start reading the PDF right away, and the end of the conversion, it becomes more responsive). I think it's a questionable design choice: it's a high-CPU task during a UI interaction, and potentially a long-running one, for a large PDF. (This is why I was profiling libpng, incidentally).

https://www.gnu.org/software/emacs/manual/html_node/emacs/Do...


> a very popular format that gets EXTREMELY high compression ratios on bilevel images of types typical to scanned pdfs

Funny you say that, https://en.wikipedia.org/wiki/JBIG2#Character_substitution_e...


I can still remember this cool talk about that. https://www.youtube.com/watch?v=7FeqF1-Z1g0


Question since you are probably knowledge-able about it right now.

> Another observation: lots of people create PDF's at print-quality pixel density that's useless for screens, and greatly increases rendering latency.

Is this relevant to text in the PDF? I would assume text is vectorized, meaning resolution is not relevant until you _actually_ print it?

Or is it just relevant to rasterized content like embedded images?


Your understanding's right: PDF's that are text + fonts are easy and fast. I'm concerned about the other kind, that's scanned pages. Any sheet music from Petrucci / imslp.org for one example. That kind is a sequence of raster images, stored in compressed-image formats which most people aren't familiar with, because they're specialized to bi-level (1-bit, black and white) images. A separate class from photo-type images. The big two seem to be JBIG2 [0], and CCITT Group 4 [1], which was standardized for fax machines in the 1980's (and still works well!)

[0] https://en.wikipedia.org/wiki/JBIG2

[1] https://en.wikipedia.org/wiki/Fax#Modified_Modified_READ

(You can examine this stuff with pdfimages(1)—or just rg -a for strings like /JBIG2Decode or /CCITTFaxDecode and poke around).


Personally I have the impression that CCITT group 4 compressed PDFs are displayed very quickly, unless they are scanned at 3000 DPI... Can't say the same for JBIG2 or JPEG/JPEG2000 based ones.


> A separate class from photo-type images.

I'd assume that the photo-type image decoder is optimized, right? If so, how does the optimized photo-type decoder compare to the apparently unoptimizable JBIG2 decoder?


I'm not knowledgeable to speak to that, but just to clarify—the low-hanging fruit in libpng I mentioned is in simple, vectorizable loops—conversions between pixel formats in buffers. Not in its compression algorithm (which isn't part of libpng—it calls out to zlib for that).


> I know of nowhere to submit this patch.

How about the folks listed as "Authors":

* http://www.libpng.org/pub/png/libpng.html

> Why the heck is everyone using libpng?

What is the alternative(s)?


sumatrapdf seems better than most at reading them?


is there any ffmpeg like command line program for pdfs? Creating, Appending/Removing pages, viewer, etc?


For appending, removing, merging pages, there’s pdftk: https://www.pdflabs.com/tools/pdftk-server/


gs (ghostscript), mutool, ocrmypdf...

To add/remove: mutool merge -h

To split PDF pages: mutool poster -h

I made a script here that I use frequently for scanned documents: https://github.com/chapmanjacobd/computer/blob/main/bin/pdf_...


For me, it's DIY audio.

The thing about diy'ing audio (primarily speakers but also amps, DACs etc) is that you can get top of the line performance for a fraction of the market price. A $50,000 speaker setup that would bring tears to your eyes could be made for perhaps $5000. A DIY $500 kit can perform similar to a $2-3000 set of speakers. Open source amps with gerber files on github are amazing.

The biggest reason it's so easy to get amazing value is because that $600 speaker only has $150 of materials. Upgrading its $25 woofer to a $80 one would help a lot, but no company would do that and not sell it now for $1000 if they could.

However the biggest allure for me is not beating commercial systems on cost, but making what I want. A small speaker with deep base? Easy. Speakers with quasi-active noise cancellation behind them? Sure, why not. Speakers that'll make the most overpowered/fancy beach-boombox sound like a crappy toy? Simple.

The only limit is your imagination and time/money.

I'd very much recommend diyaudio.com, but be warned, parts of this field are mature while others are still in effective infancy. Also, being an engineer (electrical/mechanical) helps a lot, there's a ton of signals processing and electrical/mech oscillation.


All that build up and not a link to be seen?!?! Where do I go to spend $ on a new hobby I didn't need?


The easiest "take my money" approach would be to look at some Troels Gravesen speakers on his website and/or find kits being sold on sites like parts express (if in the US). Jeff Bagby and Paul Carmody are two other well known designers, the latter having more budget-friendly builds.

Additionally, sites like diyaudio.com are better when you want a specific thing built and are looking to learn more about techniques, new parts etc.


This is a rabbit hole worth jumping into when time allows it.


Check out Hexabase on YouTube, and then check out DIYAudio.com. Those will whet your appetite, I hope.


I think you mean HexiBase?


Can you actually outperform the KEFs and Perlistens of the world? They seem to have so much engineering put into their designs I don't believe a hobbyist can realistically match them.

I will admit that stuff like "speakers with quasi-active noise cancellation behind them" sounds intriguing. That's probably a good reason to get into this rabbit hole!


> Can you actually outperform the KEFs and Perlistens of the world? They seem to have so much engineering put into their designs I don't believe a hobbyist can realistically match them.

Absolutely. Don't forget, these guys are: a. Humans, and b. Operating for a company to make a profit. When you're DIYing you're (generally) not concerned about the latter part at all.

There's a few more reasons why DIY is so capable:

1. High quality drivers are available to purchase. There are companies like Tymphany/SB Acoustics etc that are OEM/ODM manufacturers selling to the big names. You can get the same/very similar models from parts express and other sites.

2. A lot of the engineering principles are well understood, public science. In fact many experts hang out on websites like DIYaudio.com. They're human. You can see their workings, opinions, doubts etc up close.

3. Some speakers like the Dutch&Dutch 8c's started their lives on forums like diyaudio. Which is to say, they went from DIY level to "well-reviewed" level in a manner that's quite clear/transparent to anyone familiar with the forum/DIY. No "hidden" black magic involved.

4. You have a lot of amazing designers on these forums putting their designs out for free. Jeff Bagby, Paul Carmody, Troels Gravesen, Perry Marshall etc. Check out Perry's comment on his speaker below. Btw, he's a professional designer having worked across a number of audio & car companies designing AV systems.

Now, if you want to design your own speakers and not use an existing model, yes you'll need to learn a lot. But it's very much doable. It may take time/money/effort, but beating a top of the line system for a fraction of the (material, not labour) cost is possible and has happened.

[0] - https://www.diyaudio.com/community/threads/ultimate-open-baf...


BTW Perry had made another comment about how his speakers sounded better than almost all other speakers at AXPONA and his kids agreed, but I couldn't find it right now. And many of those speakers were high 5/6 figure speakers.


This for me, for quite a while now. I've built my own speakers, microphones and now I'm in a DIY synth module hole.

Latest at https://fourays.lon.dev

I've just got to the point where I think I know what the module is going to be, but last night found out that PCB manufacture puts additional constraints on the PCB design, so I have to go back and re-do a lot of it, including probably dropping some features to make it simpler. The learning never ends.


All I want is a small stereo speaker to replace my awful monitor speakers. Like a small soundbar that doesn't suck. I might dive into this rabbit hole


Check out this speaker kit call C-Notes. They're really well rated and a pretty simple/budget friendly option, especially if you're okay applying some eq on them. Paul Carmody has many good designs.


"Small" and "decent audio response in bass" don't really go together. But you can go surprisingly far with a pair of "bookshelf" speakers.


With passive speakers, I agree, but with active/DSP speakers you can do ludicrous things. There's this build on diyaudio called something like "compact active 3 way", that'll give you an idea of how decently powerful a small speaker can go (and that's despite some design flaws in the build like the choice of a passive radiator).


Check out Hexabase on YT. He has really punchy small speakers that he has released designs for.


> Check out Hexabase on YT.

https://www.youtube.com/@HexiBase in case you're having trouble finding it with that spelling.


Thank you. Mea culpa.


How hard to make something better than my hs8’s? I want an upgrade but next tier is like 3k


How much are you willing to spend? Troels Gravesen has many builds on his website and I'm sure some/many of them would be better than the HS8s. You could also search for "hs8" on diyaudio.com and see posts of people in a similar position.


I mean, hopefully less than 2k for something that’d be worth 3k for a pair of barefoot03’s ?


Do you mean the barefoots cost 3k and you'd like to beat it by spending around 2k? You could see if there's any design you like from Troel's page, though you could also make an account & post the question on diyaudio.com. Unfortunately I'm not very familiar with DIY studio monitors, I know speakers like the Hitmakers (by Paul Carmody) exist but I'm more aware of domestic speakers.


I did not realize that learning Fusion 360 was going to be such a huge chapter in my current journey. Looking back, I'm kind of stumped at how I avoided it as long as I did.

I would now put learning CAD in the same category of mandatory life skill as learning to code. The ability to translate what you see in your mind to something that can be repeatably fabricated is an incredible power move, akin to learning how to communicate complex ideas with empathetic language.

My advice is to start by following this tutorial step-by-step. It's a 90 minute video that took me ten days to get through. Step two is to take an existing project and change it in a significant way. Step three is to create something from scratch which solves a problem that you have.

https://www.youtube.com/watch?v=mK60ROb2RKI


If you don't know about Plasticity 3D, you should know about Plasticity 3D. It is different, but still parametric, and CADish.


Thank you for this! I was completely unaware that it was out there, and I really dig a lot of what the creator is going for. For example, I'm not a Blender user but lots of people are, so the idea that he created a WebSockets-powered real time bridge is the kind of innovation that makes the world better.

However, I do have two nits. The first is the overwhelming focus on pricing model as a feature. I get it; SaaS is frustrating AF. However, I also understand that it's very difficult to build a functioning business around tooling that is free. There's a huge number of people who just can't understand why we don't have free Fusion/Z-Brush equivalents. It's easy to fix... just set up a $5-10M/year donation schedule to a group of people currently working for Autodesk and you could definitely have an OSS competitor to Fusion in a year or two.

In reality, people using powerful tools are used to paying a bit of money for those tools, and I honestly feel like that's how it should be. The people screaming the loudest for free-as-in-beer CAD that doesn't suck are also likely the worst customers that you wish you didn't have. Anyone who has ever noticed that non-profit clients always want to argue about billing the most will be nodding.

Second nit is that as awesome as Plasticity is, it's really a modelling tool (like Z-Brush) that is influenced by CAD, not the other way around. And I believe that there's a huge market segment for this! Game asset creators come to mind.

But there are huge swathes of workflow functionality that Fusion nails which just don't seem to be present in Plasticity. There's no component hierarchy, no timeline. The whole relationship between sketches and operations is lost in favour of just slicing through stuff... which is cool until you need to change your primary enclosure dimensions and expect every aspect of your design to re-calculate and adapt.

There's more to "parametric" than being able to change parameters on a tool. I try to describe to friends that in a tool like Fusion, the geometry itself is a parameter, the operations are like lambda functions, and the timeline can be rolled backwards and forwards like git commits.

When you have the lightbulb moment for all of this, it's really hard not to be annoyed when people attempt to shame you for not using FreeCAD, as is happening elsewhere in this thread.


I'm with you on the timeline/component stuff. I came from SolidWorks and SolidEdge and I still pine for a complete CAD package that is actually functional. Fusion360 is foreign to me and I doubt I'll ever be in a place where I could afford an annual SolidEdge subscription. Note, the community edition is free [0]. I may have to brush off my CAD skills and give it a go.

[0] https://resources.sw.siemens.com/en-US/download-solid-edge-c...


For what it's worth, I definitely felt like Fusion 360 was foreign until I did the tutorial that I linked to. It's very good.


> The people screaming the loudest for free-as-in-beer CAD that doesn't suck are also likely the worst customers that you wish you didn't have.

These are often ambitious hobbyists who have quite some free time for their hobby, but little money (also since they don't earn money by using the CAD program).

The most rational choice would in my opinion to sell very cheap licenses without any support to these people: you don't loose any money because they wouldn't be customers for the expensive licenses anyway; on the other hand, because of some of these people's devotion, it makes the CAD software a possibly better choice for many companies because of the existence of more people to hire who know the software quite well.


I use it these days for my basic indie game models, it's great.


Not only that, but after learning Fusion 360 (or similar software) a very interesting world was opened when I started learning G code so that I could write, optimize and modify Post Processors

Learning G code allows you to start using CNC machines - even a simple 2 axis plasma cutter can do interesting things. 3 axis machine centers can make things that are quite remarkable. I am now stepping into 5 axis.


When 3D printing became accesible I joined the subreddit for inspiration of what use I could put it to and the opposite happened. Everyone was making plastic toys and ironic reaches like an “egg holster”. Every so often someone would be able to fabricate a replacement part for something which I thought was the coolest. But beyond that. There wasn’t too much to be motivated by. I never got into it.

Here I wonder the same thing. Not that everything joyful must be productive. But if there was a way to apply this to something that was neat in the real world I think I’d be far more motivated to learn the skill. And enjoy it more.


I can empathize with your perspective. For everything genuinely useful thing like the Gridfinity storage ecosystem, there's a mountain of future landfill. There's only so many wifi router wall-mount brackets you need.

However, I am going to gently push back by pointing out that you're not connecting the dots between knowing how to use CAD to create solutions to problems, and having cheap 3D printers available that can make those solutions real.

In other words, your mistake might be looking externally for what you should be making. It's not so much a failure of imagination but not training your brain to make the possibility of creating objects one of the first steps on the path to problem solving. Perhaps a good analogy is how people go from asking GPT-4 things they've heard other people try to making asking GPT-4 about everything as normal as brushing your teeth.

So like, as much as it's awesome that I could realize I can print my own reels (for pick and place) from an STL off Thingiverse, my main use of my 3D printer at this point is to print off plastic prototypes of circuit boards and custom enclosures that I'm working on. Not only does this allow me to verify clearance (I actually saved myself five digits and months of pain recently by realizing that the 1/4" audio jacks would not allow my board to be inserted as designed) but it gives me something I can put in people's hands. I've found that, over many years, you can describe things to people and they will nod like they get it, and then when I put the real thing in their hands, they say something roughly like, "oh, this is what you meant". Which I used to find frustrating, and now I just accept it.

Right now, I'm working with the company in China that makes hard shell cases for basically every consumer product. They are sending me revisions of the insert that will hold everything safely. I print them off and then send photos and measurements back of how everything fits (or doesn't) which completely avoids the expensive and slow process of them making a mold, sending me a sample and me testing it. I've literally saved months and thousands doing this. It's awesome.

Similarly, you might have heard that injection molding is incredibly expensive to get started with and that there are fussy design rules you must follow. Well, engineers have recently clued in to the realization that we can essentially 3D print the molds, saving thousands and many lost weeks. Right now there's this crazy arbitrage where about 90% of product designers don't appear to realize that this is a thing, yet.

I could go on and on. The only takeaway is that as you normalize CAD and 3D printing as a go to tool the same way you probably think screwdrivers are pretty normal, you realize that you have more things you need a 3D printer for than things you need a screwdriver for. And that escalation can be really fast.

Addendum 1: Also, remember that it's not just 3D printing. Creating photo-realistic renders of something that doesn't exist yet can save the day. But there's also subtractive processes like CNC which is in some ways even more useful than additive processes like 3D printing. There's a Kickstarter right now for Carvera Air that a lot of folks should get in on.

Addendum 2: One of my very favourite theoretical use-cases for 3D printing is printing prosthetic limbs for animals. I say theoretical because I've never done it personally... but I intend to. I'm a total sucker for this concept and I want to have time to get involved someday. Lots of videos on YouTube, like https://www.youtube.com/watch?v=dP3Kizf-Zqg and https://www.youtube.com/watch?v=EynjYK45dyg and https://www.youtube.com/watch?v=sdFtMRko2GU


Can second this!

However, I would recommend the open source https://solvespace.com! It hits a sweet spot between features vs complexity/learning effort. (And as a programmer I dig the terminal aesthetics)


I learned CAD / fusion for both work and a burgeoning interest in 3d printing. I'm a product manager in my day job. Being proficient in CAD and do simple renderings has been extremely helpful with work.

I'm now looking at going down the Blender / render rabbit hole as Fusion can only get you so far.


Cool! I keep telling my SO that she would be able to express things better at work, too.

What sort of problems do you hope Blender can address that aren't tackled by Fusion?

In a similar vein, I also recommend taking a long look at game development engines, as they are in the same category of tool that have many uses beyond making games:

- quick UI mockups - environment walk-throughs - product demos - VR environments - best way IMO to teach coding to kids

I use and generally like Unity, although if I was starting over today, I'd be taking a good look at Godot.

TL;DR if you need to do interactive renders/movies a gamedev engine might actually be more generally useful to a coder than Blender.


>What sort of problems do you hope Blender can address that aren't tackled by Fusion?

I felt that Fusion was limited with the textures and materials available for rendering. I think Fusion is good enough for internal purposes but I want better looking renders for external uses.

I've worked on scrappy product teams that lacked a dedicated industrial designer. Usually, the mechanical engineer on the team would come up with a design and I'd come up with simple renderings for marketing docs, show investors, etc.

Most of the industrial designers I follow on linkedin all use Blender, I hadn't even considered Unity, I'll check it out.


Thanks for the push to learn this as well!

Curious how you best learned how to communicate complex ideas with empathetic language?


This was super cool. I guess if you want to "simulate" its a whole different world?


Not really! Many of the major CAD packages have built-in or add-on packages for FEA. Some of them will even do dynamic multiphysics simulations -- so for example you could model an internal combustion engine, simulate the combustion cycle, and measure the torque.

(That's not a beginner-level project, to be clear)

example: https://www.youtube.com/watch?v=dejend_kx94


Do NOT use this proprietary nonsense, learn FreeCAD


Friends don't tell friends to learn FreeCAD.

I'm a decently able self-taught CAD user now, of the level where I can reasonably quickly pick up a new piece of software. And yet... I've lost count of the number of times I've reinstalled FreeCAD thinking "this time it will be different"... and then quickly removed it again. Compared to anything reasonable it's just an awful hot mess to try and figure out, with huge quirks, a weird interface, and unhelpful error messages.

Given the reasonable pricing, I'm interested to try Plasticity, although it's not strictly CAD in the sense of Fusion360/Solidworks/etc - it's currently more of a modelling program. It's also doesn't have the parametric + history features that are really valuable in other products.

The truth is, we're crying out for a decent open-source CAD program. Everything currently available (FreeCAD, OpenSCAD, SolveSpace, CadQuery, etc.) has huge usability and/or feature deficits compared to the commercial offerings.


To quote myself from a previous blog post of mine:

> I tried and tried and tried to get into [FreeCAD]. It promises so much, but there are two fatal flaws in my opinion. First, the UI is a nightmare. I have no idea which "workbench" I am supposed to be using, and there are so many similar choices available, each with subtly different tools and ... I gave up trying to make sense of it. Secondly, even when following tutorials to get some basic modelling done, I found lack of sensible keyboard control and having to click almost everything a real distraction. Not a good experience.

It's an absolute nightmare to use. Really the worst UX I've ever seen.


I am a developer, FreeCAD is a bit of fun to wrangle a model out as a puzzle but it's not even in the same universe as Fusion360.

I'd love to use something like KiCAD is in the EDA world.

I highly expect, at any moment, Audodesk to pull the rug from under the hobbyist licence and I'll not be able to use it anymore.

While I feel kinda 'dirty' when I use it, I have been using it for maybe 8 years and the thing is a masterpiece. It's like a third arm for me.

Once your brain knows the whole constraints workflow it is so natural. I can very quickly model up pretty much anything I can think of to make.


Fusion360 was good until it became SaaS


I'm not saying that Fusion is the best CAD software, but FreeCAD is worth less than you pay for it. The UI/UX is in the bottom three most user-hostile nightmares I've ever experienced.

Time spent thinking "I'm sure it's just me" in FreeCAD is time you will never get back.


I use Blender for CAD. It's not designed for that, but I've developed a particular workflow that fits my needs quite well. I use it to design everything from small parts to buildings. I've used FreeCAD, but it's just too time-consuming.


mind elaborating on this? as an outsider to CAD software i don't know the landscape — i'm finding some concerning things about fusion360 when i search for pros/cons but i'm not sure how to weigh the opinions, e.g how relevant the commercial lock-in could be for a hobbyist


One time FreeCAD user: FreeCAD couldnt solve a very basic constraint. Every time it got stuck and said it's too hard. Fusion360 had 0 issues.

Licensing is a thing with FreeCAD but last time I looked it was free (as in beer) for hobbyists. The grey zone is where you turn your hobby into a small scale business.


I picked it up to do CNC hobby work and I can’t get enough of it.


Self-hosting and homeserver stuff!

I started out when I got a new phone, and didn't know what to do with the old one. One of the ideas I had was a homeserver. Turns out it's not trivial to run Docker even on rooted Android phones, and you need a lot of kernel patching, tweaking and more and it still had issues after that.

The next step was when I figured out I could install postmarketOS on it, and I managed to flash it, SSH into it and set up Nextcloud for our photos and unbound as a recursive DNS for my home network. I thoroughly recommend postmarketOS, and the contributors are amazing as well.

I was however running out of storage, so I ordered an 256GB SD card, and set up mergerFS between it and local storage, worked fine.

After some time however, I got paranoid about having and old device with a LiPo battery constantly being charged in my home, so I decided to get a mini PC from Aliexpress and chucked a 2TB SSD in.

In the meantime, I discovered Immich, which turned out to be much better for photos than Nextcloud, and fell in love with it.

The final thing I added was a miniDLNA service to play my local movies and shows on my LG TV without having to bother with Plex/Jellyfin and reencode anything. Unfortunately, it kept disappearing after roughly 2 days of operation, so I just added a cron job to restart it at 5 AM.

For the time being, I don't need anything more and am turning my attention to other things.


I’ve fallen into the plant tissue culturing rabbit hole. I was selling excess trimmings of aquarium plants locally on Facebook marketplace and made a surprising amount of money, and my kids really enjoyed it (they got a cut for helping me out). I thought hmm, this could be a great excuse to make a little business around this, teach them some skills, get them thinking more constructively and feeling a sense of agency and ability, etc. Plus earning money is really nice when you’re a teenager.

The challenge is that in an aquarium, plants grow reasonably fast but not fast enough to sell regularly for a decent income. You need ways to produce more plants faster, more reliably, and without taking up too much space. That’s where tissue culturing comes in.

It has reaaaally sucked me in. I’m culturing everything I can find. I’m also propagating aquatic plants through more typical means, and that’s fun too. I’m out of space though.

Tissue culturing is a really fascinating science and practice. I love keeping track of the media recipes, results, growth rates, etc. I’m too early to have had meaningful results, but I look forward to tracking those as well.


This is really cool. I work in the plant industry, and most people don't know this but huge numbers of the plants bought in the U.S. are grown from tissue culture. I would guess it could be in the ballpark of half of all small and medium-sized plants (< 10" diameter), because it brings some benefits when propagating at scale for certain genera. For others, it's too difficult to grow a stable plant from tissue culture, so they need to be propagated vegetatively.


You're an industry plant.


Sweet. I spent a few years cultivating mushrooms and found the hobby to be very rewarding. One can grow (legal) medicinal and gourmet mushrooms on a small scale with very little money. I recommend people interested give it a go because it's fun and offers a lot to learn. :)


Mushrooms are what gave me the confidence to try tissue culturing! I’d grown mycelium from spores, made liquid cultures, and generally figured out the sterile workflows and understood the gist of things. I figured it shouldn’t be too different or difficult.

Plants have been slightly more challenging, but not as much as I expected. If you aren’t optimizing for profits to keep a facility open, mediocre results are still awesome and you’ve got plenty of time to keep experimenting. I guess it’s much the same with mushrooms. If you don’t get 5 pounds on your first flush, it’s still great fun. The beauty of mycelium is that turn around times are an order of magnitude shorter. Tissue cultures are very, very slow.


Did you collect the spores yourself? Because that’s where most people leave.


Do you have a biology/botany/lab tech background?

I've always really wanted to get into this but really don't know where to start.

Also, "Murashige and Skoog" is such a silly name; I love it.


Ha, I love that name too.

I have a background in absolutely nothing. Anyone can do this stuff.

I mentioned in another comment, the book “Plants from Test Tubes: An Introduction to Micro-Propagation” was incredibly helpful to me. You can get a cursory understanding of things from YouTube or similar, but the book does a great job of explaining what you’re actually doing, how, and why.

A good place to start is prepping some media and containers, collecting some plant tissues, sterilizing it, and dropping it into the media in the container! I know each step here is a subject within itself, but it really is this simple when you zoom out a bit. If you aren’t sure about how to make MS media, start with pre-made options from a company like Plant Cell Technologies. You can use glass jars with autoclaveable plastic lids as the containers. You can use a pressure cooker as your autoclave. Collecting the plant material can be simple or extremely difficult (collecting meristem material can be excruciating if you haven’t worked under a microscope before), and it’s fine to start simple (just use a piece of a leaf). You’ll want a flow hood or still air box, and you can make these for peanuts or buy small solutions for pretty reasonable prices.

As someone once told me: There’s nothin to do but to do it


Thank you for that; I appreciate you taking the time to post that. You've inspired me.

> You’ll want a flow hood or still air box

This was what I was going to ask next. I live in the middle of the Pacific ocean so shipping large things here is prohibitively expensive (for a hobby project) so I guess I'll have to make one. I'll do some googling.


This is really interesting! Wondering if there’s any good reading/books about it you’d recommend?


I started with “Plants from Test Tubes: An Introduction to Micro-Propagation”. After reading that I’ve perused various sites, YouTube, and I find research papers are remarkably plentiful and useful when you’ve got a specific question.

For example, I want to culture some plant. How do I get the best tissue from the plant and which media and hormones seem to work best? Should I use agar, gellan, multiply in a temporary immersion bioreactor, are there any special deflasking notes, etc. The information is out there for a ton of species!


Any online communities?


I’m not a part of any, but that’s a great idea. There are probably several out there.


Do you think this would work with wasabi? Notoriously difficult to grow.


I've been attempting to relearn music theory for the third time.

The first attempt was over a decade ago, and I never really quite got it.

The second attempt was about 6 years ago, and while the fundamentals clicked and I improved dramatically as a musician/composer, I still only ever learned some small portion of the basics.

This time, I'm taking it a few steps further. I'm going back to the basics first to recheck my existing understanding of things, and really trying to take my time and understand each new concept before moving on.

I'm currently working my way through this online textbook: https://musictheory.pugetsound.edu/mt21c/frontmatter.html

I've also picked up a simple little budget keyboard (a 61-key Casio CT-S1) that does just what I need at a great price.

Having a lot of fun so far and learning a ton! :)


I love the incremental re-visits where you, after the fact, realize that you have subconsciously progressed.


Wow, thanks for the link! Im in similar situation. I'd like to improve in my music theory knowledge as well.

I realized 15 years after finishing music school how chord progressions would speed up my learning new songs on piano and learn playing jazz. So Im looking for any kind of literature that would improve my knowledge there.


I deep-dove into the identity of a spammer. They were sending me the crappiest, absolutely lowest-denominator hodge-podge of spam. Fly repellent, ultrasonic dog whistles, knives. It all seemed like legit businesses, so it was just some marketing firm that bought an email list somewhere.

Whenever I get spammed, I check the email headers. Turns out they were using an email with the owner’s initials in the unsubscribe header. From it, I was able to easily guess their actual name. I found them on LinkedIn! I used that, plus the list of all the domains they used for marketing and sending mails, to build a pretty comprehensive map of their operations.

I thought for a while about what I could do with this info… but in the end, reporting them to my country’s consumer rights authority for spam did the trick. No reason to get in trouble myself, as fun as it could be.

So the lesson is: look at email headers! There’s fun stuff in there!


What about absurdly targeted spam just to mess with them?

https://ghostinfluence.com/the-ultimate-retaliation-pranking...


I started by looking into LLMs outside of ChatGPT (self-hosting ollama, API services, etc.) I got annoyed that they all had their own 'chat' interface, or that all the chat interfaces were some bad rebuild of a chat application.

So I wrote https://github.com/arcuru/chaz to connect any LLM to Matrix so that I could use any Matrix client with any LLM.

That got me writing a Matrix bot account in Rust, and I couldn't find a simple bot framework so I split out a bot framework in https://github.com/arcuru/headjack

But _then_ I realized a really easy bot I could write that would also be very useful for me, and I wrote https://github.com/arcuru/pokem which is sort of a clone of ntfy.sh but using Matrix. Send yourself (or others, or a group) a ping on Matrix using an HTTP request or a simple CLI app.


Chaz looks really cool! It'd be awesome if you posted it to This Week In Matrix (room: [0]).

[0]: https://matrix.to/#/%23thisweekinmatrix%3Amatrix.org?via=mat...


Micropython on an Adafruit Feature to make a dual deploy altimeter for high power rocketry. Got really into control theory and all the fancy math for determining the state of the rocket on the way up. Then got into device drivers and improving on the ones that come with CircuitPython to get higher performance out of barometers and IMUs. Then got into circuit board design and fabrication starting from zero for an i2c pyro board that fires the ejection charges (little tubes of blackpowder and an e-match used to eject parachutes). That was pretty interesting, i have the advantage of a handful of hardware engineer friends to answer my questions when i get stuck.

It's all sitting on my desk, first flight will likely be in May.


ESP32 + CircuitPython is really cool.


I recently fell into the Linux from Scratch rabbithole. The extra unexpected fun came while attempting to build LFS from within NixOS (my daily driver, which I only had a basic proficiency in). I quickly realized the challenges of following the LFS project's guidance, due in large part to how the Nix store is implemented. So I fell down another rabbithole of learning derivations and the Nix language - which took me a good way though building the LFS toolchain within Nix's intended sandbox. However, achieving FHS-compliance became another issue as I attempted to build essential LFS system tools within a chroot-like environment, but sought to do so in roughly the same declarative/reproducible manner as Nix's ideal. After a few lost hairs, I discovered the wonders of Nix's FHS build environment/bubblewrap implementation. A few hoop-jumps later, handling permissions and migrating to the final build partition, the project was complete with a mostly declarative, mostly reproducible, functional, minimal, bootable LFS build.

What sticks with me most through this experience is the brilliance of the open-source community (and a special satisfaction with now being able to say "I use nix btw")


That sounds super interesting, could you share the code for that?


I've been making milk punch for friends as a gift for years now. On a lark I wanted to figure out how to produce it in larger batches with less manual labor and discovered the tip of the iceberg of what is the field of beverage filtration and food chemistry.

Turns out getting particulates out of a solution is a massive, massive industry with a large body of science, literature, and engineering practice behind it.

EDIT: Here's a few wiki entries I found as OK overviews. ChatGPT was handy for figuring out what relevant literature in the field was and terminology I could use to find more pertinent resources:

1. https://en.wikipedia.org/wiki/Food_engineering

2. https://en.wikipedia.org/wiki/Ultrafiltration

3. Food Chemistry: https://www.amazon.com/Fennemas-Food-Chemistry-Srinivasan-Da...

4. Introduction to Food Engineering: https://www.sciencedirect.com/book/9780123985309/introductio...

5. Handbook of Food Engineering Practice: https://www.routledge.com/Handbook-of-Food-Engineering-Pract...


What's your milk punch recipe?


I got my first intro to milk punch from How To Drink: https://youtu.be/zr8dtT9siq4?si=akpHbgmLrtIcgXJk

I originally used their spec, but have since learned milk punch is pretty forgiving. It works really well for complex flavors that have a lot of tannins or volatile constituents (tea, wine, citrus, etc). I’ve found good black tea and a deep, sweet port tends to be a winning combination.

Done correctly, the resulting punch is shelf stable. That said, it has a neat trick: since no filtration is perfect, you end up with trace amounts of milk fats in the solution that continue to react with any left over volatiles. This leads to a smoother, rounder flavor over time. The last batch I made with a bergamot tea and port ended up tasting like a fruity, complex boba tea after a couple months of rest.


I’d never heard of milk punch, had to look that up. And now I have my own new rabbit hole! Much thanks!


Be warned that getting good clarity takes time and persistence if you’re going the coffee filter method. You’ll also get better flavor if you let the solution sit for up to a day before filtering. Enjoy!


I was curious about how people with seizure disorders safely click links not knowing what lies ahead. Investigating the current best practices for building for epileptics, using this great resource (1) as my starting point.

This took me down a rabbit hole on current methods to detect seizure onset... I came across a very interesting journal article on applying ML in an implantable that can detect seizures within 3 seconds, which spurred my current research on less invasive detection methods. Like any good rabbit hole, I've strayed from the original mission.

Seizures seem scary and I don't want to give them to people, but the causes of their onset seem to be too nuanced and patient-specific to build with any guarantees. The best I can do is avoid the obvious and hope the cutting edge detection and mitigation research bears fruit.

1. https://developer.mozilla.org/en-US/docs/Web/Accessibility/S...



Figure skating. It should be illegal to have so much fun. The feeling of gliding out there on the ice with nearly zero friction is amazing. It's a great community too. Not cheap, but a lot cheaper than many hobbies. Less than $1k will get you a nice pair of skates, plenty of group lessons, and access to the rink for a few months. It's fun for the family or single adults. There are always tons of people just starting. Private lessons can get expensive, but for the average interested adult, you can probably do a single private lesson like once a month and then work on what you learned at the rink.


I totally agree, we are lucky here in Sweden to have free access to ice rinks, basic lessons are also rather cheap and usually operated but local not for profit organizations.


Where I live it is hot and humid for much of the year, so even though we get cold winters, it isn't enough to have outdoor ice rinks everywhere like in the Northern US, Canada, Eastern Europe, and Scandinavia. I'm jealous of the skating culture where you're at!

One of my Canadian friends was explaining that pretty much everyone chooses to do either hockey or figure skating from a young age with a small minority doing speed skating. She says every neighborhood has its own ice rink too. Also, apparently the women's league for hockey is becoming pretty popular in certain places, so that is cool. I'm guessing it's similar to that where you live?


I live in a suburb of Stockholm and it is like that, every neighborhood having its own ice rink, some are inhouse and some are opened, mostly free for use and divided for hours with and without hockey clubs.


That sounds so freaking cool. I cannot imagine such a world. I bet it also does a lot to bring the community together.

In my area there was practically nothing, but recently a bunch of things got built like walking paths connecting the neighborhoods, a school, sports centers, a park not too far away...etc. I think it had an overwhelmingly positive impact on the community and only some of it came from tax dollars too.


Sports in general is a big thing here in Sweden and the same way it comes only partially from tax payers' money, a lot of those activities are supported by the community and participants


I started hockey last year. When I started I looked like Bambi learning to walk. Now I am at the point where I can hold my own in a game, I even scored a goal out last game!

Learning to skate is amazing. Once the motions start to “click” and you can start flying around the ice it is so much fun. Wearing full hockey pads makes the learning process a little easier on the body. Falls on the ice hurt!


Spring Boot. What I learned is: I had no idea how much I hate "configuration".

Spring is a Java dependency injection system that uses XML-based configuration. Recognising that XML sucked, they later added 2 additional ways to specify configuration, which they call annotation-based configuration and Java-based configuration. Both kinds use annotations. Both kinds use Java.

Spring Boot is a layer on top of regular Spring that tries to make things simpler by automatically guessing what you're trying to do and configuring it for you, with something it calls auto-configuration.

Just trying to understand what makes what happen in a (very simple) Spring Boot app sucked weeks from my life.


What's funny is that Spring Boot powers some of the World's largest enterprises and applications.


Texas Hold'em. I know there are probably plenty of experts here but after decades avoiding it, I'm getting into it because I found a group of friends that played online.

I first discovered that there are tables (and tables and tables) of preflop card combinations that tell you whether to raise/call/fold based off of where you are in the dealing order and how many players are active.

Then I learn that's basically derived from monte carlo simulations, to calculate your chance of winning at any given moment (equity). It seems that it's probably more accurate to make your decision based off of equity and pot odds, i.e. Kelly Criterion. If I can get fast enough at estimating that in my head.

Also having fun trying to find open source libraries to do those simulations so I can create my own drilling exercises. Honestly, I'm having more fun doing that stuff than playing it.

The biggest dumbest problem is when blinds accelerate to the point that the minimum bet is greater than what Kelly would recommend. Some online poker sites are aggressive about this, to the point that you are forced to make irrational choices pretty quickly or get blinded out. A way to juice the house advantage I guess. It's almost enough to make me give up and find the next project.


>The biggest dumbest problem is when blinds accelerate to the point that the minimum bet is greater than what Kelly would recommend. Some online poker sites are aggressive about this, to the point that you are forced to make irrational choices pretty quickly or get blinded out. A way to juice the house advantage I guess. It's almost enough to make me give up and find the next project.

The house does not have an advantage with poker. With player games, they earn money from hosting by taking vig(orish). But rapidly rising blinds in tournament poker is a way for them to get more games played, hence introducing turbos in tournament poker and Zone-type cash games.

Better understanding common betting patterns is more useful than hand simulators or whatever. Being able to accurately update your opponent's range throughout the hand is essentially how to play well.


Did you write an algorithmic betting software?


Nah. When playing solitaire I just use a Kelly calculator. I plug in estimated equity and pot odds, and get a recommendation of what percentage of my stack to bet. It's just to get a sense of how to make riskier bets when the pot is large.


Graph visualization.

I've been on a journey for a while to understand how to layout diagrams / graphs in an "aesthetically pleasing but structured" way. Long story short, DOT[0] is the best language I've found for defining graphs (compared to doing something with Mermaid.js or any other markup language), but rendering with the DOT engine in GraphViz fails the "aesthetic" test for me.

Did a bit of a literature review[1] to understand better the different approaches, and to understand the scope of the field. This book does great job of defining and providing the keywords for the different levels of requirements, starting with "principles" that are provable in the academic sense, to "conventions" that are like principles, but cannot be necessarily computed (eg NP hard, so requiring heuristics or simulations to achieve), and ending with actual "aesthetics" where things get very subjective.

Ultimately got pretty deep writing my own force-directed graph simulation in Rust and visualizing with egui[2] (needed an excuse to work on UIs and I've always wanted to write less Python), but I'm taking a break to use what I've learned writing Rust to shore up the REST API testing suite for my dayjob.

[0]: https://graphviz.org/doc/info/lang.html [1]: https://www.amazon.com/Graph-Drawing-Algorithms-Visualizatio... [2]: https://docs.rs/egui/latest/egui/


My two rabbit holes from the last ~year:

JellyFin. Amazing. A little clunky here and there, so some automation is needed. Then the weird bugs - gotta get a debug instance going to see what is going on. Once you start thinking about it as a "personal Netflix" you start building out a larger collection which needs organizing. Then your friends want an account. Then you realize your satellite tuner has a streaming function so you start reading through the plugin code for other streaming boxes...

Next one was the Japanese PS2 DVR combo unit. Sold as junk (which mostly they are - none can read discs anymore basically) but very interesting in that they are beautiful and cool and weird. The English OSD translations will often break your unit in subtle ways - so I joined the discord and identified that this was actually a configuration management problem - you have to only ever use a translation which was done to a set of OSD files which match your firmware revision. So I started writing a framework to auto-translate the XML file strings. Then the guys on the community mentioned the images with strings, as well as detecting when your translated string is too long for the UI element... I am still working on the framework. No dealbreakers yet! I will probably buy a few more to generate all my own OSD translations. My wife is going to kill me - I have 2 PSX DVR's now, and probably will buy more on our trip to Japan soon...


Try Veso, which is a Jellyfin fork: https://github.com/vesoapp/veso


How the public transport services in my local area are run! There's a lot to it: route planning, scheduling, ticketing... and a large amount of digitalization too.

It's interesting to discover that a lot of 'facts' about public transport people take for granted just aren't true. The names and liveries by which vehicles go often don't actually correspond with their actual operators and owners. The company that's named on your ticket might not actually get any money from your purchase - or they might make money from passengers who don't pay at all, due to a myriad of subsidy schemes run by different levels of government.

Waves of privatization and re-nationalization with political motivations at every turn have produced a system which is amazingly efficient in some ways, and appallingly wasteful in others. Workforce strikes are obvious to the general public, but what's not obvious is who the negotiating parties even are, with various trade unions (and unions of unions) competing against various management groups (and groups of groups).

Some things are pleasantly surprising. Without any fanfare, digital systems for vehicle tracking have been introduced with remarkable efficiency. Then, for me, there's the astonishment of discovering that not only is every timetable published in a consistent, nation-wide data format, but one that has been utilised in production for twenty years!

It all makes me realise how limited the public discourse about public transport and 'green' mobility policies are in my region. It is simply impossible to grasp the true consequences of any given proposal in the meagre columns that they're given in the newspapers and the two-minute reports in which they feature on the television. Diving into this rabbit hole has led me to respect the complexity of the field much more than I did before, and fills me with both hope and despair on topics which I had hitherto scarcely lent a thought.


Bottle digging, i.e. looking for and collecting old bottles, typically buried or submerged.

Wife and I live on a floating house in Oregon outside of Portland. Taking my paddle board to various beaches on the river to pick up trash has become a beloved hobby of mine. Fantastic way to get exercise, get out in nature, and clean up my community.

I kept finding old, antique bottles during outings: Coke bottles from the 40s and 50s, little medicine bottles from who knows when, old beer bottles from brands no longer in business. I eventually learned that there's a whole hobby around this called "bottle digging", even an active subreddit (r/bottledigging).

I've since bought a nice snorkel and mask and have been diving for old bottles on clear days, when river visibility allows it. Thinking about taking it to the next level and getting scuba certified.

If you like finding things, you might like bottle digging.


I enjoy this as well, but live in an area where finding bottles isn't too common. That hobby has been replaced with shark teeth hunting. I have a decent collection of them (maybe ~300).

I've also learned how to make pendants out of them.

Although, if I were you, I'd be looking for old necklaces, watches, etc. in that river. It excites me to imagine finding some old gold coins or something.


My dad and I did that when I was a kid... we were always in search of the Ruby Red beer bottles. We also looked for insulators on the ground near the telephone poles next to old railroads.

We frequented a subdivision that was being built on land that was a former city dump.


Mine all feel like "we do these not because they're easy, but because we thought they would be easy".

Turning a thousand-page book - PAIP - into a stack of Markdown files in a git repo, readable online. The print book received more editing and revisions than the ebook. I converted an ebook's ... odd formatting ... into Markdown, remade diagrams, generated new ePub and pdf files, and had the spine cut off a print copy to make a fresh scan. Working on that scan, I made Scantailor, an X program, easier to access from a Mac, via Docker. I tried different OCR engines, and pored over the diffs, incorporating dozens (hundreds?) of improvements. I got to find so many differences between Markdown engines. I have ideas on how to make Pandoc links between chapters. There's still a lot to do!

My current WIP: Lars Wirzenius posted about file systems with a billion (empty) files. I started exploring because I was curious, if I was remembering correctly, how well a mostly empty image file would recompress - like, drive_image.gz.gz. Lars offered a Rust program; I was curious about how other methods compared. Like, how about nested shell loops, tar, and touch? And, hey, how well can we archive and compress them? I've gotten to see some issues, bottlenecks, and outright failure modes with SMR hard drives, Samba re: sparse files, and parallel gzip compression. I've accumulated some shell script boilerplate to make it easier to go back and verify my processes, and harder to accidentally wipe out past work if I rerun it.


I’ve spent a half months salary on literature auctions. French, latin, english, swedish, 1700s and up. History, memoires, philosophy, religion, science and math, poetry, stories. Art as well, happened to buy prints of Girodet and Dürer that I enjoy very much.

Did some duolingo for french just recently and already did for latin two years ago. It’s difficult to read them but broad context is enough for an overview understanding and I feel a detailed understanding increase by the chapter from exposure alone.

Apart from the actual books I enjoy bidding, similar to but healthier than gambling on stocks, and “winners curse” of overpaying for stuff I really like eh I’m aware of it but the dopamine is worth it too. Some arbitrage opportunities as well, as in finds on local auctions and selling online internationally, but usually international shipping for heavier stuff like entire œuvres and just the time investment to pack and ship something deters me from doing that. Wouldnt want to damage 1600s books in shipping I suppose as well, they look quite cheap locally but fetch more internationally.


Nice. When cash was more prevalent in my life (ie before kids) I got into buying 1700s and earlier books on eBay. Magnificent things. I couldn’t ever part with them, users shouldn’t be dealers!

I love how many absolutely insanely interesting books from that period aren’t affordable. I have a copy of the book in which Bishop Ussher put forward his theory that the earth was made on "the entrance of the night preceding the 23rd day of October... the year before Christ 4004"; that is, around 6 pm on 22 October 4004 BC.

I use as a cautionary example of data driven analysis. It was all from lineages in the bible and ages mentioned there. Seemed like a solid methodology at the time!


This past month, I’ve been reevaluating my dev environment and workflow. My goals are to reduce RSI, be more efficient, as well as learn all my tools as deeply as possible. And have fun!

- I’ve ditched VSCode and gone all-in on NeoVim. I’ve spent a bunch of time watching Primeagen, etc., tweaking my vid config and learning how to navigate as efficiently as possible.

- Switched from QWERTY to Colemak-DH to hopefully reduce RSI. I’m at about 70wpm with decent accuracy after 4 weeks. My QWERTY skills are gone. I like Colemak, but we’ll see how I feel in another month or two.

- Finished my custom hot swappable Sofle keyboard, and spent many hours customizing the layout. I think I’m pretty close to feeling comfortable. I’m using home row mods, which I love. Currently using Kailh box whites (clicky). Might switch to Gateron Brown Pros.

- Been going through a “Build your own git” course, to understand git as deeply as possible.


Strongly urge you to acquire a Logitech MX Vertical mouse. It takes a few days to get used to; now you'd have to pry it from my dead hands.


I went down this path and tried various vertical mice, and settled on the MX V for a few months in the pursuit of reducing wrist pain. After about 4-5 months or so, I started getting strong wrist pain again, and switch backed to a standard mouse. At that point I started looking elsewhere, specifically on strengthening my wrists and joints. I've been doing this about 5 times a week for probably 5 months now, and most of my mouse hand wrist pain has subsided: https://www.youtube.com/watch?v=iVum3vWlh4Q


Thanks for the video. I’ll definitely try it out. In my original post, I should’ve emphasized that I’ve also been focusing on strengthening/mobilizing my wrists. It’s only been a month or two of concentrated effort, but I think they’re improving a bit.


Congratulations on learning Colemak! I made that journey myself and haven't regretted it once since. I did have to relearn QWERTY, frustratingly, but luckily it isn't nearly as difficult as learning a layout for the first time, and I can now switch between them relatively easily. (For me, a few years on, I now type at 100-120 WPM on Colemak; I was also at 70 WPM four weeks after starting.)


Thanks!

That’s encouraging to hear that you can switch between the two. Awesome!

I’m afraid to start practicing QWERTY too soon, and risk losing my progress with Colemak. Maybe I’ll attempt it in a few months.


I didn't go back to QWERTY until having had a couple of months of uninterrupted Colemak use, so I don't know what the effects of that would be. But yes, I can now switch between the two :) After a few minutes of 'warm up', I can type about 70 WPM in QWERTY and then go straight back to >100 WPM Colemak. Also, I always use QWERTY on my mobile phone, since 'swipe-typing' doesn't really benefit from having frequently-used letters close to each other nor from having them on the home row.


For my issues, the combination of apple trackpad and a proper ergonomic keyboard with a keywell did it: at first Kinesis Advantage 2, then Glove80. Model 100 is also quite good.


Building custom keyboards is fun, but I might bite the bullet and buy a Glove 80.

I don’t own a 3d printer, so designing a custom Dactyl is not very feasible for me.


oooh the sofle. i'm curious about your layout! been using a Moonlander for a few years and while I like it, it's just too big. ordered a sofle variant recently and I've been thinking about switching back to a dvorak or trying colemak when it arrives.


The Sofle has been decent for me. I’m not the biggest fan of thumb key positions (especially the outer one), but I’m getting used to them.

There are only two thumb keys per side. I’ve had to get a bit creative with my layout. One trick I’ve discovered is Mod-Tap. This lets me use my space bar as a layer key (when held), or a normal “space” when tapped. Two functions on a single key. Awesome.

I’ve also been reading this person’s blog to improve my symbol layer and vim navigation (I’m tempted to try the Engram layout, but I’ll stick with Colemak for now): https://sunaku.github.io/engram-keyboard-layout.html


Group theory.

Something is incredibly beautiful to me about classifying the kinds of symmetry things can have.

I’m trying to understand where the sporadic simple groups come from. Starting with the Matthieu groups. So far it seems to be due to some anomaly in Pascal’s triangle, but I’m still trying to put it together. “Another Roof” on YouTube has a good video about this.


I'm over a decade out from my maths undergrad degree, but I still remember how beautiful Group Theory felt. Enjoy it!


i was interested in signal processing with group theory it was quite interesting to see how matrix multiplication corresponds to modulo over finite group.(I am not a math major).


Not just multiplication: https://mathoverflow.net/a/63298/5734


I got into cross-compiling Python wheels (e.g., building macos wheels on linux and vice versa). Zig's `zig cc` does much of the heavy lifting, but one step in building a portable wheel is the "repair" process which vends native library dependencies into the wheel, necessitating binary patching (auditwheel does this for linux, delocate for macos).

I wanted to be able to do this cross platform, so I re-implemented ELF patching and Mach-O patching and adhoc signing in Python, and wrapped them into a tool called repairwheel: https://github.com/jvolkman/repairwheel


I've been doing some modernization on an old scripting language used by the game engine I work on [1]. Added a garbage collector, simplified how internal symbols are defined, added a VS code extension with some niceties like syntax highlighting, "Go to Definition", and doc tooltips. Also recently added support for websockets and plan to tackle JSON soon. Oh, and so much refactoring.

https://github.com/ZQuestClassic/ZQuestClassic


Our company decided that they want to make an electronic device. They've found an electronics engineer who devised a schematics and wrote some kind of PoC firmware. I wrote "driver" for it (really just wrapper around serial port) for our software to consume it.

That guy was busy with other tasks, so iterating on firmware was too slow. So I decided to dive in. I mean I knew C a bit.

So I had to learn STM32 arm, I had to learn low level C, I had to learn assembly, I had to get some understanding of those electronics things to get some sense of it, I had to read tons of manuals and datasheets.

Long story short, I rewrote this PoC firmware into something I could bear. It's so nice to control all software from the start to the end.

Now our company wants to rework this device into "smart", add display with touchscreen and stuff. So I'm digging into embedded Linux programming, LoL.

I'm generally consider myself full stack developer, so I can write frontend, backend, kubernetes, setup servers, deal with cloud stuff. However digging that deep feels like testing my limits.


"Now our company wants to rework this device into "smart", add display with touchscreen and stuff."

please don't do that. Add some kind of interface, eg bluetooth, and an open-source app, or open-source/documented protocol, to control it.


USB! I’ve tried and failed couple times in understanding how USB works under the hood, from electrical, to protocol, then classes, and also Power Delivery. This time around things seem to make more sense now. It started out as an ambitious goal to emulate an FTDI USB DMX converter with the ESP32-S2/S3, but realizing that might be too big a goal, so I’m starting small. I want to be able to make a custom device class on the ESP32, and write a driver with libusb.


USB is a frighteningly deep rabbit hole. I thought it was going to be easy when I first dipped my toes into the USB stack but boy was I in for a shock.


I had a peek at the USB spec recently, no desire. I thought it would be trivial to even just enumerate USB devices on a Windows box. It is not.


Metal-air batteries/fuel cells. Made a mini aluminum air battery (you can easily DIY one with household items). It seems that most people consider metal-air batteries to be a dead-end, since they aren't green and are generally non-rechargeable, and air cathodes are tricky (sluggish, exotic materials, expensive catalysts). I dove into "alternative" battery and fuel cell research after looking into how to extend the range of my electric motorcycle. I love the electric drivetrain, especially on motorcycles, but lithium ion isn't up to the task as far as capacity for anything beyond an hour or two of high performance fun. If I could get a compact metal air battery or hydrogen fuel cell to output just 1kw for a hybrid drivetrain, range issues could be solved.


I would be interested in discussing your project further, for use on my e-bike.


It's still more of an idea/crude experiment than a project right now. There are some neat videos of DIYers with similar projects though - small homemade metal air batteries and materials experimentation. Aluminum air seems to attract the most attention. There is also a lot of available research.


I was writing an article on reverse-engineering vintage synthesisers[0], and I ended up getting majorly sidetracked trying to find out exactly what year the Hitachi HD44780 LCD controller was first manufactured, or try and find any background information on it. The earliest reference to it I can find online is a 'preliminary' user's manual[1], dated March 1981. I know it's a bit of a weird rabbit hole to go down, but I figured I'd get to the bottom of this mystery. It's a shame that there's so little background information available about one of the best-known ICs in history.

0: https://ajxs.me/blog/Introduction_to_Reverse-Engineering_Vin...

1: https://archive.org/details/Hitachi-DotMarixLiquidCrystalDis...


GoLang and Azure APIs.

I've been attempting to add a oauth2 device code flow to a Tacacs server with the goal of extending Azure accounts to access network device management planes. Pretty neat, I can get a "enter this device at URI" from the router/switch and let Azure do it's 2fa/compliance etc. Currently trying to get token validation working on the tacacs server =).

Ultimate goal is have a reverse proxy web front end kind of like Apache Guacamole that does the Oauth for the user and when they click on a network device, the JWT is passed through to the network device over SSH and thus the tacacs server which is relatively local to the network device which will validate it and let the user into the network device.

Playing around with GPT4/Opus a lot lately and man... I have feelings. They've been a great learning tool to learn the basics of Go though so I'm thankful.

It's going swimingly /s but I seem to be making progress. Slowly, I'll bake this into my bigger network management tool if it an be secure and make sense to do so...


Chrome extension build steps. Because the chrome manifest requires an actual file, you can’t rely on a dev server and hot module reloading. So I’ve hacked vites build command and watch command to constantly recompile chrome extension code as I develop it (typescript + frontend frameworks etc).

Add to the fact that you have to manually reload the unpacked chrome extension to apply your new changes, so I’ve hooked solution 1 up with a web socket server and a custom chrome extension that watches all your other extensions and talks to the web socket server to auto reload an unpacked extension anytime the build step completes

It’s a nightmare hack, but I may just be the worlds most productive chrome extension builder as a result! I’ve released 5 extensions in the last 5 months :)

About to release a big one, but it’s also probably the words most complicated chrome extension (LLM + Firebase store + Stripe + Auth + Serverless functions)


Sounds very cool. Do you have plans to open source that?


Here’s a project that does HMR and more: https://wxt.dev/


I haven’t used it but I think I was put off by the fact that updating your manifest restarts the browser

My custom workflow handles everything for me, I never need to restart the browser of anything like that


I think I should but it’s currently a private repo, here’s the current Vite plug-in:

https://www.npmjs.com/package/vite-plugin-extension-reloader

The extension is of the same name


I've been bitten by the Meshtastic / LoRa bug. It's fascinating to see how far these little inexpensive units can reach.

This weekend I was able to reach my home node from a state park 8.2 km away and have been giddy since.


Chasing memory leaks in BCP [1] data load implementation in Babelfish [2]. Spotted unusually high RAM usage, decided to look deeper and got into a rabbit hole. Haven't had this fun of overnight debugging (of Postgres guts) for a long time. As a result found 4 different leaks and one (unlikely to be triggered) crash. And now have BCP data load impl with 100% constant-bounded RAM usage in a DB server process.

[1] https://learn.microsoft.com/en-us/sql/tools/bcp-utility?view... [2] https://babelfishpg.org/


Back in the days my uncle told me about this new thing called Debian that he compiled over the last couple days. That was in the end of 1996. I went on to use it for a while in parallel to try things out, and was quite happy in the endless learning bubble.

Fast forward into my first job, there was a Windows machine with a crashed HDD and my task was to recover as much data as I could. Windows tools all sucked hard, even the ones that we had at the company that cost thousands of bucks per month. That's when the power of the Linux ecosystem hit me.

Went on to being an IT forensics guy, then went into pentesting, then into blueteaming and now I am having my own startup that builds a better EDR software.

I still have to think about that coincidence. Literally nerd-sniped my life, otherwise I probably would have still been a sysadmin or something.

On the way I learned a ton of new things, from programming languages and compiler bugs to exploit techniques and kernel development and even hardware design. If you go deep enough in hardware pentesting, the whole phreaking scene is amazingly welcoming. The CCC chapters are also amazing, and there's just so many opportunities to grow your knowledge and experience in the field. It never gets boring!


History of early Christianity. I found the gospel if Judas to be extremely fascinating.


I find that subject facinating - can you recommend any resources or literature on this? I'm not religious, but I find relegion facinating!


Honestly, I mostly watch podcasts. Misquoting Jesus, ReligionForBreakfast, Centre Place, and History Valley are some great ones.


Fun exercise to try and list them out! My last couple of weeks:

- 3D-printable parts storage solutions (via: I found some part storage bins in the discard pile at a local hackerspace)

- MITM proxy to snoop on Github Copilot API requests (via: we're building an jupyter AI assistant thing and got curious how other players do it).

- DIY robot arms (via: I'm making several for a nested 'you pass butter' joke, via a casual conversation about robotics being accessible now. YouTube is amazing at surfacing smaller makers once you start watching a few videos on a given topic)

- Learning about Oauth and JWT (via: 'why is auth still a pain?')

- Invertebrate UV fluorescence (via: that millipede is glowing under my UV torch!)

(a small subset of these end up documented https://johnowhitaker.dev/all.html eventually if you're curious to see a longer historical list)

I like rabbit holes where following the curiosity gradient to a satisfying conclusion is possible. "How does X work" leads eventually to code that does X. I'm less happy when they lead into a tangle of complexity, like digging into a library only to find weird abstractions 6 layers deep or trying to compare 18 different alternatives in a field I don't know very well.

OP I'd also like to hear yours!


> OP I'd also like to hear yours!

Today I gave some thought to what would be a fitting name for my boat (if I were to rename it).

One option: the glider pattern from Conway's Game of Life. Instantly recognizable by true hackers, just a weird symbol to others.

Of course a quick check on Wikipedia. Know that I'm always interested in things small / simple / computing, so... cellular atomata. Which led me to varieties used to simulate or help understand biological systems ("systems biology" - if only that field had even existed back when I left high school).

From there on: artificial life, Core Wars & co, self-replicating machinery, and... Astro-chicken (deserves a HN post of its own, imho).

Btw. it's amazing to see how many big, open questions there still are, related to the origins of (biological) life, and evolution. Eg. full simulation of a single cell organism: never been done (too complex).

Next up: a cup of hot chocolate.


Started like this. I had a few talks with startup founders interested in if they were hitting the market at the right time (their "why now"). Seeing more interest I ended up running a workshop on the timing topic for a few accelerators. I kept digging into what clues there are that a product will hit the market at the right time. Researched how the same products have been reintroduced again and again over years until finally they work out. Most surprising to me is how many people realize timing is important, yet how few have a framework to assess timing.

Fast forward a few years... I just wrote a book on the timing topic, called Why Now: How Good Timing Makes Great Products.


Ham radio!

I got into it through wanting some cheap radios to keep in my house, so I wouldn't have to go all the way upstairs when I needed to communicate with my daughter.

Well let me tell you Baofeng radios are extremely cheap but really flexible. I got these things for the simplest possible use case but after realizing their potential I just had to learn more about the space. You can adjust their configuration with a tool called Chirp and you're off to the races!

I attended a local severe weather awareness event where I met some hams who were part of an emergency response network. It's really cool to learn about how these communities operate. It's legal to receive even without a license - you only need the license to transmit.

I plan to take the technician test soon and get my license so I can help out at a nearby bike event. The area is incredibly rural so there's no cell coverage and the ham operators are really helpful in coordinating things.

Anyway, I feel like the hobby is a bit of a dying art, but it's something that seems like it would have a lot of appeal to the programmer crowd.


If you want to transmit with your Baofeng before getting a HAM license you can always get a GMRS license. There's no test, and the license is a household license that lasts 10 years. IIRC the license costs about $30, you can get one on the FCC website (https://www.fcc.gov/wireless/support/knowledge-base/universa...).

If you have a repeater in your area there may be a net where other licensed operators check in every week. I've heard people check in from over 60 miles before. You can check this website for repeaters in your area: https://mygmrs.com/repeaters. Good luck on your technician test!


Golf simulation. I found myself in a unique situation where I had the space, computer and projector. So I got a mat, screen and the key piece, a launch monitor. Now I’m playing 9-36 holes of golf simulation almost every day. The tech is great, the setup is never ending. Golf simulation tech is blowing up right now too. I’m not even necessarily a golfer fwiw. But I love the simulator.


I'll never set it up but I'd love to hear about the tech choices/options.


The software that I am using to simulate the courses is GSPro. There are hundreds of courses on there. It's got just about every course you could imagine.

Launch monitors come with their own software too and there are a few other options for simulating courses. E6 is one and GolfClub2019 is another. AwesomeGolf. GSPro is hard to beat though.

For launch monitors, there are two main types: camera based and radar.

Garmin offers the most affordable radar based option with R10 for around $600.

Bushnell offers an all camera model and for $2000 you get all the ball data. For a subscription fee you can play GSPro and other 3rd party golf apps using the Bushnell and for another fee you can get all the club data. This model sits beside the ball.

FlightScope has a launch monitor that operates with radar and/or camera and sits behind the player. For about $1800 you can get the ball data and its free to connect it to GSPro. For another $1200 you can get club data, with impact location. It's unreal how accurate this thing is. I've had mine for about a year, and since then they have pushed some incredible updates, including what they call "Fusion", which is combining the camera and radar for readings. Its how their really expensive 20k+ unit works.

At the very top end there are monitors that go on the ceiling and give you readings from there. And then there are commercial simulators where the floor will move up and down. It really never ends. One company showcased lighting from above that shows you where you should putt. It never ends. . .

https://gsprogolf.com/

https://www.garmin.com/en-US/p/695391

https://www.bushnellgolf.com/products/launch-monitors/launch...

https://flightscope.com/

https://www.foresightsports.com/pages/gchawk

https://uneekor.com/


To what extent does it make you a better real life golfer?


It’s helped me immensely. Just recently I feel like I’ve really broken thru to another level. I played real golf last week and had the best round of my life. Shot par+2 on the back on what’s considered one of the toughest courses in the area. Crushed the group I was with.I was teeing off first- I’m usually the guy not keeping score because it’s gonna be 110-130…

I had never practiced golf in my life(late 30’s) and would play 5-8 rounds every summer for last 10 ish years. So I had a ton of room for improvement. I also grew up playing competitive tennis, so the repetition of hitting a lot of balls is familiar and scratches an ich I’ve longed for.

I’ve just learned so much about golf from simulating golf that I never would have taken the time to learn.

And I’m sorta anti lessons and more learn on my own. So the sim is right up my alley. It’s also great exercise. 330 cals in less than an hour and I can play 18 in less than 40 mins…

I think everyone agrees it makes you a great ball striker. At the very least. Then the rest is golf. Which can be very very very tricky, even for the best of players.


OK, yeah. I'm never setting that up : D


Rebuilding a Ford Cleveland V8 - the Australian specific 302 cubic inch version.

One broken engine and one non operational one and turning them into a single good motor. American thin-wall cast V8 engines are fairly similar, but different enough that if you don't get them built you have to do a bit of puzzle solving (especially in the timing case). Plenty of youtube videos and forum posts on the Cleveland and it's been fun piecing it back together and learning about new things like installing cam bearings.


Visiting and documenting abandoned mine sites across the U.S. desert southwest.


+1 for literally rabbit hole'ing :)


Is hantavirus a possibility?


How dangerous is that on a scale from 1 to 10?


Trying to _really_ understand the postgres query planner's `EXPLAIN` output. We have long-running embarrassingly parallel processes where the throughput will sometimes completely tank. Got worse when we upgraded to PG16.

Trying to compare good query plans with bad ones, and then work out what changes we need to make to the slow queries is ... interesting.


I picked up a carbon-steel pan at IKEA because that was all that was left. I knew it takes some work to season. I did not know there's a whole community of carbon-steel nerds committed to getting the most perfect seasoning to fry an egg. Now I know more about the topic than practical or necessary.


I switched to Neovim from Sublime Text after trying copilot in Sublime, feeling sad, and then watching The Primeagen and his glorious mustache for too long.

Ostensibly I wanted to be able to code on the production server like a miscreant with the same tools as my laptop.

However I just wanted to regain command of my dev environment after years not coding.

I also reorganized the furniture in my office and got weirder lighting to make it hacker friendly. I bought a new desk to solder electronics.

Most people know me as a partnerships marketer or product manager but I am a compsci at heart. This made me happy.


i've been attempting to switch to neovim off and on for about a year now. VS Code is so much much easier to get started with though. And adding support for a new language is just an extension-install away.


That’s fair. I can’t use vs code on the server was my logic. But also it was a hacking challenge.


Why not really? Remote editing through ssh is vscode's superpower!


There’s no reason. I just wanted to be cool and use neovim! Lol :)


Neovim — as good for a mid-life crisis as a Porsche, and a fair bit cheaper.


True. My friend is selling electrified retromodded Porsches. I want one but I am poor.

However I can salve my ego spending a day flipping through neovim colour themes.


So, how was the switch to Neovim? Which plugins did you settle on?


I used nvchad and I am configuring it from there. Here’s my fork.

https://github.com/sunir/NvChad

Overall I still think I am faster in sublime text. I get stuck in the different modes. I find shift select and grep to be pretty frustrating.

However I will muscle through this. Every challenge is another set of vim stuff to learn. I have faith I will love it later.


MH370. There was no intermediate step as I saw somewhere it was the 10th anniversary of its disappearance and decide to get a quick update on the current status of all the evidence and theories. Ended up spending the entire day reading about radars, pings and aviation controls.


What did you find is the most reasonable explanation?


Pilot suicide by a long shot. There is no other alternative theory that comes even close.

What was interesting is to see them piece the theory together from the very fragmentary and little evidence (what is even more mind-blowing to know how little evidence there was to play with given we are talking about a 747).

The true mystery left is how did he execute the suicide and why. How did he dispatch the co-pilot? (There was a very small window to do so). What did he do in the final hours (was he alive for the entire duration)?


did you chance upon @MentourPilot on youtube and his breakdown of the MH370 investigation + recent update? If not, I am afraid you may have another hour to spend, but its very likely you have already seen this.



It was a 777. Back to the rabbit hole with you!


"Recently" (~5 years ago) I got very interested in mathematics, and decided to self-study up to an undergrad degree-equivalent level.

I researched what topics are typically included in a 4-year math major university program and what textbooks are used to teach those topics at MIT. Then started grinding all the way through from beginning to end.

It was so awesome that upon finishing, I promptly started all over again... but with physics instead.


The wonderful world of research paper identifiers.

DOI (Digital Object Identifiers) are used by many modern research papers as sort of a UUID for papers, run by doi.org.

But they're discipline-specific. So they're used widely by certain disciplines. But others use different databases.

So for biology-related papers, NIH's PubMed ID. Or for Astronomers, Bibcode.

All are "global" identifiers and each has some kind of consortium that's trying to make theirs the One ID. DOI seems to be the closest.


Doi is the main one. Most published papers and many other things have them. They're newer so often older things hang around too, I'd wager most new pubmed articles have dois too.

There are several registries, crossref is the big one in the west but it's not the only one. They have probably the best access to the data out of all of the larger registries though.

Dois are pretty good, though not persistent and there's no versioning built in so people have their own formats.

I spent a lot of time working with these as part of https://dimensions.ai for a decade or so. Happy to chat if you want to delve in more.


Cool!

I know you guys work with OrcID too right?

We work with CrossRef to get data but if a DOI is missing, then things get harder to find in CrossRef in our experience.


Man, I envy the dedication and energy y'all have. I retired 10 years ago and have completely lost motivation and the ability to stick with anything.


interesting, why did you loose motivation?

I saw my grandparents go through 10 years of doing all the retirement things(beach, hobbies, social hour etc) to keep them more than busy. Then they kind of did it all and just started having social hour earlier and earlier every year into their 80s. Cocktail our started about 11:30 am in the end.

I'm starting my retirement and have so many interest/subjects I want to learn so feel like I can stay pretty entertained for more than 10 years but maybe not.


Dunno. I just have little motivation to put hours and hours into a challenging project that I probably won't complete. When I was working, I never had any side projects.

It's not like I'm sitting around on my ass all day. I walk the dogs, bicycle, rock climb indoors, and travel. I'm starting Tai Chi and just bought an e-drum kit. After I retired I spent a year renovating one house and have spent a lot of time this winter on another. Also lived off-grid in a forest for three summers and am doing it again this year. Off-grid ain't easy. Can't just turn on the faucet and presto hot water.


Ooh, another one I have: I cosplay as a sysadmin.

A while back I had bought a domain for my email, and I thought “I should write a blog about creating a blog”. At first I hosted it in GitHub Pages, but then I realized I have a perfectly good Raspberry Pi. It’s not like I’m ever gonna get a lot of traffic… so why not self-host?

That sent me into a very deep rabbit hole. How do I make sure my website doesn’t go down if my IP address changes (no static IPs for me, sadly)? How do I create and automatically renew a certificate? How do I achieve high availability?

A few years passed, and now I have a cluster of a few Raspberry Pis running Docker Swarm, managed by Portainer, with stacks running multiple websites and services I self-host. I’ve learned a lot!

My next move is going to be a full overhaul: Docker Swarm is blocking me from setting up some things the way I want to, so I want to build a new cluster using Kubernetes. I’ll use the opportunity to overhaul the network layout as well.

The funniest part is that I haven’t written a single blog post in 3 years. I wanted to add responsive images so I could add diagrams and photos. Somewhere along the way I realized I shaved too many yaks.


What's your stance on using something like cloudflare to proxy your pie fleet?

Cloudflare tunnel would solve the issue of static IPs and you also get DDoS mitigation and caching. Caching on the edge would be especially beneficial for something like a blog which is likely to be fully static or SSG at most. Although it won't help you with the writing part (;


I’ve never even considered, really… I wanted to stick to self-hosting and FOSS as much as I could, and it all gets very little traffic.

You’re right that it’s a good idea, though. I’ll look into it!


Can't believe I haven't heard this usage of the phrase "yak shaving" before, I only know it from the classic Ren and Stimpy christmas album that I had when I was a kid :)

https://www.youtube.com/watch?v=5mmISldi060

I realise now that I've spent most of my career just shaving yaks.


The big hole - I basically have learned the fun bits of STEM(3d Printing, Laser cutting, CNC, microcontrollers/electronics etc) over the last few years. I graduated with a ME degree 25 years ago but left engineering shortly after to go into the startup world. Built a career out of helping scale startups and now decided to retire and focus on my interest as I never had time or energy.

My current rabbit hole is tuning my home's boiler to be more efficient in its use of gas. It is an interesting engineering problem because the lack of feedback loop since the thermostat is dumb and specific home variables makes smart thermostats useless as well as boiler sizing more complex than most installers understand. My goal is to add some features specific to my home to reduce gas consumption based on more variables - outside temp, minimum outside temp, sun/clouds and home variables like brick wall temp, fireplace heat, boiler controller settings as well as the wifes 'I'm cold' variable.

I am using a microcontroller and custom current switch as well as IOTSTACK to send inlet/outlet temp and gas valve & circulator state (on/off) to influxdb/grafana so I can see what is happening between thermostat and boiler controller. I have identified a few freebies in terms of consumption and inefficiencies. I have added a relay to delay the gas valve once the boiler starts cycling to reduce "short cycling" which is a waste of gas on startup and a mini explosion every time gas lights. I have managed to reduce cycles in half which helps with wear and tear as well as the number of boom sounds coming from my boiler room :)

I would love to go down the simulink rabbit hole but I think I will not.


Why doesn't my Powershell terminal work in Visual Studio Code?

What do you mean my launch.json file is missing? It was there yesterday?

Wait, I can set up custom launch settings in my launch.json? What else?

Ok, so I've got seven different launch settings in there, and now to see if I can have one used for markdown for my markdown word editor.

Oh, neat, lots of extensions for markdown.

Wait, you can install vim?

An hour later, and I've completely re-broken my VSC and am reinstalling from scratch.


Was into cine drones for a while; then discovered FPV. Spent dozens of hours on simulators, now flying actual FPV drones in manual mode. Incredibly addictive. I'm having a hard time focusing on anything else right now.


Sounds very fun! I also spent many hours with simulators, but unfortunately never got to the real-life stage, as that was just about the same time as FPV flying was made effectively illegal here in the United Kingdom.

For those who are curious, it is not one single law that makes this the case, which is why many people will tell you that it's still allowed. However, with the combination of privacy laws forbidding the use of aerial cameras, UAV regulations limiting the locations you can fly, limitations on certain radio bands as well as specific rules about maintaining line-of-sight, it is not usually possible. How could it work? Perhaps if you live in a rural area with no nearby air traffic, have permission and access to use a large patch of land (such as a farm) from which to take off, a willing partner to maintain line of sight (which of course precludes many of the stunts often associated with competitive flying) and you have done the paperwork. Not really hobby territory for most people at that point :(


Heh. I was building/programming/racing FPV drones in 2013/14, back before teenaged reflexes and rich dads paying thousands for top line gear became a thing - and easily started beating 50 year old eyesight and reflexes with self imposed budgets of only a few hundred bucks...


Any tips on getting started?

Is it possible to start super cheap just to see if I like it and then upgrade?


For starting on a simulator you need a remote control (gamepads can technically work but are not recommended). The Jumper T-Lite V2 is around $60. Liftoff is one of the most versatiles simulators and costs around $20 on Steam (there are lots of others).

Then to start in real life, complete kits from BetaFPV or GepRC are around $200 (including drone, rc and analog goggles); you can find them used for about half that, in excellent condition.

But there is NO POINT in trying to fly an actual drone before doing plenty of hours on a simulator: you would crash constantly and destroy the drone before you even get started. So just start on a simulator. 10 hours is the absolute minimum you'll find everywhere, but I'd recommend around 50 (you can listen to podcasts at the same time).

If you want to go the extremely cheap route you can start with a cheap simulator (FPV Freerider, $5) or even a free one (FPV SkyDive?) and use an existing gamepad -- but gamepads really are confusing and don't work like RCs (the throttle joystick should not center automatically).


Suno and Udio.

Spent WAY too much time adapting a Buddhist sutra into a heavy metal banger: https://www.youtube.com/watch?v=H-5Y9Z7DK4s


Yeah, digging this!


I got a ZSA Voyager split keyboard and then spent weeks exploring custom layouts. The first question was QWERTY vs something better. Then there was layers and layer navigation. And should I swap out the key switches? And Keyboard Maestro.

Now I'm trying to abandon 30 years of muscle memory and typing at 4 wpm while I learn Colemak-DH. Maybe what I should really do is build a custom 34-key board...


I've been researching and planting fruit trees and edible plants. Looking at paw paws, peaches, pears, berries, persimmons and tea bushes.


I'm in a paw paw/persimmon zone, and figs grow nicely. One of the lowest-maintenance trees that don't have much insect pressure. I thought they were notably absent from your list. The variety I chose tastes much like a peach.


Yes, they are good too. I have planted three of those. The hardest part for me is making sure I prune them right. The jam reminds me of strawberry...


Reverse engineering android apps. I wrote a bit about it in [0]. In the weekend I also started doing another one. It's interesting to see how these apps behave.

[0] https://github.com/benhamad/blog/blob/main/2024-04-12-dramal...


I couldn't find any containers for paper filters for the AeroPress XL that didn't look like cheap 3d-printed garbage, so I've been going down a rabbit hole of how to build bronze articulated joints.

I'm building a paperweight inspired by vintage brass table lamps to hold the papers in place on a wooden platform.


Got a ARTinoise Re.corder (an electronic wind instrument, basically shaped like a recorder, but MIDI) for my wife. Works with an iOS app for basic sounds. She's spent very little time with it :-)

The REAL rabbit hole is the astounding amount, and quality, of AUv3 plugins for iOS. Sounds, effects, looping tools, MIDI things, just... wow. And almost all of them are under $20, and many are free! I've spent less on a dozen software toys than on the first two guitar pedals I got. And infinitely more powerful.

Check out this video of someone doing the looping thing way way way better than I'll ever be able to (but it's fun to work towards a goal). Software she's using is called Loopy Pro, another amazing thing:

https://www.youtube.com/watch?v=T1O0pwUMbnw


I spent the last week evaluating drag and drop form designers and came to the reluctant conclusion that I’d be better off building my own. Long story. So now I’m building a drag and drop form designer, quite the deviation from the road I need to travel down.

Its almost certainly a rabbit hole but at least I’ve forewarned myself.


I'd be interested in code if you produce something you like.


Let’s see how I go. There are quite a few out there - formio and formily came closest. I would probably have chosen formily, but the main docs were all in Chinese and I couldn’t get it to work.

I also looked at vueforms and surveyjs, the builders are not free though.


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

Search: