HNHacker News
TopNewBestAskShowJobs

jmathai

5,625 karma · joined May 6, 2009

https://jaisenmathai.com/

Current projects:

https://trysojourn

https://getpreppy.app

https://trywireshark.com

Personal sites:

https://github.com/jmathai

https://github.com/photo

https://linkedin.com/in/jaisenmathai

Contact:

jaisen@jmathai.com

submissionscomments
jmathai··on Which jobs are most vulnerable to AI?
In practice, is AI incapable of performing human-judgement ... at the levels most humans do?
jmathai··on Generate tests from GitHub pull requests
I think Claude Code can write very good end to end tests given the right constructs.

I have been building a desktop app (electron-based) which interacts with Anthropic’s AgentSDK and the local file system.

It’s 100% spec driven and Claude Code has written every line. I do large features instead of small ones (spec in issue around 300 lines of markdown).

I have had it generate playwright tests from the start. It was doing okay but one thing made it do amazing. I created a spec driven pull request to use data-testid attributes for selectors.

Every new feature adds tests, and verifies it hasn’t broken existing features.

I don’t even bother with unit tests. It’s working amazing.

jmathai··on Claude Code Voice Mode
Slightly related. Something I love to do is to tell Claude to generate a detailed explanation of a topic I want to learn more about (recently, it was Donor Advised Funds).

If I’m going to pick my kids up then I tell it to make it 10 minutes when read aloud. Then I listen to that on my drive.

jmathai··on Files are the interface humans and agents interact with
I have used this approach with exiftool to add custom tags for “album”.

https://stackoverflow.com/a/68284922

Here is my source file for it. It was so long ago I don’t recall all the details but you can retrieve this information using exif commands.

https://github.com/jmathai/elodie/blob/master/configs/ExifTo...

jmathai··on Cloud VM benchmarks 2026
Racking your own hardware doesn’t get you web UIs and APIs out of the box. At least it didn’t 2 decades ago.
jmathai··on Filesystems are having a moment
Ha! I totally get it. Use it for inspiration though!
jmathai··on Filesystems are having a moment
I've avoided using XMP sidecars. Mostly because I don't want to have to worry about two files for every photo. And I don't think they're ubiquitously supported like EXIF.

Thanks for starring the repo and let me know if you need any help.

jmathai··on Files are the interface humans and agents interact with
My 10+ year old photo management system [1] relies on the file system and EXIF as the source of truth for my entire photo library.

It’s proven several times over that it’s the correct approach. Abstractions (formerly Google photos, currently Immich) should just be built on top - but these proprietary databases are only for convenience.

For work, I’m having the same experience as the author and everything is just markdown and csv files for Claude Code (for research and document writing).

[1] https://github.com/jmathai/elodie

jmathai··on When AI writes the software, who verifies it?
> But it is good enough for people to get what they want out of it.

This is the ONLY point of software unless you’re doing it for fun.

jmathai··on How I use Claude Code: Separation of planning and execution
You’d be building blocks which compound over time. That’s been my experience anyway.

The compounding is much greater than my brain can do on its own.

jmathai··on Thank HN: You helped save 33k lives
Watsi remains the most inspiring things that’s happened on Hackers News since I joined. Well done Chase and Grace!
jmathai··on uBlock filter list to hide all YouTube Shorts
Turn off history. Completely disables the food. The only content you see is what you search for.
jmathai··on Something Big Is Happening
I'm pretty pragmatic and resist AI hype. However, I am in the camp that the tools we've built do not maximize the potential of the LLMs we have today.

I see 2 things happening in parallel.

1) Tools on existing LLMs continue to improve (cursor -> claude code).

2) The LLMs themselves improve which makes existing tooling better and results in new tooling to take advantage of the improvements.

I'm not sure when I see either of these slowing down and they've been accelerating at a very rapid pace. Perhaps when the funding dries up.

I think that's the question but I believe if we don't have any more LLM improvements that we still have a couple years of tooling improvements using what's there today.

I'm sort of surprised that coding is a leading use case but do not see any reason it would not spread to other industries (what the OP is saying).

jmathai··on Listen to Understand
It’s great advice.

If you can be intentional going in to a conversation then I think the chances to serving the other person through listening becomes much higher.

It’s truly a gift…offering someone your time and attention. Possibly the most valuable gift you can give - I don’t mean that facetiously.

The Gottmans talk about bids for attention. It’s random comments inviting the other person to engage.

This sounds really similar.

jmathai··on Launching the Rural Guaranteed Minimum Income Initiative
Thanks. We are involved in The Healing Center locally and that’s definitely a place to lean in on “more heavily”.

https://www.healingcentercincinnati.org/

