Tawk.to – live chat on your website

I recently came across this tool tawk.to that is used for incorporating live chat on your website. What’s amazing about this tool is that it is completely free and can be installed on your android or iPhone as well!

Tawk.to is a web tool that is free to signup. You need an email and a valid website where you want the live chat to be installed.

Once installed, you can manage the chats from your desktop or laptop. Users with valid email address can be configured as an agent. Many agents can be set up and the users can start chatting.




 

The web chat is a must for all websites who want to sell their products or services. The instant chat lets users get answers immediately. Their queries can be answered and any further sales leads can be developed.

Tawk.to application has inbuilt tracking and analytics of the chat and the website in general as well. It gives you the number of visits and pages where the users spent and so on.

All the chat history and communication between the agents is stored in the application. In addition, agents can answer the chats on the go by installing the mobile app. The chat sessions can be recorded on the phone and stored in the computer applications.

Agents are able to see what the user is typing in real time and it gives time to prepare for the answer. Time when the chat ended, when the user left the website, if the user liked or disliked this tool everything is recorded. The application lets you set the status message as available, away, or invisible.

I thought it is similar to any customer service web application but the answers are not customized or suggested.

Overall, tawk.to is a cool asset for your website and let’s you instantly connect to the user! Let me know your thoughts.

Assassins Creed Syndicate

In 19th century London, there are no rules. The city has gone to the dogs. Crime and corruption rules the streets of a once-great empire that stretched continents. One man controls it all, but he doesn’t live at 10 Downing Street. Crawford Starrick is a crime boss with roots in the evil Templars, who have plans for world domination. And now he sets his sights to India. Who will save this dying city and stop Starrick in his path of destruction?

Two people is all you need.

Jacob and Evie Frye are twins with a mysterious life, but we don’t know about their lineage until towards the end of the game. (No spoilers) Their father and mother stood against Starrick at the beginning of his horrible reign. As the Frye twins free London, they meet many historically significant characters, like Alexander Graham Bell, a genius inventor and inventor of the phonetic telegraph, more widely known as the telephone. Another figure they meet is famous detective Frederick Abberline, a Seargent at the time. (Search him up. He had a pretty interesting life) That specific Inspector happened to work on the Jack The Ripper cases.

This installment of the Assassins Creed franchise brings about a new tool, which is a grappling hook, which the twins can shoot out of their specially-made gauntlets. The classic hidden blade makes an appearance. Since there are two protagonists, you can choose to upgrade Evie and Jacob differently, as they have the same skill tree, but there are some skills that are specific to Evie or Jacob, such as Chameleon, which allows Evie to, simply put, “disappear” into thin air if she crouches idly. There is also a different weapon system, with three different types of weapons making their appearances:

  • Kukris: an Indian weapon meant for confrontational-type attacks. Ideal for Jacob.
  • Cane-Swords: an inconspicuous can which can extend into a deadly and stealthy sword. Ideal for Evie.
  • External Knuckles: includes Brass Knuckles. Can stun enemies very well. Ideal for either of the twins.

There are many more details in the game, and the only way to experience all of it is to play the game. Out of 5 stars, I would rate it 4 out of 5 due to the amount of bugs. Other than that, it is a very good game.

Note: all images and trademarks belong to Ubisoft.

How Social Media Can Improve Your Business

With the age of instant messaging and social media marketing, it is a clear fact that social media can improve your business. It is also proven that the success of your business largely depends on the reviews on all the social media websites. Here are a few suggestions to leverage social media.

Reviews, that can Make or Break
People in modern days have been relying more on the internet to preview a business before placing an order with them. Be it an online business or local business, customers are more and more relying on the reviews online. Word-of-mouth suggestions and opinions are always being considered before spending a dollar. Signing up for a new activity for your child, buying a new software or phone, eating out at a restaurant, all these chores are heavily being done based on the reviews!

Professional Organizations
There are certain professional organizations that provide reviews an ratings of businesses exclusively. These include Yelp, Angie’s List, Better Business Bureau, and so on. Customers look up a business on these websites before approaching a new business. The review providers are charging a heavy amount but you are not assured of the results! Professional associations with other local businesses is also a good way to improve your reach.




Social Media Reviews
Social media such as facebook, twitter, pinterest, instagram, dribble, youtube, google plus, and so on are also other great platforms to create a specific page for your businesses and making contacts through them. You can also leverage Linkedin to create a social presence. It is always better to have your own website to promote your business. The advantage of the social media marketing is that you can track the people and increase your marketing efforts based on the population. Here are some important tips to keep in mind about social media marketing:

  1. You can link your twitter and facebook accounts with the email address. Once you post on twitter, it will be automatically updated on facebook.
  2. In the same way, if you post on facebook, your post will automatically roll on twitter. How cool is that!
  3. Similarly, you can link your YouTube channel with facebook and twitter so once you post a video on YouTube, your other channels are automatically updated.
  4. It is very important to create a Google Business account and add your local address on the Google Business site. Its inbuilt tracking and insights will let you know the number of unique visitors and the type of visitors.
  5. You must create a public page on Google Plus account and link other social media accounts to it. Make contacts with other local businesses in Google Plus. Thus, Google will automatically send traffic to your website based on your local settings.
  6. You can link your WordPress account to facebook and twitter so that your posts automatically appear on all your social media networks.
  7. Also, create separate pages for each of your locations so that when users search for your business in that location, your name will appear.

