HNHacker News
TopNewBestAskShowJobs

hardwaregeek

8,419 karma · joined February 27, 2017

Formerly at Vercel, Rome. Interned at Cloudflare (2020-2021), Microsoft (2019)

Interested in compilers and programming languages

GitHub: nicholaslyang Email: nick@nicholasyang.com Twitter: @NicholasLYang

submissionscomments
hardwaregeek··on Microsoft is officially sending employees back to the office
Yeah it’s tricky because there’s often a senior/junior dynamic here. Junior people really do benefit from structure and in person mentorship. They also tend to have worse home office setups and more free time. Whereas senior people tend to have families and nicer home offices, so understandably they don’t want to commute in. I’m sympathetic to both and realistically I don’t think management is acting in good faith. But I do think remote work benefits seniors at the cost of juniors
hardwaregeek··on Microsoft is officially sending employees back to the office
I have mixed feelings cause on one hand moving from a remote first company to a primarily in person one has made a material difference in my general satisfaction and engagement. But also I wouldn’t want it to be forced. I like having the choice to work remote. And I like having coworkers who can work remote if they wish. I know many great engineers who live outside of the standard tech hubs and realistically won’t move to them. But for me remote work felt isolating and made my home feel too much like my office
hardwaregeek··on Malicious versions of Nx and some supporting plugins were published
That’s called the original Go package manager and it was pretty terrible
hardwaregeek··on Waymo granted permit to begin testing in New York City
Because there’s still someone in the car, they just have no way to defend themselves. You can tailgate and honk at them to your heart’s content. Well at least until they call the police but that’s pretty far. And there are other forms of aggression that do accomplish something. If you cut a Waymo off or beat it to merge, you get ahead of it. In some locales I could see a whole series of cars merging ahead of a Waymo if people are aggressive enough.
hardwaregeek··on Waymo granted permit to begin testing in New York City
I’m curious if autonomous cars will become targets for aggressive drivers. Like a driver isn’t going to be as scared cutting off a Waymo or tailgating one because the AI isn’t gonna get road rage or honk like hell. In some places I could see the Waymo’s getting severely bullied if that’s the case.
hardwaregeek··on Waymo granted permit to begin testing in New York City
Yeah I’m skeptical that robots will ever be perfect drivers but the bar isn’t perfect it’s better than human and that’s certainly possible.
hardwaregeek··on Vibe coding tips and tricks
My mental model for LLMs is that they’re a fuzzy compiler of sorts. Any kind of specification whether that’s BNF or a carefully written prompt will get “translated”. But if you don’t have anything to translate it won’t output anything good.
hardwaregeek··on OCaml as my primary language
I like Reason syntax and I wish it was more common, but I think if you want to engage in the OCaml community it’s probably better to just bite the bullet and use the standard syntax. It’s what almost everybody uses so you’ll need to understand it to read any code or documentation in the ecosystem
hardwaregeek··on OCaml as my primary language
Wouldn’t Kotlin be a more reasonable choice in that case? It has ADTs and a lot of the same niceties of Rust.
hardwaregeek··on GitHub is no longer independent at Microsoft after CEO resignation
They could add stacked diffs, large monorepo features (allow user to view a slice of a repo), better submodule support (why can’t I PR multiple repos at once?). A good desktop app that is faster than the slow web client.
hardwaregeek··on Zig's Lovely Syntax
My immediate thought was hmm, that's weird but pretty nice. The indentation problem indeed sucks and with a halfway decent syntax highlighter you can probably de-emphasize the `//` and make it less visually cluttered.
hardwaregeek··on Zig's Lovely Syntax
Everyone agrees that "syntax doesn't matter", but implicit in that is "syntax doesn't matter, so let's do what I prefer". So really, syntax does matter. Personally I prefer the Rust/Zig/Go syntax of vaguely C inspired with some nice fixes, as detailed in the post. Judging by the general success of that style, I do wonder if more functional languages should consider an alternative syntax in that style. The Haskell/OCaml concatenative currying style with whitespace is elegant, but sufficiently unfamiliar that I do think it hurts adoption.

After all, Rust's big success is hiding the spinach of functional programming in the brownie of a systems programming language. Why not imitate that?

hardwaregeek··on How to get started with writing tech video essays
Check out this video: [1]. It's one of my favorite videos on YouTube. It covers instructional design from a YouTube perspective in a thorough, thoughtful manner.

[1]: https://www.youtube.com/watch?v=aBUy0z5HNlY

hardwaregeek··on C++ to Rust Phrasebook
The rationale is probably that it’s better for C++ devs to write non idiomatic Rust than to keep writing unsafe C++. Like unless they use unsafe and completely circumvent the borrow checker, it’s still gonna be safer. Not letting perfect be the enemy of good and all.

Plus idiomatic rust isn’t that strict a definition. Clippy will guide you for most of the simple stuff and the rest isn’t always worth following. Like people who try to do stuff “correctly” with traits often end up with way more complexity than it’s worth.

