585 comments

[ 3.0 ms ] story [ 206 ms ] thread
Looks neat. As an aside, why is it named after a woman? I'm genuinely curious.
Thanks. Well, I built this website because I didn't have a spouse at that time, and I suffered socially from this, not being able to remember important things about my friends (call it selective memory or what not). My partner used to be the one who always reminded me these kind of things. It's an hommage to her.
I like that, our significant others usually fill in gaps where we lack. My wife has stellar memory, mine, not so much.
Huh. I was sure it was a, uh, racially-tinged joke from knowyourmeme.
(incidentally, NOT a joke)
Not relevant to your product, but that's the sweetest thing I've read since a long time on HN. Good luck!
I thought it was monica from Friends TV show, she used to remind people to do things all the time !
Monica from Friends was high maintenance​
Oh yeah she was. Fortunately Linode is less expensive.
I was hoping it was named after Monica from Silicon Valley
Founder here. Here to answer any questions you might have. The site is not perfect, it's not mobile optimized, there are probably bugs, there is a gazillion features missing, no APIs but it's a labour of love, open-source and I hope it will help people other than me. I want to grow this product but I need to know what you need, people. Edit: sorry for the bugs I see on my server popping here and there. Didnt expect that much users and traffic.
Sign up with facebook is not working for me. Perhaps because I have two factor on.

Also, consider adding an import feature from gmail, vCard, etc

Finally, why include male/female binary as the only required field besides name. Seems a little odd

Damn it, I broke it. I'll fix it today, or remove it entirely, I still don't know about it. I like the idea of being able to quickly log in, but it's yet another feature to maintain, so...
My personal recommendation is to drop third-party logins and allow users to sign-up via usernames (without emails). That means you need to deal with "lost password with no way to recover" situations and spam but it's still better than third parties controlling the most important aspect of your application.
FB integration, though, might be nice for initial import of friend data that's already there.
You can't import ANY data from your friends from Facebook. Facebook doesn't allow to.
Damn. That's not surprising, but it is disappointing.
Exactly. Excellent point. Moreover, you can't import any of your Facebook contacts anyway, so it's pretty pointless, and I hate relying on third parties.
I actively avoid sites that offer only FB logins.
I've deleted my FB and have no desire to recover it. Any service that's FB only can count me out.

(yeah, I can create a dummy account for that purpose alone, but I rather not bother)

PLEASE PLEASE have a non-FB option.

I got added by someone else to a Facebook group that eventually went on a troll raid. I rarely go on Facebook and didn't even participate in any troll raids. Just from being in the group, my account was disabled. I have been locked out of my apps for three weeks and Facebook hasn't answered any appeal I sent them.

I'm a fan of FB login. In practice it's pretty trivial to maintain once it's set up, I don't recall ever having to do any updates to an FB login system once set up.

It's nice that I don't have to create yet-another-password for a new app as well. I use a password manager so it's not a big deal for me, but for other users it could be so they may just use a shared password and having FB login would be a way to have them not do that.

Please, please remove it. I actively avoid sites with fb logins, as it appears others in this thread do as well. Your idea can stand on its own without that sort of crutch.
Why? Just don't log in with it if you don't like it, why does it specifically have to be removed?
Wherever you see the "login with facebook" button, you have FB tracking you. This is why lots of people avoid sites that have this button. It adds very little and puts a lot of people off. Why keep it around on an OSS project if it's going to do nothing of real value and will put off both users of the CRM and people who would like to host a CRM but don't want the FB affiliation?

I get that you might like it, that's fine, but it's not serving any good purpose here. Google login would be more widespread if you must have a 3rd party button. Yes, Google track as well and yes, that's also going to put people off, but if you feel the need to have one at all, get a more useful one. Or better yet, remove them all, have local user registration and put a hook in place for developers to plugin other buttons using different contrib repos. Then you can have both without polluting the core project with 3rd party deps.

If you're concerned about tracking then are you using an ad blocker? Then the FB integration has no affect on you.
Counterpoint since I only see anti-FB replies below: I absolutely love seeing OAuth login. I don't have to create yet another password, or worry about whether your site has reasonable password security. Even when I choose to create a login instead, just seeing it gives me some confidence that you're competent enough to set it up, and probably gave some thought to the security trade-offs surrounding login in general.
Have you tried using a password manager? There's no need to worry about a site having reasonable password security when every site has its own unique 15-20 character password that you don't need to know.
You don't have to remove it indefinitely, just come back with something that works with more networks, like google, github, gitlab, yahoo etc., something you have to maintain only the integration instead of the logic.

I have mainly python experience with python-social-auth, but I see PHP has a few pretty good social auth libraries, to name one, I came across HybridAuth[1].

[1] https://github.com/hybridauth/hybridauth

