HNHacker News
TopNewBestAskShowJobs

vaishnavsm

297 karma · joined June 11, 2021

i just wanna build cool stuff https://linkedin.com/in/vaishnavsm
submissionscomments
vaishnavsm··on Why Hitting an Old TV Fixed It? [video]
Amidst all the slop videos nowadays, I find this format oddly refreshing.
vaishnavsm··on Flowise is shutting down
I feel like there's a fundamental shift in the user interface that's causing this. People are starting to expect an "agentic interface" - that they are able to give kinda vague inputs and nudge things to work in a way they like, over the traditional experience of having increased clarity at the cost of increased setup (drag and drop, many UI first interfaces, etc).

I was editing a google doc yesterday and found it annoying that i had to find the "link" option from the context menu instead of just saying "turn links into links" and moving on.

This imo impacts everyone, regardless of how developer-ey you are. Perhaps non-devs expect a "friendlier"/more "agentic" interface now? Don't have the right vocabulary to explain.

vaishnavsm··on Better Auth is joining Vercel
If you're willing to take the pain of setting up an actual authz model, I've found OpenFGA^ to be really nice. We used it to set up some pretty complex authz involving cross-agent/user/org creation and sharing of data. It's not _simple_, but it is effective.

It's Apache 2.0 and a CNCF incubating project.

[^] https://openfga.dev/

vaishnavsm··on Better Auth is joining Vercel
I really want to love KeyCloak. I've had really bad experiences with weird uptime bugs and crash loops that kept me from giving it an honest retry over the last couple years.

It also really shows its age, imo. The interface is clunky, roles and groups having overlapping responsibilities is confusing, making custom UIs for it makes me feel ancient, etc.

I really can't complain though. There is simply no alternative that's as open atm. It's also not easy to make one ( I tried :( ).

vaishnavsm··on Better Auth is joining Vercel
Keycloak and Better Auth aren't as fundamentally different as you may think! Better auth supports authn/z, being an identity _source_, being an identity provider, being an OIDC/SSO provider (so others can login using better auth), rbac, SAML/SCIM, and a ton more. It's actually really powerful! Most folks found better auth as an alternative to next-auth/auth.js - but better auth does a lot more than those.

(some of those features are enterprise only)

vaishnavsm··on Zed 1.0
ECS really isn't scalable. imo a multi-account EKS cluster is a bare minimum. It's what I use for my todo list app, and it works great!
vaishnavsm··on Pre-commit lint checks: Vibe coding's kryptonite
This seems to be focused on Python, but for all the TS devs out there, what you'll see will be implicit `any` errors. Quick word of warning on having LLMs fix those - they love to use explicit `any`s or perform `as any` casts. This makes the lint error disappear, but keeps the actual logic bug in the code.

Even if you ask it not to use any at all, it'll cast the type to `unknown` and "narrow" it by performing checks. The problem is that this may be syntactically correct but completely meaningless, since it'll narrow it down to a type that doesn't exist.

The biggest problem here is that all of these are valid code patterns, but LLMs tend to abuse them more than using it correctly.

vaishnavsm··on Show HN: A Marble Madness-inspired WebGL game we built for Netlify
There's an easy shortcut in the second level past the climb on the pink pipe and before you climb the ramp where you can jump to the semi-circle on the lower platform on the other side. Love it!
vaishnavsm··on Stackoverflow Is Down?
Looks like the scheduled maintenance led to unexpected downtime?
vaishnavsm··on Ask HN: Are there any open source forks of nomad and consul?
OpenBao[0] is a fork of Vault under the Linux Foundation

[0] https://openbao.org/

vaishnavsm··on How HEAD works in Git
> merge conflicts: <<<<<<< HEAD is just confusing

This section in particular piques my interest. I never found this confusing, since the change in HEAD is just representative of the order of operations (in rebase, you are setting the current commits "on top" of the commit you are rebasing onto, etc). This feels like what is confusing isn't really HEAD itself, it's a fundamental understanding of the git model?

I feel like folks using git without understanding the basics of what it does is what leads people astray? If so, why isn't this part of our basic training as engineers who use git?

vaishnavsm··on A Practical TLS Handshake Walkthrough
Hey folks!

I wrote this based on an office discussion on TLS, and because resources I found on TLS were all pretty surface level.

This is the first time I've tried to write a technical blog post, so I'm looking for all the feedback I can get!

vaishnavsm··on Deadly heart attacks are more common on a Monday
It would be really interesting to see whether this holds in Middle Eastern countries or other places where the work week starts on a Sunday.
vaishnavsm··on Tell HN: Google search partial outage while rolling out new search?
Just searched for Docker Swarm, and got [0] one "People also ask" card, one section for images, some related searched, and a button that says "More Results" that doesn't work. Moreover, the formatting of the CSS in the footer also looks weird. Seems like there's definitely been some issue with the deployment.

Edit: using brave and chrome on an Intel Mac, same results for both.

[0] https://imgur.com/a/CA5IB77

vaishnavsm··on Launch HN: Codeparrot (YC W23) – Automated API testing using production traffic
Oh wow, we're building something very similar to this. We were literally just filling up the YC form for S23 too haha. I may be a bit biased, but I think this is an excellent idea, and it can change the way testing works for backend services. We were inspired by Meticulous, too! Hope we can learn from y'all as well :)
vaishnavsm··on Launch HN: Shimmer (YC S21) – ADHD coaching for adults
Congrats and good luck on the launch!

Ok so in general I'd chalk this up to being disinterested, but I think this is relevant for a product meant for people with ADHD:

After a couple pages of choices, I was met with a screen with options A through K, and I instantly closed the tab. I didn't even read what it was asking. I realised that this may literally be ADHD like behaviour, so I opened it back up again, but it was still quite overwhelming and it took conscious effort to read through the form. I think this is just because I'm used to just entering my email and password, or using social logins, so filling the form seemed to be a substantial point of friction (even though I realise how it could be useful)

I'm unsure if I have ADHD, and it's never been a problem for me, but I sure do have a short attention span haha

vaishnavsm··on StackOverflow Is Down
There goes my morning of work /s
vaishnavsm··on System76 Lemur Pro Linux laptop with 14 hours of battery life
To be fair, it'll probably be a lot easier to replace the battery on that dell (and the system76, I imagine?) than on the Macbook. That evens things out even if the battery doesn't last.
vaishnavsm··on Wild turtles age slowly, and some basically don’t age at all
Correct me if I'm wrong, but shouldn't the criterion be that the probability of death is the same between 80-90, 90-100, and so on (for example) to say that humans stop aging after 80?

Saying that your chance of dying is 50% after 80 != saying it's the same consistently after 80?

vaishnavsm··on Deno raises $21M
Agreed! I'm pretty sure they're just using O(x) to mean on the order of x, since big O of any constant is the same (unless that's their point??? :O)
vaishnavsm··on Deno raises $21M
I think Sun Microsystems IPOd
vaishnavsm··on Bad but interesting mathematical notation idea
A similar idea was put forth on the math stack exchange [1], which I found through this 3blue1brown video [2]. Worth a read/watch!

[1] https://math.stackexchange.com/questions/30046/alternative-n...

[2] https://www.youtube.com/watch?v=sULa9Lc4pck

vaishnavsm··on We lost 54k GitHub stars
Doesn't ON UPDATE only work for foreign keys? As far as I know, it's used to update the foreign key itself, and not values based on relationships.
vaishnavsm··on We lost 54k GitHub stars
I meant to focus on the cascade part of the equation here. For example, lets say `stars` are foreign keyed (FKed henceforth) to repos, and (say) `X` are FKed to `stars`, and `Y` is FKed to `X`. Then if you do a "hard" delete of the repo status (or the stars), then we can set that to cascade to `X` and `Y` as well. Otoh, I don't think you can apply a cascade like that automatically when you're just changing a value (which is how a soft delete would be implemented, ig). Can you? Is there some really cool hook that allows this?
vaishnavsm··on We lost 54k GitHub stars
Not sure what you meant? Are you pointing out couldn't vs didn't? If so, I didn't really think about it, although now that you point it out, I think didn't would've been a better fit. I'll edit it, thanks!
vaishnavsm··on We lost 54k GitHub stars
I agree that undos are pretty nice for when errors are possible, but I think there's a really good reason to put up warnings too. Let's say they accidentally made the repo private, but didn't notice it (unlike what happened here). Although you would be able to undo the change, it may have only kicked in once the news spread around (followed by reputation damage, etc). A well worded warning would prevent that.

In a way, I think warnings and undo serve two different functions-warnings are meant to inform the user of their action, and undos are meant to roll back actions taken.

vaishnavsm··on We lost 54k GitHub stars
Sure, I understand that. But I think, as a designer, I can't really control the actions of my users. I can only try to design such that I can get them closer to the action they want to take. From that perspective, I think adding the additional information to the warning UI would, if not solve the problem, at least get us one step closer to helping the user make the right decision.

Tbh, when I've deleted repo's, I've mostly just copied the repo name and pasted it in the box. Careless of me? Definitely. Can GitHub change that carelessness? Probably not. Will a box that says "Stars: 54k" help? I think it'd help me, at the very least.

vaishnavsm··on We lost 54k GitHub stars
I really like this post.

While the author clearly feels bad about the fact that they've lost his community and that GitHub didn't restore it (which is honestly what any of us would've felt under similar circumstances), they're also focusing towards the future and using their personal experience as a parable all of us can learn from.

Lesson 1 on UI design I think is really important. I often think scary popup boxes are enough to get people to think about what they're doing, but this example clearly demonstrates that what's important is to use design not to scare (alone?), but to convey the information which makes a dangerous action dangerous as well. I also really like the fact that when the action isn't dangerous, the distractions ("Type this repo's name", etc) just go away. It's super intuitive, and (for a newbie designer like me) really helps build an intuition for various design principles put in action.

Lesson 2, which was to use soft deletes, is something I have more thoughts about. I assume that the cascading done on GitHub would be done on a FK constraint, but I'm not really sure how you'd do a "cascading soft delete" without making some kind of manual cascading logic? If anyone's aware of a standard way to accomplish this, please do let me know. Of course, the best way may just be to simplify the model so they aren't needed at all haha.

As designers and developers we've been given a chance to sharpen our toolkit. Thanks, HTTPie! You've gained a new star :)

Edit: Changed GitHub couldn't restore to GitHub didn't restore, as pointed out by @ncmncm (https://news.ycombinator.com/item?id=31033758#31034195)

vaishnavsm··on Lessons Learned after $5B of M&A
I had to devtool remove it. Fortunately, they didn't obfuscate the popup like many seem to do nowadays.
vaishnavsm··on Ask HN: Who wants to collaborate?
You can also add page versioning and forks to this!

If I want to see an older version of the page I like: click click click I have a (like really) permalink

If I wanna modify a page that someone else made, fork and edit!

It's like Github, but for our pages!

(too many exclamations smh)

Page 1 of 2Next →