hardwaregeek··on You can choose tools that make you happy
People underestimate how much of software engineering is subjective touchy feely decisions. But really it's just a nature of being in a field with so many possible options and so few hard constraints. You can write your web app/cli in Java, Go, Rust, JavaScript, Ruby, Python, etc, each of them with reasonable justifications. You can deploy to AWS, Vercel, GCP, Azure, Cloudflare, etc. You can use Postgres, Mongo, SQLite, MySQL, etc. Is there any actual evidence that one stack is better than another? No, not really. It's ultimately up to what your brain decides it likes, and then it fills in the arguments post-facto.

It's just that software engineers like to pretend they're fully rational beings and don't go off of subjective reasons like the rest of society.

hardwaregeek··on OCaml's Wings for Machine Learning
I'd disagree about syntax. It really does matter. So much of Rust's success is tricking people into writing a functional style while having it look like an imperative language. OCaml syntax isn't bad per se but it's unfamiliar and that's enough to discourage users.
hardwaregeek··on Chongqing, the Largest City – In Pictures
12 years is an eternity in China. I went in 2008-2010 and it was completely unrecognizable compared to 2018. I imagine 2025 is completely different too
hardwaregeek··on Ask HN: Memory-safe low level languages?
If performance is not ultra critical, I'd use Go. It's simple and a small-ish language. Otherwise there's not many options. Not to belittle your question, because it's a good one, but it's a little like asking if there's a simpler aircraft. There can be, but there's a certain amount of required machinery to keep it in the air. Rust's memory safety rules are as simple as we can get it for now. Maybe in a few years it'll be different!
hardwaregeek··on Rules for Negotiating a Job Offer (2016)
With most tech career advice on the internet, I would check to see if it was written before 2022. If so, I'd take it with a grain of salt. I wrote tech advice in the ZIRP times. It was a very different market. Negotiation is still a valid tactic but there's a lot more to lose and a lot fewer offers than in 2021.
hardwaregeek··on Why I don't discuss politics with friends
A lot of people are in a particular tribe because they literally cannot be in the other tribe because the other tribe sees them as subhuman, as people who should be deported, who should lose their rights, etc. A lot of them realize that they're in a tribe and don't particularly like it, but since the political system is set up in a way where you can't reasonably have more than two parties, they don't have a choice.

Basically, the author is making it seem like everyone other than a select few are tribal idiots, but that's a fundamental outcome of our political system. You can pick and choose your policies, but at the end of the day, you're voting for one of two parties.

hardwaregeek··on Can Style Be Timeless?
Lululemon is tech wear so that’s somewhat surprising. I’d say that if you’re biking, you probably don’t want formal slacks. But more expensive clothes are not inherently more durable. It’s a good way to sell clothes to people who need an objective justification to spend more, but it’s not always true. You spend more because you want a specific aesthetic, you want clothes that fit a certain way, you want stuff produced ethically and not in sweatshops. Sometimes they’re more durable but not always. Linen for instance is always fragile, no matter how expensive.
hardwaregeek··on Can Style Be Timeless?
Where did you buy these clothes? Were they the right size? If they're wool slacks, I could see them being a little more delicate but regardless that sucks.
hardwaregeek··on The average college student today
Yep! Like how except for gym class, school should be mostly in classrooms
hardwaregeek··on The average college student today
CS at the lower levels should be programming and playing with computers. What else should it be? Analysis of algorithms? That sounds dreadfully boring for a high schooler
hardwaregeek··on The average college student today
Call me old fashioned, but I don't think it'd be that bad for schools to be almost completely analog. Obviously not for classes like CS, but do math class es or English classes really need computers? The whole "digital learning" push feels like it hasn't resulted in significantly better learning than with a book, pen, and paper.
hardwaregeek··on The average college student today
That's part of it, but the author acknowledges that college has been transactional for quite a while. What has exacerbated the issue was COVID and the rise of extremely potent, addictive social media. I wouldn't be surprised if we look back on social media as the digital equivalent of children drinking and smoking weed, i.e. something that causes permanent damage to one's brain.
hardwaregeek··on Finding Signal in the Noise: Machine Learning and the Markets (Jane Street)
I love this podcast but I can’t listen to it while running. It’s too interesting so I risk falling off the treadmill :D
hardwaregeek··on Effective Rust (2024)
Rust's syntax isn't gonna win any awards, but it looks sufficiently like C++ to hide that Rust is essentially an ML variant with linear types.
hardwaregeek··on TypeScript types can run DOOM [video]
A strict theoretical regex yes, but a lot of regex implementations in practice are not strict NFA/DFAs and may indeed be turing complete
hardwaregeek··on Basketball has evolved into a game of calculated decision-making
Ironically Steve Nash didn't shoot enough 3s, so his Nash equilibrium was pretty off.

In all seriousness, yes, there's a lot more to modern basketball than just "take more 3s". It's more like "try to get dunks and layups, but if that doesn't work get 3s, but also mid range is still valuable if it softens up defense". And defenses have learned to scramble and switch to cover a lot of 3 pointers, but that can still be exploited with cross court passing and switch hunting. Check out some cool plays here: https://www.youtube.com/watch?v=qo-V_ujmMFo

← PreviousPage 2 of 29Next →