Social Media also lets you to track the visitors so you can acquire their email addresses and make a email campaign to promote your business. It is important that the reviews on these websites and media are also a deciding factor whether a customer is likely to choose your business or not. With more users heavily relying on the reviews, you can leverage the available tools to improve your business reach.

YouTube Application Program Interface (API)

YouTube is the most popular video source for world wide web users. As a developer, if you would like to embed a YouTube application in your website or application, there are a number of tools available. However, there are some settings and customization required if you want to modify according to your requirements. Here are my insights.

YouTube API

To incorporate YouTube API into your website you will first need a security key or API Code. You can create one for your project by creating a google account if you don’t already have one.

  • After logging in to the Google Developers Console, create a new Project by giving title and description
  • Add corresponding API’s to your project by selecting YouTube Data API’s to start with
  • Create a security key for your project using the left menu for the domain
  • You can also create a OAuth key if required and add the domain and referrers




Connecting to YouTube

On the Google Developers YouTube page, there are scripts available in different programming languages such as Java, JavaScript, PHP, Python, and so on. You can follow the guidelines there to create the pages. If you are using JavaScript, you can create separate java script files and html file as given. However, you can include everything in one html page separating the scripts.

In the code replace the existing sample text with your security key that you generated earlier. Try running the code in a browser and everything must work fine. However, the console may show certain errors such as ‘cannot find property of undefined’ and so on. Start debugging the code and see where the error is occurring.

In most cases, the security key is incorrect or if you are trying to connect from a http to https websites. In other cases, the errors pop up due to the x-frame origin set to the sameorigin. If you check the response of the gapi, you can see the json response and all the resulting video lists.

Search.List

YouTube API has a function search.list which is used to search the youtube videos and get a response. You need to specify a search string and return type. Also, the maxResults or safeSearch options can be set based on your preferences.

Once you get the response json, the next step is to embed the video code of each video in to the iframe player on your html. You can use a player for web,ios, or andriod applications based on your device. Create an id to the iframe and set the source of the iframe to the youtube video code onclick of the video title. You can have a function to append code to the source url. In addition to displaying the video title, you can also display additional details about the video such as the thumbnail image from the json.

Other YouTube Functions

There are other functionalities that you can include in your website such as uploading a video, creating or modifying a playlist, searching a channel, downloading a video, getting the videos from users channel, and so on. The code is already there in the Google Developers, but the rel challenge lies in how you incorporate into your application. It also depends on how you customize the code and also taking care that your application does not crash due to the YouTube API. You also need to take care of the minimum units available per day and always upgrade more depending on the use.

Picking Up High School Courses

Okay, its the time of the year where schools send reminders about picking up high school courses. If you have a child or dependent who is in high school, you will feel the pain or pressure of picking the courses. Ideally, the student is supposed to pick the course, but most parents tend to get confused about which ones are best for your child. Here are some tips from my perspective.

Objective

The main objective of choosing courses in high school is to let the student decide their future. However, the schools have their own way of limiting the students so you have to follow their guidelines. If your child is planning for a college or university, the objective of the high school courses is to meet the college requirements. Th current courses which the student takes will highly determine which college or course they are going to take in college or future. Of course, there is always a chance of dropping the class if they don’t like it. But, it is not advisable as it will not give you the credit or departmental honors in the respective division. So, planning way ahead is mandatory.

Graduation Requirements

Most high schools have minimum number of credits required to graduate from high school. Those vary from 20 to 25 or higher. Any additional credits, it is the students choice. But, in general high schools require 4 years of Math, 4 years of English, 3 years of Social Studies, 2 or 3 years of Science, 4 years of PE, and so on. In addition, Consumer Education or Volunteering may be must. They may also provide two or three Electives. In general, these requirements match the respective state university or community colleges.

Choosing the Courses
It is really amusing how the schools set conditions about choosing the courses. I think they customize the conditions based on their 5 year plans. Also, the schools are highly selective about which students take which courses. Before approving any course, they make sure the students meet certain requirements or test scores.

There are hundreds of courses a school offers under different departments. But, the student is left with only minimum choices after selecting the mandatory courses. The student must select the electives in a manner that his college requirements are met. Dual Credit courses offered at local community colleges might be a good idea to carry the credit to both high school and the college

Choosing orchestra in high school is highly selective. Even though orchestra is considered to be an easy grade, there might be many hours required for each concert. If you take orchestra, it will show your commitment to follow directions and work in teams. Also, it is better to take for four years which show your perseverance over a period of time. The same applies for choir or band.

Choosing a world language is also a big question for many students. Most colleges require a world language as their prerequisites. So, the student is forced, in a sense, to participate in a world language hoping to be useful in future profession. Again, it is suggested that they take the world language for four years in high school.

Students must be watchful about the courses the schools set as mandatory to be selected for a class rank. If you need to be considered for a class rank, you have to take the courses set by the school. Else, you will not have a school rank on your final transcripts! Not fair, huh. 🙂

