Resources and Tools for Web Developers

This is my current list of learning resources and tools. I will try to keep this up to date. Your feedback is welcome!

ASP.Net

ASP has been  Microsoft’s framework for building web apps for many years.  This link ASP website provides information on the latest incarnation.

Use in App Development

This set of technologies provide the ability to build all aspects of a web app, from server side to client side. The “.NET Core” (formally called  ASP.NET 5 and MVC 6). Link to article, describes some of the changes this version introduced (This article, believe it or not , has now become some what outdated).  This is a major sea change not to be ignored (Not just my opinion).

My Use for this technology

My current use is VS2015 and MVC 5 for the server side code. The details of the various technology’s usage will be left for another blog article. While the client side code can also be developed in ASP.NET my current preference is to use Angular with Web API for the server.

UPDATE! It looks like I will move on to ASP.NET Core for the server. Stay tuned.

IDE Tooling

My current IDE (Interactive Development Environment) is Visual Studio 2015. VS 2017 is due for release in a few days!. https://www.visualstudio.com/

Angular 2

Angular is the latest version from Google. Often referred to as Angular 2, to differentiate it from Angular 1, who’s official name is AngularJS.

Use in App Development

This is a JavaScript based open-source front-end web application framework. It’s advantage is that it moves a lot of the processing to the client or browser. This in turn creates a more responsive feel for the user.  The app is known as a SPA (Single Page Application) because the new pages are not generated in the tradition manner by a HTTP request and response to a web server, but instead are a partial page updates.

My Use for this technology

This is my preferred frontend (Browser) technology. Currently it’s looking good for the near term but is evolving fast. It solves many issues over the older technologies. More detailed information to come!

IDE Tooling

My preferred tooling is the editor Visual Studio Code (free)

Google developed Angular not in straight JavaScript but by using TypeScript (Microsoft). This is my preferred development language.

Why TypeScript? http://www.typescriptlang.org/

 

After stagnating for many years JavaScript started to evolve into a modern language. It was misunderstood and considered a toy language due to  number of unfortunate developments. It is one of the core technologies of the internet along with html and css,  and because of this it cannot be ignored. A famous quote goes:

” any application that can be written in JavaScript, will eventually be written in JavaScript. ”   CODING HORROR

JavaScript started out as “LiveScript” . It was written by Brendan Eich in 10 days, in May 1995. That was the start of it’s troubles, it breaks a lot of behaviors adopted by other languages such as Java and C#. To add to it’s problems they renamed it “JavaScript” as a marketing gimmick. Now real confusion and controversy set-in.

 “Java is to JavaScript like car is to carpet”

The quirks of JavaScript and it’s fundamental underpinning of the internet have finally begun to be resolved.   in November 1996 Ecma International started to create a standard. Ecma Script (JavaScript’s official name) was created. The latest versions are ES6 and ES7(renamed ECMScript 2015 and ECMScript 2016 !)  These are the current versions, but new versions are being developed and the projected release cycle is now every 6 months.

Browser Compatibility

Browser behavior is notoriously none standard. So the question arises, how do we take advantage of the latest JavaScript features in development and deploy code that will consistently behave in all browsers? One answer is Typescript. Typescript is a supper set of JavaScript. It has all the latest JavaScript features but is only used in development code. Transpilers are used to convert the code into ES6 or ES5 for deployment. Again this is a very high level view and leaves much to be discussed in future blog articles.

Happy coding in LiveScript, JavaScript, ES6, ECMScript 2015, I mean TypeScript!

Leave a Reply

Your email address will not be published. Required fields are marked *