SlideShare a Scribd company logo
1 of 7
MomentumSI Programming Language
Recommendations
2013 – Q4
November 17, 2013
This Report…
 For the last 16 years, MomentumSI has provided guidance to
start-ups, ISV’s and enterprise organization on their use of
technology.
 MomentumSI is a provider of both consulting and engineering
services. As “doers” we understand what works – and what
doesn’t.
 This presentation reflects our position on software
development, specific to the use of programming languages.
 Readers should note that the ‘language of choice’ will change
over time and with the problem at hand.
November 17, 2013
Recommendations
Avoid
Perl
VB.Net
ASP
PHP
Cobol
Lisp
Tcl

November 17, 2013

Risk Averse
Use Only
Java
C
C++
C#

Special case

Recommended

requires approval

Eiffel
Scala
Haskell
Objective-C
Closure
Groovy

JavaScript
Go
Ruby
Python
Java moves to ‘Risk Averse’
 Java is one of the most commonly used programming languages
today and has a tremendous ecosystem.
 It remains a viable choice for organizations who have lots of
programs written in it, and skilled people.
 To some extent, Java has become a victim of it’s own success
 Has had to innovate new features while largely retaining backward
compatibility
 Major new changes have come in the form of add-on’s or frameworks that
are written in Java, but have little to do with the Java language itself
 Where Java is ‘one size fits all’, languages like Go and JavaScript are being
used for mainstream uses cases, with specialized capabilities.

November 17, 2013
GoLang moves to Recommended
 Go is a modern language from Google, started in 2007 when invented by
heavyweights Rob Pike and Ken Thompson.
 Originally targeted multi-site/cloud server work, though now provides extensive
client and mobile support.
 It resembles the ‘C’ language in terms of speed and power, but removes most of
the dangers while taking influences from the history of other languages (e.g.,
Python, Ruby, Java, C++).
 It is highly supportive of multi-project, collaborative work via multi-site remote import

 Many modern projects have taken to it: e.g., Docker, Packer, Juju, Flynn
(Docker PaaS), Cloud Foundry, etc.
 Great built-in features:
 Concurrency/multi-core support is a fundamental part of the language:

 Goroutines; channels, select, etc.
 Go programs are a single, static, native executables; Dependencies resolve early,
not late; Rollback = "run the previous binary.”
 Code formatting (gofmt); Easy concurrency; Multi-core, High performance; Built-in
Profiling Web frameworks (net/http) etc.

November 17, 2013
JavaScript moves to Recommended
 Long overdue, we’re moving JavaScript to recommended status
 JavaScript on the client is producing compelling interactive user
experiences
 JavaScript on the server-side has matured. Recent innovations
include:
 Google V8 JavaScript Engine has significantly increase performance
 Node.JS makes server side development easier / faster
 Multiple JavaScript UI frameworks have overtaken features that were
previously only available in Flash/Flex

 Commercial support of Node.JS from StrongLoop

November 17, 2013
Contact
MomentumSI provides consulting and implementation
services for:






Software development
Architecture guidance
Cloud adoption / migration
DevOps & Continuous Delivery
Big Data

Contact: Sales@MomentumSI.com

November 17, 2013

More Related Content

What's hot

Futuristic programing language
Futuristic programing languageFuturistic programing language
Futuristic programing language
Mohamed Zaki
 
Objective-C with respect to C# and Java
Objective-C with respect to C# and JavaObjective-C with respect to C# and Java
Objective-C with respect to C# and Java
Babul Mirdha
 

What's hot (19)

.Net
.Net.Net
.Net
 
C#
C#C#
C#
 
Introduction to Go-Lang
Introduction to Go-LangIntroduction to Go-Lang
Introduction to Go-Lang
 
what is Python programming language?
what is Python programming language?what is Python programming language?
what is Python programming language?
 
Stockholm JAM September 2018
Stockholm JAM September 2018Stockholm JAM September 2018
Stockholm JAM September 2018
 
How to Choose a Programming Language
How to Choose a Programming LanguageHow to Choose a Programming Language
How to Choose a Programming Language
 
Feedback from an eclipse plugin developer to provide support to large set of ...
Feedback from an eclipse plugin developer to provide support to large set of ...Feedback from an eclipse plugin developer to provide support to large set of ...
Feedback from an eclipse plugin developer to provide support to large set of ...
 
