HNHacker News
TopNewBestAskShowJobs

w4rh4wk5

1,144 karma · joined August 31, 2013

Developer at https://games.ph3.at/
submissionscomments
w4rh4wk5··on My favorite keyboards
For anyone interested in a single-body, low-profile mechanical keyboard with a split layout, checkout PERIBOARD-335. Highly recommend it.
w4rh4wk5··on Photo GIMP – A Patch for GIMP 3 for Photoshop Users
I highly doubt that. Photoshop, even for 95% of users, is pretty heavy on non-destructive editing. GIMP did not have that for a very long time and is no where near feature parity today AFAIK.

Don't get me wrong, Photoshop sucks hard, Adobe as a company even more, but on a technical level most Photoshop users cannot transition to GIMP.

Edit: Although, I have to highlight that GIMP has made noticeable progress within the last years. I can now, finally, group two layers together and apply a drop shadow effect to the group, which correctly applies to all layers within the group. It's been quite a while...

w4rh4wk5··on Where to buy a non-Apple, non-Google smartphone
At this point, I am thinking about connecting a stock Android phone to a server and access it via scrcpy from my laptop whenever I need to interact with some stupid app bs that could've just been a website.

At least this way I can keep the majority of bloat away from primary communications device.

w4rh4wk5··on Cost of enum-to-string: C++26 reflection vs. the old ways
Yeah, in my field this approach is pretty much infeasible.

Typically, I am given an ancient code base that is full of bad decisions, hard to read code and no tests in sight. Sometimes there are assertions, if I am lucky. It's impractical to create a reliably test suite, or rewrite everything from scratch.

Here, I heavily rely on a debugger just to make sense of the code. Sure, I'd wish that all of this code would just be sparkling clean, easy to read, free of UB, etc. But that's not the reality I work in, and good debugger is my number one tool getting the job done.

And don't even get me started on dealing with closed source implementations where all you could read is disassembly.

w4rh4wk5··on Cost of enum-to-string: C++26 reflection vs. the old ways
It's not that people are _still_ using debuggers; it's that people have actually discovered debuggers and workflows that are more productive than adding print statements, recompiling, and rerunning the program.

Casey has been talking about this some time ago: https://www.youtube.com/watch?v=UzD_Ze6zFKA

Also, John Carmack's perspective: https://www.youtube.com/shorts/PRE51epznT8

w4rh4wk5··on Cost of enum-to-string: C++26 reflection vs. the old ways
I'd argue reflection is very much a feature for libraries. You wouldn't use it directly, but your JSON / YAML serialize is then built on top of it. So are your bindings for scripting engines like Lua.
w4rh4wk5··on Googlebook
IIRC Ubuntu provided this when they introduced Unity -- quite a long time ago. When the window is maximized the menubar was merged into the top panel, but when the window was not maximized it looked like a regular window with tilebar and menubar at the window's top.

Not long ago there was also a KDE extension to replicate this; however, since many GNOME apps moved away from menubars, this approach isn't that helpful anymore.

w4rh4wk5··on Cost of enum-to-string: C++26 reflection vs. the old ways
I've been wondering about debug-ability of code using reflection. X-Macros are quite annoying to step through in most debuggers, though possible. While the code in the first example is evaluated fully at compile-time, how would you approach debugging it?
w4rh4wk5··on Googlebook
The panel itself is not the problem, it's the lack of integration with windows. In GNOME, when you maximize a window, the title bar stacks underneath the top bar. If that window also happens to have a menubar (e.g. LibreOffice) that gets stack underneath as well.

This is just a lot of wasted space and makes the menubar harder to click, compared to having the menubar at the very top, next to the screen boundary.

w4rh4wk5··on Clarification on the Notepad++ Trademark Issue
I commonly hear people saying that, but then other people claiming this isn't true.

Is there a clear source for this mechanism?

w4rh4wk5··on Windows quality update: Progress we've made since March
DXVK works great for DirectX 11. However, it's rather annoying to debug through this intermediate layer. I wouldn't recommend this for development.
w4rh4wk5··on Monad Tutorials Timeline
From my experience having used Haskell (a long time ago), the main benefit of Monads is the `do` and <- syntax. Once you got your thing to satisfy the Monad interface, you unlocked the nice syntax for writing code. That, and compatibility with transformers.

Whether this is the best thing since sliced bread or not, is left as an exercise to the reader.

