C Puzzles - brown-dragon http://www.gowrikumar.com/c/index.php

<comment><AUTHOR> > Write a C program which prints Hello World! without using a semicolon

Here's one way, cheating a bit by abusing the definition of "a C program which prints":

        /tmp$ gcc hw.c
        hw.c:1:2: warning: #warning Hello world! [-Wcpp]
         #warning Hello world!

A more serious solution, though:

        /tmp$ cat hw.c
        #include <stdio.h>
        void main(void)
        {
            if (puts("Hello world!")) {}
        }
        /tmp$ gcc hw.c
        /tmp$ ./a.out
        Hello world!

<comment><USER2> How about this one? It's not standards-compliant, but GCC swallows it even with -Wall (or at least it used to), and it's by far my favourite:

        int main(int args, char *argv[printf("Hello, world!")]) { }

<comment><USER3> Nice one but:

>It's not standards-compliant

Why? It's just a VLA.

<comment><USER2> Per 18.104.22.168.1 [C11 Final Draft], the `main` function should be declared as either

        int main(void) { /* ... */ }

or

        int main(int argc, char *argv[]) { /* ... */ }

<comment><USER4> You missed the relevant text:

>or equivalent; 10)

>10) Thus, int can be replaced by a typedef name defined as int, or the type of argv can be written as char * * argv, and so on.

And Standard also says that:

>or in some other implementation-defined manner.

and:

>In a freestanding environment (in which C program execution may take place without any benefit of an operating system), the name and type of the function called at program startup are implementation-defined.

So main can be pretty much anything according to the Standard, depending on the system.

</comment></comment></comment></comment></comment><comment><USER5>
        #include <stdio.h>
        int main()
        {
         float a = 12.5;
         printf("%d\n", a);
         printf("%d\n", *(int *)&a);
         return 0;
        }

This program invokes undefined behaviour when it casts float\\* to int\\*, so technically it could print anything, or do something else. I'm not sure how using memcpy instead would impact the puzzle's point though.

<comment> je-so If you know that sizeof(float) >= sizeof(int) the memory alignment should be fine. Also in this case * (int* )&a does not access any bytes outside of an defined data object.

To predict the outcome one have to know the representation of float (IEEE 754) and the big/little endian issues which could be different between floats and ints.

printf("%d\n", a) does promote the value a to a double first (promotion rules) and then either the first or last part i(assuming sizeof(double) == 2*sizeof(int)) is shown depending on little or big endian architecture.

<comment><USER4> You don't know C.

Reinterpreting an object as an incompatible object is undefined. int and float are incompatible.

C Standard also specifically states that using an incorrect printf format specifier will result in undefined behavior.

</comment></comment></comment><comment><USER2> One of these reminded me of my woeful attempts at IOCCC-like code, a Hello World implementation:

[http://students.mimuw.edu.pl/~dj189395/nhp/czynic/programy/t...](http://students.mimuw.edu.pl/~dj189395/nhp/czynic/programy/tidbits/guess.c)

<comment> brown-dragon That was fun to read. Why do you need a terminating null (juz)?

<comment><AUTHOR> It isn't actually used in printf; there's one more argument than there are %c specifiers. gcc -Wall warns about that.

<comment> brown-dragon Good catch! And even if we do add another "%c" to fix it, I don't know why we would need to null-terminate a null-terminated string.

<comment><AUTHOR> If you added another %c, it would print the NUL to stdout; it doesn't terminate anything.

<comment> brown-dragon You're right. My mistake.

</comment></comment></comment></comment></comment></comment><comment><USER6> Anyone else spot the uninitialized variable in the banner program?

Also:

> _What 's the output of the following program. (No, it's not 10!!!) _

What's the point of including a program that calls malloc without including a prototype for it, after asking the reader earlier answer why such a program segfaults on IA-64 but not IA-32?

(The answer is: a constraint is violated, requiring a diagnostic, because an int * object pointer is assigned the return value of malloc whose implicit declaration marks it as returning int. The comment issue is a red herring.)

<comment> brown-dragon I can't figure out why is it checking `pr` in the while loop. Perhaps it's simply been left over from an earlier version.

</comment></comment><comment><USER7> I couldn't find the book at the hint provided... Could someone help me get that book. Thanks in advance