not working for me either. made an issue (#39) on the repo.
I disabled Facebook login/signup entirely for now, in order to not frustrate users.
This seems super handy. I am kinda interested in seeing if I can get it to run on Sandstorm.io. Then I don't have to put a lot of effort into managing hosting for it, but it seems like it'd be handy and I'd probably use it if I could host it that way. And if you want to let people use your open source thing without having to manage it as a service, there's some nice perks: https://sandstorm.io/developer
This is exactly what I need - but I signed up, closed the window and now I get an endless redirect loop after clicking on "Login" on the main page. Please fix so I can try it out!

EDIT: It works when accessing https://app.monicahq.com/people - the endless redirect only affects https://app.monicahq.com/

Awesome work, have been looking for something like this for a while. I would love to see tags for people and a search bar. If I'm trying to organize a casual chess match or pickup soccer game, it would be super convenient to search all my friends with said interest.
Search bar - to search by criteria for instance, or tags?
Tags would be easiest to implement - but an universal search bar for all text would be helpful too.
One thought is that it would extremely useful to be able to interact over SMS: log events, contacts, receive reminders etc. Love the idea, keep it up!
Problem with this: SMS has a price, and would people be willing to pay for this?
Could be a paid feature, I wouldn't mind paying for advanced features like that. I've been searching for a personal, non-sales oriented "CRM" platform for months now and am currently using Accompany but this feels far more personal.
I don't know Accompany, but no matter what, even if you use Monica for business, my personal view of business relationships evolves around knowing the intimate details of the person and remember the kids name, for instance. Things you won't find in Salesforce :-D
Yes, and also staying in touch meaningfully enough that it doesn't seem tacky and manipulative when asking about the kids :)
Maybe support putting a user's own Twilio creds in?

Also, love your project! How do I give you money?

Edit: I'll keep an eye out for the link!

For now, you can't give me money. I'll put a link in the coming days, but you'll probably be gone :-D Thanks anyway, appreciate it.
Messenger Bots could solve this problem, as well as a Mobile App.
Email is less sexy but free. XMPP support gets you quick/dirty Slack and Hipchat integration. Something like a Hubot extension could be a fun way to interact as well. Or Alexa/Home! Or IFTTT. Ok then, maybe just an open API?

It's too bad all of the metadata around a contact can't be kept with the contact in a portable way, and then Monica could just be an API for pointing at CardDAV and other contact servers, and a UI for interacting with them in unique ways. Personal clouds, etc.

I've thought about CardDAV of course, but it was too complex for a basic v1 like what I posted today.

I think Monica could be just an open API. The API is definitely something I'll work on in the next weeks, because of its potential.

Disclaimer: I run my own CRM company, so you can either view this comment as genuine praise/advice, or an attempt to subvert a competitor (but I promise it's the former).

First off, this looks awesome. I've heard people complain many times about how they just want a personal CRM for non-business purposes. On the one hand I love the idea because having such a specific use case allows you to make a very simple UI that does exactly what the user needs. On the other hand, I never personally chose to go after it because getting individual consumers to pay for stuff seems hard.

So I wish you the best of luck, and I hope you stick with it. The "Why Monica?" section of your website sounds like it was written specifically for me, and I'm definitely going to try it out because of that copy.

My main piece of advice: be skeptical of most product suggestions. As someone who has been building a simple CRM for the past ~8 years, I can tell you that everyone wants something different, and if you react to every suggestion you get, your product will end up losing the awesome focus it has right now. That doesn't mean you should ignore feedback, it just means you should make sure the feedback is coming from your actual target audience and not some random person who's looking for Monica to be something it isn't. I fell for that too many times in the early days.

My email is in my profile if you ever want to talk shop.

Thanks a lot for the advice. I've been product manager for most of my career so I totally understand what you mean. I will definitely be careful in where I want Monica to go, and definitely I'll reach out to you on your email (but not today, I just received way too much feedback and emails thanks to HN today :-D
... Did you add him to your Monica?

BTW is there a better way to say that?

Not yet :-D

"You've been Monica-ed"

Somehow that reminds me of Bill Clinton...
Yeah, I had Monica set that up for me.
Please consider creating a 'Deploy to Heroku' button or something similar.
1) Does it integrate with my calls from my iOS / emails from gmail? So that I can sort by "least recently connected"? otherwise writing notes each time and looking it up gets tiresome. 2) is there a mobile app? 3) how much will it cost monthly? 4) how are reminder sent?
1) No 2) no 3) nothing 4) by email :-D
in reference to 4) any chance of adding something like pushbullet?

https://docs.pushbullet.com/

A similar service is Pushover. They have an e-mail gateway that allows you to send e-mails to your custom Pushover e-mail address and have it be converted into Pushover notifications. Each user has a @pomail.net address assigned when their account is created, and additional addresses can be created with custom options for each one such as a default sound. Highly recommend it.
I love the idea of a personal CRM. However, I hate the idea of duplication of effort. If you can't create interfaces to these other apps, then perhaps make sure you create an interface to IFTTT with enough control that would let me aggregate my data (phone calls, emails, etc.) to folks in Monica without user intervention.
Question: Where does the name come from? Is it another female assistant in the vein of Siri, Alexa, etc.?
not saying this is where it came from, but this is where i imagined it came from http://i.imgur.com/JCnWZqR.jpg
First thing I thought of as well. I think it's hilarious but I imagine someone will eventually have a problem with it.
Wait, I still don't get it. Can you explain?
"Here are everything you can do with Monica"

"Manage food preferencies"

Correct grammar and spelling are easy to overlook and may seem insignificant, but they go a long way in making a good first impression.

The first thing I looked for was data export and import. I have an export from google contacts I'd like to import to get started quickly. I would also like to know that I can get my data out to use in other applications (a table for the activity logs joined on the relationship's ID, a table for the relationships, etc.).

The "Edit" link under "Personal Information" should also be Blue, like the "Add" links under the other sections. It took me about 40 seconds to figure that out because of the confusion.

Editing reminders would be useful. More flexible reminder timing (things like "end of the month", which could be more or less than 30 days apart, are very useful).

You should be able to select an existing Person entry for the Significant Other field. Also, if you add somebody through the Significant Other field, they should show up as a person.

You should also be able to delete a Person.

You are right. Import is high on my roadmap [1].

Export will be next, too. It's vital to not be locked in.

Editing reminders, yeah, I didn't do it at first because it's way less trivial that it might look, but it's in my todo as well ;-)

Thanks for all your ideas, they all make a lot of sense.

[1]: https://github.com/monicahq/monica/projects/1

Please consider supporting Carddav as much as is sensible! It's the existing open standard.

I spent an unreal amount of time gardening my list after tearing myself away from Gmail and Facebook.

Separate from non-lock-in reasons, I'd consider using the hosted version if I could export data at a later time so I could go self-hosted in the future (say, if I start writing some code for it and there's no API that does what I want).
Same here - especially for export. I'm hesitant about pouring in hours and data into this if it's locked in one place unable to be pulled or migrated.
Same here - especially for export. I'm hesitant about pouring in hours and data into this if it's locked in one place unable to be pulled or migrated.
One note, in location the defaults are "Province" and "Postal code" with country at US by default. I haven't tried but if you have any kind of data validation for those inputs it may annoy some of your US users.

I sometimes stumble on some site that only allow five numbers for zip codes and not the six alphanumeric characters we use for postal codes.

I would change "Postal code" to "ZIP" and "Province" to "State" if someone selects US as a country.

Have you considered the ability to "Share" a Contact? For example, if my Wife wants to share the info she collected about our niece?

Or is the entire idea that each person is logging a unique POV or set of information about someone, rather than the system gravitating towards there being a single, cultivated profile about each person that is shared around?

(right now it's kind of the anti social media -- which seems like a refreshing take. Just curious if that's on purpose)

Instead of sharing, I wonder if I should add multi users to an account, so you and your spouse could manage their relationships with their loved ones, for instance.
Why not both? I would like a Family or couple account but wouldn't care for a share option.
Sorry to keep writing "CardDav" under everything, but vCards are an established standard for sharing contacts with arbitrary metadata.
Thank you so much! I've been looking for something like this (and even contemplated making this myself despite not having any spare time to do so).

My one concern: Can you please make all of your contact information downloadable and backupable. My biggest fear would be putting so much precious data in your app and then having you guys go under... then I would lose everything. Also, I don't want vendor lock-in for something as important as this.

I think the most interesting thing about this is that it's essentially a souped up address book, so it could basically be turned into a vcard with a bunch of extra fields.
Probably a big investment, but my immediate thought is I'd love a mobile app. The mobile site was better than nothing, but if you had a slick mobile app, I would use it constantly. So many times I forget little things that I would love to jot down in exactly this type of product.

