Ask HN: Why doesn't the industry have a standard "code interview" certification? - <AUTHOR> All of these companies are pulling random coding questions from basically the same pool of questions, and having people who aren't experts in evaluating coding ability evaluate people on the basis of whether they happen to know how to solve one or two problems off the top of their head.  We all know how inconsistent these interview questions are and how often competent coders can fail them.<p>What if there were a standardized 3 hour long 'algorithms and datastructures' certification that pulls from this same pool of questions, designed by panels of experts with FAANG-level experience, so when I go on the interview circuit, I don't have to go through the same process over and over again.  You should be able to just present this cert that says you've passed a standard code interview.  Does anyone enjoy the process enough on either side of the interviewing table enough that that wouldn't be good enough? <comment><USER2> I think that measuring software engineers' knowledge is still an unsolved problem. You can _know_ concepts and things without knowing how to apply them. On a standardised test this means you can remember the answers by heart and thus pass the test without necessarily being able to apply that knowledge to varying real-world situations.

> pulling random coding questions from basically the same pool of questions

At least in my experience, my interviews had very little questions with single, defined answers and more open-ended questions (how would you design this? let's spend one hour pair-programming and set up a basic Django project) as well as being evaluated by actual developers instead of no-skill monkeys. This in my opinion tests your ability to actually apply whatever knowledge you had to real-world problems, while not disqualifying you because you are bad at memorising things (I will not even attempt an algorithm-based interview because I have no knowledge on the subject and no desire to research them either since it doesn't come up frequently enough in my job to make it worthwhile to learn them).</comment>


The New Range Rover Sentinel: A Luxury Fortress on Wheels - <AUTHOR> http://newsroom.jaguarlandrover.com/en-in/land-rover/news/2015/09/lr_range_rover_sentinel_070915/ <comment><USER2> I read today that Queen Victoria had several assassination attempts that amounted to somebody running up and shooting or whacking with a cane. Queen Elizabeth had a few incidents as well. This car is cool, but the elites shouldn't feel reassured until Range Rover makes an armored suit.

<comment><AUTHOR> And tough enough to drive in East London!</comment></comment>


This is why cloud computing rocks1 - <AUTHOR> http://avherald.com/h/?article=457880ba

<comment><USER2> Looks like it's down now. Here's the msg:

Our Servers are currently offline due to the failure of the harddisk RAID controller, an IBM technician is on the way to Salzburg.

At this time we have no estimate when the server will come back online</comment>


Making Ocean Water Drinkable - <AUTHOR> http://www.popularmechanics.com/technology/infrastructure/a17040/how-it-works-desalinating-ocean-water/ <comment><USER2> It's disappointing that desalinization has taken precedent over recycling water. There have been many developments in this area –including the one Bill Gates has been supporting [1] – yet despite being the more cost effective option, people can't get over the idea of drinking water that was poop.

