Video Game Industry Rocked by Outpouring of Sexual Misconduct Allegations - <AUTHOR> https://www.bloomberg.com/news/articles/2020-06-24/video-game-industry-rocked-by-outpouring-of-sexual-misconduct-allegations <comment><USER2> It's good that this is finally happening. Games has been long overdue for a reckoning. There's a really strong culture of worshipping individuals in games, particularly lead designers/creative directors, and a whole lot of bad behavior by them is overlooked/forgiven.

Having worked in the industry I'd believe basically anything anyone told me about the horrors they've seen.

<comment><USER3> > _Having worked in the industry I 'd believe basically anything anyone told > me about the horrors they've seen._

Can you (safely) provide any anecdotes? Genuinely curious - not doubting you.

<comment><USER2> Engineering manager asked a report to 'bend over and take it' from the only openly gay guy in the studio. Lots of off color jokes, (e.g. including animals having crudely animated sex in the background of builds that got sent to playtesters. Jokes about 'red rockets' and 'bearded clams' likewise), loud and angry arguments about whether characters were 'sexy enough' to appease the straight male player (and being 'excited' to see what cosplay of said sexy character would look like.), etc.

<comment><USER4> > asked a report

What does this mean exactly? Other than that, which I can't really judge because I don't understand it, it's just people talking and having fun… No sexism, no discrimination, no abuse. I realize any expression of being a sexual being is frowned upon in Americas puritanical workplaces, but it's hardly scandalous. Neither is expressly aiming at the market of heterosexual male adolescents. There is a lot of talk of working environments being "unfriendly" towards female coworkers, and it's a legitimate problem, but it still falls very short of a "MeToo reckoning".

TFA isn't much better. The Avellone guy apparently got a women drunk and groped her. That's a #MeToo worthy offense and it should be enough to prosecute and "cancel" him. The rest is him sending DMs and a weird drive-by cancel-attempt on one Omeed Dariani, who made an "unwelcome sexual overture". The proposed party presumably said no and nothing more happened, or the article would mention it. I really don't know what's going on in the article. Avellone abused a woman. Dispense justice accordingly and stop trying to elevate any and all sexual behavior to the same level.

<comment><USER2> > What does this mean exactly?

"Hey you, lost the game, eh? Well, motherfucker, you better bend over and get ready to take it from <person>, you fucking loser, eh?" (Laughter)

I mean, maybe that's just joking around and having fun, but clearly not everyone there felt that way.

</comment></comment></comment></comment></comment><comment><USER5> This is happening in the DOTA 2 community right now. A pro scene / streamer was outed and their affiliations have been dropping them. Other major streamers are discussing it. It's all over /r/dota2.

</comment><comment><USER6> Tangential question: how come the Bloomberg website recognises me in incognito mode (I have reached the limit on free articles) I how can I overcome it?

<comment><USER7> In incognito mode, the FileSystem API is disabled, so anyone can tell you are in incognito mode by checking it

Bloomberg actually has the best paywall fingerprinting in the business. Using a new browser won't help either

</comment></comment><comment><AUTHOR> Meghna Jayanth, who worked on the phenomenal mobile game 80 Days, among other things, has been retweeting a lot of the stories of abuse as they are coming out:

