Sign in

DJ Majumdar

@deepjoy.com
21 followers 20 following 54 posts
PostsRepliesMedia
DJ Majumdar @deepjoy.com · 16/03/2026
I once deleted my auth server secrets and locked myself out of everything. Spent hours looking for some sophisticated intrusion before realizing I just... deleted the file. The more you know, the harder you look in the wrong places.
120
DJ Majumdar @deepjoy.com · 16/03/2026
100%. Juniors go "let me check the obvious thing." Seniors go "no way it's that simple, let me build a mental model of every possible failure mode" and then it's the obvious thing. Every. Single. Time.
110
DJ Majumdar @deepjoy.com · 16/03/2026
A year of blaming drivers and thermals. Microsoft out here turning us all into detectives for problems they quietly created. Glad you found it, but damn, that's a lot of lost hours for a single registry key.
100
DJ Majumdar @deepjoy.com · 16/03/2026
"Human problems over the All-Seeing Eye" is my entire infra philosophy. 10 years of self-hosting and the worst thing that's happened is me deleting my own auth secrets and locking myself out. Still better than a "we've updated our terms" email.
000
DJ Majumdar @deepjoy.com · 10/03/2026
S3 API underneath, so rclone, AWS CLI, and any SDK work too. ~10MB binary. Files stay exactly where they are. If you run a NAS or home server and want to try it before launch, reply or DM me your setup. github.com/deepjoy/shoebox
github.com
GitHub - deepjoy/shoebox: A Rust application providing S3-compatible object storage backed by local filesystem and SQLite metadata.
A Rust application providing S3-compatible object storage backed by local filesystem and SQLite metadata. - deepjoy/shoebox
020
DJ Majumdar @deepjoy.com · 10/03/2026
The twist: I built this to find duplicate photos. That meant building an S3 server. Then I realized a terminal can't show you which photos are duplicated, so I built a companion webapp too. One curl command enables CORS. Point your browser at your Shoebox instance. deepjoy.github.io/shoebox-webapp
deepjoy.github.io
Shoebox
100
DJ Majumdar @deepjoy.com · 10/03/2026
Ran Shoebox against a directory. 106K files, 71 GB. It found 18,847 duplicates hiding in 581 folders. 8.2 GB reclaimable. Here's what that looks like in a browser. Open source, MIT licensed. #buildinpublic #rustlang #selfhosted #selfhosting
The Shoebox application's Buckets page. A card displays a bucket named "backup" with a database icon. It shows 106,715 files and 71.4 GB of storage. Highlighted in amber are three warnings: 18,847 duplicate files, 581 duplicate folders, and 8.2 GB reclaimable.
170
DJ Majumdar @deepjoy.com · 09/03/2026
The real comparison isn't "laptops at this price point." It's "laptops that will still work in 6 years at this price point." And that list is very short.
000
DJ Majumdar @deepjoy.com · 09/03/2026
This is the right distinction. My whole setup is the second kind. All local. Nothing phones home. If my modem dies, the lights still automate. If my router dies, that's a different story, but I keep a spare for that too. The "needs internet" is a business model choice, not a technical requirement.
700
DJ Majumdar @deepjoy.com · 09/03/2026
They don't need to be connected to the internet. That's the whole point. My light switches and thermostat run on Zigbee through Home Assistant, completely local. If my internet goes down, everything still works. The problem was never "smart." The problem is cloud.
010
DJ Majumdar @deepjoy.com · 09/03/2026
Enterprise hardware doesn't retire. It just gets interesting.
011
DJ Majumdar @deepjoy.com · 09/03/2026
The real move is when you find the flag you need buried in a test file that was never mentioned in the docs. Peak open source experience. AI turning "read the source, Luke" from a mass punishment into something actually doable is a solid win.
000
DJ Majumdar @deepjoy.com · 09/03/2026
Yeah the model didn't fail, it got bought. I'd love to see someone to prove a sustainable middle ground exists. Pay for the thing, get the thing, dev still eats. But every attempt flames out or gets swallowed by a bigger fish. The problem isn't the model, it's the incentives around it.
130
DJ Majumdar @deepjoy.com · 09/03/2026
Did this for years. Can confirm. Email is the one self-hosting hill I eventually climbed back down from. Still self-host literally everything else. But email? Nah. Life's too short.
000
DJ Majumdar @deepjoy.com · 09/03/2026
Same arc here. Ran Postfix and Dovecot for years, had SPF/DKIM/DMARC all set up correctly, and still played whack-a-mole with blacklists. The technical part was fine. The political part, convincing Google you're not spam just because you're small, that's the part nobody warns you about.
010
DJ Majumdar @deepjoy.com · 09/03/2026
Aseprite is the exception that proves the rule. One dev, passion project, $20 forever. But updates still cost labor. The real split is FOSS (labor of love) vs subscription (labor for profit). Everyone wants a third option. Nobody's found one that sustains even 2-3 long term.
110
DJ Majumdar @deepjoy.com · 09/03/2026
That missing middle between corporate subscription bloat and FOSS-with-no-maintainer is so real. But, people are building in that gap more than you'd think. I came across github.com/terraincognita07/ovumcy recently. It's exactly "does one thing, doesn't spy on you" software you're describing.
github.com
GitHub - terraincognita07/ovumcy: Self-hosted menstrual cycle tracker. Privacy-first, Docker-ready, beautiful. Track periods, predict cycles, own your health data.
Self-hosted menstrual cycle tracker. Privacy-first, Docker-ready, beautiful. Track periods, predict cycles, own your health data. - terraincognita07/ovumcy
000
DJ Majumdar @deepjoy.com · 04/03/2026
The "taking my data back" framing resonates. I've been running a reverse tunnel into Docker Traefik for years. Same itch, just wired it up myself. Pangolin looks like a nice way to get there without the custom plumbing, especially at 90 services.
000
DJ Majumdar @deepjoy.com · 04/03/2026
That's the best way to build. Solve it for yourself first. The local history angle really sets it apart from the usual community platforms. Looking forward to seeing where it goes!
020
DJ Majumdar @deepjoy.com · 03/03/2026
I moved my cameras to wired PoE Reolink. Completely offline and have solid open source NVR support (Frigate). Reolink also makes a video doorbell that might fit the bill: reolink.com/us/product/r... . I picked one up but haven't installed it yet so can't vouch for it firsthand. Worth a look though.
reolink.com
Reolink Video Doorbell WiFi | 5MP HD Smart Doorbell Camera
Shop the Reolink Video Doorbell WiFi – 5MP 2K+ HD, night vision, two-way audio, and smart person/package detection for ultimate home security.
010
DJ Majumdar @deepjoy.com · 03/03/2026
The "tedious" part is a feature. I run a home server with btrfs RAID 10, NextCloud, the works. could use a managed service for any of it, but owning the pipeline end-to-end means when something breaks, you actually understand why. Respect the no-CMS choice.
000
DJ Majumdar @deepjoy.com · 03/03/2026
Privacy is what kept me away from Synology too. Been self-hosting on Btrfs RAID 10 for about a decade. The tradeoff is you're on your own for the software layer. Does UGOS Pro support encryption now?
000
DJ Majumdar @deepjoy.com · 03/03/2026
Congrats on the release! Love the idea of map-linked local posts. What inspired the hyperlocal focus — was there a specific gap you were trying to fill vs. existing community platforms like Nextdoor or local Facebook groups?
110
DJ Majumdar @deepjoy.com · 26/02/2026
Started this to find duplicate photos. But "any S3 client works against your local files" turns out to solve problems I wasn't thinking about. Open source, MIT licensed. Curious what people would connect to a local S3 endpoint. What's your first tool?
000
DJ Majumdar @deepjoy.com · 26/02/2026
This is why open standards matter. I built a storage server for local files. I didn't write a single line of integration code. The S3 spec did the work. Same reason the AT Protocol matters here, interoperability you don't have to negotiate for.
200
DJ Majumdar @deepjoy.com · 26/02/2026
Lesson from three weeks of building: the most valuable thing about S3 isn't S3. It's that every tool already speaks it. Build to standard and rclone, Cyberduck, boto3, the AWS CLI all work on day one. No plugins. No integrations. Just the protocol. #buildinpublic #rustlang #selfhosted #selfhosting
A nighttime photo of a large tech company campus. In the foreground, there's a oversized green Android mascot statue standing on decorative blocks, arms outstretched in a welcoming pose. Behind it, a modern glass-walled office building is lit from within, revealing open workspaces across multiple floors. The company's logo is displayed prominently on the building's facade. Colorful bicycles are parked along a walkway to the right, and landscaped plantings border the curved paved paths. The scene has a quiet, after-hours feel with the building's interior lights contrasting against the dark sky.
241
DJ Majumdar @deepjoy.com · 26/02/2026
Honestly? Trusting the scanner with real data. I had a data corruption incident even with RAID 10. That taught me the scanner had to be read-only and non-destructive above all else. No moving files, no reorganizing. Just indexing what's there before writing anything.
000
DJ Majumdar @deepjoy.com · 24/02/2026
Also shipped since Thursday: multipart uploads (any file size), CopyObject, tagging, conditional requests. rclone and AWS CLI just connect. No plugins, no config beyond credentials. MIT licensed, building in the open. What would you point a local S3 server at?
000
DJ Majumdar @deepjoy.com · 24/02/2026
Update on the local S3 server: filesystem scanner landed. Point it at a directory, it walks every file, indexes it, and watches for changes. Drop a file in the folder, it shows up in S3 automatically. No upload step. Good progress in two weeks. #buildinpublic #rustlang #selfhosted #selfhosting
261
DJ Majumdar @deepjoy.com · 22/02/2026
Love the archival mindset! S3 has built-in object versioning. Every version of a file kept and retrievable. That's part of what Shoebox brings to local files. Interesting use case for sure.
010
DJ Majumdar @deepjoy.com · 21/02/2026
And sometimes that person 3 time zones away becomes your co-creator, your first user, or just the one person who gets it when nobody else does. Building in public is less about the public part and more about finding your people.
010
DJ Majumdar @deepjoy.com · 21/02/2026
The best tool is the one that actually ships features 🚢 Claude Code has been solid for me too. What are you building?
110
DJ Majumdar @deepjoy.com · 21/02/2026
Guess the year and location. #selfhosted #selfhosting #buildinpublic
031
DJ Majumdar @deepjoy.com · 19/02/2026
The real value: making local files accessible via S3 API. Works with rclone, AWS CLI, any SDK. Dedup is just one use case that falls out of content hashing. Open source, MIT licensed, building in the open.
000
DJ Majumdar @deepjoy.com · 19/02/2026
Building an S3-compatible server for local filesystems. Point it at a directory, get an S3 endpoint. Files stay where they are. Started this to find duplicate photos. Realized I'm building something bigger. #buildinpublic #rustlang #selfhosted #selfhosting
A wide pedestrian plaza flanked by aging multi-story commercial buildings with ground-floor shops and signage. A few people walk across the patterned tile pavement, with parked cars visible along the left side.
372
DJ Majumdar @deepjoy.com · 17/02/2026
Next: auth, multipart uploads for large files, and the filesystem scanner that indexes what's already on disk. That's the part I actually built this for. #buildinpublic #rustlang #selfhosted
140
DJ Majumdar @deepjoy.com · 17/02/2026
Under the hood: SQLite for metadata, filesystem layer with symlink safety, S3-compatible XML error responses. 49 tests passing. The boring infrastructure that makes everything else possible.
100
DJ Majumdar @deepjoy.com · 17/02/2026
`aws s3 ls` returns my files. PutObject, GetObject, DeleteObject, ListObjectsV2 - all working. Content-MD5 validation, metadata headers, pagination. Tested with AWS CLI.
100
DJ Majumdar @deepjoy.com · 17/02/2026
Week 1 update on the photo project. It works. `shoebox ~/Photos` - that's it. Starts an S3 server. No config files, no YAML, no setup wizard.
100
DJ Majumdar @deepjoy.com · 17/02/2026
I gave up on ISPs entirely for this. They're too unpredictable. Mine once killed IPv4 and went v6only, another time they blocked UDP traffic. I run a cheap VPS with a reverse tunnel now and it's been rock solid. Takes the ISP completely out of the equation (except connectivity) for federation.
010
DJ Majumdar @deepjoy.com · 16/02/2026
This is the right framing. The question isn't "can I run my own server". It's "can I leave without losing everything." AT Protocol actually gets this right. Your identity and data are portable between servers by design. Not theoretical. people have already migrated PDSes.
000
DJ Majumdar @deepjoy.com · 16/02/2026
@jeffgeerling.com did a segment on replacing your router with a CM4 openwrt solution. www.jeffgeerling.com/blog/2021/tw... That might be enough for what you are trying to do and also move you to a open standards router.
jeffgeerling.com
Two Tiny Dual-Gigabit Raspberry Pi CM4 Routers
Since I started testing various PCI Express cards on the Raspberry Pi Compute Module 4, I've been excited to see what new kinds of custom networking devices people would come up with. Well, after mont...
110
DJ Majumdar @deepjoy.com · 16/02/2026
The server knows. It can sense when you have free time and summons chaos accordingly.
100
DJ Majumdar @deepjoy.com · 16/02/2026
You're right that the problem is structural. The technology just determines who you're trusting and how much visibility you have into that trust.
000
DJ Majumdar @deepjoy.com · 16/02/2026
10 years running a home server. Can confirm — self-hosting is a hobby that masquerades as a solution. I've recovered from disk failures, dealt with corrupted files, swapped drives yearly. It's worth it to me, but "just self-host" is not realistic advice for most people.
100
DJ Majumdar @deepjoy.com · 15/02/2026
You're right, "just self-host" as ideology is about as useful as "just be your own bank." I think the interesting work is happening in the middle - local-first tools that keep your data private for everyone. The answer isn't "everyone become a sysadmin," it's "make the tools not require one."
050
DJ Majumdar @deepjoy.com · 14/02/2026
In my case it was a Frigate instance in a container. Once I shut that down the machine is stable.
110
DJ Majumdar @deepjoy.com · 13/02/2026
I had a specific service that kept corrupting memory and threw off everything including the file system (Btrfs). I'd make sure the machine is stable for 24 hours without anything running to confirm
110
DJ Majumdar @deepjoy.com · 13/02/2026
I've been trying to host Firefox sync but that project has been abandoned for a while. Also that ties you into Firefox. I've considered a few others like floccus.org, github.com/go-shiori/sh... and www.linkace.org. If you end up using any of them would love to know how it turned out
github.com
GitHub - go-shiori/shiori: Simple bookmark manager built with Go
Simple bookmark manager built with Go. Contribute to go-shiori/shiori development by creating an account on GitHub.
100
DJ Majumdar @deepjoy.com · 13/02/2026
100% what services do you run that you use most frequently?
110