jmathai··on Launching the Rural Guaranteed Minimum Income Initiative
> all we want to do is advance the concept of direct cash transfer

I love the simplicity of this. I've been thinking a lot about generosity myself.

And while I don't have $100m, our family also has everything we need. What ideas, resources and tools are there for folks like me who want to be as generous as possible with what we have?

To start, I've set up a Donor Advised Fund because I learned that it's a great way to do something with a bunch of appreciated stock that I don't want to pay taxes on. What other tips do you all have?

jmathai··on Qwen3-Coder-Next
Probably because the alternatives are OpenAI, Google, Meta. Not throwing shade at those companies but it's not hard to win the hearts of developers when that's your competition.
jmathai··on Ask HN: Anyone else struggle with how to learn coding in the AI era?
I learned all of my programming outside of university and textbooks. It’s one way to learn. Not the only way though - and it has its limits - but you can get pretty far.

But here is my advice. Learning by doing with AI seems akin to copying source from one location (I.e. view source, stackoverflow).

My tips:

- Understand all of the code in a commit before committing it (per feature/bug).

- Learn by asking AI for other ways or patterns to accomplish the something it suggests.

- Ask Claude Code to explain the code until you understand it.

- If code looks complex, ask if it can be simplified. Then ask why the simple solution is better.

- Tell AI that you’d like to use OOP, functional programming, etc.

One way to measure if you’re learning is to pay attention to how often you accept AI’s first suggestion versus how many times you steer it in a different direction,

It’s really endless if your mindset is to build AND learn. I don’t think you need to worry about it based on the fact you’re here asking this question.

jmathai··on Two kinds of AI users are emerging
You can split the second group into two sub-buckets.

Junior devs: who have limited experience or depth in knowledge. They are unable to analyze the output of AI coding agents sufficiently to determine long term viability of the code. I think this is the entirety of who you're speaking of.

Senior devs: who are using it for more than a basic task executor. They have a decade+ of experience and can quickly understand if what the AI coding agent suggests is viable long term or not. When it's not, they understand how to steer it into a more appropriate direction.

jmathai··on My ridiculously robust photo management system (Immich edition)
That's not my philosophy :)
jmathai··on My ridiculously robust photo management system (Immich edition)
Maybe I’m misunderstanding what you’re looking for. Rclone has a Google Photos backend and an S3 backend. I haven’t used it but assumed you could simply copy from Google Photos into S3.

https://rclone.org/googlephotos/

jmathai··on My ridiculously robust photo management system (Immich edition)
This specific plugin was purely written by Claude Code, correct. The prior 10k lines of python were not.

Without Claude Code, the plugin would probably only exist in my imagination.

I don’t personally care who writes the code. There’s plenty of contributors already.

jmathai··on My ridiculously robust photo management system (Immich edition)
I found Immich to be significantly higher quality. Nothing prevents you from running Immich in a newer synology which support containers.

Mine is so old that it doesn’t and it’s also under powered - else I’d be running Immich on it.

jmathai··on My ridiculously robust photo management system (Immich edition)
Between storage templates and external libraries, Immich covers so many bases.
jmathai··on My ridiculously robust photo management system (Immich edition)
I did say it was robust…

I include video [1] and audio (.m4a) [2] files via EXIF.

For text files [3], I add a JSON block at the top to mimic EXIF.

I don’t want to deal with an additional sidecar file per asset. The risk of losing one during a transfer between systems is too high. It’s a conscious decision and not an oversight.

[1] https://github.com/jmathai/elodie/blob/2645bf25b81c63f65d6f1...

[2] https://github.com/jmathai/elodie/blob/master/elodie/media/a...

[3] https://github.com/jmathai/elodie/blob/master/elodie/media/t...

jmathai··on My ridiculously robust photo management system (Immich edition)
rclone. https://rclone.org/
jmathai··on Finland looks to introduce Australia-style ban on social media
I wish the same would happen for games like Roblox. These games suffer from all the same problems social media does.
jmathai··on My ridiculously robust photo management system (Immich edition)
There's a `--trash` option for the import command. It's not the default behavior though. I recommend deleting the source photos once you've verified Elodie has organized the photos how you'd like.
jmathai··on My ridiculously robust photo management system (Immich edition)
You mean because the hash of the photo changes?

I've solved that by materializing every photo to a deterministic folder path. So it's not possible to have the same exact photo in my library.

jmathai··on My ridiculously robust photo management system (Immich edition)
I solved the "one photo in multiple albums" EXIF problem by using Keywords. Each album is a Keyword.

But yes, there are some other limitations that would be much harder to solve. But it's a tradeoff I've decided to make - if I can't figure out an EXIF-based solution then I'm not going to invest time using it because it will likely be lost in 5-10 years.

← PreviousPage 8 of 34Next →