Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Nobody Ever Got Fired for Picking Java
Search
Alex Payne
May 14, 2013
Programming
40k
21
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Nobody Ever Got Fired for Picking Java
Evaluating emerging programming languages for business-critical applications.
Alex Payne
May 14, 2013
More Decks by Alex Payne
See All by Alex Payne
Reconsidering Startups
al3x
7
650
Other Decks in Programming
See All in Programming
Laravelで学ぶ Webアプリケーションチューニング入門/web_application_tuning_101
hanhan1978
4
1.7k
琵琶湖の水は止められてもNet--HTTPのリトライは止められない / You might be able to stop the water flow of Lake Biwa but you can't stop Net::HTTP retries
luccafort
PRO
0
620
メールのエイリアス機能を履き違えない
isshinfunada
0
230
JAWS-UG横浜 #102 AWSサ終供養LT会 成仏できない AWS サービスたち 〜本日、三体供養します〜
maroon1st
0
340
Apache Hive: Toward a Cloud Native Lakehouse
okumin
0
180
夏だ!祭りだ!祭りとはドメインモデリングでは?
ryugen04
0
200
為什麼你並不需要ViewModel / No, you don't need a ViewModel
lovee
1
480
ここ半年くらいでAIに作らせたR用ツール
eitsupi
0
370
型も通る、synthも通る、それでも危ない 〜AIのCDKの権限とコストを機械で検証する〜 / It Passes Type Checks, It Passes Synth Checks, but It’s Still Risky — Automatically Verifying Permissions and Costs in AI’s CDK —
seike460
PRO
1
540
その節約、円になってますか?
isamumumu
1
710
Lean は証明の正しさを確認するためだけのツールって思ってませんか?
inoueasei
1
150
変わらないものが、変わるものを決める — 意図駆動開発 × イベントソーシング × イミュータブル | What Doesn't Change Decides What Can — IDD × Event Sourcing × Immutability
tomohisa
0
1.4k
Featured
See All Featured
Navigating Team Friction
lara
192
16k
How to Create Impact in a Changing Tech Landscape [PerfNow 2023]
tammyeverts
56
3.4k
Un-Boring Meetings
codingconduct
0
380
So, you think you're a good person
axbom
PRO
2
2.1k
Why You Should Never Use an ORM
jnunemaker
PRO
61
10k
Producing Creativity
orderedlist
PRO
348
40k
AI: The stuff that nobody shows you
jnunemaker
PRO
9
890
ラッコキーワード サービス紹介資料
rakko
1
4.3M
Ruling the World: When Life Gets Gamed
codingconduct
0
290
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
333
23k
Leveraging Curiosity to Care for An Aging Population
cassininazir
1
460
Principles of Awesome APIs and How to Build Them.
keavy
128
18k
Transcript
NOBODY EVER GOT FIRED FOR PICKING JAVA EVALUATING EMERGING PROGRAMMING
LANGUAGES FOR BUSINESS-CRITICAL SYSTEMS
None
THE PROBLEM: SO MUCH TO BUILD, SO MANY LANGUAGES TO
BUILD IT ALL IN
THE OLD GUARD: JAVA PYTHON PHP/ASP RUBY C/C++/OBJ-C/C# PERL VISUAL
BASIC HASKELL OCAML/F# ...
MO' LANGUAGES, MO' PROBLEMS: NEW LANGUAGES ARE COMING OUT FAST
AND FURIOUS
48 LANGUAGES PRESENTED AT @EMERGINGLANGS SINCE 2010
EVEN MORE PROBLEMATIC: LANGUAGE EVANGELISTS ARE AT YOUR DOOR
SO HOW DO WE CHOOSE?
CRAPPY SOLUTION #1: MAKE A TOTALLY ARBITRARY SELECTION
CRAPPY SOLUTION #2: MAKE IT A POPULARITY CONTEST
POPULARITY CONTEST, EX 1
POPULARITY CONTEST, EX 2
CRAPPY SOLUTION #3: DESIGN BY HACKER NEWS
CRAPPY SOLUTION #4: CROWDSOURCE YOUR DECISION
CROWDSOURCING
WHAT IF WE MADE AN EVIDENCE-BASED DECISION?
BEWARE SUBJECTIVE CRITERIA, AKA:
SUBJECTIVE CRITERIA: READABILITY TERSENESS PRODUCTIVITY AGILITY MINDSHARE POLA/POLS ...
PAPERS REFERENCING DISTRIBUTED SYSTEMS: ~3,810,000 PAPERS REFERENCING LANGUAGE ERGONOMICS: ~7,090
"[P]reliminary results confirm that unsupported claims have been around since
the inception of higher level programming in the 1950s. [T]his behavior is unacceptable for the health of the research community." – MARKSTRUM, 2010
POSITIVE SUBJECTIVE CRITERIA UNIQUE TO EMERGING LANGUAGES: DEVELOPER APPEAL STRATEGIC
NOVELTY HOMESTEADING MALLEABLE ROADMAP ACCESSIBLE COMMUNITY
OBJECTIVE CRITERIA
OBJECTIVE CRITERIA: PERFORMANCE LIBRARY BREADTH AVAILABLE PRIMITIVES STABILITY OF SYNTAX
SECURITY HISTORY DEVELOPMENT CYCLE ...
APPLY OBJECTIVE CRITERIA DIRECTLY TO DECISION THEORY
CAN WE MAKE OBJECTIVE DECISIONS ABOUT EMERGING LANGUAGES?
AT FIRST, NO.
EXAMPLE: GO VS RUST
EMERGING LANGUAGE ADOPTION STRATEGIES
STRATEGY #1: ACKNOWLEDGE RISK, HEDGE AGAINST IT
STRATEGY #2: MITIGATE RISK THROUGH COMMUNITY INVOLVEMENT
STRATEGY #3: PLAY TO YOUR PICK'S STRENGTHS, USE ANOTHER LANGUAGE
WHERE IT'S WEAK
FIN. QUESTIONS? THANKS FOR LISTENING!