freeCodeCamp Tokyo meetup 19
freeCodeCamp Tokyo meetup 19freeCodeCamp Tokyo meetup 19
freeCodeCamp Tokyo meetup 19
 
A First Look at Google's Go Programming Language
A First Look at Google's Go Programming LanguageA First Look at Google's Go Programming Language
A First Look at Google's Go Programming Language
 
Polyglot Programmer
Polyglot ProgrammerPolyglot Programmer
Polyglot Programmer
 
Futuristic programing language
Futuristic programing languageFuturistic programing language
Futuristic programing language
 
Best Language to Rely Upon For Developing Programs | JanBask Training
Best Language to Rely Upon For Developing Programs | JanBask TrainingBest Language to Rely Upon For Developing Programs | JanBask Training
Best Language to Rely Upon For Developing Programs | JanBask Training
 
JSX Optimizer
JSX OptimizerJSX Optimizer
JSX Optimizer
 
Why you should care about Go (Golang)
Why you should care about Go (Golang)Why you should care about Go (Golang)
Why you should care about Go (Golang)
 
Go Language presentation
Go Language presentationGo Language presentation
Go Language presentation
 
How to contribute textual tooling for apache camel in several id es
How to contribute textual tooling for apache camel in several id esHow to contribute textual tooling for apache camel in several id es
How to contribute textual tooling for apache camel in several id es
 
Objective-C with respect to C# and Java
Objective-C with respect to C# and JavaObjective-C with respect to C# and Java
Objective-C with respect to C# and Java
 
Google Go! language
Google Go! languageGoogle Go! language
Google Go! language
 
Introduction to C# Programming
Introduction to C# ProgrammingIntroduction to C# Programming
Introduction to C# Programming
 

Viewers also liked

HATEOAS: The Confusing Bit from REST
HATEOAS: The Confusing Bit from RESTHATEOAS: The Confusing Bit from REST
HATEOAS: The Confusing Bit from REST
elliando dias
 
Jim Webber Martin Fowler Does My Bus Look Big In This
Jim Webber Martin Fowler Does My Bus Look Big In ThisJim Webber Martin Fowler Does My Bus Look Big In This
Jim Webber Martin Fowler Does My Bus Look Big In This
deimos
 

Viewers also liked (8)

Fixed Fee / Fixed Bid Delivery
Fixed Fee / Fixed Bid DeliveryFixed Fee / Fixed Bid Delivery
Fixed Fee / Fixed Bid Delivery
 
Dev ops in 2013
Dev ops in 2013Dev ops in 2013
Dev ops in 2013
 
HATEOAS: The Confusing Bit from REST
HATEOAS: The Confusing Bit from RESTHATEOAS: The Confusing Bit from REST
HATEOAS: The Confusing Bit from REST
 
A MomentumSI Briefing: SOA in 2013
A MomentumSI Briefing: SOA in 2013A MomentumSI Briefing: SOA in 2013
A MomentumSI Briefing: SOA in 2013
 
Beyond technical debt
Beyond technical debtBeyond technical debt
Beyond technical debt
 
REST: From GET to HATEOAS
REST: From GET to HATEOASREST: From GET to HATEOAS
REST: From GET to HATEOAS
 
Jim Webber Martin Fowler Does My Bus Look Big In This
Jim Webber Martin Fowler Does My Bus Look Big In ThisJim Webber Martin Fowler Does My Bus Look Big In This
Jim Webber Martin Fowler Does My Bus Look Big In This
 
REST in Practice
REST in PracticeREST in Practice
REST in Practice
 

Similar to MomentumSI Programming Language Recommendations

Top Backend Development Languages and Frameworks for Modern Web Applications
Top Backend Development Languages and Frameworks for Modern Web ApplicationsTop Backend Development Languages and Frameworks for Modern Web Applications
Top Backend Development Languages and Frameworks for Modern Web Applications
KaneJordy1
 
Unit 4 Assignment 1 Comparative Study Of Programming...
Unit 4 Assignment 1 Comparative Study Of Programming...Unit 4 Assignment 1 Comparative Study Of Programming...
Unit 4 Assignment 1 Comparative Study Of Programming...
Carmen Sanborn
 

Similar to MomentumSI Programming Language Recommendations (20)

