{"id":16,"date":"2005-02-20T21:27:59","date_gmt":"2005-02-21T02:27:59","guid":{"rendered":"http:\/\/www.killersites.com\/blog\/?p=16"},"modified":"2021-02-15T09:48:18","modified_gmt":"2021-02-15T14:48:18","slug":"scripting-vs-programming-is-there-a-difference","status":"publish","type":"post","link":"https:\/\/www.killersites.com\/blog\/2005\/scripting-vs-programming-is-there-a-difference\/","title":{"rendered":"Scripting vs. programming: is there a difference?"},"content":{"rendered":"<p><strong>Preamble: This is an older post, but it is still accurate: <\/strong><\/p>\n<p><strong>The short answer: <\/strong>These days, the line between a scripting language and a programming language\u00a0is blurred. As such, in practical application, the differences are meaningless. So the answer is: no.<\/p>\n<p><strong>Some details &#8230; what a nerd might tell you:<\/strong> Scripting or writing scripts, is programming within a program. Traditionally you would write scripts to automate certain functionality within another program. Traditionally scripts would have very specific task like for example: reading a text file to extract all the email addresses.<\/p>\n<p><strong>Why use a scripting language?<\/strong><\/p>\n<ul>\n<li>Easy to learn &#8211; compared to traditional programming languages.<\/li>\n<li>It takes much less code to do something with scripting than when using a traditional programming language.<\/li>\n<\/ul>\n<p><!--more--><\/p>\n<p>Another characteristic of a scripting language, is that they are processed from scratch every time you run them. A nerd would say: &#8216;scripting languages are not compiled.&#8217;<\/p>\n<p><strong>What is a compiled language?<\/strong><\/p>\n<p>A compiled language (like Java and C,) are processed once (think of a food processor) and reduced (if you will,) to a simpler form that allows it to run faster than a script that has to be reprocessed every time. &#8211; &#8211;<\/p>\n<p><strong>MORE ABOUT PROGRAMMING LANGUAGES<\/strong><\/p>\n<p>With programming, you are writing software that runs independent of an exterior (or parent) program. Also, when people would say they were &#8216;programming&#8217;, they were usually involved in some project that produced much more functionality than a traditional script.<\/p>\n<p><strong>Things have changed<\/strong><\/p>\n<p>I keep saying &#8216;traditionally&#8217; because the lines between scripting and programming are very blurred these days &#8211; scripting is now very powerful and is doing the work that once belonged to the realm of full blown programming &#8211; in a traditional sense.<\/p>\n<p><strong>Let&#8217;s look at some examples:<\/strong><\/p>\n<p>PHP: People refer to software written in PHP as &#8216;scripts&#8217; because PHP runs inside another program &#8211; the PHP script engine. But unlike traditional simple scripts, PHP software can be very complex and very powerful. Java: Most people would refer to Java as a full-blown programming language because it&#8217;s compiled. But, Java (like PHP) runs inside another program, something called the Java Virtual Machine. So here we see the first of those blurry lines I mentioned above.<\/p>\n<p><strong>To summarize:<\/strong><\/p>\n<ul>\n<li>Scripting languages run inside another program.<\/li>\n<li>Scripting languages are not compiled.<\/li>\n<li>Scripting languages are easy to use and easy to write.<\/li>\n<\/ul>\n<p>but &#8230;<\/p>\n<ul>\n<li>Very popular programming languages (Java, C#) run inside a &#8216;parent&#8217; program &#8211; like scripting languages.<\/li>\n<li>Scripting languages today are used to build complex software.<\/li>\n<li>Computers are so fast these days, and scripting languages are so efficient, that for most business operations, there is no practical speed advantage (that there once was,) with a compiled programming language.<\/li>\n<\/ul>\n<p><strong>Conclusion<\/strong><\/p>\n<p>Today the difference between scripting and programming is largely an academic thing. You shouldn&#8217;t have to concern yourself with what broad category a particular language may fall in.<\/p>\n<p>You should only be concerned about the language itself and how well suited it is for the job at hand &#8211; each language has its strengths and weaknesses. &#8211; &#8211; Stefan Mischook<\/p>\n<p>PS: I just updated (in 2021) the best web developer training package I&#8217;ve ever created: <a href=\"https:\/\/shop.killervideostore.com\/\">Interactive Web Developer<\/a>.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Preamble: This is an older post, but it is still accurate: The short answer: These days, the line between a scripting language and a programming language\u00a0is blurred. As such, in practical application, the differences are meaningless. So the answer is: no. Some details &#8230; what a nerd might tell you: Scripting or writing scripts, is &hellip; <\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[1],"tags":[],"_links":{"self":[{"href":"https:\/\/www.killersites.com\/blog\/wp-json\/wp\/v2\/posts\/16"}],"collection":[{"href":"https:\/\/www.killersites.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.killersites.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.killersites.com\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.killersites.com\/blog\/wp-json\/wp\/v2\/comments?post=16"}],"version-history":[{"count":6,"href":"https:\/\/www.killersites.com\/blog\/wp-json\/wp\/v2\/posts\/16\/revisions"}],"predecessor-version":[{"id":6705,"href":"https:\/\/www.killersites.com\/blog\/wp-json\/wp\/v2\/posts\/16\/revisions\/6705"}],"wp:attachment":[{"href":"https:\/\/www.killersites.com\/blog\/wp-json\/wp\/v2\/media?parent=16"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.killersites.com\/blog\/wp-json\/wp\/v2\/categories?post=16"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.killersites.com\/blog\/wp-json\/wp\/v2\/tags?post=16"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}