[1] [http://www.gatesnotes.com/Development/Omniprocessor-From- Poo...](http://www.gatesnotes.com/Development/Omniprocessor-From-Poop-to- Potable)

<comment><USER3> I'm a bit anxious about sewage to drinking water efforts.

While I'm fairly confident that we can eliminate most live pathogenic organisms from sewage with enough work, excreted toxins, hormones, and undigested pharmaceuticals are another matter. Diluting those through a watershed serves a real purpose that sewage treatment facilities are not up to replicating.

<comment><USER4> What about a grey water system? neither your toilet nor your lawn needs human consumption grade water.

<comment><USER5> Wouldn't it be an absolutely huge cost to lay down another set of pipes for non-human drinkable water? Especially in cities.

<comment><USER6> Non-potable is the industry term for "non-human drinkable".

And yes, the cost of that would be huge, not just in cities. In the UK the decision the victorians made to not have separate sewage and rain water drainage systems still has a knock-on today and costs a vast amount in water treatment, but the cost of separating rain runoff and sewage is still seen as prohibitive.

edit:

However, on a small local-scale grey water systems can do a lot of good, both for re-use but also rain water capture and re-use would help with flood prevention. If houses captured rainwater for use for lawn watering and other appropriate uses, this is something that could be done without great expense.

<comment><USER7> Be careful of the law of unintended consequences. Rainwater capture will be fine so long as only a minority do it (how small I don't know) or only a fraction is captured but if everyone does it then it will change the economics of water supply and give people incentives to use the captured water for other than lawn watering. For instance they might use it for flushing toilets or even bathing. the problem that then happens is that the local water table will fall because it is not getting the water that it used to because that water is now flushed into the sewage system.

I'm not arguing against the idea, especially as it is typically implemented in the UK where a house will generally only have about 500 litres of storage, but scaling it up and making it a requirement could cause some interesting problems.

<comment><USER8> Some US states have laws preventing rainwater capture. Water rights being a weird and complicated thing.

</comment></comment></comment></comment></comment></comment></comment><comment><USER9> Having lived in the Gulf Countries - I feel that they were ahead of the curve for some time when it came to water.

When I lived in Dubai water was really expensive compared to the UK.

You also never drank from the tap but bottled water.

Even the culture adopted to it where people would think you were super posh if you took showers longer than 10 minutes.

Also they has some interesting techniques for desalination. For example I used to live near an aluminium smelter.

Apparently the heat generated due to smelting was recycled to desalinate sea water to produce water and was sold to consumers.

</comment><comment><USER10> So this process re-introduces the brine back into the ocean, in turn making the ocean water more salty. What type of ecological ramifications does this have on the wildlife in that area?

<comment><USER11> The volume of water being drawn from and the volume of evaporation, precipitation and runoff affecting that body of water, dwarf this desalination plant by an exceedingly long way.

<comment><USER12> It's not the overall volume of slightly saltier water, it's the hot, concentrated brine that's damaging. Most systems are designed today such that the brine is _only_ ~50% more salty than incoming water and _only_ a few degrees warmer, but it's still a significant ecological issue.

</comment></comment></comment><comment><USER13> Why do they move large amount of salt water when they could move only the sweet water? When the plant is 100 meter down, the water pressure is already the required 10 atmospheres, and when it is offshore at an ocean current the saltifying effect is a not problem. The energy needed is basically the same, but there is much less friction in the pipelines when you move only the non- pressurized end product. In my hand-cranked reverse osmosis plant the difference is 100-fold and you get good 30 minutes exercise for a cup of drinking water. If you live in a submarine, you could just turn the tap and the clean water flows in without any cranking.

</comment><comment><USER14> Just glancing at the article, it struck me how similar this picture from the article is: [http://pop.h-cdn.co/assets/15/35/1440426015-desalinization-2...](http://pop.h-cdn.co/assets/15/35/1440426015-desalinization-2.jpg)

To an 1880's Ogden cigarettes card demonstrating how to make an emergency filter inside of a bucket: [http://digitalcollections.nypl.org/items/510d47da-d09a-a3d9-...](http://digitalcollections.nypl.org/items/510d47da-d09a-a3d9-e040-e00a18064a99)

150 years later, and the method is pretty much identical.

</comment><comment><USER15> Or we could just stop wasting water on Factory Agriculture of Animals.

[http://www.cowspiracy.com/infographic/](http://www.cowspiracy.com/infographic/)

</comment><comment><USER16> The fact that we CAN do this is impressive.

Should we do it is another question. This is one of a host of technologies were going to have to adapt to keep the water flowing not only here in the states but across the globe. Storage, recycling, improved transit (most water systems loose 10%-30% in transport due to aging infrastructure). The reality is this is one part of a systematic change were going to have to make to keep things going.

</comment><comment><USER17> This scares me to no end. I see a future where all our water comes from bottles and we have to pay for the right to drink.

<comment><USER18> It is kind of the natural conclusion when you decide to build a metropolis in a desert.

Come to Iowa, our weather isn't as nice, but we've got a shit ton of water.

<comment><USER19> Really?

[http://www.desmoinesregister.com/story/opinion/columnists/io...](http://www.desmoinesregister.com/story/opinion/columnists/iowa- view/2015/08/24/water-works-nitrate-farm-bureau-discussion-stowe/32268923/)

Aquifers aren't infinite.

</comment></comment></comment><comment><USER20> Very interesting article ... namely because fresh drinking water is now becoming a valuable resource. I'm sure the time the article has been written, better and more efficient ways would turn up for churning out fresh water for public consumption.

<comment><USER21> I feel a very American point of view in your comment. Hasn't fresh drinking water been a valuable resource in plenty of places in the world for as long as time can remember?

<comment><USER22> Two years ago I moved from South Australia to Tasmania. South Australia is known as "driest state in the driest inhabited continent in the world"[1]. Here in Tasmania there's water oozing out of the side of the hills, I'm still amazed by it.

1\. [http://guides.slsa.sa.gov.au/water](http://guides.slsa.sa.gov.au/water)

Someone else has usually put it better, this time I'll draw on user adrusi:

___________

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

The problem with freshwater is not that the global supply is limited, rather that supplies in some high-population areas are.

The Amazon river sends 209,000 cubic meters into the Atlantic every second[1]. That's 18,100,000,000 per day. A single human drinks about two liters (0.02 cubic meters) every day. There are 7 billion humans, so the global requirement is 140,000,000 cubic meters of water. The Amazon alone contains 130 times more than the global requirement for drinking water.

This is domestic consumption, which comprises 10% of water usage[2]. That means that 13 times more water flows through the Amazon than all of humanity uses. That's just one river. [1]: [https://en.wikipedia.org/wiki/Amazon_River](https://en.wikipedia.org/wiki/Amazon_River)

[2]: [http://www.lenntech.com/water-food- agriculture.htm](http://www.lenntech.com/water-food-agriculture.htm)

___________

<comment><USER21> Clearly. I was just considering the drought in the west of US lately and the statement "is now becoming".

Personally I live in Norway where we wash our garbage and shower in high quality drinking water. I still find it absurd from time to time, considering the lack of fresh water in many places in the world.

Edit: Corrected quote

<comment><USER23> We've got a similar situation going on in Slovenia. I don't know if we have more fresh water than Norway, or not, but there are towns that get 3meters of rainfall per year.

One such town has an area of 25km^2, that's 25,000,000 square meters. Which means that on an average year, 75,000,000 cubic meters of fresh drinkable water fall from the sky.

Comparing that to stats in the grandparent post: _14 times_ as much drinking water falls on a tiny town in a tiny European country, as the whole world needs for drinking.

That's crazy.

<comment><USER24> Somewhere in your calculation there's an error.

75,000,000 cubic meters of fresh drinkable water fall from the sky _per year_ divided by ( 0.002 cubic meters of drinking water needed per person _per day_ x 365 days in a year ) = 103,000,000 people quenched per year.

Your tiny town gets enough fresh water from the sky for 103 million people -- still impressive.</comment></comment></comment></comment></comment></comment>


Paul Graham Shares Number of Y Combinator Companies Sold or Valued at Over $40M - <AUTHOR> http://mattermark.com/number-of-y-combinator-companies-sold-for-over-40m-by-year-funded/ <comment><USER3> This numbers don't give away too much because of subjective nature of "valued at" as well not actually knowing the mean or the variance, let alone the nature of distribution.

However what is impressive is that if you were going to do startup with YC, your chance of becoming significant company is about 10%. Due to nature of power law in these things, I tend to think, may be about 20% of other startups managed to become less spectacular but still successful and other 40% may be just sustainable to make a reasonable living(lifestyle business) and rest had to fold.

<comment><USER4> Reddit, for example, sold for like 20-30 million so isn't included.

I know some other YC businesses that seem unlikely to ever be huge but are profitable and probably will be as long as they want to be. Own Local has that feeling to me, although perhaps it's actually going to be larger someday I don't really know.

<comment><USER5> Perhaps a 3D graph would be interesting.

       - Batch year
       - <USER2>
       - Years to reach valuation*

* First dinner to m&a, discounting prior traction/validation.

That way, gross valuation / year can be more easily elucidated.

</comment></comment></comment><comment><USER6> Note to dmor: I wouldnt put that copyright on the image. The data is shared by pg, not you. The image itself without the data has little value. Therefore, that copyright seems greedy and portrays a bad image to me. All in all, not a big deal, but someone can take a detail like that a turn it into a PR nightmere.

<comment><AUTHOR> This is a really good point, I just copy/pasted the format for some old slides. I'll update it, definitely not the intent

</comment></comment><comment><USER7> To put that in perspective, most of the first non-founder engineers couldn't buy (outright) a 3br house within walking distance of Y Combinator's office with their stock option proceeds.

<comment><USER8> I _think_ what you're saying is that if a company were sold for $40m, employee #1 wouldn't get enough to buy such a house. That would depend on how much stock he or she got and how much he or she was diluted by later investments. The cases I've seen fall on both sides of the line, but there are plenty above it.

But also, we're not talking about 42 companies with valuations of $40m. $40m is the lower bound.

</comment></comment><comment><USER9> In other news, women share how much their diamond rings were valued at when they got married. Unfortunately, when they go to sell their cherished tokens after their eventual divorce, they soon discover that diamonds aren't worth nearly as much as they thought they were.

Indeed, they are often horrified to learn that the valuation of the diamond at point of sale was horrendously overpriced through the use of psychological arbitrage and cultural indoctrination, that the cost of their production is surprisingly low thanks to copious amounts of slave labor and theft, and that the wholesale price that the diamonds will clear at is so low as to be an insult to their very dignity.

Oh, were we talking about startups?

I must have digressed into accurate land.

For anyone who's being a bit slow today:

        women = investors
        diamonds = startups
        marriage = first rounds
        divorce = likely failure of startup
        valuation at point of sale = optimistic valuation by investors at inception
        cost of production = ramen, servers and underpaid employees without equity
        wholesale price = true value of a startup on average

</comment><comment><USER10> I'm glad pg also shared the percentage breakdown. If just the number of startups based on funding year had been shared, YC's progress/success would not be nearly as telling as with the percentages also shared.

</comment><comment><USER11> To put this in perspective, any company that has raised 10M or more is likely to be valued at something near 40M. The numbers seem less startling to me after factoring that in (my first reaction was that there must be a lot more acquisitions than what we see in the news).

</comment><comment><USER12> Sold or valued at.

<comment><USER13> pg in 2012 Sept

"The one thing we can track precisely is how well the startups in each batch do at fundraising after Demo Day. But we know that's the wrong metric. There's no correlation between the percentage of startups that raise money and the metric that does matter financially, whether that batch of startups contains a big winner or not."

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

<comment><USER8> Almost none of these valuations are the result of investments after Demo Day. These are later rounds, and later rounds converge on an ultimate valuation.

</comment></comment></comment><comment><USER14> The current graphs don't say much. How about average/median/top valued company by year funded 2 years after funding?

Say in 2005 company X got funded, then its value from 2007 should be used.

Of course 2013 and 2012 cannot be included then, but it's obvious that older companies had a much longer period to build up value and thus the current graphs don't say all that much.

<comment><USER15> YC's investment thesis is that the whole game of investing in startups boils down to investing in big stars. If you got into Google with an early stake, you won. Medians don't matter: what matters is how many big stars you caught since they'll pay for the rest many times over. So I think PG is measuring the same thing he's trying to make.

<comment><USER8> Though I wish we could claim credit for discovering that, it's really the thesis of every startup investor.

</comment></comment></comment><comment><USER16> Must be nice. ;)

But on a serious note, I wonder how much that 2009-2012 bump has to do with inflation or a lack of other opportunities in the market. Maybe I am out of touch, but it seems like there are less and less places to put your money. Not to suggest that startups are a bubble. The rise is probably due to YC becoming a better filter, picking better horses in the race.

</comment><comment><USER17> 42 companies * $40M is $1.7B. Wow.

<comment><USER18> 42 * $40M * 6% (average stake YC gets in company) = $100M

According to [http://techcrunch.com/2013/10/25/y-combinator-13-7b-valuatio...](http://techcrunch.com/2013/10/25/y-combinator-13-7b-valuation/): \- YC company valuations total $13.7 Billion \- 511 companies total

$11,000 + $3000 * # of founders = total investment in YC companies (let's just go with 17k for 2 founders on average) = $17K

$17000 * 511 = $8.7M

$100M - $8.7M = $91.3M

Clearly a pretty good investment =P

<comment><USER19> Are you saying that YC only invests 11K per company plus 3K per founder?

<comment><USER20> That's what YC says:

 _How much do you invest?

Usually $11,000 + $3000 per founder. So $17,000 for two founders, $20,000 for three or more. We've also arranged for each startup to get $80k in convertible notes automatically. The goal is usually to give you enough money to build an impressive prototype or version 1, which you can then use to get further funding._

[http://ycombinator.com/faq.html](http://ycombinator.com/faq.html)

</comment></comment></comment></comment><comment><USER21> I would be curious to find out why he chose $40M as the benchmark.

<comment><USER8> There's a sort of threshold around there. A startup can raise at $20m after Demo Day by looking really promising, but to raise at $40m you usually have to be launched and growing consistently.

<comment><USER22> So presumably, companies that are on a ~$3M revenue run rate are a safer bet. Assuming a multiple of 15.

</comment></comment></comment><comment><USER23> Is there a similar breakdown of companies YC lost money on?

<comment><USER24> I'm sure they could, but it's not really relevant. It's more about the 2-3 Dropbox, AirBnB, Heroku like companies.

Think of it this way with Heroku:

YC gets 6-7% initially and probably ends up with close to 3% after Series A and B. That's $6.2M on the $212M exit price.

A single exit like Heroku returns them enough to run YC for at least a couple years and returned >10x for other investors.

So while you could show that, it doesn't really matter to YC or to investors, because they have those 2-3 huge wins.

</comment></comment><comment><USER25> Interesting: to a close approximation, the odds of a positive payoff from YC (vs opportunity cost) is about the same as buying a California scratch ticket --about one in ten.

</comment><comment><USER26> Does anyone know how many are actually sold vs valuations?

<comment><USER8> 7 of the 42 were acquisitions.

<comment><USER26> Thanks

</comment></comment></comment><comment><USER27> Adjusting for time (takes a while to build the company), it seems like about 15-20% of YC's startups will eventually hit that number.

</comment><comment><USER28> So how does it compare to companies borne out of Y Combinator? That would be interesting to see.

<comment><USER29> Techstars publishes a fair amount of data too: [http://www.techstars.com/companies/stats/](http://www.techstars.com/companies/stats/)

Then there's general studies of VC-backed companies. Not much available on pre-VC companies though.

</comment></comment><comment><USER30> Wow, that and the follow-up tweet are impressive. What happened in 2013 though?

<comment><USER31> Younger companies probably haven't had time to be bought yet! Or to be valued as highly.

<comment><USER30> Ah, of course. Thanks for clearing my brain fog.

</comment></comment></comment><comment><USER32> Typical LISP guy: delimiting the pairs with whitespace - good enough :)

</comment><comment><USER33> Somebody, fix "OFY" in graph header.

</comment><comment><USER34> Anyone know which two are the 2013 companies?

</comment><comment><USER35> Names?</comment>


Ask HN: Why title of hot news in Reddit is longer than that in Hacker News? - github-cat While reading hot tech news in www.pxlet.com, I find an interesting scenario where the title of hot news in Reddit is usually longer than that in Hacker News. Is this a coincidence? Or any reason behind it? <comment><AUTHOR> I think Hacker News has a shorter max length.

The HN staff also rewrites titles in cases where a title is perceived as too sensationalistic; even if the title in question is the original title of the article!</comment>


Microsoft and Twitter CEOs meet publicly, talk secretly - <AUTHOR> http://www.neowin.net/news/microsoft-and-twitter-ceos-meet-publicly-talk-secretly <comment><USER2> O OH. Google better get over there and talk to those Twits!</comment>


Grace Hopper and Margaret Hamilton Awarded Presidential Medal of Freedom - <AUTHOR> https://techcrunch.com/2016/11/17/grace-hopper-and-margaret-hamilton-awarded-presidential-medal-of-freedom-for-computing-advances/ <comment><USER3> I like this video of Admiral Grace Hopper talking about processing speeds. She illustrates it with her famous "nanoseconds" \- pieces of wire that a electricity would travel in a nanosecond.

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

What a great role model, for programmers, for women, but also for anyone working in a bureaucratic system.

One of her famous quotes is "It's easier to ask forgiveness than it is to get permission". It became a classic. Python's programming paradigm, for example, which prefers exceptions instead of condition checks is named that.

"Computer bugs" phrase also seem to originate with her.

Also based on Wikipedia she also was the oldest serving officer in the United States Navy.

<comment><USER4> > "It's easier to ask forgiveness than it is to get permission"

In Swedish this even rhymes. (förlåtelse == forgiveness, tillåtelse == permission). It's a wonderful phrase.

<comment><USER5> In French too: pardon/permission

Very nice indeed.

</comment></comment></comment><comment><USER6> Hamilton had possibly the most exciting and demanding job ever in computer science and engineering. It must have been so much fun. About as full stack as it gets.

Bletchley Park and the Manhattan project were great computing projects too, but Apollo is my favorite since they had such a tiny mass and power budget, real time constraints and the runtime consequences were so personal. Damn that was a great project.

Hopper was a giant of course. But Hamilton is less well known and I've been a fan since my youth.

<comment><USER7> I actually get choked up watching the appropriate episode of "Moon Machines", the one that covers the MIT team. That project was an 0xCF. But it worked.

I was 9 when the moon lander landed, but I was still old enough to feel the Sputnik emphasis in tech. I grew up with that program. It was the era of EE programs with 50% washout rates.

We would go to Huntsville, Houston or Cape Kennedy on vacation. It was just like that then.

I don't know how anybody could have survived the first real test of a system like that being on national TV. That's the stuff of nervous breakdowns.

Ad then by '74 we killed it because nobody knew any economics back then. Or maybe because they did.

I want a Mad Men style show about the Apollo program. Oh, why not? Why not?

<comment><USER8> > _Ad then by '74 we killed it because nobody knew any economics back then. Or > maybe because they did._

Probably the latter. By the time Apollo astronauts landed on the Moon, von Braun and friends were sketching plans for a Mars mission, and pushing for development of nuclear propulsion. According to Wikipedia[0], US Congress saw that and decided to kill the space race, out of fear it will expand beyond the Moon, and consume resources needed elsewhere (like for the arms race).

[0] - [https://en.wikipedia.org/wiki/NERVA#In_the_space_program](https://en.wikipedia.org/wiki/NERVA#In_the_space_program)

<comment><USER9> > (like for the arms race)

Well, that turned out to be more of a _perceived_ than _actual_ need.

</comment></comment></comment></comment><comment><USER10> It's hard to look at the list of Medal of Freedom awardees and conclude this list is strictly meritocratic (these two individuals are exceptions who absolutely deserve it). There were people nominated, e.g. Jack Bogle, who have made a much more significant impact on Americans' lives than people like Robert De Niro, Tom Hanks, and Frank Gehry. Even Lorne Michaels won one!

But the guy who gave up potentially billions of dollars to help the average American investor get a fair shake hasn't had enough of an impact...

<comment><USER11> Obama said: "From scientists, philanthropists, and public servants to activists, athletes, and artists, these 21 individuals have helped push America forward, inspiring millions of people around the world along the way."

I'm glad that the award values contributions from creatives whose works and organizations have influenced entire industries and the masses.

<comment><USER12> Artists are basically the support class of society. They don't producr anything directly, but the producers all benefit from, and kind of need them.

<comment><USER13> Jasper Johns once expressed this sentiment this way: "Artists are the elite of the servant class."

</comment></comment></comment></comment><comment><USER14> It should be pointed out, just for balance, that Margaret Hamilton was appointed to be the head of MIT's Apollo software team long after the software was frozen; she was still a junior programmer on the project when the command module software was frozen in the 1966-67 timeframe (she became the head of the command module software development after that), and she became the head of the overall software program sometime in 1969 after the software was complete, and key people (such as Dick Battin) moved on to other things. Obviously it is still a major accomplishment to be responsible for release engineering and integration for something this mission critical, but in the media, I often see references to Margaret Hamilton somehow having "written" or "designed" or "lead the team" which made the Apollo software, which is just false.

<comment><USER15> What are you balancing by pointing out that she was a junior programmer who relied on the real key people? Are there incorrect references to her achievements in this comment thread or in the article?

<comment><USER14> Yes, the article states that "Apollo 11 ran her software", which I consider to be a false statement; and many other articles explicitly give her credit for designing or writing the Apollo software. I think writers make that mistake in good faith, since they don't know the timeline of development. And it's not so much that she "relied on the real key people" \- she was not a major figure of the development phase of the Apollo software, and certainly did not lead it; Richard Battin and Dan Lickly led the development, and the latter handed the leadership of the software effort over to her as he left the project - <USER2> this was after the development itself was over.

I am not at all trying to minimize her accomplishments, which included being responsible for the software work, such as release, integration, and debugging during most of the actual flights. However, a lot of people, basically just because of lack of knowledge, give her credit for leading the development or writing of the software as well, which is incorrect.

<comment><USER15> NASA[0][3] and MIT[1][2] both agree that Apollo 11 ran her software (where "her software" means "software she and her team wrote", not "software she wrote entirely on her own"). The TechCrunch article echoes them, and I haven't seen anything in the article or this thread suggesting she did everything single-handedly.

[0] [https://www.nasa.gov/home/hqnews/2003/sep/HQ_03281_Hamilton_...](https://www.nasa.gov/home/hqnews/2003/sep/HQ_03281_Hamilton_Honor.html)

[1] [https://news.mit.edu/2016/scene-at-mit-margaret-hamilton- apo...](https://news.mit.edu/2016/scene-at-mit-margaret-hamilton-apollo- code-0817)

[2] [https://news.mit.edu/2009/apollo- vign-0717](https://news.mit.edu/2009/apollo-vign-0717)

[3] [https://www.nasa.gov/50th/50th_magazine/scientists.html](https://www.nasa.gov/50th/50th_magazine/scientists.html)

<comment><USER14> Well, if you wanted to find examples of misinformation that needs to be corrected, you've certainly succeeded, since several of these press releases make the mistaken syllogism "Margaret Hamilton led the software team" & "the software team developed the software" -> "Margaret Hamilton led the development of the software". But this is false because of the timing - Hamilton did not lead the team _while_ the team was developing the software.

And the statement from the last link:

"At the start of the Apollo program, the onboard flight software needed to land on the moon didn't exist. Computer science wasn't in any college curriculum. NASA turned to mathematician Margaret Hamilton, of the Massachusetts Institute of Technology, to pioneer and direct the effort."

... is just jaw-dropping in how false it is. That simply didn't happen. NASA couldn't have possibly been aware of Margaret Hamilton at the time they decided to rely on MIT for Apollo guidance; she didn't join the project until several years later, and in a small role.

<comment><USER15> Cool. I'm going to go with NASA, MIT, Wired[0], and the Charles Stark Draper Laboratory History of Apollo On-Board Guidance, Navigation, and Control[1] as my sources of information on this one.

[0] [https://www.wired.com/2015/10/margaret-hamilton-nasa- apollo/](https://www.wired.com/2015/10/margaret-hamilton-nasa-apollo/)

[1] [http://klabs.org/history/history_docs/mit_docs/1711.pdf](http://klabs.org/history/history_docs/mit_docs/1711.pdf)

<comment><USER16> This argument probably should be settled by primary documents like contemporary Apollo org charts and development milestone reports rather than modern press releases.

<comment><USER14> I can do one better; the source code itself, which has been scanned ([https://github.com/chrislgarry/Apollo-11](https://github.com/chrislgarry/Apollo-11)), lists Margaret Hamilton as "COLOSSUS programming leader" \- COLOSSUS being the command module software - as of March 28, 1969, reporting to Dan Lickly - Director of Mission Program Development, i.e. in charge of software development at this point, and Richard Battin - Director of Mission Development, who was basically the technical lead of the AGC project at that point. There are also some other senior scientists on the approver list, but those two are the senior software leaders. So Margaret Hamilton was not in charge of the software development team as of March 1969 (she was still in charge of the COLOSSUS module), and in fact not until Dan Lickly left the project, which I think happened around the Apollo 11 flight.

It should be needless to point out that the AGC software was complete and frozen at this point, although bug fixes and some minor features made it in.

This doesn't stop misinformation from appearing all over the place, e.g. Wikipedia says "Details of these programs [LUMINARY and COLOSSUS] were implemented by a team under the direction of Margaret Hamilton", but this is false, as we've seen - LUMINARY, the moon landing software, was frozen while Hamilton was still on the COLOSSUS project. Also, if you root around the history of COLOSSUS itself - which I did at some point - you'll see that Margaret Hamilton became its programming leader in 1968, after COLOSSUS was complete.

<comment><USER17> The source of that claim she and her team were behind both programs' code was this paper:

[http://klabs.org/history/history_docs/mit_docs/1711.pdf](http://klabs.org/history/history_docs/mit_docs/1711.pdf)

On p20 of PDF reader, it says this:

"Names notable here are Dr James Miller for the first lunar program SUNBURST, Dr Frederic Martin for the Command Module program COLOSSUS, and George Cherry for the Lunar Module program LUMINARY. These last two were the programs used for the lunar landing missions... [next paragraph] Much of the detailed code of these programs was written by a team of specialists led by Margaret Hamilton. The task assignments to these individuals included, in addition to writing the code, the testing to certify the programming element met requirements."

Goes on to say they had to be error free and were. That was what the NASA press releases and other writings on her team said was essentially their specialty. Consistent so far with claims about her _if_ that author got the right information from the right people. It's hard to say without talking to him about where those claims came from. I do note he's writing on behalf of the laboratory named after one of them (Draper) citing that guy's work along with other solid-looking references. Edit to add that I just noticed his name in the Apollo code you submitted. He apparently was on the team, too. Now I consider his write-up authorative.

</comment></comment></comment></comment></comment></comment></comment></comment></comment><comment><USER18> I would have guessed Grace Hopper already given every applicable award possible for her contributions by now. Late is better than never though.

I guess great scientists going under-appreciated is nothing new, however.

</comment><comment><USER19> I've noticed that Grace Hopper and sometimes Ada Lovelace are the only women in computing people ever talk about. I'm glad I got to know about Margaret Hamilton, but this is the first time I've heard of her at all.

There's so many awards, events, and groups named after Hopper or Lovelace that you'd think they're the only two women in computing :/

<comment><USER20> Radia Perlman deserves more credit than she gets. She invented the Spanning Tree Protocol at DEC. Also Elizabeth Rather, co-inventor of the Forth language.

<comment><USER21> Barbara Liskov:

\-- ACM Turing Award, "For contributions to practical and theoretical foundations of programming language and system design, especially related to data abstraction, fault tolerance, and distributed computing"

\-- IEEE John von Neumann Award, "For fundamental contributions to programming languages, programming methodology, and distributed systems."

</comment></comment></comment><comment><USER22> Back when real programmers where women. I don't think it is nostalgia to say that we need more programmers like these women. They make an excellent case for a more diverse technology workforce.

<comment><USER23> We will take anyone as long as their IQ and capabilities are off the scale (as the two ladies in question) probably won't result in the kind of diversity that the diversity people would appreciate. They (diversity advocates) have been fighting against the SV meritocracy in the last couple of years.

<comment><USER24> Question: Did u knew that there will be downvotes, but post-it anyway? Or you didn't expect the downvotes? I'm asking because I'm curious about the impact of the "politically correct" culture and its effects.

<comment><USER25> Why should you worry about imaginary Internet points? If your opinion can stand in it's own no matter how controversial, post it.

Being civil isn't being "politically incorrect" online or offline. If you say something that might get you punched in the face (literally or metaphorically), don't be surprised when you do get punched in the face.

<comment><USER24> somebody else punching you in the face does not means your comment is uncivil. I'm guessing, but two centuries ago you could be punched in the face for opposing slavery. You cannot measure and argument by how offended others get when they contemplate it.

<comment><USER25> > somebody else punching you in the face does not means your comment is > uncivil

I never made this argument - you seem to have skipped my first paragraph entirely. I'm all for sharing controversial opinions that _have merit_ and in a manner that is not dickish.

</comment></comment></comment></comment></comment></comment><comment><USER20> Grace Murray Hopper Memorial Park is right next to my apartment complex (we're across I-395 from the Pentagon and apparently she lived here when she retired because they kept calling her back in for consults). Somebody left some flowers there yesterday; not sure if it was because of this or something unrelated, but I thought it was nice.

</comment><comment><USER26> I was at a conference recently when someone said that Hamilton invented multi threading. Is that true? Does anyone know if that's what the prioritisation of critical systems this article talks about was?

<comment><USER17> I think she co-invented it. Several people independently invented some important stuff around the same time. Bob Barton in late 50's for all kinds of things, Hamilton in Apollo, and Dijkstra. They were figuring it out around the same time. Hamilton outdid Dijkstra by doing that, asynchronous execution, real-time, fault detection, recovery system, and putting it into production.

</comment></comment><comment><USER27> The last Code Less Code is appropriate here: [http://thecodelesscode.com/case/234](http://thecodelesscode.com/case/234)

</comment><comment><USER17> Bout time! They both deserve it as their contributions definitelt impacted America in huge ways. :)

</comment><comment><USER28> My development and test server rack contains:

Babbage

Turing

Wilkes

Grace

Ada

Margaret

Not sure how I ended up with male surnames and female first names, but there you go.

<comment><USER29> > Not sure how I ended up with male surnames and female first names, but there > you go.

A common but subtle sort of sexism in our society, I suspect. I noticed a lot of people talking about Hillary and Trump during the election. Whenever I saw that, I tried to counter with Donald and Clinton, but despite that, I fear I wrote about Hillary and Trump more often than about Donald and Clinton.

</comment></comment><comment><USER30> Richard Garwin? What an amazing character, went from helping to develop weapons to speaking for non-proliferation.

</comment><comment><USER31> > Grace Hopper and Margaret Hamilton Awarded Presidential Medal of Freedom

> Grace Hopper and Margaret Hamilton Awarded Presidential Medal of Freedom</comment>


Are you going to get a Chrome Book? - <AUTHOR> http://www.google.com/chromebook/index.html#utm_campaign=en&utm_source=en-ntp-holidays-na-us-bkws&utm_medium=ntp-holidays

<comment><USER2> I don't have much respect for Acer as a manufacturer. I'm surprised that Google chose them instead of, say, Asus.

And I'm uncomfortable with the amount that Google knows about me already; I'd have to read the privacy policy very carefully before I used their machine.

I admit that most people just don't care. (And maybe they're right; Google aren't particularly evil.)

I guess it'd be interesting to see when the Russian criminal gangs start selling cheap computers with well-crafted nasty rootkits pre-installed.</comment>


A tutorial on Principal Component Analysis - <AUTHOR> https://tkv.io/posts/tutorial-on-pca <comment><USER2> Relatedly, from a colleague for whom I have _a lot_ of respect: [http://gael- varoquaux.info/science/ica_vs_pca.html](http://gael- varoquaux.info/science/ica_vs_pca.html)

<comment><USER3> Your colleague is actually quite famous in ML space. You are lucky to have him as your colleague.

<comment><USER2> Oh, I know!

(To be fair, I should have said _former_ colleague, back when I worked at NeuroSpin in 2010-2012).

</comment></comment></comment><comment><USER4> "By defining \mathbb{E}\left[\mathbf{x}\right]=\muE[x]=μ, ...and using the linearity of the expectation operator \mathbb{E}E, we easily arive [sic] to the following conclusion..."

Yikes. You don't define that \mathbb{E} was an 'expectation operator', or what an expectation operator even does, or the fact that it's linear. The v's disappeared somehow from inside the square brackets -- maybe you meant \muE[v]=μ?

So far this "tutorial" isn't defining its terms very well. I'm lost and it's only the very beginning.

<comment><USER5> "E[foo]" is syntax to mean the expected value of the random variable foo, roughly speaking the mean value. (For instance the expected value of a dice roll is 3.5. The terminology is slightly suboptimal, since we will never expect a dice to come up 3.5.)

Hence the "E" itself is called an "operator". It can be applied to a random value in order to yield its expected value. You can read up on it here: [https://en.wikipedia.org/wiki/Expected_value](https://en.wikipedia.org/wiki/Expected_value)

The definition "E[x] = mu" is correct, though I would write it the other way, as "mu = E[x]", as it's the variable mu which is being defined.

The v's disappear because of a suppresed calculation:

sigma^2 = E[ (v^T x - E[v^T x])^2 ] = E[ (v^T x - E[v^T x]) (v^T x - E[v^T x]) ] = E[ v^T x v^T x - 2 v^T x E[v^T x] + E[v^T x] E[v^T x] ] = E[ v^T x x^T v - 2 v^T x v^T E[x] + v^T E[x] v^T E[x] ] = E[ v^T x x^T v - 2 v^T x E[x]^T v + v^T E[x] E[x]^T v ] = E[ v^T (x x^T - 2 x E[x]^T + E[x] E[x]^T) v ] = v^T E[ x x^T - 2 x E[x]^T + E[x] E[x]^T ] v = v^T E[ (x - E[x]) (x - E[x])^T ] v = v^T E[ (x - mu) (x - mu)^T ] v = v^T Sigma v.

<comment><USER6> Also, the "E[foo]" notation is something you'd pick up in an introductory statistics course. Which, IMO, means it's perfectly appropriate to use it without further explanation in this sort of context.

It's not really reasonable to expect technical subjects like this to always be presented in a way that's easily digestible to people who lack any background in the subject area. This article is clearly aimed at people who are studying machine learning, and anyone who is studying machine learning should already have a good command of basic statistics in linear algebra.

</comment></comment></comment><comment><USER5> An important application of principal component analysis is "low-rank approximation of matrices"; very roughly, this can be used for "dimension reduction": Substituting a system of hundreds of thousands of equations by a system with only hundreds.

This is neatly illustrated by applying the technique to compress images, even if all the usual compression techniques actually employ vastly different methods. An interactive demo is here: [https://timbaumann.info/svd-image- compression-demo/](https://timbaumann.info/svd-image-compression-demo/)

</comment><comment><USER7> Which are you your other favorite forms of analysis? Mine are:

[https://en.wikipedia.org/wiki/Formal_concept_analysis](https://en.wikipedia.org/wiki/Formal_concept_analysis)

[https://en.wikipedia.org/wiki/Latent_semantic_analysis](https://en.wikipedia.org/wiki/Latent_semantic_analysis)

[https://en.wikipedia.org/wiki/Root_cause_analysis](https://en.wikipedia.org/wiki/Root_cause_analysis)

<comment><USER6> FWIW, latent semantic analysis is just a particular application of principal component analysis.

<comment><USER8> And principle component analysis is a special case of factor analysis, which definitely makes all this stuff fit together nicely!

[https://www.microsoft.com/en-us/research/wp- content/uploads/...](https://www.microsoft.com/en-us/research/wp- content/uploads/2016/02/bishop-ppca-jrss.pdf)

<comment><USER9> This PPCA is really clever... allowing MLE for missing data/variance in a PCA in genius.</comment></comment></comment></comment>


California advances bill that would 'lead the world' on gig worker rights - <AUTHOR> <comment><USER2> How about a link? [https://www.theguardian.com/technology/2019/aug/29/californi...](https://www.theguardian.com/technology/2019/aug/29/california- lawmakers-consider-bill-that-would-lead-the-world-on-gig-worker-rights)</comment>


I'm a high school student in SF for 2 days, can I visit your startup? - <AUTHOR>

I'm 17, in high school, and have been programming for 5 years. I would love to see your company. I am from Minneapolis, Minnesota. I flew to LA, roadtripped to SF, and I am now staying here until I fly out of San Jose at 6 on Sunday (April 6). I came here primarly to tour colleges, however I would love to also see your startup! Email me if you want here: email@example.com <comment><USER2> I'd recommend Twitter and Atlassian HQs if you can swing it.</comment>


Twitter researchers offer clues for why Trump won - <AUTHOR> http://sciencebulletin.org/archives/10618.html <comment><USER2> I only really find this interesting in the sense of learning about Twitter followers. Extending it to the general population seems dubious.</comment>


1M Visits a Month in Less Than 18 Months–I've Done It. Let Me Share How - <AUTHOR> https://www.springzo.com/saga/simple-organic-traffic-strategy-14 <comment><AUTHOR> hey guys! Would love to hear your thoughts on my first guide on Springzo. And happy to answer any queries you have :)

<comment><USER2> really awesome article. I have been doing some of those things instinctively going after LTK and MTK. The ones with high search volumes are really difficult to rank for. If you use the Keyword planner tool by google it shows the difficulty of such keywords. Another thing i like about your post which is kind of weird is the length of time it took. I have been blogging on my site about 11 months. So for others they shouldn't be discouraged if they don't see immediate results.

<comment><AUTHOR> Thanks for the kind words. Yep, the guide did take a hell lot of time :) 7k words and there are still a lot of improvements to be done in it.

The keyword difficulty that Keyword Planner shows refers more to Adwords Competition. But yeah. It's definitely an indicator of how competitive the organic positions would be.

And yep.. You are so correct. It takes times for organic traffic to pick up.</comment></comment></comment>


Chloroquine on Google Trends - <AUTHOR> https://trends.google.com/trends/explore?q=Chloroquine&geo=US <comment><USER2> "fever shortness of breath" filtered by metro region has been what I look at every day for more than a month now. It is a window into where community spread has been appearing (and people are googling their symptoms) and it is this weird view into the future of what will be reported in the news. Watching it spread county by county from the main cities to elsewhere in the country has been something.

[https://trends.google.com/trends/explore?geo=US&q=fever%20sh...](https://trends.google.com/trends/explore?geo=US&q=fever%20shortness%20of%20breath)

<comment><USER3> Yikes Arkansas. That is not good news at all since it is one of the poorest states in the country.

Since you've been watching this search trend, do you have any insights you could summarize?

<comment><USER2> Just because a state has one reported case from one person flying in doesn't mean it was showing up in the community.

Florida was showing up early on even before it was being talked about, let alone the weird anti-talking about it they seem to be doing. I would not want to be living there now.

Overall it has been playing out like you would imagine. Hot spots with big airports seem to light up first. Then the surrounding areas and slowly spreading out via the highway system.

If there every is a real zombie apocalypse West Virginia, Vermont and Wyoming all seem to be the best places to go.

I have been taking screenshots since March 11th (when it seemed to suddenly overnight be "everywhere") so you can scroll through and see how quickly this has spread

[https://imgur.com/gallery/IaFgXiF](https://imgur.com/gallery/IaFgXiF)

<comment><USER3> This corroborates your observation about Florida: [https://healthweather.us/](https://healthweather.us/)

</comment></comment></comment></comment><comment><USER4> This is actually causing a severe shortage at many pharmacies and hospitals. People are rushing out and hoarding this drug, preventing us from having adequate supplies for treating the serious cases.

<comment><USER5> Do you have a citation?

<comment><USER6> [https://www.reddit.com/r/medicine/comments/flor5z/please_sto...](https://www.reddit.com/r/medicine/comments/flor5z/please_stop_prescribing_hydroxychloroquine_for/)

</comment></comment></comment><comment><USER7> Does it even work on a Covid-19 infection?

<comment><USER8> Serious question? People still don't follow relevant news, do they...

<comment><USER5> The evidence that it helps as a treatment is spotty.

E.g. [https://mobile.twitter.com/GaetanBurgio/status/1241201751916...](https://mobile.twitter.com/GaetanBurgio/status/1241201751916568576)

</comment></comment></comment><comment><USER9> What would explain the differences among the 50 states? There seems to be quite a wide range.

</comment><comment><USER10> HYDROXYCHLOROQUINE & AZITHROMYCIN, taken together, have a real chance to be one of the biggest game changers in the history of medicine. The FDA has moved mountains - Thank You! Hopefully they will BOTH (H works better with A, International Journal of Antimicrobial Agents) be put in use IMMEDIATELY. PEOPLE ARE DYING, MOVE FAST, and GOD BLESS EVERYONE!

Wrote president Trump a few hours ago on twitter.

I really hope this is right as the two drugs are cheap, generic and have been around for some time.

<comment><USER11> > The FDA has moved mountains... be put in use IMMEDIATELY

The FDA didn't really have to do anything. Doctors could prescribe it for off- label use already.

<comment><USER10> The president really shouldn't write this stuff in his twitter though:

[https://www.scmp.com/news/world/africa/article/3076240/coron...](https://www.scmp.com/news/world/africa/article/3076240/coronavirus- nigeria-reports-chloroquine-poisonings-after-donald)

Coronavirus: Nigeria reports chloroquine poisonings after Donald Trump touts antimalarial drug as treatment

<comment><USER12> That article is trying so hard. Way too hard. Any drug can kill you if you overdose it. If I remember right, 400 mg is the prescribed dosage. They are trying to make it seem that it can overdose easily but nope - at least 2g is needed to overdose. I can smell their bias in their reporting, they are trying to make the President look bad.

</comment></comment></comment></comment><comment><USER13> Trump should leave it to the experts ... he is snake oil huckster.

</comment><comment><USER14> It's going to end up killing people. Chloroquine is nasty stuff and irresponsible to be hawking...pharmaceuticals can cause as much damage as they can prevent! There is no clinical basis and Trump continues to hawk it ultimately because he is so vested in hotels and hospitality and is more focused on financial damage control of his own investments than the health and safety of the American people.

<comment><USER15> I really don't get where this comes from. It's a generic drug that's been used for 70 years all over the world in tens of thousands of patients to treat malaria. It's already standard of care in China and South Korea where the recovery rates are high and the death rate is low.

I think your extreme Donald Trump hatred is clouding your judgement.

<comment><USER13> It is for Malaria not SARS and not even used anymore because of drug resistance.

Also please cite proof of "it's already standard of care" in China and S.Korea and nope Whatsapp or Facebook does not count.

<comment><USER15> For China: [https://covid-19.alibabacloud.com/](https://covid-19.alibabacloud.com/)

Here's a comprehensive guide for treatment of covid-19 for hospital operators. Search for chloroquine:

[https://www.alibabacloud.com/zh/universal- service/pdf_reader...](https://www.alibabacloud.com/zh/universal- service/pdf_reader?spm=a3c0i.14138300.8102420620.dreadnow.6df3647fOm6g5u&cdnorigin=video- intl&pdf=Read%20Online- Handbook%20of%20COVID-19%20Prevention%20and%20Treatment.pdf)

South Korea (plaquenil is a slightly modified version of chloroquine):

[https://www.upi.com/Top_News/World-News/2020/03/12/South- Kor...](https://www.upi.com/Top_News/World-News/2020/03/12/South-Korea- experts-recommend-anti-HIV-anti-malaria-drugs-for-COVID-19/6961584012321/)</comment></comment></comment></comment>


Peter Seibel looking for someone to take over Lispbox - <AUTHOR> http://www.gigamonkeys.com/blog/2010/04/16/lispbox.html

<comment><USER2> Peter should definitely renew the registration for the domain, lest someone with less noble intentions snatches it.

He can always transfer the registration when he finds someone suitable to take over the project. It also isn't very clever to alert the domain snatchers to the fact that he won't be renewing.

<comment><USER3> I emailed to offer to pay him his out-of-pocket expenses to do that, because I got a lot of value from Lispbox when reading his book. (Sadly, I'm neither qualified nor do I have the time to do Lispbox justice as a maintainer, but I'm more than happy to pay $20 a year or whatever to keep lispbox.com in the hands of the good guys...)

<comment><USER2> Cool. If you want I'll chip in.</comment></comment></comment>


What is a Monad? An Explanation That Makes Sense - <AUTHOR> http://lambda-the-ultimate.org/node/1276#comment-14124

<comment><USER2> As somebody who didn't previously know what a Monad is (and still didn't after reading that section), I'd disagree that the linked explanation makes sense. I'd go as far as to say that it's not even an explanation, but rather a clarification of the term intended for those who are already familiar with it.

Further, as somebody who didn't previously know what a Monad is (and now does after reading the Burrito explanation linked in this thread), I'd suggest the Burrito explanation as an example of one that does in fact make sense (and is actually an explanation.)

<comment><USER3> Here's my explanation of Monads, assuming one knows the basics of modern imperative programming, and knows what a first-class function is (even thinking of it as a function pointer will do, if you don't).

Monads are essentially a design pattern, an abstraction, for dealing with items of some arbitrary type (call it "a") in some way.

Instead of working with values of type "a" directly, you work at one step removed. You hand the value of type "a" off to the monad, and it hands you back an opaque box (of type "M a") which logically contains your value. Now, instead of operating on the value directly, you instead hand the box a function that's supposed to apply to the contents of the box, and in return you're given back a new box with the function applied to the contents of the old box. That's basically it.

The interesting bit is that the monad - the box - sits between the function you're trying to apply, and the value it's supposed to apply to. That gives it the opportunity to do clever things. For example, the Maybe monad can keep track of whether the box is empty or not, and only apply the function you pass in if there's actually a value there. The List monad lets you apply operations to multiple values as if it were only one value (i.e. it's like an implied map). The IO monad takes in your function that's supposed to be applied to (e.g.) whatever was read from input, and hands you back a box that appears to contain the results of that operation. The catch is that the box is opaque - you can never look inside it - so there's no way for you to tell, from the outside, whether or not there were any side-effects. The IO monad can be looked at in another way: you can think of it as queuing up all the actions to perform on I/O, but actually building up an imperative program inside the box, which only ever gets opened up and evaluated after your program has finished its whole pure computation. (This is just a mental model for IO in the context of pure functional programming, with no side-effects.)

Putting a value into the box is the unit operator, also called return in Haskell. Passing in a function to the box and getting a new box in return is the bind operator, spelled >>= in Haskell, but simplified by do notation.

<comment><USER4> that's very neat, and basically what i understood by "monad" (although i wouldn't have been able to express it so well).

however, as the burrito explanation makes clear (and the apple thread confuses spectacularly) there's also some extra bits related to whether related boxes are identical or not. and it's kind-of obvious that these are important, because if you can't look into the box directly then you need to have some idea of what makes some boxes different while others remain equal.

<comment><USER3> For sure, and there are other details - for one, the function you pass in maps the value from a -> M b, rather than a -> b. But I think the aha! moment is the one you need to get to as quickly as possible where monads are concerned, and then worry about the details later. I, for one, was mightily confused by the Haskell do notation - I couldn't figure out why certain sequences worked, and other orders of operations didn't, and I had no intuition of what way types were flowing - it was the essence of a cargo-cult example.

And without some sufficiently abstract description of the thing, it's easy to fail to generalize from the seemingly unrelated concepts as a Maybe type and I/O.

</comment></comment></comment></comment><comment><USER5> I like the Monads are like Burritos one. <http://blog.plover.com/prog/burritos.html>

<comment><USER6> For me, monad tutorials that relied on analogies just complicated the concept of monads.

If anyone else is in the same boat, I'd recommend this tutorial: <http://www.haskell.org/all_about_monads/html/index.html>

Particularly Part II, which shows how some of the types that _you're already familiar with_ are defined as monads. (I'd recommend skimming Part II before reading Part I.)

</comment></comment><comment><USER7> Most programmers would probably prefer an explanation which focus on how monads work and what they are useful for, rather than just an allegory illustrating the type signature.

For a typical developer with some experience in OO programming, a more useful analogy is with the _command pattern_.

In the command pattern, a "command" is an object which wraps a method call or some other statement or operation. The "invoker" is a client which can execute the command object. Command objects can be composed, so a compound command may consist of a sequence (or tree) of other command objects.

Hence a compound command is basically a small program, just with a lot of overhead since each statement is wrapped in a separate object. The benefit of the pattern is that the invoker can add some additional logic to the execution. For example the invoker could log state between each command execution, it could allow a client to single step through the command-chain, backtrack, replay and so on.

The command pattern could be used to e.g. implement exceptions in a language which didn't support exceptions natively. You just wrap all statements in command objects, and then have the invoker check the return value after each command execution - if the return value indicates an error, the invoker does not continue with the next command, but backtracks to the last "try" command.

In the same way it would also be possible to simulate continuations, parallel executions or other advanced language features using the appropriate invoker- logic. The pattern could be used to create all kinds of sublanguages with different semantics than the host language.

Monads is the equivalent of this in a functional language. Rather than wrapping operations in objects they are wrapped in closures.

The talk about apples trapped in boxes, burritos and so on, is just an attempt to explain the rather obvious fact that command objects are not interchangeable with ordinary values and statements. For example a command might calculate and return a number. But you can't add that command object to a ordinary number. You have to execute the command first and get the resulting number before it can be added to an ordinary number. Conversely you cannot insert an ordinary number or expression onto a chain of command objects. You have to wrap it in a command object first, before it can be composed with other commands.

</comment><comment><USER8> Not really. All that he's done is given an intuitive reason that the functor Powerset from Set to Set is monadic. This is not a demonstration of monads in general!

</comment><comment><USER9> I'm tempted to upvote this post just so the other people can see the comments. Specifically the burritos link and the explanation by barrkel.</comment>


Nice App for Adding Screenshots to Trello - <AUTHOR> https://itunes.apple.com/gb/app/super-screenshot-trello-dropbox/id1020310825?mt=12 <comment><AUTHOR> I think this one has just not been marketed very well but it works just great and the price is very low. I reckon there's a few other Trello users on here so I thought I'd share.</comment>


Show HN: Localfu – $5 travel plans created by locals - <AUTHOR> https://www.localfu.com

<comment><AUTHOR> We got sick of spending so much time on Yelp and TripAdvisor planning trips, so we started a company that provides travelers with plans for their trip created by a local for $5. Americans spend 5 hours planning a trip, and what takes you hours to research takes them minutes to put together - plus locals always know the best spots in their city.

Use the promo code showhn to get a free plan.

<comment><USER2> Is it easy for locals to reuse content from previous itineraries, i.e. do they own the rights to their content?

Would there be competition from Fiverr for custom itineraries?

TripHobo is focusing on logistics, but can offer a free service because they make money on hotel bookings, [http://thenextweb.com/in/2014/06/30/travel- planner-triphobo-...](http://thenextweb.com/in/2014/06/30/travel-planner- triphobo-secures-funding-upward-of-1m-to-become-the-tripadvisor-of- itineraries/)

<comment><USER3> Yes! All locals have access to every previous plan they've built. But, because requests are usually different, reusing content isn't very common.

Custom itineraries on Fiverr are definitely in the competition, but because we pick every local before making them a Localfu and have a system to build awesome plans, we hope the experience is better through us.

TripHobo is cool. Because we're only giving recommendations right now, I could actually see our users getting local recommendations through us, and then optimizing and booking the trip with those suggestions through TripHobo.

<comment><USER2> Local recs may offer better logistics than an algo, then you could also earn the booking revenue.

</comment></comment></comment></comment><comment><USER4> I thought it was being creepy and adding my location to the list of available cities but apparently someone from Bristol has been here already.</comment>


Ask HN: Cover letter techniques for software development positions. - <AUTHOR> I am a senior in college and am applying for many positions that interest me so that I can get a job when I graduate. Now, I know there are plenty of resources online about how to write a cover letter, but I was wondering if the community here at Hacker News could give me insight on things that recruiters/companies look for in a cover letter when they are hiring software developers. Thanks! <comment><USER2>
       1. Write like you speak, as if told over coffee or beer.
       2. Informal, but not too casual.
       3. Right to the point; the first sentence is your summary.
       4. No bullshit, you'll go straight to the garbage.
       5. If it sounds like bullshit, it is.
       6. Short.  One minute good.  Thirty seconds better.
       7. Tightly targeted!  It's about them as much as you.
       8. Perfict speling and grammer.
       9. Highlight what's important to them.  (Do your homework.)
      10. Enthusiastic without sounding phony.
      11. Have friends read it.  Get feedback.
      12. Does it sound like a good quick description of you?
      13. Have at least one differentiator.  What makes you so special?
      14. Strong finish with a call to action.

<comment><USER3> Curiously enough, most of these also work for essays.

<comment><USER4> I think it's because all of the points relate to saving time of the reader. If something can be said in less and clearer words, do so.

People who read a lot eventually hit texts that could have been way shorter and clearer, and develop a bullshit-detector to avoid such time wasters again. The reverse of this is that texts with high "signal to noise" are highly appreciated.

</comment></comment></comment><comment><USER5> Based on my experience, if your cover letter is free from obvious spelling or grammatical errors and shows you actually read the job description, you're easily in the top 5% of applicants.

Also, and maybe this is just a pet peeve, but the cover letter should be the _body_ of your email. Lots of young applicants write this strangely informal email and attach a completely generic cover letter that doesn't even have my name in it.

<comment><USER6> > Lots of young applicants write this strangely informal email and attach a > completely generic cover letter that doesn't even have my name in it.

As a Word document?

<comment><USER5> Yes.

It's like they think the cover letter is supposed to be a writing sample to prove they speak English, rather than an introduction.

<comment><USER7> And often they come from a template that sounds nothing like what a real person would write. I see so many that they all start to look like each other. A good, personal one really stands out.

</comment></comment></comment></comment><comment><USER8> As someone who has hired many junior devs right out of college a cover letter gives you the ability to do 2 things.

1\. Tell me the reasons I should hire you that I won't find in your resume. Those side projects you did that you found really challenging. What subjects you found really interesting in school that apply to the position. Why you find the businesses subject fascinating. This is your chance to tell me on your own terms why you're a good fit.

2\. Why are you applying for _this_ job. What makes you fit this position. I'm not always looking here for direct domain experience, but something in your background or interests which fit with the role I'm hiring for.

I had a cover letter template that I would use but would always tailor cover letters to the specific job and organization I'm applying for. Only maybe 40% of the content of the letter came from my template.

<comment><USER9> "Only maybe 40% of the content of the letter came from my template"

This cannot be stressed enough, tailor each cover letter for the job, do not copy and paste.

<comment><USER10> Good point. The last time I was updating my cover letter, I invented the following workflow:

-copy/paste in the last email template I had used

-start editing sections that are relevant (intro, relevant experience, why I am interested in this position)

-read the entire email as a whole, look for inconsistencies

-touch up any sections that don't make sense, or are weak

-walk away for an hour, do something else

-come back, read it over again, tidy up any sentences, or add any gems I had come up with.

-optionally have a friend read it.

By the end of the process I usually had changed at least 50% of the format, and found that my cover letter was rapidly evolving, until I found out what worked. Sharing cover letters with friends in the industry also helped to root out some weak sections that I hadn't seen myself.

The main disadvantage of this method is that if you're not careful when reading, you can miss a reference to company name you had previously applied to, or include the wrong url. Always, always, always double check any links, names, or other identifying language.

</comment></comment></comment><comment><USER11> Tailor your style for the size of company you're dealing with (with the implied "do a bunch of research on the companies you're serious about first").

Applying for a position at a bank/multinational/"big" company with a full HR department and a contract with Taleo to track job applicants? Be a bit more formal. Remember that the first person who reads your letter is likely an HR professional with little connection to the people who will actually make the hire/no-hire call. They'll be working from a job requirement form, and their goal is to answer the question "Is there enough of a chance that this candidate has the right skills that I should forward their file on to the right hiring manager?" What makes this even more "fun" is that there's a good chance that they have a very small - if any - technical background, and may not know (for example) the connection between jQuery, Javascript, and "AJAX". For companies like this, a little buzzword bingo in there is an important ingredient that gets your file sent on to the technical guy, who will actually know what he's looking for.

On the other hand, you've got small/medium-sized companies in which the engineers you'd end up working with will be much closer to the incoming stream of applications. These companies may have a designated HR guy, but the role is often filled by someone else wearing the HR hat for one day a week. Here, the initial person reading your letter is someone you'll probably end up working with to some degree or another, which complicates their goal in the first screening. Now, the question becomes "Does this person sound like the kind of person I'd like to work with, and if so, does (s)he sound smart/interesting enough that I should disturb Steve over there to get him to look at this letter?"

Bottom line: if you're applying to somewhere that has an HR department you need to get through first, write the letter for them (and assume the actual hiring managers won't read it). If you're applying to somewhere where the HR guy is a potential colleague, write the letter as if everyone will read it and they're judging your fit as a person, not only technically.

</comment><comment><USER12> A specific cover letter targeted to the company is much better than a generic one. You can have common paragraphs in all of your cover letters, but I would recommend sections that particularly target the needs of the company you're applying to. For example, if they say in their job description that using technology FOO is a bonus, mention that project you did with technology FOO and why you were really excited about it.

Otherwise, you lump yourself in with every other person out there. You need to make yourself stand out without lying or going over the top. If you can make it clear that you are really interested in THEM and not just the job, that's a positive from the employer's perspective.

</comment><comment><USER13> People love to read about themselves -- this includes hiring managers at companies. Find unique and recent news about the company to discuss in your cover letter, and why it interests you.

Use FB/LinkedIn/Twitter, etc to find out info about people at the company, and try to send a note to a specific person, rather than just responding to email@example.com which is often a big black hole.

If you send a personal note to employee Z at the company, make it personal (don't attach your CV, but include details about employee Z or Z's company you find interesting) and ask if Z knows anything about position X you want to apply for -- your chances are much better if you can get your info to a specific person.

<comment><AUTHOR> Oh, very nice. I never even thought about using FB/Twitter/LinkedIn. Thanks!

<comment><USER13> Yeah, it's a gold mine, especially on interviews. If I know who I am being interviewed by, I can usually find the person's profile/email/blog, and see what they've written, their areas of expertise, likes/dislikes, etc.

</comment></comment></comment><comment><USER14> Here's some quick advice that has worked very well for me - in reverse order of importance.

\</comment><comment></comment><comment>-

3\. KEEP IT SHORT.

Respect that the time of the person reading your letter is valuable. Three paragraphs maximum. These should be: 1) Where you saw the advert and why you are interested. 2) Specific details that make you stand out. 3) An invitation to read your CV and schedule an interview. The goal of the cover letter should be to get people to read your CV. The goal of your CV should be to get an interview. The goal of the interview should be to find out if you and the company are a good fit.

2\. SHOW WHY YOU'RE A GOOD MATCH.

Keep it to three points maximum. Focus on how you match the job description.

1\. JOB APPLICATIONS ARE ABOUT THE COMPANY, NOT ABOUT YOU.

Don't harp on about yourself. Highlight the benefits that you can bring to the company. If you're starting too many sentences with "I like..." or "I want..." then you're doing it wrong.

\</comment><comment></comment><comment>-

Here are some examples from my sent mail folder, all of which got me interviews - and job offers.

\</comment><comment></comment><comment>-

EXAMPLE 1: SYSADMIN POSITION IN ACADEMIA

Dear [contact],

Re: [job-title] [link-to-job-advert]

The post above was mentioned to me by your colleague [X] and I am very interested in it. Please find my CV attached for your consideration.

For this particular post I would like to highlight a couple of points from my CV that might be of interest to you:

\- experience of system administration in an academic environment

\- very strong Linux and programming skills

\- experience in an international environment

I do hope very much we can meet to discuss your requirements in more detail.

With best regards, [name]

\</comment><comment></comment><comment>-

EXAMPLE TWO: LINUX MOBILE PHONE SOFTWARE ENGINEER

Dear [contact-name],

Thank you for taking time to speak to me on [date]. The [X] project sounds very interesting and I would very much like to discuss how I can help. I have attached my CV in French and also a direct English translation.

I would like to highlight two points that I believe are particularly relevant to [company-name]:

\- I have previous experience of embedded systems programming: during my year out I developed the software for a precision testing machine (20 000 lines of C in 6 months). I worked closely with a team of electronic and mechanical engineers during the project, which was completed on time and on budget.

\- I am a developer for [Y] Linux, a distribution which is being increasing used for embedded systems. If you are considering using Linux either in your phones or in-house I can offer specific expertise.

Please do not hesitate to contact me if you need further information, and I look forward to discussing your requirements in more detail in the near future.

Yours sincerely, [name]

\</comment><comment></comment><comment>-

EXAMPLE 3: BACK-END DEVELOPER FOR INTERNET START-UP

Dear [company-name],

I'm very interested in the Back-end Developer job at [company-name] advertised on [job-site-name] and on your website.

In particular, I can offer [company-name]:

\- very experienced developer, including many years of PHP, JavaScript and MySQL experience

\- expert in Linux, including Apache and system administration

\- experience of building successful communities - I've been instrumental in evolving [sports-website] into the most popular website for [participants] in the world with over [X] thousand members

Please find my CV attached for your consideration. You can find code from my personal projects, many including PHP, AJAX, XML and geographical services, at: [link-to-my-github-page]

I do hope that we meet to discuss your requirements in more detail.

Yours faithfully,

<comment><USER15> This is exactly right.

The job ad is about the company. Your resume is about you. The cover letter is supposed to highlight how one matches the other. These examples are fabulous.

A generic cover letter is worse than useless.

</comment></comment><comment><USER16> Be You Be You Be You Be You BE YOU.

These people will spend most of your waking life with you. If they don't want _YOU_ , the real person, you don't want _THEM_ , the uptight company.

The cover letter is obligatory, not because they want it, but because YOU need it to do anything other then be a set of keywords.

Talk about why you're a good fit for the role they're asking. Look at their company site and see what culture they claim to have, and write to it. Write how it will make you productive and encourage you to bring value.

Best of luck. If you become a startup guru, hire me, I'm hard working and a good lateral thinker...

<comment><AUTHOR> Haha, I'll keep that in mind.

Thanks for the advice. It makes a lot of sense.

<comment><USER16> No worries, let me know when you're successful ^_^

</comment></comment></comment><comment><USER17> Whatever you do, don't wait until your inhibitions are down before sending the cover letter and resume. If you can't help but hem and haw over the cover letter, you're not going to submit anything until late in the day. Then it will be near bedtime, and you'll be more likely to put stupid obnoxious- sounding things in the cover letter. If you have this problem, it might help to make a game out of writing a simple, mediocre, polite cover letter, instead of trying to make a good cover letter. My response rate went from 0% to 100% when I did this. If you're not a naturally obnoxious person, maybe you won't have this problem.

</comment><comment><USER18> My wife, who hires people, complains about this point all the time. Unless you've been a serial entrepreneur since age 10, keep your resume to one page. You're too young to have a resume longer than a page.

<comment><AUTHOR> Thanks for the advice. Luckily, mine is only one page.

<comment><USER19> You probably know this already.. but #1 advice for someone your age, I find, is: _don't list "reading" or "swimming" (etc) as an interest to fill space_ :)

more: <http://www.errant.me.uk/blog/2010/05/how-to-write-a-good-cv/>

</comment></comment></comment><comment><USER20> Writing a good cover letter is like writing a good sales letter. Show the prospect that you know who they are, you have looked at the situation (you absolutely must convince them of this), and that you have the solution.

I suggest reading about Leonardo da Vinci's resume for a good example: [http://www.theladders.com/career-newsletters/leonardo-da- vin...](http://www.theladders.com/career-newsletters/leonardo-da-vinci-resume)

Something else to keep in mind, the interview process is not always about winning/losing--it's about finding the best candidate. You might be extremely qualified for a position but not come across as what the company is looking for. For example, the last time I was interviewing people, I was looking for someone who would follow my instructions. My top five applicants were extremely qualified (overqualified even). I went, not with the most overqualified candidate, but rather the one who I knew I could mold into what I needed.

Remember, you're involved in a transaction. You're selling your time. Make sure you know what you want to sell and realize that not everyone is buying exactly that.

<comment><USER21> > the interview process is not always about winning/losing--it's about finding > the best candidate.

Exactly, and this has many variations. On one of my recent interviews for a contract position, about 3/4 of the way through when we were discussing technical details in more depth, I realized I didn't have the proper background for the project, so I said that I would recommend they contact the headhunter to see if they had someone with more experience in this particular technology. They asked me if I was interested in learning it (they seemed to be looking for a reason to hire me), and I said sure, I'd love to, but in my opinion it was in their best interests to hire someone that already knew the technology well.

If I wanted to I could have taken the job, learned a new technology, and got overpaid for it. But I believe being brutally honest will pay off in the long run - some people will remember you some day, and you will reap the benefits.

</comment></comment><comment><USER22> I recently went through the song and dance of job searching, and I'll soon be happily employed with a great company in SF. My resume isn't spectacular, but it's good (decent GPA at a good school). To my surprise, some amazing companies granted me interviews, and I believe it had a lot to do with my cover letters (like I said, not a spectacular resume).

Understand that my opinion is that of a junior engineer (1 year of experience).

A strong cover letter ought to be engaging, to the point, clear, and genuine. My general strategy leveraged casual language, an honest portrayal of myself and my desires, and dollop of self-deprecating humor. I got some friends to review my cover letters, and made sure that they laughed. I figured, if the recruiter enjoys my cover letter, my application won't get dumped immediately.

YMMV. This might be awful advice, but it worked for me. Good luck!

</comment><comment><USER23> Recruiters and companies are looking for different things. The best thing that you can do when applying direct to a company, is to show what you know, show your enthusiasm (perhaps through one or two choice free software projects, but not so many that you'd look overstretched) and what you learned at college.

For recruiters, you need to look at what the job description is after and try to match your CV as closely to it as reasonable without looking like you're lying (btw don't lie, you will get caught out). Stress your strengths where they're relevant to the role, but your cover letter is likely to be ignored by a recruiter, or rather not entered into the database so I'd keep it short and sweet and focus on matching acronyms and technologies to your experience in your CV.

<comment><USER24> Better yet, avoid recruiters completely - especially right out of college.

</comment></comment><comment><USER25> Anyone who sends me a cover letter or resume typeset with LaTeX moves to the head of the line.

</comment><comment><USER26> I like to think that the things that will get me hired at a company are the pet projects that I choose to work on (rather than a degree, or "notable" classes I've taken).

What's worked best for me is just emailing startups I genuinely want to work for with a one-sentence description of me, and a question (wanna meet up? is a summer internship a possibility?). I also include a sentence describing the coolest thing I've worked on (inspired by the SuS application).

It's worked so far (and I'm only a freshman, I'm sure you have way more to talk about!).

</comment><comment><USER27> It depends on the company but here's a few things I've come across that have paid off. (several of these have been said):

Be genuine. Don't bullshit. Tell them why you want to work for THEIR company. Discuss why you'll benefit them or what you'll bring to the table. Mention your skills. Be conversational and convey a little personality. If the company is a laid-back startup type, don't be afraid to show your quirky side. Show enthusiasm. Tell them why you're different.

</comment><comment><USER28> Adopted from _What Color is Your Parachute_ 's "real questions behind every interviewer". A cover letter with one paragraph per point has got me an interview every time (before becoming independent of work.)

      1. why them?
      2. are you competent?
      3. are you special?
      4. will you fit in?
      5. can they afford you?    // I leave this one out for a cover letter :-)

It's not a bad template for marketing anything.

</comment><comment><USER29> Make it short, sweet, and simple.

Show me you took 10 minutes seeing who are are and what we're about, and that you didn't just spam your cover letter and resume to every job posting you could find.

Talk to me like I'm a human and not some robot checking our mail box, checking off that you've done 6 years of whatever-it-is.

Show me you have passion and you give a damn, and that you're not afraid of hard work, but still carry a sense of humor about you.

</comment><comment><USER6> It easier to write a good cover letter, if you have a good reason to write it, or for the recipient to read it.

To give a boring example: If you want a software development position, experience with software development is a plus. If you can tell in your cover letter (and resume) that you have already worked on, say, an open source project, they are more likely to be interested in you.

<comment><AUTHOR> Thanks. That is why I am really trying to find the time from school to contribute to an Open Source project. I would love to put something like that on my resume.

<comment><USER6> Just choose any project you like, and ask for pointers. There's usually a list with easy things to get started. Like fixing typos, easy bugs, removing warnings. Even just doing trivial things can count as `contributed to an open source project', and we be more than you (and most other people) did so far. Also it will ease you into doing more interesting things later on.

</comment></comment></comment><comment><USER30> Honestly, I've never written nor received a cover letter. Are you sure it's necessary?

<comment><USER31> I wrote a few early in my career, but not since then. I don't think I've ever seen one for any candidates I've interviewed - just resumes.

</comment></comment><comment><USER32> * Be Honest. Show what you are. * Provide links to your work which you think are Best. * Don't write crap, they can easily make it out. They were also student once. * Don't make grammatical mistakes. * Keep it short and to the point.

</comment><comment><USER33> View your cover letter as another opportunity to sell yourself and get a call back. A resume has many details, but lacks personality. The cover letter is your chance to differentiate yourself from other candidates.

</comment><comment><USER34> Express passion for what the company does and how they do it within the context of the position being applied for.

Think of it combined with your resume as a marketing plan. Why you as opposed to someone else and address anything that stick out better or worse in your resume.

</comment><comment><USER35> These days, to me "cover letter" means what's in the body of the email, and the resume is attached, ideally as a PDF. I prefer "cover letters" that are short (one paragraph) and don't read like it was copy-pasted. Honestly, I've grown tired of reading that a person is a "hard worker" or a "great problem solver", stuff like that... just tell me why you find the company interesting enough to ask for a job there, to put 40+ hours per week of your life into indefinitely. Perhaps this doesn't work for emails that are going to an HR person or destined for a database but I know this is what I look for personally, as a software engineer interested in hiring quality software engineers.

Also, the resume should be concrete about experience. I don't like reading about what your _team_ did, instead talk about what _you_ did. I don't like reading that a project that "made stuff better", I want to know by how much exactly. I don't like reading projects that sound like they were accomplished with magic fairy dust, I like to see specific tools, techniques, programming languages, and so on. My resume in fact used to be more generic, but the feedback I got on it from my friends made it a lot better (they were also former coworkers so they knew some of the stuff and even remembered some projects I'd worked on that I had forgotten). I said what I did, what tools I used, what goals I hit personally.

<comment><AUTHOR> So, would you suggest I convert my resume to PDF? I have always sent it as a word doc...

<comment><USER36> It completely depends on who you're sending it to whether Word is an acceptable format, but PDFs are pretty much universally okay. If your Word doc is forwarded to someone who uses OpenOffice, your formatting may get all messed up. They might not have the right fonts, etc. PDFs are the safest choice.</comment></comment></comment>