Clubs and Sports

After the courses are selected you will be given option to take participation in Academic clubs, Debate teams, Student Leadership, and so on. Similarly, it is suggested that you be a member of some school’s sports team of your choice. This will showcase you as an ‘overall candidate’ when you apply for college.

Finally, it is essential the student put in lot of work hours after school to study all the subjects they signed up for. Good work ethics and practice is suggested for success in secondary school that lays foundation for college and future!

Happy New Year 2016

Here’s wishing you all a Very Happy New Year 2016!

2016 is supposed to be the Red Monkey Year according to Chinese Calendar. Their New Year starts late in Spring I guess. The USA gears up for the Presidential elections and subsequent policy changes in 2016. President Barack Obama is ending his eight year term in 2016 and looking forward for retirement. 🙂 Is it going to be Hillary or Trump. That would be an interesting elections.

Women started to vote and drive in Saudi, Finally! This may foresee an influx of changes for the daily lives of the people living in that area. India is preparing for the Make in India challenge and expecting more work in 2016. China relaxed its one child policy to have more people working and contributing to the economy in 2016.

Employment based immigrants are expecting more relaxations in their work statuses which will enable them to take up more jobs. The flexibility will allow them to relocate and take promotions in their jobs in 2016.

The World is getting more environmental awareness and climate changes. Flooding seems to be a greater challenge worldwide and controlling the subsequent diseases is tough too. Terrorism and cancer are still  a major concern to global population. Advance technologies in space are allowing private organizations to host space trips soon!

Students are facing higher rates in college fees. Interestingly, technology makes them to deliver more and they are expected to achieve greater heights in 2016. Tough competition in colleges and employment will result in better prospects for all in 2016!

Well, that’s my forecast for 2016. 🙂

The Power of Pega

Pega has turned out to be the most popular platform for building Business Process Management (BPM) and Customer Relationship Management (CRM) applications. Pega has powerful capabilities which can be used by the business and project managers to capture the requirements directly into the application without any need of coding. Pega Systems software has inbuilt features with which capturing and transforming customer requirements into technical details with a click of a mouse. I think Pega is cool is because of its features and easy to use capabilities.

Mega Pega Products

Pega has custom solutions for Marketing, Customer Service, Sales and Onboarding, Operations, and the most famous Pega Platform. Each solution has unique features such as customization and reports generation.

  1. Pega Customer Service has inbuilt directions for the customer service representatives based on the role they logged in or based on the incoming call. The messages can be customized and launched by a supervisor or manager depending upon the independent needs. Reporting is much easier with inbuilt range of reports that can be modified based on your requirement.
  2. Pega Marketing can be used to design, develop, and monitor marketing programs and campaigns which can be customized and prioritized based on the changing requirements. Marketing goals and up sell and cross-sell strategies can be included all in one place. Marketing channels can be unique based on the individual customer and can drive better results.
  3. Pega 7 Platform has cool features such as the Case Manager and Designer Studio which make building applications easier. The business processes can be captured using the Direct Capture of Objectives features. The process flow diagrams can be captured inside the tool and the business requirements documents can be saved in the application itself. You can define the business rules in the work flow diagrams and the process can be directed based on a predefined condition or rule.
  4. Pega Operations is used to drive warranty processes or insurance claims easier with its features. Order management becomes simpler with end-to-end visibility starting from placing the order to delivering the order. Disputes and conflicts can be managed effectively without loss of time and resources.
  5. Pega Sales Automation guides sales processes and handling with its unique capabilities. Guided selling and sales dashboards drive the sales processes which can be effective in managing customers and sales goals. The Pega Onboarding and know Your Customer features lets businesses build applications that meet the business needs.




Pega Customers

Many businesses worldwide have deployed Pega applications to meet their needs. Some of the customers include CISCO, Blue Cross Blue Shield, Linkedin, Farmers Insurance, Wells Fargo, Coca Cola, Expedia, GE Healthcare, PayPal, Xerox, and so on. Pega solutions can be applied in variety of industries including financial services, insurance, healthcare, communications, health sector, manufacturing, energy, life sciences, and so on. Most of the solutions are available in mobile and cloud as well and are compatible with other systems and services.

Major benefits of deploying Pega include:

  • Streamline operations
  • Effective Change management
  • Improve productivity and compliance
  • Increase profitability
  • Simplify and automate core processes
  • Enhance customer engagement

Pega Academy

Pega services include the Pega Academy and forums. The Pega Academy has the course paths and certification options for the Pega users. Some of the basic certifications are free with a corporate email which you try out to get the look and feel of the software. You can download the trial server and observe how the solutions work. Other certifications need corporate credits which your organization can provide if needed.

Try out the Mega Pega and let me what you think about it!

Spectre Review

Spectre. A criminal organization with no morals. Their leader is Ernest Starvo Blofeld, a mad super villain in the James Bond franchise, if you’ve read any of the books or watched any of the movies. After M’s death in Skyfall, Bond seeks reconciliation in a video will that M has sent to him, stating to find Marco Sciarra and kill him. In doing so to also take his ring and find his widowed wife for more information on his ring. Meanwhile in London, MI6 has heard of the significant amount of damage he has caused to Mexico.  The chief of security, or C, as Bond calls him, proposes on making a group called Nine Eyes that mainly focuses on drone intelligence, rather than human fieldwork. But doing so would close down the “00” program. 
Overall, this movie is not that action packed as other Bond movies, as that dead space is filled up with romance. Which is not good for a movie in the Action/Adventure genre. Like the opening screen says, “the dead are alive”, hopefully Sam Mendes can do better next time. 

 

AngularJS Routes with $routeProvider and $stateProvider

AngularJS Routes are used to load different views or states depending on whether you use a ng-Route or ui-Route. The traditional way of linking the pages in your application is just fine, but with AngularJS routes you can handle dynamic binding better and the routes are easier to remember for the user.

Routing with Angular JS allows bookmarking the same url with different categories easier. Routes allow different views to load depending upon the url. Same route can be given to more than one view. For the user, only the keyword appears to be changed, even though the views are loading from different html pages. Basically AngularJS routes are two types:

  1. ngRoute: No nested routes are present
  2. ui.router: Nested routes are present

ng-Route

Include the angular-route js in the script file. You will also need a server for the routes to work. You can set up the Apache Tomcat server. We pass the ngRoute as a dependency to the module while defining an angular module.

var app =angular.module(‘myApp’, [‘ngRoute]);

Using the app.config service, we can define the different routes for the links. The keywords used are ‘when’ and ‘otherwise’. You can have any number of ‘when’ in a $routeProvider provided everytime you return a templateUrl and a controller for that route. For example, in your application you have two menu items, Login and Home. In that case, you have to have two route specified in your $routeProvider. Further, you have to create two additional html pages which have to load in those routes. Also, you have to create two controllers to define what happens in the html pages. Here is an example.

myApp.config(function($routeProvider){
$routeProvider.
       when(‘/home’,{
       templateUrl: ‘home.html’,
       controller: ‘HomeCtrl’
}).
      when(‘/login’,{
      templateUrl: ‘login.html’,
      controller: ‘LoginCtrl’
}).
      otherwise({
      redirectTo: ‘/login’
});
});

Remember to pass the $routeProvider to all the controllers as a function parameter.

myApp.controller(“HomeCtrl”, function($scope, $routeProvider){

});

In the index.html body you have to set up a container or placeholder for the views to load.  The a links are identified in the html with the ‘#’.

<a href=’#/login’>Login</a>|<a href=’#/home’>Home</a>

<div ng-view></div>

ui.router

Include the CDN of the ui.router javascript file in your index.html. ui.router uses a $stateProvider. We pass the ui.router as a dependency to the module while defining an angular module.

var demoapp = angular.module(“demoapp”, [‘ui.router’]);

In ui.router, all the routes are identified with a state rather than a ‘#’ Any number of child routes can be created using the $stateProvider. It uses application state changes to load the views accordingly.

The states are managed hierarchically. $stateProvider is defined inside the app.config service. It defines the different states and templateUrls to be loaded for the states. Each state can also defined along with the parent. Here, in this example, list is the child view of home.

demoapp.config(function($stateProvider){
    $stateProvider.state(‘home’, {
    state: ‘home’,
   url: ‘/home’,
   templateUrl: ‘home.html’,
   controller: ‘CarCtrl’
}),
   $stateProvider.state(‘login’, {
   state: ‘login’,
   url: ‘/login’,
   templateUrl: ‘login.html’,
   controller: ‘BarCtrl’
}),
   $stateProvider.state(‘list’, {
   state: ‘list’,
   url: ‘/list’,
   parent: ‘home’,
   templateUrl: ‘home.list.html’,
  controller: ‘ListCtrl’
});
});

In the child state, you have to specify the parent state. Remember to pass the state to all the controllers as a function parameter.

demoapp.controller(“BarCtrl”, function($scope, $state){

});

In the html, you have to refer to the states in the link. ‘ui-sref’ is used to link the states in the $stateProvider. ui-sref is the wrapper that supports the href in ui-routing. AngularJS will convert the state reference to a href automatically. Also, specify the ui-view to load the views in the container or placeholder.

<a ui-sref=”login”>Login</a>|<a ui-sref=”home”>Home</a><br>

<div ui-view></div>

Routing is pretty simple once you get a hang of it. Just implement and include the correct javascript files in the script tag.

AngularJS Directives

AngularJS directives are a cool way of defining behavior and using it any way you want. You can have a directive with your name and have it do any kind of work you want depending on the situation. AngularJS directives control your DOM behavior.

Directives

Directives guide the HTML compiler to control the elements so they can behave in a certain way. The rendering of HTML inside the AngularJS application is controlled by the directives. Depending on the type of directives, they can be used to change the behavior.  Think about it like the word ‘change’. You can use it to refer to ‘change of clothes’ or ‘spare change’. It depends on the context. Similarly, Directives too can be used to behave differently if used in different contexts.




Built-in Directives

Here are some key details about directives.

AngularJS has some crucial inbuilt directives which can make your application behave in a certain way. Directives can be integrated with the HTML or can be used in the Javascript.

One thing which is cool about directives is its naming. The naming of a directive follows camel case when used in Javascript: (ngApp). Whereas, if the directives are used in a HTML, the name is separated with a hyphen: (ng-app).

There are four basic directives:

  1. ng-app : To auto-bootstrap and initialize an AngularJS application
  2. ng-model : To bind between HTML control and application data
  3. ng-init : To initialize application data
  4. ng-view : To switch between different views

There are many builtin directives, here are my favorites:

  1. ng-controller : To attach a controller class to the view
  2. ng-bind : To replace the text of the element with value of an expression
  3. ng-repeat : To instantiate a template once per item from a collection
  4. ng-hide : To show or hide the given element based on given expression

Directives are defined in a similar way as the Controllers and services. They can be defined using app.directive method. The method takes a name of the directive and a function to define what happens in the directive.




Types of Directives

The four types of Directives are classified based on where they are applied. For example, let ‘kuul-stuff ‘ be the directive you wrote. Then,

  1. Attribute directives : The directive is used to change the attribute of an element                                                                                                            <span kuul-stuff=”expression”></span>
  2. Element directives: The directive itself is used as an element              <kuul-stuff></kuul-stuff>
  3. Class directives: The directive is used as a class                                       <span class=”kuul-stuff: exp;”></span>
  4. Comment directives: The directive is used in the comments section                <-directive: kuul-stuff exp ->

Custom Directives

Custom directives are a cool way of defining your own functionality or workflow. They enhance existing directives and are easy to integrate in the HTML. The custom directives are one of the super powers of AngularJS that makes it build powerful applications. Here are some details about custom directives.

Custom directives are defined using app.directive method. The directive function returns an object in its callback.

myapp.directive (‘myDirective’, function(){

—–     write your functionality—-

});

There are some options which must be specified while writing a directive.

  1. Restrict: Defines the type of directive<br>’A’ = Attribute directive, ‘E’ = Element directive, ‘C’ = Class directive, and ‘M’ = Comment directive. It is better to define Attribute or Element directive so you can determine what element a directive matches
  2. Template: Defines directive output content
  3. TemplateURL: Gives the path of the template to be shown
  4. Controller: Defines a controller in the directive which can be used to achieve a specific task.
  5. Controller As: Defines an alias for the controller so you can refer to the controller’s variables using the alias
  6. Scope: Defines the scope of the directive                                                            ‘false‘ = Default value, which means that the scope of the directive is shared by the scope of the parent. There is no local scope present    ‘true‘ = It means that a new scope is created for the directive. There is local scope present as well as we can access the parent scope.  ‘{}‘=Isolated scope means that there is no link between parent and directive scope. A new scope is created and cannot be accessed outside. Further, the directive cannot access the outside scope.                    It is suggested to have an isolated scope in large AngularJS applications to keep the data safe. However, isolated scope can be accessed outside using some techniques. There is some magic which will be revealed later. Okay, fine. Here is the key. Use the following property to achieve the given purpose.                                                                                                             ‘=’ = Handles two-way binding.                                                                     ‘@’=Passing string values to directives.                                                      ‘&’=External function invocation.
  7. Compile: Compile method is specified to achieve a function as soon as the page loads. It will return a link function. If the behavior occurs only once in the directive, use compile.
  8. Link: Link method is specified to achieve a function similar to compile but it loads after compile. If the behavior occurs multiple times in the directive, use Link.

The order the AngularJS guides the HTML compiler is:                                    Compile–>Controller–>Pre-link–>Link–>Post-link.                                             It depends on what you want to achieve in the directive.




Directive Example

Here is an example of a custom directive.

myapp.directive(‘kuulStuff’, function(){

return {

Restrict: A,

template: <span> Hey, I’m custom</span>,

templateUrl: ‘/kuulstuff/home.html’,

Scope: ‘true’,

Compile: function(telement,tattrs) {

console.log(“Hi, I’m custom”);

var linkfn=function($scope, element,attrs){

element.css(‘background-color, ‘red’);

}

return linkfn;

}),

controller: function(){

console.log(“In the controller”);

},

Link: function(scope, telement,tattrs){

console.log(“In the link”);

},

};

});

This is just ‘some’ information about directives in AngularJS. It may be a bit confusing in the beginning, but if you write more, you will be fine. Write your own directives and let me know how it goes. 🙂

AngularJS Controllers

AngularJS Controllers are where the most magic happens. Think that the controllers of an AngularJS application as the brain. The controllers are super smart and can define what happens on the (DOM) Document Object Model. AngularJS controllers along with the dependency injection form the super power of the AngularJS.

Controllers

Here are some key details AngularJS: How to Begin.

  •  Controllers are attached to the DOM through the ng-controller directive. When a controller is initialized, a javascript object will be created and all the functions in the .controller method can be accessed.
  • The initial state for the Angular $scope is available at the point where a controller is registered. All the properties of the $scope can be defined in the controller and can be accessed through the methods.
  • The .controller method can be used to add the controller’s constructor function to the module. Thus the constructor function is out of global scope.
  • Apart from the $scope, we can send additional parameters to the controller, such as services and functions. It is better to keep a controller as simple as possible. You can define as many controllers as you want in an AngularJS application.
  • A common practice of keeping controllers focused on the required logic is to define services and functions, which can in turn be passed to a controller through dependency injection.
  • Controllers can be nested and inherited. You have to note that the parent’s controller’s methods can be accessed in the child controller. And not vice versa.
  • Finally, remember that the controllers contain Javascript functions and are created by a standard Javascript object constructor and is bounded to a particular scope.

Example

Here is an example of how the Controller is initiated. You have to create an angular app called myapp. Also, you need to declare in the html to tell that it is an Angular application.

In the js:

myapp.controller(“MyCtrl”, function($scope){

$scope.message=”Hello”;

});

In the HTML or template:

<div ng-controller=”MyCtrl”>

{{message}}

<\div>

Your div is binded to the controller using the ‘ng-controller’ directive. The scope of the div is passed to the controller. The scope message variable’s value can be accessed in the div within the dual curly braces. Notice, how the name of the controller is defined with an ‘Ctrl’ and the double quotes used while defining and accessing the controller.

Similarly, you can have any number of controllers in your AngularJS application. You can have different Javascript files for each controller or just put it in one main file. This makes two way data binding easier and keeps your application simple!

30 Things that are AWESOME!!!

So in class, we are doing this thing called “30 Days of Awesome”, in which we have to name 30 Awesome things for each day in a month. (duh) Here are the top 30 of the most AWESOME things according to me! (in ascending order)

  1. Sleeping
  2. Eating
  3. Star Wars (Dun, dun, dun, dun dun dun, dun dun dun.)
  4. Having a favorite pen
  5. Having a favorite journal/book
  6. Having that one book that has been through wars
  7. Xbox
  8. Video Games in general
  9. food
  10. YouTube
  11. Netflix
  12. did I mention food?



  13. A really good movie with…
  14. Really buttery Popcorn
  15. Music (should be further up, but… priorities)
  16. Having a cool keyboard
  17. Spy movies
  18. Cross Country (even though I’m pretty bad at it, though.)
  19. When your computer isn’t slow
  20. When you destroy the other team in Star Wars Battlefront
  21. Math
  22. Beds
  23. Couches
  24. are you sure I mentioned food?
  25. When people get the difference between your and you’re right the first time
  26. When people go to your blog
  27. Scoring a kill with a grenade in Battlefront
  28. Not running out of things to say
  29. Saying relatable things
  30. Doing something satisfactory

AngularJS: How to Begin

AngularJS is the Javascript framework for website development. It is widely popular for the features including modularity and separation of concerns. Here are some of the keywords you must be familiar with in order to build web applications with AngularJS.

Steps to Create

Here are the steps to create an application with AngularJS:

  1. Download the latest angular js file from the Angular website. Or, you can include the CDN in the script tag of your web page
  2. Bootstrap the application with Angular by using ng-app
  3. Create a controller in the app
  4. Create the HTML view in the body
  5. Run the application in a web browser




Angular Keywords

  1. Directives: AngularJS uses the directives to convert static HTML into dynamic Document Object Model (DOM) with the help of special attributes such as:
    1. ng-app: To determine which part of the page will use Angular. It will load the respective module in that part.
    2. ng-controller: To identify which Javascript controller should be used in that part of the page.
    3. ng-model: To determine the binding between model and the input field ensuring two way binding.
  2. Modules: Modules ensure separation of concerns in manageable units. It can comprise all the directives, expressions, controllers, services, and filters. Modules specify how an application can be bootstrapped. Advantages of using modules are:
    1. Easy to declare and understand
    2. Code can be packaged as reusable chunks
    3. Easy to load in any order or load in parallel
    4. Faster unit tests because only relevant modules can be tested
    5. Modules can be used in end-to-end tests to override configuration
  3. Controllers: Controllers are defined by a JavaScript constructor function that is used to augment the Scope. They carry the business logic and determine how the view and model interact. The scope is a mandatory parameter that is passed to the controller.
    1. A controller is attached to the DOM via the ng-controller directive.
    2. Then,  Angular instantiates a new Controller object, using the specified Controller‘s constructor function.
    3. A new child scope will be created and made available as an injectable parameter to the Controller’s constructor function as $scope.
  4. Expressions: Expressions are Javascript code snippets that are placed in dual curly braces. {{ }}. They are used to load model directly into the view. Advantages of using expressions are:
    1. Evaluated in the current scope not in the global window
    2. Evaluation of errors is either null or undefined
    3. Loops, functions, exceptions cannot be handled in Angular expressions
    4. You need to create a controller for complex Javascript functions



  5. Scope: Scope is an object of the application model. It refers to the current context or boundary of the application. Scope establishes a connection between application controller and view. Some of the characteristics of the scope are:
    1. Used to observe model mutations
    2. Used to propagate events similar to DOM events
    3. Can be nested to limit the properties and behavior of application components
    4. A child scope can inherit from the parent scope
    5. Provide a context for expressions to evaluate

There are some other key terms such as filters, forms, routing, and services which are key to an Angular application.

Forget Everything: Just Learn AngularJS!

Angular or AngularJS is the next most powerful Javascript framework out there which is becoming increasingly popular among the tech world. Angular JS along with CSS frameworks such as Bootstrap coupled with the REST services is redefining Website development.