e: On birthdays, might be nice to be able to add day/month but no year. I'm working through adding some of my contacts into this and noticing small things as I update/add more.

If only I knew how to make one... I will first create an API in the hopes that someone creates a mobile app for this.
Carddav support would a huge win. Even some sensible markup to store metadata in the notes field could allow some kind of editing on the go, and synchronization.
An API would definitely be a positive step :) awesome work!
If you made a solid API, I would be very interested in developing a react-native app.. :)
I'll be watching your github repo / release notes pretty closely - will try and make a simple people / event entry + reminder only mobile app for my personal use (and for others, if there's interest).
There are some mobile applications that do exactly the same as this service: Ntwrk, CJournalLite, Super Social.

Disclaimer, I created the last one.

(comment deleted)
This product is dangerous to privacy. It's easy to imagine how this data could be exploited if Monica is sold to Facebook, Google, etc.

How are you working to guarantee my data is protected from any manner use outside my own?

As these things go, the privacy policy is excellent, and can be read in under a minute:

https://monicahq.com/privacy.html

It's not excellent. Nothing about data security, encryption at rest, and a whole load of things that would be covered by GDPR (yes the service is registered in Canada, but GDPR standards should be the benchmark now for what is considered acceptable for anything).

This is an intriguing idea as a concept but feels like it isn't a sufficient focus. The privacy page hasn't been updated in 18 months either, yet the release notes mention encryption at rest (with very little detail) being added in October 16.

Just as a data point, this is the first time I ever heard about GDPR. Not sure it's "the minimum acceptable standard for anything".
It will be if you want to operate in Europe.
If you have users in the EU/EEA then you _will_ have to comply, or risk a fine of up to €20,000,000 or 4% of your _global_ turnover (whichever is larger).
That is not a good privacy policy. Founder needs to talk to a lawyer, or the EFF.

For instance:

> Monica runs on Linode and I'm the only one, apart from Linode's employees, who has access to those servers.

This speaks to nothing about future use, which is what my question specifically asked.

My question is about this line:

> When you close your account, we will immediately destroy all your personal information and won't keep any backup.

I'd love to hear how you're purging users from your backups, and how long you keep backups.

Not loading now.
well, i haven't looked too closely, but i guess i'd be ok to run your own if this bugs you too much. there are links to the github repo on the site.
If this bothers you just host it yourself, that's why it's open source
That's a good solution for someone like me, who can roll my own, but not someone like my parents who have no idea how to do that. That does not bode well for privacy. Your suggestion is half-assed.
> How are you working to guarantee my data is protected from any manner use outside my own?

From the README on Github:

"We provide a hosted version of this application on https://monicahq.com.

If you prefer to, you can simply clone the repository and set it up yourself on any hosting provider, for free. I'm just asking that you don't try to make money out of it yourself."

So to guarantee the privacy of your data, set it up on your own server (maybe even locally hosted if you're that paranoid) and you're set.

THIS! I had privacy concerns, but you just blew them away. If I can host this in my own server, I'm sold. HUGE THANKS!
Some comments:

It's weird seeing the kid number pushed so hard on the dashboard. I'm in college, so that's not really a feature that applies to me.

I'm not a fan of the date picker, an actual calendar popup would be better IMO.

If people are getting unique IDs, it should much rather be a GUID rather than what appears to be an incrementing index.

What's wrong with an incrementing index?
An incrementing index suggests comparison. If you are closer to friend #35 than you are to friend #8, it can feel strange to be exposed to that kind of numbering.
My concern was that it seems like the person ID is shared with all users.

The first person I added was somewhere in the 2000s, rather than starting at 1.

I am sorry but this doesn't make any sense to me: I can't aggregate information from calendars (Outlook, Facebook, etc.) or any other information source out there. So every info i take, i have to take twice.
It would be neat if there was a demo. For this kind of stuff I'd rather not give my information till I know what I'm in for completely.
I wouldn't mind being able to import a file from my Google Contacts. I've been using that as my friends-and-family CRM for over a decade now.

Also, this may sound stupid, but how do you delete a contact?

+1 for importing Google Contacts, or any standard contact format I can import. Also just noticed no deletion...
as someone who built a similar product (but for networking), i will reveal a very hard-earned lesson about CRMs that don't target sales & marketing: no one cares.

everyone will tell you what a great idea it is, and how useful it could be, but no one wants to do any work to that end. it just doesn't solve a real pain for enough people to build a business around (given the product you present on the home page).

however, if you're serious about this space, you will automate the crap out of data collection and make the product a super-passive intelligent assistant (for mobile). make users seem more kind and thoughtful than they otherwise are with this app, and people might just pay for it. there's a potentially big privacy hurdle but i found most people to be surprisingly unconcerned about that if you provide tangible value.

Well, who said robinhood wants to build a business around it? For what it's worth, I care about the topic, but I would never want to use a hosted service for something like that. So his decision to build an open source app is the only way to do it.

But as I am using my own Nextcloud and XMPP Server I would like to see a simpler setup/update procedure.

you might be right. the few comments i read by robinhood seemed to indicate a desire to make it the core of a SaaS business but maybe not.

that this was designed with self-hosting in mind is a nice nod to privacy though.

Congrats, this looks really nice, the feedback you're getting here is a good bit of proof that you're on to something people like.

My first reaction to the "CRM to manage friends..." was, what? Why do I need a business tool for my personal life.

I wonder if there is a better terminology than CRM. You bump up against the social network on one end, and a person tool on the other.

I wrote an executive summary for my business last week, and the feedback I got from an advisor was that they loved the idea that there are these two big existing markets, and that their is a middle-ground between them which hasn't been addressed. I think that is what you've got here, it needs to be named. I haven't quite been able to name mine yet either, so I'm not suggesting this is easy.

What do other think? Is the CRM a good label for a personal tool?

CRM = Customer Relationship Manager, so not really an ideal term for something personal. Perhaps 'PRM', but then nobody knows what that stands for.
I've been learning Laravel for some time now and use it for a few personal and work projects, I'm also new to the open source world and yet to contribute much - are you looking for contributors, or are you just on GitHub for the transparency?
Both :-D I'm not looking for help necessarily but if it helps create a better product, I'm more than happy about it. I don't think we can create a great thing all alone. The idea to open source it, amongst other thing, is the transparency.
I've built a versoin of this app a few years ago before mobile was big and there are features that I've always wanted for my app that I just didn't get to before I had to move on. The big feature that I've really wanted is integration with my calendar, email, phone, IM, fb, etc... Why? So the system would be able to tell me when I need to interact with someone using something better than a timer. You will probably need a mobile app for some of this to work

There are also two people on IndieHackers who built a mobile version of this who you may want to talk to.

I also own the domain muchcloser if you're interested in it. Let me know if you want to talk.

Two feature requests that would make this a killer app for me (yes, I would pay):

1. Import names from Facebook (is this included if I had used Fb to register?)

2. Generate random individual to reach out to, weighted or sorted by when I last contacted them.

Thanks a lot.

1. This is not possible. Facebook does not give me those information through an importer. So it won't happen unless they change their mind.

2. Interesting. I had something similar in mind, I think you'll be pleased when it'll be out.

What about a mobile device contact import? Facebook and other platforms update those contacts. That could be your social network workaround.
There's the workaround of exporting it from Facebook and then uploading it to Monica. You'd just need to parse the exported files.
Why did you decide to make this a site rather than a desktop app?

This is a private database as I see it, so there is no need for it to be online. And keeping it offline would be good for privacy, and would make it easy for anyone to download and install, rather than the more complex install needed for a web application (or letting someone else host and sacrificing privacy).

Because I just know web technologies. Also, because having a web app will allow me to create an API, which will allow to use a mobile app for this, which totally makes sense.

If you care about the privacy, you can also host this yourself :-D

Also because there are many times when you may not be in front of your own computer but you have your phone with you.
(comment deleted)
Thanks for this. I was thinking of making something similar but just for personal use as it would have been much more basic. My use case is that I've been to a couple of family events and I always have trouble remembering the names of ppl I might only see once a year like my cousins kids or husband etc. Or sometimes friends of family members who I will only ever see through them very infrequently.

Ultimately the most amazing use would be to have google glass etc and when I see them their name comes up in a bubble.

Noticed a couple of bugs but im pretty sure they have been reported - e.g. not able to link someone like add a child if they already exist. So at present you can only add one parent

Cheers!

A couple quick suggestions:

Allow the default currency for debts to change :) I'm based in England, so Dollars don't help me.

