Why Tiling Window Managers Suck - <AUTHOR> http://xahlee.info/linux/why_tiling_window_manager_sucks.html <comment><USER2> I agree that tiling window managers take an ideal too far, and modern operating systems have enough window-control key combos to satisfy me (Windows 10, at least. On Mac you'll need one of several readily available app store apps, such as BetterSnapTool. On Linux... read the blog post this thread is about)

</comment><comment><USER3> I thought I was going to be disagreeing with this, but the suggested workflow does make sense.

What I'm undecided on is if the shortcomings are inherent to tiling WMs.</comment>


Our daughter is into dolls and dress-up. What are programmer parents to do? - <AUTHOR> http://www.slate.com/articles/technology/bitwise/2014/12/women_in_tech_and_the_sciences_how_to_make_sure_your_daughter_knows_she.single.html

<comment><USER2> My daughter also took to Barbie's and princesses. We weren't happy with it at first, but we decided to accept it and encourage _diversity_ in playtime. So we introduced Lego's, nerf swords, my old Capsela kit, and tons more.

So now we have a kid that plays princesses, begs us to go to the annual Ren Faire and Comic Book Day, started building some basic programs/toys in Scratch, and regularly beats down bosses in MMO's.

Strength through diversity.

<comment><USER3> I agree.

My daughter didn't play too much with real dolls, but she liked the games in barbie.com and the dressing flash games. She also saw Disney princess movies and magazines. She also had many cloths for her penguin in Club Penguin.

We also bough her many interesting scientific games, like the games you described. I'll like to add a microscope and SnapCircuits (with a warning, the electricity from the wall is much bigger than the electricity from the battery).

Now she can program a little (she also program alone small script for Minecraft blocks), can do simple calculus including straightforward differential equations. But yesterday I was tacking with her about the 9 and 11 division rules and she didn't know the proof, so I think we have to talk more about modulo arithmetic after she finish her school exams.

Let her play with dolls, but also give her interesting scientific activities.

</comment></comment><comment><USER4> Frankly, there's nothing wrong if she prefers dresses and dolls.

Her friends at school will always influence her more than other sources should and at some point she will be mature enough to make her own choices.

The lower number of female engineers doesn't have to be another kind of pressure about what a girl should choose to be. A choice, sure, but hers to take.

</comment><comment><USER5> What are programmer parents to do?

Maybe they can download a different theme that can be installed on the small human to customize its personality.

Workarounds are, of course, no substitute for investigating to find the root cause. It could be a bug in the child's firmware.

I'd form a list of _all_ the issues, give them solid estimates, prioritize them by customer impact, and, accordingly, assign them into project milestones.

You know, maybe this dolls and princesses problem doesn't have to be solved in the current release.

Customer visibility of the problem could be managed somehow; perhaps the behavior can be confined to certain times and locations.

My gut feeling is that there maybe a priority inversion in the tiny human; the incorrect temperament threads is taking over most of the cores.

<comment><AUTHOR> You clearly haven't read the article. They're not trying to shape their daughter but protect her from forces that do try to shape her.

<comment><USER5> The mistake is believing that there is a difference.

We have to live in this world, and this world has forces (external and internal also).

Say you're protected from these forces all your life. You still end up shaped somehow. The shaping hasn't gone away.

Protection is merely the flipside of interference.

<comment><AUTHOR> But those forces aren't forces of nature, and we have a duty to try and shape society as we believe it should be. Accepting those forces as givens simply means yielding power to those who do care to shape society.

</comment></comment></comment></comment><comment><USER6> Well, you could take somebody who might do very well in another field--law, medicine, education--and with careful pressure turn her into an unhappy mediocre programmer (or any combination of <happy .. miserable> x <great .. bad> programmer). Or you could consider, and I know this is hard for parents, that your child is not yourself, and let your child figure it out.

<comment><AUTHOR> Have you read the article? They aren't concerned about her not turning out a scientist or a programmer, but about the endless stream of social cues pressuring her in an opposite direction. They want to _remove_ pressure so that she's actually free to choose.

<comment><USER6> I hadn't. I have now, and my opinion has not much changed. I've been acquainted with a few girls who went through the princess bit at about four and got over it.

<comment><AUTHOR> The point is not about "getting over it" but about the fact that our society constantly sends certain signals to women. Of course many women can get over it, but that doesn't mean society shouldn't change the signals.

</comment></comment></comment></comment><comment><USER7> You should admit defeat and buy her dancing lessons so she's prepared for her onstage career.

</comment><comment><USER8> Perhaps men really think with their dicks :-) LOL

Ok, but seriously, present her Princess Leia, and how she programs R2D2 to go and deliver a message to Obiwan Kenobi.

Or otherwise, present her with true princesses, enclosed in their castles, and sending (programming) knights to go to war to bring her riches. (Yes, programming is messy, if not for the programmer/princess, for the computer/knight doing the work). :-)

<comment><USER8> Those Usians... no sense of humour!</comment></comment>


Wasabi (2006) - <AUTHOR> http://www.joelonsoftware.com/items/2006/09/01b.html

<comment><USER2> I wonder why they chose VBScript as a starting point? Classic ASP have from its inception supported JavaScript along with VBScript. Choosing JavaScript would have made using the same code on the client and server somewhat easier, and JavaScript have always been more powerful than VBScript (e.g. supported closures out of the box).</comment>


A billion dollar software tech company is founded every three months in the U.S. - <AUTHOR> http://blog.minming.net/post/35553963889/a-billion-dollar-software-tech-company-is-founded-every <comment><USER3> Are you serious about Quora? I'm going to go with no.[1] With the text blurring and desperate requests for Facebook signin details Quora is basically expertsexchange for SV insiders now.

Given the text blurring is a form of cloaking (showing one thing to the search engine, nothing to people who come in from a search) I think search engines should viciously rank them down too. And I don't care if there is some "easy" way to get around the blur (like the "scroll down" for expertsexchange or whatever it was), it's not obvious and it just pollutes the search results. Get rid of it. That said, as was mentioned elsewhere on HN recently, Stackoverflow needs a place for more meta questions to be moved rather than deleted as you can occasionally get a useful one that isn't just rehashing things we've seen 1000 times.

[1][http://www.quora.com/Programming-Languages/In-laymans- terms-...](http://www.quora.com/Programming-Languages/In-laymans-terms-what- are-the-major-programming-languages-and-what-are-they-used-for#)

<comment><USER4> In Quora's case the text blurring applies both to search engines and users. I've visited the site as the googlebot user agent and it is exactly the same as what non-logged in users see. They also aren't doing any tricks to hide the full response in the HTML.

Also FYI, most major search engines have "secret" IPs from which they crawl websites using normal user agents (ex: Chrome, Firefox, etc). They then compare the results to the results from their main crawlers to detect the type of cloaking you referred to.

<comment><USER5> > I've visited the site as the googlebot user agent and it is exactly the same > as what non-logged in users see

.. except, of course, that the googlebot just reads the HTML. The CSS3 blur only causes problems when you try to read the site visually, via a browser.

> They also aren't doing any tricks to hide the full response in the HTML.

Yes, that's why the googlebot can read it.

I don't know why you're bothering to argue that this isn't cloaking. It most assuredly is.

      cloak
      verb
      conceal, hide, cover, veil, shroud, mask, obscure, cloud

<comment><USER3> Seems they use pngs now but were blurring in the past <http://news.ycombinator.com/item?id=4333151>

</comment></comment></comment></comment><comment><USER6> It's missing so many companies it's hard to know where to begin. The list probably represents only a fraction of billion dollar software companies founded over the last decade. It's heavily skewed towards both American and b2c companies.

Missing ones include: Vancl, Youku, Renren, Wonga, Bazaarvoice, Conduit, Klarna, nicira, Homeaway, Workday, Changyou, ServiceNow, Splunk, Ocado, Giant, Guidewire, DealerTrack, SuccessFactors, SourceFire, ArcSight, Popcap, Yandex, Betfair, ZipCar, Baidu, ExactTarget, etc.

<comment><AUTHOR> Great list. I added a bunch of them. I should clarify that in the context of the quote, he was mostly talking about mostly software tech companies founded (or for the most part operated) in US. Hence, I did not include the China and Russia companies. I also classify ZipCar as not really a software tech company.

<comment><USER7> Well, then why do you count Vente Privée or Rovio ? ;-)

<comment><USER7> Spotify is not american as well

</comment></comment></comment></comment><comment><USER8> People underestimate Quora. They underestimate both Quora and Google+ like they did with Twitter, Facebook, Blogger and YouTube before them.

What people don't seem to get about both Quora and Google+ is that they are networks not based around the people you just randomly happen to know - <USER2> instead around the people and things that you are actually interested in. There's a huge difference between the two.

They are interest-based social networks and are essentially pulling niche, technical, specific forums, specific blogs, and just general chatter into one mainstream and real time feed - away from the pseudonym driven, trolling, harsh, fractured, and separate niche areas that we currently have in many areas (Yes I know both Twitter/YouTube began like this - but they have slowly become things you put on your business card/real business use and are based upon).

Quora should not be underestimated as a SV centric bubbletastic startup - although it often appears that way. But then again, so did Facebook, Twitter, Blogger, and even YouTube.

