Hacker Newsnew | past | comments | ask | show | jobs | submit | dueyfinster's commentslogin

Mine is https://www.neilgrogan.com blogging very sporadically since 2004.


I never had a good experience with mercurial from memory. Docs and examples weren't as good (not that Git was hugely better, but network effects had more resources available). I remember the CLI commands being a small bit more intuitive but as someone new to DVCS at the time (as most people would have been) - it didn't really do anything special to help new users get a handle on the mental model for how it works. I remember Facebook publicly using / backing it, was surprised they didn't do more to promote it.


I used Mercurial before Git and found it way more intuitive. I don't have much to say about the documentation, I didn't have a problem with it, but that's not the reason.

It is not just because the CLI is more intuitive, though it plays a big part.

The main reason is that mercurial is more opinionated. On a default setup, only a few commands are available, and none of them let you change the history. If you want more, you have to add an extension. These are built-in, that's just a line in a configuration file, so that's not much of an obstacle, but you have to be deliberate. It gives a natural progression, and it better defines the project organization.

With git, you have everything and the kitchen sink, literally, as it uses the "plumbing" and "porcelain" metaphor. All flavors of merge, rebase and fast forward are available, there is a git-reset command that does a dozen of different things, there is stash, the staging area, etc... The first month or two on git, I was a bit overwhelmed, none of that with Mercurial, and I already had the experience of Mercurial when I switched to git, so I was familiar with the concept of push/pull and DAGs.

Now, I tend to prefer git, though after many years, I still have trouble wrapping my head around the command line sometimes. But that's for the same reason it was so hard to me to get into it. It gives out a lot of freedom and possibilities. For example, I like the fact it is really decentralized, for example in one project the customer had a completely separate central repository we couldn't access, and they couldn't access ours, for security reasons. We worked by exchanging bundle files. At some point we also took advantage of the fact that it is possible to have more than one root commit. Also, almost all mistakes are fixable and it is hard to really lose anything (including secrets, so beware!).

For a video game analogy, Mercurial introduces you to new game mechanics as you progress, while Git makes you start in the middle of the map with all the skills unlocked.


Facebook moved to mercurial because of specific problems related to the size of their monorepo. Moreover the git maintainers were unwilling to work with Facebook to improve git to solve some of these problems. Mercurial was a better fit and was open to the help. But all that said if you don’t have a truly enormous monorepo like Facebook or Google then git is arguably the better tool given the network effects. I don’t think Facebook wanted to promote Mecurial as some vastly superior solution outside because for most people it isn’t.


>Moreover the git maintainers were unwilling to work with Facebook to improve git to solve some of these problems. Mercurial was a better fit

More add-on discussion including Microsoft+Git spurred by your previous comment about this: https://news.ycombinator.com/item?id=15725497

From the Facebook blog post, it seems like the key issue was Facebook's internal filesystem monitoring tool (Watchman) was easier to integrate with Mercurial than with Git:

https://engineering.fb.com/2014/01/07/core-infra/scaling-mer...

So, neither Mercurial-out-of-the-box nor Git-out-of-the-box could handle huge monorepos. But Mercurial's willingness to make some modifications made it easier for Facebook to integrated their custom tooling to avoid the slow Big-O O(n) scans for changed files.


> From the Facebook blog post, it seems like the key issue was Facebook's internal filesystem monitoring tool (Watchman) was easier to integrate with Mercurial than with Git:

> https://engineering.fb.com/2014/01/07/core-infra/scaling-mer...

That link is from 2014, is there any more recent work to make Git use a file watcher rather than scan the whole tree?


Facebook moved from subversion to git around 2008. Some of their teams then switched to mercurial around 2014 (I could be wrong by a couple years here or there). By 2014, git was already the main tool everyone was using —- no amount of backing by a single company would have tilted the scales.


I'm a big fan of plain text accounting also. Like the author - I started 10 years ago (mine from 2015). I use hledger mainly and also wrote converters for bank I use (xlsx to csv).

It's crazy to see just how much money I've paid Netflix since 2015 (and I'm a sub since 2011). Or Starbucks (which I rarely go to). But it's very powerful. One thing I've long wanted is better visualizations.


Interesting, do you think game devs in future will just target windows/proton and not bother with native Linux ports?


Yes, most likely. Steam is dominant, and it's not hard to make a Windows release that works under Proton.

Though in my case, I currently offer demo/beta releases for both Windows and Linux directly from Github. If I ultimately elect to release my game under a GPL license, then supporting both Linux and Windows directly would make sense.


Ironically, win32 is the only stable API and ABI on gnu/linux


It may be that they have no choice since it's their biggest source of customers. I spoke to a hotel receptionist before and she said the order of upgrades was: booked direct, booking.com, Expedia and all the rest after. The hotel couldn't afford to piss off booking as they would suffer a lot in occupancy, the other platforms couldn't match. I think it's worth giving the feedback to the restaurant direct and see if they can fix it. It's always a delicate balance depending on time and the app may penalize them.


Once I've walked into the hotel and asked for a room. They said price 20% higher than listed on booking.com. When asked about this the receptionist said I can book there.


Booking.com maybe pre-booked the room and was willing to take less profit or even sell it at a loss where the hotel itself wouldn’t.


I've done the pragmatic studio elixir and erlang courses and they are high quality. They do the same for Ruby and Rails[1]

[1]: https://pragmaticstudio.com/rails


To be honest I'm not a fan, time is cumbersome to do any sort of addition or subtraction to get exact days/hours/minutes (not to mention timezones etc).

Compare to metric units, always base 10 and always easy to convert mm to cm to m and so on.

Now that we live in a digital world - why do we consistently reinvent date/time libraries? To me that's proof enough the concepts are just hard to work with and over a long span of time verify your calculation is correct.


None of those issues with date and time are anything to do with the base, they're to do with date and time as defined by humans being inherently complicated concepts. Specifically, trying to have a single measurement "fit" for a load of different purposes.

If we had based our system around base 12, a base 12 version of the metric system would be just as easy to work with as metric is in decimal, with the added bonus that you can divide powers of the base (10, 100, 1000, etc.) into quarters, thirds and sixths without needing a decimal place, and thirds of 1 would be non-repeating.


Fascinating use of HomeAssistant. He mentioned uptime monitor in the next section - I wonder what he uses to ensure it stays online? I would guess some sort of UPS or battery backup.


Most of us have something in place since the winter of 2022 when the power outages were systematic due to russian strikes on civilians and infrastructure, amplified by lack of air defence. Most of us needed to work though so some got UPS, EcoFlows, generators, solar systems, even DIY batteries if the budget is low. This year it's more of the same.


What DIY batteries? Have you considered the new sodium/aluminum battery type? I am wondering if that battery could be easy to DIY because sodium and aluminum are cheap and available.


DIY batteries here are usually battery banks assembled from Chinese LiFePo4 cells, plus a Chinese BMS.


I imagine UPS are necessary anyways in Ukraine since the power grid is getting constantly attacked.


https://www.neilgrogan.com - I'll be 20 years [sporadically] blogging in 2024 (originally started it on blogger as a way to get a gmail account)


I've done various versions of this myself, would you mind sharing your code?


Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: