Development

Technology

Web Development

Dev Terminology 101: Common Programming Languages (and their key frameworks)

January 29, 2018

Language enables human communication – spoken or written – with words and phrases structured in a conventional way. Just like we need different languages to communicate with one another, we also need different languages to communicate with computers.

In an article on Stack Overflow, Matt Sherman writes that at a foundational level, all programming languages turn “human thoughts into the 1’s and 0’s that the computer understands.”

There are hundreds of programming languages – why not make it simple and use one language for everything?

Matt Sherman explains why, writing that while most programming languages are similar, there are a few reasons why you’d choose one language over another:

  1. Different tools for different jobs – “Ruby and JavaScript are great for building websites; Java and C++ are often used for financial trading; Python and R are the tools of choice for analyzing statistics.”
  2. Developers have tastes“Some developers like Ruby’s flexibility, while others prefer Java’s strictness. Where some languages feel like math, others look like prose.”
  3. Technologies are supported by ecosystems – “Communities and organizations provide tools and assistance that every developer needs. A good ecosystem can make the individual developer more successful.”

If a programming language can be defined generally as “a set of vocabulary and rules that allow humans to give instructions to computers,” then how do you choose which one is right for your project? Read the quick guide below to learn more about different programming languages and their unique applications and benefits.

Common Languages & Terminology

JavaScript:

JavaScript is a high-level programming language that provides flexibility, fast scripting, and a strong library of tools for both front-end and back-end work.

PHP:

PHP is the most commonly known programming language worldwide. It has been seen as more vulnerable to “bad” code and security loopholes, but this has been dramatically improved with the PHP7 release as well as the Symfony/Laravel frameworks gaining significant traction. 

C#:

A combination of two other languages (C and C++) that was designed to ease web development on the .NET framework. 

.NET:

A framework (often supporting C#), .NET is most often used for enterprise level applications, but it is more expensive because of the licensing for Microsoft software and tools. That said, it’s becoming more accessible now as Microsoft opens up much of the .NET platform and tools. 

ASP.NET:

ASP.NET is an extension of the .NET framework that helps with creating websites.

Ruby/Ruby on Rails:

Ruby is a high-level programming language that is usually used with the framework Rails. Ruby/Rails was one of the first MVC frameworks and has been a popular choice for web applications since 2005, but it is generally more difficult to work with because of a steeper learning curve, and there is less of a market of available developers. It’s very popular for SaaS development.

Python:

Python is the most popular programming language in science, engineering, and math-intensive industries. It’s often used for back-end work involving high volume calculations and complex math, although it is sometimes seen as being too immature to be used as a full-fledged, mainstream web development language. 

High-Level & Low-Level:

High-Level & Low-Level simply refers to the level of abstraction from a computer. For example, high-level programming languages are most accessible to humans – less abstract – due to having syntax that resembles a natural language. Low-level programming languages are ones that allow for closer communication at the base level of how machines work, and they require greater specificity and tighter control of logic (but are often slower to work with due to these additional constraints).

Want to Learn More about Development?

The definitions above are helpful, but really are just the tip of the iceberg. If you’re uncertain about what programming language would be right for your project, give us a call to start having a more detailed conversation!

Also, if you’re interested in learning more about development terminology, follow this link to one of our newest white papers: Your Guide to Development Terminology.

Ben Spencer

Digital Content Strategist

Professional UX Researcher & Writer. Amateur Crossfitter, video gamer, and Planeswalker. I make sense of the world through storytelling and by observing the infinite wisdom of my two beloved Boxer dogs.

You might also like...

15

Feb.

10 Factors for Choosing a CMS

There are dozens of Content Management System (CMS) platforms available to to help you manage the content, marketing, and SEO on your website. But with all the good options out there, how do you know how to choose the right CMS?  Consider the following 10 factors when choosing your CMS. #1 Price Some CMS licenses start … Continued

23

Jan.

A Designer’s Perspective: Fostering Good Communication Between Design and Development

Different teams will have different ideas and perspectives of what the final product should be – designers and developers often have different thoughts on the best direction forward. Each group also has a different set of skills and capabilities that are important to creating high-quality products. In the end, pulling the best ideas together and … Continued

4

Jan.

You’ve Beaten B.O.C.O. – Now, Deliver Your Product to the World

Over the course of 2018, Fresh’s designers and developers created an interactive digital journey to educate companies and teams on the UX Design Process. In the research, design, and test worlds, users undertook an adventure to beat B.O.C.O., or “The Beast of Conflicting Opinions.” The beginning of 2019 sees B.O.C.O. defeated at last. Now, you … Continued