Which programming language should you learn next?
Which programming language should you learn next? Which programming language should you learn next?
Which programming language should you learn next?
 
Computer languages
Computer languagesComputer languages
Computer languages
 
Programming languages
Programming languagesProgramming languages
Programming languages
 
15 Top reasons to choose Java for Backend Development
15 Top reasons to choose Java for Backend Development15 Top reasons to choose Java for Backend Development
15 Top reasons to choose Java for Backend Development
 
Top Backend Development Languages and Frameworks for Modern Web Applications
Top Backend Development Languages and Frameworks for Modern Web ApplicationsTop Backend Development Languages and Frameworks for Modern Web Applications
Top Backend Development Languages and Frameworks for Modern Web Applications
 
Top Programming Languages to Learn for Web Development in 2023 (1).pdf
Top Programming Languages to Learn for Web Development in 2023 (1).pdfTop Programming Languages to Learn for Web Development in 2023 (1).pdf
Top Programming Languages to Learn for Web Development in 2023 (1).pdf
 
OpenSlava 2013 - Dynamic Languages
OpenSlava 2013 - Dynamic LanguagesOpenSlava 2013 - Dynamic Languages
OpenSlava 2013 - Dynamic Languages
 
Top Programming Languages to Learn for Web Development in 2023
Top Programming Languages to Learn for Web Development in 2023Top Programming Languages to Learn for Web Development in 2023
Top Programming Languages to Learn for Web Development in 2023
 
Google's Go Programming Language - Introduction
Google's Go Programming Language - Introduction Google's Go Programming Language - Introduction
Google's Go Programming Language - Introduction
 
Unit 4 Assignment 1 Comparative Study Of Programming...
Unit 4 Assignment 1 Comparative Study Of Programming...Unit 4 Assignment 1 Comparative Study Of Programming...
Unit 4 Assignment 1 Comparative Study Of Programming...
 
Scaling applications with go
Scaling applications with goScaling applications with go
Scaling applications with go
 
Best Programming Languages to Learn This Year
Best Programming Languages to Learn This YearBest Programming Languages to Learn This Year
Best Programming Languages to Learn This Year
 
Ruby vs Java: Comparing Two Popular Programming Languages For Developing Ente...
Ruby vs Java: Comparing Two Popular Programming Languages For Developing Ente...Ruby vs Java: Comparing Two Popular Programming Languages For Developing Ente...
Ruby vs Java: Comparing Two Popular Programming Languages For Developing Ente...
 
Java And Community Support
Java And Community SupportJava And Community Support
Java And Community Support
 
Languages used by web app development services remotestac x
Languages used by web app development services  remotestac xLanguages used by web app development services  remotestac x
Languages used by web app development services remotestac x
 
Let's Go: Introduction to Google's Go Programming Language
Let's Go: Introduction to Google's Go Programming LanguageLet's Go: Introduction to Google's Go Programming Language
Let's Go: Introduction to Google's Go Programming Language
 
Lets Go - An introduction to Google's Go Programming Language
Lets Go - An introduction to Google's Go Programming Language Lets Go - An introduction to Google's Go Programming Language
Lets Go - An introduction to Google's Go Programming Language
 
Intermediate Languages
Intermediate LanguagesIntermediate Languages
Intermediate Languages
 
What is the best programming language to learn if you want to work on the blo...
What is the best programming language to learn if you want to work on the blo...What is the best programming language to learn if you want to work on the blo...
What is the best programming language to learn if you want to work on the blo...
 
Unit 1-introduction to scripts
Unit 1-introduction to scriptsUnit 1-introduction to scripts
Unit 1-introduction to scripts
 

Recently uploaded

Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Safe Software
 
Architecting Cloud Native Applications
Architecting Cloud Native ApplicationsArchitecting Cloud Native Applications
Architecting Cloud Native Applications
WSO2
 
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
?#DUbAI#??##{{(☎️+971_581248768%)**%*]'#abortion pills for sale in dubai@
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Safe Software
 
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Victor Rentea
 

Recently uploaded (20)

Exploring Multimodal Embeddings with Milvus
Exploring Multimodal Embeddings with MilvusExploring Multimodal Embeddings with Milvus
Exploring Multimodal Embeddings with Milvus
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processors
 