w4rh4wk5··on I won't download your app. The web version is a-ok
I'd argue it's absolutely ludicrous to give _other people's information_ up to an app (or website). Your contacts contain names, phone numbers, potentially photos and addresses of _other people_.
w4rh4wk5··on Neovim 0.12.0
Multi cursor support in VSCode replaced 98% of my need for macros. Yes, macros are more powerful, but they are pretty easy to get wrong. With multiple cursors, it's far easier to spot where your inputs don't work out and adjust accordingly.

Multi cursor is the feature that increased my productivity the most across the board.

w4rh4wk5··on Ghostling
For completeness, there's also the somewhat common way of creating an object file directly from the binary using objcopy. The object file ends up with 3 symbols with names based on the input file. For instance, a binary file level0.map yields: _binary_level0_map_start, _binary_level0_map_end, _binary_level0_map_size.

These can be used in the application through external declarations; and you include the object file in the linking step, like any other object file.

w4rh4wk5··on Wayland set the Linux Desktop back by 10 years?
Pretty much: https://gitlab.gnome.org/GNOME/file-roller/-/issues/4
w4rh4wk5··on Google details new 24-hour process to sideload unverified Android apps
I'll repeat my question from a while ago. Is the official Temu app, available on the Play Store, still full of questionable malware / spyware code?

If so, it's clear that none of these changes are actually to protect users.

w4rh4wk5··on Why I love FreeBSD
For someone who has multiple years of experience using Linux for desktop and servers, what's the best way to get into FreeBSD? Any specific recommendations for desktop, like is Wayland ready on FreeBSD?
w4rh4wk5··on Ask HN: How to Learn C++ in 2026?
I am part of a game dev focused Discord server where people regularly ask how to get into C++. Because of this (and similar) repeating questions I've put together this repository as a guide. Note that this is full of my personal opinions and experiences; feel free to disagree.

https://github.com/W4RH4WK/cpp-init

w4rh4wk5··on Wired headphone sales are exploding
Thanks for pointing this one out.

I am hesitant to buy Apple accessories like these as I am having quality concerns. Specifically the macbook chargers I've encountered are far less rigid than Lenovo Thinkpad chargers (at least before they switched to USB-C). I never felt Apple did a particularly good job with cables and connectors when it comes to longevity.

w4rh4wk5··on Wired headphone sales are exploding
Are there recommendations on USB-C to 3.5mm adapters, preferably ones with input and output? My biggest complain with Bluetooth headphones is the astonishingly bad quality when doing voice calls.
w4rh4wk5··on Rebasing in Magit
I've looked at Magit and indeed Emacs is a blocker as it's not something I'd like to pick up and maintain. I am using Fork as my primary Git GUI and am pretty happy with it. Lazygit and tig cover the few use-cases which Fork does not cover.
w4rh4wk5··on “Microslop” filtered in the official Microsoft Copilot Discord server
Let's use Slopilot in the meantime.
w4rh4wk5··on Resizing windows on macOS Tahoe – the saga continues
Guess changing it is considered an edge-case.
w4rh4wk5··on Resizing windows on macOS Tahoe – the saga continues
So, there's still no option to adjust the corner radius?
w4rh4wk5··on Discord Alternatives, Ranked
From personal experience, yes. Most of my friends are part of multiple large servers, often interacting with a small subsets of these communities. At this point, I don't think there is a comparable alternative.
w4rh4wk5··on Notepad++ supply chain attack breakdown
The non-developer / non-power-user is likely already using their Microsoft account to log into the OS.
w4rh4wk5··on C++ Modules Are Here to Stay
Hey, I really appreciate this site! Independent from my personal opinion on modules, I think it's extremely helpful to everyone to see the current state of development; and you do an excellent job reflecting that.
w4rh4wk5··on C++ Modules Are Here to Stay
You still organize the big file into sections to keep things together that are semantically related. For Git it mostly doesn't matter whether it's 100 small files or a single big one.
w4rh4wk5··on C++ Modules Are Here to Stay
I am fine with waiting for a feature and using it when it's here. But at this point, I feel like C++ modules are a ton of complexity for users, tools, and compilers to wrangle... for what? Slightly faster compile times than PCH? Less preprocessor code in your C++.. maybe? Doesn't seem worth it to me in comparison.
Page 1 of 13Next →