Friday 31 March 2017

Hybrid Mobile App Frameworks Using AngularJS

Hybrid mobile app development is one of the most popular and growing niches of mobile app development. One of the biggest advantages of Hybrid Mobile App Framework is that it doesn’t require knowledge of all the native SDKs to develop app for Android, iOS, Windows etc. platforms. All you need to have is knowledge of the HTML, CSS and JavaScript. In this article, we’ll have a look at some of the top Hybrid Mobile App Frameworks using AngularJS.

IONIC



IONIC is one of the widely used framework for creating Hybrid mobile apps. You can build mobile apps using web technologies like HTM5, JavaScript, CSS, AngularJS. A single code base is enough for creating the app for all the major mobile app stores and mobile web. IONIC mixes the native device UI features along with the power of AngularJS to make progressive apps.
To get started with using IONIC, do have a look at how to implement twitter login in IONIC mobile app which shows how to get started with creating a IONIC app.

NativeScript

NativeScript is a hybrid mobile app framework for building mobile apps using AngularJS. It also support mobile app development using TypeScript. NativeScript is backed by Telerik and hence making it one of the top contenders among the other hybrid mobile app frameworks.
NativeScript provides beautiful native looking UI which can deployed across multiple mobile platforms such as Android, iOS, Windows etc. It’s has large number of plugins which can reused across different mobile apps.
Feel like digging deeper into NativeScript, do have a look at their official documentation.

Mobile Angular UI

Mobile Angular UI is a HTML5 Hybrid Mobile App Framework Using AngularJS for creating mobile apps. This framework uses the power of Twitter Bootstrap and AngularJS to create sleek looking mobile apps. With no jQuery dependencies, all you need to create beautiful user interfaces are AngularJS directives.
For a detailed information on using Mobile Angular UI, have a look at the official documentation.

Onsen UI

Onsen UI is a HTML5 UI framework for creating hybrid mobile apps. Onsen UI supports mobile app development using different JavaScript frameworks and libraries. You can develop the application using AngularJS, AngularJS 2, React, Meteor, Vue.js or you can go pure JavaScript. With all the SDK up in cloud, you don’t need to waste time updating SDKs. You can focus on building app using technologies you already know and the rest is taken care by Onsen UI.
For a  detailed info, do have a look at the official documentation.

Wrapping It Up

In this article, we saw some of the most widely used Hybrid Mobile App Frameworks Using AngularJS. Have you worked on any of the above listed hybrid mobile app frameworks ? How was your experience ? Have you used any other hybrid mobile app framework ? Do let us know your thoughts and suggestions in the comments below.

Thursday 30 March 2017

Interesting facts about WIFI

1. Interbrand  invented the term "WiFi" - WiFi was never actually short form for Wireless Fidelity. What added to the confusion was the WiFi Alliance’s use of a non-sense advertising slogan, "The Standard for Wireless Fidelity," which lead many people to think that WiFi was an abbreviation of "Wireless Fidelity".

2. The WiFi Internet of Thing is happening now - WiFi is already connecting the Internet of Thing applications that consumers want today. There are a large variety of WiFi enabled thermostats, light bulbs, home security, monitoring and control systems, appliances, automotive products, and wearable devices available today.

3. WiFi can travel much longer than you may think - You might think that because you can't get a stable internet access in your room, that WiFi only travels over a few meters. While many WiFi networks are typically for home use, and commonly have a range of around 30m, special WiFi networks can reach more that 275 km in distance. This is done by network technicians creating special WiFi range extenders.

4. A single technology can help make all connections seamless - Just think about being able to purchase a new WiFi enabled TV, thermostat, sprinkler system, or even washing machine and immediately adding it right to the same network as your computer, tablet and smartphone. WiFi is the connectivity of choice for so many existing devices, and it is the network of choice for new connected products. Among those surveyed, 91 percent indicated that they are more likely to purchase smart products for their household if they can sync everything to their existing WiFi network.

5. With more connected devices, security is more important than ever - As more of our day-to-day living becomes automated, it’s critical to practice safe connected habits. WiFi has industry-standard security protections consumers can rely on.  A WiFi network using WPA2 provides both security and privacy for communications as they travel across your network. For maximum security, your network should include only devices with the latest in security technology – WiFi Protected Access 2 (WPA2). Wi-Fi CERTIFIED devices implement WPA2.

