Dream to Reality: How I Quit My Day Job - <AUTHOR> http://thinksimplenow.com/happiness/dream-to-reality-how-i-quit-my-day-job/ <comment><USER2> Too much junk about 'pursuing your passion', and "Rich Dad" Robert K is always a warning sign, too.

<comment><USER3> "Rich Dad" is a good book and does illustrate why you should 'pursue your passion'.

<comment><USER2> <http://en.wikipedia.org/wiki/Rich_dad#Criticism>

It's an entertaining read, but nothing more.

<comment><USER4> I haven't read it, but a friend said that it's an inspirational book. Some books give you motivation, some others give you the know-how.

<comment><USER2> There are plenty of motivational books that will get you fired up to go charging off in the right direction, though.

</comment></comment></comment></comment></comment><comment><USER5> Having complete freedom to spend one's own time would be great, but I still felt somehow sad about the article.

One has a normal job where one can contribute to something useful (like Amazon, they run an online shop, which is useful for society), and then one day the person trades it for "pursuing your passion", in other words she will now spend her day for wellness, blogging or other hobbies. But I don't want to say anything bad about her, but generally, what do you guys think about such an attitude? What's so honorable about that?

</comment><comment><USER6> I do read this blog occasionally, and I sometimes find the candy-coated, primo positive tone of the blog offputting. I don't like this post. It's trying to give a step-by-step approach to something that is individually hard. But maybe this entrepreneur has found a niche - providing a 'inspiration of the day'-type post. The large number of comments that each blog post gets really emphasizes the fact that its found an audience that is looking for content of this sort ('10 ways to X', 'How to X'). I'm starting to see other blogs copy its format too - down to the pretty Flickr picture that leads every post.

Inspiration is good but inspiration is external-based. Inspirational posts like this can fluff you up and then you go outside and get deflated. Irritation is sometimes a better motivator because its more immediate and personal.

</comment><comment><USER7> Please don't turn HN into DLM...

<comment><USER4> What is DLM?

<comment><USER7> Dumb Little Man (.com), a very popular self-improvement blog.</comment></comment></comment>


San Francisco news.yc Meetup - Friday, July 27th - <AUTHOR> http://up.facebook.com/event.php?eid=2449811475 We have somewhat limited space so RSVP soon. Looking forward to meeting some fellow news.yc-ers <comment><USER2> Nice thought, Jamie. It should be fun. How about preparing a little program? Maybe set an hour for 3-minute fast demos for those who like to show their work and get feedback?

<comment><AUTHOR> I was thinking something a little more informal, just a mixer? Maybe we could do this early on though.

</comment></comment><comment><USER3> Awesome. I'll look forward to a Boston one. I was even thinking of suggesting it. Miracle of Science bar, anyone?

<comment><USER4> Sounds good to me. If you do it between now and August 1st you can probably get some people from this summer's YC batch to show up. Most of us will probably be too busy or not in Boston during most of August. The last week or two of August would probably work too.

<comment><USER5> The last Boston meet up was a big success. There was a postmortem discussing the event but I can't seem to find it at the moment. The original thread is here: <http://news.ycombinator.com/item?id=17969>

I wanted to organize one more event before the end of summer so, if no one else wants to take the ball on this one, I'd be more than happy to get something organized in the next few days.

<comment><USER3> Please do make a plan for it! The last meet-up's time/place looked great. Maybe post a thread about it, to see who is interested.

</comment></comment></comment></comment><comment><USER6> Awesome! Good time and date, but where?

<comment><AUTHOR> North Beach area - Final location TBA later

<comment><USER7> Make sure it has Wi-fi :)

</comment></comment></comment><comment><USER8> This is the same night as the TechCrunch party ... might be a small amount of overlap

</comment><comment><USER9> Outstanding. I'm in.

</comment><comment><USER10> I am in too.

</comment><comment><USER11> I'm in.</comment>


The Rise of AdBlock Reveals a Serious Problem in the Advertising Ecosystem - <AUTHOR> http://www.mondaynote.com/2014/12/08/the-rise-of-adblock-reveals-a-serious-problem-in-the-advertising-ecosystem/?utm_source=feedburner&utm_medium=feed&utm_campaign=Feed%3A+monday-note+(Monday+Note) <comment><USER2> The problem is web ads are fundamentally flawed.

They require the user (you and me) to be ignorant to the fact that ads are no different then getting a catalog, and 4 letters requesting you order other semi-related catalogs in the mail. Nothing is forcing you to actually order those catalogs, only your good will, or in the case of web-browsers standards compliance.

I run Noscript + adblock edge + 230KB hosts file to block _most_ ad networks. I'm sick of people who think that the 1/4 of a cent you get from me waiting 3+ minutes for your 125kB of JQuery + 1MB of Ad flash + 50kB analytic JS is worth reading a blog post.

<comment><USER3> After using Netflix, TV/cable in unbearable to me. After using an iPod, radio is just obnoxious and exhausting. "Deals deals DEALSS!!!" Hey, after driving a car, feeding a horse probably seems downright wasteful.

It will be very hard to convince people to give up Adblock when the alternative is so offensive to their sense of comfort and wellbeing. If a business is going to tank because of Adblock, then good riddance.

</comment></comment><comment><USER4> I remain unconvinced by the entire premise.

Advertisers tell us that only ads can provide quality content on the internet, because people need to be paid if they are to make quality content.

But there was lots of quality content on the internet before ads became a thing, because people who make good content tend to want to share it. Most of it is still up and available, and ad free.

So google is saying they want to sell my eyeballs, for profit. Ad block plus responds by offering to protect my eyeballs from google, for profit. Now google responds with the contributor program, offering me a way to protect my eyeballs while giving the profit to google rather then ad block plus.

How about everyone just leaves my eyeballs alone? If the cost of that is websites like cracked closing down, see if I give a damn.</comment>


Actual business plans that resulted in companies getting financing - <AUTHOR> http://www.referenceforbusiness.com/business-plans/

<comment><USER2> Excellent source for anyone who is planning to be his/her own boss. Not only is it great for business structuring, but you will also learn:

How businesses came to develop The do and don't Business terms and jargon How to make a presentable business plan Etc..

Most importantly those sources will teach you to think like a businessman/woman, to raise questions which you haven't thought before, and most importantly save you lots of wasted time and money.

</comment><comment><USER3> The real-life examples are very helpful. Excellent resource for new business owners!

</comment><comment><USER4> great source of actual business plans in their entirety and the site also links to authoritative business encyclopedias.

</comment><comment><USER5> this is a fantastic resource - been doing some research to build my own business plan

</comment><comment><USER6> This stuff is the real deal

</comment><comment><USER7> Solid Resource, Thank you.

</comment><comment><USER8> Great resource!!</comment>


Ask HN: Statistics for Programmers - <AUTHOR>

I'm trying to learn elementary statistics, but I cannot find a good book (or website) to start with. I tried 'Introductory Statistics with R' but it assumes you already understand basic statistics. Everything that I lookup on Amazon is a textbook and cost an arm and a leg, and I'd rather not shell out for something that I'm not sure about. So tell me, how did you learn statistics and what would you suggest to someone whose been programming for 10+ years but doesn't know what to do with a standard deviation. <comment><USER2> I tried asking this question on Stack Overflow a couple weeks ago. I got some good answers, though I don't feel like I got one really definitive answer. Anyhow, I'd recommend reading through that thread to see if anything leaps out at you.

