The Most Popular Coding Languages and their Edge-Case Usage

As someone relatively new to programming, something that has been a constant source of amazement has been the wide variety of projects you can build and the versatility of the coding languages. So while it is true that each language has its best use cases, I would be saddened to see them relegated to only those uses. But beyond that, I think it would limit people’s inner tool set for what each language can be used for.

If the only tool you have is a hammer, you will start to treat all your problems like a nail. — Abraham Kaplan

So I looked at the three most popular languages: Java script, Python and Java. These are the ones most people start learning in , so I found interesting things being built with them. In each instance I also looked into what each language is generally used for so as to make the contrast that much more stark.

Starting off with Javascript, the most popular and fastest growing language used for web developing. It functions as a procedural programming language, meaning it takes a series of procedural steps to be evaluated and carried out. It also functions as an object oriented programming language, which means it attaches methods and properties to objects as well as blueprints for creating other objects.

Its flexibility and client side procedures lets you design web page behavior once an event occurs. This along with its extensive libraries and easy to comprehend syntax, it was intentionally made similar to Java and C++, which makes it very popular for web browsers.

With all this in mind, something that I thought was an interesting application for javascript was not just web page functionality, but home functionality. Recently, a company called Mongoose has developed a framework using Javascript for maintaining connectivity between devices. This allows you to have inter-device communication and have function calls, access control, and work with other devices firmware remotely. You can’t quite call your virtual butler to start the bath for you but this is a step in that direction.

Next up is Python, it is also an object oriented language with dynamic typing. Python’s name is a reference to the English comedy group, and it has been the easiest language to find connected to interesting and diverse projects. This is the language that I feel best represents what I wish to inspire in programmers.

Python is most widely used in connection to data science but its open source license, simple syntax, ability to run anywhere (be it linux, mac, windows, or android) makes it one of the easiest languages to pick up and start building with.

The projects that capture my imagination and interest the most with python are the robotics and Raspberry Pi projects. Raspberry Pi is a small, simple single board computer. With it you can build simple projects that can serve as a springboard to more complex projects or just have personal DIY projects. From making LED displays to a motion sensor alarm system to making your own mp3 player and receiving radio signals from the ISS, Raspberry Pi is something that is a very versatile and rich environment to get into.

From small to large robots, python has found its way to creating Robotic arms and servos with companies like Rozum Robotics, who are using the advantages of python to create end user accessible robots and UI’s. Allowing Rozum Robotics to create industrial grade robots that are also able to interact with auxiliary devices, such as spot welding machines.

Lastly to leave on a high note we have Java. Java is the oldest language that I’ll talk about today, but perhaps the most ubiquitous. Java is also an object oriented programming language that was designed to be used across multiple platforms without losing functionality and is also on the widest range of computing platforms possible.

With such wide uses and applications its’ proven difficult to pigeonhole Java. Some of the more interesting applications I’ve seen have been with NASA and space exploration. One such program is World Wind, a program that develops a realistic 3d model of earth and tracks weather patterns and vehicle movement patterns. Keeping in line with the space theme, Java has also been instrumental in the planning of orbital maintenance maneuvers for NASA space missions.

When learning how to code I myself have been guilty of thinking of each language as its own separate industry. Want to get into apps; you should get into swift, want to start a website, you should learn javascript. While it’s true that there are industry standards and best practices for each language and industry field, I feel it’s important to not lose sight of the potential and versatility of code in general, but each coding language specifically.