6. WiFi was previously known as WaveLAN - FlankSpeed, DragonFly, WECA and IEEE 802.11b Direct Sequence before the more consumer friendly name of WiFi was adopted.

7. WiFi signals are stronger in the US than in Europe - as the regulatory authorities in the US allow for higher transmit power which results in stronger signals.

8. WiFi will drop in performance if wireless devices around it - Wireless performance dramatically drops once more devices connect to it. Theoretically, many routers announce that they can support up to 255 devices connected to a router, while in reality an internet connection will be near unusable at this point. The major problem is bandwidth, which can vary depending on your router. Another problem is if there are many WiFi networks around you, your device may slow down as multiple signals can interfere with the clarity of your signal.

9. WiFi networks can be affected by microwaves - Ever wonder why your YouTube video of People Falling Over or Cats Falling Over slows to a stop when heating up that week-old Chinese takeout? Microwave ovens release an enormous amount of energy when in use, which can interfere with your WiFi signal. Microwave ovens produce about 1,000 watts, which is 10,000 times more than the signal your WiFi gives off. Usually this is contained by the outside of the microwave, but it only takes a tiny leak for it to disrupt your entertainment.

10. WiFi is not a health problem - There is a common misconception that WiFi signals can be hazardous over time and need to be shut off overnight. Through our day-to-day lives we are all swimming in all sorts of waves, from radio waves to mobile phones. In fact, WiFi signals are much safer than mobile phones. There has been no scientific evidence of reported illnesses attributed to WiFi signals.

Ionic 2 Framework Mobile App Development


step by step tutorial to create hybrid mobile app.


This is getting started tutorial for creating a mobile app using Ionic 2 Framework. Ionic 2 is the successor of the Ionic framework that use has been published a lot of app in Google play and iTunesConnect. The development process is familiar with front end programmer because it's used Angular 2, HTML, CSS and Typescript. Before we started this thing below must do:
1. Installing node.js using installer or using package manager
2. Install ionic 2 and cordova
$ npm install -g cordova
$ npm install -g ionic
It's enough for us to start.
Now, let create the first app with default tab menu layout brought by ionic.
$ ionic start firstapp tabs --v2
Go to newly created folder
$ cd firstapp
Run your first ionic app
$ ionic serve
You can see the result in browser that automatically opens when app run as http://localhost:8100
Ionic 2 Framework Mobile App - Welcome Page Browser
If you want to run app in iPhone simulator, add ios simulator and ios deploy
$ npm install -g ios-sim
$ npm install -g ios-deploy
Run app in iPhone simulator
$ ionic run ios
Now you can see your app in iPhone SE simulator with ios 10
Ionic 2 Framework Mobile App - Welcome Page
Ok, this is it for today. Next, I will explain the structure of ionic 2 apps.

Thank You.

Wednesday 29 March 2017

Angular 4 Is here? With New Features.



Angular 4.0.0, the latest upgrade to the popular JavaScript framework for mobile and desktop development, was released by Google recently. This is a major release which has some breaking changes!
The upgrade features view engine improvements making Angular smaller and faster and helping developers build smaller applications. These changes should reduce the size of the generated code for your components by more than half in some cases.”
Version 4.0.0 follows a release schedule detailed late last year in which the company jumped right from Angular 2, which arrived last September, to Angular 4. The framework was rewritten with TypeScript, Microsoft’s typed superset of JavaScript, with the Angular 2 release, and version 4 uses TypeScript 2.1. Moving to the newer version of TypeScript means better type-checking throughout an application as well as better speed for ngc, the compiler for Angular templates.
Angular version 4.0.0 — invisible-makeover — is now available. This release is backwards compatible with 2.x.x for most applications.
Some notable features of this version include: template binding syntax improvements, TypeScript 2.1 and 2.2 compatibility, and source maps for temples.
Must Read : Reasons to choose Angualr JS for your next development project.
Going forward, developers can expect patch updates and ongoing work on version 4.1. The team is still creating a roadmap for the next six months. According to its release schedule, version 5.0 is expected in the fall of 2017 with version 6.0 being released March of 2018. Angular 4 Beta 5 version is released. Check out the new changes : https://angular.jsnews.io/on-the-road-to-angular-4-beta5-via-jaxentercom-angularjs-tech-development/
The beta phase officially began in mid-December 2016 and has rapidly gone through six beta versions (beta.5 was released on January 25)
The sixth beta version consists of 11 bug fixes and eight new features.
Angular 4 Beta 1 was released in December.
In November 2016, Google surprised everyone when it detailed plans for Angular 3 to be released a short six months after Angular 2’s arrival. Now it turns out there will be “No Angular 3“ release after all. Instead, “Google will go right to version 4“ of its popular JavaScript framework in March 2017.
Google’s Igor Minar said at the recent NG-BE 2016 Angular conference in Belgium that Google will jump from version 2 to version 4 so that the number of the upgrade correlates with the Angular version 4 router planned for usage with the release.
Minar, in fact, laid out a road map that has eight beta releases of Angular 4 coming out between December and February, followed by two release candidates in February and the general release on March 1. But Minar cautioned against getting too hung up on numbers and advised that the framework simply is called “Angular” anyway. “Let’s not call it AngularJS, let’s not call it Angular 2,” he said, “because as we are releasing more and more of these versions, it’s going to be super-confusing for everybody.”

Tentative Angular 4 release schedule

The fact that breaking changes will arrive, doesn’t mean they will arrive every other week. The Angular team committed to time-based releases that occur in three cycles:
— patch releases every week,
 — 3 monthly minor release after each major release and
 — a major release with easy-to-migrate-over breaking changes every 6 months.

Angular is on an aggressive schedule that would have Angular 5 arriving in September/October 2017, followed by six months by Angular 6, with Angular 7 coming six months later in September/October 2018. The next 3 months will be dedicated to finalizing Angular 4.0.0. Angular 4 features and release date
Google’s goals for Angular 4 are to be as backward-compatible with Angular 2 as possible and to improve compiler error messages. In November, Google talked about the next version of Angular, then known as version 3, emphasizing improvements in tooling as well as reduced code generation.
Angular’s upgrade plan also includes moving to TypeScript 2.1 as a baseline, away from TypeScript 1.8. While this means there are breaking changes, Minar was reassuring. “It’s not going to be a big deal.
We did these migrations across the whole Google and it was quite trivial, but it does require [some interventions].” Angular 2 was rewritten in TypeScript, Microsoft’s typed superset of JavaScript.
Earlier this month, Google released Angular 2.3, a minor upgrade featuring Angular Language Service, which is designed to integrate with IDEs and provide type completion and error-checking with Angular JS developmentTemplates.
Object inheritance for components is featured as well. Angular 2.2 arrived in November, featuring ahead-of-time compilation compatibility.

Tuesday 28 March 2017

Why Should You Upgrade From Angular 1 To Angular 2.0

Angular 2 is one of the most popular platforms which is a successor to Google Angular 1 framework. With its help, Angular JS developers can build complex applications in browsers and beyond. First announced in October 2014, the final version of Angular 2 was released in September 2016.
With the release of this new platform, one question pops up in mind, “Is it worth to upgrading to Angular 2 or will Angular 1 remain sufficient to progress alongside other notable frameworks and libraries like React? We will try to find an answer to this question in this blog.

1. Optimized for Mobile

Let us start with the homepage of Angular 2 it says, “One framework. Mobile and desktop.” It’s as clear of an indication as any that Angular 2 is going to serve as a mobile-first framework in order to encourage the mobile app development process.

Angular 2 has been carefully optimized for boasting improved memory efficiency, enhanced mobile performance, and fewer CPU cycles. This version also supports sophisticated touch and gesture events across modern tablet and mobile devices.
A recent benchmark study from Meteor revealed that the latest version of Angular is faster than Blaze and React. Additionally, Angular 2 will support native desktop apps for Linux, Windows, and Mac operating systems.

2. TypeScript Support

Here’s a huge perk: the latest version of Angular fully embraces Typescript. For those unfamiliar with this term, TypeScript Lang builds on top of what you already know about JavaScript but incorporates many additional tools to your ability to refactor code, write in modern JS (ECMAScript 2015), and compile to the older versions depending on browser request.
Another important facet is IDE integration is that it makes easier to scale large projects through refactoring your whole code base at the same time. Its inbuilt code completion tool effectively saves your precious time from having to look up various features from the libraries you use individually. If you are interested in Typescript, the docs is a great place to begin with.
Developers utilizing Angular 2 can enjoy the TypeScript functionality and all of its affiliated libraries, making it quite simple to integrate database interfaces like MongoDB via support of TypeScript . With libraries like React already using TypeScript, web/mobile app developers can implement the library in their Angular 2 project seamlessly.

3. Modular Development

Angular 1 created a fair share of headaches when it came to loading modules or deciding between Require.js or WebPack. Fortunately, these decisions are removed entirely from Angular 2 as the new release shies away from ineffective modules to make room for performance improvements. Angular 2 also integrates System.js , a universal dynamic modular loader, which provides an environment for loading ES6, Common, and AMD modules.
$scope Out, Components In
Angular 2 gets rid of controllers and $scope. You may wonder how you’re going to stitch your homepage together! Well, don’t worry too much − Angular 2 introduces Components as an easier way to build complex web apps and pages.
Angular 2 utilizes directives (DOMs) and components (templates). In simple terms, you can build individual component classes that act as isolated parts of your pages. Directives were a crucial part of Angular 1 and, embracing their strengths for page creation, were brought over to Angular 2. Components then are highly functional and customizable directives that can be configured to build and specify classes, selectors, and views for companion templates.
With these changes, Angular 2 will be able to provide better functionality and be easier to build your web applications from scratch. Angular 2 components make it possible to write code that won’t interfere with other pieces of code within the component itself.

4. Native Mobile Development

The best part about Angular 2 is “it’s more framework-oriented”. This means the code you write for mobile/tablet devices will need to be converted using a framework like Ionic or NativeScript.
This might seem contradictory if performance is your main concern, but Angular 2 really shines in the code structure department. One single skillset and code base can be used to scale and build large architectures of code and with the integration of a framework (like, you guessed it, NativeScript or Ionic), you get a plethora of room to be flexible with the way your native applications function.

5. Code Syntax Changes

One more notable feature of Angular 2 web development is that it adds more than a few bells and whistles to the syntax usage. This comprises (but is not limited to) improving data-binding with properties inputs,changing the way routing works, changing an appearance of directives syntax, and, finally, improving the way local variables that are being used widely.
That are small changes, but utterly crucial in this era. Once again, I would recommend looking through the Angular 2 Docs for the finer details, and an opportunity to take Angular 2 for a test drive.
Conclusion
Many Angular JS development companies and communities have shifted from discussing the first version to exclusively serving as independent Angular 2 communities. It is clearly not too late to start catching up with the latest version Angular 2. Right now, there are a plethora of great frameworks out there. ReactJS might be better at handling performance, but Angular 2 focuses on the deeper aspects of the web and mobile app development process, in particular for scaling large codebases.
In addition to this, the same team who worked on Angular 1 is also working on Angular 2, leading to some additional familiarity. Before settling for any framework, it is best to come up with a solid list of important factors and goals that are relevant to your project. When making this decision, you could do far worse than starting your newest project on Angular 2 framework.

Monday 27 March 2017

neural network and how does it work

A neural network is to simulate lots of densely interconnected brain cells inside a computer so you can get it to learn things, recognize patterns, and make decisions in a humanlike way. The amazing thing about a neural network is that you don't have to program it to learn explicitly: it learns all by itself, just like a brain!
But it isn't a brain. It is a system of hardware and/or software patterned made by programming very ordinary computers after the operation of neurons in the human brain, working in a very traditional fashion with their ordinary transistors and serially connected logic gates, to behave as though they're built from billions of highly interconnected brain cells working in parallel.Neural networks also called artificial neural networks and there have a variety of deep learning technologies. Neural networks have a large appeal to many researchers due to their great closeness to the structure of the brain, a characteristic not shared by more traditional systems.

