"Systemd should not default to using time{1,2,3,4}.google.com" - <AUTHOR> https://github.com/systemd/systemd/issues/437 <comment><USER3> Sounds like Mr Poettering hasn't read the vendors page and has just gotten stuck on the word vendor:

[https://github.com/systemd/systemd/issues/437#issuecomment-1...](https://github.com/systemd/systemd/issues/437#issuecomment-117440963)

"Open Source projects are of course particularly welcome to use the pool in their default setup, but we ask that you get a vendor zone when using the pool as a default configuration."

[http://www.pool.ntp.org/en/vendors.html](http://www.pool.ntp.org/en/vendors.html)

<comment><USER4> How on earth did the modern linux distro become so dependant on software from this guy, when he clearly has no real world idea of things. No wonder people are jumping ship to the various BSDs!

<comment><USER5> Perhaps it's generational? Maybe Mr. Poettering is a talented individual who lacks some specific experiences/history which requires re-learning some lessons from developing linux?

<comment><USER6> Unsure feelings when one of the first topics a community brings up about you is how you might need to be "re-educated".

<comment><USER7> This isn't just SystemD. you should ask rasterman sometime about his stint at RH Labs. There was a great interview with him and Havoc Pennington back in 1999 or 2000 where HP couldn't say a nice thing about the guy or his code, because he just didn't fit in with the redhat culture (he liked to wear formal wear to work - a subtle protest of mandatory office attire).

The entire Red Hat corporation has been like this since about the 5.2 release, when they removed "Redneck" as a system language option.

<comment><USER8> I guess someone at a TLA found the option offensive...

</comment></comment></comment></comment></comment></comment><comment><USER9> And Poettering has closed the issue with a dismissive comment after utterly missing the point. I, for one, am shocked.

<comment><USER10> He just recently provided more info

<comment><USER11> I really don't get his points.

        > Even if the google servers dont provide time that
        > is correct, its good enough to run testcases again.
        > Products however of course shouldnt use it.

So, it seems that he wants to run out-of-the-box with _some_ timeservers so that the developer/compile/testing machine doesn't have to specify them manually for tests. On the other hand he wants to require vendors to add a custom configuration so that they abide by the rules of, e.g. pool.ntp.org, by registering a vendor pool and configure systemd.

The only sane approach for me seems to be to discover the correct ntp-server in the scripts running the testcases, and leave the ntp-client in systemd unconfigured and untested if that's not possible.

Forcing developers to have a properly configured system is a much saner approach, because it affects way less people than potentially millions of users to whom a broken/wrong timesyncd.conf leaks caused by some snafu during configuration of the systemd timesyncd when packaging.

EDIT: Typos, wording.

<comment><USER12> Systemd is anything but sane. [http://lkml.iu.edu//hypermail/linux/kernel/1408.1/02496.html](http://lkml.iu.edu//hypermail/linux/kernel/1408.1/02496.html)

<comment><USER13> I love how in one sentence he accuses Poettering of being "convinced he has all the answers for everyone", and in another he states anyone who approves of systemd must be "naive or lazy or just plain clueless developers" lured by "the promise of making their lives easier".

Pot, meet kettle.

</comment></comment></comment></comment></comment><comment><USER14> > shitty servers as default are better than none

No, absolutely not. Defaults that can cause subtle errors are worse than a program abort with an error message telling you to fill in a configuration value. Especially after reminding that Google servers run "a non standard concept of time" (what does that even mean?). It is not a reasonable default by any stretch of the imagination.

<comment><USER15> > Google servers run "a non standard concept of time" (what does that even > mean?).

I know that one way they do this is through using what they call a leap smear instead of a leap second. Yesterday, instead of having 11:59:59 twice, they evenly distributed out the second over the course of the day.

<comment><USER16> I mean, technically speaking (unless there's an RFC, ISO, or ANSI that I'm unfamiliar with), having the same time twice is also "non-standard." The most correct course of action would be to have an 11:59:60, as per the actual leap- second standard.

The fact that basically no computer system in the world allows for a 61-second minute is just a failing in almost all time libraries to adhere to the standard.

(This is a fancy way of saying "Time is a quagmire and writing code to properly handle time is an exercise in optimizing ulcer generation" ;) )

<comment><USER17> On Unix, (OSX and I believe Linux, too) the man page for the tm structure specifies that tm_sec ranges from 0-60, so it does support 61 second minutes. I think this has been the case for a while. I recall noticing this years ago.

</comment></comment></comment></comment><comment><USER18> As has been noted, this is for timesyncd, usage of which is entirely optional. Additionally, as boneheaded as it is to use ntp servers from a single corporate entity when ntp.org exists, you can address this by setting your own ntp servers in the timesyncd conf file.

[http://www.freedesktop.org/software/systemd/man/timesyncd.co...](http://www.freedesktop.org/software/systemd/man/timesyncd.conf.html)

FWIW, I really like timesyncd being there out of the box with systemd. It is exactly what I want, and nothing more, about 99% of the time when dealing with ntp synchronization.

EDIT:

Let me add that if you want to specify ntp.org servers _right now_ you can add or edit the following stanza to your /etc/systemd/timesyncd.conf file:

        [Time]
        NTP=0.pool.ntp.org 1.pool.ntp.org 2.pool.ntp.org 3.pool.ntp.org

<comment><USER19> Every time I see someone point out a problem with systemd the response always seems to be "that's just <subcomponent>, and using it is _optional_ ".

Why can't systemd developers/apologists take responsibility for their bad design and horrible decisions?

<comment><USER20> Because Ubuntu become massively successful with its bad designs and horrible decisions, so now they have imitators.

Except Ubuntu did it by being good first and then attract a bunch of coattail riders to run the ship aground. Systemd got it backwards.

<comment><USER21> What does Ubuntu have to do with this?

What exactly are these fatal Ubuntu flaws?

<comment><USER22> > What does Ubuntu have to do with this?

Another example of a defective software product with an egotistical maniac at the helm (Mark Shuttleworth)?

> What exactly are these fatal Ubuntu flaws?

Unity? Upstart? Mir? The Amazon Shopping lens? A general failure to listen to the very community Canonical markets as a selling point? A terminal case of Not-Invented-Here syndrome? An inability to prevent any Ubuntu-derived device (Ubuntu for Android, Ubuntu TV, and Ubuntu's mobile edition thus far) from being more-or-less commercial flops stuck permanently in development hell until they become vaporware?

</comment></comment></comment></comment></comment><comment><USER16> Honestly, I think StoneCypher is spot-on with their comment on the thread.

"if you don't take this down, google will just remove the dns, and then you lose the ability to do this in a controlled way"

Remove the DNS or start filtering by IP address. In either case, the default is using a service in a way that isn't condoned by the service provider, and that's just begging for trouble at a time not convenient to the software maintainer in the future.

<comment><USER23> I disagree, nothing in the issues text says they are forbidden to use the server. It's not a problem for Google, it's a problem for distributions which don't change the default.

If Google removed the DNS entry they'd have to reconfigure all of their own servers, too. Not very probable.

<comment><USER24> "If Google removed the DNS entry they'd have to reconfigure all of their own servers, too. Not very probable."

That sounds suspiciously like you're saying "I'm going to keep telling everyone to use your service because it's too expensive for you to stop me or them."

I'm not sure it says anything about the other parties involved, but your willingness to knowingly externalize costs onto others says quite a bit about you

<comment><USER16> It's also almost certainly a bad assumption to make about Google, given that (a) they own the servers (so re-rigging them to just whitelist IPs is entirely possible) and (b) they are a search engine company (so finding the places where _they_ used those servers to swap out the names is _entirely possible_ ;) ).

</comment></comment></comment></comment><comment><USER25> On a related note, systemd also hardcodes Google's DNS servers:

[https://bugs.debian.org/cgi- bin/bugreport.cgi?bug=761658](https://bugs.debian.org/cgi- bin/bugreport.cgi?bug=761658)

<comment><USER26> That in itself I'm not sure I have an issue with 100%...

It is the only DNS servers that are guaranteed to have accurate results and respond quickly. The only time I use local DNS inside of my LAN is when I need local LAN entries.

The issue I have is it not reading /etc/resolv.conf, but if resolv.conf isn't setup or setup properly, falling back to Google's is a good solution.

Also, at my company (we do DDoS mitigated dedicated servers), we deploy servers with Google's set by default: we have access to Google over Equinix IX, going out to 184.108.40.206 responds as fast or faster than it does with bind, dnsmasq, and unbound, even when the entry is clearly already cached, with the DNS cache daemon running on a server in the same rack; and for uncached, Google is usually much faster.

<comment><USER27> Doesn't work so well when you take your laptop with you on travvel to China?

<comment><USER26> You shouldn't be taking electronics in or out of China, to be honest. Too much evidence that China is successfully MITMing SSL/TLS connections and physically tampering with electronics.

</comment></comment></comment></comment><comment><USER28> _Even if the google servers dont provide time that is correct, its good enough to run testcases again. Products however of course shouldnt use it.

the ntp pool made very clear we cannot use them. As i read what is written above google just says the servers are crap but doesnt explicitly deny us to use them. Which is why id like to leave them in place because they are at least googd enough for testing purposes. Id be willing to take a patch that adds a big warning to configure if the default ntp server to use is not set when invoking configure. People who ignore that warning are then on their own._

sounds like a good enough reason to me

[https://github.com/systemd/systemd/issues/437#issuecomment-1...](https://github.com/systemd/systemd/issues/437#issuecomment-117433553)

<comment><USER29> I wonder why they can't use ntp pool won't allow Systemd to use them? Maybe it's only for testing purposes that they can't be used.

If that's the case, they could maybe ship a product and a testing configuration file?

<comment><USER30> > Open Source projects are of course particularly welcome to use the pool in > their default setup, but we ask that you get a vendor zone when using the > pool as a default configuration.

systemd are perfectly entitled to use ntp pool as defaults.

Source: www.pool.ntp.org/en/vendors.html:

<comment> why-el As long as they get a vendor zone, that is. LP is against this, since he does not consider systemd to be a vendor.

</comment></comment></comment></comment><comment> vezzy-fnord Linked email from Lennart has some interesting reasoning for this: [http://lists.freedesktop.org/archives/systemd- devel/2014-Aug...](http://lists.freedesktop.org/archives/systemd- devel/2014-August/022575.html)

<comment><USER31> I basically read that as "this isn't our responsibility so we don't have to do anything" which is sort-of true.

I think if they didn't configure ANYTHING by default, well, in that case the distro HAS to figure something out or else it won't work. OK, that's legit.

I think if they wanted to pick an officially blessed config option then they should go through the necessary steps to have it be official and blessed. Whatever that means.

But this seems to be the worst of both worlds; we're going to pick something for you so it'll work without intervention, but then we'll tell you that you're idiots for not fixing a thing which isn't obviously broken to begin with.

Ship it broken, or ship it working but don't ship it working poorly and then tell people it's their own fault.

<comment><USER32> It's simpler than that. Knowingly hardcoding someone else's timeservers without even speaking with the operator of said timeservers is Internet hostility, particularly when your project is popular enough to be deployed on potentially millions of machines. D-Link hardcoded PHK's timeserver many years ago:

[https://people.freebsd.org/~phk/dlink/](https://people.freebsd.org/~phk/dlink/)

Netgear hardcoded the University of Wisconsin even earlier than that:

[http://pages.cs.wisc.edu/~plonka/netgear- sntp/](http://pages.cs.wisc.edu/~plonka/netgear-sntp/)

The best part about the Netgear one was it hit upwards of a quarter million packets per second and actively resisted mitigation by admins. Seriously, don't hardcode. Ever.

<comment><USER33> Companies won't learn until the time servers they shipped on hundreds of thousands of products stop working from one day to the next because the operator of the server didn't feel like offering _them_ a free service.

</comment></comment></comment></comment><comment><USER34> Somewhat off topic, but in the referenced Google blog describing their leap smearing technique, they say that their correction factor is "lie(t) = (1.0 - cos(pi * t / w)) / 2.0" (where w is the length of time over which they are smearing). Does anyone know why they do not just do a linear correction?

<comment><USER35> There was a discussion about HOW it works, but not WHY they chose that method: [http://stackoverflow.com/questions/11279992/math-behind- goog...](http://stackoverflow.com/questions/11279992/math-behind-google-leap- second-smear-formula)

My guess is they wanted time to deviate less at the start of the smear window, instead of deviating equally at all points during the window. But perhaps it turned out not to be an issue.

<comment><USER36> My guess is that they wanted to avoid a discontinuity in the time's derivative. At t=0 and t=w, lie'(t)=0, so the clock is smoothly transitioned into and out of a faster rate.

</comment></comment></comment><comment><USER37> Boneheaded default behavior in the systemd project? How surprising.

<comment><USER33> Unnecessary inflammatory comments aren't much better than bad default behavior in software.

I'd say they're a lot worse, actually.

Edit2: And now the entire thread is getting derailed with inflammatory comments. This is sad. I've come to expect more from HN.

<comment><USER9> For good or ill, Lennart Poettering is not well regarded in these circles.

<comment><USER33> Lennart is a skilled dev with some excellent ideas and some controversial ideas. The stuff he designs eventually ends up being picked by distributions and defaulted.

And for creating software that simplifies the lives of distros and _gets picked up_ , he is "not well regarded" as you say. But don't mince your words, people fucking hate him for it. They don't even _know him_ yet they despise every fiber of his being. Have you seen some of the hate that goes on even _here_?

And _everything_ he does or writes is getting analyzed like a teenager analyzes every character in his girlfriend's texts because "oh god I'm so in love". Look at this issue. He mis-presses send on a github comment and immediately you have 10 comments without even waiting for an explanation, calling the guy "absurd and stupid".

He's not the only one getting treated like that by the community. One day, one of those devs will kill themself, and people will rush him to talk further about them like they know them. Exactly like what happened to Aaron.

Yeah I sure would love to get treated like that for working full time on improving foss. /s

Edit: It's fucking appalling how I get immediately downvoted, without any reply, just for _defending_ the guy as a human being. Really proves my point.

<comment><USER38> "Lennart is a skilled dev with some excellent ideas and some controversial ideas. The stuff he designs eventually ends up being picked by distributions and defaulted."

He works for RedHat. That's why his generally-not-so-great software ends up in distributions.

That he has characterized the entire Open Source community as "full of assholes" really doesn't endear him to folks here and elsewhere, especially in light of his own behavior.

<comment><USER33> > He works for RedHat. That's why his generally-not-so-great software ends up > in distributions.

As an archlinux TU, an LXDE/LXQt developer and someone close to a lot of distro maintainers, I can assure you, it's not. Systemd got popular because it's good, and it fixes and standardizes a lot of pain points.

Red Hat being behind the development just means the product gets actively developed. Not all software has the chance to flourish like that.

<comment><USER39> As a multi-platform Unix developer and someone often responsible for system administration, I can assure you that systemd does in fact "standardizes [sic] a lot of pain points." It being good is where we certainly disagree.

Red Hat funding the product means more than it being actively developed. It also implies control over the offering's compatibility, functionality, and direction. It means control over _everything an OS using it can do_ as _all_ processes will have systemd as its parent.

</comment></comment></comment></comment></comment></comment></comment><comment><USER40> His reasoning is absolutely fine: It's an okay default which distributors should change (for which adding a configure warning would make sense). Direct users of the source don't have to care, or can make the configuration change themselves.

</comment><comment><USER41> Wait, why is systemd running an ntp client?

<comment><USER42> Because, ultimately, PID 1 runs everything?

<comment><USER8> Nope. But everything depends on a specific binary running as pid1, something that is quite new in Linux history.

Especially when thanks to dependencies on dependencies, desktops start requiring a specific binary as pid1.

</comment></comment></comment><comment><USER43> Can someone explain to me what systemd detractors are actually worried about? In practical, not purely philosophical terms?

<comment><USER44> I haven't yet used systemd, so maybe it works great, but here are the warning flags:

0) pulseaudio 1) there used to be many choices for startup that were relatively easy yo switch between. Systemd seems to be hard to switch to and back. 2) systemd seems to keep reimplimenting old things in its suite, without any regard for the previous experience.

Fundamentally, I worry that one day when in update my debian box, things are going to be super broken as a result of systemd subsuming many pieces of the system with new buggy versions that are not easy to stop using.

This is in contrast to openbsd: Their developers also have a poor attitude, and reimplement old ideas, but they develop in a modular fashion, and are conscious of past experience. By modular, I mean I can take their ntp server if i like it, without switching everything. And it's relative easy to switch between their https and others, etc.

<comment><USER43> So, a lot of that sounds like philosophical disagreement. The one practical concern in there is "I worry that one day when I update my debian box, things are going to be super broken", and it appears that by "broken" you mean "requiring systemd".

I still don't understand what the problem is.

<comment><USER8> How is this for practical:

Update box, get systemd, fail to boot because of a fstab entry you barely remember was there that was acceptable to mount for years, but systemd stops the boot dead on.

Or stall on reboot/shutdown because they still can't get straight that NFS is a mount over the network, and so needs to be unmounted before taking the network down.

their DNS client that quietly grew a cache was found to be susceptible to cache poisoning. A issue that has been known about and protected against for a decade by more mature DNS implementations.

And i think their dhcp client (yep, it has that to) ignores a bunch of best practices/security in the name of speed.

The whole edifice is a NIH of cards.

This even though the project leadership is supposedly very keen on security...

<comment><USER45> Systemd correctly implements the "noauto" and "nofail" keywords in fstab(5) in the way they have always been documented: if neither of these is specified for a filesystem, then that file system will be mounted at boot time and a failed attempt to mount that filesystem implies a boot failure.

The fact that previous init scripts gladly ignored these failures does not reflect negatively on systemd but on those init scripts.

By the way, FreeBSD has the same options, except that "nofail" is called "failok".

<comment><USER8> Odd, i find nothing in the fstab man file about nofail.

And all that the mount man file says on it is that it suppresses error messages.

Neither dictates any specific behavior when said errors show up.

<comment><USER45> Ok, it is younger than I thought, it was added in 2008 so more conservative veteran UNIX admins might not have heard of it:

      Util-linux-ng 2.14 Release Notes (09-Jun-2008)
      </comment></comment></comment></comment></comment></comment></comment><comment></comment><comment></comment><comment></comment><comment></comment><comment></comment><comment></comment><comment>====

      Release highlights
      </comment><comment></comment><comment></comment><comment>

      mount(8) supports new "nofail" mount option.

Then it wasn't documented for 2 years, the commit that adds it to the fstab.5 man page is from 2010:

[https://github.com/karelzak/util- linux/commit/abe3d704b6aeb6...](https://github.com/karelzak/util- linux/commit/abe3d704b6aeb6b82ff32e8599edb56525cdfd72)

Interestingly, it pre-dates the similar FreeBSD parameter by 3 years:

[https://svnweb.freebsd.org/base?view=revision&revision=22283...](https://svnweb.freebsd.org/base?view=revision&revision=222832)

      Add a special mount option "failok" to indicate that the administrator wants
      the system to proceed to boot without bailing out into single user mode,
      even when the file system can not be successfully mounted.

Oh and people are of course invited to down-vote me again, I've got karma to burn, and the evidence that systemd is doing things in exactly the same way as FreeBSD clearly needs to be suppressed if we want to maintain our regular rituals of pointless outrage on this site.

<comment><USER8> And the fstab line is a copy and paste of the mount line on nofail. Basically it just suppresses the error code, and do not dictate any behavior for the larger system.

</comment></comment><comment><USER46> "poettering locked and limited conversation to collaborators 41 seconds ago"

LOL, what a solution :)

<comment><USER47> It should be only with collaborators. Just take a look at how useful this entire thread is. /s

</comment></comment><comment><USER47> Arch doesn't have it set to google's servers by default. Do any of the other distributions? If that's the case I see most of the points on this thread being moot. In practice google's server's might be used much at all...

<comment><USER48> Ubuntu and Debian are using their own pools ([https://anonscm.debian.org/cgit/pkg- systemd/systemd.git/tree...](https://anonscm.debian.org/cgit/pkg- systemd/systemd.git/tree/debian/rules?h=experimental)). Fedora and RHEL are using their own pools as well ([http://pkgs.fedoraproject.org/cgit/systemd.git/tree/systemd....](http://pkgs.fedoraproject.org/cgit/systemd.git/tree/systemd.spec) ctrl+f ntp). A lot of noice about nothing.

</comment></comment><comment><USER49> I wonder if there is also a privacy angle to consider here, as in the "yet another thing that phones home to Google".

<comment><USER50> Google was saying something along the lines of "please don't use our time servers. They're not correct for your purposes and only if you know that and take that in to account (like we do) it'll mess everything up by about 0.04 at the moment"

They also mentioned it was not a public service that was meant to handle public loads.

</comment></comment><comment><USER7> I've been very critical of Poettering in the past, but after reading all the replies here, I'm starting to wonder if all if his terseness could be chalked up to extreme autism combined with social anxiety coping mechanisms (complete with memorization of pithy replies). This makes me feel really bad about that time he was "heckling" the guy at the conference, saying things like "if you don't like logind, you must hate the disabled"; he was taking the insults of his program very personally, and went for the political angle/fallacy as an attempt to shield a deep wound.

I now kinda feel bad for the guy a little.

</comment><comment><USER51> These choices are the reason for the criticism on systemd. It tries to do too much in too short. It seems to me that their moto is "code first, ask questions later".

Another example is their choice of words for the mount units. Instead of standard industry terms (source, destination, device, directory, mountpoint, path) they chose to use the words "what" (for source/device) and "where" (for directory/mountpoint).

<comment><USER8> I have taken to consider it the devops/web mentality.

I see it in how Google does Android (and to a lesser extent Chrome) as well.

</comment></comment><comment><USER52> LP needs to know that there is basically nothing that he can say that the vitriolic people will accept. He will always be evil and out to get their "free-dums".

This is such a non-issue. How many people build systemd from scratch? Distro's all do their own thing for system time.

</comment><comment><USER50> Pottering has said his explanation was lost by github that he typed on his phone.

<comment><USER53>
      > Pottering has said his explanation was lost by
      > github that he typed on his phone

Clearly, it's up to the vendors to ship a completed explanation.

</comment></comment><comment><USER27> Between this and _this_ :

[https://bugs.debian.org/cgi- bin/bugreport.cgi?bug=761658](https://bugs.debian.org/cgi- bin/bugreport.cgi?bug=761658)

I think I'm just going to have to remove systemd from my Debian installs after all. Better to do it while the documentation on doing so is clear and old- stable etc is still fresh.

I had decided to give it a shot, but this is just absurd.

</comment><comment><USER54> I agree with the fact that systemd is not a distribution to be honest however when I play devil's advocate I can totally see the reason they should be considered a vendor.

Suppose it is all interpretations at the end of the day :(

</comment><comment><USER55> wow... there's a lot of people being really rude to each other in here. too many chefs in the oss kitchen these days.

</comment><comment><USER56> I don't understand his reasoning. What's wrong with registering systemd vendor? Does it put any obligations? It's just a DNS record.

</comment><comment><USER57> Well, that's a surprise. Lennart just locked it.

</comment><comment><USER58> [https://devuan.org/](https://devuan.org/)

Just so everyone knows that the anti-systemd crowd has somewhere to jump, as opposed to just sitting around being angry about decisions which have already been made.

<comment><USER59> I jumped to OpenBSD. That's certainly a cool project and I point other people there, but it's not production ready yet.

</comment></comment><comment><USER12> Wtf is the matter with these systemd guys? Why on earth does anybody put up with this software?

<comment><USER60> SystemD is a Linux cancer that continues to grow uncheked. If this keeps up, a base Linux system will be nothing more than the Kernel, Systemd, and Bash.

<comment><USER41> My biggest concern is that distros like Debian and CentOS, whose goals normally include stability to the point that they are often railed against for including old, sometimes too old software, have adopted Systemd before it had any real rollout and experience.

I could see distros like arch, that want to test new stuff and are known to work on bleeding edge software would make sense.

<comment><USER61> > My biggest concern is that distros like Debian and CentOS, whose goals > normally include stability to the point that they are often railed against > for including old, sometimes too old software, have adopted Systemd before > it had any real rollout and experience.

That's a bit disingenuous, Fedora 15 (released May 2011) was the first distribution to enable systemd by default, so there were at least 2 years of "rollout and experience" when Debian 8 (April 2015) and CentOS 7 (July 2014) switched. And at least in the case of Debian, it was already available as an option since 2012.

<comment><USER41> 2 years on one distro (that as far as I know, isn't popular for server-based infrastructure) is not what I would consider "real rollout or experience".

And yes, while available in debian, very few people used it for the reasons I'm talking about: it hasn't been heavily tested.

</comment></comment></comment></comment></comment><comment><USER62> I dont want google knowing where I am all the, uh, time.

</comment><comment><USER38> Is it too late to extricate systemd from distributions? I am really sick and tired of this project ruining Linux.

<comment><USER63> Feel free to fork a distro.

It's only "too late" in the sense that most distro maintainers appear to disagree with you about it ruining Linux so you'd face a very steep uphill battle to convince people (thankfully, in my opinion, given how much more pleasant systemd has been to deal with for me than the other existing alternatives so far)

<comment><USER8> Yep, lets appeal to authority...

<comment><USER63> There's no appeal to authority in my comment. While I believe systemd is a step up, I here merely pointed out that most distro managers disagree with him, but that this also only precludes him from using those distros - <USER2> stops him from forking one, or finding some suitable niche distro.

</comment></comment></comment></comment><comment><USER20> That Lennart fellow is running an intentional DDOS attack on Google's servers. Google has every right to call for help from criminal authorities in Lennart's jurisdiction.

At the very least, Google reps should ask Red Hat reps to defend their reputation and reign in or sanction their rogue employee who is attacking be Internet in their name.

<comment><USER64> I seriously wouldn't be surprised if this ends up with google officially providing free "Google Time" for everyone.</comment></comment>


Don't be fooled by Vanity Metrics - <AUTHOR> http://techcrunch.com/2011/07/30/vanity-metrics/

<comment><USER2> Hoping this gets up-voted until its just above: <http://news.ycombinator.com/item?id=2825756></comment>


Ask HN: How to growth myself as a hacker? - <AUTHOR> I am a self-taught web developer. I had been working as a web developer for a little over 6 years. Now a day, I feel like I have no idea what to do. Is that normal?
I mean, people said learn this programming language or that programming language. I do the basic, I know how things work on that language. After that, I am not using those at the job. So, forgot or don't learn anymore. Does that happen to you, if so how do you overcome this?
Another one is sometimes I feel like I am doing an ordinary job. I want to do something special, something cool. Does that happen to you? If so how do you overcome this as a programmer? <comment><USER2> Hi uvu,

It's not possible to know and remember everything, I would reccomend you take a read at Dan Abramov's blog post, 'Things i dont know as of 2018'. I think it should help aleviate any fear of forgetting or not knowing something. Keep notes on things you find interesting, break harder things into smaller problems and most importantly keep trying and have fun learning.

[https://overreacted.io/things-i-dont-know-as- of-2018/](https://overreacted.io/things-i-dont-know-as-of-2018/)</comment>


Spamnesty – A Bot to waste spammers' time - <AUTHOR> https://spa.mnesty.com/ <comment><USER2> Great idea! Wasting spammers time is one of the very few ways of making them effectively lose money. Still the project needs some pseudo randomization in order to fool basic research. Some of the messages I read contained the sentence "I am a bit busy now, but I am definitely interested. When can we talk?". If one searches for that sentence in quotes Google returns four pages of references to Spamnesty. A slightly more clever spammer would sense the trap in minutes. I'm not aware of any program capable of add some entropy to a sentence maintaining its semantics and readability (save for insertion of random errors), but one could use a translator in different languages. Say English->German->Russian->Spanish->Polish->Danish->English, then send the resulting string as a reply. The above string for example becomes: "Now I'm a bit busy, but I'm definitely interested. When can we speak?" which (almost) fools the search. Almost because the 1st page still contains a couple references to Spamnesty due to the above sentences strong similarity, but they're well buried together with other completely unrelated stuff.

BTW, pairing this with a personal assistant stripped of any access to personal information/property/devices (such as an hypothetical open source cloudless one) and instructed to ask for details on every possible part of the offer, one could make the perfect weapon against phone telemarketers as well.

<comment><USER3> > A slightly more clever spammer would sense the trap in minutes.

Spammers are going to develop anti-spam filters :)

<comment><USER4> I guess spammers make most money from the lowest IQ percentiles on the internet. Therefore, we only have to develop AI that is as smart (stupid) as those people, and spammers won't be able to tell the difference.

</comment></comment></comment><comment><USER5> Well done. It does get the spammers frustrated. I remember reading about a similar thing[1] where instead of emails it was automated telephone replies and the scammers were cussing at the bots and generally super confused.

It did also manage to flood their phone lines making their call center useless for a while.

[1] [https://motherboard.vice.com/en_us/article/bj8wg4/we- talked-...](https://motherboard.vice.com/en_us/article/bj8wg4/we-talked-to- the-hacker-who-flooded-alleged-irs-scammers-with-robocalls)

<comment><USER6> Some magnificent genius has created the perfect bot for hooking predatory telemarketers. "Lenny" is a slightly confused elderly man with poor hearing. He wanders off topic, he isn't sure what you just said and he is absolute catnip for crooks. If you haven't heard a call to Lenny, you're in for an absolute treat. This call from a tech support scammer lasts an exhausting 31 minutes:

[https://www.youtube.com/watch?v=UJTxkPLVxrc](https://www.youtube.com/watch?v=UJTxkPLVxrc)

[https://www.reddit.com/r/itslenny/](https://www.reddit.com/r/itslenny/)

<comment><USER7> The thing that makes me angry with some of those recordings is when the callers still think that they are talking to a dotty old fellow who they can con (they usually cotton on to the trick in the end). When to my ears Lenny sounds like someone with dementia who needs help and should not under any circumstances be sold to without a legal guardian present, what they seem to take from the situation is "great, I might make my who day's quota on this daft old coot". At that point "but it is my job" really doesn't cut it.

<comment><USER8> If they didn't try to get the sale, they'd probably get fired and swapped with someone who would.

<comment><USER9> The capitalist's Nuremberg defense?

</comment></comment></comment></comment></comment><comment><AUTHOR> OP here. Just to clarify, because I see a lot of congratulations. I just shared the project, I'm not the author.

Based on the GitLab project, the author seems to be @stavros:

\- [https://gitlab.com/stavros/Spamnesty](https://gitlab.com/stavros/Spamnesty)

\- [https://twitter.com/stavros](https://twitter.com/stavros)

\- [https://www.stavros.io/](https://www.stavros.io/)

<comment><USER10> Yep, that's me!

<comment><USER11> You may want to add a keyword check if the spammer starts sending you back bounces:

[https://spa.mnesty.com/conversations/bkpeczav/](https://spa.mnesty.com/conversations/bkpeczav/)

<comment><USER10> Good idea, added, thank you.

</comment></comment></comment></comment><comment><USER12> I just tried to forward a lot of spam messages, and got the response:

554 Recipients' domain disabled

Reporting-MTA: dns; googlemail.com Received-From-MTA: dns; </comment><comment>----@gmail.com Arrival-Date: Sat, 30 Dec 2017 20:49:25 -0800 (PST) X-Original-Message-ID: <email@example.com>

Final-Recipient: rfc822; firstname.lastname@example.com Action: failed Status: 5.0.0 Remote- MTA: dns; mxb.mailgun.org. (184.108.40.206, the server for the domain mnesty.com.) Diagnostic-Code: smtp; 554 Recipients' domain disabled Last- Attempt-Date: Sat, 30 Dec 2017 20:49:27 -0800 (PST)

<comment><USER13> Tracked at [https://gitlab.com/stavros/Spamnesty/issues/81](https://gitlab.com/stavros/Spamnesty/issues/81):

> Unfortunately Mailgun has disabled the domain due to rate limits. All we can > do is wait […] I think it's just the HN effect that got it to send too many > messages at once.

</comment></comment><comment><USER14> That's a cute idea. But I wonder if the system is mis-matching messages and replies.[1] How did a spam for fake Ray-Ban sunglasses turn into someone wanting app development?

[1] [https://spa.mnesty.com/conversations/cturvzsr/](https://spa.mnesty.com/conversations/cturvzsr/)

<comment><USER10> I was curious about that too and checked, but couldn't find anything. It goes by the X-Reply-To (IIRC) header and they matched.

</comment></comment><comment><USER15> From glancing over some conversations, it looks like the bot is mostly talking to other bots.

That said, I think it's nice to be able to reflect the same attack vector upon the attackers to make the attack less efficient and hopefully less attractive.

<comment><USER16> Many of the replies seem like they involved at least some human effort, although it would be nice to be sure--I wonder if there's some way to introduce some spammer-appropriate text captcha into the exchanges?

</comment></comment><comment><USER17> Tried forwarding three emails, got this:

Message not delivered There was a problem delivering your message to firstname.lastname@example.com. See the technical details below, or try resending in a few minutes.

The response was: 554 Recipients' domain disabled

</comment><comment><USER18> As someone else mentioned here, the only risk is that spammers will blacklist mnesty.com .

There should be some type of domain rotation (or you can test spoofing, just to see if spammers use the same anti-spoof software everyone else does), just like how spammers do so.

As an aside, kudos for using gitlab instead of github.

<comment><USER6> If and when that happens, someone can pick up a suite of cheap domain names. Thanks to the proliferation of generic TLDs, you can register a domain for less than a dollar per year through a legitimate registrar.

</comment></comment><comment><USER19> I once made something very similar, back then it was called an autobaiter by the scambaiting community. It would actually figure out what kind of scam the spammer was pulling and adjust its script in kind to pretend to play along with the scammers script.

I should dig that up again.

<comment><USER10> Spamnesty also has multiple scripts and you select the kind of spam to reply to. There's an MR open for doing this automatically, but it's pretty big and I've put off reviewing it for way too long.

</comment></comment><comment><USER20> So it would be hilarious if you connected the spam asking for manuscripts[1] to the fake manuscript generating code [2]. We would end up with bot published journals.

[1] [https://spa.mnesty.com/conversations/cjubnfdx/](https://spa.mnesty.com/conversations/cjubnfdx/)

[2] [https://pdos.csail.mit.edu/archive/scigen/](https://pdos.csail.mit.edu/archive/scigen/)

<comment><USER10> Oh God, I have to do this now.

</comment></comment><comment><USER21> I have been using this site for about a month on every piece of spam that tells me to write back. But, I have not gotten any responses. How are they even making money if they don't respond to clearly interested potential customers?

<comment><USER22> This website has been around for a while (it's the seventh time it's posted here) so it's possible spammers have blacklisted the domain by now.

<comment><USER10> Oh wow, seventh? I think it's the second time I see it. Didn't I only build it a few months ago?

EDIT: Oh huh, it's been more than a year: [https://www.stavros.io/posts/spamnesty-waste-spammers- time/](https://www.stavros.io/posts/spamnesty-waste-spammers-time/) How time flies.

</comment></comment></comment><comment><USER23> Hmm. Tried it and the email bounced back with:

"554 Recipients' domain disabled"

<comment><USER10> Unfortunately, Mailgun is throttling the domain due to large rates of mail. All we can do is wait the ban out, I'm afraid.

<comment><USER24> Looks like you need a new domain provider; this is a show stopper.

<comment><USER10> I would agree, but I make liberal use of the free limits so I can't complain much. I don't really want to spend too much money running Spamnesty.

<comment><USER25> Are you able to easily detect whether your account is currently blocked and add some warning to the front page? Would make it easier than just spamming email@example.com until the mails don't bounce anymore...

<comment><USER10> I don't think Mailgun expose that in any API, I'm afraid. Good idea, though, I'll see if there's something available.

</comment></comment></comment></comment></comment></comment><comment><USER26> I love the use of the subdomain and email firstname.lastname@example.com to hide the name from spammers. But won't human spammers eventually figure out what mnesty.com is and stop responding?

<comment><USER10> Sure, but the goal is to waste their time a bit, you can't fool them forever anyway.

<comment><USER27> True, but also being a bit more random where it's not trivial to filter the bot on the spammers side would make it just a little bit harder to ignore.

<comment><USER10> That's true. Unfortunately, it's not trivial to add more domains, as you'd need to own them all (to add DNS records for sending and receiving). I wanted to accept donations at some point, in the form of pointed DNS records, but realized that I couldn't do that without owning the domain, as if the domain lapsed or was transferred, Spamnesty wouldn't know and it would keep sending email from that domain, to no avail.

<comment><USER27> Out of curiosity, have you ever tried to track any stats about how often it reaches a spammer, whether it's interacting with the same spammer multiple times, etc?

While I think the donating of DNS records is an interesting idea, I personally wouldn't want to risk giving permission to an outside party for the domains I use, and I don't think it would be worthwhile to try and correctly maintain a domain just as a donation.

<comment><USER10> I don't have any stats, no. I assume most spammers are using random domains, so they wouldn't be very accurate anyway.

</comment></comment></comment></comment></comment></comment><comment><USER12> I look forward to sending many emails your way!

Spam is a daily problem for me. I can't use auto-filters, because I live in Taiwan and most emails written in Chinese are flagged as spam. That includes important messages from my bank, colleagues, and landlord. Eventually I gave up using auto-filters, and I now manually delete ~50 spam every day.

Being able to do something useful with that will make my spam-sorting a little less mind-numbing.

<comment><USER28> Have you considered registering your own domain and giving out personalized emails to everyone? E.g. email@example.com? That way, you could rotate most often leaked prefixes regularly without disturbing other recipients.

<comment><USER12> I use Mailnull extensively, but I still get a lot of spam directly to my Gmail address that I've had since 2005.

</comment></comment></comment><comment><USER29> This is the email version of when Telemarketers call me and ask to "speak with someone in the house between the ages for x-y" to which I say, "sure just a sec", then put the phone down on the desk and walk away.

<comment><USER30> At this point, I've basically stopped answering my cell if I don't recognize the number. If it's important, they'll leave me a voicemail (it never is.).

One other thing I did was ported my landline over to callcentric.com, where for $3.50/month or so, I can 'firewall' all calls coming to that number, making it safe to give out to anyone. Their call treatments allow me to, by specific number or patterns (800*), drop, send to voicemail, play the "number disconnected" tone, forward, etc. It's great - no more calls I don't want.

<comment><USER31> I use google voice call announce for anyone not in my contact list

<comment><USER32> Is that a GV setting? Is it available on iOS?

<comment><USER31> Yes absolutely. I use the iOS app but I configured the whole thing on my laptop using the website.

switch to "legacy google voice" and then go to settings: [https://i.imgur.com/wbaV75e.png](https://i.imgur.com/wbaV75e.png)

</comment></comment></comment></comment></comment><comment><USER33> I saw www.rescam.org on here a while ago, definitely worth a visit!

<comment><USER34> The first thing I thought of was rescam, not sure how this project differs from rescam

</comment></comment><comment><USER35> Gamifying this kind of thing would be intriguing. I'm imagining some server that would work like spamnesty, i.e. you could easily let it handle your spam. But I'm also imagining the possibility of registering as a bot creator and plugging in your own algorithms. API-wise it would be super simple, much like creating a chatbot for Slack, but the logic could be as advanced as one would like. The server would then score the algorithms on established metrics such as "average number of responses" or what one might dream up. There would be leaderboards and stuff.

It would all work nicely until the spammers start creating their own bots to keep our bots busy. Bots would keep inane conversations going forever.

Then, I presume, Skynet.

<comment><USER36> Cory Doctorow's story about spam bots being one of the last things alive: [https://craphound.com/overclocked/Cory_Doctorow_- _Overclocke...](https://craphound.com/overclocked/Cory_Doctorow_- _Overclocked_-_When_Sysadmins_Ruled_the_Earth.html)

</comment></comment><comment><USER37> Forwarding from gmail to email@example.com results in

        554 Recipients' domain disabled

</comment><comment><USER38> <firstname.lastname@example.com>: host mxb.mailgun.org[220.127.116.11] said: 554 Recipients' domain disabled (in reply to end of DATA command)

</comment><comment><USER39> What we really need is something like this for the phone scammers, particularly the "IRS" scam I've been getting regulars calls from most of this year.

<comment><USER40> Someone made a call bot called "Lenny" to fool telemarketers, which uses recorded messages. They put up their call logs on YouTube:

[https://www.youtube.com/playlist?list=PLduL71_GKzHHk4hLga0nO...](https://www.youtube.com/playlist?list=PLduL71_GKzHHk4hLga0nOGWrXlhl- i_3g)

<comment><USER41> Hahaha, that was hillarious! I wish there was a bit of voice recognition too, because then this bot would be unbeatable! There should also be a few more variations, but then it seems more than enough to get the seller/scammer enganged for quite some time.

</comment></comment></comment><comment><USER42> Hm, I'm getting:

<firstname.lastname@example.com>: host mxb.mailgun.org[22.214.171.124] said: 554 Recipients' domain disabled (in reply to end of DATA command)

</comment><comment><USER43> I guess they were a bit too successful - I'm getting "554 Recipients' domain disabled' when forwarding msgs to them.

</comment><comment><USER44> Honestly, why don't we get insider / whistleblower posts here on HN ? I understand spamming is quite vilified among most techies, but _someone_ is doing the spamming. Is it because the bulk of spamming is done using very unsophisticated ways ? We get anonymous posts on pretty much all other topics.

</comment><comment><USER45> It looks like in many cases [1] it's confusing the threads? Subjects and discussions start changing after a few messages in many threads I looked at.

[1] [https://spa.mnesty.com/conversations/vkeezpyz/](https://spa.mnesty.com/conversations/vkeezpyz/)

<comment><USER46> I see this all the time and have assumed it's related to difficulties correlating outbound messages (to the spammer) with responses. Also within a message thread the service sometimes fails to respond to the most recent email from a spammer. An example thread showing both issues: [https://spa.mnesty.com/conversations/caabzkyg/](https://spa.mnesty.com/conversations/caabzkyg/)

<comment><USER10> The failure to respond is because I set a limit, it stops after a few tens of messages to avoid endless loops with bots. The other messages are because it gets put into a list and just gets spammed, as far as I can tell.

</comment></comment></comment><comment><USER47> Just read through this one [https://spa.mnesty.com/conversations/ecfrqrps/](https://spa.mnesty.com/conversations/ecfrqrps/) – and was laughing stitches. Great job!

<comment><USER10> Oh wow, it really gave them the runaround there. I love the link to the forever-loading page, I forgot I had added that.

</comment></comment><comment><USER48> > Spamnesty is a way to waste spammers' time. If you get a spam email, simply > forward it to [email protected]

Maybe it would be more appropriate to show email there, since it's intended for spammers as well.

</comment><comment><USER49> I tried this when it was new, and saw two issues with it. Firstly, it uses western names as the responder, which may not be the best case everywhere — ideally the person submitting the email should be able to specify a name to use. Secondly, the mnesty name and Mnesty LLC wouldn't seem believable to many (human) spammers either, depending on the region. I didn't get responses for many emails I submitted — my guess is that the spammers thought it's a waste of time (which is also good, but not frustrating them enough).

</comment><comment><USER50> This is one of the best: [https://spa.mnesty.com/conversations/mbvnmrbc/](https://spa.mnesty.com/conversations/mbvnmrbc/)

</comment><comment><USER51> Ha, my comment from earlier today [1] reposted as a top of front page post.

It's like when you say something funny in a group setting which only one person hears, and instead of asking you to repeat it for everyone, they repeat it loudly themselves like it was thier joke! :)

Edit: Heaven forbid that you should point out that HN is sometimes just like Reddit! Downvote away, I have no interest in MIPs†.

[1] [https://news.ycombinator.com/item?id=16035487](https://news.ycombinator.com/item?id=16035487)

†Meaningless Internet Points

</comment><comment><USER52> I have the feeling that all of this is going to finish bot against bot.

</comment><comment><USER43> I guess they were a bit overwhelmed - I'm getting "554 Recipients' domain disabled " when forwarding to them.

</comment><comment><USER53> Reading some of these emails it's apparent it's not a person responding. This is simply two bots email each other.

[https://spa.mnesty.com/conversations/aatajahd/](https://spa.mnesty.com/conversations/aatajahd/)

Looks like for some spammers, the game is already up.

</comment><comment><USER54> This remembers me of rescam.org

</comment><comment><USER55> This could easily be one of the "smallest" things to have the greatest impact. Looking forward to reading statistics on how much this software takes in % of total spam time and saved money.

</comment><comment><USER56> I read some of the conversations on the site; it's quite interesting that the boys managed to have the same conversation over and over almost in the exact order.

</comment><comment><USER57> This is really cool. I tried building a similar project last year using an LSTM, but never ended up deploying it.

I wonder what James Veitch would have to say.

</comment><comment><USER33> Let's just hope the scammers don't start using AI/NLP to generate the emails they send to us....

</comment><comment><USER58> Add support for SMS and it'll be perfect.

<comment><USER46> What sort of support?

<comment><USER58> I get text messages from scammers

</comment></comment></comment><comment><USER59> Interesting, but is there something for spam callers? It's not enough to block them or report them.

<comment><USER60> I'd pay some serious money for this. In case someone's looking for an idea.

<comment><USER61> [https://www.reddit.com/r/itslenny/](https://www.reddit.com/r/itslenny/)

</comment></comment></comment><comment><USER62> With all the emails ending with "CEO, MNesty, LLC" I doubt you'll be able to fool anyone

</comment><comment><USER63> This is the best thing I've seen in a while.

That they host the code in gitlab is a nice touch.

</comment><comment><USER64> Hahaha. The funniest conversations I've read this year!!! Poor spammers. LOL

</comment><comment><USER65> Email isn't free. It seems like it is but actually it takes significant resources to process all the spam. Using a bot to create more traffic is pointless and wasteful.

Yours sincerely, A guy who runs the mail transfer agents for an email security provider and has to deal with this every day.

<comment><USER66> Cool. Stop the spam and I'll quit spamming you back.

<comment><USER65> We do. That's exactly what we do. But honestly the volume of spam is massive already.

</comment></comment></comment><comment><USER67> I note the fake replies are quite limited & repetitive. It would be _extremely_ interesting to see if deep Q learning could be used to develop more realistic replies. "rewards" would simply be getting more (and faster) responses.

</comment><comment><USER68> oldie but goodie: [https://m.youtube.com/watch?v=cIVfrBFc5og](https://m.youtube.com/watch?v=cIVfrBFc5og)

</comment><comment><USER69> This is the greatest thing!

Thanks to the author(s) for doing it.

</comment><comment><USER70> LOL! Best use of chatbots yet!

</comment><comment><USER71> I love it.

</comment><comment><USER72> This is great, but I feel like it's wrong that regular people think they have to step in to fight spam.

After all, these messages benefit actual companies. I receive many spam messages from American companies that are legit. Why can't governments do more to fight spam? It's illegal after all (at least in Italy and I'd guess Europe), so how come companies get away with it?

<comment><USER73> The companies aren't in the jurisdiction of those laws. Now if you held the ISP's responsible, you'd see some action.

<comment><USER74> I'd rather have ISPs act as utilities rather than safe-guards of the content they transmit...

</comment></comment></comment><comment><USER75> Had a good chuckle reading through the chat logs, but it would be interesting to see the results using NLP to formulate new nonsense questions aimed at the spammer.

The spammer side seems to also employ some level of bot automation, and its like two bots going at each other with the occasional broken english comment showing confusion and frustration....this is truly golden.

<comment><USER10> MRs appreciated, but please make them in multiple short, self-contained pieces

</comment></comment><comment><USER76> I liked the idea of increasing the amount of time a spammer expends over their email.

I didn't like the idea of having to manually forward the email, manually remove personal information from the body of the email, and sucking the recipient into watching the conversation unfold live. Because it increases the amount of time a recipient expends over a spam email.</comment>


The Semantic Wave of 2008 - <AUTHOR> http://www.readwriteweb.com/archives/semantic_wave_2008_free_report.php <comment><AUTHOR> If anybody is interested in the report, here is the link: <http://www.project10x.com/misc/SW2008.pdf>

</comment><comment><AUTHOR> Is anybody riding this wave? I plan to. Surf's up!</comment>


Twitter's Hockey Stick Moment  - <AUTHOR> http://www.techcrunch.com/2008/11/15/twitters-hockey-stick-moment/ <comment><USER2> I like that Ira Flatow on Science Friday uses twitter.

<http://twitter.com/scifritter></comment>


Please stand with me [What happens when you critisize the Ukraine government] - <AUTHOR> http://www.twitlonger.com/show/n_1slk265

<comment><USER2> been in more than one argument on HN about this one, taking this person's side, and am usually downvoted to oblivion. no surprise this is buried on HN.</comment>


Using Razor with ASP.NET MVC in Four Easy Steps - <AUTHOR> http://stefan.rusek.org/Posts/Using-Razor-with-ASP-NET-MVC-in-Four-Easy-Steps/26/ <comment><USER2> While I'm certainly glad that Phil & co are finally replacing the inadequate WebForms view engine with something better, I'm nonplussed that the "something better" still isn't at least as good as Spark - especially since Louis (the creator of Spark) works on the Asp.net team now.

I realize that Spark's fake-HTML-element syntax would not be everyone's personal favorite (reminders of: Cold Fusion, WebForm server controls), the fact is that Spark provides a good bit of "value add" on top of the normal view engine goodness.

Example (in Spark):

          Product: ${p.Name}

Would output:

Product: AAA

Product: BBB

Product: CCC

Product: DDD

The alternation of rows and detection of first/last row is an _extremely_ common scenario for web developers that Spark totally gets right, but so far Razor just ignores. I'm glad there will be an option for the masses that are just using whatever is packed in the box, but so far I'm not seeing what all the fuss is for those of us that long since moved on from the built-in ViewEngine.

<comment><USER3> Interesting. It reminds me of Zope's Page Templates. I find Spark's syntax to be dirtier, however.

Has anyone implemented ZPT for .NET?

<comment><USER2> I don't know of any .NET implementation of ZPT.

What makes you find Spark's syntax to be dirtier than ZPT? Is it the fact that the Spark example I gave isn't valid XHTML like ZPT is? If so, that is simply out of convenience - Spark also offers a way to use proper XML namespacing to achieve complete XHTML compliance:

<http://www.sparkviewengine.com/documentation/syntax> (scroll all the way down)

<comment><USER3> Cool.

And yes - the shortcuts are something I frown upon. Template languages should not be so expressive as to create an incentive to ASP-style coding, nor too castrated as to prevent you from doing whatever you want. I think ZPT is right in the middle of the sweet spot.

</comment></comment></comment></comment><comment><USER4> At the risk of coming across as "my favorite language/platform is better than your favorite language/platform", the fact that you have to jump through these hoops to get Razor working in your ASP.NET MVC app strikes me as anything but easy (and certainly not intuitive).

Compare this to using haml in RoR:

      1. gem install haml
      2. vi newfile.html.haml

Why again doesn't .NET have a plugin management system analogous to gems? Or is there one that I just don't know about?

<comment><USER5> Razor is not a released technology and the article is describing a hack, as extracting Razor dlls from WebMatrix CTP and manually registering them in your project.

<comment><USER4> Ah, that makes a lot more sense. I guess that's my own fault for not doing enough research before commenting.</comment></comment></comment>


Working on It (TextMate) - <AUTHOR> http://blog.macromates.com/2009/working-on-it/ <comment><USER3> I really like Allan and I'm a proud Textmate user, but I can't help thinking about Joel's essay: Things You Should Never Do (<http://www.joelonsoftware.com/articles/fog0000000069.html>) about how rewriting software from scratch is almost always a huge strategic error.

Why is a complete rewrite implicitly being considered a good thing? Code doesn't get stale, there's a very active community around Textmate 1, and most people are just asking for incremental features, not something totally different. If people wanted something totally different they'd surely have ditched Textmate by now.

<comment><USER4> I think so long as 2.0 maintains backwards-compatibility with 1.x (possibly include 1.x with the 2.0 app?), and it doesn't hamper at all from the user experience, a re-write might be a good thing. Or, allow easy plug-in migration from 1.x to 2.x (kinda like what Python did going from 2.0 -> 3.0).

There are plenty of examples where complete re-writes, or partial re-writes, have led to bad things. Windows Vista and Winamp 3.0 come to mind.

Good examples include Mac OS X, Linux 2.x (I believe this was a major re-write over 1.x - could be wrong as my Linux history isn't up to buff). Starcraft was completely re-written mid-development (originally it was built on the Warcraft II engine, which didn't scale).

I would tend to agree with you, though, that major re-writes typically yield worse things. But, that depends a lot on the product, its audience, and the developer. Perhaps Allan, who has likely been writing code for a very long time, knows of some bottlenecks and what-not that he feels should be incorporated into 2.0, which necessitates a total re-write.

If worse comes to worse, the 2.0 codebase bombs and 1.x continues going on strong. That's exactly what happened to Winamp 2.0 when 3.0 came out.

And I should mention, to clarify any possible bias in my opinion, that I'm a very happy Textmate user. :)

<comment><USER5> OS X wasn't a complete rewrite. It was a "Our rewrite is going to hell, lets buy a new OS to use." Go look up the history of Copland from Apple, its mildly interesting.

<comment><USER6> Its a rewrite in that they threw out nearly an entire codebase and built it on top of something different. If tomorrow Microsoft said "lets get rid of Vista and build something new on top of Ubuntu", I think it would be fair to call that new version of Windows a rewrite despite them not having written the underlying code. Also, lets not forget that a fair amount of work (understatement) went into Mac OS X post NeXT.

<comment><USER7> I think this stretches the definition of a rewrite a little beyond the point it should break.

OSX is more like a rebranded descendant of NextStep/OpenStep, just the same as a would-be Microsoft Windows 10 derived from FreeBSD code.

</comment></comment></comment></comment></comment><comment><USER8> A surprisingly thoughtful post. This is a non-unknown genre—the stagnant software mea culpa—but I think he strikes a good and elegant tone. On the one hand, it's rare for a developer to acknowledge that they've been remiss in maintaining public contact, and even to enlist outside help for that specific purpose. But at the same time, he's obviously not at all concerned with letting actual releases of the software dry up while he methodically refurnishes the whole app. For a really hyped-up application like Textmate, whose users are going to be quite vocally clamoring for both their own pet features as well as beta and alpha releases ASAP, that too is impressive.

Of course, I've long since found my home in MacVim, so maybe I'm simply enjoying my lack of expectations from him.

<comment><USER9> _For a really hyped-up application like Textmate, whose users are going to be quite vocally clamoring for both their own pet features as well as beta and alpha_

This is why open-source editors have made closed-source editors all but extinct. There are just too many things to do for one person, or even one group of people.

<comment><USER3> _all but extinct_

Microsoft Visual Studio seems to be doing OK

<comment><USER9> This is an outlier, since the Windows stack is so closed in general. I think a large number of VS users use it because they are forced to by their environment choice (or employer).

I tend to think of editors like TextMate, emacs, and vim to be chosen by people who invest some thought into making the decision, rather than by people that are forced to use something for work.

<comment><USER3> Perhaps it's an outlier in that the language is more closed than most (and that this gives MS a pretty huge advantage over other IDE makers), but VS really is the best environment for developing .NET. That's why people pay for it, not because management forced it on them.

<comment><USER9> The question then is, "Why the closed .NET stack" and not Java or Mono.

</comment></comment></comment></comment></comment></comment><comment><USER10> In Allan's defense, he's come up with the first real advance in text editing for decades (his whole syntax scanning and bundle subsystems), and he deserves a chance to show what he can do as a second act. I expect great things.

<comment><USER7> What is the breakthrough in the syntax scanning?

<comment><USER10> I don't know that I can do justice to the idea, since I'm no bundle-writing expert, but see <http://manual.macromates.com/en/language_grammars.html> for the details.

The basic advance over something like an Emacs-Lisp package is that he built a declarative system (based on context-dependent regexps) for handling arbitrary languages, rather than making you write all the code to do so from scratch.

And he built things in such a way as to be able to handle languages nested inside other language contexts (e.g., Ruby inside HTML).

Couple that with a pretty powerful templating facility, and you have something that advances the state of the art.

I don't think anyone else has really taken as fresh a look at text editing for a long time.

<comment><USER9> _rather than making you write all the code to do so from scratch_

Emacs does not make you do this. (setf font-lock-keywords '(("some-regexp" . whatever-face-you-want-that-to-be) ...)). There are several other forms that font-lock understands, including custom functions that do highlighting.

Emacs also has something called the "syntax table", which allows you to declare what comments and string literals look like. Emacs can then use this information to syntax highlight those elements, and not do other syntax highlighting inside them.

cperl-mode uses this combination of features to correctly highlight nearly 99% of Perl constructions correctly. (Keep in mind that Perl and C++ have the dubious honor of not being parseable with a formal grammar, so it is somewhat impressive that syntax annotations + regexps is enough to do a good job.)

<comment><USER10> Yes, I apologize for my sloppy statement.

I realize Emacs does a lot of the work for you. It's just that I've worked with some of these mode packages over the years and have been impressed with the complexity they embody and the size of the code involved.

Textmate seems to avoid most of that complexity with its declarative system, and still give you syntax highlighting and auto-indenting, etc.

<comment><USER9> This is mostly because authors can't resist the urge to also do something "interesting" in addition to "just" syntax highlighting. imenu support for example. (imenu is "tags without a tags table" for one file.)

If you look at cperl-mode, for example, syntax highlighting and indentation support is only a small part of its line count. The rest is things like auto- documentation of core features, including 100s of lines of documentation strings for Perl core functions.

</comment></comment></comment></comment></comment></comment><comment><USER11> I use TextMate every day. I hadn't noticed the lack of posts because for me, TextMate "Just Works(tm)". It is easily enhanced via python (or whatever your favorite language) through its bundle system so I have no need to depend on the developer to support my every whim. I'm glad he's working on TextMate 2 and starting to blog about it, but for me what I have works great!

<comment><USER12> You haven't run into crashes or been disappointed in its search feature?

<comment><USER13> I haven't. I use it every day, for a number of purposes from updating my blog to working on the Woobius codebase (in both Rails and Flex/AS3), and I haven't had any issues whatsoever. The global search-and-replace works great, too.

I'd quite like split-screen editing, that's my main bug-bear, but I've actually structured my use of TextMate around that - I basically just have several Textmate windows open. I've been meaning to switch to Emacs for that, but I suspect that managing buffers (and making sure they end up in the right pane) will take as much effort as dragging a few windows around.

<comment><USER14> "but I suspect that managing buffers (and making sure they end up in the right pane) will take as much effort as dragging a few windows around."

I think you'd be surprised. In my experience I have a fixed set of windows (not os windows, but panes, as you called them), and easily and quickly switch between them with Iswitch-buffers: <http://www.emacswiki.org/emacs/IswitchBuffers>

this add-on gives you incremental-search to choose among open buffers, and usually it only takes a couple of keystrokes to get the one I want - <USER2> instead of moving the mouse around and clicking somewhere small and dragging things around, I am back in business after something like 'C-x b sh' - control-x, b to invoke iswitchb, and 'sh' to get me to my shell buffer...

<comment><USER13> The problem I think I'll have is not so much the actual switching of buffers, but making sure they end up in the right pane when first opened.

</comment></comment></comment></comment></comment><comment><USER15> I'm not sure it matters any more. TextMate is a wonderful product and compared to other editors at its time of release it was AMAZING. But the developers lack of attention to the product (publicly at least) and the long wait time between the last public release has destroyed the lead TextMate had. These days the options are almost endless for text editors on OS X-many of them with all the great features from TextMate and encompassing all the great features requested for TextMate 2. Komodo Edit for example is free, cross platform, includes loads of language bundles, multiple tabs, remote editing (SFTP, FTP, SCP), scripting and code completion. MacVIM brings all the power of VIM to the OS X GUI. I don't bear any ill will to this guy-I still think TextMate is a great product. But I think his slow movement has doomed the product in the long term.

<comment><USER16> Both MacVIM and Komodo Edit have been around for years, and haven't really changed much while Allan has been working on TextMate 2, so I can't see how that's relevant.

<comment><USER17> According to their git changelog:

<http://repo.or.cz/w/MacVim.git?a=tags>

and their Google Code updates list:

<http://code.google.com/p/macvim/updates/list>

MacVim has seen a huge number of changes in the 2+ years that TextMate has been under development: not least Leopard support, Vim 7.2 integration, and a ton of interface and speed improvements. They're on Snapshot 45 right now...

</comment></comment></comment><comment><USER18> As someone noted on the post's comments: <http://en.wikipedia.org/wiki/Second- system_effect>

</comment><comment><USER19> Anybody who considers split windows a "surface level feature" is on a different wavelength than myself.

</comment><comment><USER20> Please please PLEASE fix search. The awk and grep bundles suck. Coda has a really great project wide search.

<comment><USER21> I've asked allan about that in IRC, and he's said it's being worked on.

<comment><USER20> Will this be part of the "TextMate Forever" release or is it being considered for a TextMate 1.6?

</comment></comment></comment><comment><USER22> As someone who uses TextMate every day, I still don't really understand the TextMate hype. It's a decent editor, but I still prefer UltraEdit (from back when I was using Windows, obviously). There's just too many little things TextMate doesn't get right.

Two examples that come to mind right away is the fact that TextMate cannot handle large files (tsk, tsk... ) and the inability to edit in hex mode.

</comment><comment><USER21> I'm sure TextMate2 will be worth the wait :)

<comment><AUTHOR> Once he releases something, I'm guessing it'll be a lot like Christmas morning for a lot of developers.

</comment></comment><comment><USER23> Can't wait. However, I mostly use GVim now.

</comment><comment><USER24> I'm just hoping MacRuby will enable the Ruby world to build our own open source Textmate clone so we'll be able to ditch this abandonware piece of crap.

<comment><USER25> > I'm just hoping MacRuby will enable the Ruby world to build our own open > source Textmate clone so we'll be able to ditch this abandonware piece of > crap.

Thanks for reminding me why I don't want to do Ruby.</comment></comment>


Number 2 is number 1 - <AUTHOR> http://www.google.com/trends/?q=1,2,3&ctab=2&date=all&geo=all

<comment><USER2> Reminds me how the most common street in the US is, bafflingly, "Second Street" [1]

The reason being many times "First Street" gets renamed to commemorate a person or event.

[1] [http://www.nlc.org/build-skills- networks/resources/cities-10...](http://www.nlc.org/build-skills- networks/resources/cities-101/most-common-u-s--street-names)</comment>


Scientists Have Made a Two-Dimensional Material That's Never Been Seen in Nature - <AUTHOR> http://www.sciencealert.com/scientists-made-2d-material-never-seen-nature-physics-new-graphene-2017-october <comment><USER2> This link is a repost of the _Futurism_ article by Kyree Leary; probably worth linking to the original source: [https://futurism.com/scientists-made-a-two- dimensional-mater...](https://futurism.com/scientists-made-a-two-dimensional- material-thats-never-been-seen-in-nature/)

:pedant:

Was anyone else off-put by the title and this introductory sentence? "The discovery? The creation of two-dimensional materials no thicker than a few atoms — something that's never been seen before in nature."

Two-dimensional space: Length * Width

Three-dimensional space: Length * Width * Height

If the material has thickness, as this material does (even if it is microscopic), it has a non-zero value for the height, ergo it's a three- dimensional object.

/pedant</comment>


Pentagon Has 'Off-World Vehicles Not Made on This Earth' - <AUTHOR> https://www.popularmechanics.com/military/research/a33413777/pentagon-ufo-program-materials-vehicles/ <comment><USER2> I'll believe it when I see it. Maybe.

Don't get me wrong: I totally believe there is probably intelligent life "out there". And I _hope_ they have traveled here and that we have found signs. But based on what we know (or think we know) about the laws of the physical world we live in, it doesn't seem likely that craft from other worlds have visited us.

 _Maybe_ if you consider that they might be unmanned probes it starts to become a little more plausible. But crewed ships, and especially ones that are meant for a round trip? Unless there are habitable planets a LOT closer than we think, or the aliens have made some amazing scientific/technical breakthroughs, it's hard to imagine. Maybe if the aliens are really long lived and tolerate boredom incredibly well... or have invented "suspended animation"?

<comment><USER3> I've often wondered why we unconsciously assume foreign lifeforms will have a lifespan within even 3 orders of magnitude of our own.

If we can accept alien life that can travel at the speed of light, why can't we accept alien like that can live millions of years? Honestly, I feel like the latter is more palatable as a result of technological progress than the former.

<comment><USER2> Agreed. It is _possible_ that some really long-lived lifeform has evolved "out there". That's why I said "and tolerate boredom really well", since you still have to wonder what they're doing during the trip. Maybe singing "99 bottles of beer on the wall?" I don't know.

<comment><USER3> That would be amazing!

I'm imagining a sci-fi novel where aliens have extended their own lives but not improved their memory, so after 5 million years they reach their destination doing nothing but singing and merriment on the way. Sadly, upon arrival they can't remember why they are there, where they are from, or anything else important. Maybe all over the ship they left notes to themselves a la "100 years of solitude" but sadly they can't remember how to read them.

<comment><USER2> If you write it, sign me up to buy a copy!</comment></comment></comment></comment></comment>


China's 1989 Choice: the Paradox of Seeking Wealth and Democracy - <AUTHOR> http://wilsonquarterly.com/stories/chinas-1989-choice-paradox-seeking-wealth-and-democracy/ <comment><USER2> An 4-yr old but still relevant cogent, more balanced than biased analysis. There are parts of the argument that are more dated, some arguments are surprisingly still relevant:

> What Is the Chinese Economic Model?

1\. Steal Intellectual Property. IP represents the crown jewels of the global economy; they are the peak achievement of Western civilization, and of all of China's competitors. China steals IP daily, in every possible way: through force, through simple copying, through reverse engineering, through industrial and government espionage, through common theft. China also has a national policy which prevents non-Chinese firms from selling in China unless companies transfer their most valuable IP to China as the price of market access. The clueless ones obey; just ask Boeing.

4\. Industrial Policy: Subsidize Key Industries. Japan also started this idea, but China takes it much further. Originally, the government (or the People's Liberation Army) owned virtually all large enterprises, but even today, it retains strong interests in most key export companies, which makes government assistance less transparent. Many outsiders assume they are dealing with "real" companies, when they are actually dealing indirectly with the Chinese government. Examples of subsidization and export dumping would include tires and, more recently, steel exports (sound like Japanese history?), now being tariffed by the E.U. and the U.S.

7\. Price for Export, Suppress Domestic Consumption, and use domestic savings to drive the above policies. While everyone is talking about how wealthy the new Chinese coastal middle class has become, they forget that there are another 800MM+ Chinese still waiting inland on the farm for anything good to happen to them. Despite the latest boom, the Chinese people are still among the top global savers. China seems to be allowing faster wage growth, and is encouraging domestic consumption, more than Japan has.

[http://blog.stratnews.com/2010/01/what-is- china/](http://blog.stratnews.com/2010/01/what-is-china/)

<comment><USER3> >Chinese banks are not banks; they are cash distribution pipelines, generally controlled or heavily influenced by the government. Selective industries are fed loans, based on the flavor of the week, on terms dictated from above. When the pipelines are empty (as they are now), the government just inserts more money into the other end.

This is the single most different aspect of the Chinese system. Banks operate as partially privatized central planning. The government prints its own money and hands it out to the banks whenever they lend badly to favored government entities. Corruption in banking is dealt with severely to prevent the bad behavior that the moral hazard would entail. There is such deep denial of the corrupt nature of private money creation in banks in the west that most analysts overlook this as a key advantage of the Chinese system. How many years have we had predictions that the Chinese economy was going to bust any day now?

<comment><USER4> I find you comment interesting and agreeable, but I'm not sure what to make of this sentence:

> There is such deep denial of the corrupt nature of private money creation in > banks in the west that most analysts overlook this as a key advantage of the > Chinese system.

Can you maybe explain it? Are banks more corrupted in the West or in China? Is <something, I'm not sure what> an advantage or a disadvantage of the Chinese system as compared to the west?

<comment><USER5> Banks loan much more money than there is available, creating systemic risk and in extreme cases making the government unable to directly control inflation. The upside is that loans get much cheaper, making it possible to invest on enterprises that wouldn't exist otherwise.

Looks like banks in China can only do that with their government authorization.

<comment><USER6> Banks in china use every loophole available to lend more than the gov wants them to; the government is more reactive than proactive in reigning the banks in.

Of course, the government is incredibly multilayered and not cohesive, so usually this simply means local government vs. central government.

</comment></comment></comment></comment></comment><comment><USER7> My hope is that as a new generation grows up with the internet, censorship will become increasingly intolerable. They banned the big bang theory and everyone just pirates it now.

I believe that government is a reflection of culture, and as China's culture becomes more globalized its government may become more open.

<comment><USER8> Completely agree. The real problem with China's censorship right now is not really the government. Yes, it's a government that's highly skilled and efficient at censoring stuff, but this would only take them so far if it wasn't the Chinese _culture_ that allowed them to do it.

In other words, the vast majority of Chinese are still _fine_ with this type of censorship, because they truly believe the government is protecting them and creating a better life for them. Surely an American can understand this, too (post-9/11 National Security brainwashing).

Until most Chinese start believing their government is evil, and that there is a much better, more free way to live, not much will change.

<comment><USER9> > Until most Chinese start believing their government is evil, and that there > is a much better, more free way to live, not much will change.

Is their government evil? It seems to me that their government has been hugely successful in bringing about economic growth and spreading that wealth effectively. There is corruption within the government and the equivalent of a dynasty going on at the leadership level, but evil seems an incorrect assessment.

Also is there an example of a much better more free way to live (that continues to work at China's scale)?

<comment><USER10> >Is their government evil?

I suppose people can argue about how things are different now compared to the past, but I once worked with a man who was the sole survivor in his village. The rest of his family and village were starved to death. The cleanup crew found that he was still barely alive and nursed him back to health. He eventually smuggles himself to the U.S. It is one thing to hear about abstract atrocities in far-away lands, that happened a long time ago, but it is quite another thing to look someone in the face who has suffered from them.

[http://en.wikipedia.org/wiki/Great_Chinese_Famine](http://en.wikipedia.org/wiki/Great_Chinese_Famine)

[http://www.theguardian.com/world/2013/jan/01/china-great- fam...](http://www.theguardian.com/world/2013/jan/01/china-great-famine-book- tombstone)

<comment><USER11> Calling the current Chinese government "evil" for what happened during the late 1950s is arguably _less_ reasonable than blaming the Obama administration for the Jim Crow laws and McCarthyism that existed during the same period, especially given the relatively sweeping systemic changes that have happened in China since then. There are no shortage of living victims of various US administrations' foreign policy errors either. The present Chinese government might have many flaws, including a reluctance to acknowledge past misdeeds even happened, but starving the population to death through intervention in agriculture is not one of them.

</comment></comment></comment></comment></comment><comment><USER12> so, we have a political system whose goal is to maximise it's economic output - or at least this is one goal. but what about its people? aren't the government supposed to work for the people? at what point in history has there been a culture who have intentionally surrendered their freedoms on this level?

you might argue something along the lines of "well what does it matter? look at china", to which my response would be, so _what_? economics, businesses, money, etc. are all just abstract complicated notions run and managed by paper-clip maximisers. there are _people_ who are _suffering_ , and.. how can that be ignored?

<comment><USER13> Actually, for much of the 20th century most Chinese were suffering a lot more from poverty than from individual rights. Even if they were able to overthrow their feudal masters, and later the government functionaries, there still wasn't enough wealth to alleviate their suffering (for example food shortages, violence, dangerous and damaging working conditions, no health care...).

Today in China this suffering is reduced more and more, despite a growing population. That in itself is a good thing. However, the Chinese don't have the amount of freedom we are enjoying. But how do you compare non-freedom versus material suffering?

I believe that eventually China will have to establish these freedoms to keep improving their economy. And we are already seeing signs of the limitations: Innovation in China is hard to come by, and corruption on any level is uncontrollable with citizens afraid to speak up.

<comment><USER14> >However, the Chinese don't have the amount of freedom we are enjoying. But how do you compare non-freedom versus material suffering?

I think this is a false dilemma. Taiwan, Singapore and Hong Kong all managed to develop into wealthy nations (PPP GDPs per capita of around 35k, 60k and 40k respectively compared to 12k in the mainland), in spite of having far greater degrees of freedom than Mainland China.

>most Chinese were suffering a lot more from poverty than from individual rights

The poverty was to a degree due to the lack of individual rights. In Maoist China, you literally didn't even have the right to the grain you farmed in your field; you had to give it to the Party and then wait in line for whatever they decided you deserved. There was no opportunity to save up and improve your lot; starting a business, privately buying and selling things, was literally grounds for execution.

<comment><USER15> Taiwan was a one-party dictatorship until the mid 90's. Singapore is generally not considered a functioning democracy, given that the country's politics is totally controlled by the People's Action Party and there are severe restrictions on things like rights of assembly.

Hong Kong also had very limited democratic control until the 80's (being a British Crown Dependency until then) and was in an extremely special situation by acting as a place that received a massive inflow of people and capital fleeing from the PRC when CPC took control, and that was able to capitalise massively on trade with the rapidly growing Shenzhen.

It is in any case moot, as the point is not that it isn't _possible_ , but that _if_ faced with the choice - whether or not the choice is a false dilemma or a total fabrication - it is not at all clear, nor even likely, that people will pick freedom over material wealth.

It is not an excuse for dictatorship, but an _explanation_ for peoples willingness to put up for them in certain situations.

> The poverty was to a degree due to the lack of individual rights. In Maoist > China, you literally didn't even have the right to the grain you farmed in > your field; you had to give it to the Party and then wait in line for > whatever they decided you deserved. There was no opportunity to save up and > improve your lot; starting a business, privately buying and selling things, > was literally grounds for execution.

The poverty didn't start when Mao gained control. This was a _response_ to widespread poverty previously.

One can certainly make the argument that they could have developed faster with a different system.

But that is not the point that was being made. The point being made was that when your population is poor - to the point of starvation - their priority is material improvements, not freedom of speech - and this largely explains why a dictatorial government that manages to feed their population and produce growth gets so little opposition. It's not that there might not be better alternatives, but that if most people feel they're doing better than last year, they will not rebel.

It's worth noting that the effect of steady improvement on people's overall happiness is quantifiable, and there are theories that claim that major societal upheaval in _general_ can be tied back not to high degrees of poverty or oppression, but to "backsliding". That is, people will for the most part put up with bad situations, but not put up with things getting steadily worse for long periods. Conversely, societies are at their most stable not when they are wealthiest, but when they see slow, steady growth.

(Jonathan Haidt's "The Happiness Hypothesis" covers this in more detail and with some references to related research)

<comment><USER14> I was speaking of individual rights, not necessarily democracy. One can have a non-democratic political system where individual rights are respected, for instance a republic ("government by laws, not by men"). Citizens in Hong Kong, Taiwan and Singapore in general had far more individual rights, especially economic rights, than those in China.

</comment></comment></comment></comment></comment><comment><USER16> In democracy it's your vote that counts; In "feudalism" it's your count that votes.

</comment><comment><USER17> Y'know the thing about topbars or sidebars that scroll with the user to stay on the page? They obstruct vision, thus they get blocked. Then later when the user returns to the page at another time they're confused that the site doesn't seem to have navigation. Or maybe it's just me, still for someone like me I've very very happy that there are plenty of features to simply right click an annoying design feature and remove it so I can read in peace.

</comment><comment><USER18> China and USA are the same kind of democracy.

<comment><USER19> The US is more accurately a corporatocracy, not a democracy

<comment><USER6> Ok, I give: which corporation runs the USA? I mean, which one has absolute power to do what they want and not get punished for it? Enron?

<comment><USER20> That's not what a corporatocracy is, any more than a democracy means one person has absolute power to do what they want and not get punished for it.

The idea of corporatocracy is that a country is run by, and for the good of, corporations as a whole rather than individual citizens. People who believe this view will point to things like the huge lobbying power of corporate interests, the level of influence of the corporate media, the fact that an awful lot of lawmakers have very close links with companies in industries that they are drafting regulations about, or the the bailout of banks etc.

You may or may not agree with whether this is really happening in the US or elsewhere, or the level to which it undermines democracy, but it helps to talk about what the word actually means rather than a straw-man argument.

</comment></comment></comment></comment><comment><USER21> fuck ccp!!!

</comment><comment><USER22> Why there are so many articles about China suddenly jump out of nowhere and most of them seem only remotely, if ever, related to tech?

<comment><USER6> Uhm...it's Friday afternoon in China, that might have something to do with it.

</comment></comment><comment><USER13> Democracy is an emergent property of a complex political system.

<comment><USER23> What do you mean by that? When I read "X is an emergent property of a complex Y", I can't help but interpret it as "something that sounds smart but doesn't actually explain anything".

<comment><USER13> How do you define democracy? By the institutions? By elections?

Turns out, lots of antidemocratic systems have elections, I would even argue a modern dictatorship should have as many elections and referendums as humanly possible.

One democratic and one antidemocratic nation might have very similar constitutions, and institutions.

Is it then about human rights and freedoms? Human rights are impossible to implement perfectly. There are always compromises. For example, if you want people not to hurt, kill and steal from each other, you better tax them to finance some kind of justice system. But taxation is a violation of the right to property, and policing restricts all sorts of freedoms. What we call "democratic countries" just have a "better" compromise than antidemocratic ones.

Democracy being an emergent property solves all sorts of conundrums. Freedoms, and the protection thereof are essential to enable free and fair elections. These free elections are necessary to maintain control of the state aparatus which is necessary to guarantee these freedoms.

An emergent property is hard to construct. We've seen how difficult it can be to establish a democratic system from the outside (Afghanistan), and how easy (Germany).

The necessary parts of a working democracy (and what are these, anyway?) seem to depend on the other parts to work.

But the general attitude is "Let's just have open elections, and everything is peachy!" And in a more subtle manner, in Europe people start to view "number of referendums" as the only measure to compare "democracticness".

<comment><USER24> > But taxation is a violation of the right to property, and policing restricts > all sorts of freedoms.

That's true only if you are 'liberal' (to the extreme). Taxation is what gets you public health, schools, streets in places where you go once a year. It's what keeps remote villages connected to the mainland.

In a sense, it's what society is _all about_. Otherwise we would be still living in the jungle like monkeys.

So since your view is _open to interpretation_ , better be cautious using _strong_ terms like if you're talking about maths IMHO e.g. "[...]taxation is a violation of the right to property [..]"

<comment><USER25> > That's true only if you are 'liberal' (to the extreme)

No, it's quite literally true. Taxation is armed men taking your money by force. We've just agreed that it's worth it to violate property rights to some degree for the greater good.

<comment><USER26> Property rights don't exist in a vacuum - they're made by us humans in our heads, just like intellectual property.

Get rid of the government and you could take my house just by showing up with a bigger gun than me.

Only thing I could do is get together with my friends and neighbours to form an armed gang for mutual property rights enforcement, AKA a government.</comment></comment></comment></comment></comment></comment>