11 ms·
This is poetry. I have been working on a personal project for the last 10 years that replaces every other app I used to use - E-mail, calendar, and all the othe
by caipira 3y ago
This is poetry. I have been working on a personal project for the last 10 years that replaces every other app I used to use - E-mail, calendar, and all the others we all use on a daily basis - and every time someone sees me using it they ask "Wow, this is amazing, how do I download it!?", and the answer is always the same: you don't.
There's a beauty to engineering something having yourself as the target user, and no one else. I'm 100% convinced this project single-handedly keep my mental wellbeing in check, and it provides me with a constant source of hopefulness and happiness to the future - that no company/salary could ever offer me. My exclusive, differential, unique characteristic against the world, my joker card.
- alentred 3y ago> I have been working on a personal project for the last 10 years that replaces every other app I used to use Elon, is it you? ;)
- factorialboy 3y agoWould you be open to sharing screenshots? I'm curious about the mental-sanity claim, do you not have your email + calendar setup on your phone?
- HKH2 3y agoNot OP, but how often do you have an app that is exactly how you want it? You might just shrug off the small annoyances, but you could fix them and make the app something that becomes second nature. The UI won't suddenly change, so you won't have to relearn how to use the app, just like you don't have to relearn physical interfaces.
- ParetoOptimal 3y agoThe above are all reasons I use emacs.
- dingnuts 3y agofor REAL. when I started using Emacs, everyone told me Emacs was old and I should use Sublime Text II or Atom. Now they all tell me Emacs is old and I should use VS Code. I wonder what they'll tell me to use instead of Emacs in ten years :)
- david422 3y agoI've used some horrendous software in the past and it's nice that - even though I can't fix that software - I can write my own software and make it behave exactly how I want it to.
- marssaxman 3y agoThis is (largely) why I do all my coding work in an editor of my own creation. It suits me perfectly, and it never changes unless I want it to.
- zzo38computer 3y agoIt is only very rarely exactly how I want it. Often, I cannot even find software that is half of how I want it (and is sometimes difficult to change). So, sometimes I will write them by myself to work differently. But, other times another program can be modified as needed, but that is less common, to me.
- deleted 3y ago[deleted]
- kmarc 3y agoSimilarly, albeit with much less effort, I configured (neomutt) into the most beautiful and best, rapid UX mail client ever. I use it at work and for private purposes. People are impressed when looking at it. A handful of them asked for the config. Don't think any one ever got used to it.
- lambdaba 3y agoplease share this, I'd like to check it out
- kmarc 3y agohttps://github.com/kmARC/dotfiles https://github.com/kmARC/dotfiles It's already shown on the screenshot, but I'll get a better one soon.
- hiq 3y agoHow did you configure neomutt? I mostly have the default configuration, with some other tweaks I've forgotten about (like changing mailboxes using a function key). What am I missing out?
- kmarc 3y agoI will take a screenshot once I'm on my laptop (in a day or two)
- behnamoh 3y agoWhat about SSO? Sadly, none of the terminal-based email clients I tried supported this, but since you said you use this at work, maybe it supports SSO login to your work email?
- grinich 3y agoHow would SSO work for a terminal? What would it do?
- supertron 3y ago> There's a beauty to engineering something having yourself as the target user, and no one else. 100%, I'm following a similar approach to you with yet another notes app solely for my own use. Have you written more about your personal project anywhere? One thing I only realised once I started building my own tools, is that you become - from day one - an unmatched world-class expert in using that tool. This seems obvious and inconsequential on the face of it, but how many pieces of software do you use where you can say with 100% certainty that you know every single thing about it? Every feature, every shortcut, how it all works internally... It's only when you use something self-crafted that you realise what this actually means. If it's a tool that you use for work or productivity - you can become exceptionally productive with it due to this from-day-one "total mastery". This compounds if you iterate. Using the tool daily and feeding back in little fixes and optimisations as you go. The tool grows with you and molds to your use of it over time. It's obvious that the tool is going to be well suited to your needs if you built it - but it was less obvious to me ahead of time what benefits the side effect of "total mastery" would also bring. For me, my notes app is now used as my personal knowledge base, project management tool, todo list, daily planning tool and for journalling. Because I built it, I'm extremely effective at using it - and it's lean and fast - only with the features that I know I need. In addition to being a very fulfilling project - it has created a degree of leverage and efficiency that I didn't expect! My conclusion is that we should all experiment more with creating our own tools.
- caipira 3y ago> Have you written more about your personal project anywhere? No, I've had plans to create a blog to write about it or make a YouTube video, but haven't come to it yet. > One thing I only realised once I started building my own tools, is that you become - from day one - an unmatched world-class expert in using that tool This is something that I've also realized - a lot of times when we interact with software we kinda just fly by its UI to accomplish a goal, not paying much attention to its secondary features, options, quirks, etc - But when you write your own software, you have a map of everything in your head, and you don't have to guess what exactly a button does, how it does it or where you need to go to do that.
- robofanatic 3y agoIts like your own self built cottage in the woods.
- rchaud 3y agoI like this parallel, it connects to other metaphors like "digital gardening", aka cultivating information and cross-pollinating (adding links) to related pages.
- hiq 3y ago> I have been working on a personal project for the last 10 years that replaces every other app I used to use - E-mail, calendar, and all the others we all use on a daily basis Would you be willing to describe how it works / record a video of how you use it? But maybe that goes against your last sentence: > My exclusive, differential, unique characteristic against the world, my joker card. ? I guess the idea is that you integrated all the apps with each other, such that you can create an event from a text message, forward an email to a Signal contact, this kind of things? I quickly write scripts to automate things I do several times, but I didn't go as far as integrating all my scripts into a single one. Having things decoupled reduces the maintenance burden, such that I'm not sure I'd want to go that way either.
- caipira 3y ago> Would you be willing to describe how it works / record a video of how you use it? I'll definitely do it in the near future and post it here on HN. > My exclusive, differential, unique characteristic against the world, my joker card. In the sense that, if one day money becomes short, I could extract a few SAAS out of it and make some money or even sell it. > I guess the idea is that you integrated all the apps with each other, such that you can create an event from a text message, forward an email to a Signal contact, this kind of things? Yes, the main app has standalone apps, where each app integrates with each other whenever possible, like listing contacts in the email app, and one of the apps is "Flow", where you can create IFTTTs between apps.
- helboi4 3y agoI'd love to read a post about this. I started making something similar actually before I got my most recent job. But it was with less pure intentions. I did have various personal requirements that I wanted to see if I could impliment in a singular organisation system, since I am chronically disorganised. However, I started actually doing it just so I could practice my java and have a complicated java project on my github since I was applying for jobs. That's really why it's died a bit afterwards.
- hiq 3y agoI assume you choose the services you depend on wisely, to make sure it's possible to integrate with them? E.g. thinking of common apps like Facebook, WhatsApp, some email providers: they don't necessarily provide an API that you can call into, and sometimes you rely on a library a 3rd-party developed but which breaks regularly. Looking forward to your post on HN!
- distcs 3y agoTell us more about your project! Did you start it from scratch? Or did you use another opensource app as starting point and developed it further for yourself? What language is your app written in? Where do you run it? In CLI? or desktop GUI? The more you can share about it the merrier. I am sure others want to learn more about this too.
- caipira 3y agoIt's basically like the Google suite of apps or Next Cloud, I have the main app where you can manage your account, backups, etc, and it links to a bunch of other apps, each one living in a subdomain. The apps that already exists are: - Password manager - Finances - Contacts - Account (Backup, Restore, private keys, etc) - Authenticator (OTP, TOTP) - Email - Photos - Movies (2 parts, one is an IMDB like manager and the other is a Netflix homepage look alike for viewing content) - Flashcards - Link tracker And I have the following apps in the development pipeline: - Calendar - Drive - Notes - URL Shortener - RSS Reader - Tasks - Books - Musics & Podcasts - Timelines It started just as an MySQL database that I used to track my expenses and budget, later I started also storing passwords in it, quickly I realized that I needed a user interface, then I slapped a bootstrap theme on it (this was back when Angular 1 was all the rage), then it went through many iterations as across the years and the current one started back in 2020, it uses VueJS 3 and used to use ant design, but I had to create my own UI library to accommodate the sheer complexity of the custom UI needed. It runs on a raspberry pi with docker.
- spenczar5 3y ago“Every program attempts to expand until it can read mail. Those programs which cannot so expand are replaced by ones which can.” - Zawinski’s Law :)
- sotix 3y agoI like that law! My law for the past few years has been every app expands until it is beyond bloat, which is recognizable when it has the feature du jour, which can be found across every popular and unrelated app. At the time, that feature was stories, which could be found in Snapchat, instagram, Facebook, WhatsApp, Uber eats, and I think even Venmo at one point. Once you got away from social apps, it was clearly feature creep. That was my indicator for when there was probably a better alternative app for accomplishing the app’s original purpose, but it was often too late to switch due to the network effect.
- bberenberg 3y agoI wish more people would take stuff like this, oss it, and disable PR requests and issues. Let others use it / learn / build on it with the clear expectation that feedback and contributions are unwanted.
- lobsterthief 3y agoTo be fair, when you do that you would approach coding the application differently, which adds to development time. Also, it can change the whole mentality of developing it. Probably why more people don’t do that, though I agree it would be nice.
- bberenberg 3y agoCan you elaborate on what you would need to do different in terms of dev? The only thing I would do differently in this scenario would be to ensure no secrets or anything gets into the code which is a minor lift but also probably for the best.
- rthomas6 3y agoIn python I do horrible things like the following when nobody else is going to see it: [[[foo(x) for x in y] for y in bar_vec if baz(y)] for bar_vec in bar_mat if bar_vec != []]
- Arelius 3y agoI dunno, that seems to be just shame instilled by the toxicity of certain programmer culture. I mean, it's not the clearest thing to read but labeling it horrible seems to be a judgement call that's unwarranted. And as software developers, we should create an environment that's less hostile to people who write things in ways we wouldn't. And honestly, that set of list comprehensions has a bit of a lispy functional vibe, which could quite frankly be applauded in certain contexts.
- __MatrixMan__ 3y ago
- kodablah 3y agoUnfortunately you almost have to do this in secrecy with a homemade scraping app lest its popularity causes the site owner to take action
- yowlingcat 3y agoI love it. I have a couple similar projects I've worked on in the past (a couple of which were what got me into engineering in the first place) and the clarity of vision you can achieve when you're really truly building something just for yourself is unparalleled. What follows is also a very unique sense of fulfillment; as you've eliminated all the societal contributors to the sense of fulfillment (which are of course fickle), what you're left with is something that by definition had to be made to make you and only you happy, and it lasts over time in a way that is durable and pure. My greatest regret these days is how often it feels like I lack the time to do such projects -- but that of course is a cop out on my end! The hard part is only getting started and being consistent; you don't need to do that much on a week to week basis to get to somewhere really meaningful after a few years.
- broscillator 3y agoNot an app, but this is how I customize my OS and workflow in general, and think Linux for making it possible and even easy at times.
- Tcepsa 3y agoI've been using i3wm for years and have recently started doing deeper dives into the sorts of things that you can do with what's either already installed or easy to add (e.g. rofi for input, conky for display) [edit to complete the thought:] I really love how flexible and relatively straightforward it is to script up simple applications that have a fairly significant impact on my "quality of life"!
- broscillator 3y agoI switched from i3 to bspwm a few years ago and I have basically a "complete" setup. I do occasionally make scripts like you mention, they're super fun, handy, and almost impossible to share unless someone else has the same niche knowledge and requirements.
- Tcepsa 3y agoThanks--I've been looking into AwesomeWM as an alternative but I'll check out bspwm too!
- Rehanzo 3y agoWhy would you want to combine it all into one app? Having seperate apps for those things (maybe besides having calendar and email together) sounds proper to me. Seems odd to put it all together into one.
- __MatrixMan__ 3y agoProper so that people who only want to use part of it don't have to use all of it. But if your user base is one person then why not go seamless? If you dislike that part of the app, just delete it.
- importantbrian 3y agoI have often thought about creating an everything app for myself. Do you have it as a desktop app, or is it a web app you host somewhere? Would love to read a blog post about it if you have one or would like to write one.
- whompyjaw 3y agoCurious, how deep does the DIY go? I am curious what tools you currently leverage to support your tool? For example, instead of using ripgrep, did you create your own easy-grep program? Or anything in that similar vein? Just curious of anything you’d like to share :)
- zzo38computer 3y agoI write programs mainly for myself but also usually (not always) make them available for other people to use too in case they find it useful (or want to modify it, use a part of the code, criticize it, make backup copies, or anything else they might want to do with it). If I am annoyed by something someone else writes about it, I can just ignore it; it doesn't affect how I will use it for myself, and other people can still do what they want. (And, if someone does not want to allow others to criticize it and submit patches and bug reports and stuff like that, then you can still make the file available without allowing comments to be written about it, without discussion forums, without issues and pull requests in GitHub or similar, etc.)
- psalminen 3y agoFor my job, I've created a python ask and CLI that meets the exact needs of how I need to communicate with our API. It's leaps and bounds better than any postman collection my employees use The code is a mess so I haven't shared, but it is something that makes me more productive every day.
- jFriedensreich 3y agosame here would love to hear what is the uique twist yours has or see a screenshot. for me its people centrism.