In an analogy to the brain, an entity made up of interconnected neurons, neural networks are made up of interconnected processing elements called units, which respond in parallel to a set of input signals given to each.The unit is the equivalent of its brain counterpart, the neuron. 

Neural network simulations appear to be a recent development. However, this field was established before the advent of computers, and has survived at least one major setback and several eras. Many important advances have been boosted by the use of inexpensive computer emulations. Following an initial period of enthusiasm, the field survived a period of frustration and disrepute. During this period when funding and professional support was minimal, important advances were made by relatively few reserchers. These pioneers were able to develop convincing technology which surpassed the limitations identified by Minsky and Papert. Minsky and Papert, published a book (in 1969) in which they summed up a general feeling of frustration (against neural networks) among researchers, and was thus accepted by most without further analysis. Currently, the neural network field enjoys a resurgence of interest and a corresponding increase in funding.
How does a neural network works?
A typical neural network has anything from a few dozen to hundreds, thousands, or even millions of artificial neurons called units arranged in a series of layers, each of which connects to the layers on either side. Some of them, known as input units, are designed to receive various forms of information from the outside world that the network will attempt to learn about, recognize, or otherwise process. Other units sit on the opposite side of the network and signal how it responds to the information it's learned; those are known as output units. In between the input units and output units are one or more layers of hidden units, which, together, form the majority of the artificial brain. Most neural networks are fully connected, which means each hidden unit and each output unit is connected to every unit in the layers either side. The connections between one unit and another are represented by a number called a weight, which can be either positive or negative. The higher the weight, the more influence one unit has on another.

In a neural network Information flows through in two ways. When it's learning or operating normally, patterns of information are fed into the network via the input units, which trigger the layers of hidden units, and these in turn arrive at the output units. This common design is called a feedforward network. Not all units "fire" all the time. Each unit receives inputs from the units to its left, and the inputs are multiplied by the weights of the connections they travel along. Every unit adds up all the inputs it receives in this way and if the sum is more than a certain threshold value, the unit "fires" and triggers the units it's connected to.

For a neural network to learn, there has to be an element of feedback involved just as children learn by being told what they're doing right or wrong. Neural networks learn things in exactly the same way, typically by a feedback process called backpropagation. This involves comparing the output a network produces with the output it was meant to produce, and using the difference between them to modify the weights of the connections between the units in the network, working from the output units through the hidden units to the input units going backward, in other words. In time, backpropagation causes the network to learn, reducing the difference between actual and intended output to the point where the two exactly coincide, so the network figures things out exactly as it should. Once the network has been trained with enough learning examples, it reaches a point where you can present it with an entirely new set of inputs it's never seen before and see how it responds.

What Applications Should Neural Networks Be Used For?
Neural networks are universal approximators, and they work best if the system you are using them to model has a high tolerance to error. Howeverthey work very well for:
  • sales forecasting
  • industrial process control
  • customer research
  • data validation
  • risk management
  • target marketing.

Artificial neural networks were first created as part of the broader research effort around artificial intelligence, and they continue to be important in that space, as well as in research around human cognition and consciousness. All in all, neural networks have made computer systems more useful by making them more human.

Sunday 26 March 2017

most deadliest computer virus of all time

Computer viruses can be a nightmare. Some can wipe out the information on a hard drive, tie up traffic on a computer network for hours, turn an innocent machine into a zombie and replicate and send themselves to other computers. Getting a computer virus has happened to many users in some fashion or another. To most, it is simply a mild inconvenience, requiring a cleanup and then installing that antivirus program that you've been meaning to install but never got around to.

In this list, we will highlight some of the worst and notorious computer viruses that have caused a lot of damage in real life. And since people usually equate general malware like worms and trojan horses as viruses, we’re including them as well. These malware have caused tremendous harm, amounting to billions of dollars and disrupting critical real life infrastructure.

Here are the 10 most famous and deadliest computer viruses - 

1.ILOVEYOU - The ILOVEYOU virus is considered one of the most virulent computer virus ever created and it’s not hard to see why. The virus managed to wreck havoc on computer systems all over the world, causing damages totaling in at an estimate of $10 billion. 