Quora is where you go to hang out with people who actually share your interests (and not just a zip code), talk about the things that you really care about (not about who was the most drunk on the weekend) and just generally talk shop about the world, with the added benefit of a centralized repository where content bubbles up everyday (kind of like YouTube's subscriptions feature). No more refreshing pages :D.

Quora is like the Hacker News for everything else that doesn't already have its own Hacker News with really, really, freaking good UI, addictive game mechanics and really good content filtering.

Quora should not be underestimated. And neither should Google+.

<comment><USER9> > Quora should not be underestimated

I don't have much of an opinion on Quora and want it to succeed, but your claims seem rather... grandiose. From what I've seen Quora fairs well in very specific situations (where it has a large userbase of people knowledgeable in that specific niche) and then it's mediocre everywhere else. I've never thought "this is the future" while using Quora.

Do you have any examples of Quora that show the potential you talk about? I guess it can be argued "If Quora has a large userbase that are knowledgable in every niche then it will take over the world!" but that sort of argument can extend to almost any service. I see Stackexchange as the biggest competitor to Quora and in my experience Stackexchange is fairing much better (both in users and interfaces, I'd much rather ask a question on a SE site vs. Quora, for example).

<comment><USER8> StackExchange still has the pseudonym problem. It is also about 10x as harsh and severely limits itself, by well, limiting the actions of their participating clientele. Stack Exchange has relegated itself with it's strict standards to little more than a technical help resource - for the vast majority of use cases.

You don't go to StackExchange to hang out - you go there to ask answer/ask questions. It's like Wikipedia.

On extrapolations:

All large future extrapolations appear, by definition, to be grandiose. If they weren't - well then it would be bloody well bleeding obvious what was about to happen then wouldn't it :D - and it would go without me having to say so.

> _Quora fairs well in very specific situations (where it has a large userbase > of people knowledgeable in that specific niche) and then it's mediocre > everywhere else._

Same with anything else. This is a truism.

The only thing I can say to people is this:

Whenever people tell you to look into something that appears curious - try it for 2 weeks and make your own judgement.

<comment><USER9>
        You don't go to StackExchange to hang out - you go there
        to ask answer/ask questions. It's like Wikipedia.

Maybe I'm missing some portion of Quora then, but that's exactly how I use Quora. I've never found any indication on Quora that I can do anything other than ask and answer questions.

        Whenever people tell you to look into something that
        appears curious - try it for 2 weeks and make your own
        judgement.

That's what I've been trying to do, I've even gone out of my way to ask questions on Quora just so I can understand the experience, my problem seems to be that how you're describing it (as some form of community?) does not match how I've experienced it.

Perhaps there is a feature or section of the site I'm not aware of? As I mentioned, some sort of example on Quora or Quora being this fascinating and valuable community experience would be great, because I just can't find it.

<comment><USER10> My experience with Quora mirrors your own. However a friend of mine was absolutely nuts about it, he chalked it up to having found a group of people to follow who were asking and answering interesting questions.

This difference made Quora less of a Q+A site and more of an interesting news, facts and opinions site to him.

</comment></comment></comment></comment></comment><comment><USER11> Tumblr was valued at $800Million last year.

[http://online.wsj.com/article/SB1000142405297020483130457659...](http://online.wsj.com/article/SB10001424052970204831304576594524134179668.html)

</comment><comment><USER12> I personally feel its easy for a startup to start in West rather than starting in East. There are some problems in Eastern countries like India, China due to which not many of the startups are able to get converted into a really big one. They are still like slaves. While the quantity of startups getting successful is really high in western countries.

Don't argue that its because of intelligence, perhaps I think they are even better in this.

Yes perhaps its leadership.

<comment><USER13> Ability to market in the the most affluent markets, more likely.

When I say 'market' I mean top down know-your-customers and investors and partners intimately. Leverage the local connections etc.

Yes perhaps its local.

</comment></comment><comment><USER14> A couple more to add: Splunk (Founded 2004), Workday (Founded Mar 2005)

<comment><AUTHOR> Added!

</comment></comment><comment><USER15> Really awesome post. Thanks for compiling this.

You need to keep the date in mind when reading this though. More recent years will over-represent fast growers, underrepresent slow growers and include more speculative valuations (ie some companies will eventually exist the list).

Give 2010 another few years and it could be a completely different list. The 1998 list OTOH will probably stay pretty much the same.

</comment><comment><USER16> Is there any evidence that Skillshare (on the list) is close to 1B valuation? Really surprised for that one.

<comment><AUTHOR> It was just my personal attempt to highlight potential companies that may grow to a billion down the road. I maybe totally wrong.

</comment></comment><comment><USER17> So the key to success is to launch your company exactly 3 month after a successful one! :)

<comment><USER12> ha ha ha !!!

</comment></comment><comment><USER18> I've never been to quora before today. I've always understood it to be a general purpose Q&A site. Given all the chatter in this thread about it, I decided to go there to see what it's about.

I found this page for navigating the subject material: <https://www.quora.com/directory/>

Is it just me, or is this a rather opaque view of the content? For example, the "B" section for topics doesn't have "bicycles", but it does have "Bizplay - Black Magic Design". I feel like I'm taking crazy pills.

</comment><comment><USER19> I don't know about some of those "billion dollar" valuations. But point taken, US is able to churn out very successful tech companies. We're doing something right.

</comment><comment><USER20> Since you started in 1998, you should add in VMware as well.

</comment><comment><USER21> Github?

<comment><AUTHOR> Can't believe I missed that. Added!

</comment></comment><comment><USER22> Relative to how many funded?

<comment><USER23> 3673 companies in the US raised VC money in 2011:

[http://techcrunch.com/2012/01/19/vc-investing- soars-22-perce...](http://techcrunch.com/2012/01/19/vc-investing- soars-22-percent-to-28-4b-in-2011-internet-sector-reaches-highest-levels-in-a- decade/)

997 of these where Internet companies.

</comment></comment><comment><USER24> Looking at this and thinking about how many companies created each year that are worth even a million dollars that aren't close to being on this, that must be an optimistic number.

With a more intricate list this could provide some neat data. Most successful time of year to start your company, synchronous business tactics used by those companies, I'm sure there's more.

</comment><comment><USER25> Wow. Every 3 months! I was thinking what 2011 and 2012 companies might be included in that list in the future?

Also, I noticed that most if not all of these companies are Silicon Valley startups. Maybe the frequency of billion dollar companies will increase if the list includes companies world wide.

<comment><AUTHOR> That's the point of the list! It is really hard to predict now. We will know who will make it to the list in a couple of years.

<comment><USER25> I'm excited to know those companies. I hope you update those list in the future!

</comment></comment></comment><comment><USER26> Would love to see this paired with a similar list showing operating profit.

Or to put it another way, how many billion dollar software companies are there whose value hasn't been created substantially by the markets alone?

<comment><USER15> Think of this as a list of companies that investors or acquirers are/were willing to pay $1b+ for.

If you want companies that have justified their valuation based on past profits, you will need to go to older dates.

eg 1998: OpenTable, Google, Rackspace, PayPal.

</comment></comment><comment><USER27> Great and inspiring list. But I think there should be a difference between companies that crossed the $1B worth in the open stock market, and companies that got this value by external purchase.

</comment><comment><USER28> Does the same number of billion dollar companies die every 3 months?

</comment><comment><USER13> I just checked. I've been given cookies by most of those companies.

</comment><comment><USER29> It feels like this list is somewhat invalid, given the fact the all companies values are being measured at different points during their lives.

</comment><comment><USER30> This certainly interesting, but also interesting would be a dash of perspective: How many companies (in total) are founded every 3 months?

<comment><USER31> 600,000 companies are founded each month in the US.

</comment></comment><comment><USER32> Would love to see the median value of said companies now. 2002 might have been the only sane year.

</comment><comment><USER33> Hmm, where are the porn companies ?

<comment><USER34> There is no porn company worth more than a billion dollars.

<comment><USER35> And yet they are a safer bet compared to your usual Startup. The demand will exist forever and the revenue model is pretty obvious (adult ads/products).

</comment></comment></comment><comment><USER36> So glad to see Scoutie.com made it on the list :) Thanks for putting it together. Encouraging!

</comment><comment><USER37> homeaway is a publicly traded company. no need for an asterix. ticker: AWAY

</comment><comment><USER38> It would be nice to know how much those companies are worth today.

</comment><comment><USER39> nicira?

<comment><USER40> Yup, $1.26B. Founded in 2007.

Seems like the author missed a couple... so maybe Ron Conway was right after all. :-)

<comment><AUTHOR> Added!

</comment></comment></comment><comment><USER35> Funny to think that based on those numbers Google could buy them all and still keep around 54 B.

<comment><USER41> And yet, if Google did so it would destroy the value that they have, and would lose loads of money on the transaction.

</comment></comment><comment><USER42> Or a company is estimated at a billion every 3 months. How many billion dollar software companies does we really have?</comment>


Ask HN: My boss gave me 3 choices, all bad. Which should I choose? - <AUTHOR>

tl;dr my boss gave me the option to a) quit, b) resign with "dignity" or, c) continue working but on commission only.  Which should I choose?
I work for a 10 person web/mobile software company and I've been working for them for the past 4 years.
Last year my girlfriend got into nursing school in a different state.  My boss let me move with her and continue working as a remote employer.  I was of course, grateful!
Coinciding with me taking a new remote role, I was also working on a new sales strategy for the company focused on doing outbound lead gen work. The short of it is that it never really worked out well. I brought in leads, but nothing closed.  A number of reasons made this unsuccessful namely 1) trying a new sales strategy while also trying remote work and 2) no time from leadership
Last week my boss told me things weren't working out.  I could resign and "save face" with the team. I could be "let go" and claim unemployment. Or, I could continue working for the company, but on a commission only basis (so presumably a higher commission, but no salary.. ergo I take on the risk but with the opportunity for higher rewards).
I'm torn as to what to do. I still have a great relationship with the boss and my teammates so "saving face" has some appeal.  But i'll also be out of work in two weeks and am considering unemployment. I"m concerned as to how being on unemployment will affect my job search process. I'm also not sure that working commission only will be in my best interest, given the rate of success that has been evident over the past months.
So, my questions to HN are: 1) which of the 3 choices should I take? 2) If I take unemployment, will that affect my job search process negatively? 3) i've been there for 4 years, should I be expecting a severance package of some sort? <comment><USER2> With all respect, and I do mean that, if the roles were reversed, what options would you give you? You have a company that was working, and a member of the team changed the rules of the game. The company took the risk for a year, and that risk did not result in a reward, so the company has now given you some very fair options. Obviously, something needs to change and the company is putting the ball in your court to decide how to make that work. That is an opportunity right there! He could have easily done the thing many companies do and just fired you with no warning.