On the People list, make the whole list entry clickable, not just the name.

The list of "Country" is not sorted and slow to load.

Can we add other kinds of relatives, not just SOs and children. What about siblings or Uncles?

How much will it cost? (Your service, not hosting my own copy.)

If its free, how will you pay for your costs? (Ads? Selling my data?)

No ads, ever, I hate them. No reselling of data, that practice is the worst for me.

I plan to provide a paid version with an extremely generous free version. The paid version will contain some great features, and will probably be a couple of dollars per month.

> No ads, ever, I hate them.

Thank you! We shouldn't trust anyone who thinks otherwise. It should be considered shameful to show paid advertising.

Do you hate any type of ads? I see great potential in having service app options that do not seem to me to be very harmful, but I may be wrong... For example, when I mark that I had dinner with my friend at a Japanese food restaurant that I really liked, I could not have an option to book a table using an app like resy.com. Or yelp to find a different one? Or when I note that the last time I was with a friend, it was in a movie theater and this week will launch its sequel, a link to redbox.com. Or in the case of a band show we like, link to ticketmaster?

It does not have to be something that makes it difficult to use, an icon at the end of the note could be enough.

This would most likely mean that an ad script will drop a cookie, scrape the page and dump your data into some DMP for others to buy.

This very much undermines the value of a privacy-focused service.

"The paid version will contain some great features, and will probably be a couple of dollars per month."

Forgive my ignorance, but with the code under the GPL license, how can you offer exclusive features?

Just like any other company that has a community edition and a paid version. (See owncloud or nginx)

As author he is at liberty to publish his own product under whatever license he wishes.

And if he wants to sell a "enterprise" version under a proprietary license he is free to do so.

I really love the idea of this but it seems incredibly arduous to keep it updated. Everytime I do something, call someone, have a conversation, learn something new, have lunch, etc - it all has to be tracked.

I suppose this is the price to be paid if one wants to track all of those things, but much like many other CRMs there are integration points that could make this far less work for the consumer.

Thoughts or plans on this?

A useful feature for me would be to tag people in photos. That's how I cue my memory when I forget someone. The photos also have the time and location, so I can place it on my calendar.
I like it! I definitely could use something like this. I am GLAD that you mention "It’s for your eyes only.". Very important feature.
Thanks for making this open-source. It seems to use Homestead for deployments and Homestead apparently needs a VM. Is there a way to make this work without a VM or have a docker file maybe?
Well, I use Homestead because it's much more convenient. But you can use anything that you want, as long as you have PHP and mySQL. MAMP, for instance, XAMP, or really whatever. Have you heard of Valet (https://laravel.com/docs/5.4/valet) ?
No I'm very alien to the PHP ecosystem. Valet seems to be Mac-only. I'm a happy Windows user who has some Linux servers to play around. It would be very nice to have a step-by-step manual installation guide, then who knows, maybe you would get a pull-request with a Dockerfile! :)
This is where I need the community. I'm just a small Laravel amateur developer who doesn't know much about Docker I love simple solutions and Laravel seemed to me the easiest way to build something simple, and more importantly, easily maintainable, which is the most important for me.
That's what I meant, I would contribute a dockerfile, which people may use to run the application with one command. Would standard Laravel instructions to deploy an app[1] help me here or do you need additional steps?

[1]: Maybe something like https://medium.com/laravel-news/the-simple-guide-to-deploy-l... (first thing I could find)

It would definitely help to follow the standard Laravel instructions.

Wow I didn't expect there would be a demand for this. Interesting. I'd need to move out some of the code as well from the app (at the moment GA and Intercom are part of the codebase, I need to remove them).

Just tried setting it up, pretty simple assuming you're comfortable with Linux.

You need MySQL/MariaDB, PHP >= 5.5.9 (see composer.json, require section for version requirements - worked with 7.1.x for me), node/npm, and composer (typically installed from getcomposer.org)

Otherwise, directions at https://github.com/monicahq/monica#setup-the-project work with one exception: I'm not familiar with laravel in particular, but I had to do some funkyness with the the .env file:

Replace APP_KEY=SomeRandomString with a valid key, like this random one I found on the internet: APP_KEY=base64:i7QndWbN33zY1x013Yw2cju9KQsxpT/1nnf8/3ziZ+U=

Then run php artisan key:generate to get a new one.

(Set DB credentials in .env as well)

Finally, php artisan serve to fire up the dev server (uses php's builtin server)

Thanks for this. I think I can probably make the instructions better so you can install it easily.
Edit: Just saw at Github that you are planning all that. https://github.com/monicahq/monica/issues/30

so nevermind

---

Could you include in the instruction a way to set it up on a standalone apache or nginx machine without homestead, docker and all that firlefanz. I would like to just run it on my rusty cabinet server. ---

Great work though.

Docker is the way to go here :) It's going to be a very valuable tool to add to your arsenal.