A year after the Melissa virus hit the Internet, a digital menace emerged from the Philippines. Unlike the Melissa virus, this threat came in the form of a worm. It was a standalone program capable of replicating itself. You will get an innocent looking email attachment labeled "I Love You". When opened, it unleashed a malicious program that overwrote the users' image files. It was designed to steal Internet access passwords. The virus emailed itself to the first 50 contacts in the user’s Windows address book. 10% of the world's Internet-connected computers were believed to have been infected. It was so bad that governments and large corporations took their mailing system offline to prevent infection.

2. Code Red - The Code Red worms popped up in the summer of 2001. The worm exploited an operating system vulnerability that was found in machines running Windows 2000 and Windows NT. The vulnerability was a buffer overflow problem, which means when a machine running on these operating systems receives more information than its buffers can handle, it starts to overwrite adjacent memory.

This allowed it to deface and take down some websites, most memorably the whitehouse.gov website and forced other government agencies to temporarily take down their own public websites as well. The worm spread by randomly selecting 100 IP addresses at a time, scanning the computers for the Microsoft system and then spreading only to those computers.

3. SQL Slammer/Sapphire - In late January 2003, a new Web server virus spread across the Internet. Many computer networks were unprepared for the attack, and as a result the virus brought down several important systems. An Internet worm that caused a denial of service on some Internet hosts and dramatically slowed down general Internet traffic. It worked by releasing a deluge of network packets, units of data transmitted over the Internet, bringing the net on many servers to a near screeching halt.

As it began spreading throughout the Internet, it doubled in size every 8.5 seconds. It selected IP addresses at random to infect, eventually finding all susceptible hosts. Among its list of victims was Bank of America’s ATMs, a 911 emergency response system in Washington State, Continental Airlines and a nuclear plant in Ohio.

4. Sasser and Netsky - Sometimes computer virus programmers escape detection. But once in a while, authorities find a way to track a virus back to its origin. Such was the case with the Sasser and Netsky viruses. It was first discovered in 2004, a 17-year-old German named Sven Jaschan created the two programs and unleashed them onto the Internet. The effects were incredibly disruptive, with millions of computers being infected, and important, critical infrastructure affected. The worm took advantage of a buffer overflow vulnerability in Local Security Authority Subsystem Service (LSASS), which controls the security policy of local accounts causing crashes to the computer. It will also use the system resources to propagate itself to other machines through the Internet and infect others automatically.

5. Mydoom - The MyDoom virus is another worm that can create a backdoor in the victim computer's operating system. The original MyDoom virus there have been several variants, had two triggers. One trigger caused the virus to begin a denial of service (DoS) attack starting Feb. 1, 2004. The second trigger commanded the virus to stop distributing itself on Feb. 12, 2004. Even after the virus stopped spreading, the backdoors created during the initial infections remained active. A worm that spread through email as what appeared to be a bounced message. When the unsuspecting victim opened the email, the malicious code downloaded itself and then pilfered the new victim’s Outlook address book. From there, it spread to the victim’s friends, family and colleagues. It spread faster than any worm seen prior.

6. Leap-A/Oompa-A - Maybe you've seen the ad in Apple's Mac computer marketing campaign where Justin "I'm a Mac" Long consoles John "I'm a PC" Hodgman. Hodgman comes down with a virus and points out that there are more than 100,000 viruses that can strike a computer. Long says that those viruses target PCs, not Mac computers. For the most part, that's true. Mac computers are partially protected from virus attacks because of a concept called security through obscurity.

But that hasn't stopped at least one Mac hacker. In 2006, the Leap-A virus, also known as Oompa-A, debuted. It uses the iChat instant messaging program to propagate across vulnerable Mac computers. After the virus infects a Mac, it searches through the iChat contacts and sends a message to each person on the list. The message contains a corrupted file that appears to be an innocent JPEG image. The Leap-A virus doesn't cause much harm to computers, but it does show that even a Mac computer can fall prey to malicious software.

