This is already pretty easy with -Zbuild-std, but requires nightly unfortunately. You need to do this to get simd support in the standard lib in wasm for instance.
Tiling is too esoteric to be the future of desktop computing IMO. Luckily that doesn't matter, and the people who enjoy it can use it while others can continue to use stacking WMs or whatever else people might prefer.
Yeah I agree about it being something that's done because you enjoy it. Talking about what's an efficient use of time is so strange to me though, not to single you out in particular. It's like we're pretending our lives are so hyper-optimized that everything is a delicate trade-off. I spend a few hours here and there messing around with my setup because I want it to feel nice to use. It's not like I traded a couple hours of productive programming time for that. Sometimes I spend a few hours watching a movie.
For me a snappy editor experience, and vim in general, is about comfort, not optimizing for some theoretical top editing speed. I don't think I'd be a drastically worse programmer if I were forced to use windows notepad to edit code, I would just be more uncomfortable all the time.
I find Coc.nvim plugins for neovim are virtually just as easy to set up as VS code plugins, VS code is a power hog and performs worse, and the vim bindings are rough around the edges with macros in particular. VS Code with a vim plugin is not a bad experience, but neovim+coc.nvim is just much snappier.
Hey cool! I wrote a similar thing[1] a while ago to revive an old Mario fan game written in VB6. It’s a VB6 to JS transpiler in Rust :) Basic is so nice to parse isn’t it? Guess it makes sense given the era it’s from.
I’ve been running Arch on a Razer Blade for a couple years now and it’s been great. Nvidia+linux is a risky move but I haven’t had any driver problems on this machine.
Making DST permanent in this context means never changing the clocks again. So what was once "daylight savings time" is now just "time" and no more clock changes. Just wanted to make sure you were aware, since your view is actually popular and your wish has been granted (if you live in the US).
In the original game, triangles are bucketed in a grid perpendicular to gravity. So to do collision, you take Mario’s position on that plane, do a 2d array lookup into a bucket, and then iterate over the few triangles that touch that bucket.
In the library version I just cut that system out to make my life easier while refactoring that stuff, but it would certainly be nice to do something better than ripping over every triangle at some point.
Cool to see this on HN, it's a project of mine. After the SM64 decomp team released their C source for SM64, I wanted a project I could do to become familiar with the SM64 codebase, so I decided to extract Mario into a library so he could be easily[1] dropped into arbitrary programs. libsm64-blender and libsm64-unity are examples I built for this library, but since Blender is used by people making SM64 ROM hacks, it turns out the blender plugin is actually quite useful to people.
Yeah sorry, I agree with you in spirit. I was mainly arguing against the idea that "IQ is useful" and "IQ measures the value of humans" have to either both be true or both be false. My reply is to the interpretation of your comment as "IQ doesn't and can't measure the value of humans, therefor it's not very useful," which might not have been your intent.
Don’t conflate intelligence with quality or value. Every human being is inherently valuable independent of their intelligence, and there are plenty of other interesting features besides intelligence that make people unique and interesting. Believing that IQ measures something tangible is not equivalent to ranking people based on their value any more than believing height or weight measure something real.
I don’t think it’s so much an illusion as it is just not quite as absolute as one might initially think. If you get a segfault in a rust program you know where to look.
If AD and BE don't intersect then the quadrilateral ADBE doesn't lie in a plane, and instead you have a curved surface there, which is not what you'd expect from the diagram. The idea is that if you assume all of these surfaces are flat, nothing lines up and the shape can't exist. Certainly you can make something that looks like this, but it won't have perfectly flat surfaces everywhere.
Private keys aren’t shared though. You never have to worry about leaking a secret when you authenticate with a key because the private key never leaves your machine.
Thanks for finally providing me with the source to this piece of wisdom that's been stuck in my head since I was a kid reading through some programming book I had. It's really stuck with me and I've been repeating it ever since, but I could never remember the attribution, just that I saw this quote in a book! I can't quite remember the book, but it was something like "Programming games with C++" and it came with a CD with a demo of Visual C++ 6.0 on it. Must have been around 2002-ish...
I agree with the spirit of your point, but I'd be hesitant to say you're "mastering" your 15th language if they are all jumbled together. It sounds like you've learned 15 languages, but mastery implies an extreme depth of understanding beyond the point of confusing minor details. I would bet you have at least one or two languages that you work in often that you never get this stuff confused for, and those are the ones you've mastered. The additional languages are subject to a sort of Jack-of-all-trades syndrome.
As someone who got into game development by making Flash games as a kid, I would love to see Flash open sourced. I don't think it's necessarily true to say they have nothing to lose by open-sourcing it though. Who knows how many private shared libraries are in there that are still required by other still-active Adobe software. And they're also probably not excited to give up rights to a massive pile of code which they could conceivably want to use in future projects.
In other words Flash likely isn't some isolated directory they can just zip and share to the world, and even if it is they might want to pick the bones later so why throw it away? (from their perspective)
More importantly if the server just accepts hashed passwords and stores them, then if you got ahold of a hashed password through a leak you could just use it directly to authenticate by modifying the client. The hashed password just becomes the password with one extra client-side step that you can trivially skip.
Salting is more about making it non-obvious which passwords map to which hashes so you can’t easily build tables of hashes for common passwords.
Sending the password to the server in “plain text” is fine over https, it’s a secure channel. Hashing isn’t meant to hide the password on the wire, it’s to prevent anyone with access to the database from learning what the passwords are.
I made the jump to full time linux in 2020, finally tired of all the Windows annoyances and realizing everything I use day to day runs fine on linux. If I hadn’t done it then I would certainly do it now with this ridiculous Windows 11 rollout.
It took a little bit of work but now my linux desktop works exactly how I want now, and Windows and macOS both feel strange to my muscle memory when I have to use them.
Worse in a really insidious way too. Optimizing based on engagement for instance could be maxxing the amount of time people spend using a service, while minning unseen variables people care about like their emotional state while engaged. It’s sort of an inevitable thing that optimizers do to things they don’t measure, and it’s an extremely difficult problem to put everything people care about into the equation. Like for instance, think of how horrible a polynomial fit gets for a function just outside the window you are fitting as you add more terms.