"Easily deployable" is going to be a top concern of your users, and Docker solves that.

Very good point indeed. Didn't think of it, but I understand the importance of this.
I've had good fortune setting up existing laravel apps using phpdocker.io
Looks interesting. Definitely something that could be useful. Issue I have is getting my data in to the system. Would be good to be able to pull contacts from a CSV / Google account / Facebook account.
Security.

Make me feel safe when adding very personal information about people I meet.

(Btw. I've been considering building something like this myself, I meet so many people that I want to recognize and remember what they told me about themselves. Memory fails me almost every time unless I really put the effort in. Right now I just make a note after every interaction using Simplenote, better than nothing.)

The security aspect is also very important to me. I'm trying to do my best to make it secure by following best practices, and this is also one of the reasons I've open sourced it actually, so the community can help make it better and check that I don't do nasty stuff with it.
Do you have any plans to integrate with contacts on any device/platform?

It may allow you to automatically save calls and manage metadata in sync with an established system.

I've been thinking about this. First step would be an API. Second step would be to either me learn Cocoa, ObjC or .NET to do this on the phones/desktops apps, etc..., or let the community do it.
Tools like React Native and Electron are pretty popular these days to build cross-platform apps and such. Since you know web stuff and I'm assuming JS, those might be a good option to explore so you could maintain them without having to learn the entire toolchain of building for various platforms
I think I'll focus my energy on creating an API first, then I'll be able to do this. I understand how important being on mobile as a native app is. I'll do it
Nice project. Keep in mind I'm just a tire-kicker on HN, but it would be neat to have dynamic periodic reminders similar to spaced repetition learning algorithms except you rate the strength of the relationship after each session. Strong ratings mean you can see them a little less frequently; weak means you should see them (a little) more frequently.

Ideally this would let you maximize the number of maintainable acquaintances. Unfortunately (for some), it would also prevent any from getting too close. :)

Thanks for the idea. How would you rate the strength of the relationship? A star mechanism?
Yes, I'm imagining 1-5 stars with text descriptions to help ratings be consistent, similar to how software like http://mnemosyne-proj.org/features handles ratings.
Isn't it weird though to put stars on people?
Yes, it is weird. :) It's just a fun idea I've had that requires some kind of 'friends CRM' such as the one you've developed.
Other CRM tools I've used will allow you to create groups/categories of contacts and set the recurrence to contact people in that group. You could similarly rate the group instead of individuals. Then the user could re-evaluate based on the group (friends, colleague, family, etc)
You wouldn't put stars on people but on relationships... it's something you can have am effect on, so I wouldn't mind rating it !
Ohhh I see the subtitly. That is an awesome idea. Thanks!
This is very cool!

My question is, is this really free? If so, how and why? It seems like it was a ton of work to build and presumably you could monetize it somehow - is that just something you're planning to do later on? If it gets a lot of users, how will you pay the (albeit small) server costs? I'm curious.

Thanks again for building it!