AngularJS

AngularJS was developed by Google and is the most important Javascript framework which makes easier for the developer to maintain the code and achieve the same and better functionality achieved with Javascript. The best part of AngularJS is that it is open source and is having the largest support available of all the frameworks available. The current stable version is 1.4.7 and Angular 2.0 is on the way!

Advantages of AngularJS

AngularJS is similar to Javascript and it can enhance the HTML which will enable it to achieve client side programming. It has inbuilt JQuery support called JQLite which helps us in utilizing almost eighty percent of functions in JQuery library.

Browsers

AngularJS has inbuilt multi-browser support and it works on any browser such as Chrome, Opera, Firefox, Safari, and Internet Explorer. You can access your website from any device, tablet, computer, or desktop. Large-scale Enterprise applications can be developed using AngularJS. AngularJS is widely used for developing Single Page Applications (SPA) which are super light and super fast at the same time delivering unbelievable amount of data to the user.

Design

AngularJS facilitates rapidly changing user requirements and business needs at the same time leveraging the skill sets of Front end web developers. Separation of concerns that is defining the model, view, and controller-makes it easier for modular programming and keeping any changes manageable. Dependency injection and use of patterns is simple with AngularJS. Angular supports the very popular Model View Controller pattern(MVC), Model View View Model (MVVM) pattern, and Model View Whatever (MVW) pattern. AngularJS also supports responsive design which is way more important for modern day websites.

Testing

AngularJS is also super good for testing as it allows testing of Model and Controllers in isolation. AngularJS is designed to run unit testing with Karma, Jasmine and Angular mocks. The interactions between View and other components requires mocking framework to unit test. This can be achieved with AngularJS.

Prerequisites

To learn AngularJS, you must be familiar with Javascript, HTML, CSS, and website development. You also need basics of Java, PHP, and MySQL. You can download the latest version from the Angular website or include the CDN in the script tag of your web page.

Instructional Design in eLearning

Instructional Design is a systematic process in which learning needs are analysed and coursework is developed using range of multimedia tools. eLearning has revolutionized the way people learn. The Instructional Design has enhanced eLearning using adult learning theory and principles.

Instructional Design

Instructional design (ID) and Instructional System Design are often used synonymous but the latter is more broad in nature. ID enhances the learning and creates a framework for engaging the learner. Use of technology facilitates the learning process and metrics. Different ID models and strategies are widely used.




ADDIE Model

ADDIE Model is the core of ID and is widely used by instructional designers and  developers.ADDIE The five basic steps of ADDIE Model are:

  1. Analysis: Analyze learners and goals
  2. Design: Identify learning objectives, outcomes, Subject Matter Experts, and assessments
  3. Development: Develop instructional strategies and plan logistics of how the learning will be delivered
  4. Implementation: Implement the training and test the learners
  5. Evaluation: Formative and summative evaluation of the training and learner feedback

Gagne’s Nine Events of Instruction

Robert Gagne, a popular contributor to ID identified nine events of instruction that assist in learning. Story boarding of a lesson usually follows these nine events to accomplish the learning objective. The ID must take care that learning takes place  in that order in each storyboard.

  1. Gain attention
  2. Inform learner of objectives
  3. Stimulate recall of prior learning
  4. Present stimulus material
  5. Provide learner guidance
  6. Elicit performance
  7. Provide feedback
  8. Assess performance
  9. Enhance retention transfer

Bloom’s Taxonomy

Benjamin Bloom, an educational psychologist proposed three learning domains: Knowledge, Skills, and Attitudes.   After a lesson, the learner must be able to acquire knowledge, gain a skill, or change in attitude. Based on the proposal, Bloom’s taxonomy was developed.

Bloom's Taxonomy
Bloom’s taxonomy Citation: http://www.lincoln.edu/ats/bloom.html

The Cognitive domain is in turn divided in to six categories. They are:

  • Knowledge
  • Comprehension
  • Application
  • Analysis
  • Synthesis
  • Evaluation

For each category, the learning goals have been changed in to verbs. Later, the techniques have been identified to achieve the activity. In Instructional design, Bloom’s taxonomy verbs have been used to create the learning objectives so they can be measured. Further, each learning objective may have only one learning goal (Bloom’s verb).




 eLearning and Instructional Design

Vector laptop or notebook

eLearning has revolutionized how students learn. Adults in particular can pace the learning according to their time and schedule. The class room learning has been replaced by eLearning in many corporations around the world. Security training, induction training, skills training, and so on have been possible for millions of people through eLearning.

Applying Instructional Design principles in eLearning has improvised the learning. The tools and style guides have made the eLearning a pleasure experience rather than mundane text. eLearning and ID have made sure that the learning content is rich with graphics, audio, video, feedback and even simulations. The Level of the eLearning varies with cost and the interactivity involved. Some of the Instructional Design models have also been blended learning where the eLearning is associated with certain level of classroom learning to ensure human interaction.