Ransomware_Q4_2023. The report. [EN].pdf
Ransomware_Q4_2023. The report. [EN].pdfRansomware_Q4_2023. The report. [EN].pdf
Ransomware_Q4_2023. The report. [EN].pdf
 
MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
 
Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...
 
Architecting Cloud Native Applications
Architecting Cloud Native ApplicationsArchitecting Cloud Native Applications
Architecting Cloud Native Applications
 
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
 
Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...
Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...
Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...
 
[BuildWithAI] Introduction to Gemini.pdf
[BuildWithAI] Introduction to Gemini.pdf[BuildWithAI] Introduction to Gemini.pdf
[BuildWithAI] Introduction to Gemini.pdf
 
Spring Boot vs Quarkus the ultimate battle - DevoxxUK
Spring Boot vs Quarkus the ultimate battle - DevoxxUKSpring Boot vs Quarkus the ultimate battle - DevoxxUK
Spring Boot vs Quarkus the ultimate battle - DevoxxUK
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
 
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ..."I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
 
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
 
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
 
Cyberprint. Dark Pink Apt Group [EN].pdf
Cyberprint. Dark Pink Apt Group [EN].pdfCyberprint. Dark Pink Apt Group [EN].pdf
Cyberprint. Dark Pink Apt Group [EN].pdf
 
Artificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : UncertaintyArtificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : Uncertainty
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdf
 
presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century education
 

MomentumSI Programming Language Recommendations

  • 2. This Report…  For the last 16 years, MomentumSI has provided guidance to start-ups, ISV’s and enterprise organization on their use of technology.  MomentumSI is a provider of both consulting and engineering services. As “doers” we understand what works – and what doesn’t.  This presentation reflects our position on software development, specific to the use of programming languages.  Readers should note that the ‘language of choice’ will change over time and with the problem at hand. November 17, 2013
  • 3. Recommendations Avoid Perl VB.Net ASP PHP Cobol Lisp Tcl November 17, 2013 Risk Averse Use Only Java C C++ C# Special case Recommended requires approval Eiffel Scala Haskell Objective-C Closure Groovy JavaScript Go Ruby Python
  • 4. Java moves to ‘Risk Averse’  Java is one of the most commonly used programming languages today and has a tremendous ecosystem.  It remains a viable choice for organizations who have lots of programs written in it, and skilled people.  To some extent, Java has become a victim of it’s own success  Has had to innovate new features while largely retaining backward compatibility  Major new changes have come in the form of add-on’s or frameworks that are written in Java, but have little to do with the Java language itself  Where Java is ‘one size fits all’, languages like Go and JavaScript are being used for mainstream uses cases, with specialized capabilities. November 17, 2013
  • 5. GoLang moves to Recommended  Go is a modern language from Google, started in 2007 when invented by heavyweights Rob Pike and Ken Thompson.  Originally targeted multi-site/cloud server work, though now provides extensive client and mobile support.  It resembles the ‘C’ language in terms of speed and power, but removes most of the dangers while taking influences from the history of other languages (e.g., Python, Ruby, Java, C++).  It is highly supportive of multi-project, collaborative work via multi-site remote import  Many modern projects have taken to it: e.g., Docker, Packer, Juju, Flynn (Docker PaaS), Cloud Foundry, etc.  Great built-in features:  Concurrency/multi-core support is a fundamental part of the language:  Goroutines; channels, select, etc.  Go programs are a single, static, native executables; Dependencies resolve early, not late; Rollback = "run the previous binary.”  Code formatting (gofmt); Easy concurrency; Multi-core, High performance; Built-in Profiling Web frameworks (net/http) etc. November 17, 2013
  • 6. JavaScript moves to Recommended  Long overdue, we’re moving JavaScript to recommended status  JavaScript on the client is producing compelling interactive user experiences  JavaScript on the server-side has matured. Recent innovations include:  Google V8 JavaScript Engine has significantly increase performance  Node.JS makes server side development easier / faster  Multiple JavaScript UI frameworks have overtaken features that were previously only available in Flash/Flex  Commercial support of Node.JS from StrongLoop November 17, 2013
  • 7. Contact MomentumSI provides consulting and implementation services for:      Software development Architecture guidance Cloud adoption / migration DevOps & Continuous Delivery Big Data Contact: Sales@MomentumSI.com November 17, 2013