That being said, I will take a stab at answering your questions. First, do you think your sales strategy will be changing, ie, become more successful? If not, then you should not take commission. Of course, if your sales strategy won't become more successful, why would they keep you? But I digress. Where you live, is it hard to find new work in your particular area of expertise? If not, then I would say resign, and find new work. If it is, then I would suggest you need to really think through your career path. In other words, resign if you think you can't make commission sales work. Take commission and become truly successful if you think your sales can improve.

Second, I have hired many employees over the years. I have never asked if they were on unemployment. I don't care one way or the other. The economy in my area has been rough for a long time, I don't take of unemployment as being a negative. Your milage my vary.

Third, if it's not in your original contract, don't expect it. If you are in a sales position and have brought in less revenue than you make in salary over the last year, don't expect it. If you work for a small company that is working hard but isn't ultra successful, don't expect it. So, don't expect it.

I hope my best advise is to not be afraid of finding new work. Get out there, hit the pavement, make yourself look great and get the job that makes you feel good. You're in sales. This is your greatest sales job. Go sell yourself. And good luck!

<comment><AUTHOR> First, thank you!

>if the roles were reversed, what options would you give you?

That's an excellent point and something that I -- amidst the pangs of dejection -- failed to think about.

> do you think your sales strategy will be changing, ie, become more > successful?

I think it's hard for both me and my boss to predict this. We've had leads trickle in, some qualified that didn't convert, but many that did not. I've launched 3-4 campaigns all with different approaches for outbound email/cold calling marketing to different avails. The latest campaign i'm more confident about, but not so much so that I feel excited about taking a commission only approach. 100% of our business to date has been on referrals and partnerships, and the strategy i'm trying to implement is brand new to our organization, so it takes time and failure...

Thank you again for the feedback.

</comment></comment><comment><USER3> Between the two choices of resign or be let go, being let go is a much better choice.

Say you quit because you have good expectations of finding a new job. What if you're wrong and try for months and months and find nothing? Now you've run through your savings (you do have savings, right?), don't have a job, and you can't fall back on unemployment. What do you do then? You have to start pawning your belongings, borrowing money, and looking at fast food or gas station jobs just to get some income so you can eat and stay off the streets.

Now say you had been let go. You try looking for a job for a couple months on your own, see that your chances are worse than you thought, and apply for unemployment. Now, you're burning through your savings at a much slower rate. Perhaps unemployment will be enough that you won't even need to burn savings at all. You're still unemployed, but you're in a much better financial situation and can keep your focus on finding a job, not stressing over where your next meal will come from.

</comment><comment><USER4> One factor to consider is: what is your profession, and what does the market for that profession look like where you now live.

For example if you are a developer who just moved to the Austin or Chicago area, I would say, leave the company and look for new work. You could opt to resign since you can probably easily find good work in 2-4 weeks. No one is going to question a 1-2 month gap in a dev's employment, it's such a hot market.

But if you are a salesperson, and just moved to a very rural area/where you have no network, the advice might be different. Might be better to choose to be fired so you have unemployment as a fallback. Or, if you are super confident in your sales skills and can tolerate some income uncertainty, you could negotiate for a large commission and stay where you are now.

All things being equal, your current gig is on life support, and you may not be able to revive it. But it depends a lot on the particulars.

</comment><comment><USER5> Ask your boss to summarize his choices for you in email. Print that email out and send it to your personal email. That would be important documentation for you to provide to an unemployment reviewer. Based on his three choices, you have a valid unemployment claim. Resigning to save face is still a firing. And quiting because your pay is reduced is still a reason to collect unemployment in many states.

Also consider that many companies provide severance in the event of a firing. Saving face by resigning might cost you thousands of dollars.

I'm not a lawyer.

</comment><comment><USER6> Your main issue is whether your current boss will be a good reference or not. Secure that.

Then, all things being equal, take the unemployment. When looking for a job, wanting to leave a remote position for something local is reasonable. Make sure your boss will give a good recommendation that is consistent with whatever way you want to describe your old situation.

If the fact is that in one year, you held a sales position and made $0 worth of sales, then it doesn't matter if you quit or were fired -- you need to explain that.

</comment><comment><USER7> You know that the current model isn't working, your boss simply articulated it's time to move on. See if there's a win-win, ask if the company can give you a severance package (say 2 weeks for each year accrued) if you leave voluntarily. Everyone can save face and you'll have a financial cushion. As for your job search-- it's a $17T economy, tons of opportunity out there for Lead Gen, if you look for it.</comment>


Show HN: PayPool – Payment Platform for Groups to Pool Money and Buy Together - <AUTHOR> https://www.getpaypool.com <comment><USER2> Fascinating, I find it hard to imagine any services integrating this, you might be better off finding a way to implement it on top of current systems.

<comment><AUTHOR> Thanks for checking it out!

> you might be better off finding a way to implement it on top of current > systems.

Unless I misunderstood what you had in mind, that's exactly my current hypothesis, to automate payment processors such as Stripe and not process any payment information.

PayPool won't be a new payment gateway.

If I might ask, which specific aspect of PayPool did you find fascinating?</comment></comment>


A General Feedback Theory of Human Behavior (1960) - <AUTHOR> http://www.amsciepub.com/doi/pdf/10.2466/pms.19188.8.131.52 <comment><USER2> In psychology, this is called "Reinforcement"[1] and that goes back to Skinner (1938) and Thorndike (1911).

In AI research its called "Reinforcement learning"[2]. One of the earliest papers relating reinforcement learning to AI was "Theory of Neural-Analog Reinforcement Systems"[3] by Minsky, 1954

A cool reinforcement learning demo is the DeepMind Atari video from last year[4]

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

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