[https://twitter.com/betterthemask](https://twitter.com/betterthemask)

</comment><comment><USER8> outlined: [https://outline.com/szyfzv](https://outline.com/szyfzv)

</comment><comment><USER9> Couldn't read article. Stupid paywall.

</comment><comment><USER10> The video game industry is just like any other industry - sex, violence, corruption, success, failure. But because its so consumer-oriented, and probably because everyone who works within it is relatively young, everything receives excruciating attention.

The same stuff occurs in boring industries, but no one cares and it doesn't hit Twitter or Reddit.

<comment><USER11> I moved from making AAA games to other parts of the software industry in 2005. It is _not_ "just like any other industry". The working conditions were bad/abusive, very open sexism, lots of young inexperienced employees (like myself at the time) who don't realize what's going on is not the norm elsewhere. I got paid in a class action settlement against one of my employers. I don't get the impression anything has changed.

Leaving games got me: cooler/more interesting work, much better pay, dramatically better work conditions. I never again experienced anything at the level of the unpleasantness of working for a game studio.

<comment><USER12> I also worked in the video game industry when I was younger (2000-2010 I think?) and had no idea that all the essentially terrible things that were happening were not really normal. Some companies were definitely worse than others but it was definitely quite bad looking back on it.

Some of the companies have had repercussions because of it now.

</comment></comment></comment><comment><USER13> Last time this garbage happened a game dev killed him self. No trial no due process. Just straight up proxy execution.

Communist playbook.

How this garbage article from a garbage peddler made it to the front page is disturbing.

<comment><USER14> Trial and due process are tools that are unavailable to most victims. In most cases, the only way to deliver justice and protect others from harm is to speak out.

And if you think victims should be silenced by a system that has been designed from the ground up to work against them, then you are part of the problem.

Alec was not executed by proxy. He killed himself after his pattern of abuse was revealed to the world. He did not deserve to die, but trial and due process were never an option.</comment></comment>


Income inequality today may be higher today than in any other era - <AUTHOR> https://www.washingtonpost.com/news/wonk/wp/2016/07/01/income-inequality-today-may-be-the-highest-since-the-nations-founding/?tid=pm_business_pop_b <comment><USER2> The reason why income inequality doesn't matter when compared to wealth inequality is this:

If you're a high-income earner in a big city and you want to buy a house/apartment, you're going to have to take on massive debt and you will end up paying double what a wealthy person would pay for the same house/apartment (due to interests).

In effect, prices on the housing market are not determined by income-earners; they are determined by wealth-owners.

To buy a house (or anything which is in limited supply), income-earners are forced to compete with wealth-owners; and wealth owners can afford to drive market prices way up - This is in part because wealth owners, on average, do not value money as much as income-earners do. Also, as mentioned above, they don't have to factor in interest rates when making purchasing decisions.

<comment><USER3> As someone with a few very wealthy friends, this is not always true. It does however help to close a deal faster than someone who wants to purchase the same property using a mortgage.

1\. Interest rates matter, because if they're low, they'll usually invest their money elsewhere / pay the interest / pocket the difference. They'll often do a deal "cash" (meaning, without debt) and refinance later.

2\. Using debt to offset taxes matters too.

<comment><USER2> But surely you must agree that wealthy people do drive up property prices more than mere high-income earners. Just look at the case of Mark Zuckerberg's purchases in Palo Alto (as an extreme example):

First he bought a house for $7 million (which was widely regarded as massively overpriced at the time). Then he ended up buying all adjacent properties for $30 million.

In a few short years, he single-handedly contributed to a massive increase in property prices in his entire neighbourhood. This is essentially the story of San Francisco's property market over the past 10 years.

<comment><USER3> Of course, because high income != wealth. It's only the first step.

It could become significant wealth if they saved + invested it well, but most high earners are excellent at spending it all. Just look at the amount of bigtime basketball / football players who remain with nothing a few years after they stop playing.

</comment></comment></comment></comment><comment><USER4> Honest question, can anyone explain WHY this is considered to be such a big problem?

Really why, not just throwing slogans around. And why it should be treated before things like absolute poverty, etc.

<comment><USER5> Taking the US in isolation...

Absolute poverty is a solved problem. People rarely starve to death in the US. It's an El Niño year; out here in not-SF we're having a bit of a drought, but no one is seriously afraid of a famine. Sure, there are things like health care that could be better, but those are second-order effects and fairly minor on the poverty scale.

The actual problem is power. (That may not be a popular statement[1] in this forum, where single young adults are commonly making 2-3x the median household income and yet are fond of complaining about disenfranchisement.) Money is power, the power to do things and the power to tell others what do do.

Now, I admit that the technology industry seems spectacularly bad about translating it's assets into political power, so it may not be apparent to people reading this, but I don't expect that to last forever. (C.f. Thiel and Gawker.)

On the other hand, a lot of money in a small number of hands is not in the hands of the tech industry. Consider the Kochs, or Citigroup/JP Morgan/Goldman Sachs. That money buys politicians, to an extent, but it also buys agendas, access, and, rather amazingly, consensus. (Why do Americans seem to have a weird habit of voting for ideology instead of their presumably enlightened material interests?)

This power held by a few people means that the actions of a country may not necessarily be in accord with the wishes of its citizens. Take a look at the third graph in the article. The peak of the England-Wales line is roughly 1825-1875, roughly the high point of the British Empire and, strangely, including things like the Irish famine.

But, fortunately, for the likes of you and me, there isn't a problem. Yay. (As long as no one sets up guillotines.)

[1] Dare I say it?: not a politically correct statement.

<comment><USER6> Are there any facts to substantiate your assertion about power being the problem? It would seem to me that the power of elites is trending down if anything. The rise of Trump, the Brexit vote, and the rise in taxes as a percent of GDP across most rich counties would seem to go against the selfish interests of the monied elite.

<comment><USER7> Start with these:

[https://en.wikipedia.org/wiki/Economic_inequality#Effects](https://en.wikipedia.org/wiki/Economic_inequality#Effects)

[http://rooseveltinstitute.org/stiglitz-why-inequality- matter...](http://rooseveltinstitute.org/stiglitz-why-inequality-matters-and- what-can-be-done-about-it/)

[http://www.economist.com/news/briefing/21640316-children- ric...](http://www.economist.com/news/briefing/21640316-children-rich-and- powerful-are-increasingly-well-suited-earning-wealth-and-power)

Also read "Twilight of the Elites" to learn about how inequality leads to greater "vertical social distance" and how the government now largely reflects the interests of those at the top ([http://www.newyorker.com/news/john- cassidy/is-america-an-oli...](http://www.newyorker.com/news/john-cassidy/is- america-an-oligarchy))

<comment><USER6> Thanks for the links, I wasn't aware that the Wikipedia article was so flashed out on this topic.

However, I'm not sure I see any actual evidence to support the power theory. The economist article paints a link between education, IQ and income, but not political power. Stiglitz breifly asserts it's truth in point six in his article, but doesn't actually provide any documentation. And similarly, despite clicking through to a dozen promising sources in the wiki, I wasn't able to find any evidence of any sort of trend or change in political power associated to income inequality.

<comment><USER7> The ability to get the best jobs, go to the best schools, live where you want to live, retire while others cannot, and bend the government to your will are all forms of power. The last, in particular, is _political_ power.

From the Princeton study ([http://www.huffingtonpost.com/2014/04/15/government- wealthy-...](http://www.huffingtonpost.com/2014/04/15/government-wealthy- study_n_5154879.html)):

U.S. government policies reflect the desires of the wealthy and interest groups more than the average citizen, according to researchers at Princeton University and Northwestern University.

"[W]e believe that if policymaking is dominated by powerful business organizations and a small number of affluent Americans, then America's claims to being a democratic society are seriously threatened," write Martin Gilens and Benjamin I. Page in an April 9 article posted on the Princeton website and scheduled for fall publication in the journal Perspectives on Politics.

"Not only do ordinary citizens not have uniquely substantial power over policy decisions; they have little or no independent influence on policy at all," the researchers write in the article titled, "Testing Theories of American Politics: Elites, Interest Groups, and Average Citizens."

Affluent Americans, however, "have a quite substantial, highly significant, independent impact on policy," Gilens and Page write. Organized interest groups also "have a large, positive, highly significant impact upon public policy."

</comment></comment></comment></comment></comment></comment><comment><USER8> What matters is not so much the _degree_ of income inequality, but whether the masses on the fat tail of the income distribution feel they are struggling to satisfy basic needs like food, shelter, and education.

Societies in which the majority of people are struggling to satisfy such needs are probably not sustainable, regardless of the "fairness" of their economic and political systems.

Put another way, the system 'must work' for a majority of people in it.

<comment><USER9> I take it as the direction of income inequality is worse than wealth inequality. If 10U$S of new value are created, and only 1$ of it goes to the bottom 60% the bottom will stay there.

In a way, the direction of where you are going matters more than where you are. Even if everyone had food and shelter, we would feel less anxious but inequality would still get more profound and unavoidably end up in some people owning others.

</comment></comment><comment><USER10> These studies are nothing but troll bait.

1\. What is 'income'. Do you mean taxable income that is received through an employer? Because if you do, most of the 1% at the top probably don't receive 'income'. For example John Kerry is worth about 600mil but received $60K in 'income' for the year he was running for president. The rest of the money gets funneled into off shore bank accounts 503B organizations, shell companies, etc. I think the only reason that he had any 'income' at all was because he sold a few paintings that year. Most of the super wealthy don't have any 'income' at all.

2\. Globalization effects. I've lived in some of the wealthiest places in the US and many very wealthily people in the US are foreigners that happen to live here or have many their money overseas. So if Jack Ma decided to live in Washington D.C. would he be part of the top 1% of the US graph? Splitting a graph into US vs UK for instance may no longer be realistic in the modern world. Most 1%ers are globalized.

Couple of other ideas I had:

>> Technological change and globalization have widened the gap between skilled workers and less-educated workers.

Take a look at india. Tech workers do alot better than their peers. Is that bad? Isn't that raising the standard of living for indians? Should all indians all go back to poverty so that they can not have any 'income inequality' in their country?

I feel like these pieces are written to justify tax increases by getting people to believe that there is someone out their that can be 'squeezed' for money because 'it's just not fair'. The reality is that most Americans that make above 50K a year are probably in the top 1% of the global population. So maybe in that sense all americans are part of the super rich 1%ers.

</comment><comment><USER11> Note that it's not just a frozen fact, but a growing trend.

Those charts go up up up, meaning that things are going to get even worse for more people if all parameters stay the same.

This never ends well. Radical new ideas take hold in the minds of the frustrated lower classes and then everything explodes into revolutions, wars and rivers of blood.

The reason for the violence is the frustration morphed into hatred on one side and feeling of superiority and entitlement morphed into fear on the other side.

Nothing good can come out of clashing hatred against fear.

Some "skilled" politicians channel the feelings of frustration-on-the-verge of hatred towards other nations or social classes, like immigrants, political unions (EU), etc and that's why you have the populists gaining traction all over the world.

Technology was supposed to save us from this - yet it seems to have accelerated it.

The cherry on this cake is the fact that the biosphere and climate are collapsing, while the population is growing, so something's got to give first.

Interesting times ahead for sure.

</comment><comment><USER12> Title is misleading. Globally inequality is falling. The reason for this is primarily that the poor are getting richer.

[http://www.maxroser.com/economic-world-history-in-one- chart/](http://www.maxroser.com/economic-world-history-in-one-chart/)

[http://siteresources.worldbank.org/INTPOVRES/Resources/47722...](http://siteresources.worldbank.org/INTPOVRES/Resources/477227-1142020443961/Module5_chap9_10.pdf)

Article means inequality within certain arbitrary borders.

<comment><USER13> To the people that downvoted yummyfajitas' comment; can you maybe explain why it's wrong/not germane?

Please and thanks.

</comment></comment><comment><USER14> Income inequality in the Revolutionary era was the lowest ever[1].

[1] If you don't count the Native Americans who were persecuted and slaughtered for their land.

Plus, isn't it very easy to have low income inequality if you have a whole continent of land free for the taking[1]?

<comment><USER15> > Income inequality in the Revolutionary era was the lowest ever[1].

> [1] If you don't count the Native Americans who were persecuted and > slaughtered for their land.

Also [2] if you don't count the imported slaves who contributed much of the raw labor.

<comment><USER16> They counted the slaves. Whether they counted them appropriately is another matter.

<comment><USER17> This is a wry comment, but it's not actually making a claim about the issue the parent and grandparent post are discussing – whether Revolution-era inequality was very low.

</comment></comment></comment></comment><comment><USER18> Related:

[http://www.fooledbyrandomness.com/FatTails.html](http://www.fooledbyrandomness.com/FatTails.html)

"How to (not) estimate Gini indices for fat tailed variables":

[https://dl.dropboxusercontent.com/u/50282823/GINI-1.pdf](https://dl.dropboxusercontent.com/u/50282823/GINI-1.pdf)

<comment><USER19> Quote from the summary of the article:

        Consider 10 separate countries, cities, or other units
        of equal size, with population 1000. Assume the wealth in
        each unit follows a power law distribution, say a ParetoLomax,
        all with the exact same parameters. Assume a
        tail exponent of 1.1. The average Gini index as obtained
        by direct measurement will be ≈ .71 per country. Now
        aggregate them into a single country. The composite
        Gini — as traditionally and currently measured — will
        be ≈ .75, that is 6% higher – for the same sample.
        This inconsistency implies not only that the Gini cannot
        lend itself to comparisons between units of different size
        but that intertemporal assessments are vitiated by the
        population changes.

</comment></comment><comment><USER20> I'd be more interested in "standard of living inequality", especially given two aspects which may be true:

1\. It may be the case that everyone today has a higher standard of living overall, than in years past, due to a combination of technological advancement and an overall "a rising tide lifts all boats" phenomenon.

2\. There may be a point of diminishing returns in terms of the relationship between income and standard of living. That is, if you double your income, maybe your standard of living doubles (this is all assuming we have a good, objective metric for this). However, if you quadruple your income, your standard of living may not quadruple in turn. And so on...

I'm not saying that relative income disparities don't matter at all, but I think some notion of absolute standard of living might actually be more important in the grand scheme of things.

</comment><comment><USER21> The hon. Gentleman is saying that he would rather that the poor were poorer, provided that the rich were less rich.

[http://www.margaretthatcher.org/speeches/displaydocument.asp...](http://www.margaretthatcher.org/speeches/displaydocument.asp?docid=108256)

</comment><comment><USER22> As the world gets wealthier, the ceiling goes up, the floor doesn't really change. So, duh, the Delta grows larger.

This is not a problem per se. The problem is that people at the bottom cannot get their needs met, in part because we simply do not build affordable housing in anywhere near sufficient quantities. If we would remedy that, some people being crazy rich would not, per se, be an issue.

</comment><comment><USER2> I don't understand why there is so much focus on income inequality. Income inequality doesn't matter. It's not the problem; it's only a symptom of the real problem which is wealth inequality.

If you work REALLY HARD in an area which takes 20 years to master and after doing so you end up earning $200K per year, then you probably deserve it. It is hard getting to such point; you have to constantly plan your career, educate yourself and put yourself through a lot of emotional/psychological trauma for a very long time to get that stage.

On the other hand, if you inherited $6 million worth of company stocks from your parents and you earn $200K in dividends each year from those shares and you don't work at all, then you probably don't deserve that income.

... And somewhere in between these two extremes, there are entrepreneurs; who work really hard and take huge risks to create a successful company (and often fail), but when they do succeed, they tend to get disproportional payouts.

<comment><USER23> And why is it a problem? The "poor people" now live better than any other point in history. Everyone now lives better than any other point in history.

More educated, less crime, better living conditions, better nutrition.

The only problem I see is jealousy. Poor people are jealous of what rich people have and want to take it.

<comment><USER24> That is an extremely insulting thing to say.

And even if it were true, if jealousy is a barrier to happiness, why shouldn't it be seriously addressed? What is the point of human society if you're just going to casually discard the concerns of the vast majority of people?

<comment><USER23> Because you should address the jealousy instead. You don't change because of somebody's jealousy. You don't study less because somebody else can't achieve the same results.

Jealousy is a problem with the individual, not a problem with society. They are jealous because of their own shortcomings, not because someone else is successful. They just channel their self loathing into hating the successful. You can't cure that by taking away money from the rich.

</comment></comment></comment></comment><comment><USER25> > We know, of course, that incomes are highly unequal today

I pine for the day when journalists who make statements like this in defence of their own articles aren't taken seriously without hard data to support their argument.

<comment><USER26> Do you earn minimum wage? Do you earn a million dollars or more per year?

Given that there are people in both categories, I'm not sure more "hard data" is needed. If you actually dispute the claim, there's a Wikipedia page with many links. That's probably a better source than expecting every article on the topic to explain it again.

</comment></comment><comment><USER27> The main problem is housing in my opinion. Everything else is affordable enough. It takes a few months to build a house, but decades for someone to pay it off, assuming they even have a job. Doesn't make sense.

<comment><USER14> It takes a few months for one person to build a house from raw materials? I'd like to meet this superman.

<comment><USER28> I built a house. It took 3 days to frame it up, so it looked like a house, 3 months until all the doors, windows, etc were in and it could be locked up, and I moved into it at the 6 month point. All work done on weekends, and evenings by myself and my wife. A bit of help from some friends. We did all the work except for the pouring of the concrete foundation and the hot tar roof.

It was a good experience, something I had never done before. I learned a lot and it was a set of skills I have used often since then (this was in 1998). The confidence that you get from finishing a large project has been great too.

The real time consumption is all the little things - network cabling, gardening, finishing and trim inside and outside. Just building a structure to live in is quite easy, and does not take that long.

<comment><USER29> I want to do this as well for a Tiny House (320 sq ft + 160 sq ft loft). I think the physical building part will take six months (assuming I take part- time work with my day job). I estimate I will save hundreds of thousands in the end when compared to the traditional route.

It is the legal, planning and design, all the research, which is the invisible cost that takes at least as long as the physical building activity.

Even non-Tiny Houses have a cost which is mostly paper. I'd like to see a breakdown of costs excluding labour and materials across the world. I don't think people realize how much of a house price is arbitrary. High house prices aren't necessarily a sign of a wealthy neighbourhood, it could be just the opposite e.g. new regulations made it cost prohibitive for new builds, which makes everybody look good on paper. And now the average person can't buy the average house.

> The real time consumption is all the little things

Yes! The impressive part, the framing/sheathing/cladding is instantaneous in comparison.

<comment><USER28> You should do it! I don't think it will take 6 months if you are only working part time. The house I built was 1600 sq ft, 3 bedroom and I was working 60 hours a week while I built it. I found working all weekend on the house re- charged me for the job during the week.

A tiny house should not cost hundreds of thousands - wood is just not that pricey at Home Depot. You should start pricing it out and give it a shot. It is a tremendous feeling of accomplishment to live in a house you built yourself.

<comment><USER29> > I don't think it will take 6 months if you are only working part time.

It wouldn't take very long but I have some special features in my Tiny House design nobody else has. Here are three examples:

I am using a spiral staircase of 3 sq ft. Marvelous design! [http://www.eestairs.com/en/36_1m2_by_eestairs_%28efficient_s...](http://www.eestairs.com/en/36_1m2_by_eestairs_%28efficient_stairs%29.htm)

Then I am creating a space illusion using a special one way mirror.

I can place two one way mirrors with a terrarium (a small indoor garden) between them. This way two different rooms (bathroom and stairs) can see the terrarium reflected but neither space can see the other. .

Normal one way mirrors require one side to be light and the other dark. With this one way mirror I can have light on both sides. [http://www.okaluxna.com/products/viewblock/](http://www.okaluxna.com/products/viewblock/)

I also hope to use natural daylighting with a solar collector and fibre optic cable. This will require some experiments so I am going to do those first.

I'll put all this up online for HN when things get interesting. In particular I'm looking for a cheap way transmit daylight (I have fibre cable but the normal kind is very thin).

> I found working all weekend on the house re-charged me for the job during > the week.

I hope that happens to me! ;-)

> A tiny house should not cost hundreds of thousands - wood is just not that > pricey at Home Depot. You should start pricing it out and give it a shot.

Looks to be 50k - 75k so far. You can build Tiny Houses really cheaply, even for 5k, but I'm optimizing for longevity (like a custom built stainless steel trailer foundation) and have unusual design features so it will be at the higher end.

</comment></comment></comment></comment></comment></comment><comment><AUTHOR> This is why "leave" won, not racism or xenophobia.

<comment> k-mcgrady It's a mix. A lot of people voted that way for economic reasons BUT they think those problems are caused by 'foreigners taking our jobs'. A lot of people I saw interviewed were also trying to protect jobs that are unsustainable or wanted protection from competition. People who voted economically were thinking sort-term. A lot of people in their 50's who want to protect their job and don't want to retrain.

<comment><USER30> >protect jobs that are unsustainable or wanted protection from competition

A) Everybody wants protection from competition. Where do you think profits come from? There's no shame in wanting protection, _especially_ not as the social safety net is hollowed out. If they were not subjected to austerian measures / offshoring in the heartlands the "remain" vote probably would have won.

B) The same economists who are absolutely certain that these people's jobs are unsustainable are the same economists who pushed for offshoring and were _completely_ blindsided by the financial crisis in 2008. The experts thing rang true because economists have no credibility left any more.

In fact, the only economist I know of who actually saw 2008 coming wanted brexit (though not for economic reasons).

</comment></comment></comment><comment><USER31> I think 1200 and earlier was worse.

But i also think we go back to that :)

</comment><comment><USER32> "Incomes were more equally distributed in colonial America than in any other place that can be measured"

If you weren't a slave.

Stopped reading right there. hahahahahahahahaha.

<comment><USER33> Perhaps you shouldn't comment when you haven't read the post then. If you had, you would have learned that Lindert and Williamson's analysis did account for the income of slaves. Five of the eighteen paragraphs of this short article about their work discusses that part of the analysis.

<comment><USER32> Comparing colonial America to today's free societies is laughable no matter how they "account" for the work of enslaved people.</comment></comment></comment>


One does not simply become motivated - <AUTHOR> https://email@example.com/one-does-not-simply-become-motivated-ae1b11859762#.jo9euuuw3 <comment><USER2> Good article. Couple of things I've found really useful whilst building a video game in my spare time:

1\. If you like to listen to music whilst you code/work, check out focusatwill.com. It's basically the right kind of background music, ie: not engaging enough to distract you. I used to waste time trying to select music to play for my work sessions, now it's simple.

2\. When you finish a work session, write a note to yourself saying where you're at. that way, when you come back to start work again, you can pick up where you left off without spending time trying to remember stuff. It's past you being nice to future you! (I got this from a writing tip that said you should always leave a sentence unfinished when taking a break, because then you can hop back in really easily because it's mid flow).

Really agree with the OP about exercise/well being. It's not a waste of time. For most (if not all) of these kinds of side projects, it's a marathon, not a sprint.

</comment><comment><USER3> Ya. As someone trying to make a multiplatform phone app because one the idea seems useful scaled to many people, and unique, on the side, it seemed easy enough but it takes alot of habit changes and habits form over the course of 21 days until they become second nature around 3months where you can integrate more and changes to optimize your everyday life around your project.

Instant gratification is a subconscious mindset many people have and overcoming it day in and day out and forcibly changing your perspective when you get frutsrated with how little your accomplishing to "taking a break" or "going out for a drink with friends to blow off some steam" to what can I do starting today to fix this or avoid it next time or implement a solution or make this apart if my everyday life? And then following through instead of just giving into frustration with a self soothing action like procrastination in the form of going out, checking your phone etc. Is the hardest part.

There will be many times youre not motivated but dedication and habits will help you overcome that. I go to work from 6am to 2pm. I'm home by 3pm coding and on the on the weekends. I was wasting time going to the gym and in crowded gyms so I invested in weights and yoga at home that I do around 4:30am before showering and going to work and "binge" on some more luxurious types of working out like a hike or a lung run outside on the weekends.

When time is of the essence you'll find that 1\. Not automating your bills 2\. Not having lastpass or some other organized platform for passwords to logins 3\. Driving to gym 4\. Grocery shopping 5\. Friends who do not contribute to your lifestyle 6\. Dysfunctional romantic relationships 7\. As a girl, spending money on random stuff like clothing and makeup and martinis with girls who only want to talk about their boyfriends

Are time suckers.

Get sleep.

Get up early and have "you" time whether it's yoga, reading your favorite blog, taking the dog for a walk, cooking breakfast having you time before the day starts makes you happier and more focused

Make a to-do list the night before with every little phonecall, extra stop you have to make on the way home and email you have to do. Have 15things on your list? Turns out it took an hour to compile all of it that night before but 25minutes to execute the day of. You can send that phone call while they are checking out your groceries, make that phone call during your lunch break etc so you can FOCUS and not feel like you're forgetting to call time Warner cable about that address change or call your mom back. Get it done and move on. Do it everyday for a couple of months until it wittles down into a routine.

Get a minimalist high class wardrobe. DONT spend time especially as a girl trying to figure out what to wear. If you're getting sleep. Working out regularly and bribging home healthy groceries and not drinking all the time having a minimalist nice well tailored wardrobe with some signature you pieces to brand your personal spin to it is all you need to look great. Less is more and alot more money to spend on that new thing you needed for your project that you didn't know you needed.

If you do these things above it will take up alot of your time for the first couple of months but your life will forever be in better order and it will be more habit and take up less time.

Very few people show up to their goals tasks or job each day with a workout done, a healthy breakfast, having taken them time, dressed well without much thought, and have a detailed todolist so when they need to focus on a task they can do it without the subconscious burden of trying not to forget random things that can turn into big things later.

Wow. Shower, clothing, breakfast. Workout, you time = productivity and focus

Mabipulative people. Negative people, on and off gray area relationships, anything or anyone emotionally exhausting besides your work: ain't nobody got time for that.

At the very least. Trying out a challenging but doable project is great for getting your life in order and seeing who and what serves you and lifts you up when it's crunch time and who wants the best for you and who can contribute to your life in a positive way. If you make a genuine effort at making room in your life for a project and even if the project is a failure or you decide to move onto another one, this few months of life cleansing and getting your s$&* togerher time will not be something you regret.

<comment><AUTHOR> Thanks, many good tips! I'm also doing Yoga daily. Helps me especially, because my work as developer involves lots of sitting. Still I have almost no backache by doing simple, time effective exercises. And you can look everything up on Youtube.</comment></comment>


Simplest Dart code to post a tweet using OAuth - <AUTHOR> https://blog.dantup.com/2017/01/simplest-dart-code-to-post-a-tweet-using-oauth/ <comment><USER2> I'm wondering: why haven't you used the oath and/or the twitter packages?

(Well, I can understand the twitter package, because it requires a bit of tweaking, but not too much.)

<comment><AUTHOR> I guess I didn't really investigate packages for Dart as I already had the C# code so I just ported. The reason I hand-rolled it for C# was mentioned briefly in the C# post; all the OAuth libraries where HUGE (like DotNetOpenAuth pulled in 10+ NuGet packages). Not only did these seem like overkill for what I wanted to do, they also seemed like massive liabilities.

I feel like I spend half of my life at work investigating or working around bugs in dependencies added by past developers, patching abandoned libraries, fixing conflicting dependencies dependencies version constraints or just working around incompatibilities between their goals and ours (both of which may have changed since the dependencies were added).

I also think we generally don't think hard enough before taking dependencies on from complete strangers. With Dart this isn't quite so bad because the source is all there and you can scan through it but in C# people just pull binary dependencies and assume they're safe. I don't think this is good practice and I think it's only a matter of time before some relatively popular package ends up with obfuscated malware in the binary in the package (but not the repo) and everyone will get upset :-(

\--

I just actually took a look at the Dart twitter pub package. It has a bunch of TODOs on the homepage and the pubspec shows a dependency on a Git repo by the same author for OAuth using the "random-secure" branch. Not only is this repo full of stuff I don't need (like Shelf extensions to do OAuth flow I don't want) but the Git dependency means I have no control over the version of that that gets pulled (and the name of the branch doesn't fill me with confidence). Sure, if I used it it would probably work; but for the little code it took I'd rather eliminate a huge set of possible future complications of that author starts making changes in that Git repo.

I know some will refer to this as NIH and I'm ok with that. I'd rather spend a little more time now and save time later, and in my experience taking random deps (esp. from small unknown devs) always results in pain down the line. I don't claim this is the best/correct way, it's just what feels best to me based on my experiences :-)

<comment><AUTHOR> I just noticed the OAuth package on pub is the same guy, so I wonder whether the published twitter package uses that isntead of the git repo mentioned in the pubspec on GitHub. That would be slightly better.

That said, with OAuth so common and used by Google a lot (and such a risk to get wrong) I'm surprised there isn't a Dart Team-owned package for this. I'd be much more confident using something from a company with a reputation to protect and a good dev/QA process.</comment></comment></comment>


I wrote a free book about TDD and clean architecture in Python - <AUTHOR> Hey HN,
I just published on Leanpub a free book, "Clean Architectures in Python". It's a humble attempt to organise and expand some posts I published on my blog in the last years.
You can find it here: https://leanpub.com/clean-architectures-in-python
The main content is divided in two parts, this is a brief overview of the table of contents
* Part 1 - <USER2>
  - Chapter 1 - Introduction to TDD
  - Chapter 2 - On unit testing
  - Chapter 3 - Mocks
* Part 2 - The clean architecture
  - Chapter 1 - Components of a clean architecture
  - Chapter 2 - A basic example
  - Chapter 3 - Error management
  - Chapter 4 - Database repositories
Some highlights:
- The book is written with beginners in mind
- It contains 3 full projects, two small ones to introduce TDD and mocks, a bigger one to describe the clean architecture approach
- Each project is explained step-by-step, and each step is linked to a tag in a companion repository on GitHub
The book is free, but if you want to contribute I will definitely appreciate the help. My target is to encourage the discussion about software architectures, both in the Python community and outside it.
I hope you will enjoy the book! Please spread the news on your favourite social network <comment><USER3> I really don't get the mantra of "implement only the shortest solution that makes the test pass"

I would add a very important second part here "you think is correct".

An introduction to TDD that starts by implementing a function called `add` with `pass` or `return 9` is somehow deeply irritating to me.

The example would be so much closer to real world usage if you started with `a + b` and then realized the tests also require you to support 3 arguments.

Also: you introduced the test for three arguments _after_ you wrote the first code for `add`.

<comment><USER4> > "you think is correct".

> `add` with `pass` or `return 9` is somehow deeply irritating

Similar to others, I understand this feeling. And I would urge you to get over it.

First, technically returning 9 for a test of add(4,5) _is_ correct. Your tests define what the function does, not the name. If you are thinking "a correct add adds all numbers", then that isn't wrong, but it is bringing your tacit world knowledge into the code without that knowledge being expressed in the code. And that's Not a Good Thing™.

It also seems to me that what you meant here was not "correct" (because it is correct), but "general". And that's one of the points of XP/TDD: as programmers we have a terrible tendency to over-generalise. Really horrible. "Write only the code to make the test pass" works against that tendency (and also has the nice gamification effect mentioned elsewhere).

The other point is when to generalise. The first answer is "not", the second is "not yet". Generalise only when you have several instances, otherwise your generalisation will, what's the technical term, _suck_.

Last not least is _how_ to generalise. TDD/XP essentially say that you generalise only as a refactoring, that is a behavior-preserving transformation.

So when you add the add(10,2) test case, the really pedantic way of doing it would be to handle the extra case with an if-check, then once the additional test passes refactor the add method to handle all those cases with less code, by removing the case-handling and doing arithmetic.

What that means is that you separate the coding that gets the tests to pass from the more challenging bits of coding where you need to generalise, with the latter always under full test coverage.

It's a _really_ nice way to make progress.

And of course: use your own judgement. If things get to tedious, it's OK to leave out steps. At some point you will probably find that you are running into problems, at that point you want to slow down and re-introduce more of the intermediate steps.

<comment><USER5> > First, technically returning 9 for a test of add(4,5) is correct. Your tests > define what the function does, not the name. If you are thinking "a correct > add adds all numbers", then that isn't wrong, but it is bringing your tacit > world knowledge into the code without that knowledge being expressed in the > code. And that's Not a Good Thing™.

How do you feel about just starting with tests that are actually more of a specification? For example, I'm starting to feel that unit tests aren't something we should be writing, but are something we should be _generating_. We should be writing things like QuickCheck specifications. So the first test I'd probably write is:

given x. y. add(x, y) == x + y

This is a specification that is essentially tested against a "model" (native addition, in this case).

<comment><USER4> > How do you feel about just starting with tests that are actually more of a > specification?

Tempted and conflicted. Yes, it's tempting, because "yay, more general and comprehensive", the mathematician inside me says.

On the other hand, the beauty of these sorts of tests is often precisely their concreteness/specificity. Tests should be so simple that their correctness is obvious by inspection. (One of my problems with specifications was always that to me it was no clearer that the specification captured what I wanted than that the code did).

The other side of the equation is that although theoretically such concrete tests are seriously flawed, because they only test one set of values, in practice that is actually usually quite sufficient.

> we should be generating

Again, sounds very reasonable, but now you have to trust (a) your generator and (b) your specification of those tests. I'd rather have a concrete test.

Now I do think there is some use for this sort of thing, for example in ferreting out edge cases that you might otherwise miss. I wouldn't want to rely on it.

</comment></comment></comment></comment><comment><AUTHOR> I just published version 1.0.2 of the book. Some readers spotted typos and bad grammar and submitted pull requests (kudos are in the changelog). You can download it from Leanpub. Happy reading!

<comment><USER6> BTW, I think it might be worth including "commands" in the usecases, and repository (looking quickly at the code on GitHub). At the moment, the only usecase is fetching data.

<comment><AUTHOR> Yes you are right. I planned to add that part in a future release. Thanks a lot for the suggestion!

</comment></comment></comment><comment><USER7> Unrelated: I'm a very experienced developer, and I want to learn Python, and I'm yet to find a book that's sufficiently challenging and doesn't start too slowly to hold my interest.

I guess what I'm looking for is something like: "here's a list of array operations. Now do Towers of Hanoi". Any recommendations?

<comment><USER8> Well, you can try my "Full Speed Python" book [1].

Each chapter shows the minimal syntax needed for the chapter content, and then it has some exercises to get you going. I use it to teach Python to my Distributed Computing course students (2nd year students, which come mostly from a Java and C background).

The first chapters are mostly for beginners, so I guess you can skip them if you want. I also talk about more advanced concepts on the later chapters (such as iterators, generators, coroutines and asyncio). You can get the epubs/pdfs from [2]..

[1] [https://github.com/joaoventura/full-speed- python/](https://github.com/joaoventura/full-speed-python/)

[2] [https://github.com/joaoventura/full-speed- python/releases/](https://github.com/joaoventura/full-speed-python/releases/)

<comment><USER7> This looks absolutely perfect!

</comment></comment></comment><comment> git-pull I'm the author of a book also available on Leanpub.

I love this service as a publishing solution. You can write markdown and get your book updated to dropbox (while you write it/push it to VCS) and then publish directly through them to epub/PDF. But the other nice thing is they can export Amazon-compatible files so you can publish to Kindle.

They also offer a very fair and transparent royalty structure. I found Amazon could be a bit greedy. The reason why is when a book goes above 9.99, they increase the royalty significantly.

The only other tidbit I have to say is:

I also considered using sphinx-doc as a route to build the book. I haven't found a way to offer an appealing LaTeX (theme? template?) that'd work with it. If you do know LaTeX well, and have time on your side, maybe sphinx-doc could be down your alley. It can build to HTML, PDF, and epub.

As far as distribution goes: My experience with Apple's book store was very cumbersome. Difficult to get support, and in one case there was a glitch that unpublished the book.

<comment><AUTHOR> Thank you for your comment. I considered using LaTeX or other tools, but in the end Leanpub is very easy and straightforward and, at least for the time being, I'm OK with it. Thanks for sharing your experience with Amazon and Apple

</comment></comment><comment><USER6> Awesome. I've always been curious over examples of clean architecture in Python. I had a cursory glance. As a suggestion, I think the `Room` domain model could be improved with dataclasses ([https://docs.python.org/3/library/dataclasses.html](https://docs.python.org/3/library/dataclasses.html)).

<comment><USER9> Or even more by attrs: [https://www.attrs.org/en/stable/](https://www.attrs.org/en/stable/)

<comment><USER10> Try @attr.dataclass. It uses the cleaner 3.6+ dataclass syntax, but is more flexible (supports kw-only classes).

<comment><AUTHOR> Thank you both for your suggestions, I will consider using one of these in the next versions of the book. Python is a moving target, so I will have to update the examples.

<comment><USER6> I've recently also come across [https://pydantic- docs.helpmanual.io/](https://pydantic-docs.helpmanual.io/) which appears to be useful for enforcing simple constraints on domain entities.

</comment></comment></comment></comment></comment><comment><USER11> Hey, thanks for doing this! I wonder, is there a way to get the book without leanpub? I'm not too keen on making an account to check out.

<comment><USER9> One nice thing about LeanPub is that it doesn't have to be free, you can pay as much as you want instead: that way we can support the author.

<comment><AUTHOR> Yes indeed this is the reason why I prefer to leave it on that platform. I haven't published the book to make money, but support is appreciated and covers the publication cost and other things like the blog. Thanks!

</comment></comment></comment><comment><USER12> I haven't looked at it yet but I wanted to say thanks anyway. Your blog has been really useful for picking up some more core software development practices in Python. Looking forward to going through this!

<comment><AUTHOR> Thank you for reading the blog and the book! Let me know what you think about the book

</comment></comment><comment><USER13> Thanks, I will read. And hopefully I will review. Hope I can hold myself accountable to that.

<comment><AUTHOR> Thank you for reading the book. Let me know if you have comments

</comment></comment><comment><USER14> Just downloaded and started reading the first chapter. Thank you!

<comment><AUTHOR> You are welcome. Thanks for reading my book

</comment></comment><comment><USER15> Hi,

thanks for writing the book.

What software did you use to writing?

<comment><AUTHOR> Leanpub produces the book starting from Markdown/Markua files. Markua is a dialect/fork of Markdown that implements book-related features like footnotes. So I just wrote it with an editor. You can find the source code of the book here [https://github.com/pycabook/pycabook](https://github.com/pycabook/pycabook). Thank you for reading the book

<comment><USER16> Is it possible to compile the book source on my computer with some tool?

<comment><AUTHOR> I don't know. I believe the Markua specification is still in progress and while it is open Leanpub is the company that pushes it the most obviously. I haven't found any Markua compiler, but for this book a Markdown compiler should cover 90% of the formatting.

</comment></comment></comment></comment><comment><USER17> s/^/Show HN: / ?

<comment><AUTHOR> You know what? I wasn't aware AT ALL of the "Show HN:" thing. Sorry. Next time I'll do, I believe now it's late, isn't it?

<comment><USER17> I was hoping a mod would notice and update the title.</comment></comment></comment>


Welcome Adora, Nicole, Elizabeth, Case and Robby - <AUTHOR> http://blog.ycombinator.com/welcome-adora-nicole-elizabeth-case-and-robby <comment><USER2> "Adora Cheung is joining YC as a Partner. Previously, she was co-founder and CEO at Homejoy and a product manager at Slide."

I followed the Homejoy/Flymaids [1] controversy loosely. It seems like Adora was not involved in the Flymaids project, but the handling of internal customer data left a bad taste in many people's mouths. Was this situation with Aaron ever resolved?

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

<comment><USER3> i hired a firm to close down everything, including the sale of remaining assets - some of which ended up with aaron. obviously everyone around the table could've done better.

<comment><USER2> Gotcha, thanks for the transparency.

Congrats on the position at YC, looking forward to seeing what you guys bring to market in the near future.

</comment></comment></comment><comment><USER4> "Case is a high-school dropout."

I really like this. Straight to the point. Not everyone needs a certificate to prove their worth. I imagine Case wears that phrase with pride.

<comment><USER5> Why would he be proud of this?

<comment><USER6> Why wouldn't he?

</comment></comment></comment><comment><USER7> I guess titles no longer matter, eh? For Elizabeth she is "Office Manager" (per linkedin) and she was deans list all semesters at Cornell. Is this like starting in the mail room at CAA? [1]

[1] [http://www.hollywoodreporter.com/news/hollywood-mailroom- sec...](http://www.hollywoodreporter.com/news/hollywood-mailroom-secrets-caa- icm-uta-wme-257222)

<comment><USER8> My wife was an Office admin at Sequia Capital. She had not graduated college yet and I was out in Palo Alto for an internship. A friend randomly said they where looking to bring on a temp office admin and she got the spot.

She might not have had the coolest title or daily jobs, but she was there when fb bought whatsApp, got to sit in on partner deals (help bring coffee and set stuff up lol) and meet tons of amazing people.

<comment><USER9> But is she still the "office lady" or did meeting all of those "amazing people" earned her a better job someplace else?

<comment><USER7> That's a good question but read my comment below which starts with "Connections, halo, and pixie dust." This is a much on the initiative of the person as it is on meeting the right people and being in the right place.

</comment></comment></comment></comment><comment><USER10> I would personally not want Adora advising my company after Homejoy/Flymaids

</comment><comment><USER11> Huge shoutout to Sama! This, plus Elizabeth Rhodes and Matt Krisiloff recently, it really feels like Sam has taken the reins of YC and is passionately pushing the organization further, far past what many of us probably imagined. I'm sure PG couldn't be happier with his chosen successor.

</comment><comment><USER12> Do partners get paid? Do they put in their own capital?

<comment><USER13> yeah, it'd be great if YC can provide some info on its internal working. I know that YC has multiple funds (one for each batch?), but not sure how partners contribute capitals/time?

</comment></comment><comment><USER14> Do I understand correctly that to become a partner in a VC firm you need to contribute investment capital? Does anybody know what is usual amount that is contributed?

<comment><USER15> On the more finance side of the industry maybe, but not in a situation like this.

First of all, YC has at minimum hundreds of millions in their fund ready to invest out and I'm sure no shortage of LPs looking to give YC more money. When they are looking for partners they don't care about people that can bring new LPs in to raise money, they are looking for people who will actually help the companies they invest in.

Second of all, I wouldn't be surprised if none of the people added as partners were significantly wealthy (unless it was independently). If your startup doesn't have a massive exit or you aren't an early employee at a massive public company (Google, FB, etc), you aren't going to have millions of dollars to throw around.

And of course the fact that the people joining don't need to be rich is an advantage for YC. They can find people who fit the mold of what they'd like their partners to be. I've worked with a lot of people before and I don't think there has been that strong a correlation between successful exit and smart, helpful person.

</comment></comment><comment><USER16> How many partners are there at YC now?

<comment><USER17> 17 full time partners.</comment></comment>


CQC open data used to show the state of care across the UK - <AUTHOR> I've been working on a project (with others) recently to create an interactive map and league table showing the quality and cost of care across the UK which can be found here: http://www.trustedcare.co.uk/care-map/
We used data openly available from the Care Quality Commission (CQC) (http://www.cqc.org.uk/content/how-get-and-re-use-cqc-information-and-data) and research from TrustedCare.co.uk (who commissioned the project).
The data shows 4,500 (approx.) of the 26,000 (approx.) care services have never been inspected and in the worst counties over 20% of care services inspected failed to achieve a rating of 'good'. Perhaps most interesting is that the data shows no correlation between the amount users pay and the quality of care they receive; many of the counties with the highest costs  are ranked in the bottom third of the league table.
The Telegraph (http://www.telegraph.co.uk/news/health/elder/11988560/Costly-care-homes-may-not-be-the-best-league-tables-reveal.html) has used the data in an article today which also includes quotes from a number of prominent bodies/figures in the care industry. <comment><USER2> Interesting read! Makes you think about your future years.

</comment><comment><USER3> Nicely done.</comment>


Three Algorithmic Journeys - <AUTHOR> http://www.youtube.com/playlist?list=PLHxtyCq_WDLV5N5zUCBCDC2WqF1VBDGg1

<comment><AUTHOR> This is a great informal course in the intersection of mathematics and computer science. Other videos can be found here in section "A9 Lectures":

[http://www.stepanovpapers.com/](http://www.stepanovpapers.com/)</comment>


Show HN: Dashboard for HN Who Is Hiring - <AUTHOR> Link: https://who-is-hiring.arxpoetica.com/listing/20083795
Hello all,
I wanted a tool to query against and save job searches and hide irrelevant ones, so I built it. Thought I'd share. Built on the awesome SvelteJS (https://svelte.dev/) framework and equally awesome Sapper (https://sapper.svelte.dev/) deploy platform. The app pulls posts from user `whoishiring` (https://news.ycombinator.com/user?id=whoishiring) on Hacker News, and provides useful tools for sorting and saving settings / filters to localStorage.
Click on the "Home" link to see a list of former posts.
The project is open sourced: https://github.com/arxpoetica/who-is-hiring-dashboard. Pull requests and recommended improvements welcome.
Side note, looking for fulltime work. If you want me to build something in SvelteJS, for example, I'm a contributor. Feel free to hit me up over here: https://arxpoetica.com/. (Don't litter this HN post.)
## Caveats. Here be dragons, traveler, be ye warned.
* This is definitely a WIP, and has its share of problems.
* It uses pretty eager searching against what's essentially text-based querying, so there's a lot of problems on filter / query, such as word boundary searching, etc. So, for example, if you're a Go programmer, trying to query against that term with this setup, good luck. Likewise, "Java" will return all "JavaScript" entries, so that's also really helpful. Sorry for that. I plan on improving it, however, for this to really be useful...
* For this to really be a robust query engine, the HN API job listings would actually need some improvements. It'd be nice to have actual tagged return posts, for example. I think this would require some sort of form submission instead of just plain text submission on the jobs feed, but that would be an undertaking from HN's part. <comment><USER2> This is quite cool, thanks for making it! I would add a few more keywords, perhaps by development style (agile, etc) and level (junior dev, senior dev, tech lead, etc)

</comment><comment><USER3> would be great to have option to sort by date, or at least if should be default one

<comment><AUTHOR> Agree. Opened an issue: [https://github.com/arxpoetica/who-is-hiring- dashboard/issues...](https://github.com/arxpoetica/who-is-hiring- dashboard/issues/1)</comment></comment>


Keyed Caesar Cipher using font-face - <AUTHOR> http://jsfiddle.net/QQ9WQ/

<comment><AUTHOR> I can see a few uses for something like this, but they are all really irritating to the end user.</comment>


Google: The state of our video ID tools - <AUTHOR> http://googleblog.blogspot.com/2007/06/state-of-our-video-id-tools.html <comment><USER2> They will never eliminate copyright infringement completely. We really need them to just get the US laws on this stuff clarified and stable.

It reminds me of PayPal's fraud issues. Very similar kind of risk management issue. Google should buy Slide just to get Max Levchin working on YouTube.

Like credit card processing maybe every company could have a "charge back ratio" type number that was regulated by a neutral third party. If more than 2% of your videos are infringing you get shutdown. I know there's a million reason that won't happen, but I think something like that might work. Infringement on a small scale is acceptable by all parties, it's the NFL outtakes with 1.5 million views that piss people off.</comment>


HTC isn't just building an Android skin, it's building a whole platform - <AUTHOR> http://www.extremetech.com/mobile/123045-htc-isnt-just-building-an-android-skin-its-building-a-whole-platform <comment><USER2> I'll say this about HTC:

The last phone I bought was a Legend...and I'm still rocking it. It's my daily use, so it's been dropped, forgotten places, thrown around, banged around, kidnapped by a dog, you name it. Sure, the specs are dated and it's only running 2.2. But I walk around with my laptop, so all I need my phone for is calling, texting, emailing and tethering, which it does easily. The styling has even held up; it gets a look or two from iPhone users and their ubiquitous rectangle.

All this is to say, I'm in the market for a new phone and haven't _really_ come across anything that makes me want to retire this thing. Mostly too big, too "cheap" feeling, too expensive; just too much going on in general. But based on my experience with this phone, if HTC can do something impressive with the software, I'll buy again. Hell, having a decent DSP is enough.

/end infomercial?

<comment><USER3> >dropped, forgotten places, thrown around, banged around, kidnapped by a dog, you name it.

You need a phone that you LOVE so much that you will never:

-drop -forget -throw around -bang around -have it kidnapped by animals

You need a phone you love so much that you feel an urge to make sweet and passionate love with it every single day.

<comment><USER2> But those events are the inevitability of having a phone you carry and use 12 hours a day. I know they shouldn't happen, and I try to avoid them, but alas...

My point wasn't that this phone was superior to any other phone in that regard. Just that I haven't been able to kill it yet, and I certainly don't baby it.

<comment><USER3> If you love your phone set it free. If it comes back to you, it's yours. If it doesn't, it never was.

</comment></comment></comment></comment><comment><USER4> I have an HTC Desire which I used to love because it was fast and easy to use, however that all changed about few months back when the latest version of Sense got auto installed.

Now, if you want to unlock the phone instead of just swiping down on the screen, you have to put your finger over a "ring" and drag this up past a certain point on the screen and then let go. At this point your homescreen will come into view by doing a 360 degree spin which last about 2 seconds (there is no way to skip it).

Then once you have unlocked it if you want to navigate between screens you have a compiz cube style effect which seems to really slow the interface down.

Not to mention that when you get an incoming call you are back to the "ring" interface and you must drag and drop the ring onto answer or reject. Of course if you want to reject a call and you drop the ring even a millimeter shy of the reject button it will answer the call.

Oh, and there's no way to turn these features off or go back to the previous version of sense..

The problem can be mitigated somewhat by installed the "widgetlocker" program, but the answer issue can't as far as I can tell.

I really have no idea why they would decide to ruin the UI like this! If they hadn't messed this up I would quite happily have bought another HTC when I was looking for a new phone, but after this there is just no way I could recommend one.

<comment><USER5> Yeah, I agree, I really dislike the new Sense unlocking screen. Worse yet it limits me since I cannot use a 3rd party home screen application (like LauncherPro) as the extra buttons in the unlocking thing don't work with it.

Luckily though HTC does provide bootloader unlocking tools on its developer site so that you can install your own build of Android on the phone (and get rid of Sense).

</comment></comment><comment><USER6> Acquiring and dealing isn't building. This rings of the acquisition sprees that RIM and Nokia went on in the run-up to their dramatic declines. It's embarrassing to read Extremetech dress up the Beats acquisition as something of a coup - their industry reputation is somewhere between Monster and Bose (ie competent if unimpressive technology with overbearing marketing).

<comment><USER7> I'm going to copy and paste a comment of mine from a previous thread. Not 100% applicable due to the difference in the story, but the general idea of the comment is still true.

 _I think the real headline should actually say "It's time to stop submitting articles from Extreme Tech."

Their headlines never say the true intent of their article, and their article never comes to the conclusion that has been set up through the arguments. There is extreme bias and non sequiturs riddling the entire site.

It's a difficult read because of the logic errors, and everytime an article is posted from Extreme Tech, it seems everyone comes away with a different opinion of what was really meant. This isn't creative literature class. This is not a good way to run a website._

</comment></comment><comment><USER8> If HTC wants to integrate these services into the core experience of their devices, then they are going to have to manipulate the android source in a substantial way that will contribute to the fragmentation issue. I think these manufacturers are expecting something out of android that it cannot deliver. These "kindle-esque" forks are going to be android's undoing.

We'll have to wait and see, but I think every major manufacturer is going to to try and build a platform/ecosystem similar to what Amazon and B&N have done.

<comment><USER9> I actually don't think these high-level things are the fragmentation that matter. The fragmentation that causes delays are based on adapting the code to hardware. Things like releasing a phone with an 8MP camera, 720p recording and HDMI out running eclair and then having to rewrite that support the "AOSP-way" when froyo and gingerbread and ics finally add support for the same features to AOSP. That's the part of the "skin" that's the problem not things like widgets and more purely-software things. The challenge is that the market advances hardware faster than Google makes code available. The only way this can be resolved is if AOSP is developed in the open rather than behind closed doors. AOSP has a very strong case of NIH syndrome--but mostly because its impossible for them to share what the Nexus team is up to. Alternatively everyone could just build phones only based on Nexus chipsets and features, (but that's not possible either since the Nexus hardware is also kept under wraps during development and building new phones based on last years model isn't going to work in the market).

</comment></comment><comment><USER10> HTC is adding the Beats DSP, Dropbox integration, a streaming music service, and LogMeIn remote phone access to Sense.

</comment><comment><USER11> The margins on software and services are many multiples greater than consumer electronics hardware.

If they make $20 net revenue per phone sold just imagine if they can make another $20 net from revenue shares by way of Dropbox, LogMeIn, and other ancillary bundled services.

That secondary $20 would double their net per phone which would be transformative for their business.

Additionally, services create data and service lock-in as users move from older devices to newer devices if their platform makes migration within the HTC brand seamless.

</comment><comment><USER12> This is what is wrong with android. If device manufacturers/carriers want to add shit to the OS it should be done in the form of downloadable applications that are presented as options when setting up the phone. The OS experience is way too fragmented when moving from phone to phone. This leads to older phones never getting core OS updates because they would have to update sense for the 40 phones they produced in the last few years which will never happen.

<comment><USER13> At the very least, this year we seem to be over the hump and the vast majority of new activations are 2.2 or higher, which at least takes some pressure off the fragmentation debate:

<http://pxldot.com/post/18281312362/android-measuring-stick>

I'm not sure Google expected that there would be so many phones stuck on 1.5/1.6 or 2.1 - I wouldn't be surprised if you can still buy a new phone running a really non-representative version of Android. Can't be good for the platform reputation in terms of UX or security.

<comment><USER14> Luckily for Android, iOS 5 was playing catchup to 2.3 in many ways and the two platforms are now fairly comparable in terms of core features. However, if ICS uptake remains as slow as its been so far Apple could leap out ahead with iOS 6, particularly if things like TouchWiz continue to defeat Google's attempts to refine the UI.

</comment></comment></comment><comment><USER15> Looks like customer experience is on the list of things they are willing to step on in their quest to differentiate.</comment>


Bossman - multiplayer web game built in 48 hours using node.js and impact.js - <AUTHOR> http://playbossman.com/rooms Our team created this game in 48 hours for the Node Knockout competition.
Node.js, Multiplayer, Web Sockets, HTML5 Canvas, Javascript... it's a a veritable zeitgeist of 2011 web browser / sever tech :)
Special thanks to Dominic of Impact.js http://impactjs.com/
Start playing here: http://playbossman.com/play/hackernews http://playbossman.com/rooms <comment><USER2> Seems to be broken right now. Clicking on a room does nothing, and clicking a new room gives an error.

<comment><USER3> working perfectly fine.. there are some small bugs here and there that will be fixed once we are passed the "voting" stage. During this stage new commits can't be pushed, and server has to remain the same</comment></comment>


Show HN: Real-time Online Market for Services - <AUTHOR> http://www.superfastyellowpages.com/

<comment><USER2> Cool idea, and great video, but don't soft launch without the actual site. I was very interested (both as a business and consumer), but when all I saw was the video and nothing actually working...it makes me think that all you've got is a video, not an app, and I doubt I'll remember to check back on September 1st. But best of luck to you!

</comment><comment><USER3> I really like the concept a lot, I wish you guys the best.

<comment><AUTHOR> Thank you.</comment></comment>


Diet and health. What can you believe: or does bacon kill you? - <AUTHOR> https://thewinnower.com/papers/diet-and-health-what-can-you-believe-or-does-bacon-kill-you <comment><USER2> Even at that price, bacon's sooo worth it. :-)</comment>


Researchers aim to make Internet bandwidth a global currency - <AUTHOR> http://tv.seas.harvard.edu/press.php

<comment><USER2> Didn't Enron have this idea before the shit hit the fan?

<comment><USER3> lol thats the first thing I was going to say when I saw this! Bravo

</comment></comment><comment><USER4> Internet bandwidth will make a terrible currency because historically the price of bandwidth decreases every year.

A much better currency would be energy, water, or refined energy.

<comment><AUTHOR> You can have all the bandwidth in the world but if my P2P's algorithm allows you to download based on your upload then its good. In other words don't confuse the pipe for the water.

<comment><USER4> The pipe is useless without the water. The water is useless without the pipe. So perhaps if energy or water were made into a currency, it would need to include delivery or pickup at certain defined locations.</comment></comment></comment>


Funding Math and Science Projects For Young Women - <AUTHOR> http://www.avc.com/a_vc/2010/10/funding-math-and-science-projects-for-young-women.html

<comment><USER2> It's interesting to me that there are so many programs dedicated specifically to girls.

My issue growing up and being a huge science/math/history geek wasn't that I didn't have access to these things as a girl, but that the clubs and groups didn't seem that open to girls and the boys in them certainly weren't.

I organize tech groups and barcamps in Milwaukee and, being the only female organizer, I'm frequently asked what I do to promote more activity and involvement from women. It's interesting to me because the community puts it on the minority to make the minority comfortable when it's the exact opposite that needs to happen. Women/girls aren't attending events or clubs because they aren't populated with other women, but because they feel they are singled out for being women instead of being science geeks like everyone else there.</comment>


Bad UX and User Self-Blame – "I'm sorry, I'm not a computer person." - <AUTHOR> http://www.hanselman.com/blog/BadUXAndUserSelfBlameImSorryImNotAComputerPerson.aspx

<comment><USER2> bad UX is all sorts of icons that i have no idea what they mean. i can't even google what it does. otoh, if i didn't know what, for example, rm -rf does, i can google it.

</comment><comment><USER3> There is this widely accepted myth that anyone should just be able to turn on a computer and use it to the maximum of its capacity. Without putting any effort into understanding the tool they are trying to use. They should just magically acquire all the knowledge and be able to do anything.

Would you expect someone to be able to hop on a car and start driving? No, they have to take lessons and get a license. And it's the same for every tool/skill: if you want to use it just invest some time to understand how it works. I have no f-ing clue how to do plumbing, should I be able to just tear down the dry wall in my bathroom and start playing with the pipes?

People just don't want to spend any time _learning_ things, they just want to _know_ , like __right f-ing now __!</comment>


C++ is a horrible language, says Linus Torvalds - <AUTHOR> http://thread.gmane.org/gmane.comp.version-control.git/57643/focus=57918 <comment><AUTHOR> The whole exchange is great! Keep on reading the subsequent messages. Here's some interesting parts:

" The fact is, that is _exactly_ the kinds of things that C excels at. Not just as a language, but as a required _mentality_. One of the great strengths of C is that it doesn't make you think of your program as anything high-level. It's what makes you apparently prefer other languages, but the thing is, from a git standpoint, "high level" is exactly the wrong thing. "

and

"And if you want a fancier language, C++ is absolutely the worst one to choose. If you want real high-level, pick one that has true high-level features like garbage collection or a good system integration, rather than something that lacks both the sparseness and straightforwardness of C, _and_ doesn't even have the high-level bindings to important concepts.

IOW, C++ is in that inconvenient spot where it doesn't help make things simple enough to be truly usable for prototyping or simple GUI programming, and yet isn't the lean system programming language that C is that actively encourags you to use simple and direct constructs."

<comment><USER2> <i>"pick one that has true high-level features like garbage collection or a good system integration, rather than something that lacks both the sparseness and straightforwardness of C, and doesn't even have the high-level bindings to important concepts."</i>

That's a straw man. There are garbage collectors and "system integration" libraries for C++. The language doesn't lack for high-level bindings, but it also doesn't _force_ you to adopt a paradigm. This flexibility is C++'s greatest strength, as well as its greatest weakness.

Personally, I find it more than a little ironic that a huge amount of the complexity of C++ comes from its insistence on remaining backwards-compatible with C. Linus may love the "lean system programming language", but it sure does bring a lot of ugly baggage to the C++ party....

<comment><USER3> "...but it also doesn't force you to adopt a paradigm. This flexibility is C++'s greatest strength, as well as its greatest weakness."

Lisp is mult-paradigm also. I think the difference is that Lisp has a philosophy. The paradigms fit together in a consistent way. For example, Common Lisp has an object system, CLOS. But they implemented it around generic functions, in order to keep the functional programming nature of Lisp intact.

Lisp will let you do pretty much anything. But it often gives you a "nudge" in a particular direction. I believe pg points this out in On Lisp; you can write procedural code in Lisp, for example, but the code flows a lot better if you write in a functional style.

C++ just seems like a kitchen sink language. Everything is in there somewhere. But it doesn't seem like the parts were designed to fit together in any particular way.

<comment><USER2> I agree with you about Lisp. I like Lisp; it's definitely more elegant than C++.

That said, C++ was designed to be resource efficient, at a time when the best Lisp interpreters were...well...less so. So, while C++ and Lisp both have OO, functional, procedural and metaprogramming techniques (among others), C++ has made some ugly choices to achieve efficiency at the same time.

For the record: I am not trying to get into a Lisp/C++ debate.

</comment></comment></comment></comment><comment><USER4> Linus is hellbent on not working with "substandard programmers" and chooses his tools accordingly. Bad programmers are really counterproductive and he's _damn_ brilliant for weeding them out so aggressively.

In his "I'm a bastard" post to the linux kernel thread in 2000, he lambasted people arguing for a kernel debugger. His argument, clear as day, says he doesn't want to work with people who depend on the debugger , he wants people to understand the code as a whole.

"Oh. And sure, when things crash and you fsck, and you didn't even get a clue about what went wrong, you get frustrated. Tough. There are two kinds of reactions to that: you start being careful, or you start whining about a kernel debugger.

Quite frankly, I'd rather weed out the people who don't start being careful early, rather than late. That sounds callous, and by God, it is callous. But it's not the kind of "if you can't stand the heat, get out the the kitchen" kind of remark that some people take it for. No, it's something much more deeper: I'd rather not work with people who aren't careful. It's Darwinism in software development."

Here, 7 years later, he applies much the same argument to C++:

"C++ is a horrible language. It's made more horrible by the fact that a lot of substandard programmers use it, to the point where it's much much easier to generate total and utter crap with it. Quite frankly, even if the choice of C were to do _nothing_ but keep the C++ programmers out, that in itself would be a huge reason to use C."

"And limiting your project to C means that people don't screw that up, and also means that you get a lot of programmers that do actually understand low- level issues and don't screw things up with any idiotic "object model" crap."

Call him a prick, call him selfish, call him egotistical, the bottom line is he's in charge of a product that is much bigger, more complicated, diverse, mature, and successful than the majority on the planet. Smart hackers will get past their emotion and understand his principles are sound, proven, and successful.

<comment><USER5> It was also a uniquely useless comment he responded to. Imagine the alternate universe where Linus responds, "you're right! Git hackers, commence the rewrite!"

In a job interview, statements like Dmitry's are what I'd call a "leading indicator". NO HIRE.

</comment></comment><comment><USER6> \- Yes, it takes a C++ expert to do C++ well. If you aren't an expert, you're going to screw it up. You'll either get mired in what I call "Fancy C++ Voodoo Magic" by over designing your code and doing weird template meta-programming without any real goal or just use the wrong idioms, or forget about some random subtleties.

\- Sometimes you really do need to write systems software. In these instances, I'm still going to use C++. I won't claim that C++ is a great language, but at the end of the day, the benefits provided by C++ make it worth it. It would just be more footwork in C. Classes, RAII, STL, templates, type-safety are all worth it. But this is because I have already made all the mistakes and written lots of bad C++ that I'm now able to write clean, simple and elegant C++. I'd advise a newbie programmer against becoming a C++ expert. It's not worth the time and effort to learn all the stupid cases and to learn when to use which feature and to what degree to avoid falling into the swamp of C++. It's worth knowing C++ well enough that you can hack systems code though. I wouldn't say "only learn C and not C++ for systems hacking!"

<comment><USER5> I reverse engineer and audit systems software for security flaws (OS kernels, hypervisors, filesystems, drivers, and higher-level stuff like client-server and message passing systems). I've looked at a lot of other people's systems code. Most of it is C, not C++. It's mostly C on Win32. It's mostly C on Solaris. It's mostly C running in VxWorks. Most systems code is C.

Knowing both C++ and C, my counsel (worth what you paid for it) is that C++ is a waste of time for systems work. If you want to allocate a year of your life to minutiae, learn X86 runtime code generation; it'll help more with systems work, and you can write your own DSLs in C.

<comment><USER6> "It's mostly C" isn't an argument, it's an empirical observation. There are various historical and technical (ABI issues mostly) reasons to use C for kernels, hypervisors, filesystems and drivers. I'd still use C++ for all of the above, although a restricted subset if I'm writing a kernel, hypervisor, or driver. I would only export a C interface from my C++ code if it requires dynamic linking though (e.g., I would never write a export a kernel's API for device drivers in C++)

I also don't mean learning minutiae for minutia's sake. Most of my work has been on compilers and servers, and I'd gladly take C++ for these tasks. Why should I do the extra footwork to write it in C?

A sibling post mentioned LLVM. This is a great case in point. You should look at the GCC source sometime... it's absolutely atrocious. LLVM is on the entire opposite end of things, the code and design are _beautiful_. Hacking on GCC requires 80 pounds of body armor and a consultation with the local shaman. Hacking on LLVM is fun, exciting, and easy.

"Reload is the GCC equivalent of Satan." <http://gcc.gnu.org/wiki/reload>

GCC's internal garbage collector. Yes, they really wrote a garbage collector for a C app, and dealing with it is just as pleasant as you'd imagine. <http://gcc.gnu.org/wiki/Memory_management>

<comment><USER5> There's definitely good C++ code; the MIT PDOS Click router (<http://www.read.cs.ucla.edu/click/>) is another great example. But there's good Perl too.

I'd definitely use LLVM before I hacked up GCC.

</comment></comment></comment></comment><comment><USER7> Linus basically says that C++ has "inefficient abstracted programming models". Looking at the STL, you only see some very basic abstractions: vectors, lists, hash tables, sets, and others. These are very well tested, and extremely optimized. Anyone writing a decent amount of code will undoubtedly run into a situation where they need such structures.

<comment><USER8> Agreed. You would have to have to invest a considerable amount of time to beat the STL objects in terms of efficiency. I cant even think of a situation when you really could. Why try to reinvent the wheel? Seems like time wasted if you ask me.

<comment><USER2> The arguments I hear most frequently are the same ones that Linus jumps on in this thread: the syntax is obtuse, the code isn't portable, and the language isn't truly high-level (i.e. it doesn't have built-in garbage collection).

The first argument is (sadly) true -- C++ is ugly and complicated. A lot of that comes from the need for backwards compatibility with C (which isn't going to win any language beauty pageants, either), but a lot more of it comes as a consequence of the syntactic flexibility of the language.

The second argument is mostly bunk. A decade ago, it was difficult to find a standards-compliant C++ compiler; today, it's fairly easy. Sure, there are dark corners of the language where certain compilers get funky, but that can be said of FORTRAN 77 compilers, too. In general, unless you're forced to work with a old compiler, or an old, unmaintained package, it isn't very difficult to write cross-platform C++ code.

The third argument is just a straw man. Anyone who has read Stroustrup's book on the design of C++ knows why garbage collection and other "high-level" features weren't incorporated into the standard -- they didn't want to force users to adopt particular programming models or designs. Stroustrup has insisted that C++ be a flexible tool for many different types of programs and programmers; that attitude leads, somewhat inevitably, to complexity. But it makes me sad that so many people are bashing on C++ for not being "more like" other languages, when its biggest strength is probably its ability to mimic many features of those same languages, while still _allowing for_ great efficiency.

<comment><USER9> C is beautiful if you're standing on a motherboard staring up at it. If you think mostly in terms of how hardware works, C is a clean, powerful language.

"The language isn't truly high-level" isn't the whole argument; which would indeed be a straw man. That's the main part that's tied to the "most C++ programmers suck" argument, though. He thinks the "pseudo high-levelness" of C++ encourages sloppy programming.

Also there's another argument in there: Object-Orientation is overrated and often causes as many problems as it solves.

<comment><USER2> Most programmers suck in every language.

If Linus' experience with C developers is that they are better than C++ developers, it's probably because he is familiar with the qualities of good C developers.

<comment><USER9> Here's the response from the thread:

LT> "You can write bad code in any language. However, some languages, and especially some _mental_ baggages that go with them are bad."

</comment></comment></comment></comment></comment></comment><comment><USER10> maybe this will help you

Stroustrup: Well, one day, when I was sitting in my office, I thought of this little scheme, which would redress the balance a little. I thought 'I wonder what would happen, if there were a language so complicated, so difficult to learn, that nobody would ever be able to swamp the market with programmers? Actually, I got some of the ideas from X10, you know, X windows. That was such a bitch of a graphics system, that it only just ran on those Sun 3/60 things. They had all the ingredients for what I wanted. A really ridiculously complex syntax, obscure functions, and pseudo-OO structure. Even now, nobody writes raw X-windows code. Motif is the only way to go if you want to retain your sanity.

[NJW Comment: That explains everything. Most of my thesis work was in raw X-windows. :)]

Interviewer: You're kidding...?

Stroustrup: Not a bit of it. In fact, there was another problem. Unix was written in 'C', which meant that any 'C' programmer could very easily become a systems programmer. Remember what a mainframe systems programmer used to earn?

Interviewer: You bet I do, that's what I used to do.

Stroustrup: OK, so this new language had to divorce itself from Unix, by hiding all the system calls that bound the two together so nicely. This would enable guys who only knew about DOS to earn a decent living too.

Interviewer: I don't believe you said that...

source: <http://members.safe-t.net/jwalker/programming/interview.html>

<comment><USER5> Let's make it clear that that was a joke.

</comment></comment><comment><USER11> Linus shouldn't talk about something he doesn't understand. He couldn't have found a better way to advertise his ignorance about C++ to the whole world than this.

He is telling the whole world that "Hey, here I am, you know, the guy who created the linux kernel, the best designed piece of software in the whole universe(don't listen to Tanenbaum though, he didn't learn OS fundamentals), so you better listen to me when I say that C++ _sucks_. Don't give me the BS about how so many large applications have been created in it, because they would have been only better had they been created in C(it's a magical language btw, solves _all_ your problems in the blink of an eye). If you go and read about people like Stroustrup, Sutter, Alexandrescu, Koening, Thomas etc, take it from me that they missed lot of their CS clases, so they don't know a thing about programming. How do I know? They use C++!"

Sage Linus at one point or the other has to wake up to the fact that he is not the guru of all things that is programming and his opinion of the C++ language is taken as seriously as that of my hair dresser.

</comment><comment><USER12> I have must have learned at least a dozen programming languages in my time, and none was as difficult and as counter-intuitive as C++. (Compared to C++, Ada was simple.) I think C++ was just a bad idea, a clumsy attempt to merge two incompatible paradigms.

In classical imperative programming (e.g. C, Algol, Fortran, Pascal, and Basic), procedures contain and copy data structures. The heap primarily exists when unusual flexibility is needed, e.g. when the number of data objects you need isn't known until runtime. so you manage them with a global heap-based collection. Generally, you try to avoid using the heap, and where you must use it, you build an API around your collection to hide the nasty ugly details.

Compared with imperative programming, object orientation provides a kind of inversion of control. Instead of having procedures which contain and manipulate data structures, you have objects which contain methods (to handle the messages that other objects send it). Objects manage their own lifecycles and storage allocation. This sort of distributed control implies a level of abstraction well above concerns about storage management. Instances of subclasses tend to be larger than instances of their parent classes, but so users of these polymorphic objects are presumed to be above worrying about the storage they take up. But that makes us dependent upon that nasty heap -- is it any wonder that the vast majority of object oriented languages _presume_ automatic garbage collection?

The very fact that the C++ programmer is responsible for storage management implies that C++ objects are not to be visualized as independent and cooperating entities that manage their own lifecycles -- because then it becomes unclear as to who will have responsibility for cleaning up.

Systems programming is of necessity low-level; a reliance upon automatic garbage collection simply isn't appropriate for those kinds of problems. Therefore, instead of trying to add object orientation to C (and therefore an over-reliance upon the heap), I think we'd have been better off to begin by simply adding a strong, polymorphic type system. Then we could write systems programs with a manageable degree of genericity, without requiring every programmer to become a language-lawyer interpeting seemingly conflicting regulations, or an empirical scientist running experiments to determine what his programming language does in a given situation.

If we could then create easy hooks by which an object-oriented language could make calls to low-level subroutines written in that systems programming language, so much the better.

</comment><comment><USER13> I stopped listening to linus after he layed into gnome.

<comment><USER14> Install Vista and that'll flip him. Flip him for real.

</comment></comment><comment><USER15> Ha Ha Ha Ha. So hilarious.

<comment><USER15> "Quite frankly, even if the choice of C were to do _nothing_ but keep the C++ programmers out, that in itself would be a huge reason to use C."

What's not hilarious about that?

<comment><USER16> I think you were downmodded not because your post was wrong, but because it's essentially noise (I didn't downmod you).

</comment></comment></comment><comment><USER17> Anyone see Linus's Google git presentation? That and reading various stuff like this shows he's a rude egomaniac.

<comment><USER13> <http://www.youtube.com/watch?v=4XpnKHJAok8>

I think he has a unique combination of mild autism, artistic stubborness and scandanavian directness. In the end he makes valid points and he sold me on trying git.

It is hard to tell if he's being serious or if he's just making socially retarded attempts at sarcasm.

Either way he's infinitely more charming than Mr. Zuckerburg...</comment></comment>