Many conference war stories involve some kind of heroism, where the speaker did something great and everyone thought they were awesome. Image credit: https://commons.wikimedia.org/wiki/File:Saint_George_and_the_Dragon_by_Paolo_Uccello_(Paris)_01.jpg 5
Why? Homogeneous and batteries included Removes dependency complexity Enforces static typing, a consistent data model, and a toolchain that leverages both Elm is more approachable than React+ Includes FFI (foreign function interface) 8
Why not? Mostly situational, like many tech decisions: Solves the wrong (that is: non-critical for us) problems Standardized everywhere else on React Limits inter-project mobility and career development Backed by smaller team, less adoption, earlier in the tech curve No compelling reason to re-write relatively new code Anti-dogfooding 10
People were unhappy Not a manager’s job to make this decision My take: I agree, but strategic and business input needed Each team should choose whatever tools are best for them My take: Vehemently, no 12
Why pay attention to trends? Will I ever get another job? Will I be able to hire developers to work on my stack? Without these things how can I possibly make a good product? 27
But beware the Jabberwock Which things should I learn? Image credit: https://upload.wikimedia.org/wikipedia/commons/d/d0/Jabberwocky.jpg (public domain) 30
Hiring Different types/geography/sizes of applicant pool for different technologies, e.g.: Harder to attract good applicant pools to “boring” stacks Harder to compete for e.g. machine learning in the Bay Area Hard to scale on a tech with not many developers available yet (aka, “I need to hire a hundred Haskell experts”) 35
Factors in early adoption Organization type and stage Relationship to technology What you’re building Audience Limited options Risk appetite/budget Standardization 39
What you’re building Is it your core product? Is it a critical tool? What is currently not great in the tech you’re considering? Does it matter here? 43
Audience Who are you building for? Internal tools: developers on $3k laptops with broadband Mass market: much wider array of hardware/bandwidth How many of them are there? Will this new tech scale to that? 44
Risk budget Every organization has a certain appetite and budget for risk Is risk of adoption within your budget? Is risk of failing to adopt within your budget? Is this the place you want to spend it? 46
– Dave Herman “[W]e were looking for better ways to build browsers. We were particularly interested in two things: how to build more ambitious parallel architectures, and how to implement high- performance software without many of the pitfalls and vulnerabilities of C++.” 50