[3] [http://www.researchgate.net/publication/36374626_Theory_of_n...](http://www.researchgate.net/publication/36374626_Theory_of_neural- analog_reinforcement_systems_and_its_application_to_the_brain-model_problem)

[4] [https://www.youtube.com/watch?v=EfGD2qveGdQ](https://www.youtube.com/watch?v=EfGD2qveGdQ) (this is awesome)</comment>


Ask HN: Any Genomics Data Startup focusing on Cancer Research? - <AUTHOR> I have been going through the Genomics Data Commons portal of NCI. Are there any Cancer Data Science based startups who are using this kind of data to directly help informed cancer patients of the options available to them? <comment><AUTHOR> Strand Life Sciences strandls.com does this in a small way. Looking for more such companies.

</comment><comment><USER2> It's not exactly a startup but GRAILbio does this.

</comment><comment><USER3> Foundation Medicine. PGDx.</comment>


Jack Dorsey's Dangerous Defense of Alex Jones - <AUTHOR> https://www.theatlantic.com/technology/archive/2018/08/the-most-powerful-publishers-in-the-world-dont-give-a-damn/567095/?single_page=true <comment><USER2> Thanks but no thanks. I don't need twitter to choose what I should read.

</comment><comment><USER3> I for one welcome our new big tech overlords.</comment>


Apple continues to harass tiny Norvegian repair shop - <AUTHOR> https://tidbits.com/2019/06/10/apple-continues-to-harass-tiny-norwegian-repair-shop/ <comment><USER2> Louis Rossmann testified in this case as an expert witness a few days ago. You can watch his testimony[0] in this case on his youtube channel.

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

</comment><comment><USER3> Harass is a loaded term that doesn't deserve the context here. Although TidBits didn't write this article they should know better. The article was not a fair handed examination of the issue (and specifically Norwegian to boot).

Apple certainly has the right to defend it's own position (whether you think that position is fair or not). That's not harassment by any stretch of the imagination.

And they're doing nothing to the repair shop - they're just appealing the case to a higher Norwegian court which is their right. That in no way is harassment.

<comment><USER4> >> And they're doing nothing to the repair shop - they're just appealing the case to a higher Norwegian court which is their right. That in no way is harassment.

If harass is not the right term here, what would you call it? Legal maneuvers? Business maneuvers?

I bet Mr. Tim Cook has not said more than a few sentences regarding this case. Maybe none at all. And the lawyers are making their few hundred dollars an hour happily while sending off reams of paper with legalese printed on them.

And on the flip side is a small mom and pop shop running a small business. Repairing electronic gadgets. Do you know how much good such electronic repair shops do for our environment?

<comment><USER5> >I bet Mr. Tim Cook has not said more than a few sentences regarding this case.

Tim Cook to Investors: People Bought Fewer New iPhones Because They Repaired Their Old Ones

[https://www.vice.com/en_us/article/zmd9a5/tim-cook-to- invest...](https://www.vice.com/en_us/article/zmd9a5/tim-cook-to-investors- people-bought-fewer-new-iphones-because-they-repaired-their-old-ones)</comment></comment></comment>


Vision - <AUTHOR> http://dcurt.is/vision

<comment><USER2> Well, he has a point, but I wouldn't call that visionary; many people have suggested before the possibility of a future where an important part the connected population never used a PC before and rely exclusively on their smartphones. And understandably so, the only way companies like Facebook or Google can grow is by getting the "remaining" population online, and that in turn might be enabled with the advent of the cheap smartphone. Of course whether it will happen and what would be the impact if so are different questions.

</comment><comment><USER3> Right, except they don't understand social, and simply taking over a phone to make your whole website the interface doesn't really change that.

<comment><USER4>
        > Right, except they don't understand social,

I'm assuming you mean that they don't understand Mobile because a social network that has over 1 Billion users likely understands social fairly well.

<comment><USER5> This is just my $0.02 (drachma would be better, truth be told) but there are better indicators of 'getting' social than 1bn users.

<comment><USER6> What "better indicators of getting social" beat getting 1/7 of the World's population to use your service?

<comment><USER5> Analogy time: would you call someone who has $1bn someone who "gets" hard work, perseverance and financial savvy because they won the lottery (editors note: the author is not comparing Facebook's success to winning The Powerball _per se_ ), based only on the notion that they have a surplus of money in the bank?

Let's move away from the lottery for a minute, but keep our handsomely wealthy hypothetical person in the picture. You meet Bob. Bob shows you a bank statement with $1bn on the balance line. Bob tells you his business is doing great and he's living his dream.

I will put down 1/7 of my next paycheck that the very first question you ask Bob is: "What's your business" or some variant thereof.

The point: Bob has a lot of money and you want to find out what he did that 'got' him the money, right? He networked, he made a product, he refined the product, he took his product to market-eliminating what worked, building upon, refining and reproducing what does. Those are the indicators you look at.

Simply having the users doesn't tell you a whole lot, or have we already forgotten the tale of MySpace (or Xanga, or Friendster)? I maintain it's how Facebook got _and kept_ those users that matter to Facebook 'getting' social.

<comment><USER3> Good analogy. I still don't think they "get social" - they watch numbers and react to those - which misses far too many nuances.

<comment><USER5> I don't think they do either, tbh.

<comment><USER3> Ha. Perhaps not, or just not properly.

</comment></comment></comment></comment></comment></comment></comment></comment><comment><USER7> It's all mighty convenient that Facebook has the "vision" of having smartphones be about people, not apps, when Facebook's strength is people, not apps. I mean the so called "vision" is just an extension of their mission. Nothing really breakthrough from their point of view, although I could see how others from the outside would look at it like that. But for Facebook is just another extension of their mission, just like the auto-sharing feature. Facebook _needs_ the web to rely on as much sharing as possible, and they now also _need_ mobile to be about people - regardless of how good or bad it is for the user in the end (privacy concerns, etc).</comment>


The search for extraterrestrial intelligence moves up a gear - <AUTHOR> https://www.economist.com/science-and-technology/2020/02/20/the-search-for-extraterrestrial-intelligence-moves-up-a-gear <comment><USER2> I'm not the first to make this observation but our search seems limited by our imagination which in turn is limited by our current level of technology. In the Victorian era canals were considered a technological innovation. So we looked for canals on the surface of Mars and some of us were sure we saw them. Radio was invented so we decided to search for radio signals from space. The concept of solar panels was invented so we decided to see if any civilizations were covering their star with a fleet of them. Lasers were invented and recently we're talking about powering light-sail probes with them so now we have optical SETI. LIGO detected gravity waves and so... well you get that point. I don't think we shouldn't look for all of these things but I think we should temper expectations. My suspicion is in a couple hundred years the idea of looking for ET radio broadcasts will seem as silly as looking for canals on Mars does to us now.

<comment><USER3> The radio telescopes are programmed to report only signals that are varying at a rate that matches our own. Life working ten times slower or faster than us would be automatically ignored.

The "Dyson Sphere" notion cracks me up every time. They are advanced enough to build so much space stuff it blocks starlight, but not advanced enough to have fusion power, so have to rely on solar panels? Might as well look for signal flags.

Any actually advanced aliens will live out in the Kuiper belts where useful elements are conveniently frozen. Goldilocks planets are for extreme primitives.

<comment><USER4> Stars are by _far_ the largest fusion reactors physically possible in any given system. It makes sense to use them as such if you can.

<comment><USER3> What makes sense about relying on the "largest possible" variant of anything, when you can make small and portable ones, and bring them with you anywhere you need them?

</comment></comment></comment></comment><comment><USER5> One thing that I constantly think of when I read this article is just how recent in history electromagnetic broadcasts are. What if there's another planet in our neighborhood, but its society is just a mere 1000 years behind us? 1000 years is almost nothing when looking at just how old the universe is, and just how long our planet has had life.

But, what if we develop some other means to communicate in the next 100, 200, or 300 years? It means the window of time that intelligent life uses electromagnetic communication is very, vey short.

<comment><USER6> Or, what if we're the first. Someone has to be the first. The Universe is devoid of intelligent life, and we're without technological peers.

A billion years pass, the Universe is rich with intelligent life. And they can still detect the echoes of the ones who were first, crying out across the universe in search of companionship.

<comment><USER7> >A billion years pass, the Universe is rich with intelligent life. And they can still detect the echoes of the ones who were first, crying out across the universe in search of companionship.

Or what if the window of time in which life can exist on a planet is so short compared to how long it takes for life to appear on that planet, that it is extremely unlikely for two planets to have life at the same time?

A lot of questions, and a lot of possible answers

</comment></comment></comment><comment><USER8> [https://archive.md/eWqTw](https://archive.md/eWqTw)

</comment><comment><USER9> In firefox as soon as it loads, hit reader mode.

</comment><comment><USER10> Somehow I had not heard about the James Webb Space Telescope before now. The Hubble means a lot to me personally, and I have dreading the day I'd hear it was going out of service. I can't wait to see what this new telescope will provide for us.

<comment><USER11> We all have high hopes for JWST, but it's been a long and expensive road with lots of delays.

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

<comment><USER12> Well, the wiki page is good, but I think xkcd is the canonical authority on the particular subject of JWST delays:

[https://xkcd.com/2014/](https://xkcd.com/2014/)

<comment><USER10> I recall Hubble often being fodder for late night hosts and other media, but we don't even think about it now that it's proved it's worth many times over. It changed the narrative once it was operational.

<comment><USER13> My question is, how much is too much? Does it have to cost fifteen billion before it stops being worth it? Twenty? Fifty?

<comment><USER10> It's a fair question, and I'm not educated on the subject enough to provide an opinion. Like I said, I'd just heard about this, so I'm not aware how much has gone into it. If it's hitting the figures you're talking about, I would question it as well.

<comment><USER13> Cost+ is a cancer that needs to die.

</comment></comment></comment></comment></comment></comment></comment><comment><USER14> All we need now are aliens arriving.

<comment><USER15> hopefully the nice kind

<comment><USER14> Oh man, imagine that. What a time to be alive if that had to happen. 2020 has been just about everything.

</comment></comment></comment><comment><USER16> Paywalled. :-(

<comment><USER17> It's worse than that. The article is loaded in full and _then_ is truncated via js.

You'd guess that's EXACTLY the kind of shitty behavior that google claims to flag/penalize the website.. but.. here's a google-golf hit for the article:

[https://www.google.com/search?q=the+search+for+extraterrestr...](https://www.google.com/search?q=the+search+for+extraterrestrial+intelligence+moves)

Surely.. only the "excerpt" is served to google right? Nope... click though the cached copy. The article is indexed in full.

Right.

I have nothing against linking paywalled resources, but that's scummy behavior.

Skipped.

<comment><USER18> What'd scummy about being easy to defeat? Or do you mean google?

<comment><USER17> It's not about being easy to defeat.

It's scummy on the economist's side from a SEO perspective which I absolutely hate in all media outlets that do this.

If the full article is allowed to be indexed by a search engine, the expectation is to be able to get the _same_ result as the search engine is seeing when you click through.

This is clearly a cheap way to rank higher in search results. If you don't want non-paying users to read, then the same excerpt should be shown to the search engine.

</comment></comment></comment></comment><comment><USER19> Here we go [https://outline.com/yfW5Zb](https://outline.com/yfW5Zb)

<comment><USER20> That Outline page is giving me an error. Meanwhile, the original article page is perfectly readable if JavaScript is disabled.

</comment></comment><comment><USER21> Please do not post / upvote paywalled content. I, for one, am sick of it. It has nothing to do with the actual article, but please - no more paywalls on HN.

I have been buying the Economist on paper every week for the last 20 years or so, love it, and I possibly also have the online version, though I never use it. But if the article is meant for public consumption, then let's link it. If it's meant to sell a subscription, please don't.

<comment><USER22> given outline.com, seems like that's a viable option for balancing the needs of HN and publishers who hurt-themselves by not allowing new users to see selected popular articles.

(i.e. fool's errand to think anyone will subscribe for a single article, but many publishers aren't setup with sophisticated-enough ways to make selected content free, without exposing themselves to cheats e.g. readers simply using incognito mode or second browsers...)

<comment><USER23> They're fools to not make all their content free anyway. I'd only pay for a service I use a lot. How am I gonna develop the habit of using your page a lot if every time I open an article of yours I'm blocked? I'll just go to another site, thank you very much.

<comment><USER24> Do you use an ad blocker? They've gotta pay for content some how either a paywall or ads.

<comment><USER25> Ad blockers block ad networks. A fancy publisher like Economist doesn't have to use ad networks. They could sell online ads the way they sell print ads.

<comment><USER24> They can but it's not the way most places want to buy ads online anymore. There's a reason basically everyone moved to using ad networks.

<comment><USER25> So there are trade-offs involved? Different parties have different interests? Different publishers use different models? That sounds about right, and contradicts the false dichotomy offered above.

<comment><USER24> The dichotomy is the same people who complain a lot about paywalls on HN are also blocking all ads and JS. Paywalls are the offered alternative to ads already.

<comment><USER25> You'd _like_ to change the subject, but you haven't. I run uBlock Origin to _encourage_ publishers to run their own non-privacy-violating ads from their own domains, the way they did before the ubiquity of surveillance capitalists. Every time publishers have asked me why I use uBO, I've told them that. That they can't adjust to market conditions, is their own failure of imagination. This impasse won't last forever, anyway. Today's unimaginative publishers will eventually be replaced by new ones with new models we haven't even considered yet.</comment></comment></comment></comment></comment></comment></comment></comment></comment>


Ask HN: You get a msg written by you in 2030. What does it say? - <AUTHOR> <comment><USER2> If you're reading this, I'm dead ... I mean you're dead. Everyone's dead. That bitch that dumped us in the high school is dead (haha). Bambi is dead. John Connor is dead. Even Chuck Norris is dead. The "endangered species list" is a f __king one-liner with a shitpile emoji.

You may ask what happened - well, as they tried to remove the orange butthead from the White House after the second term, he headbutted the big red button to prevent being replaced by a woman.

Most of us died fast. Others could enjoy a few president-colored sunsets, while screaming in pain, and slowly disintegrating.

The only survivers were the astronauts of the ISS, Adam, Eve, and Joe. But instead of re-enacting the Bible in the coziness of zero gravity, they caught Musk's Tesla and tried to use its Autopilot to land on Mars. They'll burn in the Sun soon. But until then they'll be freezing to death in a frigging roadster.

Have fun.

</comment><comment><USER3> Same one I'd send to myself in 2010. "In any tough decision, playing it safe is easy to do and no one will blame you for doing it. People will even applaud you for it. Except you. 10 years later."

</comment><comment><AUTHOR> Hi 2020 Self,

You're in the middle of the pandemic, but don't worry. The vaccine will put everything back to normal by New Years.

And don't sweat the recession. It'll be a short one. In about 2 years, everything will be heating up again.

You will work through your bitterness at your parents. It's not a problem for me now. It was worth the effort and therapy ($$$).

That other relative is still mistreating people. People change very slowly, and only if they want to. You can help yourself by limiting your exposure to them.

You will finally get your daily habits: meditation, exercise, & sleep schedule. It doesn't happen until after the pandemic so don't stress about it now. Short term, try all those things you've been putting off. They will help: auto-shutoff on the TV & monitor & lights, clean and tidy the floor more often, and make those little habit reminders.

It's ok to dip into your savings. You'll fill it back up to 10x what it was.

You know those projects you've been thinking about and started but haven't made any progress on because social isolation has gotten you down? Well, you'll finally make progress on them. Three of them won't go anywhere, but one will be a big success! You're asking, "Which one!?" You have to find out for yourself. :)

By 2030, the pandemic and recession are just bad memories. You will have some hard times in the next 10 years, but nothing like 2020. 2021 will be full of hope. You will have so much fun in 2022. And you'll have some really great times every year after that. You will make several new friends of the highest quality. You will enjoy hundreds of board game nights and 30 trips over the next 10 years. The 2024 backpacking trip will be the best. We're planning another one and J&fam are coming since their kids are finally big enough to hike. :)

Relax. Everything's going to be fine.

-2030 Self

</comment><comment><USER4> Most things didn't end up as you thought they would</comment>


Managing the Deluge of Atom Issues - <AUTHOR> http://blog.atom.io/2016/04/19/managing-the-deluge-of-atom-issues.html <comment><USER2> As much as I liked the idea of Atom, giving it a genuine try for about six months, I ended up going back to trusty Sublime Text. Why? As a developer, I think it's silly to make my computer do more work than necessary, to take up more CPU and battery than needed. And, the subtle non-native sluggishness always seemed to reduce the usability, ever so slightly, not also counting the occasional "the editor has frozen" prompts.

Admittedly, Atom's background color is hands-down more eye pleasing with its slightly blue tint. Fortunately Sublime is skinnable.

<comment><USER3> I too abandoned Atom after a few month trial period. It has potential, but it just had so many issues that, upon opening Sublime Text again, I heaved a huge sigh of relief. That's not to say Atom is bad, but even now it's a bit rough around the edges.

I love the theme though. It's probably the only time I've opened an editor and didn't immediately look to change the theme. If I'm not mistaken, it's called "One Dark" but I could never find a good Sublime or Emacs clone.

<comment><USER4> I haven't directly compared them to atom recently, but I've found these emacs themes to be pretty comparable:

[https://github.com/jonathanchu/atom-one-dark- theme](https://github.com/jonathanchu/atom-one-dark-theme)

[https://github.com/NicolasPetton/zerodark- theme](https://github.com/NicolasPetton/zerodark-theme)

[https://github.com/nashamri/spacemacs- theme](https://github.com/nashamri/spacemacs-theme) (not really an atom/dark- one clone, but pretty good nonetheless)

</comment></comment></comment><comment><USER5> I for one, absolutely love Atom. I (sincerely) thank GitHub and the surplus of VC cash that allows projects like these to happen at places like GitHub.

Except for the sub-native speed, Atom basically offers everything that high- quality commercial text editors (BBEdit, Coda, Chocolat, early Textmate ) used to offer. On top of that, it's open-source, is free with no limitations, and totally cross-platform. It comes with a minimap, for goodness sake!

I currently use a mix of both ST and Atom, depending on my mood.

<comment><USER6> Except for Chrome OS. Boy, I would drop any Macbook for a Chromebook Pixel if it could run Atom without tinkering.

</comment></comment><comment><USER7> Managing issues in big projects is a lot of work. I wrote a blog post about it a few years back: [http://words.steveklabnik.com/how-to-be-an-open-source- garde...](http://words.steveklabnik.com/how-to-be-an-open-source-gardener)

Slow and steady wins the race, as well as making triage a part of your process. Leave it too long and the weeds overgrow.

</comment><comment><USER8> Like just about everybody else it seems, I use Sublime Text. Every year or so since I first heard about Atom, I give it a couple weeks. It has really come a _long_ way since pre-1.0 days. It is very usable and doesn't crash nearly as often. However, there is strange behavior that ends up pushing me back to ST3. Over the years I've developed a "bullshit cutoff point" after which I stop using an application. If a distro/app/site/whatever is making me spend hours on getting it working/fixed/performant/whatever, I go back to what works until some months down the road. I think Atom is very close to being a top-tier editor, but not quite yet "better" than Sublime for my purposes. I do think that it's just a matter of time, though, that an army of developers will eventually surpass one developer (as long as its not mismanaged, and Atom certainly isn't). So for me, Atom's day is still yet to come, but I do think it will come.

So for example, multiple panes and session/editor restarts should be _flawless_ for me to give serious consideration to an editor. If there is even one bump in the road, I judge extremely harshly. And problems/bugs with panes and remembering my session is what pushed me back to Sublime this spring. I should be able to drop whatever I'm doing, restart Linux, and when it boots back up, start the editor and it will be as though nothing happened, including multiple unsaved tabs. Atom has a lot of trouble with this.

</comment><comment><USER9> I've done a lot of foss bug triaging and I found that tags are essential to managing incoming bugs.

Have lots of tags/labels and tag _every_ bug as soon as they are filed with at the very least a basic component (this is where machine learning could help a lot). Unlabeled bugs tend to get lost; labeled bugs can be looked at by someone who's familiar with the area (and relabeled if needs be).

If your product is very popular make sure to tag support questions and similar as soon as possible with their own label as well.

</comment><comment><USER10> Maybe they should switch to bugzilla or phabricator or jira or something. Github issues don't scale well to complex distributed projects. Chrome just open sourced their monorail project that's designed for this kind of project too. Lots of great choices out there.

<comment><USER11> Atom is made largely by GitHub. You're right a more sophisticated issue tracker may be in order, but I don't think they'd do that.

<comment><USER12> It seems strange to me that Atom is experiencing the same sort of troubles that occur with large multi-project projects and they don't seem to be aware that their tooling should accommodate that.

One thing that is blatantly obvious would be a organization wide issue tracker. That alone would alleviate the "which project do I file this against" questions and give the project owners an easy way to see the issues for all of their projects.

I work on a few projects that are actually multi-org, so even that wouldn't be enough for me, but would be a darn good start.

<comment><USER13> > organization wide issue tracker

Does anything like github/bitbucket/gitlab support this?

<comment><USER14> GitLab allows you to show issues from a milestone in multiple projects (but one group). See [http://doc.gitlab.com/ee/workflow/milestones.html#groups- and...](http://doc.gitlab.com/ee/workflow/milestones.html#groups-and- milestones)

</comment></comment></comment></comment></comment><comment><USER15> Speaking of issues, I got bored of Atom crashes (at least with the last version your work is no longer thrashed), and I came back to Sublime.

<comment><USER16> What OS? I've had no problem on both win 8 and arch, though on an admittedly powerful computer.

</comment></comment><comment><USER17> I have tried atom a couple of times, but ran in to some very annoying rendering issues - tearing while scrolling, dark backround flashing white when changing tabs, especially with the minimap - as well as general lag and sluggishness. Sublime is just so much smoother and easier to use.

</comment><comment><USER18> If they made it easy or easier to work being a proxy at work, I might stick with it. Currently sucks.</comment>


Erik Satie: Velvet Gentleman - <AUTHOR> http://www.lrb.co.uk/v37/n11/nick-richardson/velvet-gentleman

<comment><USER2> >His last words were "The cows..."

I doubt this. In French, "vache" means cow, but it also means terrific or terrible. It's essentially an emphatic noun, whose meaning depends on context and tone of voice. Given the plural, the tendency would be to believe he meant something like "the bastards." Of course, given the rest of the article, Satie could easily have meant "the cows," although I strongly doubt it.

<comment><USER3> Right. Just like Jobs last words. Some sort of "exclamation" term.

damned, fools, ... something like that.

</comment></comment><comment><USER4> Two great quotes from The Browser summary:

"There are many kinds of eccentric and Satie was most of them"

"He may not have been a great composer, but he was a great Satie"

Funny, I considered submitting this link yesterday, but assumed it may not be hacker-y enough. But I believe the connection lies in the fact that as ambient background music, Satie's compositions are remarkable in their ability to calm, focus and stimulate the mind.

The next time you begin to feel a bit burnt, try closing the eyes, donning headphones and slipping into Le Monde Gnossienne:

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

<comment><USER5> It's funny I come to hn for stuff like this. Thanks for the video. Here is a nice one for Debussy ([https://www.youtube.com/watch?v=-kziF6whWW8](https://www.youtube.com/watch?v=-kziF6whWW8))

</comment></comment><comment><USER6> But there's much more to Erik Satie. I feel, as long as this piece is, that it's still too short. He deserves more.

This, by the way, was his great love/muse, Suzanne Valadon: [http://mfas3.s3.amazonaws.com/objects/SC114311.jpg](http://mfas3.s3.amazonaws.com/objects/SC114311.jpg)

<comment><USER7> Satie is one of my favorite composers. I'm happy to see others giving him the respect he deserves.

</comment></comment><comment><USER8> Too bad this is falling off the front page; it's a delightful article.

</comment><comment><USER9> Pity this book doesn't seem to be available as an e-book. Only hardcover.

</comment><comment><USER10> Submitter's username :)

</comment><comment><USER11> great article but hardly a book review!</comment>


How b-tree database indexes work and how to tell if they are efficient - <AUTHOR> http://mattfleming.com/node/192 <comment><USER2> This might sound dumb, but I always thought database tables used some sort of hash table like implementation with O(1) retrieve times on indexed columns. Don't b-tree indexes imply that we're looking at O(log(n)) retrieve times instead?

If so, why would database implementations make this tradeoff?

Two advantages I can think of: a b-tree offers very quick sorting (because data is already sorted). It is probably more efficient to grow a b-tree in place on disk without having to move too much data around too often.

While these two things matter, O(log(n)) vs. O(1) read performance is a big difference. And if I'm not mistaken, most databases ought to be read optimized to begin with.

Can someone enlighten me on the implementation considerations here?

<comment><USER3> For starters, algorithms with O(1) performance can have large constant factors, and resizing the hash now and then can make the occasional operation disproportionately expensive.

Mainly, though, each b+-tree node is the same size as a disk I/O block. The disk is often the slowest part of the database, so making as few reads as possible will go a long way. If you can't work entirely in memory, that's the next best thing.

<comment><USER4> _Mainly, though, each b+-tree node is the same size as a disk I/O block. The disk is often the slowest part of the database, so making as few reads as possible will go a long way. If you can't work entirely in memory, that's the next best thing._

That makes no sense. An external hash index is also designed to do as few I/Os per read as well (typically just a single I/O to read the page that holds the target bucket). Just like b-trees are designed differently than in-memory trees, external hash indexes are designed differently than in-memory hash tables.

</comment></comment></comment><comment><USER4> _10% selectivity is the minimum selectivity necessary for a b-tree index to be helpful._

That's probably on the high side. Suppose that records are stored in 8KB pages (which is probably too small for a modern system, but nevermind), the selectivity of the scan is 10%, the records that satisfy the scan are randomly distributed over the pages, each page holds, say, 40 records (which is conservative, even for small 8KB pages), and we're considering scanning a secondary index[1].

That means that a typical page in the heap has 4 matching records, which means we are very likely to have to read every page in the heap anyway. Worst still, the order in which the index scan returns results is unlikely to correlate with the physical storage order of the heap pages, which means that the 4 IOs per page are going to be random, not sequential. Add to that, in a scan of a secondary index, you need to read both the index page and the pointed-to heap page, which is an additional I/O (compared to a sequential scan of the heap). So it's easy to construct a realistic scenario when you wouldn't want to use a secondary index when the scan selectivity is "only" 10%.

[1] And that an index-only plan can't be used: i.e. we need to fetch the pointed-to heap page.

</comment><comment><USER5> A couple other things to consider:

1\. Create a multi-column index that satisfies the query entirely on its own without the need to go to the table to read additional data. This technique solves a large percentage of slow query problems.

2\. A bitmap index in Oracle kills concurrency. Do not use bitmap indexes for table with multiple concurrent transactions.

<comment><USER6> Also consider that if you have a 100M row table and the column has only 4 values, but those values are highly skewed (ie 3 values are 99% of the rows, 4th is 1%), then a function index on the skewed column can be very useful:

        create fbi on table(case
                              when skewed_col == 'small value'
                                skewed_col
                              else
                                null
                            end)

The null values are never indexed, so now you have a nice small index that is good only for finding you 'needles in the haystack', so long as you put that case statement in your queries.</comment></comment>


To predict the future 1/3 of you need to be crazy - <AUTHOR> http://steveblank.com/2015/12/15/blanks-rule-to-predict-the-future-13-of-you-need-to-be-crazy/ <comment><USER2> I think one of the main reasons I've failed to innovate inside a large company, while succeeding at building new things at startups, is because I find it so hard to maintain a positive attitude inside a corporate environment. However, at a startup, when I'm starving, I find optimism in everything and build nonstop.

So far this is a bit of a horrifying conundrum where I am a technical startup failure, but in good spirits or a corporate success and in bad mood all the time.

I've found when I'm at a startup there is enormous willingness to believe that my crazy ideas might create an opportunity -- likely because C-suite has nothing to lose and everything to gain. While I'm in a corp environment at the top of the market, VP's have everything to lose and very little they can imagine that can get better (other than competitive catchup scenarios).

This leads to a really deadly cycle, where large companies shun real innovation because of the perceived risk being 100,000,000x higher than at a startup since one has 0 to lose, and the other has billions.

The net-net result here is that big corps never end up being first movers, since they need to see opportunity illustrated by a competitor before they move on it. This sets up the corp team for failure though, as they are assigned to catch up to a competitor already established and building a product on a good foundation and likely years ahead in thinking.

<comment><USER3> Would you say that, for this reason, large companies should maintain small insulated "Google X"-style incubation divisions to attempt to get the best of both worlds (stability of the big company with the risk-taking of the small)?

<comment><USER2> I think creating separate quasi-elite innovation groups ruins the spirit of innovation for the overall corp culture.

It should be emphasized that everyone has "Google X"-like responsibility, and managers especially need to be trained to listen, accept, and support suggested projects by their reports.

<comment><USER4> The goal generally is to split the company into "exploitation" and "exploration" divisions, as in the types of innovations that the divisions pursue.

So, the traditional group still innovates, but focuses on product or incremental innovations. The 'innovation group' then is one that has free rein to pursue 'radical innovations.'

In general - exploitation requires homogeneity and consensus, while exploration benefits from heterogeneity and episodes of conflict. This still focuses everyone on innovative effort, but if management can identify how people fit in / which kinds of innovations they can do best, then this 'ambidexterous' organizational structure can work well.

Additionally, the 'elite' language is pretty bad - you're right, we should encourage everyone to innovate, and should encourage incremental improvements, which certainly have great value as well. It's easier to see the value of a radical innovation, but also the risk as well.

<comment><USER5> I would argue that everyone wants to be in the "innovation group"—it's where all the challenge is, it's where all the stuff that looks good on their resume is, and it's just plain inherently more interesting subject matter—and that those who end up "exploiting" rather than "exploring" feel like they've lost out because of this. Plus, R&D engineers frequently have less oversight _and_ better pay.

The real problem is that the decision-process for who ends up in R&D—and who ends up handling dumb production bugs their whole life—looks more like the military officer/enlisted split than like a single career track. We have extremely talented, extremely experienced engineers who are 20-year "Non- Commissioned Officers", still stuck in the bullpen, while some of the newbies mysteriously end up fluttering away to be Ensigns.

</comment></comment></comment></comment></comment><comment><USER6> Great post. This reminds me of a New Yorker article, Groupthink, from a couple of years ago[0]. Essentially, disagreement fosters creativity, not brainstorming platitudes like 'there are no wrong ideas'.

An excerpt:

        ...dissent stimulates new ideas because it encourages
        us to engage more fully with the work of others and to
        reassess our viewpoints. "There's this Pollyannaish
        notion that the most important thing to do when working
        together is stay positive and get along, to not hurt
        anyone's feelings," she says. "Well, that's just wrong.
        Maybe debate is going to be less pleasant, but it will
        always be more productive. True creativity requires
        some trade-offs."

The article is terrific and I'm mentally made note of 3 techniques that I've used over the past few years:

1\. Thinking on your own can lead to more solutions than thinking in a group.

2\. Dissent and constraints stimulate creativity.

3\. Insane, off-the-wall, unproductive ideas can stimulate creativity in everyone else.

[0] [http://www.newyorker.com/magazine/2012/01/30/groupthink](http://www.newyorker.com/magazine/2012/01/30/groupthink)

<comment><USER7> I dunno, I'm not totally sold... Often times I've worked with people who I pretty much thought were bad engineers and they were the most boisterous. I'm not saying being boisterous in itself is bad, but it's like it was there primary weapon to make EVERYTHING an issue.

Healthy debate is good, but... I dunno. I hate giving bad engineers more ammo to act crazy.

<comment><USER8> I believe that the article was talking about disagreement, critique, and debate. Being "noisy" and "boisterous" sounds like something else entirely. Productive debate ought to be calm, civil, rational, and without inflated egos.

<comment><USER9> Good rebels versus Bad Rebels at work here [http://steveblank.com/2015/08/25/why-corporate- entrepreneurs...](http://steveblank.com/2015/08/25/why-corporate- entrepreneurs-are-extraordinary-the-rebel-alliance/)

</comment></comment></comment></comment><comment><USER10> I remember when I created my first company. Being young I was so idealistic and did bet everything on it.

My parents believed I was nuts: "With no real world experience you should not create a company", they said, "first work for someone else, get experience, and then make a company if you want".

My girlfriend thought I was also nuts, she blackmailed me: My (stupid) idea or she. I chose my stupid idea. She wanted to get back a week later but it was too late.

My friends could not understand either why take "pies on the sky" when I had good options on a "real work".

After creating my company everything took way longer than expected, I started believing it was not a good idea after all, you only have the energy you have after it is depleted.

But one day I read a document I wrote when I started my company and was incredibly shocked that everything I wrote down in the past was becoming real in the present!!

Things started to roll, I got more confident...in the end it was a huge success precisely because it was such a crazy idea.

Had I followed my parents' advice, I would never have never done what I did, "experience in the past" would have blocked the possibilities of the future and the beginners mind.

<comment><USER11> What is the name of the company?

</comment></comment><comment><USER12> Reminds me a bit of the 10th man idea from World War Z. Basically, if all 9 members of a council unanimously agreed on something, it was the 10th man's duty to act as if that thing was a certainty and prepare for it.

This all really plays into argumentative theory [0], which is the basic idea that human reason developed as an argumentative tool. Its main function isn't "true" or "logical" ideas, but rather persuasion and defense thereof. One major conclusion is that reason often works to reinforce existent ideals against external challenge, regardless of the merit of those ideas.

[0] [http://evolution.binghamton.edu/evos/wp- content/uploads/2011...](http://evolution.binghamton.edu/evos/wp- content/uploads/2011/06/Mercier-Sperber-Why-do-humans-reason.pdf)

<comment><USER13> Small correction: It was the 10th man's duty to *disagree with the other 9 and prepare for that outcome.

<comment><USER14> That makes more sense.

Another SF writer (name escapes me) posited a Ministry of Sabotage, in charge of making government less omnipotent ...

<comment> ainar-g Might've been Frank Herbert: [https://en.wikipedia.org/wiki/Bureau_of_Sabotage](https://en.wikipedia.org/wiki/Bureau_of_Sabotage)

</comment></comment></comment></comment><comment><USER15> This reminds me a lot of a thesis (sort of) from Peter Thiel's "Zero to One". He calls it The Contrarian Question:

        What important truth do very few people agree with you on?

The question asks us to escape from the mental confines of the past and present to be able to "predict the future" as it were.

</comment><comment><USER16> I like this concept, now how does one tell the difference between a tenacious insider with a crazy idea that just might work, and a tenacious insider with a horrible idea that they just won't let go of?

<comment><USER7> Presumably the idea itself has merit?

I don't know, but I agree with you that this is a good question.

<comment><USER17> Good crazy ideas revolve around solving one or a handful of extremely hard engineering tasks, which make everything else easier "assuming the crazy thing works."

Bad crazy ideas break any part of that description. The single hard thing is new science/research instead of engineering, or the new hard thing won't make the rest easier, or the new hard thing is supposed to get rid of all the other problems.

</comment></comment></comment><comment><USER18> I was hoping that the article would explain the fractions it so arbitrarily threw out. Did I miss a derivation of the numbers or a reference to supporting evidence? Does anyone else have any studies/proofs about such team demographics, etc?

</comment><comment><USER19> "Luckily Houbolt got to make his case, and when Wernher Von Braun changed his mind and endorsed this truly insane idea, the rest of NASA followed."

If one can take this literally (and it wouldn't surprise me at all, but who knows for sure), it shows how even the cream of the crop smart people are subject to either group-think or fear of rocking the boat they are sitting in - now imagine if your workplace of relatively average people are subject to or engage in similar behavior.

The tenacity of the engineer to stand up to that culture is extremely admirable.

</comment><comment><USER20> It goes back to the traditional quote that you if you don't know it's impossible to create X thing, then it might just be possible to create X thing

</comment><comment><USER14> _" Luckily Houbolt got to make his case, and when Wernher Von Braun changed his mind and endorsed this truly insane idea, the rest of NASA followed.

We landed on the moon on July 20th 1969."_

'Chapeau' (hats off).

Been paying attention to space and SF for way too many moons, had never read this story.

</comment><comment><USER21> "Yet in 1961 LOR was a completely insane idea."

It's not that you have to be crazy, it's that most people around you are actually the crazy ones who push conformance on you because they can't hack it.

Innovating is difficult due to many people being so very risk averse. Ideally you have a balance between caution and boldness, however, people lose the will to take chances when the "bottom" line is at risk.

Of course, when it comes to what NASA does, the bottom line also involves human lives. Although, then NASA's existence would have and probably is still considered crazy by some number of people.

</comment><comment><USER22> man but staying crazy can really lead to burn out if your voice is never heard

</comment><comment><USER23> I suspect this is why "collect the best and brightest and lavishly fund them" star-power startups tend to fizzle. The best and the brightest are that way by yesterday's metrics.

</comment><comment><USER24> I've always thought an interesting idea for trying to curing cancer would be to put the world's best physicists, mathematicians, economists, and software engineers in a room together and see what happens.

(Conversely, it would be interesting to see what ideas the world's best medical researchers and biologists come up with for particle physics and software development.)

<comment><USER25> If you invite the economists, you will end up concluding that, in order to stop cancer, you'll need to stop the _Demand_ for cancer.

<comment><USER26> > If you invite the economists, you will end up concluding that, in order to > stop cancer, you'll need to stop the Demand for [whatever it is that] cancer > [-ous cells like].

I think we're on to something...</comment></comment></comment>


How the TensorFlow team handles open source support - <AUTHOR> https://www.oreilly.com/ideas/how-the-tensorflow-team-handles-open-source-support <comment><USER2> I don't like Google's CLA. This article spins it to make it sound like the CLA is there to make sure the code can be used under the Apache license, but what a CLA really does is shift blame away from Google to all of the external contributors. The article even even expands the CLA acronym incorrectly, to make it sound like it's about the code instead of being about the contributor, and the rights they're giving up for Google.

CLAs are one-way, for covering Google's ass. They do not benefit the contributors.

[http://ebb.org/bkuhn/blog/2014/06/09/do-not-need- cla.html](http://ebb.org/bkuhn/blog/2014/06/09/do-not-need-cla.html)

<comment><USER3> "I don't like Google's CLA. "

This much is apparent :)

"This article spins it to make it sound like the CLA is there to make sure the code can be used under the Apache license"

Which it is.

", but what a CLA really does is shift blame away from Google to all of the external contributors."

Well, no, actually, it doesn't shift "blame" at all (and you aren't clear on "blame for what").

In fact, it's main goal is to protect the end users and the project.

"CLAs are one-way, for covering Google's ass. They do not benefit the contributors."

This first part is just flat out false. If you read even the first sentence of each line of the CLA, you'll see it benefits more than just Google (and it only benefits Google at all because they are the ones taking on the liability), and benefits Google exactly as much as the end-users. The second part is just silly, the goal of properly written CLA's is _not_ to "benefit the contributors". What benefits do you think they need?

The goal of the CLA is to benefit _the project_ , and make sure the project itself, and more importantly, the people who _use_ the software don't get screwed, particularly if a contributor screws up.

So now i just think you read a blog post and think you agree with it, but don't actually understand the situation enough to articulate coherent arguments as to why.

"[http://ebb.org/bkuhn/blog/2014/06/09/do-not-need- cla.html"](http://ebb.org/bkuhn/blog/2014/06/09/do-not-need-cla.html")

I respect Bradley a lot, but on this subject, he is simply wrong in this situation. This is not entirely surprising. Bradley does not deal with a lot of communities that involve attempting to maintain patent peace among various corporations. He mostly deals with communities whose issues are copyright related, and where most situations can be dealt peaceably with by removing code.

In those communities, i think it would be reasonable to not give a crap about CLA's and to think they were a waste of time.

However, all the world is not that simple.

<comment><USER2> I was not surprised to see that you're a lawyer at Google, so of course you think Google is doing the right thing.

As you know, what the CLA is doing is making sure Google can't get sued for patents or copyright claims on the software. That's what I meant by shifting the blame from Google to the contributors. Google can just say, look, we have this CLA here, so it means we didn't do it, go talk to the one who signed the CLA. Not our problem, says Google. So now it's up to the individual who signed the CLA to deal with whatever legal fallout happens, a person who probably has a lot less lawyers than Google to handle the problem.

If you really wanted reassurance that the code is being contributed properly, there are other documents that could be signed which would be much more two- way than Google's CLA. For example, GNU's copyright assignment includes a promise from GNU that they will always keep the software free, with GNU absorbing the legal burden to do so. KDE's CLA has a similar wording, talking about free software principles, and it's also optional for contributors.

Now I am going to be more adversarial and unpleasant. I don't like the Google hivemind. Google employees have a very uniform mode of thought on certain topics. This includes the beliefs that the GPL is dangerous and must never be used by Google unless forced to (i.e. only on software that came from outside of Google), that the AGPL is the ultimate evil, and that under all circumstances Google must be protected above everything. Google only legally cares about Google, no more. You can pretend like the CLA also benefits the other contributors, but that's not really the case. The external contributors could take Tensorflow, fork it away from Google, keep working without a CLA, and everything would be right. All that's necessary is the implicit agreement to the free license (for example, the clause in the GPL that says using the software grants you the rights provided by the GPL). Like you say, should a problem arise, all they have to do is remove the offending code.

<comment><USER3> "I was not surprised to see that you're a lawyer at Google, so of course you think Google is doing the right thing."

Actually, it's more than that if you really want to get into it! I came up with Google's policies and CLA. But it's always great to attack people for what they do instead of actually engage on the merits!

"As you know, what the CLA is doing is making sure Google can't get sued for patents or copyright claims on the software."

This is false, so i don't know it. It's making sure the innocent end user can't get sued. Google can and has gotten sued for what contributors do. Surprise! In fact, in that case, the contributors were not even notified. We took care of it. Double surprise, apparently.

" So now it's up to the individual who signed the CLA to deal with whatever legal fallout happens, a person who probably has a lot less lawyers than Google to handle the problem."

So just to be clear if an individual deliberately screwed up, you think Google should handle the problem because they have more lawyers? That's an interesting notion. Hey, i fucked up my neighbors house, but he should worry about it, because he makes more money than me. Past that, you think the end users should pay the price? Because again, the issue you are complaining about is there to protect the end users, not Google.

As I already mentioned, Google already tends takes care of these issues on it's own.

"If you really wanted reassurance that the code is being contributed properly, there are other documents that could be signed which would be much more two- way than Google's CLA."

Not really.

" For example, GNU's copyright assignment includes a promise from GNU that they will always keep the software free, with GNU absorbing the legal burden to do so. KDE's CLA has a similar wording, talking about free software principles, and it's also optional for contributors."

Both of these, which i'm intimately familiar with, have precisely the same issue you complain about in the first paragraph. So again, your argument seems non-coherent.

Neither of these CLA's indemnify contributors or otherwise prevent them from being sued. In fact, they both do exactly the same as the Google CLA in this regard.

" This includes the beliefs that the GPL is dangerous and must never be used by Google unless forced to (i.e. only on software that came from outside of Google),"

This is also just false. You literally have no idea what you are on about. In fact, if you bothered to look farther, you'd see that i was a GCC maintainer and have contributed and used GPL software (both FSF-and non at Google for many years.

Google happily uses and contributes to tons of GPL software, and has no such policies or thoughts. Again, i'm the person who made the policies, so i would know. When I first joined one of the first things I did was get Google to sign a blanket copyright assignment with the FSF.

"that the AGPL is the ultimate evil, "

Whatever this is supposed to mean. We have several practical problems with the AGPL that other companies have as well. We don't avoid it for ideological reasons. Interestingly if you ask Eben , you'd find that he also has concerns with how it achieves its goals.

"You can pretend like the CLA also benefits the other contributors, but that's not really the case. "

I actually explicitly have said, numerous times, the CLA is mainly for the protection of end users and the project.

"Like you say, should a problem arise, all they have to do is remove the offending code."

This is where, like Bradley, you simply have no idea what you are talking about. That only works in very simple situations.

Overall, your argument comes off as "i have an axe to grind with Google". Nothing you have stated makes a lot of sense. The people you hold up on a pedestal have precisely the same legal issue you refer to, but you randomly change arguments about what exactly your issue is.

As you surely also know Google CLA is a copy of the Apache CLA with one of the obligations removed because we felt it was too onerous (there are no other changes). So your real problem is with the thousands of projects that use Apache CLAs.

<comment><USER2> So, if Google doesn't have a problem with the GPL or doesn't think it's dangerous, what's the software that originally came from Google that was GPL- licensed? Your gcc example doesn't count, because like I said, Google was coerced to use it for gcc. When did Google license something under the GPL because they wanted to defend their copyleft?

And yeah, the practical problem with the AGPL that you have is that you think your company will be destroyed if the world could see your source code. That's why you tell all of your employees that they can't even consider _touching_ software that's AGPLed. So, what are you hiding there?

The only reason Google will use GPLed software is because they managed to de- fang it. Once the AGPL put the fangs back in, oh no, can't have that.

For Google, like for Apple, Microsoft and Facebook; free software is only intended for relatively unimportant scraps. The real meat, the real code, must remain secret, must remain safe. That's how you can control the users, how you can better target ads at them. Imagine the havoc if we could see the source code for AdSense or Gmail!

On the other hand, thank you for clarifying how the CLA works. No sarcasm here, I'm honestly thankful about that. Sorry, I was wrong about that.

<comment><USER4> I think most people in the ecosystem are happy that Google doesn't tend to use the GPL, since doing so would make it more difficult to use that code commercially.

In commerce, GPL'ing at the origin is mostly a tactic for protecting the commercial value of code; for instance, Sourcefire kept Snort under the GPL so that nobody could effectively compete with them using the Snort codebase, since they had the asymmetric ability as copyright owners to make private enhancements while competitors needed to public; Sleepycat GPL'd their database so that commercial software projects that wanted to use BerkeleyDB had to pay for an alternate license, &c.

Taking from a GPL project and refusing to contribute back to it on GPL terms is antisocial, but then, Google doesn't do that (they do they opposite, contributing more than any normal software firm).

But declining to originate software under the GPL isn't antisocial. I appreciate what the GPL does and have used it for projects myself, but virtually anyone who works professionally knows to think twice before adopting GPL'd libraries and thus constraining their future options.

I don't think this criticism of yours really makes any sense.

Also, as a bystander to this little debate on HN, the sincere thanks you just gave was a good start, but you also cast aspersions on his motives for discussing this here, and I think you owe him an apology as well. It's an HN rule not to say those kinds of things about other commenters.

<comment><USER2> I refuse to accept the conclusion that the GPL is anti-commercial or that it makes it more difficult to use code commercially. I think the companies who are indeed the vast majority, who think that the only way to commercialise software is to hide the source code and keep things secret are overall wrong.

When none of Google, Microsoft, Apple, or Facebook actually originate code under the GPL, all this does is further this conclusion that seems so unquestionable to you that the GPL is anti-commercial or restrictive or just something to hesitate about. What the big guys do the little guys believe. We need more free software, and we need to defend the proliferation of free software, and we need to protest against those who work against free software, who control our search results and the ads shown to us and the information collected about us behind the veil of secret source code.

I refuse to apologise for questioning Google's motives. Their GPL refusal, except when forced to, is not a good thing. If they wanted free software they would be doing things like pursuing the rampant GPL violations in Android devices or defending their copyleft against VMWare's attempts to circumvent Linux, not leave it to charities like SFC.

<comment><USER4> Nobody's asking you to apologize for questioning _Google 's_ motives.

<comment><USER2> In this case, DannyBee has said he designed some of Google's motives, so the distinction is difficult to make. I guess I am not understanding exactly what offense I committed. This is a failing on my part, and if you can clearly pinpoint what I said that requires an apology, I would appreciate it.

</comment></comment></comment></comment></comment></comment></comment></comment></comment><comment><USER5> Big thanks to Derek for his stackoverflow responses, have saved me so much time, especially considering how uninteresting that support work might be in general compared to designing and implementing new systems.

</comment><comment><USER6> Tensorflow isn't really regarded as a very welcoming open source project in the deep learning community. The deep learning academic community is already moving to PyTorch, not just because of the imperative style programming, but also to avoid Google lock-in and the pseudo-open ethos. PyTorch is used and developed by the community, and backed by multiple companies, not just one.

<comment><USER7> I'd be interested to know how you formed this impression. My own impression is formed by:

* The work I and my colleagues are doing * Recently published literature and arxiv pre-prints * Conference talks * Industry meet ups * Blog posts

Based on my anecdotal experience from these sources, I see absolutely no evidence of Torch experiencing any kind of resurgence. If I had to make a call about the direction if the community as a whole, I would say that it is very clearly heading towards TensorFlow, with some holdouts using Theano and some using mxnet. Torch is used by some groups, certainly, but I have the impression that it's use is decreasing, rather than increasing.

<comment><USER8> Just to give you another anecdotal experience:

I'm a researcher who used Theano for 3 years to train convnets. A couple of months ago I realized that Theano is getting too much pain to work with (main reasons being the lack of implementations for latest models, and difficulty of using multiple GPUs), so I decided to switch to a more popular framework. I looked at TF, and almost started porting my code to it, then someone suggested I look at PyTorch. After 30 minutes playing with it, I was sold. Much more intuitive. Major architectures from the last 12 months have been implemented. Dynamic graphs are probably something I will need in the future. Community is very active and helpful. The downside is that the software is not as mature as TF, and the community is smaller, but that's changing fast.

p.s. What you wrote about Torch is correct though, but we are talking about PyTorch, not Torch.

</comment></comment></comment><comment><USER9> It's really cool to peer behind the hood of really massive open source projects. I have to give kudos for the TensorFlow team for staying on top of what must be a massive amount of work!

</comment><comment><USER10> The sad part is that open-sourced TensorFlow isn't same as TensorFlow that Google uses.

I've also heard Google is not really fond of cooperation with other corporations (say, NVidia) on TensorFlow

<comment><USER11> The codebase in GitHub is pretty much exactly the same as the internal, the main exceptions being things like having to rewrite include paths for files, filesystem plugins for internal cluster filesystems, etc; and those things are modularized so that we can have equivalent implementations in the OSS build to support things like HDFS and GCS filesystems, RDMA network layer communication, etc.

We daily sync the code between the two repositories using a suite of tools we've built. I'm on sync rotation this week and you can see all of my commits and activity on GitHub as proof; I merged something like 60 commits from the community just this week. It wouldn't make any sense for anybody (Google or the community) to maintain two different versions for something that is actively being developed by so many contributors. I've also directly worked with NVidia engineers on improvements they've made (and merged) to the system; the ones I've dealt with are great, so that statement is also false.

I'll be giving a talk about all the work we do to make this possible at OSCON next week, and if you are there feel free to catch me to ask me questions.

<comment><USER10> Obviously I don't have any proofs that I can provide. Just small talk with people here and there. Some NVidia engineer told me that Google is (was?) very uncooperative to work on some DL stuff together, as opposed to, say Facebook.

About internal version, this is pure speculation, based on idea that TPU are programmed with some framework, thus out should be TF, thus there is closed part and there should (could) be others.

<comment><USER11> I'm sorry to hear of that experience, and it's certainly not intentional. We should (and I will) always try to be better (I know some will forever view Google as an antagonistic behemoth but usually the engineers on both sides are trying to do the right thing; it just takes time to come to consensus and understanding sometimes).

Regarding internal version: we built TensorFlow to support devices as modular plugins: the CPU and GPU devices are built this way (you can read the source code to see how device registration works), and the same registration mechanism is used for the TPU code, which can't be opensourced due to internal dependencies. Internal customers just link in an additional library to get TPU support, but it still uses the same core codebase that is available in the opensource world. I know this because I wrote a lot of the device modularity and TPU binding code :)

<comment><USER10> I see, maybe I was a bit exaggerating.

I'd really like to talk more about birth Tensorflow and TPU, but unfortunately I won't come to OSCON. May be some other time :)

</comment></comment></comment></comment></comment><comment><USER12> This is a great post!! Thank you.</comment>


Why Almost Nobody Wants to Pay for the 'Netflix of Magazines' - <AUTHOR> http://www.businessweek.com/articles/2015-01-19/why-almost-nobody-wants-to-pay-for-the-netflix-of-magazines-

<comment><USER2> Is it normal I get a article not found ?

</comment><comment><USER3> My expected enjoyment per time invested in a magazine is just too low. Even if you gave me a magazine for FREE.

I enjoy fictional and non-fictional movies and television more. I enjoy video games more, too. And reading books. They're just all better uses of my time.</comment>


Ask HN: What is the current status of ES6 modules and loader in browsers? - <AUTHOR>

<comment><USER2> status.modern.ie lists it as "Under Consideration" still for all browsers: [http://dev.modern.ie/platform/status/moduleses6/?filter=f3e0...](http://dev.modern.ie/platform/status/moduleses6/?filter=f3e0000bf&search=module)

SystemJS is a polyfill (and extender post-polyfill) that is great with support for plugins, transpiling ES6, and format detection for CommonJS, AMD, and even "Global" modules: [https://github.com/systemjs/systemjs](https://github.com/systemjs/systemjs)

Also recommended, is JSPM ([http://jspm.io](http://jspm.io)) which is a package manager that utilizes the features of SystemJS and configures SystemJS to load NPM packages (akin to Browserify/Webpack) and Github repositories (somewhat similar to Bower).</comment>