It's free for now. I wanted first to see if there is an interest. The product is open source, so it'll be free forever anyway. I like the GitLab approach - free for everyone, but perhaps put some way to monetize this. I just have NO idea how. I honestly didn't think about it, because I wanted to have a side project that would be useful for people, and I don't know if people need this.
I think some may fear it for one of the natural monetization routes for a product like this, selling the personal info to marketers, intel-companies, credit agencies, etc.
Oh, and server costs is Linode (love Linode) on their 10$ monthly plan. This kind of product does not need expensive server anyway, it's pretty basic.
It seems to me like the kind of thing where a 30 day free trial followed by a small monthly fee ($5? I don't know, something in that ballpark perhaps) might work - if people enjoy using it and become dependent on it during the trial, at least a portion of them will be okay with paying afterwards.
This seems like something I may use. I have terrible memory, so I never remember birthdays, anniversaries or even my own doc appointments.

Tangentially related: I wonder what the fallout is for the average person who may get discovered using this. I could see someone catching flack for having software send them reminders of things that "should be important enough to remember". Then again, what's wrong with using technology to help me enrich my relationship with others?

That's something I've struggled with while building the v1. I wondered if it was moral to use technology to help me have better relationships. I'm the kind of guy who hates Facebook and all the bad things the technology has brought into our lives. And yet, ironically, I do something like this. But the motivation behind is genuinely pure: I really want to be better at remembering things about the ones that I love.
> I really want to be better at remembering things about the ones that I love.

Marketing idea: Those with failing memory (for whatever reason) and/or their caretakers.

I submitted the site to Reddit 9 months ago, and there seemed to be an interest for people with difficult social skills, actually.
Looks like this is a service only for very young people? Got this wonderful error while trying to add my father.

https://www.dropbox.com/s/ijdfvwtua5nwy6p/Screenshot%202017-...

US style dates, you probably want 03/18/1965
You, certainly I, definitely want ISO8601 dates -- ie. yyyy-mm-dd
Localization is important - I might need to change date format depending on the language you select. Currently Monica supports both French and English.
Just force people to use GMT and European style dates! :D
IMHO: You want to pivot this product, now, to compete with ourfamilywizard.com. OFW is a great concept but the site runs slow, its search and reporting is erratic and basic, and the UI can be difficult. It is, however, the only game in town for managing divorced families and its about $200 per year. It also features:

- Timestamped and hashed communications and records. - Lower price point than OFW. - More intuitive reporting.

This will NOT have widespread appeal under its current use, and will be tough to make money from.

Thanks for pointing out to this site. There is probably a lot of good ideas to take from it.
> There is probably a lot of good ideas to take from it.

They might actually be robinhood.

Call me cynical, but I find the term CRM pretty wrong. Yes, I understand what it does, people have been keeping track of this stuff (if I read the intro page correctly) for ages, and still I find this borderline creepy and overengineered.

Disclaimer: I am using e.g. Facebook's "On this day" feature to reminisce about old stuff with friends, I also keep birthdays in a calendar. Maybe just the professional spin puts me off :)

I understand what you mean. I don't like it either, but I've yet to find another way of explaining quickly what it does. A CRM for friends is very explanatory. But I dislike the creepiness of it.
Also maybe it's a not-a-native-speaker thing, but your use of "Manage significant others" gave me a good chuckle because all I could think of at first how it can help to hide your affair from your spouse. :)
Maybe it's not hidden. :)
The problem is it explains to the wrong audience -- the overlap in the Venn diagram of "people who know what CRM means" and "people looking for a lightweight, open-source personal tracking application" feels like it'd be pretty small.

Since the app has a person's name anyway, I'd suggest abandoning acronyms entirely and making up something that sounds like a job title: e.g. "Monica, your Personal Assistant." (Which is an actual job title, see https://en.wikipedia.org/wiki/Personal_assistant)

That makes sense. Definitely. I bet most people outside of hacker news have no idea of what a CRM is.
Just as a datapoint, my girlfriend drew a blank today when I brought it up. Also because I used to have a file for people, including her, as a test to see if I could keep track of people that I care about better; so this was right up my alley :-)
I've been on HN for years and I had to look it up. I think it's the wrong metaphor.
(comment deleted)
Nice idea. Any chance you could fix the privacy policy link?
Of course. In order to open source the product, I had to separate the marketing app from the code of the main app, and I forgot to update the link. Doh. Thanks for noticing, here is the link: https://monicahq.com/privacy.html
Love this idea, the things that would really make it a no-brainer for me would be ability to upload multiple photos for a contact (or in a note) and a native/hybrid app. I could probably deal with the webapp on my phone but an app with push notifications would be ideal IMHO.
Why multiple photos for one contact? I get the importance of one photo, but why multiple?

Yeah, if only I knew how to create mobile apps, I'd do it in a hearbeat. One more thing I need to learn.

I can speak highly of Ionic for developing hybrid mobile apps using HTML/JS/CSS
Cool product. I've used calendars in the past to maintain this kind of thing but a product has many more features than a calendar so I'm into it.

A mobile app would definitely be nice for this kind of product at some point. Push notifications for reminders / an easy entry system, integration with contacts, calendar, etc.

Either way. Thanks for this cool product, and OSS-ing it.

Thanks. Definitely. I also love the idea of OSS-ing a product. At least people will be able to contribute, or read the code and see that I have no plans in doing nasty stuff with their data at all.
Love the idea, would like to see:

* Imports from Facebook or CardDav, one at a time is horrendous. * Relate contact to Social Facebook/LinkedIn/Meetup? * Add activity from LinkedIn/Facebook other social sites to contacts * Native App

I think import seems to be the number 1 feature request. Makes a lot of sense.

Add activity from FB/Linkedin: How would you do that?

I wouldn't add activity - I would force people to not bloat their own and log it themselves.
Interesting. Would it make sense to integrate this to various social media, so that you could see your contacts profiles or recent activity, or maybe even integrate messaging?
Yeah, one of my idea would be to have a Chrome extension where you would see the private notes about the contact you are currently seeing on Facebook, for instance.
Yes but can I easily redirect my inlaws?
Redirect to... what? Unless it's a joke I don't understand :-/
Its a joke. Based on the trope of people having a poor relationship with their in-laws.
I find this utopian. Another strange thing: "Manage significant others". Maybe it's just me, but I have exactly 1 significant other.
Not your significant other per se - the significant others of all your contacts, combined
(comment deleted)
Is anyone else getting a dystopian vibe from the idea of "managing" friends and family?

I can definitely see this service being useful, but that branding makes me feel very uncomfortable.

I know :-/ Sorry about this, I'm trying to find the best way to explain what it does, without using a boring video that sucks, or poetic terms that say nothing. If you have any idea, please, please let me know :-D
Lots of people use planners and datebooks to remember important dates (like your high school best friend's upcoming wedding!) And lots of people use journals or diaries to take notes or keep memories.

These things are less about "managing" and more about cultivating relationships and memories. "Organizing" is a word with less controlling vibes. Maybe start there and take a journey through the thesaurus? http://www.thesaurus.com/browse/organizing?s=t

Ohhh that's a very good idea. I disliked the notion of management, and organization makes much more sense. Thanks a lot!
Here are some other ones that might help:

- stay in touch/keep in touch

- coordinate

- focus

- balance

- "look after", as in "look after you relationships"

How about terms related to tending a garden?

"nurture" "Attend to" "Mind to" "Tend to" "Cultivate" "Nourish"

Garden metaphors always do it for me.
"Your social memory" works much better than "manage your friends and family". So take this as a complaint about the HN headline, not about the site itself.
I wouldn't have clicked through if it said "your social memory". That sounds like some NGO talking about causes.

But this I instantly understood.

I think you could convey this pretty well if you changed the first screen shot on your page a little.

Cut out the actual browser window part, and paste that on to an image of an address book/planner with the same information about Jim Halpert. That way it's an instant visual association with an existing non-computer idea.

(comment deleted)
My memory is terrible, I've wanted something like this for ages to manage my life in general, love it!!

I would like this to be hosted for $12/year.

Blush. Thanks for the feedback. Glad that all the hours sitting on my couch coding this tool helps you today :-D
To me it's "an external brain for your social life".
The product is super cool and useful, although I hope you won't limit it to being a single-user thing because it could actually evolve into an amazing social tool. But I would really lose the word 'manage', it kind of suggests that personal relations are just another kind of task which is apt to make the people being related to feel devalued because they're not important enough to be given space in someone's day-to-day consciousness.

poetic terms that say nothing

?!

If poetic terms say nothing then why is poetry (both literary and lyrical, as in songs) so popular? Social relations are not purely functional or transactional, although they often have those aims or characteristics. Friendship and warm familial relations are based on feelings. I often say that hackers need to develop better emotional intelligence and this is a good example.

Would you take someone on a date and say 'statistics indicate that we have a high degree of socioeconomic compatibility and synergistic aesthetic appeal, suggesting that we should pursue a merger strategy so as to maximize our mutual future advantage?' Most people would prefer to hear something along the lines of 'I love you and want to marry you.'

I understand that your product is aimed at busy people who are invested in their work and want to handle their social relations at least as well as their business ones. But you need to be cognizant of their motivations for doing that; because they like, love and generally care about the people in their lives that lie outside their career. It is that drive which might move someone to start using your product, and you must appeal to that drive, which is an emotional one, in emotional terms.

Incidentally, calling it Monica carries connotations of having an assistant called Monica that helps you remember those little personal obligations and although I'm sure you didn't intend this it gives me a sort of sexist vibe because historically such tasks have often been delegated to stereotypically female subordinates by busy executives (think Pepper Potts in the Iron Man story franchise).

Even though both men and women seem to prefer female identities for things like GPS and virtual assistants, a gendered brand identity like this is likely to limit your appeal to one half of the population straight out of the gate. The brand values you wish to attach to your product are reliability, loyalty, and patience, so it would be worth your while to dig through mythology and fiction in search of characters who are associated with those qualities and then develop variations from any particularly inspiring name stems you encounter so as to leverage those psychic associations.

You know what I meant. I didn't imply poetry meant nothing. Of course not. But I see SAAS more and more describing their product in ways that are too marketing to me. I prefer to go straight to the point.

Regarding the gender, I don't know what to think about this. It's not by any mean a way to degrade women. I will definitely consider choosing another name because I understand how some people could be offended by that, which is not at all my intention, ever.

You might choose a name like Courtney, that is used by both men and women.
Of course I know what you meant, but I'm trying to give you some free branding advice that would substantially increase the likely uptake for your tool.I am not a marketing oriented person either, but successful businesses often spend about the same money/effort on marketing as they do on product development. That's certainly the magic formula in the film industry - 50% on the production and 50% on the ad campaign.
I agree and thanks a lot for your comment. I know I should be much better at marketing, it's nearly the most important criteria for a software to succeed.
For what it's worth, I don't see what all the fuss is about the name. In fact, I like it. Do these same people complain about other software named after people, like Cassandra, Linux, MySQL, Haskell etc...
> personal relations are just another kind of task which is apt to make the people being related to feel devalued because they're not important enough to be given space in someone's day-to-day consciousness.

You seem to indicate that this devaluation is a sort of false accusation to which we should not make ourselves vulnerable.

Yet, that subordinate clause rings true to me as an independent statement.

Why should I let just any person (particularly family; none of mine know CS) occupy any nontrivial amount of space in my day-to-day consciousness; when such space could instead be used by something useful?

Get a neurotypical person to explain to you.
The word "manage" has to go, but it's a tough one. Any word having to do with augmentation is too robot/AI sounding. I like the idea of "cultivating," as in the Dale Carnegie approach or the another commenter's awesome uncle with the spreadsheet. But it's a balance of memory and cultivation.

Anyway, nice work.

It's kinda weird, but it's way better than facebook. This is a digital social journal & planner. If it helps me cultivate healthier relationships, I could get into that. We need tools like this to combat the parasitic overlords' tools.
I know how you feel, it's my first thought as well. But then I realise that I'm doing this anyway - I put appointments in my diary to call my grandparents, I have todo lists for things to do with my wife, and I record promises I've made to friends so I don't forget. Having it all in one place sounds like a nice idea.
I see it more like keeping track of things. Of, course we might get into the territory you are referring to once you see that you have all this data and you start manipulating your and other's behaviour based on this data.

However, the need for recording and documentation is as old as scribbles on a cave wall and some also really do need to document things to remember.

I must agree, though, with the wording. It is unfortunate but it probably does attract those who have an itch for efficiency.

"Is anyone else getting a dystopian vibe from the idea of "managing" friends and family?"

First thing I thought. Although, it is accurate in a sense given that there's a lot to track, filter, setup and so on. It's why the same activities are called "management" in CRM. It's just socially unacceptable to say the truth sometimes. In this case, the author should change the wording so it doesn't say CRM or "manage." Instead, some propaganda along lines of "family reminder app" so you "don't miss an opportunity" might sound nicer. Actually, the opening paragraph seems fine.

On the other hand for keeping track of interactions with my adult education students, it looks quite useful.

Anyone comment on data export functions?

You can't export for now, but this is something I have in mind. You should be able to be in total control of your data, for sure. So I'll do that. Probably in CSV.
Excellent and I suppose CSV is the nearest we have for a lowest common denominator format for structured data
CardDav exists for pretty much this purpose. It's how contact lists are exported from Google, LinkedIn, iOS, mail clients, etc., and has fields for arbitrary metadata.
That makes me much more confident in spending the time to input my data. Cool.
Nope. Unless you are a psychopath you have always managed friends/family even if was managed informally in your head. You used to have a Rolodex of phone numbers and addresses. You may have even kept additional information about the person in your Rolodex, perhaps their birthday or anniversary. Important dates and social obligations used to be written on a wall or desk calendar so you didn't forget. You make notes (written or mental) of people's needs and preferences in order to accommodate them. (ie "I better have a vegetarian meal for Susan.", "John works nights so I better not call him until 6." "Sarah likes red wine.", "Joe doesn't like clubing.") You store in your mind what is happening in friend's lives to talk to them about it next time you see them. You made a paper list of people to send out event invitations, thank you notes, or Christmas cards so you don't forget anyone.

It's all social management, even if informal. But it's so natural you might not have thought about it as "management."

Nothing wrong with formalizing it and taking it all digital, if anything it can foster closer relationships if it's easy to use and consolidated. Someone can only remember so much at once and its great they care enough to store that information for easy retrieval in the future. We have never, as a society, faulted people for writing things down, (Rolodex is a generic trademark, for crying out loud), we are all only human. We don't think twice about setting a reminder to take medication or water the plants.

I believe you're missing the GP's point, which is the unwelcome connotations of power relations that attach in the words 'management' and 'customer' (from CRM). Generally a manager exerts authority over those managed, although it's true that managers in the showbiz world are the employees of performers rather than the other way around.
No. My wife and I foster, so keeping track of hearings, therapies, medications, milestones, visitations, continuing education, etc. is quite a chore. This looks intriguing, but we are already restricted from posting to any social media, so as a family we decided to not host any data externally, if we can help it. If this were self hosted I'd be taking a much closer look.
It does feel gross, even if we all implicitly do it. Some things aren't meant to be consciously commodified, I think. It's like the thought experiment of asking a friend (or your mom) how much you owe them if they make you dinner.
I did, but I sort of talked myself out of it. I keep a lot of PIM-level info on people in my address book already (which is on my computer and syncs to my phone, etc), so it's not like I don't keep some of this, but I don't go to the level of tracking when I do stuff with people other than placing reminders on my calendar. I think calling it a CRM is what's weird - it's making your friend group something different, when really it's just a fancy rolodex. The trick is for them to never, ever get hacked, should you keep some unsavory stuff in there - I think it feels like a better offline thing to me, not because I like to keep a shit list on people, but because my friends are worth more to me than most of the stuff I do online.
My first thought was that it can be subpoenaed.

For example: if, unbeknownst to you, two of your friends were involved in some kind of criminal conspiracy and you had spoken/met with both of them near the time it was known that they had met, an enterprising prosecutor could use your record of having met with them to accuse you of having taken part.

Hum. Is there anything I can do to prevent that?
Not really. If it's on your server and not protected by something like the DMCA, you have to turn it over if legally ordered to. Check with a lawyer though.
The DMCA is unlikely to affect a subpoena.
- "No knowledge" (e.g. decrypted on the client) data storage. Very very difficult to do well.

- Make it easy for people to host data independently of you. Either by running your app on thier server (related to discussion above about for Heroku/Sandstorm, but a regular VPS is probably preferable), or using your client to read data stored in some generic format, e.g. an existing CardDav server, or even just Dropbox, with the web UI running locally, or as an extension.

The most important features for self hosting are probably maturity and stability, and signed releases via an up-to-date PPA.

For using some generic back-end you'd need to support it.

Even if people self-host, if a prosecutor suspected you had data about them meeting they could probably subpoena your server.
That's true of any server or any data. The point is that you control it.
You can encrypt data on your side and only decrypt it when your users sign in. This is the approach SimpleTax uses in Canada.

Send me an email and I'll be happy to go into more detail. (I'm on a plane which is hopefully taking off soon, so I don't have time to write more right now.)

I can't think of any good, practical way to do it.

Theoretically, running the software on a server in Sealand or something like that would put the physical hardware beyond the reach of a subpoena but then, they could lock you up for contempt if you don't give your password to it.

The only thing dystopian about this is the service eventually selling off the data and others data mining you even more detailed.
I get the exact same feeling mixed with some pity for people who need to be reminded to meet a friend. Moreover, hell, if you don't know the names of your brothers children, there is something wrong with you and this app won't change that.
CRM? No... PRM... Personal Relationship Management. :)
Is there such a thing? If there is, I'll switch the wording in no time :-D
You have built such a thing! :-D
Don't worry about things not being a thing. You're making the thing
Okay, that made my day. Quotable.
Robin Hood has now officially thinged that PRM thing, sayeth Hacker News™.
That's what I thought. Not a new concept. Google it.
Yup - looking through the brochure website just made me think "Private-instance of Facebook" - and the reminders and notifications seem like something Apple's Siri will eventually do when they progress further on their "Proactive" functionality.

What's frustrating is that Outlook (you know... the big, old Enterprise-y PIM system) already supports a lot of the functionality present in Monica, such as keeping track of birthdays, anniversaries, personal notes, related calendar events, and so on - you can also arbitrary link different contacts together to define relationships (not the same thing as "linking contact cards" to aggregate a single contact's data).

