I recommend reading the Cliff Notes for "The Origin of Wealth" (the full book is just too damn long). Sometimes product designs with a devout following still fail the product market fit test. Trying a bunch of things to see what sticks is a pretty valid strategy, it's what nature does. Steve Jobs would just convince you of your folly for wanting anything but a one button mouse, but Eric, Larry, and Sergey would offer you mice with 1-10 buttons, hover mice, eyeball tracking systems that act as mice, a laser pointer mouse, etc. Each is a small fixed cost and if there's product market fit, the winning variant pays for all the others...
Google. monorepo with almost full visibility, code search/cross referencing/review tools, good infrastructure support, great videoconference and collaboration tools, a culture of written knowledge vs. oral lore, clear strategy in many parts of the business (loosely coupled, tightly aligned). Perks, pay, vacation are excellent. Work life balance is generally good. World experts in relevant subject matter are never far away.
I've used both heavily. I think paradigm is the key word if you're thinking mind-expanding properties. While immutable types and combinators are less used in Typescript (you've got me there) you can certainly get 80% of the value of strong typing, and there are several variants of Virtual DOM support.
Elm's error messages and semantic versioning are still a class above anything else, though. Sad to see it rotting on the vine like this.
Basically, if you have to deal with local time, this isn't the language for you. If you expect to be able to add to the platform where you find it lacking, this isn't the language for you.
At this point, Typescript has the momentum to make it irrelevant
How can you blame them? They're playing by the rules, the same rules their competitors play by (Google also uses the double Irish). In that context, isn't it far better to pay single digit interest rates on money when you're backstopping it with overseas cash rather than taking a 35% haircut to repatriate the same? Finally, what odds do you place on the one time transfer of $88B to the US government with a love note ACTUALLY resulting in a better quality of life for US citizens? It seems to me that regardless of regressive policies and hero projects like walls and Mars trips, monetary policy is still trying to get people and companies to reinvest to spur growth vs. sitting on savings.
I can't help but rejoice at the title of this article. I own a BlackBerry Passport and the hardware is phenomenal, but the OS seems designed to put the company out of business. Side-loading APKs is a terrible consumer experience, and as interesting as the Hub concept is, in practice I don't prioritize Foursquare updates the way I prioritize SMS or work email! Gmail and Inbox don't run, Acompli crashes on startup, and Mailbox has unreliable interaction glitches. The Calendar app is frequently outright wrong! The folks saying "another android phone" truly don't get it: the last great keyboard phone was the Droid 4, a slider that's years old and definitely does not have a capacitive keyboard.
My wife works on the playgrounds in Central Park and tells me that monkey bars with over 9 feet of fall height and kids on tire swings right below them (which I cringe at as "collateral damage") are, indeed, a thing of the past. But many beloved spaces are receiving redesigns with the original creative vision in mind -- but also years of community feedback to benefit from. These are some of the most trafficked spaces on earth. From the outside looking in, the Conservancy has always struck me as a great institution; they strive for creative excellence while still seeking to understand the unique needs and constraints that come with maintaining an island of public space in the densest city in America. Just like our industry, great engineering is the art of careful compromise. The fact that it's not one big rubberized parking lot with legal disclaimers posted is a huge testament to their creativity and humanity.
Vendoring always seemed a bit gross to me. On one hand it makes it possible to avoid build breakages when doing "go get" from master, but on the other hand it makes keeping up with master more difficult as it disassociates you from the source.
I think when multiple projects involve vendoring we will end up with cuts at arbitrary places in our dependency graphs, and knowledge and manual intervention will be required to sync with modern/bug-fixed implementations.
Someone gave me a good piece of advice on ethics once: if it's a problem when everyone does it, it's probably unethical.
In this case we want to make life easier on our users, but from those good intentions we may actually make an ecosystem where everyone is less efficient...
I would personally rather intervene once to lock the entire transitive closure in a buildable state rather than manually find and update all vendored cuts in the graph.
The plot will thicken with http://golang.org/s/go1.4-generate as I suspect the generate step will frequently refer to things in $GOPATH/bin.
It's a bit more nuanced than the no-pain-no-gain attitude toward exercise, too. We are fond of the saying, "worksheets don't build dendrites" around here.
I think many institutions are set up as human proof-of-work verification machines, when they should be set up as human brain debuggers. Debuggers show you counter-examples to your mental model. You set the goals and drive the process.
They are one tool, but not sufficient for a real education. For instance, I doubt you could effectively teach social and emotional development in early childhood using a web portal.
I think the problem is a lack of understanding who the customer is.
Many schools make centralized decisions: you either sell the school board or the IT department or both. The people stuck with the decision aren't the people you need to convince for a conversion.
By the time teaching is happening, you are one level removed. By the time learning is happening (or not), you are two levels removed.
If I were being adversarial and trying to design a system to achieve suboptimal results, this is the sales and feedback channel I would set up.
This may be one of the most surprising innovations we've made at AltSchool; it's completely non-technical but running your own school lets you iterate on the metric that matters: learning.
Another perspective: if you are a teacher, your natural habitat is the classroom, not a digital learning conference. That's where user studies should really be conducted, anyway; the learnings are more accurate and relevant.