There are also repositories, forums, and discussion rooms in the Learning Management Systems to add more interaction with the remote learners. Also, the ID faces a challenge of making the eLearning SCORM compliant. Sharable Content Object Reference Model (SCORM) is a collection of standards and specifications for eLearning. Further, the ID also has to ensure that they must not actually remove the content in order to make the screen text concise.

Instructional Design Outputs

In every phase of the ADDIE, there are certain expectations from the ID. These include Project plans, Learner Analysis, Technology Analysis, Table of Contents, Illustrations, Animations, Graphics, Learning Matrix, Schedules, Curriculum, Assessments, Glossary, User guides, How-tos, and so on. Also, there are documents pertaining to the implementation and evaluation which must be prepared and communicated to the customer.

Tools used in ID are Microsoft Office products, Captivate, Articulate, Blackboard, Moodle, HTML, Photoshop, Dreamweaver, Lectora, audio and video editing, and finally testing the final product. Quality checking the storyboards and design is an essential part of Instruction Design. Project management is an essential part of Instructional Design.

Basically, I think Instructional Design is interesting because it involves a lot of learning in terms of content and technology which keeps you engaged while you are delivering quality eLearning to users.

H4 EAD Subsequent Processes

Once you get your work permit through H4 EAD, you must apply for Social Security Number and driving licence. These are some of the documents required to get you an identity and a job in the USA.

Applying for SSN

Social Security Number is acquired for US citizens at birth. For all other immigrants and non immigrants, SSN can be acquired at the local social security office. There are some special cases where you can get a SSN even though you do not have a work permit or work visa. Here are the documents needed for applying SSN once you get your H4 EAD:

  1. EAD card
  2. Passport
  3. Valid I94 either in passport or extended version

Check the work hours of your local SSN office. You are required to take a token at the entrance. At the window, the officer will verify your documents. They will take a copy of your documents and issue an acknowledgement which shows your address, name, date of birth, and so on. The SSN card will be mailed to your address within two weeks.

Applying for Driving License

If you do not have a TVDL, you have to apply for fresh driving license after you get your EAD and SSN. If you already have a TVDL, you can get your driving license without a computer test and road test. The documents required at the DMV include:

  1. TVDL
  2. EAD card
  3. SSN Card
  4. SSN Acknowledgement Letter
  5.  Spouse’s Driving License and Spouse signature (Spouse is required to present at the DMV)

You have to take a token at the DMV. They will verify your documents and issue a token. Once your number is called, the officer will verify your documents. You will be required to take only vision test. Your driving license will be issued for five years from the current date. This is regardless of your date of validity of the H4 EAD card or I94. Again, check the timings and take all the originals. The fee is $30 plus one dollar for service fee if you pay through credit card.

Star Wars: Battlefront

It’s been quite a while since the last Battlefront installment, Elite Squadron, 4 years, to be exact. That’s why gamers were relieved to find out that DICE, the developers of the Battlefield games and Lucasarts were teaming to make a reboot of the original Battlefront. Here are some features that Lucasarts has revealed.

Characters

Lucasarts promises players they will be able to play as some of the most iconic characters, with more to come.

  • Luke Skywalker- The Force is strong with this one. Players will be able to wield the enormous power of the good side of the Force.
  • Darth Vader- Portrayed as the most memorable symbol of fear in the Star Wars universe, wield the power of the dark side, crushing your enemies in endless defeat.
    What I thought the cover would look like.
    What I thought the cover would look like.
  • Boba Fett- Unleash death from the air. Play as Boba Fett, the ruthless bounty hunter. Last I heard, he had a bounty on every Rebel scum in the galaxy.
  • Princess Leia Organa- Be a devoted leader of the Rebellion and use both defensive maneuvers and powerful attacks on the battlefront. Avoid enemy fire behind the Enhanced Squad Shield or one-shot most enemies with the mighty Trooper Bane ability. 
  • Emperor Palpatine- End the insignificant rebellion as the galaxy’s prime symbol of evil, Emperor Palpatine. Shock enemies with the iconic Force Lightning or use Force Dash to traverse the battlefront. 
  • Han Solo- The legendary smuggler who’s seen his share of blaster fights. Playing as Han Solo, you can adapt to any situation fighting off Imperial troops. The Six Shooter and Lucky Shot abilities will fit both long and short ranged combat.

(adsbygoogle = window.adsbygoogle || []).push({});

Missions

Want to play with a buddy, but your ISP’s giving you a headache? Don’t worry, Battlefront Missions is a great way to pass time while your ISP passes WiFi to your neighbors!

  • Survival- Simple: Live as long as you can without dying with a buddy.

…..And that’s it! Lucasarts plans to release “more in the months ahead”

Multiplayer

Lucasarts promises multiplayer to be even more promising, with the assurance of a mode that promises 40 player battles. Game On!

  • Walker Assault- The Empire calls on their onslaught of AT-AT walkers in this mode, giving you only Y-Wings to fight them. For those who’ve seen the movies, there’s only one way to topple one of these giants.

Again, that’s it. Look for more to be announced soon.

Cover Art
Cover Art
Like always, all features are subject to change.

Release date: November 17, 2015

All features owned by DICE, Lucasfilm,TM , and EA.
I owned none of these features, is what I'm saying.
Citation:http://starwars.ea.com/starwars/battlefront