7. Storm Worm - The latest virus on our list is the dreaded Storm Worm. It was late 2006 when computer security experts first identified the worm. The public began to call the virus the Storm Worm because one of the e-mail messages carrying the virus had as its subject "230 dead as storm batters Europe." The Storm Worm is a Trojan horse program. Its payload is another program, though not always the same one. Some versions of the Storm Worm turn computers into zombies or bots. As computers become infected, they become vulnerable to remote control by the person behind the attack. Some hackers use the Storm Worm to create a botnet and use it to send spam mail across the Internet.

Friday 24 March 2017

JavaScript vs TypeScript

JavaScript
JavaScript, since its first appearance in 1995, built its reputation as an ideal scripting language for web pages. Over the years it has gained rave reviews for visual representations too. Great supportive frameworks like AngularJS, ReactJS, Ember.js etc. have provided JavaScript with much-needed flexibility. The language’s increasing popularity in the last few years is powered with a helpful community monitoring its efficient use.

JavaScript is comparatively more flexible in development time. It allows time in validating that a certain object can be used in a particular way. Here’s another benefit, for example, consider a before-after scenario and a single website page with a header, footer, text box, images and a sidebar. Earlier, the entire page needed to be uploaded to make any changes. But now, if sidebar elements need reworking, developers do it without overhauling the entire set up. Today's UI/UX design, drop down boxes, search boxes can be intricately and competently set up with CSS and JavaScript.

TypeScript
TypeScript is a free and open source programming language developed and maintained by Microsoft. Since 2012, TypeScript is a superset of JavaScript which primarily provides optional static typing, classes and interfaces. An existing JavaScript program can also be a TypeScript program. One of the big benefits is to enable IDEs to provide a richer environment for spotting common errors as you type the code. Experts like Anders Hejlsberg have mentioned how Typescript is about scaling JavaScript for making it easier to build medium to large applications.

TypeScript brings in a whole lot in extending JavaScript capabilities with static typing. Developers can make use of static typing, whenever the need arises. Static typing's purpose is to eradicate the development errors, much before code execution. Imposed restrictions on interacting with objects, forces developers to clearly specify things. A type has to be clearly defined, apart from other parameters that make up the method. As a result, tooling enables the developer to detect the error much before the application is run.

JavaScript vs TypeScript

1. The ECMAScript - ECMAScript is the standardized specification for the JavaScript language. It’s sometimes referred as ECMAScript Harmony or ES.next. At the time of this writing, JavaScript is currently at ECMAScript 5. A few browsers implement some of the ES6 specification, but adoption is increasing daily. TypeScript edges ahead in its ability on allowing developers use a major part of the latest version of ECMAScript features. The language thus makes up for the resource gap developers always had.

2. Error detection - TypeScript doesn't take away JavaScript's dynamic capabilities, it just allows developers to make effective use of the static typing approach. Static typing sends out the error signals early. It helps developers in discovering which objects work and don’t work. Tooling enables developers to spot their errors and correct them a good deal before the application is run, a total contrast to JavaScript’s real-time trail and error approach.

3. Large App Capabilities - JavaScript wasn't meant for large applications or say, thousand-odd lines of code. Today we have code lines running to millions and beyond. This is where TypeScript budged in with its large app capabilities.

4. A Faster JavaScript - JavaScript framework wasn’t written in TypeScript. You can simply write down the Type definitions for it. The integrated development environment (IDE) then validates it for you. Making changes in the browser and reloading is also faster in TypeScript, with a set of tools. TypeScript is in many ways, JavaScript in fast forward mode.

5. Safer Refactoring - Refactoring in TypeScript is ‘safer’, as we are armed with a semantic knowledge of the code. This was not possible in JavaScript. In fact, more the lines of code you write in JavaScript, the more fragile it becomes.

6. Code Prompting in TypeScript - TypeScript is evolving as a language service for JavaScript. Using a TypeScript declaration file, for example, for procuring information and getting code prompts on functions,arrays, methods, etc is one of its uses. TypeScript can thus eventually serve as a consistent help center and instant code correction module for a JavaScript file.

When you should use TypeScript instate of JavaScript?
  • When you have a large codebase
  • When your team’s developers are already accustom to statically-typed languages
  • When a libraries or framework recommends TypeScript
  • When you really feel the need for speed in development process