[http://stackoverflow.com/questions/2039904/what- statistics-s...](http://stackoverflow.com/questions/2039904/what-statistics- should-a-programmer-or-computer-scientist-know)

</comment><comment><USER3> [http://www.amazon.com/Reduction-Error-Analysis-Physical- Scie...](http://www.amazon.com/Reduction-Error-Analysis-Physical- Sciences/dp/0072472278)

it's been around for years (i used to own a copy of the original - i see it's been updated) and i doubt the fortran / c++ code will be much use, but it's a simple, clear, introduction to basic statistics (which is why such a slim book costs so much...)</comment>


Why SOPA-Supporting News Networks Don't Mention SOPA At All - <AUTHOR> http://falkvinge.net/2012/01/11/why-sopa-supporting-news-networks-dont-mention-sopa-at-all/

<comment><USER2> I love the Ubuntu font.</comment>


Ask HN: Want help selecting a good course - <AUTHOR>

I am a marketing guy planning a career switch. I want to learn how to build web apps using python and django. Not sure what online courses are available which teach Python and Django. Also, what should I look for in the following while selecting a course - curriculum, instructors, mentor support? Your guidance will be very helpful. Thanks! <comment><USER2> I think the best way to learn a programming language is to learn it yourself. Imho, these kind of things don't work well with courses; they often restrict the way you think.

For Python, you can start from Learn Python the Hard Way (free) [http://learnpythonthehardway.org/book/](http://learnpythonthehardway.org/book/)

After you finish this, start working on a small project and learn other things on the way.

For mentor support; I think Stackoverflow is the perfect source to ask questions and get feedback (but remember to search before asking a question).

<comment><AUTHOR> Thanks for the suggestions. My biggest problem is motivation and support. Maybe I should have been more clear with my request - I think a 1:1 mentor support is exactly the kind of accountability I need.

<comment><USER3> Check out RealPython.com. We offer custom mentoring/tutoring as well as a full course taking you from the basics of the syntax up to advanced web development with Django and Flask.</comment></comment></comment>


Why do women have periods when most animals don't? - <AUTHOR> http://www.bbc.com/earth/story/20150420-why-do-women-have-periods

<comment><USER2> There is a highly complex biochemical relationship between the embryo and the mother.

The mother actively tries to kill anything that might be in her uterus, she even periodically cleans her uterus radically by ejecting a layer of it.

The embryo needs to produce hormones that manipulate the mother to stop that, and deliver them into the mother.

If the embryo fails, it dies.

Source: [http://aeon.co/magazine/science/pregnancy-is-a- battleground-...](http://aeon.co/magazine/science/pregnancy-is-a-battleground- between-mother-father-and-baby/)

We do something similar in software development. If our program experiences a segfault, we usually let it die, instead of figuring out at runtime what went wrong and trying to do what we still can do. Then we change something and try again.

Making it hard for the embryo in the beginning and starting over if it didn't make it, is the biological equivalent to that strategy.

It might result in a heuristic whether it's worth investing more resources in it. Saving resources gives an evolutionary advantage.

On the other hand, it makes evolutionary progress harder since more conformity of the embryo is a condition to survive.

</comment><comment><USER3> tl;dr:

What we know for sure: foetuses produce hormones to keep the endometrial tissue from thinning. Once a zygote has implanted, the mother's hormones are thus no longer in control of whether her uterus will support its growth or not. Menstruation, when it happens, forcefully cleans out implanted zygotes, returning the uterine hormonal balance to normal.

What we guess that that implies: menstruation is a side-effect of enabling spontaneous abortion (miscarriage) of a still-live foetus, thus allowing females of those species to not have to go through the "avoid males you're not interested in during estrus" dance that most animals do. This confers social advantages.

In humans specifically, estrus is hidden completely from both male and female awareness. This confers further social advantages, but only could have evolved to fixation if the sexual-selection advantage of applying a "proximity during estrus" filter was completely outmoded/obviated by miscarriage.

<comment><USER4> The problem with that theory is I don't know of any women who are actually able to miscarry at will.

A garbled version of that theory got some politicians in hot water with the whole "during rape, their body can shut it down" comment.

<comment><USER3> It's not in the control of the conscious mind. It _is_ controlled by the body (or, you might say, by an evolutionary adaptation instantiated in the linkages of hormonal pathways in the brain.)

Note that miscarriage and spontaneous abortion are separate things. Miscarriage happens because the foetus dies in the womb, or the womb is ruptured, and the mother's body detects this. Any other cause is spontaneous abortion—effectively "something the mother['s body] did."

In humans, at least the experience of the emotions of extreme stress, and extreme fear, can cause spontaneous abortion. In a number of other animals (with a large subset of those being the ones that menstruate), there is the Bruce effect[1]: when the detection by the vomeronasal organ of an unfamiliar male's pheromonal signature precedes/causes spontaneous abortion.

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

<comment><USER5> That is a poor explanation given that extreme stress is known to have all sorts of physiological effects and is noted to negatively effect reproductive success in numerous species. But not all those species menstruate as noted by the article.

<comment><USER3> The thing muddying the water with stress, is that most things that _trigger_ stress are also bad for the body, and thus for foetal development. Making rats run until they collapse from exhaustion might cause miscarriage, but it's unclear whether that is due to stress-hormone-induced spontaneous abortion, or due to the mother's body using up some micronutrient necessary for the foetus, thus causing a developmental defect which either kills the foetus or stalls its metabolism enough to be detected.

I'm unaware of whether there has been the study of the effects of _purely psychological_ (or synthetic, using injected epinephrine) stress on spontaneous abortion rates.

It's much clearer with fear, though; things that cause a fear response don't tend to harm you (in fact, in an adaptive environment, to the degree that a fear response is created, you tend to avoid harm you would otherwise succumb to) but do trigger spontaneous abortion anyway. This would be much simpler to prove/disprove a purely-hormonal effect.

</comment></comment></comment></comment></comment><comment><USER4> To answer in short: No one knows.

All sorts of theories in the article, none with any real evidence, except "this makes sense to me".

</comment><comment><USER6> "most animals don't"? What do they mean? Dogs definitely do have a kind of "bleeding" as (hopefully) any dog owner knows.

[https://answers.yahoo.com/question/index?qid=20060612224917A...](https://answers.yahoo.com/question/index?qid=20060612224917AADVpCu)

It's however not "the same" as the one in primates:

[http://en.wikipedia.org/wiki/Menstruation_%28mammal%29](http://en.wikipedia.org/wiki/Menstruation_%28mammal%29)

"Some species, such as domestic dogs, experience small amounts of vaginal bleeding while in heat; this discharge has a different physiologic cause than menstruation."

And if we talk about "periods" (like in the article title) and not just "bleeding," the fertility "periods" are everywhere.

[http://en.wikipedia.org/wiki/Spawn_%28biology%29](http://en.wikipedia.org/wiki/Spawn_%28biology%29)

Even corals have spawn cycles.

Most animals do have fertility "periods" they just don't bleed. But again, we are primates, and a lot of primates do have the same menstruation that the humans have. So humans certainly aren't special in that aspect.

<comment><USER7> So you agree that most animals don't menstruate... what's wrong with the article's title?

EDIT: Oh, I think I get it now. "Period" in this context does not refer to the general fertility cycle. It is specifically a euphemism for menstruation. That is why you'll hear people saying things like "I'm on my period", "my period started late/early", etc. These phrases would not make sense if it referred to the fertility cycle in general, since from puberty to menopause, most healthy women are in some phase of a fertility cycle.

<comment><USER6> Yes, and even if the topic is just bleeding, humans aren't special, so it still shouldn't be "why do women bleed" but "why just primates, bats and one kind of shrew bleed during estrous cycle." Humans simply aren't special in that regard. And the whole "mystery" doesn't appear so dramatic anymore. It becomes obvious that that "optimization" developed more than once.

</comment></comment></comment><comment><USER8> Please fix the apostrophe in "animal's" It is annoying and leads non-native speakers on the board astray. Thank you.

To non-native speakers: apostrophes are for possession, not plural.

<comment><USER9> > To non-native speakers: apostrophes are for possession, not plural.

You could easily repeat that for plenty of native speakers. It's one of the most common mistakes in written English.

<comment><USER10> Isn't it sad? It's such a frustrating mistake.

There's a bar that we drive past frequently that does it with everything.

They're "Now accepting application's" and their "Burger's are $2"

Sad.

<comment><USER11> Since I moved to Missouri, I've been upset by a similar grammatical error: quotation marks used for emphasis. You would expect, say, all-capitals or an underline or italics, but you instead see 'Come taste the "best" burger in Missouri,' which is awful.

In New York, where I grew up, that use of quotation marks is called "scare quotes": quotation marks in all cases signal that you're detaching a text fragment from its context; with scare quotes you detach a phrase which reads just fine in that context to either bring focus to the phrase (like when you're defining it) or to indicate that the phrase itself is somehow problematic (like when you want to criticize the phrase, e.g. 'these "businessmen" are stealing our money,' where you're implying that they are either not truly men or not truly doing _business_ per se.)

When you say that you have 'the "best" burger', to me it sounds like you're implicitly adding at the end, 'well, at least, it's the best at being an awful burger.'

<comment><USER12> This is a common practice in signs. It's wrong in literary English, but is it wrong in signs?

My pet theory is that quotes for emphasis were popularized in 20th century movie posters, where it was common to surround the movie title in quotations (this is still the accepted citation style in, say MLA style). This is probably wrong, of course.

Italics or bold for emphasis can be hard to hand-write, and the quotation marks for emphasis probably look more legible on chalk signs.

</comment></comment></comment></comment></comment><comment><USER13> Am I the only one bugged by the apostrophe in "animal's"?

<comment><USER14> I'm more curious as to whether the original article was published with an apostrophe, or the HN poster actually typed the title out from memory rather than cut/paste.

</comment></comment><comment><USER15> Weird thing for hacker news

<comment><USER16> Downvoted but you have a point. Why is there _no_ moderation with regards to topical content on HN? Why should HN be a place for pop-sci articles and repostings from the likes of the Economist, LA Times, BBC, etc. r/startups has more content pertaining to - you know - actually starting a technology business than HN does. HN lately reads like newsclippings sent to me by my grandma.

<comment><USER9> A glance at the homepage makes me wonder if your grandma is a former co-worker of Grace Hopper or something like that.

<comment><USER17> You should understand that "my mom" and "my grandmother" are commonly used to denote technical illiteracy/incompetence and inability to keep up with the latest technological advances. This usage remans an unchallenged bastion of both sexism AND ageism -- a double whammy!

Proper usage:

* This app is so easy, my mom could use it!

* This article is easy to follow and avoids too much jargon -- my grandma would even understand most of it!

... you get the picture.

<comment><USER18> You should understand that jacquesm made a pretty sweet joke.

<comment><USER17> Jacquesm indeed made a sweet joke. No, he wasn't the one who used the "my grandma" line. It was the person he was replying to, who wrote:

> HN lately reads like newsclippings sent to me by my grandma

which continues to propagate the insidious, ageist and sexist assertion that older women don't get high technology.

</comment></comment></comment></comment></comment></comment><comment><USER19> A little OT, but I am always tempted to think whether the lunar calendar has something to do with menstruation or not.

</comment><comment><USER20> > It seems the list of animals that menstruate is quite short: humans, apes, > monkeys, bats and elephant shrews. What do these seemingly disparate animals > have in common?

My unfixed female dogs have periods. So either the article is poorly written, or they are ignoring animals that don't fit the theory.

<comment><USER21> Dogs don't have periods; they have estrous, commonly called "heat".

[https://en.wikipedia.org/wiki/Estrous_cycle](https://en.wikipedia.org/wiki/Estrous_cycle) \- note specifically #Differences_from_the_menstrual_cycle

<comment><USER20> Dogs bleed. It might not be a 'period', but the article is talking about why some animals bleed and most don't.

<comment><USER21> Well, if you're going to attempt to be pedantic about it, the word "bleeding" isn't exactly correct to begin with. The discharge is endometrial tissue, not blood.

<comment><USER20> Before calling names, let's look at the article in detail.

"Of course, I wasn't the only one: most women menstruate. But most other female animals don't bleed outwardly like us. Even among those that give birth to live young as we do, only a handful of species menstruate."

So the term menstruate is used to mean to "bleed outwardly like us".

"If the woman doesn't get pregnant, progesterone levels begin to fall. The thick endometrial tissue with its blood vessels then begins to slough off, and passes out through the vagina. This bleeding is menstruation."

So they are expanding on the term menstruate. Now it's both "bleed outwardly like us" and "The thick endometrial tissue with its blood vessels then begins to slough off, and passes out through the vagina"

"On average, women lose 30 to 90 ml of fluid over 3-7 days of menstruation. We know, because scientists have given women pre-weighed pads and tampons, and weighed them again after use."

Clarifying the term menstruate and showing how to measure it. I'm going to paraphrase the definition of the term. So at this point, when they talk about menstruation, they are talking about a blood like fluid, that can be measured, and that happens when the the tissue and blood vessels pass out of the vagina.

The article has a break to talk about the history, theories, and research that has happened over the years. After that they get to the main point. "To figure out the truth, we need to compare animals that do and don't menstruate."

"Great apes do it too. Menstrual bleeding is easily detectable in chimpanzees and gibbons. However, gorillas and orang-utans bleed less copiously, so menstruation is only visible on closer inspection. Other primates, such as tarsiers, may also menstruate, but there is little hard evidence."

They re-iterate key parts of the term. When this article talks about menstruation, they are specifically talking about detectable bleeding.

Now we can get to the heart of my objection. They spent most of the article defining their usage of the term menstruation, and how it relates to the research.

The article claims "It seems the list of animals that menstruate is quite short: humans, apes, monkeys, bats and elephant shrews. What do these seemingly disparate animals have in common?", remember the definition they use for menstruate, blood and tissue passing though the vagina.

If you've ever owned an unfix female dog during heat, you'll be quite aware that they do, in fact bleed out their vagina for a period of time during their reproductive cycle. This fits with their definition.

The only mention of dogs is: "In dogs and cats, the foetuses dig in a little more. But in humans and other primates, a foetus will dig through all the womb lining to directly bathe in its mother's blood." This does not specify why dogs do not fit into their term. In fact this seems to support that dogs have a very similar cycle to humans.

So my question remains, Why are dogs excluded? They never acknowledge the contradiction. So either the article incorrectly sets up the terms, or they don't want to talk about dogs because it doesn't fit the narrative.

<comment><USER21> Look, your quibble isn't with me; it's with the biologists and the terms they've chosen to use for the different (and they _are_ different) physiological phenomena. I'm using _their_ terms here, in the ways they've defined them.

If you're utterly convinced that estrous and menstruation are the same, on the basis of some blood-like discharge occurring in both, then you might want to explore a career in academia. I'm sure there's a journal somewhere that would take your well-reasoned and compelling thesis on the subject. (You might need to pay them for the privilege, but as assiduously as you're defending your position here, that doesn't seem too unreasonable.)

<comment><USER20> > If you're utterly convinced that estrous and menstruation are the same

You've completely missed my point.</comment></comment></comment></comment></comment></comment></comment>


DoD Hiring announcement for computer scientists - <AUTHOR> https://www.usajobs.gov/GetJob/ViewDetails/553940800 <comment><USER2> Government jobs suck. Period.

Here is the actual text for the requirements to be a GS-13 employee (and they are strict on these)

"GS-13 Federal Employee Base Salary GS-13 government employees will receive a base salary of between $76,687.00 and $99,691.00, depending on their General Schedule Step. The educational and experience requirements for most GS-13 government jobs are: Master's or Ph. D."

For most companies in that area, you can paid that salary or more right out of a Bachelor's. I've worked a government job before amd always felt undervalued, even compared to contractors who were ok n the same team as me (they were making nearly 40% more than I made with similar experience).

And I'm almost positive if you take this position, you'll be working on propping up old, irrelevant tech from who knows how many years ago.

<comment><USER3> Just like any large organization, some jobs will suck. Some will not.

For this job announcement the pay is $99,172 to $166,500 per year, depending on experience.

I was a GS-14 with just a B.S.

The best thing about government service is finding a position where you think the mission is important.

Also, the benefits are really good.

Yes, there are poeple that are retired in place in some organizations, but often good people do well. They tend to get recognition, but there are bad bosses there, too. You need to work with HR to move ASAP to a good team if you find yourself in a toxic place.

<comment><USER4> Did you stay with the govt? I've wondered if it'd be hard to get a job in silicon valley if your first job was with the govt or another "less trendy" employer.

</comment></comment></comment><comment><USER5> Ah this is so refreshing! I'm glad to see something completely different in the CS job ads sector. And Pentagon, Arlington, VA as a location? Oooff, every single one who grew up with X-Files would be excited about that!

Salary is average at best, completely agree, but the other major bummer I can call out is this:

> This position is subject to pre-employment and random drug testing

This is such an outdated, self-limiting, and practically barbaric requirement modern days! Can you imagine the amount talent they are blindly passing on.?

I would even dare to bring up the Bill Gate's (yes that guy!) alleged talk in Saudi Arabia [1], which goes as something along these lines: "..if you're not fully utilizing half the talent in the country, you're not going to get close to the goal you have set for yourself..."

[1] Bill Gate's precedent was about the issue that is an order of magnitude more severe/significant than a drug testing: women's rights, but I find the analogy quite applicable and illustrative here

</comment><comment><USER6> All the hate for government work here is pretty out of place. Look, there's something like 5 cities benefitting from the tech work this site revolves around by the vast majority. There's an entire country of hundreds of cities and even more towns and localities not benefiting from SV venture capital. From what I read here, lots of our current greatest minds spend their time creating really creative marketing. If you want to shrug off governments place in employing society then get out there and make work that really will employ numbers similar to the government and with its pay and benefits. The FAANGs clearly can't.

<comment><USER7> > From what I read here, lots of our current greatest minds spend their time > creating really creative marketing.

Heh, yeah, how to store or transfer bits efficiently so that shop selling Chinese-made shit doesn't go down on Black Friday, or so people can get their crisp Marvel movie on their 4K TV. Or so some bikini-clad girl can optimally promote that "detox drink" to her "followers"...

</comment></comment><comment><USER8> Data scientist using advanced ML techniques to work in DC for $99-165K/yr? That seems like they might be looking a while and still settling for less than top talent.

<comment><USER9> There are Federal pensions involved. Try to get that at a Valley startup. Plus the opportunity to really change the world (for better or worse).

<comment><USER10> Pension for life + up to 26 vacation days a year

<comment><USER11> After 15 years you get 26 days.

</comment></comment></comment></comment><comment><USER12> Why is this on the front page? It's 1 position at the Pentagon. Did I miss something about the Pentagon being accepted into YC?

<comment><USER13> OP appears to be a govt employee. I bet this is a "hey i made a post, yall go upvote it" situation.

<comment><AUTHOR> OP here. I didn't write this. I just thought the HN crowd might like to have visibility on this world.

<comment><USER14> What do you consider interesting about it?

</comment></comment></comment></comment><comment><USER15> Go ahead, if you want to risk the board (Congress) and the CEO (President) shutting down the "corporation" when they can't agree on a budget.

Or have your work twisted to support a lie.

</comment><comment><USER16> For $99,172 to $166,500 per year, you'll get to help the American government commit atrocities in other countries.

What a sell lol

</comment><comment><USER17> Rock-star programmer sought for grade GS-13 to GS-15 role! Promotion Potential is 15!

</comment><comment><USER18> IT is now "IT (Cyber)".</comment>


NFL's First Live-Streamed Game on Yahoo Attracted 15M Viewers - <AUTHOR> http://techcrunch.com/2015/10/26/the-nfls-first-live-streamed-game-on-yahoo-attracted-over-15-million-viewers/ <comment><USER2> As a reminder to non-football fans, this was for a game between two teams few people were very interested in, broadcast at a time when half of America was still asleep.

I caught the game while still laying in bed, mostly out of curiosity for what the stream was like. And it did not disappoint. Already it was a better watching experience than any other medium available. That doesn't even say anything about new possibilities going forward, like offering different commentary tracks, overlays, camera angles, etc.

Yahoo, not only was it good, I would be willing to pay decent money for more services like this. Make it happen!

<comment><USER3> > That doesn't even say anything about new possibilities going forward, like > offering different commentary tracks

This is one place where the MLB has a bit of an advantage over the NFL since most MLB games are broadcast for both the home and away audiences so you have 2 commentary tracks available on MLB.tv (in addition to the various radio audio).

<comment><USER4> The NFL has announcer coverage for both markets - you notice this on NFL rewind sometimes. When you add in radio coverage, each game typically has 4-6 commentary tracks.

<comment><USER5> Radio coverage can be a lot better than what ends up on TV. We used to mute the TV and have a radio going which worked great, though the commercials could end up somewhat surreal.

</comment></comment></comment></comment><comment><USER6> Key points:

1\. The 15M number is massively inflated for unique viewers, as the game was auto-playing on the Yahoo! and tumblr homepages. More detailed breakdown of the numbers here: [http://deadspin.com/not-nearly-as-many-people-watched- bills-...](http://deadspin.com/not-nearly-as-many-people-watched-bills- jaguars-as-yaho-1738659352)

2\. The NFL will not be rolling out a la carte streaming packages any time soon, as they have a preference to selling exclusive rights at a premium, e.g. \- DirecTV has exclusive rights to broadcast all games, and stream all games digitally through 2022 ([http://espn.go.com/nfl/story/_/id/11624442/nfl- extends-sunda...](http://espn.go.com/nfl/story/_/id/11624442/nfl-extends- sunday-ticket-deal-directv)) \- Verizon has exclusive rights to broadcast all games on smartphones through 2022 ([https://www.verizonwireless.com/news/article/2015/09/live- st...](https://www.verizonwireless.com/news/article/2015/09/live-streaming-of- local-and-primetime-nfl-games-and-nfl-network-now-included-with-all-price- plans.html))

3\. For comparison, both MLB and NBA offer streaming plans for all of their games, for reasonable prices ($130 for MLB, $200 for NBA). These plans are only limited in not showing local market games. They also have great app support (iOS, Android, Roku, "Smart" TVs, etc)

<comment><USER7> the NBA league pass service is also limited because you can't watch nationally televised games ( any games on ESPN, NBAtv, TNT, NBC, ABC, etc etc )

<comment><USER8> For MLB, IIRC the only exception is for Sunday night games on ESPN. All other national games are non-exclusive: while ESPN/TBS/Fox are broadcasting it nationally, the local stations are broadcasting as well, which can be streamed through the mlb.tv package. Sunday nights are the only games that are national-only, and so can't be streamed through mlb.tv.

Once the playoffs start though, all games are national only, and there are different rules, making the playoff games more difficult to stream.

</comment></comment></comment><comment><USER9> The video was auto-played on Yahoo's homepage as well as the homepage of NFL.com, which is inflating these numbers quite a bit.

That said, the stream was impressively high quality. Much better than DirecTV's NFL Sunday Ticket streaming package that I pay $50/month for. I didn't have any buffering issues and the quality only dropped below HD a handful of times throughout the broadcast.

I'd love to see a better online streaming option for live sports, but it's unlikely to happen anytime soon. The networks and ESPN simply need the NFL too much to give up control or be outbid anytime in the near future.

<comment><USER10> It also autoplayed on the dashboard of the Tumblr mobile app.

</comment></comment><comment><USER11> The stream quality was beyond my expectations, it was crisp and clear. This is a service I would happily pay for since DirectTV's Sunday Ticket streams are often lag/time out for me on other devices.

</comment><comment><USER12> The NFL has considerable experience streaming and they are quite good at it: The NFL has been streaming games for a while now, via Game Pass (available on AppleTV, e.g.).

What's different here is that someone else licensed the rights to stream the game, i.e., Yahoo.

I cancelled cable years ago and would dearly love for the NFL to sell me what I want, but they won't, at least not yet: Game Pass allows the customer to stream the regular Sunday afternoon games, but not the evening games (Thursday, Sunday, and Monday) and not playoffs. I cancelled Game Pass when I realized that (yup, failed to read the fine print).

(What about those Sunday games? Well, I have an OTA antenna, and get a full Sunday afternoon's worth of NFL for free, even if I don't get to choose the games - which I could do with Game Pass. I also get many of the playoff games, at least for now, since they tend to be carried by the major networks, and not the cable-only sports channels. (I'm in Canada.))

<comment><USER13> All I want is to be able to pick my team, pay like $15/mo and be able to watch my team play. I don't care about any other team at all, and my team isn't local by any means so I can't use an antenna. AFAIK, I don't have a legal option to watch my team play unless I grab an overpriced cable/satellite plan that I don't want. GamePass isn't for the US (if I remember correctly), and even if it were, the pricing is terrible and has the issues you mentioned.

My only option is shady SD streams. It's better than nothing, but I'm willing to throw money at the problem if they'll let me.

<comment><USER14> >My only option is shady SD streams. It's better than nothing, but I'm willing to throw money at the problem if they'll let me.

>I don't have a legal option to watch my team play _unless I grab an overpriced cable /satellite plan that I don't want_.

Sounds like you do have another option! (DirecTV pays the NFL 1.5 billion dollars a year to be able to offer you that overpriced plan.)

<comment><USER13> A realistic option, then? I've no use for anything else that DirecTV has to offer. I've got Netflix and Hulu, so I'm set on TV shows and movies. Unless you think paying that much money just to watch football is a realistic option?

<comment><AUTHOR> You'd be surprised at how the cost works out. Bundles exist so expensive content can be subsidized by cheaper content. ESPN costs the provider much more than most channels. In other words, getting ESPN a la carte is going to run you $20-30/month. The other channels in the bundle make it so non sports fans can subsidize your subscription.

</comment></comment></comment></comment></comment><comment><USER15> Serious questions:

If sports viewing goes online (like MotoGP) wouldn't the organization lose a considerable amount of money and effectively ruin their relationships with tv networks that pay serious money for rights coverage? I'm of the mindset MotoGP is doing ok because they never had insane tv rights viewership or distribution. Another example, the NHL has their online viewing program but it blocks out regional games or games with specific rights attributions.

And then, theoretically, let's say these organizations do survive by moving all (or the vast majority of) their viewers onto their own live platform - would that be considered a monopoly of some sorts by forcing out all the other players?

That being said, I'm totally ok with all of this because the cable box as we know it is dying fast and sports are the only thing keeping it alive.

<comment><USER16> For that, look at the WWE Network.

They maintain production and distribution rights on their most valuable content, pay-per-view events that go for something like $60-80USD on cable. They compete with themselves by offering a yearly lock-in for what's basically the price of one of these events. It's not complete, since they don't have full distribution rights on their weekly show, which appears on their streaming service after a one-to-two week delay.

If the service takes off, that'll be a big nail in the coffin of TV sports. That said, it's had middling success to date (I haven't paid close attention, as I'm not a wrestling fan in the least).

Other sports contract out their production and distribution rights to TV networks, so trying to go to a streaming model will be very difficult by comparison. They'll be building out what is basically a full on-air platform at the same time they're building out a streaming service that can support the added demand of local viewers while simultaneously breaking off relations with their current broadcasters. And to make things even more complicated, some of those broadcasters own the teams they carry (in hockey alone, the NY Rangers and Cablevision TV are both owned by Jim Dolan, while the Toronto Maple Leafs are owned by a conglomeration of Bell and Rogers telecoms). With these complications, the rights may be the bigger block than the technology.

</comment></comment><comment><USER17> Apparently that 15M number may be a bit inaccurate: [http://deadspin.com/not- nearly-as-many-people-watched-bills-...](http://deadspin.com/not-nearly-as- many-people-watched-bills-jaguars-as-yaho-1738659352)

</comment><comment><USER18> I watched my first football game since getting rid of cable thanks to this. The stream was much higher quality than I expected, froze two or three times for less than 5 seconds, pretty awesome for a first effort if you ask me. I have a theory that the TV networks know sports is the only thing holding a lot of people back from cutting the cable, and their next TV deal will be HUGE, but it won't stop people from cutting the cable, but will instead lead to fewer people being interested in professional sports, and that both the TV networks and the sports leagues will lose in the long run with this monster deal.

<comment><USER19> You can buy an antenna from Amazon for 20$ and watch all the local channels and the games. Just fyi...

I have never had cable but watch almost every Sunday night game on NBC.

</comment></comment><comment><AUTHOR> An interesting stat from another article[0]:

"CNN's recent debates peaked with almost 1 million simultaneous live streams. Last season's Super Bowl peaked with 1.3 million."

Apparently this game had 2.3 million simultaneous streams.

[0] [http://money.cnn.com/2015/10/26/media/nfl-yahoo-live- stream-...](http://money.cnn.com/2015/10/26/media/nfl-yahoo-live-stream- results/)

</comment><comment><USER20> I've been a subscriber to Dorna's MotoGP VideoPass[1] for a couple of years and it is incredible (yes it's got some issues but overall it's fantastic). Stream practice session, qualifying, races, press conferences live or access later at your conveniencef (from a No-Spoiler page none the less!). All completely _advertisement free_. You can also access a full archive of historical races year round! It's amazing and a model that should be emulated by other sports organizations.

I don't currently follow NFL but mostly because I don't have cable or any way to selectively choose when I watch a game. I would happily pay for NFL access the same way I do for MotoGP.

[1] [https://secure.motogp.com/en/subscribe](https://secure.motogp.com/en/subscribe)

</comment><comment><USER21> Yahoo had a nice stream, but actually it was not even the best stream I found yesterday. Interestingly Yahoo had apparently some problem with their CDN, at least when I switched on a US VPN, the stream improved considerably.

</comment><comment><USER22> Yeah they kinda skewed their numbers by showing two not so good teams at an hour where most west coast Americans were asleep.

NBC Sports used to (still do?) have an Internet feed for their Sunday Night Football games and TNT did it for some NBA games.

I feel it was way better for me since I could put it in the background or on my other computer and kind of watch it in the background. When you're kinda just watching sports by yourself its kinda boring waiting for the action so being able to control your experience from your computer (volume up, volume down, switch to other game) rather than having to fetch the remote is nice.

</comment><comment><USER23> The NFL's streaming offerings are why I pirate game streams and don't have a lick of remorse about it. The only option I have to legally stream games is to not only pay for the gamepass package, but also to have satellite TV installed.

I'd be happy to pay a few hundred bucks a year for HD streaming of games, but it's just not an option. The best I can get is streams of games after they've finished, which is pretty much worthless to me.

</comment><comment><USER24> People keep saying the quality was great. It was pretty good - for a live stream. It still sucked compared to cable or satellite HDTV. NFL games are really the only reason I get DirectTV, and a blurry, pixelated stream isn't going to change that, even if it is slightly less compressed than other streams. (It didn't buffer much at all, I'll give it that.)

Or was my internet provider (Comcast) messing with it?

</comment><comment><USER25> I strongly believe that pay-per-view sports streams are a thing that should exist. I have subscribed to FuboTV, which is a bundle of soccer-oriented channels, for the (shockingly low) price of $7/mo. I'd pay a good $10 per game I am interested in, I think.

<comment><USER26> I agree :) I'd go as far as saying every single tv show should be available for pay per view streaming live. That's the world I wanna believe in.

Btw, UFC does it already (and is all on their site), the problem is the old school sports.

</comment></comment><comment><USER27> I saw at least a handful of commercials for this game on TV and not one of them mentioned it was possible to live-stream. With such a marketing fumble (pun intended), the numbers seem rather irrelevant.

<comment><AUTHOR> Were you "in-market" for this game? It may have been intentional to not cannibalize TV viewership.

<comment><USER27> No, not at all.

</comment></comment></comment><comment><USER28> That might be the death-knell for cable TV.

<comment><USER2> To be fair, football is already the most cable-cutter friendly sport there is. I can watch every game except for MNF using just my antenna.

<comment><USER29> More cable-cutter friendly than Major League Baseball? On MLB.tv you can pick the home/away feed for almost any game at almost any time, plus view replays and highlights of any game going back to basically the first televised baseball game. And you can watch it on basically any device.

The only downside is the blackouts for home markets.

<comment><USER16> Every major North American league has a similar service (except the NFL), but the local blackouts make it a non-starter for the vast majority of the viewing audience.

Football is more cable-cutter friendly because local games are almost always put OTA, so it's a matter of setting up an antenna if you don't want to pony up for cable.

There are services that try to do an end-run around local blackouts, but that doesn't really apply here (since the goal is to have a 100% legal, approved means of watching the games live online).</comment></comment></comment></comment>


One Secret to Many Passwords - <AUTHOR> http://www.slideshare.net/SayItVisually/one-secret-to-many-passwords

<comment><USER2> While prefixing your "favorite" passwords helps, it's still exploitable. If someone can see your password in the "clear" they'll be able to tell if you're using a strategy like this. I have too many accounts---and what happens when you have collisions? Did I use "f" for facebook and flickr or "fa" and "fl" for them? I'd rather be consistent with a tool than with a meatspace algorithm: <http://keepass.info/> is probably more reliable and secure in the long run. I've long since abandoned trying to keep authentication data in my personal meatspace and I don't recommend meatspace methods anymore /except/ for securing your authentication database.</comment>


Guy Paints Himself Painting Himself over and Over, Dominates Reddit's Front Page - <AUTHOR> https://digg.com/2020/guy-paints-himself-painting-himself-over-and-over <comment><USER2> a spiritual experience no doubt no doubt</comment>


Startup Quote: Joe Kraus, partner, Google Ventures - <AUTHOR> http://startupquote.com/post/2909106430

<comment><AUTHOR> Don't forget to balance optimism with fact and belief with reality.

\- Joe Kraus (@jkraus)

<http://startupquote.com/post/2909106430></comment>


Guidelines for accessible gaming - <AUTHOR> http://www.bbc.co.uk/news/technology-19467181

<comment><USER2> As a colorblind gamer, I'm always pleased to see an option for colorblind correction in games. It's typically only a problem in competitive games where the team colors might be difficult to tell apart. But I do remember having to enlist help to defeat the last boss of Metroid Prime, who changes colors to indicate what weapon you need to use to damage it.

While this isn't quite on topic, as my suggestion is hardware related, it'd be nice to see some sort of gamepad + mouse hybrid controller. I have a problem with my left hand where I cannot keep buttons held down for long periods of time, such as the traditional WASD movement scheme. I have a feeling that this problem is partially due to excessive game playing, combined with poor guitar technique. This problem of mine pretty much rules out playing online FPS games as aiming with a gamepad puts a person at a severe disadvantage.

Perhaps something designed to be held in the left hand that has an analog stick for movement and a few buttons (almost like half of a controller). That way a person would have the benefits of analog movement and also the precision and speed of a mouse for aiming. Also, it's probably not good in general to keep constant pressure on fingers, so perhaps something like this could reduce the occurrence of RSI. It also might be useful to some people with physical disabilities.

While I have seen two products somewhat similar to this (Logitech and Belkin), they are designed more as a flat keyboard with a small analog joystick -- neither of which I have heard are very good.</comment>


Leak shows LG's radical new interface for its webOS Smart TVs - <AUTHOR> http://www.engadget.com/2014/01/02/lg-webos-smart-tv-leak/

<comment><AUTHOR> This is actually pretty sweet looking interface. After HP gave up on their PC business they open-sourced some of the webOS code, and LG bought the rights to it. Palm's webOS, once a dead-cert for smartphone OS supremacy, is tipped to be resurrected by LG at CES 2014. Can't wait.</comment>


'Hangover' Molecule in Brain Found   - <AUTHOR> http://news.yahoo.com/s/livescience/20100510/sc_livescience/hangovermoleculeinbrainfound

<comment><USER2> I hate it when they don't cite the actual papers! [http://www.plosone.org/article/info%3Adoi%2F10.1371%2Fjourna...](http://www.plosone.org/article/info%3Adoi%2F10.1371%2Fjournal.pone.0010422)</comment>


Performance Speed Limits - <AUTHOR> https://travisdowns.github.io/blog/2019/06/11/speed-limits.html <comment><USER2> I generally dislike the "bottleneck" metaphor when applied to performance, because the metaphor only makes sense when the individual "parts" run in parallel. In most scenarios, each bit of code adds its own latency that is independent of the latency of other components. So every component is a "bottleneck", so-to-speak, it's just that some are bigger bottlenecks than others.

However this case is an unusual exception, because all of these hardware components described in this article _do_ run in parallel. So the slowest element does truly gate the throughput of all stages of the pipeline. You could add more load to the non-bottlenecked resources and the overall latency of the pipeline wouldn't change at all, roughly speaking.

<comment><USER3> Yes, exactly. I didn't describe this but it's something I was thinking about: if you don't hit the bottleneck, you don't pay any price: if the limit of uops allocated is 4 but you are only doing 3.5, you don't pay any price: the limit might as well be infinite.

It's for this reason I struggled to include, for example, branch prediction failures. Let's say they take a 15 cycle bubble in the front-end. You can create a "speed limit" there and say "you can't do more than 1/15 mispredicts per cycle", which is indeed true. However, it then doesn't work like the other limits: if you measure 1 mispredict every 30 cycles, you aren't at the limit, but it still has a huge impact on performance, because the bubbles are likely slowing down everything else you do in those 30 cycles too. Perhaps 15 cycles of the 30 are solely dedicated to handling the mispredicts.

Therefore to include mispredicts here, it won't be a simple "speed limit" thing: you will need to understand the exact effect of the mispredict on the front end, and how it interacts with the other speed limits. Sometimes a mispredict costs 15 cycles (the figure you hear), but sometimes they don't slow down your code at all, and you can certainly design tests where they cost 1000s of cycles each.

</comment></comment><comment><USER4> You mention there's always only one scalar multiplication unit. Can you elaborate why that is the case? What's keeping AMD and Intel from adding more?

<comment><USER3> Multipliers that can do a 64x64->128 bit multiplication every cycle at 5 GHz are large in area and power hungry. They are most expensive traditional hardcoded integer unit (divide is even more expensive, but it is usually implemented as many operations that repeatedly use a divider unit and other units to do a few digits at a time: on essentially all current x86 chips large divides take 40-80 cycles!).

The limitation isn't that bad in practice: it's hard to get more than 1 multiplication per cycle in non-trivial code since you have only 3 more ops to do all the other work - where are the multiplication inputs coming from, for example?

So more than one multiplier probably has a small payoff. Apple chips, for example, are wider, and IIRC they have two multipliers as they can take more advantage.

It's worth noting that 64-bit multipliers are expensive enough that even in AVX-512 Intel still offers zero 64-bit input multiplies in their SIMD unit (they offer a 53 bit one that reuses the FMA hardware though).

</comment></comment><comment><USER5> Thanks for the article!

I started AsmGrid project that provides X86 architecture overview and instruction timings for people like me that often work with assembly. It's basically a simple web application that displays data provided by AsmDB and timings obtained through cult tool ([https://github.com/asmjit/cult](https://github.com/asmjit/cult)).

AsmGrid is available here, click on X86 Perf tab to see instruction timings:

      - https://asmjit.com/asmgrid

A bit older version that has more microarchitectures (but less instructions) is here:

      - https://kobalicek.com/asmgrid

I'm also looking for some help with instruction timings. I would be thankful to anyone who has X86 CPU having a different microarchitecture than those available at [https://asmjit.com/asmgrid/](https://asmjit.com/asmgrid/) and is willing to compile & run cult tool, and provide me its output.

Instructions for cloning and compiling cult are here:

      - https://github.com/asmjit/cult

<comment><USER3> Thanks for the link, I didn't know about CULT (but I use asmjit, it's a great project).

I do feel like there is a lot of redundancy in this area. You are probably aware of Agner's instruction tables, and he makes the source available for his latency testing tools. You are probably aware of uops.info which has latency/throughput numbers for instructions online and in XML format. Now there is CULT (or actually CULT came before uops.info but I wasn't aware of it), and ASMDB.

There is the AIDA64 instruction latency thing giving the tables at:

[http://instlatx64.atw.hu/](http://instlatx64.atw.hu/)

There is also uarch-bench which I wrote, which has slightly different goals than just getting the latency/throughput of instructions, but still does a lot of that and has a lot of overlap in other areas.

I have seen more as well, but I can't remember all of them.

Unless you love is really writing these kind of tools (mine is not), it would be nice if there was one winner here: one canonical source for instruction timings, available in whatever format, one test application for new platforms, etc. Then efforts like "please run this on your new hardware" won't be split among various people: right now sometimes Agner gets new hardware first, sometimes the uops.info guys, sometimes the Instlat guy, etc.

Let a thousand flowers bloom and all that, but personally I think this space is due for some collaboration...

<comment><USER5> Yeah there is definitely some redundancy here, but there were reasons I wrote these tools. There are multiple sources that provide instruction timings. Agner's instruction tables are amazing, but they cover only a single microarchitecture at a time, so it's really difficult to compare multiple microarchitectures. Intel's online intrinsics guide only shows instruction latencies of few latest microarchitectures, etc... Basically before AsmGrid it was time consuming for me to verify whether the instructions I have selected would perform well on a majority of machines that I target.

I wrote AsmGrid initially for myself to explore AsmDB data and to spot possible errors. Then I wrote CULT just for fun as I wanted to see whether it's possible to write such tool based on AsmJit. CULT basically iterates over AsmJit instruction database, checks whether instructions (with various signatures) can be executed, and then creates JIT code for executing them either in parallel or sequencially. It works really well and the testing can be easily done in user space.

In other words, I wanted a table of instructions and their timings where I can compare several microarchitectures at the same time during development and AsmGrid provides that. The only downside is that I cannot test all microarchitectures myself and when I make changes to support more instructions a re-run is necessary.

<comment><USER3> Right, so CULT is maybe not the redundant one. Maybe the uops.info guys should use CULT, I dunno. Also, if it's for fun, anything goes, of course. I just feel sometimes like there is a lot of division of effort: it would be nice to have a standard single data source for instruction performance attributes.

I am surprised I never ran across this before, because when I found uops.info, I was like "finally, this stuff is online and linkable" \- but maybe that already happened earlier with ASMGrid?

Anyways, I can run this on SKL, SKX, CNL for you.

<comment><USER5> Thanks! Let's continue on that issue page.

</comment></comment></comment></comment></comment><comment><USER3> Author here, happy for any feedback and to answer any questions!

Some things are definitely missing - I realize I don't cover load or store buffers in the OoO part, for example. I am working on fixing that.

<comment><USER2> > As an example, a load instruction takes a cache miss which means it cannot > retire until the miss is complete. On an Haswell machine with a ROB size of > 192, at most 191 additional instructions can execute while waiting for the > load: at that point the ROB window is exhausted and the core stalls. This > puts an upper bound on the maximum IPC of the region of 192 / 300 = 0.64.

Where does 300 come from? Is this the number of cycles for the cache miss?

<comment><USER6> Yes, I think 300 is an estimate of the number of cycles for a load from RAM: 192 ops / 300 cycles == .64 ops / cycle.

I'm not sure whether the calculation is true, though. Why can't the post-load µops be executed and retired, and the ROB refilled, and then more µops executed? I'd think the calculation would only apply if everything was somehow speculative and thus nothing could be retired, but I don't see this being a common occurrence.

<comment><USER3> Because that's not how the ROB or any of the other "in order" structures like the load buffers, etc, work. Fundamentally, retirement happens in order.

uops only leave the ROB when they retire, and they retire in the same order as they appear in the dynamic instruction steam. The ROB is needed to preserve the ability to roll back if any instruction faults, to handle interrupts, to generate precise exceptions, etc: think about what would happen if you had retired a bunch of random instructions on either side of an un-retired instruction that ended up faulting?

Everything _is_ speculative. The CPU always operates as if any unretired instruction is speculative. In reality it almost is: probably at least a quarter of all instructions can fault in some way, and as soon as there is any such instruction in the unretired stream all younger instructions are "speculative". I'm putting it in quotes because "speculative" as we're discussing it just something we are making up: CPUs don't have a "I'm speculating" flag: everything is treated as speculative all the time (and if you consider interrupts, maybe even the cases where you have a stream of cannot-fault instructions would also be "speculative").

There is a structure that works as you describe: the scheduler/reservation station. That's the place where everything happens out of order and slow instructions can stall and be passed by younger ones who leave the scheduler and make room for others - but this sits within the in-order allocate + retire machinery.

<comment><USER6> Thanks. So because of in-order retirement, the ROB is indeed limited to holding only consecutive µops. And since nothing can be executed until it is put in the ROB, this means that there is a hard limit on the distance in µops between the last unretired µop and what can possibly be executed. Does this also mean that a load is only ever retired after it has been successfully fulfilled? I haven't understood the role of retirement for loads and stores.

<comment><USER3> > Thanks. So because of in-order retirement, the ROB is indeed limited to > holding only consecutive µops. And since nothing can be executed until it is > put in the ROB, this means that there is a hard limit on the distance in > µops between the last unretired µop and what can possibly be executed.

Yes. The ROB holds even things that will never be executed, such as nops and zeroing idioms.

Note that the ROB is not really the bad guy here: if you invent some way to make the ROB retire out-of-order to break that restriction, you'll just immediately run into the PRF limit, since almost all pending instructions need a destination register. Since these values are all live (from CPU's point of view) until all older instructions have retired, you'll get the same kind of limit from the PRF.

The PRF is a big structure using lots of area and power, so probably the ROB size is kind of determined from the PRF size: how big are going to make the PRF? X? OK, let's make the ROB size X * 1.5 since then the ROB will rarely limit performance. Note: we know the ROB increased dramatically in size from 224 to 354 in SNC, but we don't yet know how big the reg files are!

There are good papers out there about super-high ILP designs if you are interested about how this kind of stuff can be solved, but there are many problems.

> Does this also mean that a load is only ever retired after it has been > successfully fulfilled? I haven't understood the role of retirement for > loads and stores.

Yes. Loads and stores both go in the ROB, and also in the load/store buffers, which are in-order just like the ROB.

A load can't retire until it completes: only then are the physical resources, like the register it writes to and the load buffer entry, able to be freed.

Note that this is a huge difference between loads and prefetches: prefetches can retire immediately (well as soon as the load address has been calculated). They just kick off the load in the memory subsystem and then their work is done.

Stores are different: they can retire as soon as the store address and store data are known (i.e., as soon as their inputs are available). At this point they become so-called _senior_ stores: stores which have retired, and hence are non-speculative, but haven't become visible to the rest of the system yet. They must eventually become visible, which means that on an an interrupt this part of the store buffer is preserved or drained, never thrown away like the rest of the OoO buffers. When the time is right (write?) they commit to L1.</comment></comment></comment></comment></comment></comment>


Ask HN: What are the best way to learn advanced SQL? - <AUTHOR> As a web developer what are the best resources and exercises to learn advanced SQL? How do you choose which open source database best fits an application use-case? <comment><USER2> PostgreSQL is hands down the way to go when you need a relational DB (which is 99% of the time).

Some features to read up on:

      * COALESCE, CASE
      * Aggregate functions + GROUP BY + HAVING
      * Subqueries
      * The LEFT/RIGHT/INNER JOINs, and things you can achieve with JOIN conditions
      * Different index types and how to use them
      * Different constraint types and how they will save your ass
      * Using temporary tables
      * Views + Materialized Views
      * CTEs, including recursive
      * Full text search
      * Trigger functions
      * Window function
      * DISTINCT ON vs DISTINCT & GROUP BY (a PG extension - why it's useful)
      * Partial/functional indexes
      * Schemas - especially useful for multi-tenancy
      * COPY to load in datasets fast
      * Transaction isolation levels
      * Manual locking
      * EXPLAIN + EXPLAIN ANALYZE

The above is just scratching the surface, but it's what I've found most useful doing web dev. The PG manual covers all these things well, along with supplemental stuff that can be googled. If you read the PG manual cover to cover, your mind you be blown by what the DB can accomplish.

For learning about performance and what's going on under the hood, check out "PostgreSQL 9.0 High Performance".

Most of the really complex queries I've written consist of writing several CTEs/sub-queries/views/temp tables which create a number of intermediate tables containing transformed data, which in turn are available to the final top level query. There's a lot of overlap with functional programming here: build small queries, and use them as reusable building blocks.

If you find yourself needing to dynamically generate complicated queries, instead of trying to construct them w/ string concatenation in your app, try building temporary views, and then referencing those views in later queries, as opposed to doing it all in one go. I usually have one function/method per view in the app, and I can call the needed functions to create the foundation for a later query.

</comment><comment><USER3> Just use postgres.

Read this (covers performance and internals): [https://use-the-index- luke.com](https://use-the-index-luke.com)

And this (covers "advanced" SQL, more than the usual functions): [http://www.windowfunctions.com](http://www.windowfunctions.com)

<comment><USER4> Can't recommend use-the-index-luke.com more. Wonderful resource.

</comment></comment><comment><USER5> Like any language it takes a mixture of reading and practice. If you just read, it won't stick, because you have nothing to hang it onto. If you just practice, you'll adopt hacks that work but aren't the best way to do it. So it would be nice if you had a job that demands you regularly come up with new SQL. Try to prepare your data as much as possible in the database, instead of partly in the database and partly in your middle language (say, Python). So, for example, try to make web pages that use the Mustache template system (a very strict and minimal one) and use Python (or whatever) only to pull the data from the database and stuff it into the template. That will make you learn the esoteric features of your database.

I agree with others that you should try to use Postgres. It's easy to get going on Linux, but if for whatever reason you can't right now, SQLite is good, too. Really, Postgres or SQLite, there is no technical need for any other database.

Supposing that you can go with Postgres, then your reading assignment is easy: just read the Postgres documentation from start to finish. Of course you won't get it the first time, and it might be a multimonth affair, but it's about as good as any book I've found. For some reason, all books on SQL are really boring. My very first book was Databases Demystified, which was a fine book and helped me learn "normalization," which is a fancy word for Don't Repeat Yourself --- except it's talking about reducing redundancy in data instead of code.

</comment><comment><USER6> If you need a relational schema (and you usually do), then you should use Postgres. Don't make it complicated for no reason. It can also store documents as JSONB.

If you aren't certain that you need a graph DB, don't use one.

What do you mean by advanced SQL? The language itself is simple once you understand subqueries. The underlying math can be hard, but modern RDBMS abstract a lot of the performance considerations away by optimizing your queries for you.

<comment><AUTHOR> > What do you mean by advanced SQL? I mean, understanding how to write your > query using the right database features to get the best performance and > understand query plans so that you can optimize slow queries.

</comment></comment><comment><USER7> Sql is a bit more "binary" than that - if you can write one query, and read the manual "advanced" isn't really a thing.

However, it is all going to be for naught if you don't understand what is underneath the database - for that I highly recommend "database design for mear mortals" \- I think I have bought about 6-8 copies of the book and every single one has been "relocated" (stolen, or not returned or given away).

Understanding HOW an RDBMS works is critical to understanding how to make the best use of one, and then measure the trade offs between any given one.

Unless your starting out with a problem/domain that requires you to do things that might be feature bound - as an example if your working with geospatial data, then by all means that should be a driver in your selection. If your doing basics like sign up, auth, and cms work then pick one and give it a whirl (they are mostly interchangeable at that level).

EVERY database has idiosyncrasies. Learning those takes time, and experiences and sometimes running face first into them.

</comment><comment><USER8> Check out Joe Celko's book, SQL for Smarties; There are some mind-blowing SQL techniques in that book.

<comment><USER9> Upvote.

Joe Celko has a few books w.r.t to SQL and some of them are more than just SQL for beginners (covers tree/hierarchy data, thinking in sets, etc)

</comment></comment><comment><USER4> What I do is write the query that gets me the data to answer the question that I need no matter how crappy. And then using the engine and statistics and maybe diagramming out the relations between tables and the indexes try to refactor it to be better. In the end what matters is that the data returned is right. Optimizing after you have that makes most sense in my head and that's when you can go off and feel confident in doing so ( because your deliverable is done, the correct data returned ) and research more "advanced" sql to get your query better.</comment>


What's New in Python 3.0 - <AUTHOR> http://docs.python.org/dev/3.0/whatsnew/3.0.html

<comment><USER2> I love the changes to the language to remove the warts and to improve consistency across the language. Python thrives on consistency and always having exactly one obvious, readable way to do something. I welcome the simplified integer math, print function, unicode string unification, and other changes.

However, the biggest change, potentially, is function annotation. Function annotation brings the possibility of an extra level of documentation in code, of static-style type-checking which can easily be turned off in production, and of a standardized design by contract programming style.

Hopefully, we will have even bigger, easier to understand Python programs!

</comment><comment><USER3> I really wish they had added real lambdas.

Don't get me wrong, these changes seem good. But every time I hear about a new Python release I keep hoping that I'll see they've finally reversed their policy about lambdas and made a real one instead of the compromise they have right now.

<comment><USER4> You should be yearning for proper tail recursion instead.

<comment><USER3> I can live without this. I cannot live without real lambdas. My heart actually will stop, and I will die. It's a dangerous world I live in.

</comment></comment></comment><comment><USER5> WTF? Why doesn't the new repr(1L) return "1L"? I thought the whole point of the repr custom was to output something that would regenerate the same object.

Are they going to abandon the 'Format %d:%s" % (n, s)' or just add PEP 3101? The % syntax is down-and-dirty practical good. PEP 3101 is neat, but printf() syntax is tough to beat.

OK, the first screenful or so scared me. The rest looks like clear-cut improvements.

So far, I've loved Python's balance between simple purity and down-and-dirty pragmatism. I sure hope they don't shift too far toward purity.

<comment><USER6> _WTF? Why doesn't the new repr(1L) return "1L"? I thought the whole point of the repr custom was to output something that would regenerate the same object._

Because there's no such thing as 1L anymore. There is one unified (unbounded) integer, and I believe the C implementation will use int to represent small values and long when necessary (and list of long beyond that?).

 _Are they going to abandon the 'Format %d:%s" % (n, s)' or just add PEP 3101? The % syntax is down-and-dirty practical good. PEP 3101 is neat, but printf() syntax is tough to beat._

I'm a little worried about this as well. I just wrote a ctemplate module that leverages % syntax a lot, so it would be quite unfortunate to see it disappear.

In other words, you could write code like:

      char * months[%(len(pyvar_months))d];

My module uses string interpolation on this file, but it defines a special class with a __getitem__ method that instead of simply returning the associated string (as a dict would), it evaluates an arbitrary Python expression. And it works! It's pretty cool to be able to mix C and Python in this way to more easily write C code.

That may seem minor, but I've used the same framework to be able to say:

      %(array; char *; months; ['"%s"' % (mo,) for mo in pyvar_months])s

Assuming that pyvar_months is

      ["January", "February", "March", ..., "December"]

(in Python), the automatically-generated C result will be:

      /* header file */
      extern char * months[12];

      /* C file */
      char * months[12] = {
          "January",
          "February",
          "March",
          ...,
          "December"
      };

Okay, sorry to go so off topic, but I really wanted to show that it's possible to use the current string interpolation functionality to do really cool stuff, and it would be a shame to see that change.

<comment><USER5> Muchas gracias for the explanation of repr. I knew I shouldn't have lost faith in Guido.

The ctemplate sounds really frickin' interesting. Is this an easy way to get a major performance boost on CPU-intensive bits of Python? Actually, this is probably getting off-topic, but will you email me when ctemplate is ready for prime-time?

<comment><USER6> No, although it could potentially be modified to fulfill that purpose. Its purpose is best described as providing a macro system that allows some C code to be generated by more-succinct Python code.

By the way, you e-mail is not in your profile. You can send me an e-mail (in my profile), and I'd be happy to keep you posted.

</comment></comment></comment></comment><comment><USER7> Python 3.0 is going to be better, but not much better. I really like python because its very clean. Python 3.0 shouldn't become python++.

</comment><comment><USER8> I hate the new print(x) changes in Python. Dammit! I loved typing print x.

<comment><USER9> IPython. You can leave off the parentheses on all function calls where ambiguity does not result.

</comment></comment><comment><USER10> _print("fatal error", file=sys.stderr)_

So, Python has become even less succinct for the sake of "consistency".

I think there is only one flawless, absolutely consistent machine, and that's Turing machine. The urge for consistency and simplification (I mean, if you are consistent in your aspiration for consistency) inevitably leads to reinventing the Turing machine in its purity. It's OK, except for some reason nobody wants to program for it.

<comment><USER11> print >>sys.stderr, "fatal error"

Considering this is this old version of what you copied, I don't think anything has been lost...

<comment><USER10> I never liked that either, but the new version is physically longer and requires more typing. Moreover, I couldn't find any change in 3.0 that results in less typing. I might have missed something of course, but this announcement doesn't seem to be something to be excited about.

I was waiting, for example, lambdas to be allowed to have compound statements. Python, a nice language otherwise, could have been improved in many ways, none of which is found in 3.0.

Instead, the spirit of Python is coming closer and closer to Java: you are not supposed to do this, says Python to you, because it's a bad practice and can lead to errors.

I'm disappointed and I think I'd rather wait for another, more concise _nobraces_ programming language.

<comment><USER12> from pep 3099:

        At one point lambda was slated for removal in Python
        3000. Unfortunately no one was able to come up with a
        better way of providing anonymous functions. And so
        lambda is here to stay.

        But it is here to stay as-is. Adding support for
        statements is a non-starter. It would require allowing
        multi-line lambda expressions which would mean a
        multi-line expression could suddenly exist. That would
        allow for multi-line arguments to function calls, for
        instance. That is just plain ugly.

Thread: "genexp syntax / lambda", [http://mail.python.org/pipermail/python-3000/2006-April/0010...](http://mail.python.org/pipermail/python-3000/2006-April/001042.html)

<comment><USER10> I understand there are syntactic obstacles, in fact I've been following these discussions, but... I'm very sorry, who cares?

</comment></comment></comment></comment></comment><comment><USER13> is hex(-1) still '-0x1' ?

<comment><USER14>
        In [1]: hex(-True)
        Out[1]: '-0x1'

</comment></comment><comment><USER4> Instead of

print("string")

I would have liked to see

fn op1 op2

to be the standard function invocation - like in Haskell. (I know that would have wreaked havoc with the rest of Python's syntax.)

<comment><USER15> Instead of writing Python 3000, they shoulda written another Haskell!!

<comment><USER4> Haskell 2000!</comment></comment></comment>


Is the PC Dead? - <AUTHOR> http://blogs.forbes.com/rogerkay/2011/02/28/is-the-pc-dead/

<comment><USER2> _However, over time both will increase in performance past the point that most users need, and both will be able to serve in the vast majority of circumstances._

I'm not sure sure I agree with this bit; depending, of course, on how you define "most users." But as CPU power is steadily increasing, so to are the size and the complexity of the problems we need to solve. So we're solving part of this by the move back to centralization... I have a big dataset to crunch, I crunch it on a cluster using Hadoop or MPI or what-have-you...

(Thinking out loud here) I can't help but think that the problems in the "it makes sense to calculate locally, but not to push it to cluster" space are also growing larger and larger, and that the problems and the performance needed to solve them will continue to grow in lockstep fashion. So there is, in effect, no upper limit the bound of performance needed by PCs (or "endpoints" per the article) unless we go wholesale back to a model of doing anything substantial on a server/cluster. So, is that really where things are going? Or is there always going to be a middle ground for high-performance PCs that outperform tablets, smart-phones, etc.?</comment>


The Guide to the Freedom and Responsibility Culture at Netflix - <AUTHOR> http://www.slideshare.net/reed2001/culture-1798664 <comment><USER2> I found these ideas very refreshing, coming from a business of NetFlix' size and maturity. If these slides resonate with you, you may enjoy Maverick by Ricardo Semler, an auto-biographical account of how he transformed SemCo (a brazilian company) from a rigid, process oriented organization into a business that values freedom and good judgment. As we start to grow GitHub, these kinds of stories are truly invaluable. I've worked for the kind of high complexity, high process companies that this slide deck rails against, and I have no desire to ever be part of that world again.

<comment><USER3> I'll echo the recommendation for Maverick, I believe that it was (maybe still is) the top selling book in Brazil. [http://www.amazon.com/Maverick-Success- Behind-Unusual-Workpl...](http://www.amazon.com/Maverick-Success-Behind- Unusual-Workplace/dp/0446670553)

</comment></comment><comment><USER4> A fascinating read. Not having a vacation policy strikes me as an incredibly radical idea.

It sounds so civilized, yet my worry would be that people end up not taking enough time off due to a combination of peer pressure and indifference. In my experience I've found there are a set of people who always struggle to use up a given vacation allowance, and in a situation where there is no allowance I could see the natural behaviour of these people creating pressure on those who enjoy taking time off to take a lot less.

</comment><comment><USER5> Amazing read. Rang true some many times with me.

I knew this was something special when it started out with an example of Enron's corporate values. Too many companies have corporate values printed on little cards, back of pamphlets or even "chiseled on the marble on the main lobby."

I think about two thirds the slides stressed on hiring the best talent possible, having high performers and keeping high performers. I have to agree. One of the most important things you can do, especially at a smaller company, is hire well.

One thing that is lacking is a reference to motivation. Compensating people well is important, but you also need a sense of impact and growth. See Maslow's Hierarchy of Needs (a little out dated but a great place to start):

<http://en.wikipedia.org/wiki/Maslows_hierarchy_of_needs>

I'd say pay is at the lower levels. At the higher levels: -People need to feel appreciated (part of that is well compensated). -People need to feel like they are making a difference. (Your job adds value) -People need to like they're growing. It's not just about getting Sr. added to your job title but actually your learning something and self-actualizing.

<comment><AUTHOR> I understand what you say about motivation, but I don't think Netflix is about that. My belief is that they expect you to be intrinsically excited about working there - because you are a professional adult. You should already be learning on your own and already "self-actualized". Paying you well just validates what they believe you should be.

Not all companies are like that, and that's why working at Netflix takes a bit of a mindset re-org.

<comment><USER5> I think we are coming from the same place but I am not sure I agree with "you should already be learning on your own and already "self actualized."

I think the work place is one place of many where you can grow and prove yourself. It's a great place to learn new things, test your theories and be creative. A company should nurture that.

</comment></comment></comment><comment><USER6> If any Netflix employees are reading this, it would be great to hear your comments on how well those slides reflect the actual culture.

<comment><USER7> they're 100% accurate. This deck is very similar (if not identical, it's been a while) to the one you're expected to read at the "meet with Reed" meeting one month or so after you're hired. Netflix is, without a doubt, the single best company I have ever worked for (even better than my own company).

I put away a start-up idea to work there. It was worth it.

<comment><USER8> Care to share any stories?

<comment><USER7> Sure. Here's some banal stuff. If you have anything in particular you'd like to know, ask.

Good - A few days after I joined I decided I wanted a much bigger monitor and several gigs more ram. After hemming and hawing for a day trying to figure out how to justify it to my manager, I just asked. My manager said there was no reason to ask him, just file a ticket. No approval needed. This is true for anything I need (hardware, software, cell phone...).

Bad - Within my first week, I noticed three "good bye" emails, none of which were voluntary.

Great - I have free access to one of the largest sets of voluntary enjoyment decision data and lots of big machines. ML paradise.

Great - All of my coworkers are amazing. It's really satisfying to not be the smartest guy in the room.

<comment><USER6> How long does it usually take to determine whether a person is only an "adequate" performer and given a generous severance package?

<comment><USER7> No one I've worked with has ever been sent packing, but to the best of my understanding it's generally not a surprise and people are given chances.

</comment></comment></comment></comment></comment></comment><comment><USER9> Most large companies don't want what they call "brilliant jerks." The problem is, not all these people are really jerks. Some just don't like being told what to do. That subset tend to make particularly good startup founders.

<comment><USER7> At netflix, when they say they don't want "brilliant jerks", what they mean is they don't want "constant ass holes".

Context vs. Control.

<comment><USER10> "At Netflix, when they say they don't want "brilliant jerks", what they mean is they don't want "constant ass holes" ".

"constant ass holes" equates to "jerks". How does the "brilliant" part come in to play?

pg said "The problem is, not all these people are really jerks. Some just don't like being told what to do."

This interpretation makes sense. I've _seen_ this happen in large companies. "He is brilliant and very good at his job, BUT he doesn't take orders (blindly)".

<comment><USER7> No, I'm a jerk not a constant asshole. Most companies try real hard not to hire idiots. Netflix is such a company.

Orders are not given at netflix. I choose the project I want to work on. Hence my comment "Context vs. Control", it's taken right out of the presentation.

<comment><USER11> Interesting. In your observation how good has the Company been at not hiring these so-called "Brilliant Jerks"? I've found one of the common failures in engineering management is knowing when to get rid of smart but disruptive talent.

<comment><USER7> Not perfect. But they really mean it when they say "adequate performance gets a generous severance package".

<comment><USER12> Then it's not 'adequate', is it?

<comment><USER13> My impression from the slides is that they see it as a financial gain if it frees up the job for a higher performer.

No mention is made of why they feel the need to offer severance when they're shedding an underperformer, but maybe they want to make it a less negative event. Maybe the strategy is to try and avoid distracting or upsetting the high performers by having underachievers leave on good terms (this could explain the "goodbye" emails).

</comment></comment></comment></comment></comment></comment></comment></comment><comment><USER14> _Great workplace is not day-care, espresso, health benefits, sushi lunches, nice offices, or big compensation, and we only do those that are efficient at attracting stunning colleagues_

I find this to be revealing of the culture this document is trying to express : the focus on the people. I don't think you can find that in many workplaces.

</comment><comment><USER15> Makes me want to work there for a few years. Showing merely adequate engineers the door is high on my list of things to look for in my next position.

</comment><comment><USER16> Wow.

I don't know if I've ever been so impressed by a corporate document.

<comment> brown9-2 That's the brilliance of this document - it's an excellent and _free_ recruitment tool for the very high-performance/talent people Netflix is trying to attract.

</comment></comment><comment><USER11> Sounds like an awesome place to get fired from.

</comment><comment><USER17> Pretty good, and happy I read it because it reaffirms the no-vacation-policy policy, which some contacts have recently been trying to talk me out of.

</comment><comment><USER18> Inspiring, and also serves as a reference example of a presentation that explicitly says "These slides are meant for reading, rather than presenting". That's a very common document form, but seldom acknowledged.

</comment><comment><USER19> Wow! I love these guys.

Their Jobs page quotes Godfather: "I will make an offer he can't refuse"

<http://www.netflix.com/Jobs>

</comment><comment><USER20> Somebody already said this: wow.

Awesome.

One thing that stood out for me in that document was their analysis of how company growth forces the reduction of creativity in the workforce by the implementation of rigid processes.

Even more impressive is their solution to avoiding this problem: _Just keep hiring more talented people._

</comment><comment> brown9-2 I really love the distinction made in the opening slides between a company's stated values and their "real values", which are shown through actions.

Dear Netflix: can you please open software development offices in NJ or NY? Please?

</comment><comment><USER21> This is inspiring and awesome.

I think Yahoo found the bizarro world version of this.

</comment><comment><USER22> Is there a direct link to the pdf?

<comment><USER19> If you are asking to validate the source of this document, Netflix has this slide deck embedded on thier jobs page: <http://www.netflix.com/Jobs>

</comment></comment><comment><USER23> I'm not sure whether this is inspiring, or frightening.

To paraphrase: "I pledge my allegiance to the Borg and will always give of myself and care for it above all else including my own needs."

<comment><AUTHOR> Actually this is the opposite of what you're suggesting. Working for Netflix doesn't require that you sacrifice a work/life balance. Implicit is the agreement that you'll perform up to the standard that is expected of you, but from what I've seen, most people here can handle it admirably.

<comment><USER24> _Working for Netflix doesn't require that you sacrifice a work/life balance._

Well, yeah, it pretty much does, if the company actually follows the personnel-retention guidelines in that slide deck. Your work at such a company is graded on a curve, whether you like it or not, and if you don't outperform your peers, you end up looking "only adequate." Meanwhile, your peers are talented twenty-something kids who cheerfully work 60-hour weeks, and you're not going to be able to keep up for long since there's going to be (again, presumably, under the stated guidelines) fresh meat coming in all the time.

As my other comment to elq pointed out, this seems a bit OTT for a company whose mission is, at the end of the day, to mail out a bunch of DVDs without screwing up too much. It's more like selling sugar water than changing the world, and I'm not sure I see the point in killing yourself for it.

<comment><AUTHOR> I think the reason you're hired is because they think you can perform at the same level of said peers. And you accept the job because you think you can. And want to.

I'd say the average employee age skews towards 35+. No young whipper-snappers here! Except for a few :) Most everyone seems to have a family they need to take care of, which means leaving early some days.

Mailing out DVDs is big business! You have no idea how important Netflix is to people's happiness. I think that's closer to changing the world than most other companies. Just do a search of Netflix on twitter and you'll see what I mean.

<comment><USER24> _You have no idea how important Netflix is to people's happiness._

As a longtime customer, I do indeed. :-P Pretty damn reliable service, actually.

The last Netflix error I experienced was when you sent me a fourth disc for some reason. An advanced AI would have recognized that _He's Just Not That Into You_ doesn't go well with Park Chan-Wook's _Vengeance Trilogy_. /grumble</comment></comment></comment></comment></comment>