You may be surprised to learn that more than 700 programming languages have been invented throughout the history of computers. That’s not nearly as many as the 6,900 human languages we have, but learning any new language is no small feat.
Scripting language (also known as scripting, or script) is plainly defined as a series of commands that are able to be executed without the need for compiling. While all scripting languages are programming languages, not all programming languages are scripting languages. PHP, Perl, and Python are common examples of scripting languages.
Scripting languages use a program known as an interpreter to translate commands and are directly interpreted from source code, not requiring a compilation step. Other programming languages, on the other hand, may require a compiler to translate commands into machine code before it can execute those commands.
Although it is important to know the difference between interpreted vs compiled programming languages, advanced hardware and coding practices are beginning to make the distinction somewhat obsolete.
Interpreted vs. compiled programming languages
An interpreted programming language is a language designed to execute source code directly and without the need to compile a program into machine-language instructions. An interpreter will execute the program by translating statements into a series of one or more subroutines before finally translating them into another language, such as machine code.
In compiled programming languages, a compiler program translates code written in a high level language into a lower-level language in order for the program to execute. C or Java programs must usually be compiled first in order to run. Two well-known compilers are Eclipse for Java and gcc for C and C++.
The easiest way to understand how a compiler functions is to think about various operating systems. For instance, Windows programs are compiled to run on Windows platforms and thus are not compatible with Mac.
Server-side scripting vs client-side scripting
There are two types of scripting languages: server side and client side. The only significant difference between the two is that the former requires a server for its processing.
Server-side scripting languages run on a web server. When a client sends a request, the server responds by sending content via HTTP. In contrast, client-side scripting languages run on the client end—on their web browser.
The benefit of client-side scripts is that they can reduce demand on the server, allowing web pages to load faster. Whereas, one significant benefit of server-side scripts is they are not viewable by the public like client-side scripts are.
When trying to decide which way to go on a project, keep in mind that client-side scripting is more focused on user interface and functionality. Conversely, server-side scripting focuses on faster processing, access to data, and resolving errors.
Examples of server-side scripting languages
The following are examples of server-side scripting languages.
|PHP||The most popular server-side language used on the web.|
|ASP.NET||Web-application framework developed by Microsoft.|
|Node.js||Can run on a multitude of platforms, including Windows, Linux, Unix, Mac, etc.|
|Java||Used in everything from your car stereo’s Bluetooth to NASA applications.|
|Ruby||Dynamic. Focuses heavily on simplicity.|
|Perl||A bit of a mashup between C, shell script, AWK, and sed.|
|Python||Great for beginners to learn. Uses shorter code.|
Examples of client-side scripting languages
The following are examples of client-side scripting languages.
|HTML||The foundation of web development.|
|CSS||Improves appearance and graphics on pages in your web browser.|
Applications of scripting languages
Scripting languages are used in many areas, both on and off the web. In addition to server-side and client-side applications, scripting languages can be used in system administration. Examples of scripts used in system admin are Shell, Perl, and Python.
Scripting languages are also used in lots of games and multimedia. For example, Minecraft mods use Java to allow users to create their own worlds and items in the game. Additionally, Second Life, Trainz, and Wesnoth all allow users to create extensions on the games.
Similar to the extensions used in games, extensions in other programs, such as Google’s Chrome browser extensions, are all run using scripting languages.
Pros and cons of scripting languages
Pros. There are many benefits to using scripting languages over other programming languages. First, they are open-source. This allows users from around the world to join in the improvement process. Other pros include:
- No requirement to compile, although occasionally it is necessary.
- Easy to transfer between operating systems.
- Scripting languages make web pages look awesome.
- Easier to learn and write.
- Scripts can be used as a prototype to programs, saving time on test projects.
Cons. There are not a whole lot of cons to using scripting languages. One con is the fact that some companies don’t want scripts to be read by everyone, so they use server-side scripts to avoid releasing them to the public. Also, installing an interpreter program can be a hassle. Finally, sometimes scripts are slower than programs.
Want to try learning a scripting language?
If you’re ready to try learning a scripting language, check out our list of the 17 easiest programming languages to learn. You may find one that interests you. We suggest you find one that makes sense to you before you commit to a coding bootcamp that focuses on that language.
Then, whether or not you see one that interests you, visit W3Schools Online Web Tutorials to find easy lessons and examples of how different languages are used. W3Schools has browser-based command-line examples where you can tinker around with coding without having to install anything on your computer.
For instance, the most common first lesson any programmer learns is the
Hello, World! exercise. Try changing the
Hello, World! code here in this Python editor to make the program say something else.
Learning a scripting language is the easiest way to get your feet wet in the coding world. There are bountiful resources out there to help you try each one until you find one that makes sense to you. Just remember to take it slow, be patient with yourself, and aim to start with small projects, instead of a large one. You’ll find your niche in no time.