How I Teach Gerrymandering - <AUTHOR> http://mitesp.tumblr.com/post/130793404248/how-i-teach-gerrymandering <comment><USER2> I haven't read the article yet, but I was halfway expecting to see this picture:

[https://upload.wikimedia.org/wikipedia/commons/thumb/5/55/Ho...](https://upload.wikimedia.org/wikipedia/commons/thumb/5/55/How_to_Steal_an_Election_- _Gerrymandering.svg/2000px-How_to_Steal_an_Election_-_Gerrymandering.svg.png)

<comment><USER3> That picture is great: by basically eliminating the geography it makes the math clear. If someone understands this picture, it will be easy to get a good idea about the more complicated real-world cases.

<comment><USER4> It's not a great picture. For one thing, it's unnecessarily provocative (Title: "How to Steal an Election") and not-so-subtly partisan: The use of blue for the 'natural' winner and red for the 'thief' is clearly meant to echo (and comment on) contemporary U.S. politics.

Yes, gerrymandering happens, and yes, it currently disproportionately benefits the GOP: Some lucky wave election timing put them in charge of more states during the post-2000 and post-2010 Census redistricting. But the benefit they get over their popular vote share is on par with the benefit the Democrats saw in the '90's[1].

And the benefit isn't that great. It's good for maybe 8 seats[2], far short of the 30 seats Democrats would need to swing to regain the majority.

The problem for Democrats in the House is that their districts are _too natural_ : It makes sense to put urban voters with similar needs and issues into Congressional districts with each other, rather than diluting their influence with very different suburban areas. The Voting Rights Act even made concentrating minority votes to create majority-minority districts mandatory in some areas. But the result is winning Chicago wards 95-5 while losing out in the 'burbs 55-45. To have a chance at consistently winning the House, Democrats need to draw districts that look an awful lot like the 5-0 image in that picture. Practically and politically, that's a non-starter. That's why ITT and elsewhere you see calls for multicandidate districts, proportional statewide representation, etc. It's not to "fix" gerrymandering, it's to fix the "problem" of concentrated Democratic votes.

[1] [http://www.centerforpolitics.org/crystalball/articles/gerrym...](http://www.centerforpolitics.org/crystalball/articles/gerrymandering- the-u-s-house-1972-2014/)

[2] [http://www.nytimes.com/2014/09/07/upshot/why-democrats- cant-...](http://www.nytimes.com/2014/09/07/upshot/why-democrats-cant- win.html?_r=0)

<comment><USER5> Furhtermore, the unit is "precinct", not "voter", so the starting input is already subject to gerrymandering.

And the chart ignores the reality that districting serves an important purpose: to give minorities (however defined) a non-zero voice in the representative body.

<comment><USER6> I thought that "make sure the black people have a vote" thing was a pretty clever way to disenfranchise them. One vote has very little power and you have sequestered most of the constituents behind that one vote, so the people with actual power (the majority of the other representatives) don't have to worry about them.

I am amazed that people still consider it a good thing. Or that they ever considered it a good thing.

</comment></comment></comment></comment></comment><comment><USER7> This is a great way to teach gerrymandering. It also illustrates the problem with 'Party X is evil, Party Y is not.'

Political parties (stripping away all else) are groups of people who identify with one another. Take that one step further, and they're groups of people that identify with one another _and believe their group is the best one to represent the whole_.

Or, if you are less idealistic, they want to win (I subscribe to the idea that they want to win because they think their way is the best way and they like the power).

Once you believe those few things, it's easy to understand why politicians aren't evil, they're just vested in their group; in the same way you'd be vested in your group of friends vs. some random sampling of people you met on the street.

Does this make our current set of political problems insurmountable? No; we just have to mold the system so that no one party can have absolute control even if they control the central government. Maybe by delegating a small set of powers to the central government and keeping most governing done at the local level. Maybe we could call it a constitutional republic?

<comment><USER8> One slight correction to your "less idealistic view": It's not just (or at all) that one party believes they are the best to represent the whole, it's that they believe the other(s) are HARMFUL.

Ergo, disempowering that other voice is in everyones best interests.

While people can often do "evil" things (manipulative, etc), they usually do them for "good" reasons, at least according to their internal rationalizations. [citation needed :) ]

<comment><USER9> maybe we should just set up states. half blue, half red. each get to do what they want, and everyone blue or red moves to blue or red state. We come back in 50 years, and see what's up. The blue states are spending gobs on tuition and everyone is still stupid, and the red states, I don't know someone help. I'm colorblind

<comment><USER10> The US _has_ been mostly self-sorting for decades now. It's one of the reasons politics is so polarized right now and Congress is incapable of governing without a looming emergency.

It's never as easy as just looking at the outcomes. As with any type of sociology, it's not possible to force large sets of people to do identical things for valid control+experimental groups.

Methods of taxation, tax rates, size of state government, expectations of government services, natural resources, macroeconomic conditions, talent of the population, and natural economic benefits all distinguish different states. There's really no effective way to control for the large variety of conditions across many states.

</comment></comment></comment></comment><comment><USER11> I'd heard the term before but never looked into it – it was useful to have something to prompt me (partially because this article doesn't even mention what it is). It's when the government manipulates electorates to increase their chances of being re-elected. As someone in the UK this is something I've wondered about a lot over the last year.

If you don't follow UK politics, we have a government that was elected with 51% of the seats on 36.9% of the votes.

I found this article which explains some of the mechanisms used to manipulate the outcome of these elections.

[https://medium.com/@georgetaitedwards/is-britain-now-too- ger...](https://medium.com/@georgetaitedwards/is-britain-now-too- gerrymandered-to-be-a-genuine-democracy-fe2fcbd95d14)

<comment><USER12> UK election outcomes have nothing to do with gerrymandering and everything to do with being a multi-party democracy using a FPTP electoral system, which tends to boost the representation of leading parties at the expense of smaller parties. Indeed, you'd actually _need_ gerrymandering for such a system to have any hope of returning seats broadly in proportion to vote share.

(the conspiracy theory about disenfranchisement advanced by the blog article is orthogonal to the tendency of the FPTP electoral system to distort shares of actual votes. It's also a little difficult to take seriously an argument which suggests that a short-lived poll tax abolished in 1991 would be a significant factor in the 2015 election. Especially when the party that enacted it spent 13 of the intervening years out of power, with the electoral system and distribution of voters heavily favouring their rivals at the time. The article is equally ludicrous in suggesting Labour would be _disadvantaged_ by a fraction of voters in strongly Labour-supporting boroughs being under financial pressure to relocate)

<comment><USER13> > UK election outcomes have nothing to do with gerrymandering and everything > to do with

> being a multi-party democracy using a FPTP electoral system, which tends to > boost

> the representation of leading parties at the expense of smaller parties.

More precisely, FPTP tends to boost the representation of leading national _and local_ parties (the latter being best exemplified by the SNP) at the expense of smaller national parties. Small local parties are usually toast anyway even in proportional systems due to thresholds.

During the 2015 elections the system worked exactly as designed, by favoring parties that are strong in one or more nations of the UK at the expense of parties that are a bit meh in all of them.

<comment><USER11> FPTP is heavily biased though - you end up in a situation where there's little point voting the way you want, because it won't be effective.

Take the Greens, 3.8% of the vote with 0.15% of the final representation. And I bet that 3.8% would actually have been higher if people had felt like they wouldn't be throwing away their vote.

I understand your sentiment, but I think "bit meh" is maybe a little uncharitable. Half of my voting life has been in NZ (mixed member proportional) and the other half in the UK (FPTP) – so I have a reasonable understanding of the drawbacks of the systems.

<comment><USER14> "you end up in a situation where there's little point voting the way you want, because it won't be effective."

How much of that situation is due precisely to that mindset?

It seems like circular logic to me.

        10 Why not vote for the guy you want to win?
        20 Because he won't get enough votes
        30 Why won't he get enough votes?
        40 Because not enough people will vote for him.
        50 So why don't more people vote for him?
        60 goto 20

FPTP is arguably broken, but people engaging in "tactical voting" isn't helping matters. You're supposed to vote for who you want to win, period.

<comment><USER11> Really? I'm in an area where one of the seats was hotly contested. I, like thousands of others swapped votes on a website where we pledged to vote on behalf of other people.

My local candidate narrowly won (the one I voted for, not the one I chose) – had a number of us not swapped votes, maybe that wouldn't have happened. For me that's a bit of a win of tactical voting - at least people were able to have some influence.

Another thing to note is that party voting and candidate voting are all rolled together. I actually wanted my local guy to win, but I didn't want to vote for him because I wanted to vote for a different party.

That's all very suboptimal.

<comment><USER14> Out of curiosity - usually party candidates deeply reflect their party platform. Under what circumstances would you want to vote for a party but not their representative candidate?

<comment><USER11> The leadership of the Greens are/were most closely aligned with my values – certainly at the time when the Blairites were still heading up the Labour party. So I wanted to vote Green as the party.

My local Labour representative, however, is a pretty good person to have looking out for the area. He was born and raised in the estates opposite my house - to a working class immigrant family, no less. In his time representing the area he's done a lot of good and he has a lot of experience. For me, that's all good - but his party values of continued austerity and benefit cuts don't sit well with me.

You see my conundrum? :)

<comment><USER15> your conundrum is that you have a distinctly minority opinion, but you would like to influence the outcome "more than your share"? so, instead of advocating unequal income distribution, you favor unequal outcome?

<comment><USER11> Erm, no, not in the slightest – well, I think not in the slightest – I'm going to be totally honest, I don't really understand all of your comment.

But I don't want to influence the outcome "more than my share". I'd like everyone to have an equal share of influence. More than anything I'd like the political process to be one that everyone is engaged in and ultimately moves the country in a direction that is good for everyone.

</comment></comment></comment></comment></comment></comment></comment></comment></comment></comment><comment><USER16> To anyone interested in the subject, I'd strongly recommend playing the Redistricting Game [0] which takes you through many of the processes outlined in the article

[0] - [http://www.redistrictinggame.org/](http://www.redistrictinggame.org/)

<comment><USER17> Seconded - great example of how a game mechanic can be used to highlight how real world incentives play out.

</comment></comment><comment><USER18> In the UK under FPTP atleast, I can imagine there is also an effect or reverse gerrymandering or similar.

When it comes round to elections, generally the result of the majority of seats is already known, so they're classified by parties into stronghold (ours), stronghold (theirs), marginal.

When your located within a Labour stronghold, your unlikely to see as much pro-Conservative media, as they are better off spending their time campaigning in marginals and defending their reputations in existing strongholds.

Surely, this effect simply compounds strongholds, making them even harder to change hands overtime, without a significant event to cause the public opinion to shift significantly (e.g. the Scottish independence referendum).

The only way to fix such a problem, would be to randomise the boundaries each election, but this would cause various extra complexities.

<comment><USER19> It could also be fixed by not having any such boundaries whatsoever.

<comment><USER18> This leads to a situation whereby elected representatives are assigned local constituencies, rather than having any particular link. Or atleast that's the argument which is always returned when people suggest a full PR system.

Personally I think larger multi-member constituencies under STV provide the best compromise.

</comment></comment></comment><comment><USER20> Alternatively, by switching to popular vote, this problem, and many other problems could be avoided entirely. Above all things, is it fair that a voter in Massachusetts has exactly zero (and I mean exactly zero, not their fair 1/3.2e8 share) say over the election, while a voter in Ohio carries a lot of weight?

<comment><USER21> There's a very good reason why we don't use the popular vote for Presidential elections.

It's precisely because without the electoral college, small states would receive zero attention on national politics.

Why would anyone spend time courting votes anywhere north of New York when there's a much bigger payoff to be had working the rest of the eastern seaboard and the west coast?

To use your examples of Massachusetts and Ohio, why waste time on a campaign stop in Boston when you can hit Columbus? Columbus has a much larger population and one can also hit Detroit and Indianapolis in the same day to maximize their face time with the public.

Going to a popular vote will have consequences that people really need to thing about.

<comment><USER22> This logic confounds me. Is there some inherent reason to disproportionately focus our national choices on the areas of the country with the fewest people (rural areas)?

I've lived in both the most rural and urban parts of the US, and it's clear that the current system massively discounts the will of people in urban areas in this stated endeavor of providing some kind of rural / urban "balance".

Depending on what you consider urban, the US is roughly split 80% urban, 20% rural.

To me, it seems unlikely that a ground effort in rural America would be completely neglected in a proportional system. If a party did neglect the ~20% of rural voters, it would seem to put itself at a disadvantage to other parties, especially given the lower relative cost of rural media markets.

We see the same problem with the Senate, where populous states such as Texas and California stand at a remarkable disadvantage to Montana and Wyoming in terms of representation. The voice of a constituent in Wyoming is 66 times that of one in California.

How can we call this system representative?

<comment><USER21> I don't see the composition of the Senate as a problem. I see it as balance. More populous states get greater representation in the House. The Senate serves to prevent more populous states from steamrolling less populous states.

It's a feature, not a bug.

<comment><USER23> Since the passage of the 17th amendment, Senators don't represent states, they represent people. And some of those people have vastly disproportionate representation by Senators.

<comment><USER21> The Constitution only provides for proportional representation in the House.

There were disparities in population during ratification. This was a necessary compromise to address the concerns of the smaller states.

The system is working as intended.

<comment><USER23> I'm well aware of the reason it was created that way. I just don't think it makes sense in an era where 3/4 of the states are just arbitrarily chosen chunks of land rather than formerly sovereign entities.

</comment></comment></comment></comment></comment></comment></comment><comment><USER24> The best solution to Gerrymandering is the Alternate Vote. CGP Grey has a great video explaining it: [https://www.youtube.com/watch?v=3Y3jE3B8HsE](https://www.youtube.com/watch?v=3Y3jE3B8HsE)

He also has a great "what is gerrymandering" video that illustrated this same idea, but with fun animals. [https://www.youtube.com/watch?v=Mky11UJb9AY](https://www.youtube.com/watch?v=Mky11UJb9AY)

<comment><USER25> > The best solution to Gerrymandering is the Alternate Vote

This is false. Alternate vote is still susceptible to gerrymandering. It even says so in the video you linked (@3:00).</comment></comment>


Show HN: Musi - <AUTHOR> https://itunes.apple.com/us/app/musi/id591560124?2 <comment><AUTHOR> Hey HN,

So I'm a music lover. I regularly have binges where I'll play the same song over and over for hours - especially when I'm in a coding groove and just hammering through work. There are also times that I find a song that relates to a friend's situation, whether it be a break up or some sort of success that they may have had in their life. If I ever want to share any of this music, I have a bit of a dilemma on my hands. How can I even do this? For the last while, I've resorted to finding the song on YouTube and texting a link to the song, or tweeting a link to it. This approach gets tedious though. Transferring a YouTube link to my phone is also incredibly tough to do. From what I've found, there's no actual good way of sharing music with others.

This is why I built Musi.

When looking at music networks and the state of music, generally you think of big players such as Spotify or Pandora. However, these networks have song limitations and if you're like me and live in Canada, it's extremely tough to access them at all. YouTube, on the other hand, is available nearly everywhere and has arguably the largest library of music available. If you're an artist, you or someone else has probably uploaded your music to YouTube.

Musi takes advantage of this and uses YouTube as the basis for its music streaming. Integrated within Musi is also a friend finder, inbox, and friends list to manage the music that is sent to you. Musi even lets you share playlists with others. Since all of the music is online, playlist and song sharing takes milliseconds. When receiving anything as well, previewing and adding songs to your library are just one tap actions.

It's simple, social, music. A concept and service that I've never seen before until now.

[http://feelthemusi.com](http://feelthemusi.com)

[https://itunes.apple.com/us/app/musi/id591560124](https://itunes.apple.com/us/app/musi/id591560124)

<comment><AUTHOR> Also, I hate mentioning my age. However, I can't deny that it's catchy.

<comment><USER2> To be honest it comes off as (at least a little) arrogant in my opinion. It's one thing if I read something along the lines of "This kid is 17 and he's trying to change the music industry" [posted by someone else] because that would be a third party endorsement of your ambition/drive, as well as highlighting your age. It's another if you're boasting about it yourself.

Then again, I'm in my mid-20s so maybe I'm just grumpy that I wasn't as motivated or directed at 17 as you are :)

<comment><AUTHOR> I'm extremely humble by nature, and the original title took a little bit of nerve to pull off, as did the paragraph. It attracts views though, which is what marketing is about.

</comment></comment></comment></comment><comment><USER3> Your creativity is evident in this app and your reflections on music availability match those of others of your generation. Specifically, turning to YouTube for music. It is free, highly available and people are making great playlists.

It is curious that YouTube may have better and broader licenses from the various copyright holders, SoundExchange, SOCAN, etc... that Spotify, Pandora, et al. Somehow I doubt it.

There is a stackoverflow discussion worth a read on the use of the YouTube API for music playback.

[http://stackoverflow.com/questions/2312179/can-we-play- only-...](http://stackoverflow.com/questions/2312179/can-we-play-only-audio- using-youtube-api-for-iphone)

I wish you success and I like the app. The powers that be probably will not agree with its function and lack of appropriate streaming licensing, but that is a conversation to have over a medicinal beer or scotch.

</comment><comment><USER4> The one problem I had right away is that you're asking me to create an account. Why?

You're streaming music from 3rd party services. Search functionality is an API call. Settings and playlists can be completely stored locally on the device and backed up to iCloud. Sharing used 3rd party services. I don't see the need for an account.

The app looks neat from the screenshots, but offers no functionality until I sign up. Maybe there's some neat thing the app does that requires a login, but I have no idea what that is.

I like the logo. Love the premise. Design looks nice from the images.

<comment><AUTHOR> Before the 4.0 update, Musi had optional accounts. However, the conversation rate was basically zero. Now, I'm trying to promote inter-app sharing of music which requires accounts. For the utility that the app provides and the pricetag, a small sign up is quite appropriate in my opinion.

</comment></comment><comment><USER5> I actually use this app when I want to stream handpicked music from youtube. Great app btw.

<comment><AUTHOR> Thanks!</comment></comment>


Why Developers Hate WordPress - <AUTHOR> https://content.nanobox.io/why-developers-hate-wordpress/ <comment><USER2> I think most developers just want a Sinatra-style blog cms so they can just hack it to their hearts content.

</comment><comment><USER3> I checked to see if this article was hosted on WordPress. It's not.

</comment><comment><USER4> link is not working

<comment><USER3> I just tried it, and it worked for me. Maybe they fixed it.</comment></comment>


How much equity should you give a co-founder? - <AUTHOR> http://nesheimgroup.typepad.com/my_weblog/2007/06/adding_a_missin.html <comment><USER2> If he's really a cofounder, meaning you haven't even incorporated yet, and he has the same qualifications and is going to work as hard as the other founders, you should give him pretty close to the same amount of stock.

So that's actually an easy question. The harder question is how much stock to give to your early hires.

<comment><USER3> But what if you have already done the site, got 1000+ users, got some press etc.

Yeah. Ok. you haven't got incorporated yet, but based on the man hours spent, isn't it unfair to give the late-coming guy 50%?

<comment><USER4> Well, in that case you might want to give the existing work a certain value (say 30%), and split the rest evenly.

</comment></comment></comment><comment><USER5> Weird question. How much value is he going to bring in? How critical this guy is for your organization?

Do you expect us to decide for you? :-) Okey. Give him 43.75% and a written guarantee of a personal parking spot (a-la Mr. Lumberg in "Office Space") when you become next google :)</comment>


Karnaugh map - <AUTHOR> https://en.wikipedia.org/wiki/Karnaugh_map <comment><USER2> Learned those in undergrad .. was in Chapter 1 of our textbook .. Computer System Architecture, Morris Mano. Have used it twice with great results in my career.

<comment><USER3> Morris Mano, ha! Thanks for reminding me of that author, it's been a long time.

<comment><USER4> This and Albert Paul Malvino are two of my personal favorites!

</comment></comment></comment><comment><USER5> Thanks! I remember learning this in introductory circuit design 15 years ago, but forgot about it since. I actually needed it a few weeks ago, when I was trying to simplify a complex boolean expression in my C code :\

<comment><USER4> Quine–McCluskey algorithm might be of help to you.

<comment><USER6> QM is not as satisfyingly elegant as a Karnaugh map, but more practical in most cases. QM scales while Karnaugh maps do not.

</comment></comment></comment><comment><USER7> As part of my bachelor thesis I build a tool for editing Karnaugh maps showing the map and the resulting circuit side by side:

[https://thesis.laszlokorte.de/demo/kvd- editor.html](https://thesis.laszlokorte.de/demo/kvd-editor.html)

(click on the question mark icon at the top to get some brief usage instructions)

</comment><comment><USER8> One of the things in the minority in college syllabus that gives you joy and also the realization that you are learning what you like learning.

</comment><comment><USER9> Karnaugh maps are often made out as something special, but it's nothing more than a graphical brute-force method. Thus, useful for pen-and-paper up to 5-6 bit logic functions but no better than exhaustive testing for a computer. There seems to be little emphasis on the "why" in Computer Architecture courses.

</comment><comment><USER10> Question for folks here who've worked on these 1 Billion+ transistor chips. How relevant is stuff like K-Maps in your day-to-day work? Is this stuff done by tools like Mentor-Graphics and Synopsis or do folks still lay this out by hand?

<comment><USER11> It depends on what you're doing. Certainly for standard design you won't be looking at Karnaugh maps. You trust the implementation tool to deal with the logic minimisation for you.

In certain cases say a piece of logic on the critical path that's preventing your design clock as fast as you want or something complex that you know requires lots of effort to meet your ppa (power, performance, area) targets, say an ALU or part of an FP unit, you'll be doing more manual optimisation. However even then you're probably not using a Karnaugh map, instead using more sophisticated techniques and then using specialised programs to do these for you (Espresso being the classic example [https://en.m.wikipedia.org/wiki/Espresso_heuristic_logic_min...](https://en.m.wikipedia.org/wiki/Espresso_heuristic_logic_minimizer)).

There's also things that simple logic minimisation doesn't take into account like fan out (how many things you have hanging off a particular output) and wire distance (a significant proportion of the clock cycle can be taken up in waiting for signals to propagate if the logic is spread across the chip). A hand crafted piece of logic is likely to use a mix of 'pure logic' type optimization techniques (that are simply trying to minimise logical operations) and the engineer using their judgment to work out what arrangement of minimised functions leads to the best implementation result.

</comment></comment><comment><USER12> I've used these together with Quinn McCluskey and Petrick's method for finding the minimal set cover of some of the problems I was facing.

<comment><USER13> Could you make the problem you were solving into a non-copyright infringing question and post it on here please?

</comment></comment><comment><USER14> I remember Karnaugh diagrams fondly; they were pretty much the first thing covered in my circuit design class which really made sense - and gave me the boost I needed to try to wrap my head around the rest of the curriculum, too.

Haven't designed any circuits in my career, but have on occasion used them to simplify my horribly inelegant boolean expressions before committing them to Siemens' S7 SCL.

</comment><comment><USER15> I only took one CS class in my life, "Cybernetics" taught by David Huffman. I clearly remember karnaugh maps (25 years later) because on the final, he gave an example where you had to find a collection of 4 1s in the corners of the map (the map is symmetric on the edges/corners), and I got that one wrong. Sigh...

</comment><comment><USER16> That was my first encounter with computers world even before I touched a real computer, playing with these maps and drawing combinatorial circuits with gates, under the guidance of an old soviet book of Mir publishers.

</comment><comment><USER17> I remember it being quite a revelation as to how discrete digital circuits can be optimised Our Uni class execise revolved around designing a drink vending machine operation with a minimum number of logic gates.

<comment><USER18> Yeah, I have a similar recollection of lectures at college 30 years ago, and what seemed to be a hugely complex system being reduced drastically in complexity by the realisations contained within the maps. It was obviously a contrived situation that the lecturer had thought of, but there were many 'lightbulb' moments across the room in that hour.

</comment></comment><comment><USER6> If you visualize a Karnaugh map (more generally, a truth table) as a small tabular chunk of static RAM, that's essentially the fundamental logic gate building block of an FPGA.

</comment><comment><USER19> Oh I remember this form my Digital Electronics course but I have never used them since then Because I haven't used actual pure combination logic since that course either.</comment>


Ask HN: Anyone here still using Gulp? - <AUTHOR> <comment><USER2> only when i have to</comment>


Reversing the effects of long programming sessions - <AUTHOR> https://www.poppastring.com/blog/ReversingTheEffectsOfLongProgrammingSessions.aspx <comment><USER2> We need to restrict the amount of hours we spend in front of computers per day and take weekends completely off. There are so many downsides: blue light that damages your vision, lack of exercise, depression and other disorders, missing out on social life, etc.

There is a direct relation between productivity and having a life put together. Not taking care of ourselves (programmers) could have lead to disaster: mental disorders, burnout, leaving a well payed job, etc.

Lately I've stop giving a damn about deadlines like I used to. Money is nice but mental health does not has a price. The moment you enter the rabbit hole of antidepressants you're already ripping your soul.

<comment><USER3> > blue light that damages your vision

Can anyone explain to me how looking at a computer screen is not several times less harmful than spending time outside from a lifetime-blue-light-exposure perspective? The sky is blue and natural light has a blue component in probably about the same proportion as white light from a screen.

Maybe I'm wrong — and I'd like to find out if I am — but this whole blue light scare really just feels like a weird bandwagon.

<comment><USER4> I think you're right. There was just an article about blue light speeding blindness, but the flux author chimed in and said screens are less than 5% of the hazard weighted irradiance of the sky. [1]

I'm not totally sure what that means honestly, but I think we're OK.

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

<comment><USER5> Though you don't stare at the sky for hours.

<comment><USER4> I did on shrooms once. It had some nice patterns because my pupils were so dilated. Thankfully not blind.

<comment><USER6> I don't think the patterns are from your eyes behavior mainly but rather misfiring nerves directly thanks to the toxin. Noise transformed by visual circuitry into patterns, as patterns are what it deals in on the perceiving end.

</comment></comment></comment></comment></comment></comment><comment><USER7> I hate talking to people after a long programming session. I simply can't do it, and I'm normally very social and outgoing. I just stand there and it probably looks like I'm gazing off at something; I'm just not there.

I've tried doing many things after a long session.. for me, the only remedy I've found is time. I just need a few hours.

I also produce music. This doesn't help because producing is very similar to programming in many ways. Puts me right back in the same state.

Having three+ drinks certainly helps... but not healthy nor sustainable on a daily basis.

<comment><USER8> Yeah, I read the author's comment about playing music to relax after programming, and I immediately thought I might do some programming to relax after a serious session of music performance/recording. Frankly, playing a gig leaves me more intellectually/emotionally drained and dysfunctional than a long programming session does.

<comment><USER9> One of the last things I want to do being mentally exhausted, is listen to music. I relax by doing busy work. Water the plants, removing weeds, vacuum, walk/hike, ect. things that require my attention, but not any significant processing.

<comment><USER8> Playing music is a completely different experience for me than listening to music. I actually listen to recorded music (unless I'm making a recording, which is basically playing) a lot less than most people would think. But I play almost every day.

I also have a couple of different playing modes - public performance (usually with bands), and private improvisation. The improvisation is a critical part of my mental health. The ongoing stream of planning and surprising myself on the fly is probably the purest mental flow I experience.

<comment><USER9> I think that if I played guitar all of my life, it would be relaxing to just sit and jam a bit for myself.

</comment></comment></comment></comment></comment><comment><USER10> I've found that the most important thing is not engaging in marathon sessions, full stop. My code is better, I'm healthier, and I get more done per working minute.

Take a break every hour or so, minimum ten minutes, and step away. Make coffee, ponder the infinite, pet your cat, listen to some Chicago or Slayer, whatever suits your preferences.

<comment> core-questions > Chicago or Slayer

Really covering a wide gamut here!

<comment><USER10> Mozart to Mötley Crüe, you know how it goes.

</comment></comment></comment><comment><USER11> In this last project I was in, which was a bit of a death march - we (Team) ALL got to the point of incurring bizarre sleep disturbances and other cognitive/emotional disturbances:

It would take 3-4 hours once home at our set stop time to "shut off" our brains from thinking about what we were working on - and switch over to "being home" mode and interacting with spouses etc. without being irritable.

We also all had disturbed sleep from "programming dreams" once we could shut our brains down and actually fall asleep.

This is nothing new, I know - but it was intriguing (and frightening) to see these effects manifested consistently across our entire team.

<comment><USER12> I have "programming dreams" every night.

Probably isn't healthy, but I program all day at work. Go home and spend a few hours with family, then program an additional few hours every night. Sometimes I fall into the rabbit hole and emerge at 2-3 am after finally finishing what I started. Go to bed, and rinse and repeat the next day.

My brain just won't shut off at this point, but I enjoy absolutely everything about what I do.

<comment><USER13> Same here, terrible sleep when all you're doing is attempting debugging or refactoring without a keyboard. I am sure my short-term memory of non- programming related activities is severely affected because no matter where I am, I am coding, redesigning or imagining shit that is causing that hard to find memory corruption.

Movies are my unwinding method. And daily 1 hour walks.

<comment><USER12> > I am sure my short-term memory of non-programming related activities is > severely affected because no matter where I am, I am coding, redesigning or > imagining shit that is causing that hard to find memory corruption.

same here. I have the worst short-term memory for non-programming things ever.

</comment></comment></comment></comment><comment><USER14> But how do I deal with the fact that I always feel that there are people out there who are a lot better than me and a lot younger. I feel I am already wasting time doing daily chores...I feel the act of 'eating' is complete waste of time. You are doing nothing..just eating..

There is this constant thing in the back of my mind, that I need to improve. I stopped watching movies, stopping playing Dota (had played it 2000+ hours in total), stopped playing any musical instruments...

Day in and day out, I feel like the time I am spending not learning anything is a going to waste. I need to be productive everytime (atleast feel like being productive).

Even on youtube, I try to only watch technical talks as much as possible. If I stray away, for instance watch a VICE documentary, then I feel miserable as I just spent 45 minutes doing nothing.

Technically, I can see that I am improving. But when will this stop ? There are 15 year old kids who know more than me currently, then I will ever learn/know.

One would assume that, with this kind of daily life, one would be lot better "intellectually" or in some other sense. But I can assure you, I might be only slightly above average, but thats it. There is this constant thing inside me, that I am only slightly above average, not the best in anything.

The more I know, the more I find what I don't know. I guess it stems from the Dunning–Kruger effect.

But how do I deal with this ?

<comment> yjftsjthsd-h > There are 15 year old kids who know more than me currently, then I will ever > learn/know.

If the rest of your comment is true, this is probably false. Seriously, if you train constantly, a 15 year old hasn't had enough _time_ to compete. So what's more likely is that you see people who have delved deeply into one thing deeper than you... But you know other things that they don't have a clue about.

<comment><USER15> >If the rest of your comment is true, this is probably false. Seriously, if you train constantly, a 15 year old hasn't had enough time to compete

Efforts are not everything.

Having resources and abilities also matter.

There can be 15 year olds who know far better than people who have spent years in a job.

Let's not pretend that it can't be possible.

</comment></comment></comment><comment><USER16> "Personally I cannot listen to technical podcasts while I develop software"

What? I've never known _anybody_ that could do that! Anyone that can do that meaningfully must be some kind of savant.

<comment><USER17> I can't listen to anything with words I understand. Podcasts would be ridiculous.

<comment><USER18> Right; I'm unable to even listen to music while in deep flow, because I have a composition/conducting background, and ANY kind of music triggers analysis that is a distraction.

I just listen to white noise.

<comment><USER19> If you're a composer/conductor then you've probably already tried this, but for me two types of music work well (as I'm a similarly analytical musician):

\- Minimalism, specifically Steve Reich's Music for 18 Musicians suite

\- Atmospheric, specifically 'Skyrim Atmospheres' by Jeremy Soule

Both are so versatile: minimalism for journeys and coding; atmospheric for 'creative' periods, walking and sleeping. I do somewhat envy your ability to listen to white noise as it is infinitely replicable, but fear it a little distracting in of itself!

<comment><USER18> I checked both of them out, and they're nice, thanks! But in both cases, it's definitely music, and as such I'm definitely distracted by it.

</comment></comment></comment></comment></comment><comment><USER20> When I played poker for a living I would sit for like 12-16hrs at a table glued in thinking in fractions and ratios. I couldn't even count the chips when I went to the cage after, it wasn't in ratios. I would meet friends at a bar/club and couldn't talk to anyone for at least an hour.

They should add:

\- Weed \- Drinking \- Porn

There is no way I could play video games.

</comment><comment><USER21> 'Take a nap' ought to be on the list.

A) Naps are awesome.

B) Putting down that mental model of functions, open files, and unsolved problems for a while often results in sharper thinking.

Not gonna lie though - most of my unwinding consists of refreshing HN, daytrading Bitcoin or making another cup of coffee. But _ideally_ I'm napping.

<comment><USER22> I can't sleep (unless I'm extremely deprived, at which point I'm really just passing out) until _after_ I've done the unwind things mentioned in the article and have been away from work for ~3 hours. It doesn't matter when I stop working, I cannot sleep until 3 hours has passed. I've tried, I lay in bed for 3 hours minus commute time.

</comment></comment><comment><USER23> _Here are a few other suggestions:-

\- Playing video games

\- Cooking

\- Watching TV

\- Listening to music

\- Talking to non-technical friends

\- Closing my eyes and slow your breathing

\- Exercise_

I can see all but video games and watching TV, where again you sit in front of a screen. Doesn't help me. Instead, I'd add hiking in the hills, forest, mountains, being outside in nature in general. Nothing is more re-energizing for me than that.

<comment><USER24> Video games work for me in getting my mind to let go of the problems it's pondering about. Sometimes it's like subconscious I'm always working on some problem. Videogames at least let me forget/drown-out certain 'work'-like problems and allow me to reward myself instead with 'fun' problems. Walking often just leaves my senses empty and causes my mind to focus on the work problems again. Maybe a hike would be different as you are more exploring something new to keep your mind occupied.

</comment></comment><comment><USER25> The best for a quick reset is juggling (believe it or not!). Nothing beats physical exercise, either at the gym, cardio alone or team sports, to make up for hours of sitting and staring at a screen.

<comment><USER26> As an added bonus lifting weights, especially pulling movements like rows and deadlifts, can go a long way toward correcting the hunched forward posture many of us end up in at the computer. Also there's this: [https://blog.frontiersin.org/2018/06/07/neuroscience-leg- exe...](https://blog.frontiersin.org/2018/06/07/neuroscience-leg-exercise- brain-nervous-system-health/)

<comment><USER25> Leg day is very important! I've recently taken up exercises to fix the effects of contracted hip flexors (planks, leg raises, etc) and have seen my posture improve significantly. Yin yoga is equally great for stretching the chest muscles that are so often tight due to forward hunching. Anyway, an article on its own :)

</comment></comment></comment><comment><USER8> Forcing yourself to do Pomodoro sessions can help. It allows you to go deep without going _too_ deep - having to take that five minute break so you can walk around, check email, or whatever can keep your brain from "going native" in the computer.

Also, for anyone interested in intensive work sessions in general, I highly recommend reading _Deep Work_ , by Cal Newport. He talks a lot about how to do really intensive work while remaining a fully functional and engaged human being outside the work.

One thing he recommends in the book is to have a shutdown ritual. He actually says out loud "I am shutting down now", to help kick his brain out of deep work mode.

<comment><USER27> An easy way to force periodic breaks is to just drink a lot of water throughout the day. Then you have to get up for refills and bathroom breaks. Plus water is just good for a person in general.

</comment></comment><comment><USER28> [ a pedantic corner of my mind insisted that the title should imply "deleting the code" as well ]

I found that doing Brazilian Jujitsu really helps with this; two or three minutes into a session and all other concerns are gone and the relaxation afterwards is great - the world takes a while to come flooding back.

I think TV and video games are a dodgy recommendation in that it's just more time in front of screens - itself not great. Unless you have a pretty wacky working environment you're sitting down or at best at a standing desk. So adding more sedentary activities as a way from unwinding from other sedentary activities is pretty questionable. Not everyone is going to love something as full-on as BJJ but surely 'go for a walk' should be way ahead of 'more screen stuff'.

<comment><USER29> recovering from programming -> BJJ flushes away the real world / programming world -> Recover from BJJ depending on the day it's (I suck so much) || (Real progress was made today)

<comment><USER28> I _think_ that coming off the mat fuming about how badly one sucks is something that reduces over time, or at least it has for me. And not because I suck all that much less. Training frequency seems to help ("oh well, there will be another roll tomorrow").

</comment></comment></comment><comment><USER30> To get the most out of my periods of intense focus I try to plan multiple after hour activities. I find that tactile activities such as climbing and pottery really help with balancing my brain and softly undo the anti-social mood that develops in me during long coding sessions.

</comment><comment><USER31> I found the best way for me to unwind is exercise. Table tennis or especially boxing works really well too. Nothing makes you switch mode faster than getting hit in the face :)

</comment><comment><USER32> I would totally agree with the "playing a musical instrument" as a method to wind down.

My working desk and all my IT gear is on one side of my home office. Behind me, the other half is racks of amps, keyboards and amps. During long compiles, installs or downloads or while waiting for a Slack response from a colleague, I will often just lean back and grab an instrument and play away for a few minutes.

Great way to reset the brain, plus change posture and breathing patterns.

</comment><comment><USER33> [tl;dr - aim to take at least 250 steps every two hours to prevent buildup of blood clots]

It's not just about getting exercise. It's also about moving your legs sufficiently to ensure proper blood flow and prevent the formation of life threatening blood clots (disclaimer: that happened to me, I love to hyper focus and just sit in my chair and code for 8 hours straight, which turns out to be an incredibly high risk activity even for someone who is otherwise active, in good shape, not overweight, not a couch potato, etc).

Your legs are far enough from your heart that your body has evolved a separate pumping mechanism for them: the actions of your leg muscles when you walk or run are responsible for booster pumping the blood through your legs. Standing desks may be great for other reasons but they don't help here because your leg muscles still aren't driving that pumping action the way they would if you were walking or running.

My solution was to get a cheap fitness band (Fitbit Flex2 in my case) and set it to vibrate if I'm inactive for long periods. When it buzzes I get up, walk down the hall a couple times, and go back to concentrating.

<comment><USER34> The article was more about the mental effects of long sessions, and barely mentioned exercise at all.

<comment><USER8> Lack of exercise/motion could well be part of the mental effects. Your body isn't ready to move again. It's kind of like that weird way you feel when you first wake up.

</comment></comment></comment><comment><USER35> I have a timer app (RSIBreak) that forces me to take 20 second breaks every 10 minutes and 4 minute breaks every half hour; I usually get up and walk around or stretch a bit and look out the window for awhile. Works wonders for making me feel way better. I've improved my posture from doing it, as well as making my eyes feel way better after working a full day. I also use Redshift to tone down my screen; when I turn it off for certain things, my screen feels blue and bright in a weird way.

</comment><comment><USER36> I have recently been vaping high CBD hemp flower after a long day of programming. I am fully functional while feeling so much better. There is a mild residual feeling the next day, so I don't have to vape daily. I am dreaming again, nightly. I am waking up refreshed the next morning.

I highly recommend people try it.

Mail order to anywhere in the US seems like a legal grey area. There are two, possibly three online farms supplying the market in the US but this space is going to expand very soon. Prices are very reasonable.

</comment><comment><USER37> I have trouble concentrating at work to the point where I barely complete any code. I Can never flow unless I'm working on a project at home. Music can help but the network is often too spotty for songs to load consistently. I'm easily distracted by the internet and conversations with co-workers. I'm not allowed to work overtime, and get 8 hours of sleep - so being tired is not an issue. Am I burnt out? or just extremely apathethic?

<comment><USER38> I too sometimes experience this inability to get stuff done at work because of distractions. I realized that there's a lot of anxiety that I'm experiencing when in this mode (probably from knowing that I'm not doing work because of distractions). When this happens, I try to get away from my work area for a few minutes and relax by closing my eyes and breathing slowly. I then feel much better. The key is to remain aware of when you are being distracted and/or feeling anxious. Once I've placed my attention on myself and say to myself, "I am being distracted now", I start to feel more focused.

<comment><USER37> Thanks, I'll give it a try!

</comment></comment></comment><comment><USER39> I think basically anything else will do. I tend to do quite a bit of diy in my spare time. But I have to say. After a long programming session I turn into the most egotistical angry creature I have ever known. Thankfully the productivity of such a session is usually so big people still go to their knees to thank me. And I happen to be a real sucker for compliments so once in a while when it's really necessary I still do them.

</comment><comment><USER40> +1 playing a musical instrument after coding and +100 more if it's a bowed string instrument. I find that spending as little as 5 minutes, even if it's just bowing open strings, will snap me back into a more calm, happy, and aware mindset.

</comment><comment><USER41> Getting on hard boulder projects used to work really well for me. If it's close to your limit then you can't think about anything really, and it gives you a nice reset

</comment><comment><USER42> I do daily upper-body stretches taught to me by chiropractors.

I don't know how I could function without them actually.

<comment><USER43> Do you have any online resources you can share?

</comment></comment><comment><USER44> I would add mindfulness meditation to the list.

</comment><comment><USER15> I started smoking Cannabis. It has helped me a lot after long programming session.

My mind used to keep racing. I tried everything from playing instrument to swimming but nothing helped.

I would get the flashback of the diagrams, communication, tickets and emails. I would continuously think about the data structure and algorithms, reaearch a lot of them and figure out which one would be most efficient for my employer. I would work out the complexity and implementation in my head. Once i got into accident when thinking about a bug.

But now it's solved after i started taking cannabis.

</comment><comment><USER45> Watching TV??

That's the most horrible advice I've seen in a long time ...

<comment><USER46> I wouldn't choose it either, but it depends what your outside options are. At least it gets you thinking about people and processing verbally.

</comment></comment><comment><USER47> I drink, smoke weed, eat etc and don't talk to anybody during long sessions. Ignore all people. That's how you do it. Then go back and program more.

Fuck breaks. I hate them. Stay strong.

At id software they said if you wanted to see something, make it happen on a screen.</comment>


The App Store: Quality control without the quality - <AUTHOR> http://37signals.com/svn/posts/2145-the-app-store-quality-control-without-the-quality

<comment><USER2> I'm an app store developer, and if Apple opens the doors, let me tell you what will happen :

First of all, there will be hardcore porn immediately. Boob apps will flood the store, because that's what makes money. If apple implements a flagging mechanism, then you will be one click away from opening a website to purchase hard core porn (I'm looking at you On The Go Girls).

Lots of people will create apps with 5 pictures and call it "Celebrity News". For example Britney Spears News, etc. Apps will be rereleased every single day so they are always visible on the app store new releases page. People will upload apps that do nothing but just have a title people will search for. And of course, apps that call a pay hotline somewhere.

With the amount of money people are spending on the app store, and the fact that people are looking for cheap entertainment rather than useful tools, the app store would be a heaven for spammers and scammers.

If Apple ever unlocked the gates, it would be the absolute end of the app store.

I have a phone number of a reviewer and I talk to him every now and then. They get a lot of crap. The gate is not to QC an app, it's to prevent the app store from being a crapware and spammers paradise.

<comment><USER3> Apple shouldn't open the gates to the App Store, but that doesn't mean they shouldn't open the gates to the iPhone.

If you want to be listed in the App Store and have Apple handle your payment processing and even a bit of marketing for you, you're going to have to go through their approval process. Every single store in the world decides which products it will and won't sell. The App Store isn't, and shouldn't be, any different.

However, on the Mac platform you can develop an app and sell it on your own web site or put it on a CD in a box and sell it at Best Buy or any other store. You can't do that on the iPhone.

I guess opening up the iPhone platform wouldn't really help DHH, since I'm sure he wants his app listed and sold in the App Store, but I can see why developers expect more parity between the two platforms (Mac and iPhone).

However, I can also see how it's easier for Apple to provide a better (and more consistent) customer experience when the App Store is the only way to buy and install apps. And since Apple cares more about customers, and customers don't really care about the openness of their phone's OS... that's probably not going to change any time soon.

<comment><USER4> _On the Mac platform you can develop an app and sell it on your own web site_

Yes. And you can also develop malware and give it away on your own website. And then, when customers complain to Apple, they can do... what, exactly?

In other words, DHH is wrong when he suggests that the App Store isn't about security. Sure, the App Store is not about _prescreening for security holes_ \-- obviously they can't find every hole or every trojan in their pitiful half-hour code review. But if every app goes through the store, and every store app can be revoked, and every store app comes attached to a known submitter with a valid identity and credit card...

You can get a trojan through the system. But you very likely can't do it more than once, it won't survive long in the wild after it's detected, and the FBI has a paper trail to your house.

<comment><USER5> > _Yes. And you can also develop malware and give it away on your own > website._

Yeah, and doing sex with random strangers is as dangerous ... you never know what you're going to get.

That's why I'm a proponent of Sex licenses, given by state institutions after testing your general health, your mental health and the quality of your DNA ... people without a license shouldn't be allowed to have sex, to work in public institutions (since that's where people fuck around the most), or to leave town without notifying the proper authorities.

</comment></comment></comment></comment><comment><USER6> May I recommend that Apple copy Microsoft for once?

The fine folks on my partner team, XNA Creators Club Online, have developed a clever solution to the app review problem. The whole process is transparent, community-driven/crowd-sourced, insulates Microsoft from legal liability, and has been running effectively for over a year, albeit not at App Store scale.

Read about it here: <http://creators.xna.com/en-US/quickstart_main>

The same technology backend has been white-labeled for other communities: <http://creators.rockband.com/>

</comment><comment><USER7> The iPod, iPhone, and soon the iPad are from what I can tell the first time DRM has been successfully deployed in a non annoying way. I remember when 3DStudios used to require a hardware dongle(A device you had to have plugged in for the software to run.) The iPhone and co. are like dongles that you actually want to buy. We are paying for the store and then only buying from it as well as being held hostage by the fact that we don't actually own what we purchased as it requires the devices controlled by apple to use our purchases. It's the ultimate lock-in.

Note: Protecting content can not occur without tight control by apple, otherwise apps for accessing pirated content would proliferate. I'm starting to actually think that Apple has found the perfect racket and there is no way open systems can compete until someone comes along with Apple's design and manufacturing skills. There platform is just bigger and more consistent than any other competitor's with better tools and less variation in hardware designs.

ps. If you think the App approval process is annoying try being a game developer, it takes months to get your game through the processes required by Nintendo, Sony, and Microsoft. Games love it, it's the rest of you that aren't used to it, for us it's a welcome improvement plus it's a platform that extends beyond games into lifestyle applications and communication.

<comment><USER8> > _then only buying from it as well as being held hostage by the fact that we > don't actually own what we purchased as it requires the devices controlled > by apple to use our purchases._

Huh? You're saying that iPhone Apps are 'locked-in' because they require an iPhone to run them. Does MS Windows 'lock you in' because you can only run it on x86 hardware?

<comment><USER7> You make a good point. I never really thought through what that point sounded like. (Partly I'm really just pissed I can't pirate as easily)

My only slight rebuttal is that you can't trade or resell your purchases like you could with console games or regular desktop software.

</comment></comment></comment><comment><USER9> "Both platforms are much more open and on a mac you have very little trouble with stability or malware or even quality. "

I believe there are other factors that can contribute to this. I think the laptop/desktop portion of Apple still attracts a certain individual that typically requires things to be well designed and stable. Unfortunately the cell phone market is not the same way, especially when you factor in free or extremely cheap applications compared to more expensive OS X counterparts. The iPhone appealed to a wider audience, including Windows users who arguably put up with a lot crappier inefficient software.

I think when originally putting the app store in place, it was a fear to have this crap trickle into the Apple app store.

Also, Apple has a vested interest in the success of applications in the app store whereas it doesn't have as much direct benefit from applications released and sold independently for OS X.

</comment><comment><USER10> _"Do you think the App Store clerks are combing through source code to look for security issues? Ha!"_

Apple sometimes rejects applications for using private APIs they must be checking at some level. I'm not sure how much damage you could do using public APIs. We haven't seen any iPhone App Store malware so whatever they're doing must be working. It's hard to believe no one has tried to slip something in over the last 2 years. In my personal experience with the iPhone I cannot recall a third party App Store application locking up my phone, crashing the OS, or otherwise preventing me from taking an incoming phone call. Either iPhone developers are being incredibly careful, Apple's App Store policies are working, or I'm very lucky.

<comment><USER2> That's because you pay $100 to get in and if you do this once, you will get kicked off immediately. There is no profit in malware. It's tough to get the app in, and should you succeed, the profit will likely be less than the $100 you spent getting in.

<comment><USER4> Plus, as I pointed out elsewhere in the thread: Apple can remotely disable your malware app after it's identified, they can publicly shame you, and they may even be able to sic the cops on you via the paper trail that you used to register as a developer.

<comment><AUTHOR> Oh yeah, they'd easily be able to. They're incredibly strict on the paperwork when you're registering. My account was frozen until I mailed in personal identification due to a minor discrepancy in the name that I used for the billing address.

</comment></comment></comment></comment><comment><USER11> "What's there to loose except for the feeling of powah?"

30% of every dollar that goes through the App Store.

</comment><comment><USER12> The apple review process is not to enforce quality. It is to enforce control.

Apps will look like X, behave like Y, and we will nix anything we wish to.</comment>


Show HN: Simple GitHub/Bitbucket Webhook deployments (with Slack integration) - <AUTHOR> https://github.com/r00m/skilled-hammer <comment><AUTHOR> My first open source project, woo! Open to suggestions and constructive criticism!

<comment><USER2> Congratulations. One of the things I noticed going through the code is that there is not much documentation. A few functions have docstrings, but it's not consistent. I am not saying that it is a critical issue, but that considering the needs of a person who has never seen the code before might shape your future open source projects.

Good luck.</comment></comment>


Andrew Mason's "I'm not answering that" technique - <AUTHOR> http://allthingsd.com/20110601/see-andrew-masons-amazing-death-stare/ <comment><USER2> Presuming that the video is recent, and as Groupon enters it's silent period, it's a good technique for a relatively newly minted CEO who doesn't have 20-30 years of experience dealing with public markets, taking companies public, and all of the legal guidance that they've received in that time.

If Andrew takes three or four companies public, he'll learn how to answer those questions without stepping over the line, but, for right now, with a multi-billion dollar IPO on the line - silence is golden.

Besides - he managed to get an applause out of the audience, so he had good timing as well.

[Edit: Agreed that a "no comment" would have been as effective, but nowhere near as entertaining. I also suspect that the interviewer knew they were not supposed to be asking these questions, so there was another bit of interplay taking place as well.]

<comment><USER3> You gave more info than I gleaned off the site. All I saw were a few banners and a tagline.

Admittedly, I'm using a blackberry, so if it's video content like that, I'm not seeing it. The least the operators of that could have done was offer a transcript, or detect crappy browsers. Oh well.

*edit: I thought about, but failed to mention that a <video> tag would have been most helpful. And, why the downvotes?

<comment><USER4> Here you go (not word for word):

Interviewer: "When are you going public?"

Groupon CEO: [Silence. Look of death. Nervous shaking. Looks like head might explode.]

"Why didn't you sell to Google?"

[Same as above + flaring nostrils.]

"Why didn't you sell to Yahoo?"

[Laughter.]

<comment><USER5> The shaking seemed more like he was trying to keep from smiling than he was nervous.

</comment></comment></comment></comment><comment><USER6> Anyone who isn't familiar with his style should know that when he raised $1 billion recently he titled the press release:

"Groupon raises, like, a billion dollars."

He has a great sense of humor and doesn't give a shit what people think. My kind of guy.

<comment><USER7> Considering that $900m of that went into his personal account, I can well believe it!

</comment></comment><comment><USER8> Personally, it's refreshing to see someone bring some levity to all the seriousness. Especially considering he was obviously countering the penetrating questions the interviewer was asking.

You people need to relax.

</comment><comment><USER9> I understand why he did it(sec regulations and all) but what was the reason he thought it was cool to look like he was having an aneurism every time Kara asked him these questions? Comedy relief?

</comment><comment><USER10> I know it sounds cynical, but it's just another reason I don't like Groupon. The dude is creepy, and looks like something straight out of a Dianetics book.

<comment><USER11> I like it.

</comment></comment><comment><USER12> I found it odd that the audience was applauding but I guess we're missing some context in this short clip.

Jeremy Paxman probably wouldn't have let him get away with silence.

<comment><USER13> Jeremy Paxman. YES. I would love to see how he would respond to that!

</comment></comment><comment><USER14> That's hilarious! For a moment I thought he was having a seizure. I was quite relieved when he finally smiled at the end.

</comment><comment><USER15> I got the feeling that there was probably some pre-arranged agreement that the IPO question was off limits, but that the interviewer went ahead and asked the question anyway. Hence his non-plussed look and the slight shake of his head as if indicating 'you're not supposed to be asking that question'.

<comment><USER16> Or, it was a joke and an interesting take on the inevitable question.

</comment></comment><comment><USER17> I think some people can't understand a CEO who doesn't act like the typical corporate robot clone, and others can.

</comment><comment><USER18> "Remember not only to say the right thing in the right place, but far more difficult still, to leave unsaid the wrong thing at the tempting moment." - Franklin.

</comment><comment><USER19> Reminds me of the David Blane interview on GMTV. Maybe thats where he got the technique?

</comment><comment><USER20> He looks pretty high.

EDIT: that's not meant to be funny; it's my honest impression of his demeanor.</comment>


My most common code review suggestions - <AUTHOR> https://hackernoon.com/what-i-learned-from-doing-1000-code-reviews-fe28d4d11c71 <comment><USER2> I understand most of your points, but I disagree when it comes to the Optional part of your article. As stated by Brian Goetz here ([https://stackoverflow.com/questions/26327957/should- java-8-g...](https://stackoverflow.com/questions/26327957/should- java-8-getters-return-optional-type/26328555#26328555)), the intent was not to use optional all the time as you suggest, going as far as to say "Optional allows you to completely remove NPEs from your program. ". No they do not, an optional can be null anyway. As explained by Mr Goetz, they should only be used when designing an API, to explain to the consumer that a result may not be returned: "you probably should never use it for something that returns an array of results, or a list of results; instead return an empty array or list. You should almost never use it as a field of something or a method parameter."

I think we should keep in mind this is a type added for the JDK code foremost, and use it in similar use cases, and not see it as a general replacement for nullable values.

<comment><USER3> The big problem with java is that you don't have non-nullable versions for most types; in my mind, the biggest advantage of Option is the default implication that "everything that's not explicitly Optional is really non- optional". Alas, that's not true in Java - if you have a non-optional type, you can (almost) never be sure that the value is non-null. It feels like just adding Optional, they only did half of the job.

<comment><USER4> They cannot truly fix the problem without dropping backwards compatibility.

<comment> yoz-y Could the add some non-nullable annotation like apple did when updating objective-c to play nicely with Swift's optionals?

<comment><USER5> Non-nullable is a promise not a guarantee. It does absolutely nothing in terms of useful warnings or compiler errors within Objective-C, it only explains how Swift should consume the Objective-C API.

It's still entirely possible to get a nil from Objective-C while the API is declared as nonnullable, this even happened to me with Apple's own API's if abused to a certain limit.

<comment> yoz-y Yes but if Java 10 (for example) introduced this annotation then the JVM10 could transform a null returned from a non-nullable annotated function to an exception. Compile time static checks could also be added to guarantee that such a method does not return null. But you could still use such a function from a previous java version albeit you would sacrifice the checks.

It is a way to introduce the benefits (as long as the library is developed properly) of non-nullable types without sacrificing retro compatibility.

Edit: I remember a bug in earlier version of Swift Cocoa binding where getting calendar events without titles would hang without possibility of recourse because of this problems.

</comment></comment></comment></comment></comment></comment><comment><USER6> When seeing the link, I had hoped to read some general wisdom about the benefits of reviewing code or some advice about the best way to perform a code review, not some language specific remarks about Java usage.

<comment><USER7> I made myself a checklist of reviewing pull requests to dlangs standard library. The only general item is "understood comments in code". The rest is specific.

The section titles are kind of generic as they convey the aspects to consider: Code Gotchas, Documentation, Code Style, Unittests.

</comment></comment><comment><USER8> This is off-topic/meta, but I'm still surprised every time I've read something on Medium, and my (desktop Firefox) back button doesn't take me back. Whyyyy do sites still do this?! Yes, that's rhetorical. :(

<comment><USER9> I just tried on firefox 57, it does take me back, strange

</comment></comment><comment><USER10> Point 2 is something that gets overlooked easily nowadays. I'd use even more specific types (or 'tiny types' as they're called sometimes), like MemberCompanyId, which could hold a Company instance and an Integer instance. Such members could be validated, i.e. checked for not null and for valid values (the id number could be forced positive, as an example). This will only allow to construct valid MemberCompanyId instances, and prevent any programming error caused by accidental deviations in input or state that create invalid objects.

Point 3: interesting and useful, I had never thought about it. I use varargs syntax quite often by the way, letting the caller pick what he wants to do with my code.

<comment><USER11> I find it kinda odd that a fundamental principle of OOP is information hiding, yet most mainstream languages make it a matter of pure discipline if you want to pass around a "CustomerId" instead of an "Int32" or alias any value type. In your own code it's not too bad, but there's constant conversions at api and library boundaries...

In general I lack the Smalltalk ideal of being able to subclass any type, like 'Int', call it something new and attach behaviour to it, while preserving API & DB compatibility.

Type aliasing in F#, ie `type Customer = int`, or discriminated unions with the same info, like `type CustomerId = CustomerId of int`, are wonderfully useful in that regard.

<comment><USER10> In Python you can subclass builtin types and override __new__. Not every method can be subclassed with success, though, because of optimizations.

I agree it's the way to go, though. My typical tiny type in Python just has preconditions on string content.

</comment></comment></comment><comment><USER5> Stronger typing is more secure code, totally agreed. F#'s custom primitive types (I'm corrected, it's Units of Measure) are a feature that should be copied by every language. You're not passing around floats anymore with a descriptive name ('distance') but they're floats defined as kilometers or miles. Then you can define rules about how they should interact, like:

        Mile distance1 = 12
        Kilometer distance2 = Kilometer(distance1) // Does a conversion while constructing

        void someFuncThatWantsKilometers(Kilometer distance) { }

        someFuncThatWantsKilometers(distance1) // Does not compile
        someFuncThatWantsKilometers(distance2) // Compiles

Even better you can do this:

        Hour time = 1
        Kilometer distance = 12
        Kilometer/Hour speed = time/distance // Doesn't compile
        Kilometer/Hour speed = distance/time // Compiles! Even gives you the 'new' type for free!

You could use it for everything where primitives have a deeper meaning than their pure numeric value. Database ID's, money or other financial or scientific values. Impossible to swap X and Y coordinates unless you implicitly do so.

You can eliminate so many confusing bugs just by having better typed primitives.

\--- disclaimer: ---

This is not _exactly_ how it works in F# but the languages are too different to really compare

<comment><USER11> Just for clarity: what you've described are (Units of Measure)[[https://docs.microsoft.com/en-us/dotnet/fsharp/language- refe...](https://docs.microsoft.com/en-us/dotnet/fsharp/language- reference/units-of-measure)], which let you define types, and their relationships, so you can define meters, and kilometers as meters * 1000 and then rest safe that your spaceshuttle will be using the right units.

Unit of Measure in practice: [<Measure>] type cm [<Measure>] type ml = cm^3 // a millilitre is 1 cm cubed

To the point in the article about using types to convey meaning, as I commented elsewhere, you want F#s awesome type aliasing and single-case discriminated unions :)

Type aliasing:

       type CustomerId = int // We can send now use IDs interchangeably with int, use CustomerId in method signatures, and expand the type with methods

Single Case Discriminated Unions:

       type CustomerId = CustomerId of int
       let id = CustomerId (3)           // Have to use a specific constructor
       let myFunction (CustomerId(id)) = // DUs can be unpacked in parameters
           printfn "%i" id               // this function only accepts CustomerId's

<comment><USER5> That's what it was called, sorry I was citing from the top of my head. I don't find the name Units of Measure a bit confusing as it seems to imply that it's only use is scientific units while there are plenty of use cases outside of that realm.

A SandwichCount should not be confused with a BurgerCount!

</comment></comment></comment><comment><USER12> "What I learned from doing 1000 _java_ code reviews" \- there, clickbait fixed, irrelevant tab closed.

<comment><USER13> Not being completely specific is not "clickbait".

<comment><USER14> "This guy did 1000 code reviews and you'll NEVER guess what he found at #123!"

</comment></comment></comment><comment><USER15> > and is basically the entire reason for choosing strongly typed language like > Java in the first place.

Technical nitpicking: It's best to avoid using the terms "strong" and "weak" when referring to type systems, since they don't have clear, agreed upon definitions.

Some would say that Java is _not_ a strongly typed language since its type system isn't sound.

<comment> ben-schaaf Just to add to this, the better terms to use are "static" and "dynamic".

Going with the example of a sound type system, a language could have a sound type system that does the actual checking at runtime.

<comment><USER16> No, not really. Even though there's no good definition what "strong" and "weak" means, it was always meant as a totally different axis than static/dynamic typing. C is weakly typed, OCaml is strongly typed. Both are typed statically.

</comment></comment></comment><comment><USER17> Andreas Hallberg has a great talk about this[1]: crash early, use explicit types (value objects) and so on.

[1] [https://www.youtube.com/watch?v=igFRvriDMqk](https://www.youtube.com/watch?v=igFRvriDMqk) (GOTO 2015 • Secure Coding Patterns • Andreas Hallberg)

</comment><comment><USER18> I hope this author is only doing code reviews for very junior engineers, number one and number two are only mistakes I would expect from someone very inexperienced.

As pointed out elsewhere here, the author has Optional wrong.

</comment><comment><USER19> In summary: Use Scala instead of Java

</comment><comment><USER20> The overlay navigation bar at the top is really annoying and now there's another bar at the bottom nagging me to sign up for something that can't be removed.

<comment><USER21> I use this guy's "kill sticky" bookmarklet for cases like this [https://alisdair.mcdiarmid.org/kill-sticky- headers/](https://alisdair.mcdiarmid.org/kill-sticky-headers/)

</comment></comment><comment><USER22> _If something is exceptional you should throw an exception._

This is so stereotypical of the object-oriented mindset and Java programmers are the worst offenders. If I had a programmer under me who came up with this, I would fire them on the spot and enjoy every nanosecond while doing it.

The "punt and throw an exception" mentality goes directly against the art of UNIX programming rule of repair: repair what you can, but if you must fail, do it as soon and as noisily as possible. What this means in practice is that in 99% of the cases, the programmer could have written the code to either deal with the problem or had enough information from disparate sources to reconstruct the missing data but they chose to punt and throw an exception instead. To me as a programmer, that is infuriating!

Which leads me to point 2.: the exception paradigm requires the intimate knowledge of the software to interpret, as it normally vomits a call stack trace. But in production, to the user of the application or the poor system administrator, or even to the programmer who isn't intimately familiar with the software, that information is nothing but retching vomit, often with no clues as to what went wrong where! And did you notice how the punter is never around to decipher the gobledygook when this happens? Also infuriating.

Stop throwing exceptions, get off of your lazy asses and when you can reconstruct the missing information, or detect and correct damaged information, or diagnose the problem, do so and give back meaningful diagnostic telemetry on stderr, but don't just punt and screw the user or the sysadmin over.

If you're programming to put the bread on the table, it's not someone else job to make it work; it's yours. That's why you get paid, to make the computer compute. No excuses.

<comment><USER23> > _but if you must fail, do it as soon and as noisily as possible._

So basically, spam on stderr and abort(). This is not exactly better than exceptions.

> _the exception paradigm requires the intimate knowledge of the software to > interpret, as it normally vomits a call stack trace. But in production, to > the user of the application or the poor system administrator, or even to the > programmer who isn't intimately familiar with the software, that information > is nothing but retching vomit, often with no clues as to what went wrong > where!_

Again, it's printing stuff to stderr, or having the exception system print stuff _plus_ stack trace to stderr. The latter is _strictly_ better than the former. It gives you _more_ clue than printing what would otherwise be an exception message to stderr and aborting on the spot.

And using exceptions do not preclude you from being able to "repair what you can". In fact, it can help it.

I don't like exception abuse either, but it's still better than the C way.</comment></comment>


The Mathematics of Paul Graham's Bias Test - <AUTHOR> https://www.chrisstucchio.com/blog/2015/paul_grahams_bias_test.html <comment><USER2> Hi Chris ---

In the earlier thread, it seemed like some people were reaching different conclusions because they were using different definitions of "bias". I think my working definition would be something like "there existed in the actual applicant pool a subset of unfunded female founders who should have been statistically expected (given the information information available to the VC's at the time of decision) to outperform an equal sized subset of male founders who did in fact receive funding".

Alternatively (and I don't think equivalently?) one could reasonably take bias to mean "Given their prejudices, if the same VC's had been blinded to the sex of the applicants, they would have made funding choices resulting in higher total returns than the sex-aware choices they actually made." I'm sure there are many other ways of defining "bias". Could you define what would need to be true for your test to show that "the VC process is biased against female founders"?

<comment><USER3> > (and I don't think equivalently?)

I think that's equivalent (assuming there are no efficacy losses of blinding, of course). If you've got the two subsets in question, then they could make a choice with higher expected returns. If they can make a choice with higher expected returns, then there exist the subsets in question. (Let me skip the handwaving about continuity and measurability, please.)

Those definitions are good because they even describe bias in a scenario where VC's are less accurate at identifying the ability of one group versus another, even if both had equal distributions of "true observable ability" and equal- sized applicant pools, and if the VC's decisions still resulted in equal proportions of each group getting funded.

</comment></comment><comment><USER3> > This new test is also imperfect - it fails to handle noise in measuring > inputs/outputs, for example.

This doesn't make the test imperfect, it makes it completely useless when the noise is a wild scrambling function, and worse (and even more importantly), it could be _different_ scrambling functions for group A and group B. And we don't know what they are. In the case of investments, it is a _very_ noisy function, and probably different too.

<comment><AUTHOR> I didn't propose this test as a solution to PG's data. I have no idea how to handle the First Round Capital question, or whether FRC is biased, and I didn't claim otherwise.

I solved a toy problem - my goal was to understand one piece of the problem and solve it in isolation. In this case, I was handling the marginal vs mean problem. I.e., PG took step 1, I took step 2. (Both of us repeating work that Gary Becker did a while back.)

Can you do step 3? Or is your sole point to sit on the sidelines saying "haha, you don't have the answer yet, stupid math geeks?"

<comment><USER3> I think you're wrong to even call PG's test wrong, in comparison to this. His is executable while both have an assumption about distributions: with his that the distribution of group A and group B are the same, and with yours, if we actually try to solve the noise problem, that their distributions of outcomes are the same.

His assumption is more plausible than yours, because yours breaks down merely if the variance of outcomes (given a prior EV) is different. It's too fragile a test to hold up. His breaks own if the variance and _tails_ are different, but even then it still gives you something to look at as a year-over-year metric.

His can also still show certain conclusions. If group A outperforms B in his test, that means _either_ there's bias against A _or_ group A has a fatter tail than B.

I don't think you took step 2. You took step 1+i.

> Or is your sole point to sit on the sidelines saying "haha, you don't have > the answer yet, stupid math geeks?"

I think it's perfectly reasonable to criticize the cargo cult application of mathematics.

Edit: And that's the crux of this. PG's test is targeted toward the real-life situation where there's noise. That's a mere footnote to you, which means you're solving a completely different problem.

<comment><AUTHOR> If the distribution of A and B is the same, any significant inequality of outcomes must be caused by bias.

With mine, you need to replace the min estimator by some sort of low quantile estimator (which is far less sensitive to noisE). Quantile estimators are, of course, invulnerable to variation on the right. I haven't worked out the details yet, but this is the pretty obvious next step.

I really don't get why you say this is "cargo cult application of mathematics". What sort of mathematics would you NOT consider "cargo cult"?

<comment><USER3> Mathematics that makes progress towards a solution. Looking at minimum for non-noisy distributions is just not the problem at hand, heck, you could look at a few graphs and the bias is obvious.

Let's say you have Group A and Group B with distributions where people have EV for the returns on a $1M investment ranging from $0 (lose all your money) to $1B (maybe it gets real thin around $10M), and investors try to invest in anybody with EV > $1M.

But maybe they're biased.

Oh and by the way, the only possible exits are $0 and you sell the company for $1B.

An attempt to make progress towards a solution would be better off targeting this model problem. Now you're attacking the noise head on.</comment></comment></comment></comment></comment>


The investor's dilemma: Earnings, valuation and what to do now - <AUTHOR> http://www.washingtonpost.com/business/market-action-a-conversation-between-investors/2011/09/07/gIQA7KU5EK_print.html <comment><USER2> Analysts at bank tend to be too short term focused. That's pretty much it.

It's next to impossible to figure out how things are going to change in just 3 months, but analysts tailor their estimates and reports to arrive at where stocks will be within that timespan.

The best use of analysts is not so much to arrive at where to buy and sell a stock but rather to obtain data on supply / demand which you can use to come to your own conclusions.

</comment><comment><USER3> I recommend anyone who is interested in investing read some of the good books on the subject. The millionaire next door, or the wealthy barber are fine. Buffetology is good if you're fairly new, while Timothy Vicks "Invest like Warren Buffett" or any of this other books about Buffett are better.

Don't get your advice from newspaper articles, which are generally written by reporters, like this one. The massive spending our government is doing, along with the terrible shape that many states and municipalities are in, make holding %50 of your money in bonds more risky than "conventional wisdom" assumes.

The events in the real estate market alone should be a wake up call that conventional wisdom ("real estate never goes down") is not always right, you have to do your homework and use judgement.

Also, not a big fan of the TV and radio financial gurus. Generally they give excellent advice when it comes to getting out of debt and getting your spending under control, but terrible advice when it comes to actually investing, generally because they are advising the lowest common denominator (not smart people like the ones reading this forum.)

I've been investing personally for about 20 years, and what I learned was that my returns were %100 a result of discipline and rationality, not the state of the market. The best discipline is to invest only when you know what your return is going to be beforehand. IF you're guessing, you're gambling. If you understand the risk well enough to calculate it, then you'll do much better. And if you don't, or can't understand the risks, then stay out until you do. Some of my most profitable investment periods were the ones where I pulled out because the markets were not acting as I expected, and in doing so, I avoided the losses my strategy would have otherwise given me.

Failing to lose %50, and then making %25 the next year is a %100 return compared to losing the %50 and then making %25 from the smaller base. (EG: You have $100 on the sidelines, then earn $25, giving you $125, verses, losing $50, then earning $12.50 giving you $62.50.)</comment>


298204864 - <AUTHOR> http://www.google.com/search?sclient=psy&hl=en&biw=1366&bih=667&source=hp&q=298204864&btnG=Search&pbx=1&oq=federer+from&aq=f&aqi=g-v2g-j3&aql=t&gs_sm=il&gs_upl=37l647l1l4l3l0l1l1l0l438l726l2-1.0.1l2&btnI=1#sclient=psy-ab&hl=en&source=hp&q=298204864+site:youtube.com&pbx=1&oq=298204864+site:youtube.com&aq=f&aqi=&aql=&gs_sm=e&gs_upl=9981l15407l0l15587l23l19l2l0l0l1l310l3616l0.10.6.2l20l0&bav=on.2,or.r_gc.r_pw.,cf.osb&fp=21e6f9b0f7b4c3b3&biw=1138&bih=555

<comment><USER2> Too wit for me. I have to see it for 10 minutes until I understand why this interesting.

[Spoiler alert]

Search for:

[http://www.google.com/search?sclient=psy&hl=en&biw=1...](http://www.google.com/search?sclient=psy&hl=en&biw=1366&bih=667&source=hp&q=298204864&btnG=Search&pbx=1&oq=federer+from&aq=f&aqi=g-v2g-j3&aql=t&gs_sm=il&gs_upl=37l647l1l4l3l0l1l1l0l438l726l2-1.0.1l2&btnI=1#sclient=psy- ab&hl=en&source=hp&q=298204863+site:youtube.com&pbx=1&oq=298204863+site:youtube.com&aq=f&aqi=&aql=&gs_sm=e&gs_upl=46105l46417l2l47019l2l1l1l0l0l0l435l435l4-1l2l0&bav=on.2,or.r_gc.r_pw.,cf.osb&fp=cfc3d9a59c65e3bb&biw=1366&bih=626)

[http://www.google.com/search?sclient=psy&hl=en&biw=1...](http://www.google.com/search?sclient=psy&hl=en&biw=1366&bih=667&source=hp&q=298204864&btnG=Search&pbx=1&oq=federer+from&aq=f&aqi=g-v2g-j3&aql=t&gs_sm=il&gs_upl=37l647l1l4l3l0l1l1l0l438l726l2-1.0.1l2&btnI=1#sclient=psy- ab&hl=en&source=hp&q=298204865+site:youtube.com&pbx=1&oq=298204865+site:youtube.com&aq=f&aqi=&aql=&gs_sm=e&gs_upl=44974l45513l6l46348l2l0l2l0l0l0l0l0ll2l0&bav=on.2,or.r_gc.r_pw.,cf.osb&fp=cfc3d9a59c65e3bb&biw=1366&bih=626)</comment>


In 1950s Vegas Exploding A-Bombs Were Cause For a Party - <AUTHOR> http://www.yournewszonenetwork.com/2015/04/in-1950s-vegas-exploding-bombs-were.html <comment><USER2> Amazing, I would never have thought commercialization would reach these levels. Interesting to see what majority of American population thought of the nuclear bomb in general and what studies if any were done by the government in terms of the harmful effects of nuclear radiation.

<comment><USER3> The decade or so following WWII were a strange time in the US. The federal government made itself the only legal purchaser of uranium ore and artificially raised prices to incentivize mining, leading to a brief "Uranium Rush" [1]. Popular songs were sung about uranium prospectors [2]. There were even a couple of educational board games and toys -- with real uranium and other sources of ionizing radiation! -- made to teach kids about uranium and uranium mining [3].

[1]: [http://national-radiation-instrument- catalog.com/new_page_14...](http://national-radiation-instrument- catalog.com/new_page_14.htm)

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

[3]: [http://io9.gizmodo.com/the-terrifying-age-of-radioactive- toy...](http://io9.gizmodo.com/the-terrifying-age-of-radioactive-toys-for- kids-1501777693)

<comment><USER4> The USGS would assay your samples. A relative who worked there once had the job of reporting to a prospector that while his sample was nicely radioactive, the radioactive chemicals did not occur in nature. I think the prospector may then have threatened to complain to his congressman.

</comment></comment></comment><comment><USER5> The picaresque novel "Been Down So Long It Looks Like Up To Me" by Richard Farina (classmate of Tom Pynchon's) has an incredible scene where a traveling student drinks martinis in Vegas with rich oilmen as they watch the bombs go off before dawn. At first I thought this was pure fiction, but it's incredible to know that scene was based on a terrifying reality.

</comment><comment><USER4> In Wright Morris's novel _Ceremony at Lone Tree_ , a fellow driving from Baja California to Nebraska stops off at a motel where the clerk notes him down as "Wake before Bomb", i.e. to be awakened in time to see a test. In the event, the test is canceled.</comment>


Show HN: HowManyPeople.biz – Let customers see if there's a crowd before they go - <AUTHOR> http://howmanypeople.biz <comment><AUTHOR> This is a simple web site that I put together for small businesses that want to keep crowds small and avoid lines at their businesses while running at a limited capacity. It includes a simple app to keep tally which is then visible to people searching for you.

It's totally free for all to use and any feedback is appreciated!

</comment><comment><USER2> why not just google the place and see it on the activity map? it shows you live traffic stats. it will be difficult to compete against google i imagine.

<comment><AUTHOR> Google will give a relative measure of how busy the space currently is but doesn't give an exact number or a sense of how full a location is relative to any temporary capacity limits that might be in place.</comment></comment>


Ask HN: How many of you use business coaching etc? - <AUTHOR>

As I mentioned in a previous post - I'm interested in doing some self-help iPhone applications, so I'm gathering market research right now.<p>How many of you have your personal business coach? How many of you would use the services if you had an opportunity? What stops you? What do you think about business coaching? <comment><USER2> Why get a business coach when you can get a mentor? The mentor relationship is far more valuable in my opinion, if they take you on they genuinely want to help, where as the relationship with a biz coach could make you appear nothing more then a dollar sign and a pay check to them.

<comment><AUTHOR> Isn't it that a mentor will tell you how to shoot the goal, but you could use a coach to decide which goal to shoot?:)</comment></comment>