<comment><USER8> You can get a copy here: [http://www.amazon.com/dp/0131103628](http://www.amazon.com/dp/0131103628)</comment></comment>


Comprehensive and biased comparison of OpenBSD and FreeBSD [pdf] - <AUTHOR> https://www.bsdfrog.org/pub/events/my_bsd_sucks_less_than_yours-AsiaBSDCon2017-paper.pdf <comment><USER3> One of the nice things about this is the last section (if you can bear to read that long). Both people comment on the strengths of the opponent's BSD: OpenBSD is complemented on "tackling very important project [sic] which would probably have never happened otherwise" (e.g., OpenSSH), particularly also the fact that OpenBSD cares to see their projects ported to !BSD (e.g., Linux). Meanwhile, FreeBSD is complemented on "its [sic] a real "enterprise" oper- ating system and I think it is slowly filling the spot left by Solaris."

At the end of the day, both OpenBSD and FreeBSD are niche systems. They don't have the popularity of Linux, and they probably never will. But that's not a problem. Both of them are major operating systems that do innovate, and hence they're worth paying attention to. That's where the compliment of FreeBSD as becoming Solaris's successor is really telling--Solaris was the operating system that brought us DTrace and ZFS, and it was FreeBSD who I believe had the first container system (jail).

<comment><USER4> I can see FreeBSD picking up a good part of the ex-Solaris marketshare in terms of users, but have they really taken over the role in terms of development? As far as I can tell, ZFS in particular has its canonical upstream development in the Illumos repository (Illumos is the successor to OpenSolaris), which FreeBSD pulls from, rather than development having really moved to FreeBSD as the new canonical home. FreeBSD developers are certainly involved in contributing code upstream, but then, so are a number of other developers, including from the major Illumos vendors (OmniTI and Joyent), and even some from ZFSonLinux.

<comment><USER5> SmartOS also has working Linux compatible Zones. Last time I looked, FBSD was a way short of this...

<comment><USER4> Even without the Linux-compatible aspect, Illumos Zones are considerably ahead of FreeBSD jails these days imo. Better tooling, resource limiting infrastructure, etc., especially if you want to run multi-tenant with untrusted tenants. Jails did pioneer the concept, though.

</comment></comment></comment></comment><comment><USER6> FYI - <USER2>

This paper will look at some of the differences between the FreeBSD and OpenBSD operating systems.

It is not intended to be solely technical but will also show the different "visions" and design decisions that rule the way things are implemented. It is expected to be a subjective view from two BSD developers and does not pretend to represent these projects in any way.

We don't want it to be a troll talk but rather a casual and friendly exchange while nicely making fun of each other like we would do over a drink. Of course, we shall try and hit where it hurts when that makes sense. Obviously, we both have our personal subjective preferences and we will explain why. Showing some of the weaknesses may encourage people to contribute in some areas.

Most of the topics discussed here could warrant their own paper and talk and as such some may not get the deep analysis they deserve.

This is a totally biased talk from two different perspectives.

</comment><comment><USER7> While you're here, have you donated[0][1] yet? :) You may or may not be aware, but FreeBSD runs your movies on Netflix, your games on PlayStation 4 and Nitendo Switch, your files on FreeNAS and ZFS, your friends on WhatsApp and OpenBSD runs everything else on OpenSSH. ;)

So, you may or may not know that, but you need FreeBSD and OpenBSD and they also need you! Every cent counts and so does every contributor, that helps the foundations keep their non-profit status.

[0] [https://www.freebsdfoundation.org/donate/](https://www.freebsdfoundation.org/donate/)

[1] [https://www.openbsd.org/donations.html](https://www.openbsd.org/donations.html)

<comment><USER8> > You may or may not be aware, but FreeBSD runs your movies on Netflix, your > games on PlayStation 4 and Nitendo Switch

Do Netflix, Nintendo and Sony contribute financially to the FreeBSD project? They are the ones making money off the project after all.

<comment><USER9> Netflix a ton, as others have pointed out. Sony, not that I can see. There was talk of code going upstream, but I never heard more about it. Nintendo hasn't, but people are overselling the "Switch runs FreeBSD" line. A copy of the kernel license was included on the switch, which could mean just one line of code taken technically. From what I've heard, the sys calls don't look like FreeBSD.

<comment><USER10> I can't recall where I read it, but it said that the Switch likely uses the FreeBSD networking stack running in userland. To me, this makes some sense, since if I remember correctly the 4G/5G/some-future-wireless-thing alliance uses a userland version of the FreeBSD network stack in their reference implementation.

<comment><USER9> From what I've seen, it originated here,and it's only speculation. It does seem likely though.

</comment></comment></comment></comment></comment><comment><USER11> This appears to be a written down version of the talk they gave at FOSDEM: [https://fosdem.org/2017/schedule/event/my_bsd_sucks_less/](https://fosdem.org/2017/schedule/event/my_bsd_sucks_less/)

</comment><comment><USER12> When it comes to the BSDs, here is my impressions of them:

      NetBSD wants to run everywhere.
      OpenBSD wants to be secure.
      DragonFly BSD wants to advanced.
      FreeBSD wants to be Linux.
      TrueOS wants to be Ubuntu.

(I don't list MacOS because I don't feel that it is a true BSD.)

<comment><USER13> Beware that this sort of grouping is as superficial and wrong as categorizing people into blondes, brunettes, and redheads.

In truth, they _all_ aim to be portable, advanced, and secure, with desktop and server support. And there is plenty of sharing from each to the others. The differences amongst them are, in reality, not so easily pigeonholed.

</comment></comment><comment><USER14> Very interesting read!

As mentioned, the wireless and graphics areas are sorely lagging behind GNU/Linux os'. They only have support upto Haswell in the graphics department. Ouch. The priority of both BSDs is clearly not the regular desktop user where wireless and graphics support can be deal breakers. The FreeBSD based PC-BSD (now known as TrueOS) exists, but AFAIK it does not fix the wireless and graphics support situation.

Given that GPU based computing is becoming more prevalent with the advent of ML/DL, I wonder if there are efforts to improve support for graphics.

(It would have been interesting if a Linux guy also joined the conversation, along with a Windows guy and a MacOS guy.)

<comment><USER15> The statement that wireless sucks on both is pretty accurate. I recently got an old ThinkPad specifically to run OpenBSD. I have run OpenBSD on a desktop since 4.8 and a home server since 5.1, but never on a laptop. I got the ThinkPad because I have often heard it is the best supported on OpenBSD.

It worked fine on first install, including the Radeon graphics and old Intel WiFi (no -11n, just a/b/g). Used it for about a month. Traveled, tried to log onto a different WiFi, and it couldn't see the router. Got home, and now it couldn't see the home router that it used to work on, though it could see the neighbors' WiFi. Tried everything I could think of, with no luck.

I decided to try FreeBSD on it. WiFi worked, graphics worked, but then I broke my su login when I used chsh to change from the stock csh shell to mksh. Since I was already annoyed with some other FreeBSD things, I decided to completely give up and load OpenSUSE (ha!!) on it.

Linux makes me want to vomit, but I'll be damned if all the hardware doesn't work like a charm out of the box. It's made me seriously consider learning how to write drivers for the BSDs.

</comment></comment><comment><USER16> What could be done in order to help the BSDs to become mainstream or more visible as server-side alternative to Linux? I've operated a small FBSD mail server until 2004 (FBSD 4, vinum RAID, sendmail, cyrus IMAP) and was extremely pleased with the performance, robustness and overall coherency of it (though I wouldn't use that stack today).

While Linux certainly works well, I'm instinctively against monocultures of any kind or form. With Linux-only containers (Docker and co.) there's now the danger that we're loosing the BSDs terminally as a replacement for Linux. But is the isolation (or lack thereof) and interfacing to the host system provided by Docker/runC/whatever really worth it (compared to portable POSIX-based primitives eg. chroot jails, or modern capabilities-based generalizations of it such as FBSD's capsicum)?

It's also odd that a GPL-licensed OS, of all things, is making it to the top in containerland. But then the nominal "default" host OS for Docker (Alpine Linux) uses musl (MIT-licenses libc) rather than glibc. I'm not complaining, and there doesn't seem to be anything wrong with it legally, but the commercial Docker image ecosystem, to me, has the smell of a GPL-circumvention device of sorts in that many images routinely install the Debian/GNU userland tools on first load.

<comment><USER17> FreeBSD jails are on a different level in terms of stability (and simplicity, that contributes to stability) compared to Docker. Personally -- having run Docker containers for over a year in testing -- I would take jails over containers in a heartbeat.

<comment><USER18> Yeah, I would take jails over Docker as well, but systemd is just so much better, (more so than jails over Docker in my opinion), than init, that I am hoping for a better tool to come about, the underlying LXC technology appears to be solid.

<comment><USER16> For me, systemd is another reason to move _away_ from Linux actually (or at least not deepen the dependency on Linux-exclusive features).

It's not that I think systemd is bad per se, it's just _way_ too monolithic and heavy for my taste (and binary logs and ini files are a no-go for me; if I wanted that, I'd be using Windows).

Btw. the BSDs don't use SysV init but the somewhat saner/simpler BSD init (with full-blown service managers as optional add-ons in ports).

<comment><USER18> systemd is not for everyone, but for me is way saner than any other init system, including BSDs init. Writing service files for systemd just makes sense in my mind.

There are other aspects for why I do not recommend BSD to anyone who asks, most importantly their licensing and their general stance towards software freedoms, to the point where they are smug and happy when somebody violates the GPL, because "at least they get more users", as well as their relatively little upstream contribution to ZFS despite riding that train as fBSDs signature feature for years, but that's a different discussion altogether.

<comment><USER16> I don't know about BSD being smug and the other things you say. This sounds to me like what could be perceived when reading clickbaity and polarizing articles of the "Linux vs BSD" variety. I'm seeing BSD as a welcome choice/alternative to Linux that I would hate to loose.

<comment><USER18> Yeah, I don't want BSDs to disappear as well, (not likely), but watching this, (among other things) definitely left a bad taste[1].

1 - [https://www.youtube.com/watch?v=cofKxtIO3Is](https://www.youtube.com/watch?v=cofKxtIO3Is)

</comment></comment></comment></comment></comment></comment></comment><comment><USER19> I don't understand how this is a paper. It's just two dudes in a chatroom and the 'authors' felt it was necessary to format it with LaTEX?

Also, the title has a spelling error in it.

<comment><USER20> The authors of the paper are French, it's in the form of a loose transcript of a recent talk given at this years AsiaBSDCon.

[https://2017.asiabsdcon.org/program.html.en](https://2017.asiabsdcon.org/program.html.en)

      "P10A: Comprehensive and biaised comparison of OpenBSD and FreeBSD"

In was probably presented and formatted this way because of tradition, also..

[https://www.openbsd.org/events.html](https://www.openbsd.org/events.html)

<comment><USER21> "Slides are useless. We want talk transcripts."

Here's a transcript.

"Take it away, take it away!"

<comment><USER15> "Or at least clean up their funny pronunciation and grammar first!"

</comment></comment></comment></comment><comment><USER22> Warning: this takes you directly to a PDF which may automatically download (such as on Chrome for Android).

— update: the title appears to now reflect that this is a PDF. It did not earlier.

<comment><USER23> The title already has the pdf tag and I think that's automatic so it was there when you clicked the link also.

The server does not send the Content-Disposition [1] header, so if your browser auto-downloads the PDF then either you've made poor choices about your browser config or you have a browser that can't itself show PDFs, in which case you may have made a poor choice of browser.

[1]: [https://developer.mozilla.org/en- US/docs/Web/HTTP/Headers/Co...](https://developer.mozilla.org/en- US/docs/Web/HTTP/Headers/Content-Disposition)

<comment><USER24> > if your browser auto-downloads the PDF then … you have a browser that can't > itself show PDFs ….

Surely a browser that shows PDFs itself downloads them in order to do so? (I don't know for sure what was bothering anw, but I'm often on a limited data connection, and, whether the PDF is displayed in my browser or dropped in the download folder, it hits my data allowance the same.)

<comment><USER21> If a 100K download is of great concern, it's probably best not to click any link on HN. There are pages that have style sheets bigger than that.

</comment></comment></comment></comment><comment><USER25> This paper appears to be an IRC session formatted in LaTEX. It'd be easier to read as text.

<comment><USER26> You can easily make your own plain text version [0]:

      $ wget https://www.bsdfrog.org/pub/events/my_bsd_sucks_less_than_yours-AsiaBSDCon2017-paper.pdf
      $ pdftotext \
        my_bsd_sucks_less_than_yours-AsiaBSDCon2017-paper.pdf  \
        my_bsd_sucks_less_than_yours-AsiaBSDCon2017-paper.txt

Or, if you prefer HTML [1]:

      $ pdftohtml -i -nomerge -s \
        my_bsd_sucks_less_than_yours-AsiaBSDCon2017-paper.pdf  \
        my_bsd_sucks_less_than_yours-AsiaBSDCon2017-paper.html

_ETA_ : Surprisingly, the PDF is quite lightweight. File sizes, in bytes:

       PDF: 118,971
       TXT:  90,912
      HTML: 384,256

[0]: [http://evilrouters.net/foo/my_bsd_sucks_less_than_yours- Asia...](http://evilrouters.net/foo/my_bsd_sucks_less_than_yours- AsiaBSDCon2017-paper.txt)

[1]: [http://evilrouters.net/foo/my_bsd_sucks_less_than_yours- Asia...](http://evilrouters.net/foo/my_bsd_sucks_less_than_yours- AsiaBSDCon2017-paper-html.html)

<comment><USER27> I have my issues with HN, but this type of comment is one of parts I relish. Thanks!

<comment><USER26> Indeed, learning new little tricks like this is one of the great things about HN! Many times, I get more "value" from the comments than I do the submissions.

</comment></comment></comment></comment><comment><USER28> Has anyone run both Linux and BSD on a server? What was your experience?

<comment><USER29> It depends.

If you call linux: debian or ubuntu or centOS, even with unsafe defaults freeBSD is secured.

Compared to untuntu/debian/centOS freeBSD has got bleeding edge softwares coming from upstream. That is the power of SOURCE distribution. Theses packages being compiled it may suit you. I must admit FLAVORED packages (make.conf templates) make sense.

I remember being a linux sysadmins and building my openLDAP/python/php packages from source by hand that were 4 years old with envy wondering WHY?!

Since systemd and my migration to BSD I have no regrets.

PF, ipfw are way more powerful than any linux firewall tools.

I have upstream stable software in the stable distribution.

I don't have systemd.

I have jails... And I have no religion switching to openBSD for core servers that need security knowing I have very few knowledge costs in doing so.

And be it capsicum or privilege dropping I look at linux containers techno as a smoke screen for poor man's security through obfuscation.

My advice is be smart: don't trust me, but if you are in between experiment.

</comment></comment><comment><USER30> If I was on my rig right now I would definitely convert this PDF to text so everyone could access it.

<comment><USER26> Are there common platforms where PDFs are inaccessible?

<comment><USER30> Not everyone runs GUI DESKTOP. Smartypants

<comment><USER26> It was an honest question.

My interpretation of your comment was that there was some (not insignificant size) group of people who would be unable to view this document due to some inherent limitation of whatever platform they're using to access the Internet (e.g., some mobile phone OS that can't open PDFs or something similar).

If I'm understanding correctly, however, your complaint is either that 1) nobody has provided you with an application to render PDFs on an 80x25 dumb terminal screen or 2) this document wasn't created in the format that you prefer.

When you make a conscious decision to not utilize a "GUI DESKTOP" \-- like >99.9% of the rest of the world -- you must be prepared to accept such inconveniences and/or find alternatives that meet your needs. The rest of the world has no burden or obligation to cater to your preferences.

(FWIW, in an earlier comment, I posted instructions for converting this PDF to both text and HTML as well as performing the conversion myself and making available those versions of this document. You're welcome.)

</comment></comment></comment></comment><comment><USER23> Typo:

>but the ports tree is a rolling release not tight to a FreeBSD release

should be

>but the ports tree is a rolling release not tied to a FreeBSD release

<comment><USER26> What is the point of mentioning this here as opposed to, say, e-mailing the authors?

With -- at most -- a handful of exceptions (assuming maybe _ajacoutot_ or _bapt_ show up), no one here on HN has the ability to fix this so I really don't see the point.

<comment><USER31> Also, I guess he gave up shortly after.

There's way more than the single typo ...

<comment><USER26> Yeah, I noticed that and that's part of the reason I asked. If one pointed out every typo in this document (as well as all other HN submissions), the signal- to-noise ratio of the comments section would be intolerable.</comment></comment></comment></comment>


Cialis as 3 result in Google search of Romney, Is it just for me? - <AUTHOR> https://www.google.com/search?q=romney

<comment><USER2> No, I am seeing that as well. Looks they bought/hacked a lot of backlinks.</comment>


NSA Officers Sometimes Spy on Love Interests - <AUTHOR> http://blogs.wsj.com/washwire/2013/08/23/nsa-officers-sometimes-spy-on-love-interests

<comment><USER2> _NSA said in a statement Friday that there have been "very rare" instances of willful violations of any kind in the past decade, and none have violated key surveillance laws._

So there have been willful violations, but they didn't violate key surveillance laws? How does that work?

<comment><USER3> Same way a cop who murder's someone in the line of duty doesn't mean the department murdered someone. That part makes sense.

The question(as with cops), is what happened to the people who did violate the rules? It's unlikely they were fired or prosecuted, hopefully they were demoted and lost access to the system.

NSA is loath to fire people(and likely revoke their clearance if it's for cause) with serious classified knowledge since getting a comparable paying job with a revoked clearance and a large gap on your resume would be very hard. The worry is they would simply sell knowledge to a foreign government.

</comment></comment><comment><USER4> What are the odds that NSA officers sometimes engage in insider trading?

>Most of the incidents, officials said, were self-reported. Such admissions can arise, for example, when an employee takes a polygraph tests as part of a renewal of a security clearance.

So the only way we catch them is when they admit it. Great.

<comment><USER5> Seems like this narrative hasn't been explored and could have legs. I'm not holding my breath, but I'd like to see a solid media piece that hammered this idea home for the American-folk.

</comment></comment><comment><USER6> If anyone wants to discourage bright hackers from working at the NSA, make it creepy to their potential love interests: publish stories at popular sites with titles like, "Is your NSA girlfriend/boyfriend reading your Facebook messages?"

<comment><USER7> surely that will do the trick

</comment></comment><comment><USER8> Well why wouldn't they? The NSA is run by humans after all.

<comment><USER9> I would have to agree. Tell me any large organization where there's not a few infractions in a decade.

And I'm no apologist for the NSA, I just think intellectual honesty is good for our side of the argument.

<comment><USER10> In a way, things like this are a part of the whole bloody point that opponents of the NSA have been making: if you put that much surveillance power into the hands of a relatively small number of humans, then they will abuse it. These sort of incidents reveal through their pettiness some of the ways in which massive surveillance invites abuse.

</comment></comment></comment><comment><USER11> "Oh dont worry, the only abuses at the NSA are jilted lovers spying on exs, trust us!"

It sounds like a load of hork, especially considering the sliding slope of truth they have been pushing lately.

</comment><comment><USER12> I was going to ask why these agencies even use polygraphs but found an answer on wikipedia: "According to a report to Congress, polygraphy in the security clearance context has little utility in detecting untruth, but significant utility in inducing verbal admissions. That is, polygraphy is mainly useful as a prop in the interrogation process. Further, this likely accounts for its continuing use by government agencies." Sounds real reliable.

<comment><USER13> It's totally just a prop they use as an interrogation trick, much like the fake phone in Stasi detention centers that the interrogator would pretend to receive timely intel on whoever they were interrogating, or use it to make pretend calls to HQ to go pick up the person's family for questioning if they didn't like the answers. Cops to this day use a lot of those tricks, like the file folder they come into your cell with that's full of scrap paper they claim is 'all the evidence against you, so you better start talking'.

Penn & Teller Bullshit did a good episode on lie detecting pseudoscience: [http://youtu.be/8NLf7XwLpyQ](http://youtu.be/8NLf7XwLpyQ)

</comment></comment><comment><AUTHOR> > _Most of the incidents, officials said, were self-reported. Such admissions > can arise, for example, when an employee takes a polygraph tests as part of > a renewal of a security clearance_

So of the vague number of reported violations that the NSA will admit to, most of them are found through confessions...and some of these apparently come from the kind of NSA employee who can't fool a polygraph test.

There are so many comical things about this that it's almost hard to be indignant

<comment><USER14> Nobody watches the watchers. We're supposed to just have blind trust.

<comment><USER15> In Polygraph we trust.

Btw, "spying on love interest", pardon my English, isn't it just a PC expression for "stalking"?

<comment><USER4> Yes.

</comment></comment></comment></comment><comment><USER16> _Such admissions can arise, for example, when an employee takes a polygraph tests as part of a renewal of a security clearance._

Interestingly, this is very illegal for private companies to do under EEPA. Why should government employers get an exception?

<comment><USER17> It looks like there's a few different exemptions: [http://www.dol.gov/whd/regs/compliance/whdfs36.htm](http://www.dol.gov/whd/regs/compliance/whdfs36.htm)</comment></comment>


Tell HN: Twitter is 'technically wrong' again, but why can't I tweet? - <AUTHOR>

Like email, twitter could have MTAs, or T(weet)TAs that cache inbound tweets until the twitter backend is up. <comment><USER2> Sure, they could. Once they figure out if they're a service, or a protocol.

Also, twitter always seems kind of like a real-time thing to me. If I've been away from Twitter for even a few hours, I'm not going back and reading through dozens or hundreds of tweets.

So, caching tweets via some kind of TTA seems technically doable, but only marginally valuable.

<comment><AUTHOR> Sure, I agree with the real time consumption of tweets/dents perspective you present. However, advertizers (cringe) would like to know that I'm happy and riding my bike today.</comment></comment>


New bill would create Digital Privacy Agency to enforce privacy rights - <AUTHOR> https://arstechnica.com/tech-policy/2019/11/new-bill-would-create-digital-privacy-agency-to-enforce-privacy-rights/ <comment><USER2> > both Democrats from California

Minority parties don't pass partisan bills.

<comment><AUTHOR> Democrats are the majority in the House: [https://en.wikipedia.org/wiki/116th_United_States_Congress#H...](https://en.wikipedia.org/wiki/116th_United_States_Congress#House_of_Representatives)</comment></comment>


I started a side project last year that has over 1K users – now what? - <AUTHOR> http://petercorsaro.com/post/55917985553/i-started-a-side-project-last-year-that-has-over-1k

<comment><USER2> Are they active users? I have a site with 2000 users but only 3 active users :-(

I guess a lot of people signed up but didn't stick around. If all our your users are active then maybe you've really got something there.

<comment><AUTHOR> There's a pretty good core of active users. Definitely not all of them. About 1 in 10 becomes a regular, with about 2 - 3% checking the site almost daily. Around 20 - 25% use the site once a month. No idea if these numbers are any good, but they're getting better every month.

When I initially started the site, I did some reddit advertising, and while I got a decent number of sign ups, most were one and done accounts. Organic exposure has definitely been way better than paid advertising for me.

</comment></comment><comment><USER3> Is it making money? If not think about monetizing it.

If it is making you money, then see how you can use that money to get more users and more revenue.

<comment><AUTHOR> I'm trying to figure out how to monetize it. Affiliate links seem like the best option currently, but they're not doing much for me yet. Eventually I'd love to let publishers and developers promote their games on the site, but I don't feel like it's large enough yet.

</comment></comment><comment><USER2> It looks like a really cool site. Would it be useful if you could scan in the UPC of your games with a smart phone?

<comment><AUTHOR> Thanks!

I was just thinking the other day that it'd be cool to be able to scan games in. I think my data source has UPC data in it, but I don't think it's very well filled out.

<comment><USER2> Check out the UPC database. They probably have a lot.

Also when you let people scan it it if you can't find a matching game then you let them enter it manually. Eventually you'll at least have the most common games covered.

I went through a similar thought process with a site I made a while ago. grocist.com

Btw. Let me know if I can help out at all. I have a bit of free time lately.</comment></comment></comment>


The derelict mansions on London's 'Billionaires' Row' - <AUTHOR> http://www.cnn.com/2014/02/24/business/the-derelict-mansions-on-britains-billionaires-row/index.html?hpt=hp_c3

<comment><USER2> The topic of dilapidated mansions on "Billionaire's Row" in London was also discussed on the Keiser Report, episode 558, Feb 4, 2014: [http://www.youtube.com/watch?v=ni9AfsK5EdY&t=437](http://www.youtube.com/watch?v=ni9AfsK5EdY&t=437)

The housing bubble is fueled by central bank money printing. This is a good reminder of the problems caused by speculating with bank created debt: "Speculation, therefore, is to be condemned on two grounds: First, because it is a non-productive business; and, secondly, because it diverts wealth from productive business, thereby disturbing prices and adding to the burdens of society." Quoted from "The Bank as a Promoter of Speculation", p. 658, March 1872, [http://books.google.com/books?id=QuMzAQAAMAAJ](http://books.google.com/books?id=QuMzAQAAMAAJ)

"non-productive": Speculation on these homes not only fails to create new wealth, it also destroys existing wealth--these homes are falling into disrepair because the owners don't want or need to maintain them. Their prices will rise, even if they fall apart.

"diverts wealth from productive business": If I own a factory that actually creates wealth, even if it is profitable, unless it is as profitable as real estate speculation, then market forces are going to lead me to (1) raise my prices as much as I can get away with and demand my workers accept cuts to pay and benefits; or, if that's not enough, (2) liquidate my factory, fire my entire work force, and bet my capital on real estate. In this respect, central bank money-printing and the speculative bubbles it creates can be seen to be both deflationary (i.e., creates unemployment and puts downward pressure on wages) and inflationary (i.e., creates shortages and higher prices for consumer goods as well as higher prices for speculative assets) at the same time.</comment>


Recession, tech kill middle-class jobs - <AUTHOR> http://news.yahoo.com/ap-impact-recession-tech-kill-middle-class-jobs-051306434--finance.html <comment><USER3> So is it Man over machine or machine over Man?

Seem like the real issue lies in the trend toward optimization in every part of the economy, from the small business owner to large corporations etc.

Case in point, I worked for a startup in 2008 that had a FT sysadmin and actual rack servers/real hardware etc. Same guys started a new company in 2012, minus a sysadmin and hardware. The ease/price of EC2 just makes too much sense. I saw that happening.

One has to be careful to watch the trends and not be on the wrong side of history (like a sysadmin who is not open to cloud and devops at this point). But how are most non-tech savvy employees going to keep up with the times? Most likely they will be outmoded and seen as expendable.

My question is how far will that go?

<comment><USER3> Not sure why this was downvoted. Care to give feedback?

</comment></comment><comment><USER4> This seems like an inevitable outcome of everything that "we" (the startup and tech communities) are doing. Nearly every startup business I've seen on HN is about an optimization of an existing industry. Almost invariably, optimization means cutting people out of the loop, as people are quite slow at a lot of the tasks computers are suited for.

The problem is of course the growing disparity between pay. As the existing middle is eliminated, the majority of people are trending towards the lower segment of pay (the 29/2/~70 ratio mentioned). Ideally we'd find a way to elevate a large portion of those in the lower 70% area to higher paying jobs. I think the reality is, many of those people probably will never be suited for jobs in the $100k+ range. The only solution I can see being viable is further socialization (in the US) of things like medical care, transportation, etc. in order to ensure that just because you don't have a high salary, doesn't mean you can't have a high quality of life. Either that or accept that the US is devolving into a 3rd world country.

Bring on the "socialist" flames.

<comment><USER5> All repetitive labor will eventually be automated. It is only a matter of time.

The problem with capitalism and tech is that the efficiency gains realized through automation nearly all go to the owners of the firms. The human laborers replaced by programs and robots are just S.O.L. Capitalism only works for a society as long as capital owners need human labor to carry out production.

"The only solution I can see being viable is further socialization (in the US) of things like medical care, transportation, etc. in order to ensure that just because you don't have a high salary, doesn't mean you can't have a high quality of life. Either that or accept that the US is devolving into a 3rd world country."

Yes. Either we implement basic income and universal healthcare, and improve access to public services, or we will end up with a tiny, but very wealthy "owner" class, and a very large, unemployed, impoverished majority.

Better to do it soon, while it's still a choice, rather than later, when it isn't. History has shown that the masses will only put up with so much inequality before they openly revolt.

An opposing force to this, though, is that increased automation will continue to reduce costs and barriers to entry, allowing people with almost no resources to start some form of income-generating online "lifestyle business." A lot of people are doing this now, but not nearly enough people are capable of it, for it to be a sustainable career option for almost the entire American middle class. Yet.

<comment><USER4> The lifestyle business prospect is interesting, as mentioned in that Forbes article that hit the front page[1], there is the possibility for many to start making a steady living in the sharing economy. I'm involved with a business working in the arena, and the possibilities are intriguing. Whether or not it becomes a sustainable economy for the longer term is still pretty up in the air

[1] [http://www.forbes.com/sites/tomiogeron/2013/01/23/airbnb- and...](http://www.forbes.com/sites/tomiogeron/2013/01/23/airbnb-and-the- unstoppable-rise-of-the-share-economy/)

<comment><USER5> I read that article too. The possibilites are interesting but i dont think sharing your stuff for cash will be a sustainable career option for most, especially if the cost of that stuff keeps going down.

Another possibility is that inequality and exponential growth in CEO compensation are due to the fact that most companies are not free marketplaces internally. They are run like little communist dictatorships where compensation is allocated by social/political rank, not by value created. If companies had to pay people according to the actual marginal value of their work, perhaps the inequality wouldn't get quite so severe. But human workers would still have to gradually retrain themselves to perform non-automatable tasks en masse, and the transition period is still going to be painful. That part seems unavoidable.

</comment></comment></comment></comment><comment><USER6> You know what I find funny? Those who argue against income redistribution - aka socialism - are probably going to be some of the first people to become permanently unemployed.

If you understand what's about to happen - you'll quickly realise that everyone will be out of a job and unless we keep people consuming - <USER2> start to get scary - like revolution scary.

We're all socialists now.

<comment><USER7> Yeah, I don't have a solution to the situation, but when you look at the topline profits (going up), and employment (going down) at almost every corporation.. the rhetoric about "job creators" is a bit much.

</comment></comment><comment><USER8> In 1890, 43% of the US population were farmers. Because of technology (fossil fuels, internal combustion engines), most of those jobs are gone for good. We're going through a massive change and some people's livelihoods will go away permanently. They're not entitled to make a living at an obsolete job, but I think we owe it to them to provide a comprehensive safety net so they can survive and retrain.

</comment><comment><USER9> This has been a trend over all of human history. Going to keep it brief and technically incorrect to paint a picture...

Initially, everyone was required to either hunt or gather food (probably). After a bit, humanity settled down into farming, and fewer people were required to keep everybody fed. This allowed for more time for childbirth. Better understanding of agriculture led to the creation of larger towns with specialized jobs such as blacksmiths and stables which led to farm animals helping to improve yields even further. To create the tools, some people had to go into mining jobs.

The pattern here is that advancement allows fewer people in each economic area to provide the same benefits, freeing up labor for new economic areas.

So clearly, the modern move to automate jobs isn't _necessarily_ anything new. People are now free to move into creating accounting software instead of manually filling out journals. The problem occurs when the people freed up from advances do not have any new work to move into.

The result may simply be de-urbanization - people moving back into the countryside to grow their own food. Most people can afford to buy a small plot of land in the middle of nowhere (small piece of land in the middle of Africa is practically free). Or the result may be socialism. Or the result may be new economic sectors being revealed by innovation. Fortune telling won't get us very far.

<comment><USER10> As the original article alludes to the big difference now is that the rate of advance is increasing. When whole industries are being upended within a few years and this turnover is getting faster all the time, it is difficult to point to "retraining" (the historical fix for this) as a solution. Most people just aren't that intellectually flexible. Those that are will prosper, the vast majority will, I think, be screwed.

I'd love to see some sign that the US Government is starting to take this issue seriously and planning for it. While we're still years away from this becoming a _critical_ social problem, I do believe that the brunt of the impact from this trend is inevitable and not too far off (certainly within my lifetime and I'm pretty old now).

I'm personally very much in favor of a hybrid socialist system where everyone gets a guaranteed minimum income but people who are able and willing to can still work to earn more. I think this helps in a number of ways, the first being avoiding societal collapse and possible revolution due to the massive amount of unemployed there will be relative to the current population and secondarily, it gives even driven people a buffer to live on while chasing their dreams. I think the end result would actually be more positive for humanity than the current system, though for obvious reasons it will not be supported by the capital gatekeepers who currently wield the money (and thus the power).

I find the idea that any degree of socialism will result in no progress is pretty insulting towards humanity. There will always be people who are driven (whether it be by ego or curiosity or whatever) to do great things.

<comment><USER11> Krugman has touched on this a bit in recent posts, although he's still in "gathering evidence" mode on the issue.

It's a very interesting and serious problem, and I very much agree that a "hybrid socialist system" is not the disaster some say it would be. We're not talking about centralized bureaucratic communism, but rather what is already in place in parts in many Western countries.

<comment><USER12> Besides, some studies by professional economists provided evidence that a "regulated capitalist" economy with imperfect markets is really not substantially more efficient (in the strictly economic sense of the word) than a "liberalized socialist" economy. Market optimality apparently turned out to be an all-or-nothing property of the mathematical models that gave rise to significantly different (but still amenable to scientific examination when we alter the models) behavior in the real world.

<http://jacobinmag.com/2012/12/the-red-and-the-black/>

</comment></comment></comment></comment><comment><USER13> Speaking from an economics viewpoint, new technology kills jobs _temporarily_. Eliminating/automating jobs is obviously a good thing over the long term: how often do we lament the cotton gin because of how much cotton harvesting labor it eliminated? Over the short term, it caused job loss for many cotton harvesters, and a concentration of wealth for cotton gin owners. But over the long term, it caused the cotton industry to boom, and created a higher standard of living for everyone. It just took time for the market to reach a new, higher equilibrium. The same thing is happening today with technology, albeit at a much faster pace.

So the real issue is not permanent job loss, but rather how do we take care of people as industry reinvents itself? The pace of this reinvention is accelerating, and has been accelerating for hundreds of years. In the near future, 20 years could result in a completely new job skills need. In fact, compare 1993 to 2013. Entire industries have sprung up while others died since then. Yet we do not lament the advent of the omnipresent internet because of the lost jobs in the newspaper, movie, music, and publishing industries. At least, not most of us. The same thing is simply happening today. Jobs will continue to exist. Just not right away. The real problem is only the short term: figuring out what to do when people get optimized out of some obsolete industry. There are many answers, we just have to think about it.

Socialism is an answer proposed by many people. I think I agree with them to some degree. Some kind of economic floor below which no person can descend. I don't know how this could be created, but I would argue that the "economic floor" has been steadily rising for hundreds of years. In the US, even poverty currently results in a significantly higher standard of living compared to the median income life in 1850.

</comment><comment><USER14> I think tech's overall optimization/automation effect is good/great for humans, but only if society adapts. In Star Trek's utopia, it's said that the limitless bounty created by tech has basically removed the need for currency and competing economies...but will that happen in reality? If it becomes technologically possible to cheaply produce robots that replaces nearly everyones' jobs...will society be able to say, "Awesome, let's all relax now!"? I can't imagine that we'll ever accept that, even if natural resources become nearly limitless.

<comment><USER15> The ugly reality is that the effect of automation seems to be further stratifying the haves from the have-nots. By definition, automation makes things cheaper and more profitable by taking away jobs. If there aren't OTHER JOBS also created, we have a situation where the owners are systematically getting richer and the workers are systematically getting poorer.

<comment><USER16> Isn't that the end result of capitalism? To optimize returns on capital. It says nothing about labor or workers.

<comment><USER11> I thought capitalism was centered around labour providing value and being rewarded accordingly? I'm not sure myself. Although the other inputs to production are land and capital goods, the latter of which could I suppose be interpreted as "the robots that will take care of everything".

</comment></comment></comment></comment><comment><USER17> Technology has always been killing jobs, however in the history of man there have always been room for long-term job growth. Otherwise we would not be where we are now. The article is fairly shallow in blaming only one thing for the recession and joblessness. Suddenly the massive debt is no longer a problem, the fact that there are lean manufacturing methods that can compete with mass production is overlooked, etc. The situation really is more complex than one or several journalists can hope to investigate by crunching several time series.

<comment><USER18> Classically, the new technology created a new class of work to operate/use it or decreased the cost of something so much that it was affordable for the middle class and required a lot more workers to handle the new demand. Now the middle class which benefited from new, cheaper, better products is shrinking with substantial (but by no means comprehensive) evidence that job growth as we've known it in the last hundred years isn't coming back.

Even in software development, there may only be limited growth due to its open and exponential nature. As more developers work on software, the more tools will be developed to make their work more productive and efficient. It's a self reinforcing feedback loop that might have an equilibrium that won't be sufficient to account for all of the jobs lost as a result of software. American manufacturing, for example, is still one of the biggest sub-economies in the world and is insanely productive compared to Chinese manufacturers per person, but it doesn't create anywhere near as many jobs as we have lost overseas. At the same time, manufacturers in industries like medical, aero, and defense are complaining that they can't get the skilled workers they need to grow and as a result are forced to invest way more into automation.

It's very likely that I just can't look at this period of human development without heavy bias but it seems to me that the ridiculously easy flow of information allowed by the internet has destabilized the equilibrium we've had with creative destruction and job growth.

<comment><USER12> _Classically, the new technology created a new class of work to operate/use it or decreased the cost of something so much that it was affordable for the middle class and required a lot more workers to handle the new demand._

So let's ask, then: what does the middle class lack today that an increase in production efficiency could make widely available?

<comment><USER18> I can't really answer this question.

The two major areas I can think of are health care and capital equipment.

Health care because surgeries and even basic procedures can be really expensive, especially for the uninsured. Already we can see hair transplant robots [1] that take the cosmetic doctors almost entirely out of the picture and I'm sure surgery robots are being developed. I don't see how this kind of industry can create more jobs than it eliminates. However, better education and awareness of chronic illnesses caused by lifestyle I think would help free up hundreds of billions of dollars that would then stay with the consumers (or non-healthcare corporations which might then just hold on to it).

If you decrease the cost of capital equipment by automating their production (aka, by making automation easier and cheaper), it will allow many more people to buy them and drive their price down further because of increasing volume. This could then lead to a diaspora of small time manufacturers and service providers who replace large entities, become more local, and drive down the prices of everything through competition. The consequences here would be wild and unpredictable. Maybe the sum generated economic activity would be much greater than the whole (as it often is with manufacturing industries), but we can't say that for sure because of the limited value add that these manufacturers can provide over their equipment (as it currently is with manufacturing...). The other consequence would be the devaluation of the equipment causing a devaluation of the service contracts, which would probably lead to more automation through modularity, machine learning, and data driven remote diagnostics of equipment.

But honestly all that above is wild speculation. The future is damn near impossible to predict and I think the presence of economic incentives going in all different directions for all parties involved just makes it a lot more uncertain.

[1] <http://restorationrobotics.com/>

</comment></comment></comment></comment><comment><AUTHOR> This makes me wonder what a world without jobs will look like. Will a good quality life, food, shelter, money, etc just be human rights?

<comment><USER19> Don't confuse a reduced number of jobs that can be replaced by machines or algorithms with total capacity or demand for human labor.

<comment><AUTHOR> I'm not sure anyone would confuse those things. I just think eventually, employable people will be greater than the number of jobs to perform. In a world where you've always received money, food, etc as a result of your contributions, how do you get these things without a means of contributing?

<comment><USER20> Well, we've been there before - more people than needed to do all the work available. As a result, we instituted the idea of servants.

So get used to a future where you either have a personal entourage, or will be busy doing errands for people who actually have money. And chances are much higher for the latter.

</comment></comment></comment></comment><comment><USER21> They cited Andrew McAfee in the article, but I believe he's come to a different conclusion than the authors of this article did.

He gave an excellent talk called "Are droids taking out jobs?" [http://www.ted.com/talks/andrew_mcafee_are_droids_taking_our...](http://www.ted.com/talks/andrew_mcafee_are_droids_taking_our_jobs.html)

</comment><comment><USER22> This phenomenon is called pauperization. Many countries in Europe experienced it acutely during the early 19th century. People were allowed to starve back then until production shifted to take advantage of the surplus labor. And though people in developed countries are unlikely to starve this time around, the real challenge for us is figuring out how to allow the change to continue (because we will all be better off for it) without destroying people's dignity and/or creating an economically futile and dependent underclass.

</comment><comment><USER23> Tech kills but also creates. It's up to the people to decide whether they want to adapt to that environment or lament the old.

<comment><USER12> Technology _can_ create new jobs, but only if the economic demand is available to support the new professions, products, and fields.

This is where capitalism breaks down: its productive engine is one of the most powerful we know of, but its allocation system continues to write off large and _growing_ portions of the population as _undeserving_. And the more people are undeserving, the less demand is available to support businesses, so the vast productive power of technology gets "eaten" as profits and rents for capital-owners rather than transformed into innovation and growth.

These are important lessons that the Western world was _supposed_ to have learned through the Great Depression, World War II, and the post-war period of _immense peace and prosperity unprecedented in human history_. Eventually it's _either_ support a working class (including both the "lower class" and the "middle class") secure and well-off enough to fuel the growth of industry, prop up your economy using government spending, or watch your economy collapse.

<comment><USER13> Surely you don't think that 1950 was better in terms of quality of life compared to 2013. Right _now_ is the most prosperous time in human history.

<comment><USER12> The questions are: prosperous _for whom_ , and in what sense of the word?

1950 was "better" in that it was both more egalitarian (for whom) and also more secure (which, I should note, made it inherently more egalitarian). Things like the GI Bill and post-war reconstruction made Major Life Purchases like housing, infrastructure, and education very affordable for large masses of the population. Production booms, government income-support programs, and unionization made incomes more secure (even when employment was culturally and personally repressive and conformist), allowing families to reinvest in building private savings. Employer-sponsored pension plans made retirement a real possibility and Social Security a fall-back. One spouse was expected to work, and the other spouse's labor was held in reserve for emergencies.

Contrast with today. Yes, in an absolute sense the economy is more productive, but it's also less egalitarian (income inequality is at historic highs in the United States and most other developed countries for which old measurements exist) and less secure (debt and leverage are not only rampant but the _most common and expected_ ways of gaining access to housing and education, and few households can function without two incomes). The result is that for the median citizen, things haven't gotten better (few to no real-wage rises) since the 1970s, and the _mean_ citizen ( _including_ people with very high nominal incomes) is vastly less secured against cash-flow disruptions. And since the housing, health-care, education and energy sectors are collecting massive economic rents, even the proliferation of cheap consumer goods hasn't actually done as much for the median and mean citizens as it should have: someone who has bare-minimum health insurance, and has to pay health premiums, taxes, ever-rising housing rent, and student-debt service on a salary in the range of $20k-$30k per year (assuming you live in the USA) simply cannot afford to consume that many Playstation 3 games.

<comment><USER13> I honestly don't care about how egalitarian a society is. I care about a society's aggregate quality of life. If one person has a quality of life 100,000 times greater than everyone else, yet everyone else has a quality of life 100 times greater than today, I would choose that society. You can argue that the overall quality of life for our society now is lower than in 1950, but I strongly disagree with you. It doesn't matter if real wages have increased since 1970 if material goods have gotten cheaper. I would still argue that the overall quality of life has increased since 1970. And you're painting an incomplete picture about 1950:

>1950 was "better" in that it was both more egalitarian (for whom) and also more secure (which, I should note, made it inherently more egalitarian).

If you were white.

>Things like the GI Bill and post-war reconstruction made Major Life Purchases like housing, infrastructure, and education very affordable for large masses of the population.

If you were white.

>Employer-sponsored pension plans made retirement a real possibility and Social Security a fall-back.

65 was around the median age of death in 1950. "Retirement" was a hell of a lot shorter if you work almost until your death age. I can't call that better than now.

>One spouse was expected to work, and the other spouse's labor was held in reserve for emergencies.

If you were white. And both spouses working was an emergency situation because maintaining a household took a lot more effort in 1950 than it does today.

I just can't imagine things being _better_ for people in 1950 than now.

>someone who has bare-minimum health insurance, and has to pay health premiums, taxes, ever-rising housing rent, and student-debt service on a salary in the range of $20k-$30k per year (assuming you live in the USA) simply cannot afford to consume that many Playstation 3 games.

I don't think I could afford to consume that many Playstation 3 games in 1950, either. In fact, I don't think anyone could afford to consume any. In fact, there would be a good chance that I wouldn't even own a television in 1950.

<comment><USER12> I do certainly take your point on the "if you were white" front, but I want to use that to lead into something Tony Judt wrote in "Ill Fares the Land": the post-war period was prosperous enough that political movements, in many instances, shifted from striving to _overthrow and replace the system_ towards striving to _be included in the existing prosperity_. MLK Jr was indeed a black-rights activist and a socialist, but he didn't see his form of democratic socialism as something that required a violent revolution of genocidal proportions the way that, say, Lenin had, or even the way that German anti-fascist partisans had.

>I don't think I could afford to consume that many Playstation 3 games in 1950, either. In fact, I don't think anyone could afford to consume any.

Thank you for making part of my point for me. If someone couldn't consume PS3 games in 1953-1963 because they didn't exist, and someone can't consume PS3 games now because they're unaffordable on today's low salaries (well, low salaries for most people _outside Hacker News_ ), _then what good is the existence of PS3 games to this person?_

Where's the worth in increased production and variety of consumer goods only an elite minority can afford to enjoy?

<comment><USER13> I agree that increased production and variety of consumer goods is mostly useless if only an elite minority gains benefits from them. But I still disagree that only an elite minority has seen a benefit, i.e. an increase in the quality of life over the past 40 years, and certainly over the past 60 years. And yes, income and wealth inequality may have increased since 1950, and I agree with you that this is objectively bad. I also agree that our country has a serious and growing problem with personal debt.

But these things do not mean that the average and median standard of living has not risen for everyone in the United States since 1950, which I believe it has. I don't even see how this can be argued. Almost every quality of life metric I can think of has improved: education, life expectancy, and infant mortality have all improved, in addition to harder to measure increases in everyday comfort due to technology. In 2013, even most of the poor have a mobile phone. Almost anyone can walk into a library and talk to you or I on Hacker News. There are some metrics that have not improved, such as crime, incarceration rates, or income equality, and these are serious issues. But _overall_ , I believe that the standard of living for the average US citizen has risen.

Anecdotal examples don't really prove much, but I'd like to give one anyway. My sister hasn't made the best decisions, and dropped out of college to move in with her boyfriend. They lived with his mother for a while, and lived on food stamps and in poverty. During this time, they had access to an Xbox 360, a car, cell phones, and a television. Their living situation was terrible by normal standards, and yet their standard of living would have been seen as good or even great by 1950 standards.

<comment><USER12> _I don't even see how this can be argued._

Simple: median real wages HAVE NOT RISEN AT ALL since 1970, while the cost of living (particularly prices for housing, health-care, education and energy) has... a lot.

So you can say that consumer technology has increased the quality of life in a non-tangible, non-quantified way. But in all the _quantified_ ways, things are getting worse: people are losing the incomes that enabled them to access consumer goods (like consumer technologies) in the first place.

There are also many complaints about "kids these days", that a current-day education is "inflated" and less worthwhile or indicative of anything than a past one.

The poor don't have mobile phones because they can afford luxuries, they have them because mobile phones have become very, very cheap and, in some cases, government-subsidized.

As to life-expectancy, it's actually started to tick slightly _downward_ for young people today since the Recession started. Infant mortality, too.

So, indicators that have gotten better over the past four decades: educational levels, life expectancy, infant mortality, crime rates (they're down quite a bit). Indicators that got worse in the past four decades: housing, health- care, education and energy costs, real wages, working hours (they increased noticeably). Indicators that started getting worse since 5 years ago: all of the above.

<comment><USER13> In that case, maybe I'm wrong. If it is really true that the base cost of living has risen compared to real wages, then I'm wrong. I wonder if someone were able to only buy amenities and luxuries to create a standard of living comparable to the median standard of living in 1970, would it cost more or less in real wages? Or the same? My premise was that it would cost less even though real wages have not risen, because one would not have to buy as much to live like 1970 compared to how the average US citizen lives today. Similar to how mobile phones, computers, and the like are cheaper today. But if it's true that 1970's-comparable housing, health care, education, etc. costs have all risen, then you're right... the standard of living in some ways could be considered to be lower today than in 1970. Which is really effed up.

<comment><USER12> I'd advise giving this a watch. The data has surprised everyone, including the people researching it: <http://www.youtube.com/watch?v=akVL7QY0S8A>

</comment></comment></comment></comment></comment></comment></comment></comment></comment></comment><comment><USER18> "For more than three decades, technology has reduced the number of jobs in manufacturing. Robots and other machines controlled by computer programs work faster and make fewer mistakes than humans"

Worst of all, we haven't even seen the robotics revolution yet. In the past, automated assembly lines, manufacturing plants, etc. were the realm of extremely large companies with volumes in the hundreds of millions and billions of dollars. Now, with embedded development becoming more and more accessible and interfaces becoming an important part of software, that automation will become cheaper and cheaper. Pretty soon we'll be able to use off the shelf hardware with Python and OpenCV to program complicated assembly lines and manufacturing pipelines (which we can to some extent already).

</comment><comment><USER24> The western democracies are in a position to be in a post scarcity world if we choose to be. There is no reason that everyone cannot have the basics of food, shelter, health, and security. We also do not need perpetual 20% unemployment. One important dividend could be increased leisure time. We went from 60 hour workweeks to 40 hours, so why not 30 hour workweeks or 6 weeks of vacation per year. We are mot yet at the point where we can automate tasks that require mobility and some level of skill, such as a UPS delivery person.

I think we are also at the point where we as individuals dont need a barrage of new physical things every year. We can still make significant progress with new virtual products and more efficient and durable physical goods.

</comment><comment><USER25> "I have never seen a period where computers demonstrated as many skills and abilities as they have over the past seven years." - Andrew McAfee principal research scientist at the Center for Digital Business of MIT.

Seriously?

<comment><USER26> What's wrong with that? The last seven years contain the rise of modern mobile. Lots of new stuff has come out of that.

</comment></comment><comment><USER27> Technology _creates_ middle-class jobs and wealth by enabling the less skilled to perform tasks they were previously unsuited for. Where did all those factory jobs come from in the first place? The entire idea of assembly line manufacturing was to replace skilled artisans with unskilled repetition. Technology today is no different. The only issue most 'developed countries' have is that it's lifting millions out of poverty worldwide rather than paying union members $70/hr to tighten bolts.

</comment><comment><USER28> Alright guys, let's save the economy! This was the perfect amount of motivation for me.

</comment><comment><USER29> Its mainly recession, in good times productivity growth means more, not less jobs.

</comment><comment><USER30> The idea that labor is something which can be traded for income is a myth.</comment>


Yves Meyer, Wavelet Expert, Wins Abel Prize - <AUTHOR> https://www.quantamagazine.org/20170321-yves-meyer-abel-prize/ <comment><USER2> His work on wavelets is seminal and astonishing.

He has not stopped working, ever; with recent contributions to the detection of gravitational waves and the theory of quasicrystals.

<comment><USER3> I'm sad not to know him already.

<comment><USER4> And a very nice and approachable fellow. His class on signal processing was awesome.

</comment></comment></comment><comment><USER5> Live presentation now: [http://www.abelprisen.no/artikkel/vis.html?tid=69572](http://www.abelprisen.no/artikkel/vis.html?tid=69572)

</comment><comment><USER6> Does anyone know of a good introduction to wavelets?

Books or papers; let's say at the level of math heavy CS/undergrad math degree.

<comment><USER7> Depends on what you're trying to do with them since they have a few applications. This presentation is a rough but simple overview: [http://cs.haifa.ac.il/hagit/courses/seminars/wavelets/Presen...](http://cs.haifa.ac.il/hagit/courses/seminars/wavelets/Presentations/Lecture09_Denoising.pdf)

Here's an online demo for a C library that can do DWT and CWT. The code is a little rough but it's functional: [http://rafat.github.io/#/sites/wavelib/front](http://rafat.github.io/#/sites/wavelib/front)

Also, a really basic but easy to understand video series: [https://www.youtube.com/watch?v=QX1-xGVFqmw](https://www.youtube.com/watch?v=QX1-xGVFqmw)

</comment></comment><comment><USER8> Ironically, was actually contemplating implementing wavelets approach in our project, so very timely!</comment>


Making a sandwich (reflections on Ajax patent) - <AUTHOR> http://ihumanable.com/blog/2009/12/making-a-sandwich/

<comment><USER2> A patent so broad, so vague and so far reaching that you can sue Frito-Lay Inc. and Adobe Systems Inc. at the same time! They basically just listed the fortune 500 and went for broke.

 _Mike McKool, head of the national law firm McKool Smith and lead counsel for Eolas, says he hopes the lawsuit will put an end to the widespread unauthorized use of the company's technology patents._

Perhaps we should all get together and have a day where we make that true. One day without ajax, iframes, or plugins of any kind ought to do it.

<comment><USER3> Maybe someone should just stab him in the fucking gut and shut this bastard up for good.

<comment><USER4> That's not really constructive.

<comment><USER2> Its not only not constructive to the discussion, even in practice its not constructive. This group of people (or this particular man) has dedicated his life to enriching himself by exploiting the system. Yes the man is broken, but the system moreso. Simply removing him through violence or otherwise will not fix the problem. There will be a long line waiting to take his place. We've let the system get way out of hand. So far so that the normal methods for fixing such things seem to no longer be available to us. We could have filled the cavity in 1980. Now we need a root canal. Some are going so far as to say we need to pull the whole tooth.

</comment></comment></comment></comment><comment><USER5> How could this patent be approved? Seriously, this patent could only pass if filled in the '80s, with Nelson's transclusions, and the later Lee's WWW.

Ok for the plugins, but Ajax it's not a plugin.

<comment><USER6> The patent office doesn't care about "plugin vs native" functionality. They care about technology at a more abstract level.</comment></comment>


Nagios vs Icinga: the story of one of the most heated forks in free software - <AUTHOR> http://www.freesoftwaremagazine.com/articles/nagios_and_icinga <comment><USER3> Nagios is great, but Icinga fixed some serious issues with it that were long- standing. At least in the beginning, the reason for the fork was extremely clear, and there was no doubt the fork made sense. As of right now, I'm not so sure there's any huge advantage of Icinga 1.x over Nagios 3.x, other than a better UI.

However, Icinga2 and icingaweb2 are both coming along very nicely. In a position I just recently left, I was using Icinga2 in production, and I really loved it for its performance and clustering capabilities. It really blows Nagios out of the water in those aspects. When you configure the active/passive "master" nodes in a datacenter, the checks get split between the two nodes with only one updating the DB (per the docs), and in practice, this seemed to keep the load very low for us, even with over 20,000 checks polling at least once per minute.

I realize the story is more about history than a direct comparison between Icinga 1.x and Nagios, but I just wanted to share our experience with anyone who may be considering the two options - don't forget to consider Icinga2!

It should also be noted that I still really love Nagios, and the later versions have resolved at least some of the issues we've had with it in the past.

<comment><USER4> Have you tried OpsView? They package up Nagios with an easy installer and nice UI. Graphing gets enabled by default. It's all very slick and easy. I've used it a couple times and it makes Nagios a far better system. OpsView is mainly open source, though they have a commercial edition with extra features

<comment><USER5> _OpsView is mainly open source, though they have a commercial edition with extra features_

It's only free for up to 25 hosts. Then it costs at least $65/mo (for up to 250 hosts) _plus_ the fees for extra features.

<comment><USER4> Oh, hmm I think that might be a new limitation then. (Which only makes sense since they gotta make money somehow...)

<comment><USER6> 25 hosts: free. 26 hosts: high costs.

Yeah, they could make that more appealing :)

<comment><USER7> If you are worried about spending money when expanding to 26 hosts, you aren't their market anyway. If you're worried about spending a few grand on monitoring for around ~100 hosts or more, then you have a very strange business model.

<comment><USER8> The problem is 26 bare metal servers is very different from 26 VPSes.

</comment></comment></comment></comment></comment></comment></comment><comment><USER9> We use Icinga2, after having used Nagios previously. Icinga2's configuration files are a joy to use when compared to Nagios, and the interoperability with Nagios Plugins is really nice.

On the other hand, we're getting really sick of every upgrade breaking our environment (if it's not the post-install scripts choking on our use of a non- default DB name, it's the configuration parser choking on previously-valid configuration files, or...), and we wish that the new UI could catch up with the capabilities of the classic UI.

We also wish we could pin a package version, but the Icinga devs remove the previous version from their repo the moment the new package goes up. Our solution to this will be to host the truncated packages on our own repo; we just wish we didn't need to do that.

<comment><USER10> I had the same problem with other projects like that before. We were lucky on finding older builds in some Linux distribution repo. Maybe you can also try looking in Suse's or Debian's repos for them. Another, often used alternative is automatically building an open source project for yourself. Especially if you find that new versions build your system on a regular basis. Building it yourself is the first step to get involved in the release process.

</comment></comment><comment><USER11> Nagios and derivatives are a hassle in modern infrastructure.

There are no good APIs (add/remove/modify hosts or services sanely).

The configuration files are not easy to templatize, and hard to understand even if you are able to programatically generate them.

They are even more clunky in a dynamic environment like AWS.

Check_mk is the sanest Nagios improvement add-on I've seen: [http://mathias- kettner.com/check_mk.html](http://mathias-kettner.com/check_mk.html) And that has its own issues.

</comment><comment><USER12> I started working as a sysadmin about two years ago, and one of the first things I did was set up Nagios to monitor our company network and devices. I was only dimly aware of the Nagios/Icinga split, and since Nagios never gave me any trouble, I have not given it much thought since.

But now I wonder - is there any technical reason to choose one over the other?

<comment><USER13> I'm in your position right now.

I set up Nagios to monitor about 50 servers last year and now I'm almost done switching to Icinga2. I think it's worth it if you have spare time, but the major improvements I've actually noticed have been UX, clustering, and graphite plugins. other than that it's Nagios with a nice GUI.

Not worth the switch if you have pressing issues at the moment.

</comment></comment><comment><USER14> Site seems to be suffering, here's a cached link:

[http://webcache.googleusercontent.com/search?q=cache:www.fre...](http://webcache.googleusercontent.com/search?q=cache:www.freesoftwaremagazine.com/articles/nagios_and_icinga)

</comment><comment><USER15> In light of the recent hostile takeover of nagiosplugins by nagios from the monitoringplugins folks, it puts the Nagios guy's statements that amount to "they just didn't want to work with us" in a very different light.

</comment><comment><USER10> In general what would you support and (very important why): Someone who focusses on a clean architecture even if it means slower development and less features, or someone who will integrate nearly everything even if it means the code base, build process etc are a mess?

My feeling always says the first, but all my successes (which I define as "someone was getting his job done using my open source tool") came from the latter. So I wonder if my sample size is simply too small, or if I was too naive in the first place, thinking clean architecture is good and important.

<comment><USER16> > Someone who focusses on a clean architecture even if it means slower > development and less features

This kills the company when their competition outdoes them.

> or someone who will integrate nearly everything even if it means the code > base, build process etc are a mess?

This kills the company slightly slower, when technical debt means slower development and less features in the long run, allowing their competition to outdo them.

> My feeling always says the first, but all my successes (which I define as > "someone was getting his job done using my open source tool") came from the > latter. So I wonder if my sample size is simply too small, or if I was too > naive in the first place, thinking clean architecture is good and important.

It's also possible your bar for "clean architecture" is high, or different from what others would consider "clean architecture".

I have written some terrible, terrible code, that hasn't caused major problems. Either because it was replaced with a proper solution before growing too unwieldy, or because it was contained well enough that it never became unwieldy in the first place. You could say that even though the micro- architecture was terrible, the macro-architecture was at least acceptable - which IMO is the vastly more important of the two to keep "proper" for long term maintenance. Although one has to be wary of a system growing until the micro-architecture becomes macro-architecture, if the former is of poor quality.

</comment></comment><comment><USER17> The summary is when you fork internationally you don't really need to follow trademark law in practice although it'll generate a lot of heat and forkers will end up having to follow the law sooner or later so the lesson from the article is forkers are better off in the long run following trademark law from the start of their fork...

The fundamental argument that generated the fork was the community permanently diverged between simple and complicated and the primary maintainer decided to ally with the simple team, probably from a strong historical "eat your own dogfood" culture. Maybe rephrased some people have to ping 10K boxes per minute and other people have to check 1000 services or files or aspects on 10 boxes and its not REALLY possible for the same codebase to serve both groups equally well in actual real world practice.

Yo, heres some patches to make your screwdriver(tm) more hammer-ish to help professional nail installers work somewhat more effectively. What are you crazy the wood screw installation professionals such as myself will not tolerate that, patch denied. OK we'll fork and BTW we're taking the name with us so on the other side of the planet, people will be installing nails using our hammer shaped fork of Screwdriver(tm) what could possibly go wrong? Oh no you won't, at least with my trademarked name. (consults with lawyers inserted here) Um, yeah I guess you're right we're gonna rename our hammer shaped screwdriver the Hammer(tm). And years later the worlds carpenters happily use Screwdriver(tm) and Hammer(tm) and sometimes both at the same jobsite without knowing the somewhat contentious history of those different tools.

The two user communities have little if any overlap. This near total lack of overlap lets the two communities live together in peace and plugins generally interoperate etc etc. More like relations between the Word and Excel communities than like Android vs iPhone communities. Aside from that exciting little trademark spat a long time ago relations have always appeared pretty calm and cool.

I admin'd a large nagios system a bit more than a decade ago that basically pinged the heck out of a large number of customers using configs generated by polling our own network devices automatically (read only access, auto generated configs, etc). It depended on the system being simple stable reliable and fast, it was always speed limited in deployment. I needed Oracle support like I needed a hole in head, so new complicated slow unstable features held negative appeal for that implementation. So I stuck with nagios, although I can totally understand a user with a completely different use case needing icinga. I wonder if that system is still running at ex-employer? Probably. It was pretty bulletproof software.

<comment><USER18> > Maybe rephrased some people have to ping 10K boxes per minute and other > people have to check 1000 services or files or aspects on 10 boxes and its > not REALLY possible for the same codebase to serve both groups equally well > in actual real world practice.

Really? Why? The first thing seems quite easy all around. Configuration-wise one would expect it to be simple. Computation-wise, pinging 10K boxes per minute means sending <200 packets per second (and receiving at most the same number). Maybe 3X that or so to get multiple samples. That's nothing for a modern machine.

The second one obviously requires some more complexity but I don't know why the extensible configuration and plugin system it'd require would have to interfere with simply pinging a bunch of machines. Computation-wise, again sending <200 requests per second should be trivial unless they're spectacularly heavy-weight.

The Nagios plugin protocol does seem to be somewhat heavy-weight, though. Looks like it still fork()+exec()s on every probe? [https://nagios- plugins.org/doc/guidelines.html](https://nagios- plugins.org/doc/guidelines.html) That seems like a much greater problem in terms of computation than the actual probes themselves, particularly if probes are written in a scripting language with non-trivial startup overhead. Doesn't look like Icinga is any different? What significant architectural differences exist between the two?

<comment><USER19> Nagios has an embedded Perl interpreter[0] so it's possible to avoid fork()/exec() if performance is critical. There are some caveats about how to use and code for it though [1].

[0]: [http://nagios.sourceforge.net/docs/nagioscore/3/en/embeddedp...](http://nagios.sourceforge.net/docs/nagioscore/3/en/embeddedperl.html)

[1]: [http://nagios.sourceforge.net/docs/nagioscore/3/en/epnplugin...](http://nagios.sourceforge.net/docs/nagioscore/3/en/epnplugins.html)

<comment><USER20> The downsides and caveats are very similar to writing mod_perl based web apps last I saw those docs. The downsides shouldn't be a problem for most Nagios plugins though since they shouldn't require state hopefully.

</comment></comment></comment></comment><comment><USER19> Article should perhaps have "(2012)" in the title?

</comment><comment><USER21> Slightly reminding the Bukkit saga ([http://www.slideshare.net/RyanMichela/kicking-the-bukkit- ana...](http://www.slideshare.net/RyanMichela/kicking-the-bukkit-anatomy-of- an-open-source-meltdown)).

</comment><comment><USER22> I have been using Nagios for very, very long time. Since just after first english docs. I have never heard of (or don't remember) Icinga.

</comment><comment><USER23> A few years ago, I was comparing Nagios to Icinga (I think it was just forked), but ultimately settled on Shinken, which is not a fork but is still Nagios compatible (both plugins and configuration).

It's been working like a champ. I will be reinstalling that server soon - <USER2> anyone have any insight on Shinken vs. Nagios or Icinga?

<comment><USER7> I am curious why _configuration_ compatibility is a selling point, for you in particular. Is there some popular inventory management tool out there that has been cranking out Nagios configuration files?

<comment><USER24> I've been using NConf ([http://www.nconf.org/](http://www.nconf.org/)) to manage a Nagios installation.

We migrated over to Icinga 1.x without much trouble. Our existing config still worked, NConf still worked, plugins still worked.

<comment><USER7> I've been unimpressed with NConf. It's useful for what it is; I even use phpMyAdmin occasionally.

Shinken sounds interesting, but I'd never heard of it. What I'm trying to understand is why anyone would have so much invested in their Nagios configuration syntax. If you have more than a few dozen hosts, you are probably already using a higher level configuration abstraction. NConf, for example.

But once you stop counting servers by the dozens, you are hopefully using an even higher level configuration abstraction for data center management. In which case you either already committed to a Big Vendor years ago, or you'd have no incentive to switch away from a legacy Nagios deployment.

Anyone who needs to replace a Nagios deployment _and prioritizes configuration file level compatibility_ in their new monitoring platform sounds crazy to me.

(edit: plugin compatibility is all that anyone should care about, and even that's just based on good decisions about uniform output)

<comment><USER23> I am the guy who mentioned shinken[0].

I totally agree, and as I mentioned, configuration compatibility was NOT a selling point at all - I just mentioned it as a property of shinken that makes it (supposedly) a drop-in nagios replacement without even the need to reconfigure.

I see that as a selling point for testing (not relevant to me because I didn't have a previous nagios installation) - to test shinken for real, you just install it (a couple of apt-gets) and run it - you don't need to configure it.

Once you've actually decided to commit to a new system, configuration compatibility with your old system is much less important, of course (provided it's not a tangled mess of 1000 hand edited files)

[0] [http://en.wikipedia.org/wiki/Shinken_%28software%29](http://en.wikipedia.org/wiki/Shinken_%28software%29)

<comment><USER7> I'm pretty sure everyone cares about plugin compatibility, and a few people are impressed by the finesse involved in bringing configuration compatibility.

Your point about the ease of compatibility _testing_ is quite salient.

</comment></comment></comment></comment></comment></comment><comment><USER25> I've been wondering: When you either have nagios or icinga, do you need any other monitoring solution? I remember the FIFA live stream guys from a previous article built their custom monitoring solution (named Sauron). Should they have simply used one of these instead of reinventing the wheel?

</comment><comment><USER26> I love the Nagios vs Icinga bug comparison chart here:

[https://wiki.icinga.org/display/Dev/Bug+and+Feature+Comparis...](https://wiki.icinga.org/display/Dev/Bug+and+Feature+Comparison)

<comment><USER27> From the article:

Ethan's comment about the wiki page above is quite critical: "This comparison on the wiki is both inaccurate and skewed, as it contains incorrect bug data and mixes new features that have not yet been implemented. This has apparently been done with the intention of trying to make Nagios look bad in comparison to Icinga."

<comment><USER28> It's working as intended then.

</comment></comment></comment><comment><USER29> This is very old, what's the current relevance?

<comment><USER30> Possibly... Node.js/IO.js? Or Arduino.cc/Arduino.org

<comment><USER31> I vote Arduino.cc/Arduino.org

BUT

ffmpeg vs libav was rediculus and Ubuntu used EDIT avcon and put a weird warning on ffmpeg on it being deprecated and please install EDIT avcon just got under my skin!!! [1]

[1] [http://stackoverflow.com/questions/9477115/what-are-the- diff...](http://stackoverflow.com/questions/9477115/what-are-the-differences- and-similarities-between-ffmpeg-libav-and-avconv/9477756#9477756)

<comment><USER31> This program is not developed anymore and is only provided for compatibility. Use avconv instead (see Changelog for the list of incompatible changes).

<comment><USER32> seriously, still makes me mad when I think back on first encountering this. especially since ffmpeg is superior in every way IMO.

</comment></comment></comment></comment></comment><comment><USER33> I was not expecting "one of the most heated forks in free software" to involve two pieces of software I had never before heard of; nor am I entirely sure, after reading the article, what these packages actually _do_. Despite the mystery, it's more interesting than reading yet another account of the emacs vs xemacs split, or gcc vs egcs, which I suppose are drifting on back into ancient history at this point.

<comment><USER34> I expect anyone working on web services what Nagios is (at least heard about it). If you've never worked on web services you're excused :p

Nagios is a monitoring server. It's the thing that sends emails and other notifications when various checks it runs periodically fail. Stuff like: process dead, CPU 100%, disk IO through the roof, database not responding, etc.

<comment><USER33> It's true, I have no experience with web services. Thanks for the explanation!

</comment></comment></comment><comment><USER35> "one of the most heated"

So it's not the coolest. Gotcha!</comment>


Continuous Deployment with Heroku-Bartender - <AUTHOR> http://code.dblock.org/ShowPost.aspx?id=186

<comment><USER2> You can read about outbrain's experience implementing Continuous Deployment on my blog [http://prettyprint.me/2011/01/24/continuous-deployment-at- ou...](http://prettyprint.me/2011/01/24/continuous-deployment-at-outbrain/) and view my presentation as a google-doc <http://goo.gl/LbT1u></comment>


Inequality is real, personal, expensive, and it was created - <AUTHOR> http://inequality.is/ <comment><USER2> Let me be the first to link to Paul Graham here:

[http://paulgraham.com/gap.html](http://paulgraham.com/gap.html)

[http://www.paulgraham.com/inequality.html](http://www.paulgraham.com/inequality.html)

<comment><USER3> These neo-Calvinist arguments are absurd (and cribbed from the 1880s), and the sprinkling of the efficient market hypothesis on top doesn't make them any better. No one individual is billions, millions, or probably even thousands of times more productive than any other able-bodied individual. When you see these massive differences in wealth appear, they must either come from theft or luck, both of which are unfair because they reduce the rewards to labor of the vast majority of humanity and instead funnel unearned power to those least equipped to use it for our mutual benefit.

<comment><USER4> > No one individual is billions, millions, or probably even thousands of times > more productive than any other able-bodied individual.

Productivity is not the only determinant of wages. Not only that, but it is quite hard to definitively say how productive a person is. And this doesn't even matter because in general, people get paid however much their employer thinks their labor is worth and that's very subjective. And I would say that many people have in fact created billions in wealth for the world.

> When you see these massive differences in wealth appear, they must either > come from theft or luck, both of which are unfair

Luck itself isn't unfair, although you might say that the distribution of luck is 'unfairly' stacked towards the wealthy.

> because they reduce the rewards to labor of the vast majority of humanity > and

I (by luck) invent some fantastic widget that improves the lives of people all over the world and I become a billionaire. By becoming a billionaire, did I really make everyone else poorer? I would say no, because I _created_ wealth. Wealth doesn't have to be taken from other people to be had. I won't disagree that theft (which generally involves government/corruption) is 'unfair', although you'll have to clearly define that word since it can mean anything.

> instead funnel unearned power to those least equipped to use it for our > mutual benefit.

And who is best equipped to use it? What is 'our mutual benefit'? Who determines what is earned and unearned power (wealth?)?

</comment></comment></comment><comment><USER5> "Electric lighting is no great boon to anyone who has money enough to buy a sufficient number of candles and to pay servants to attend to them. It is the cheap cloth, the cheap cotton and rayon fabric, boots, motorcars, and so on that are the typical achievements of capitalist production, and not as a rule improvements that would mean much to the rich man. Queen Elizabeth owned silk stockings. The capitalist achievement does not typically consist in providing more silk stockings for queens but in bringing them within the reach of factory girls in return for steadily decreasing amounts of effort."

Joseph Schumpeter, from "Capitalism, Socialism and Democracy" (1942)

</comment><comment><USER6> "inequality.is is best viewed with browsers that support the newest elements of HTML5 and related technologies. Would you mind upgrading your browser?"

You want me to enable Javashit in my browser in order to view your site.

That's fine, if you really think you need it, but you need to be honest with me, and you are not being honest.

Quite frankly, I don't enable java on most websites and I don't think I want to see what you have to say enough to enable it.

</comment><comment><USER7> I'd love to see the stats after this page stays on HN for a bit. (ie., how many people make it the entire way through; how many people click "take action")

<comment><USER8> Not so many will make it all the way through, with the white text so hard to see.

</comment></comment><comment><USER9> I'm tired of this lie.

</comment><comment><USER10> I care about the magnitude of my net worth, not the ratio of Mr Bill's net worth to mine.

</comment><comment><USER11> Huh? Why shouldn't the top 10% be more than 5 times as productive as the average?

</comment><comment><USER12> Apparently entry-level software engineer salary is "making too much money".

</comment><comment><USER13> $106,187 is the you're-rich-enough cutoff (at least for an Other Race-male)

</comment><comment><USER14> Totally uninformative because it concerns itself with the structure and history of income equality, rather than the root causes. It's great at showing what happened, but has no clue about why.

To name one example, they address the question of education by showing correlations between college degrees and income. What this is missing of course is any change _within_ college degrees themselves. What are students studying? What is the quality of their work? How well does it match up with what employers need?

I don't have the numbers in front of me, but I believe if you drill down, you find that some college degrees (like electrical engineering) have kept up very well with productivity and wage growth. Others, like anthropology, have not.

I will tell you that I live in one of the most educated regions in the nation (DC area), and it is extremely difficult for technology businesses to hire people with the right skills. If you are a good programmer or sysadmin, you can make a lot of money here tomorrow. But a bachelors in political science is not, by itself, going to get you much.

<comment><USER15> If the numbers on this site are correct ($90-$100k average is what we all should be making) then some degree wages have _kept up_ with productivity but none have really grown faster than it. That's still a problem, isn't it?

<comment><USER3> Our wages have kept up, but we're in a _very_ privileged position. We happen to have the right skills at the right time. We're not more industrious or more virtuous than the typical struggling middle-class wage earner. We're just luckier, and we shouldn't forget that.

Let's also not forget that there are benefits to living in a just and equitable society that aren't reflected in paychecks and equity grants, and that the marginal utility of each additional dollar is less than that of the previous dollar.</comment></comment></comment>


Can browsers spy via input fields? - <AUTHOR>

If you're using a site like DuckDuckGo in an attempt to shield yourself, could a browser like Chrome somehow just track keystrokes in an input field to decipher your activity? <comment><USER2> It's possible. I'm wary of anything from Google.</comment>


Five Tips for Floating Point Programming - <AUTHOR> http://www.codeproject.com/KB/recipes/float_point.aspx <comment><USER2> > This begs the question of how close is close enough.

<http://begthequestion.info/></comment>