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

Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and Myths
Joaquim Jorge
 
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
Earley Information Science
 

Recently uploaded (20)

[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf
 
Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and Myths
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonets
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivity
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
 
GenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdfGenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdf
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt Robison
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
 
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfThe Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
 
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
 
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
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organization
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
 
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUnderstanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
 
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
 
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men
 

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