Many things about Outlook frustrate me - in this case it's how Contacts management is now frozen in time - but it's also heartbreaking that Outlook was a genuinely innovative (and performant!) PIM system in its early days, but there hasn't been any innovation in Outlook's PIM functionality in the past 10 years (seriously - the feature-set for Contacts, Tasks and Notes is literally unchanged since Outlook 2007 - and even then the only significant change was adding contact photos). It wouldn't take much, besides some courage, to update Outlook's Contacts experience to be more up-to-date with the functionality provided by modern social-media platforms - it's just so close. But because it's now so entrenched it's very unlikely we'll see any significant change until someone pulls a Slack on Outlook (a-la Slack vs Lync) to prompt Microsoft into trying to compete - assuming we're not doomed to yet another Electron app. shudder

If anyone in the Desktop Outlook team is reading this - especially if you work on Contacts, please fix my biggest gripes with Contacts:

1. Make Outlook fast again. It shouldn't take 2-4 seconds to switch between Mail, Contacts and Calendars.

2. Don't make new recurring Calendar Events for Contact Birthdays and Anniversarys - why can't you have 'virtual' events in their own special calendar layer like all other systems do (even Windows 10 Calendar does) - so I don't get multiple event reminders for someone's birthday (from the 'real' calendar events that Desktop Outlook creates combined with the 'virtual' events from Windows 10 Calendar).

