9 ms·
Why Invest in Tools?
- natrius 11y ago"Our job is not to just build Facebook, our job is to make the world more open and connected — and we in Product Infrastructure are tasked with giving the whole software industry the tools to help us accomplish this mission." If this is explicitly true, I've never heard of anything like it in a company that doesn't sell to engineering organizations, and it's pretty amazing.
- birdsbolt 11y agoI did chuckle as it reminded me of the "curing cancer" talk Gavin Belson gives in the Silicon Valley series :D
- ams6110 11y agoThey built their company on tools like this, so they do have a certain moral obligation to give back. I don't like a lot of things about Facebook, but good for them having this attitude.
- benihana 11y ago>so they do have a certain moral obligation to give back. What moral obligation are you talking about? There's no moral obligation for anyone using open source software to give anything back. Are you aware of how software licenses work?
- ObviousScience 11y agoIf you're referring to software license terms, you're making a legal, not a moral argument.
- Stratoscope 11y agoThere's an interesting nuance in the phrase "a certain moral obligation." In my understanding, it's a fairly weak statement [1], somewhat akin to "People will think more highly of you if you do this thing, and less highly if you don't." Contrast this with "they have a moral obligation." To me that is a much stronger statement: "People will think you are behaving in an immoral way if you do not do this thing." It's funny how adding the word "certain" to the phrase actually makes it a less certain, gentler way of putting things - quite the opposite of the literal meaning of the word. Put another way, I could imagine a law being passed to enforce "a moral obligation". But it seems much less likely to have a law enforcing something described as "a certain moral obligation." [1] I mean "weak" in the sense of not being a strong claim of obligation, not "weak" in the sense that the phrase is a poor way to say something.
- ams6110 11y agoRight, I just meant in a "pay it forward" or "the decent thing to do" sense.
- leebyron 11y agoHey, original author here. The moral obligation is real, and I personally feel quite strongly about it and I know most of my coworkers feel the same. Morality is relevant because it's a human feeling. It's easy to forget that even big companies like Facebook make decisions by the hands of single individuals. Facebook was built on the LAMP stack >10 years ago. Without open source, Facebook wouldn't exist and we all know that. I personally find satisfaction in sharing as much of the stuff we build as possible as open source in the hopes that others will be able to build something great.
- cosmolev 11y agoOpen? Connected? BS! Or they mean "Connected to Facebook alone"?
- nickpsecurity 11y agoBottom line: invest in good people, delegate responsibility to them, encourage experimentation, and focus on long-term. Facebook wasn't the first to try this model. They are one of its recent success stories, though. Most companies' IT departments won't have similar success due to control-freak management, conformance to established processes/agendas, or focus on quarterly-earnings. We'd all be better off if they switched to the model that actually produces innovation. Even shifting a portion to it might send a hell of a shockwave through the industry.
- untilHellbanned 11y agoI'll state the obvious: FB has reached champagne problem status. It would be great if "most companies' IT departments" have the luxury of time to build non-core products but most companies don't have the bandwidth to "even shift a portion" of time to experiment like this.
- nickpsecurity 11y agoSure they do if they have their IT priorities right. There's a small business in my locale that I can't name that occupies one floor of an office, does all kinds of app development for big companies, and still allocates enough time to innovation that they regularly present clever stuff at conferences dedicated to what they do. That stuff also directly improves their competitiveness in most cases. People might say something similar about Jane St's Ocaml contributions that they turned into a side-effect of doing their business. There's been countless admins in companies with less vision that innovated plenty on semi-automating monitoring, management, and reliability just out of necessity to reduce stress on their overworked brains and hands. There's tons of potential in companies for IT innovation, whether small- or large-scale. It's proven by those, even tiny firms, that act on it. Most companies act against it on top of under-funding, under-staffing, and over-stretching their IT staff. That combination causes the effect you describe. It's not inherent in any way. If it was, examples I described wouldn't exist.
- feedjoelpie 11y ago
- vezzy-fnord 11y agoThe importance of pushing the bar for tooling and infrastructure aside, this is still a laughably bombastic Facebook press release.
- modarts 11y agoIt's not a press release; its Lee's personal post.
- briandear 11y agoI do think the author overstates their importance. All of the technologies he listed aren't exactly earth shattering; the web would be the same as it was yesterday if these technologies disappeared today. For example, react "native"; were apps not built before that? The only thing that did was let JavaScript devs write for iOS. Have apps increased in quality since react native? No. It just made it easier for JS devs to not learn Swift or Objective C. But it hasn't innovated much in terms of the user. Most of what they've done has been in Javascript frameworks; how innovative is that really? I actually like React, but it isn't like they've invented HTTP. It's just another framework. I can do some cool stuff, but nothing that could be done before. It all feels like a self congratulatory circle jerk with actual user-level improvements that would not be particularly noticeable by the average user; the Facebook UX I am presented on the web is still the same cluttered mess it has always been. So what magic is this innovation actually creating? Just because we like a particular framework doesn't elevate it to the level of earth shattering. It certainly hasn't had the effect on the web that Rails has.
- danabramov 11y agoLuckily not everybody shares your opinion, for we would still be writing assembly code if that was true.
- dcre 11y agoYou realize React Native has been out for about 3 months, right? Rails is nearly 10 years old. I almost think you must be joking.
- tvararu 11y ago
- timr 11y agoOther than "letting people do whatever they like is good for recruiting", and "my project is really cool, IMO" I'm failing to see the argument here. That's a shame, because I think it's important to invest in infrastructure, but the trade-off is never easy, nor clear. It would be great to have some reasoning on how to make that call. Rapidly growing companies tend to over-hire, and then have bored engineers that spend lots of time creating wheel-building framework frameworks instead of working on wheels. Sometimes good stuff comes out of that, but there's a ton of waste, too -- in the worst case, you end up in a company that has hundreds or thousands of people, but only a core team of a few dozen are doing all of the actual work. So you have to ask yourself: would it just be better not to hire hundreds of engineers, and cut away the complexity and inefficiency that comes with an organization of that size? I've seen it first-hand, and I've also seen friends go to big, famous unicorn companies and work on stuff that is far separated from the company's core business. It's sad, not invigorating.
- jhuckestein 11y agoThe way I read it, the advice is this: Allow and encourage your people to build tools to solve their own problems and if the projects are good, teams will form around them. This answers the question from a management perspective. Facebook has a lot to gain from a small number of huge success stories like React. This makes up for the cost of all the failed little tooling projects.
- timr 11y agoThat's the way I read it, and no, it doesn't really answer the question -- it just begs the question. Most "good" projects are totally irrelevant to your business. Someone has to pick and choose, or you rapidly end up with the team situation I described: lots of people working on "their own problems", and only a few people working on the core problems of the business. Your second paragraph is an assertion -- maybe it's true that one project like React makes up for all of the failed initiatives that the author describes (i.e. multiple person-years of effort), but that's a claim that deserves some evidence. Even if it's true, there's a level of management implied, or else everyone would spend their work hours chasing the same, captivating rabbits. My suspicion is that there's a lot more selection happening inside Facebook than the author lets on. From experience, it's easy to get to a place where you have a lot of smart, well-intended people working on things that just don't matter. Saying "the best projects win" doesn't really solve anything, because you still have to define "best". Either that, or it's true that this is just a "champagne problem", and the Facebooks and Googles of the world can just throw dollars at anything, in the hope that something sticks.
- zkhalique 11y agoWell our company believes in the power of tools to empower people and developers, and bring about social change. So I can definitely speak about this. And so can my cofounder: http://qbix.com/blog/index.php/2013/04/a-new-kind-of-platform/ http://qbix.com/blog/index.php/2013/04/a-new-kind-of-platfor... "Our job is not to just build Facebook, our job is to make the world more open and connected — and we in Product Infrastructure are tasked with giving the whole software industry the tools to help us accomplish this mission." Then open source your social network and let it be hosted in a distributed manner around the world. Instead of shutting off access to APIs like this: http://techcrunch.com/2015/04/28/facebook-api-shut-down/ http://techcrunch.com/2015/04/28/facebook-api-shut-down/ When I see companies like Twitter and Facebook become open source like Wordpress for blogs, then we can say they really care more about making the world more open and connected instead of building their own silo.
- machinshin_ 11y agohaha, no. they want to open source their TOOLS and maybe even their model, but their data(ie their users)? gods no, that's their profit center, giving that up would be committing corporate suicide. Even if the engineers were willing & able to do that, the managers would kill it like a 1st trimester abortion.
- fown9 11y agointeresting
- contingencies 11y agoWhat a ridiculous title. The reality is this is a backslapping Facebook post about bringing out new open source javascript libraries for nothing in particular with no particular benefit and a whole lot of fluff. Who were the 75 people who upvoted this? Probably Facebook employees.
- shockzzz 11y agoThere's some commentary here that's helpful, and some that's not. I don't think it's fair to say "Facebook sux lolz" when many of us work, have worked, or will work in companies that suck just as much if not more. Plus, this is just one engineer focused on a certain set of tools and products. Lee does not represent the history of Facebook's decisions. He is not Mark Zuckerberg. It's totally fair to say, "thanks rich pplz, wut do WE do?" Though there's a ton of "rich pplz" out there that don't let engineers experiment the way that Facebook does. Perhaps Google. But the vast majority of these don't, I don't think: http://fortune.com/2015/06/13/fortune-500-tech/ http://fortune.com/2015/06/13/fortune-500-tech/
- epberry 11y agoPretty fluffy piece, I'm not sure why it's so high. FB does have some pretty cool stuff though - I've been itching to play with React and GraphQL. One tangential point I often think about is the importance of investing time in learning tools as a developer. What should the breakdown be? Should I spend 20% of my time "sharpening the ax" and the other 80% working on projects? Someone else in this thread pointed out that companies face some of the same questions. How many resources should be allocated to things like improving the build system or developing custom tools? Where is the break even point where time invested in tools starts saving time for developers working on core products?