3. Give me more control over Contact Photos - show me the file-size, let me crop them. I don't like having to switch to my phone to edit contact photos.

4. I have contacts with more than 3 email addresses, more than 2 mailing addresses, and more than 1 mobile phone number - why is this limitation still a thing?

5. Retain a history of all Contact fields over time instead of requiring me to maintain "backup" contacts that contain older details.

I built one of these for myself in 1995 and have been happily using it ever since. Here's the source code:

  0 0 19 7 *      /usr/bin/mail -s "REMINDER: john T. birthday" me@mydomain.com
  0 0 1 8 *       /usr/bin/mail -s "REMINDER: MAKE xmas hotel reservations NOW for good pricing..." me@mydomain.com
You make your xmas hotel reservations on January 8? :) That's thinking ahead...
You are sure to get good pricing at that point!
first day of August not January 8
(comment deleted)
Could you explain how it works? I wonder what 0 0 19 7 * means.
Have a look at https://en.wikipedia.org/wiki/Cron#Overview.

In short: At 00:00 hours on 19/07 (i.e. July 19) execute that command. The * means 'regardless of what day of the week it is'.

Regardless of what year, actually. So you're reminded of your friend's birthday every year, not just this one.

[Edit:] What the... Nope, sorry, seems you're right and I'm wrong -- weekly it is. [/Edit]

(comment deleted)
it's a crontab file.

'0 0 19 7 ' means 'midnight of July 19th, regardless () the weekday.

It is example 2 from 'man crontab'.

It's a unix/linux crontab, for repetitive task. See https://en.wikipedia.org/wiki/Cron

It's minute, hour, day of month, month, day of week

In this case, repeat every 19th of july at midnight.

This is why I like HN, and why it continues to be a much-higher-quality place to visit on the web than many other forums: there were no snarky replies, no "I can't believe you don't know cron" - just multiple friendly, helpful replies explaining exactly what this format is.

What a good community.

Agreed, though my first reaction was definitely: "I can't believe you don't know cron". I had to step back a little and remember who the audience is. Then I wrote my comment (at the same time as everyone else here did).
Actually my first thought was - that guy was a smart-ass showing off. Of course many people wouldn't know a crontab line - Windows (and I guess Mac - never had one) don't have such magical tools.
Mac has cron. It's pretty standard on *NIX systems.
Yeah but is superseded by launchd. So although it has cron, it's not running by default for many years.
The file is a "cron schedule" [1]. Paste the series of numbers (and the *) into the box on the site below and you'll see it means "midnight on July 19th every year". The commenter will probably have this in their personal "crontab" file. They're emailing themselves every year on that date.

[1] https://crontab.guru/

I also use Cron for the same purposes; for one-time events, especially further in the future, I use a combination of at and mail.
Are you going to convert them all to systemd services? =p
Switched over to 'remind' personally..

Date calculations are much more flexible and the files can be modular.. and there's printed calendar generation options if you so choose.

https://www.roaringpenguin.com/products/remind

There is also the traditional Unix 'calendar' program as well..

Isnt this what facebook does? Except facebook is actually way more fun to use. Sure - they take all my information and sell it to the highest bidder. But I get cool "personalized videos" in return, for example. And all my friends are already on there - so they can do most of the CRM data input for me.
This is exactly what I don't want this product to become: Facebook. Facebook is social. Monica is NOT social. It's only for you. It's like your personal diary, except online. It's made to store things that shouldn't be seen by anyone. It's to manage YOUR personal relationships. It has nothing to do with a social community.
For me, that distinction was clearly expressed in the link and product info
Nah, Facebook shows you political and clickbait snippets with links to off-site ad heavy articles and also does autoplay videos of dogs.

On rare occasions, it notifies you that somebody got engaged or had a baby, but that's about the only similarity to Monica as far as I can tell.

Facebook, fun to use? wtf