Meligy’s AngularJS & Web Dev Goodies — Issue 6: Performance, Rants, & More

Here we are again with a few more picks, Angular and stuff…

Oh, forgot to say Hi first. Hi!

If this is the first time you read this newsletter, check out all previous issues at gurustop.net/newsletter (you get early access to the picks via subscribing to the newsletter).

This time I want to share with you that the new ng-sydney usergroup seems to be up to something. I have finalized the details of the first meet-up and it’s going to be next week on December 3. Sorry if this doesn’t mean much, but you are my friend, and I’m very excited! Hopefully in the next issue I’ll talk to you about how the night goes.

I know those lines are trying to stand between you and the links, but one last thing before we get to these. Please give me a hand and tell your friends about this newsletter if you like it. Just mention it verbally to your mates or tweet something about like this pre-written tweet suggestion if you feel lazy. The more people this newsletter helps the better.
Remember that I really appreciate your feedback about what to focus on more or even completely change, just email me or mention me as @Meligy on twitter. I’ll listen.

Enough intro, let’s get to the meat of this issue…

Angular

Tutorials

Speeding up AngularJS apps with simple optimizations
A very nice article that shows some small things you can do to improve your AngularJS performance.

Improving Angular web app performance example
This example provides very good tips on how to get better performance of your application if you simply have to do complex / expensive stuff and that’s just the reality.

Official Angular Docs: Migrating from 1.2 to 1.3
I expect that some of you are going through this exercise, so here some help.

Using Breeze JS to Consume ASP.NET Web API OData in an Angular JS Application
OData and Breeze are not that popular, but I have found OData to be very useful, and this article made me think that I maybe I should check BreezeJS as well

Build a MailChimp Signup Form with AngularJS
(Not a mailing list form, the form you use to actually sign up to create Mailchimp lists, etc)

Angular 2.0

Migrating to AngularJS 2.0
A very good article on tips to apply to your Angular 1.x codebase, that might help ease the transition when it’s time for Angular 2. There’s another viral article on the same topic: How to Embrace Angular 2.0 Today with a Future-Friendly Angular 1.3 Application – in case you missed it.
The common wisdom in this area goes like: create custom directors instead of controllers and keep as much code as possible in services anyway, use controller as to pass data to view instead of $scope. Don’t communicate with parent scopes and use isolate scope in your directives, and start using ES 6.
My personal take: It’s too early to tell if these are actually going to help, and the team is considering having a compatibility layer to map the new APIs to old APIs anyway, they just are keeping thinking about it until they actually finalize the new API shape. The design patterns suggested are good to follow though.

Vido: Using ES6 With Angular Today
The very popular Pluralsight author Scott Allen talks about using ES6 with AngularJS today. This is particularly useful as ES6 is the way to go with Angular 2, so it (again, might) make your migration a bit easier.

Tom Dale Angular Rant
Tom Dale is one of the main creators of Ember. With how Ember is excelling in gradual improvement, of course he did have a few things to say about Angular. Turns out someone collected all his Angular rants as a Storify collection!
If you are interested how I found this one, it was mentioned in the article: Why Web Tools Like AngularJS Need To Keep Breaking Themselves.
A very good read from the same source on the variance between Angular and Ember is: Innovating Fast And Slow: EmberJS Insists, “We Don’t Need To Break The Web”.
And you are in for more rants, check: 2 years with Angular. Verdict: good enough (not really).

Modules / Directives / Tools

angular-kickstart
A project scaffolding tool and build system for AngularJS projects. Includes Gulp and Bower and a few other things. The docs suggest some good stuff in there.

“kcd” Angular Module
When you use AngularJS 1.3 one-time binding, and you actually want to rebind your watches (except only in certain conditions, not all the time like normal bindings do), this directive solves this problem by simply running the Angular compilation again on the element it’s used on. There’s a simple test.

News

Rob Eisenberg: “Leaving Angular” (Reddit Comments)
Not really news if you are on social media. The writer of “All about Angular 2” and main developer on the new Angular router is leaving the Angular team. Crazy times, eh?
OK, he explicitly mentions he doesn’t think that Angular 2 is going to suck. He just says that there’s whatever (unmentioned) difference in the way he wanted it and the way the rest of the team did. This gets even more interesting when you know he is going to work on his abandoned Angular alternative framework “Durandal”, because the plans for the so called “Next Gen” Durandal have been quite similar to Angular 2 in the backwards compatibility side.
So, nothing more to watch in this space. If you are like me wondering what’s happening to Angular router, then be assured that the team is still working on it. It has been handed to Brian Ford from what the team meeting docs seem to suggest. It’s quite possible that the design of the router will change from what was demonstrated in ng-europe.

ui-router 0.2.13 release
There have been a new couple releases of ui-router in the last couple of weeks. You probably want the latest release if you intend to use it with Angular 1.3.
Remember that ui-router is the best router we have for Angular to day. The new Angular router will be released sometime next year (not sure of the exact time-frame).

AngularJS 1.3.4 and 1.2.27 are out
Yes, there’s some good work going in that area. The team is also working on Angular 1.4 BTW.

EmberJS

Ember.JS 1.8.0 And 1.9 Beta Released
They are getting rid of the string based Handlebars template and replacing it with the compatible HTMLBars template. I like how they approach deprecation as well.

What is HTMLBars and how is it better than Handlebars
In case you wondered ;)

JavaScript

Video: Philip Roberts: What the heck is the event loop anyway? | JSConf EU 2014
A very good video that explains how the browser JavaScript VM (at least v8) handles threading. It shows what the JavaScript event loop is and how it works, including how it handles asynchronous calls like timeout, etc. A must watch.

Video List: JSConf
The previous video from JSConf conference, which has several great videos as well. This is the full list. Browse it and let me know what other sessions you like.

5 functions of the Console object you didn’t know
If you don’t know any of these console methods console.assert(expression, message), console.table(object), console.profile(name), console.group(message) and console.time(name), you might want to check this post out. They are very useful, and quite unpopular!

MongoDB

Video & Slides: Preparing for peak holiday season: Ensuring a seamless customer experience
A webinar that goes through a few ways you can handle a very large load (like Black Friday sale), while still offering the data as close as possible to real time.

Craftsmanship

Pluralsight Smarterer Tech Pro Challenge
Smarterer Flock is a new online testing platform that is getting some strong traction recently, and I expect it to continue. It was recently acquired by Pluralsight (which aligns very well with them as the test identifies the gaps, which you later can attend courses to fill). They also have interesting Elance integration.
I recommend that you register and have a couple questions / tests. A quick tip: Read all the answer choices before you pick one (the answer is committed once you select it, and there’re a few “All” and “None” choices). It’s generally fun to play with too.
Watch this space. It will probably grow!

Write every day
Write drafts, with Markdown or whatever, get yourself used to writing even by writing just for a few minutes a day. It will make a difference, one that you’ll like.

Overcoming Impostor Syndrome
A good story also subtitled “Or How I Learned to Stop Worrying and Love Coding”.

More from @Meligy / GuruStop

If you have made it that far in the issue, and you like what I brought you today, let’s connect in even more ways!

Follow Me On twitter — @Meligy

Check The Newsletter Archive — gurustop.net/newsletter

Get Friends To Subscribe — gurustop.net/newsletter/signup

Remember that you can just reply to this email or mention me on twitter to tell me what you feel needs to change in next issue. And please to tweet it to your friends too, the more people enjoying this, the more it encourages me to make it better.

Until next issue,

Meligy

Meligy’s AngularJS and Web Dev Goodies – Issue 4: ng-europe Special

Hello there,
First, allow me to welcome all the new subscribers who joined the newsletter since last issue. You can view the newsletter archive at any time on gurustop.net/newsletter. I’d also like to thank all the subscribers who have been on board for a few issues already. Please make sure to tweet about the newsletter to all your friends to get on board as well.

This time we have a bit of a theme around ng-Europe conference and recent Angular.JS 1.3 and 2.0 announcements.

A small warning though. This is a bit of a different issue. One that I get to be a bit more chatty at instead of just describing the links being shared. As always, I’d love to hear from you whether this style is better or worse. Reply to this email or mention me on twitter as @Meligy.

ng-europe

ng-europe is the European version (was held in Paris) of ng-conf 2014, the first big single-track Angular.JS conference. It took 2 days with presenters from the Angular team and community leaders. The conference is important as it’s the place where the Angular team finally explained their big plans for Angular 2.0, and a few related topics got more exposure like Angular Material Design.

Conference Notes:  Day 1  |  Day 2    (biggest announcements came out in day 2)
A wiki-style collection of notes written by conference attendees. The best place to go to for getting a summary of the conference. You can later decide which sessions you might want to watch in details.

Video: All ng-europe Videos
All the conference videos are on YouTube. Check them out. Plenty of good stuff.

ng-europe Session Slides
For times when/if you need to refer to any of the session of the session slides.

Video: ng-conf 2014 Videos & Slides
I found this while preparing the newsletter, from the same site that put the ng-europe slides together. If you are bored you can check it out. Most if not all topics are still relevant.

Angular 1.3

Angular 1.3 was announced in early October, the main focus has been speed improvement and getting some directive improvements for form manipulation. We see one-time bindings, new way to create validations and show error messages, and more. Beware though, no IE 8 support.

Official Announcement — AngularJS 1.3.0 – superluminal-nudge
The post where Angular.JS 1.3 was announced. A good summary with links to documentation for each of the new major features. There’s alway the full changelog as well.

Vide: Angular 1.3 by Jeff Cross & Brian Ford at ng-europe 2014
I thought I’d highlight this video in particular. If you have 20 minutes to spare, watch this video, a good walkthrough of the features from the team that developed them.

Angular 2.0

Angular 2.0 has been in design phase since last December, while Angular.Js 1.3 was in development as well. Since then, we knew Angular 2.0 is going to be a big change and a complete rewrite, but we didn’t know how big exactly till ng-europe.

In Angular 2.0, the team plan to use EcmaScript 6 module system to replace Angular’s own module system AND dependency injection.

They also plan to use ES 6 classes to create directives in a new way that doesn’t just replace the current directive system but also the Angular controllers. With no controller, there will be no $scope as well (they referred to $scope as “Directive Definition Object”, DDO in ng-europe).

While on it, Angular 2.0 will also get rid of jqLite in favor of using the DOM directly (since it’s designed for modern browsers, where the DOM API has evolved enough already).

RIP in AngularjsJS 2

Video: Angular 2.0 Core by Igor Minar & Tobias Bosch at ng-europe 2014
(Just highlighting the relevant ng-europe video)

The announcement of Angular 2.0 had many reactions, more negative than positive. The main issue is that Angular 2.0 as explained in ng-europe feels like an entirely different framework.

Angular 1.x (The way from 1.3 to 2.0)

The announcement of Angular 2.0 makes people very skeptical of using Angular 1.x, even with Angular 1.3 still new, having tons of great features and performance. Here are a few write ups and news that help you make an informed decision whether to use Angular 1.x or not.

New Project Lead for Angular 1.x
Igor Minar (@IgorMinar on twitter), the AngularJS team lead, has decided to assign the most active Angular.JS community member as the leader of Angular 1.x. He says that there’s a lot of work to be done in Angular 1.x and if he focuses on both releases, not much of it will happen as he’s mainly focusing on Angular 2.0. Also check Angular 1.x: The plan forward, the letter Igor wrote to the team about the change.

Angular.JS Weekly Meeting
While not specific to Angular 1.x, this seems to THE place to watch for what’s happening in the Angular 1.x space. It’s as close as we can get to what the team is thinking, at least for now.

If you watched the ng-europe videos, you might be confused about the migration path from Angular 1.x to 2.0, as it looked like there isn’t going to be any. Looking at the plans and meetings for Angular.JS team, there are a few hints that suggest things might be a bit better than expected.

For example, there is a plan to share some critical components between Angular 1.x (1.3 in fact) and 2.0. Material Design and the Angular 2.0 router are the biggest names to mention in this context. Some 3rd party libraries have similar ambition as well, like Restangular.

Screw You Angular
Although the title suggests a rant, this post is actually tries to address all the criticism AngularJS got for lack of obvious migration path from 1.x to 2.0 (I was collecting these posts for the newsletter since they had very good points, but changed my mind as the post links to them anyway).
The answer the post provides is that the team hasn’t thought about migration because Angular 2.0 doesn’t exist yet! Once v2.0 gets more shape, the team can then think what the migration path to that could look like.
Not a very bad argument, and since the author is an AngularJS insider, it’s more of a knowledge than a guess.

AtScript

It seems that even EcmaScript 6 was not enough for Angular 2.0 vision of declarative programming that the team decided to implement their own language, AtScript! Crazy, huh?

It sure it. Many reject Facebook’s JavaScript framework, ReactJS, just because it introduces a new language (extension of JavaScript, .jsx files) that mixes HTML and JavaScript and requires its own compiler to translate to JavaScript. Angular.JS did something similar except the syntax isn’t as weird.

AtScript, is an extension of TypeScript that should be able to compile to ES 6 (and then can be compiled to ES 5, the current JavaScript) or Dart (I know, I don’t care too, but BTW, most of the PoCs and early experiments of Angular 2.0 and some 1.x were in Dart). It adds some annotations that the framework will use to differentiate different kinds of directives and more…

AtScript

AtScript, Google’s new superset JavaScript runtime
A good article with highlights from the ng-europe session.

Video: Miško Hevery – Keynote on AtScript at ng-europe 2014
The video of day 2 keynote where AtScript was announced. Pretty fun to watch BTW.

Video: ES6 in Angular 2.0 by Erik Arvidsson at ng-europe 2014
This video explains how Google is planning to extend its ES 6 to ES 5 compiler so that it handles AtScript as well (from the user point of view). You get to see how the pieces of the puzzle come together.

AtScript Primer
The official AtScript design document.

If you are like me, you must have been quite surprised that Google has considered Microsoft’s TypeScript as a base for AtScript, here’s what Sir Anders Hejlsberg, the father of C# and TypeScript, thinks about that, in 140 letters or less:

More from @Meligy / GuruStop

Thanks a lot for making it that far. If you like what I brought you today, let’s connect in even more ways!

Follow me on twitter — @Meligy

Check The Newsletter Archive — https://www.gurustop.net/newsletter

Get friends to receive the newsletter — https://www.gurustop.net/newsletter/signup

Remember that you can just reply to this email or mention me on twitter to tell me what you feel needs to change in next issue. And please to tweet it to your friends too, the more people enjoying this, the more it encourages me to make it better.

Until next issue,

Meligy

Meligy’s AngularJS and Web Dev Goodies – Issue 3

Hey there,
Welcome to Issue 3 of the newsletter. If you want to check the previous editions, you can go to gurustop.net/newsletter. You can access a particular issue like, for Issue 2 you go to gurustop.net/newsletter/2.

This time I have played a bit with the schedule and the order of sections. The idea is to experience different ways and hear your feedback on what works better. either on twitter or by email (simply replying to this message).

SEO — News

Video: Google will render JavaScript by end of the year
During AngularJS NYC usrgroup for September 2014, Brad Green, a Google engineering manager working on Angular.JS among other things said that Google crawler will render all JavaScript by the end of this year, and their should be tooling for checking that in Google Webmaster Tools as well – Discuss on reddit.

Angular.JS — Libraries

bind once for Angular.JS < 1.3
A set of directives that allow you to bind values to the UI only once instead of watching for model changes to update the UI. This is particularly useful when you have a long readonly list inside ng-repeat where most properties are unlikely to change until the entire list changes (and then the whole template will be re-rendered).
The concept is now native in Angular.JS 1.3, and there are other libraries that try to enhance it, like angular-watch-require and angular-watch-when.

overmind.js
If you use require.js and want to have lazy-loaded modules with it, there are several tries out there that get that sort of thing done. If all you want though is just lazy loaded modules that are loaded and bootstrapped on the fly when a certain route tree is matched (like areas in ASP​.NET MVC Areas or Rails Namespaces). Might be good for large Angular.JS apps. It also has been mentioned on the Adventures in Angular podcast.

JavaScript — MVC Frameworks

MVC Architecture
A very nice article about how we don’t exactly implement MVC as 3 parts, Model, View, and Controller. We usually had other parts too. I think the closest way to how I implement MVC is the last picture in the article.

Why I Don’t Want Your JavaScript Framework but I Love You
If you are in the mood of reading about what homework you may want to do before you actually go ahead and use a JavaScript framework, this could be a good read.

JavaScript — Ember.JS

I have a few links for Ember.JS this time that it will feel like I’m moving to it, although I’m not, I still find its innovation very inspiring as you’ll see below.

Mistakes I Made in My First Ember Project
If you have been following the newsletter for a bit, you know I value knowing how other SPA/MVC/MV* frameworks solve the same problems that Angular.JS solves. I think this knowledge is beneficial regardless of the framework because many of the issues have equivalent in every framework, and thinking about different approaches can really help you get the most out of whatever framework you use.

Event Delegation in Ember.JS – StackOverflow
When you use ng-click inside ng-repeat in Angular.JS, it doesn’t usually set one event handler for the parent of the element and use event bubbling to set it, although you can do it yourself via a directive. It was interesting to find out randomly via StackOverflow that event bubbling is how Ember.JS works by default!

Building rich single-page application with Ember.js
Historically, one of the things that stopped many people from learning Ember.JS was how hard it was to get to understand its pieces. This is now changing a lot (or may I say changed?) with better documentation and more great guides, like this one, which was very simple and lovely to browse.

JavaScript — ES6

Traceur is Awesome! … but still a little Painful
Don’t be turned off by the title. Traceur is a nice tool from Google to compile ES6 code to ES5 code that can run in any ES5 browser (most browsers, and even older ones can be polyfilled). This post describes what the experience is like when using it (.NET people might find using TypeScript a better option for its VS integration though, although it’s not not exactly ES6, you can sometimes go even crazier with some F# mix).

JavaScript — Debugging / Performance

Video: Advanced Debugging Techniques with Chrome
A must see video of what goodies exist in Google Chrome dev tools (including some of the relatively new features like new enhancements to emulation), this is probably a must-watch video for you. I have been using the tools for years and found quite a few things I didn’t know before.

JS Parse and Execution Time
When you use a framework (quite often you should), there’s only so much you can control in terms of performance. This article examines the time it takes to parse and execute jQuery on so many browsers and devices. It has some interesting observations, like how the total times vary like crazy between different devices, and how device hardware is still the major determinator is hardware rather than software (OS or browser).

Security – HTTPS

I think we are in the (very?) early days that will lead to all websites running HTTPS by default. Apart from privacy concerns, SCARY attacks, there’s also industry leaders push and relative ease of implementation. But it’s not something that everyone needs to worry about just yet.

SSL and SEO: Don’t Panic
There are a few messages that I want to send from sharing this:
1. Google announced they will consider SSL as one of its many ranking factors
2. This doesn’t mean you should freak out if you are not using SSL (the point of the link above)
3. But SSL is worth it anyway, as in most recent hardware and software (including IIS 8 and maybe 7.5) it’s already fast (the traditional old concern about SSL, apart from cost for tiny websites).

Slides: Is TLS fast yet?
If you are thinking about implementing HTTPS and worried about CPU performance, your server documentation documentation should tell you whether there are significant performance overhead (I checked some common ones and they were all saying nothing to worry about). This presentation helps assure the same idea.

Cloudflare – Introducing Universal SSL
The well known CDN provider Cloudflare announces availability of SSL services for all their plans, including their free plan. They serve files in HTTPS, and can be configured to pull assets (as source files to publish on the CDN) from HTTPS URLs as well. Here’s a basic write up of how to use it.

Security — General

Waxing Poetic with SwiftOnSecurity
I didn’t plan to make this newsletter mostly about security as it ended up being, but this story that reminds us of how some users can be so vulnerable in a way we can’t blame them for, is quite a good read.

Microsoft — Windows 10

Video: Windows 10: Enterprise Features & Core Experience for Businesses
You must have seen a ton of Windows 10 videos already, for me, this was pretty much the deepest one of them that related to me as a developer and showed the philosophy of the product.
One fun moment in the beginning of the video was giving a reason for the name, Windows 10 (instead of Windows 9), apart from considering Windows 8.1 as 9 (if you want) which the video didn’t suggest, it said that the main idea was calling it Windows One, similar to Xbox One and One Drive, etc. Windows One was taken as Windows 1, so they went for Windows 10! (if this is silly still – I think it was meant to be more funny than true-, I promise the rest of the video isn’t).

Video: Scott Hanselman Detailed Windows 10 Tour in just 8 Minutes
Scott is very well known in the ASP​.NET developer community as his work at Microsoft is mainly around that community and ASP​.NET MVPs, etc. He is a great person and speaker. His Windows videos are not something that he does for work, which makes them even greater and more realistic.

Windows 10 Insider Program / Preview
Just in case you missed the URL to get the technical preview! I have heard a few positive comments from some of those who played with it, especially on a Surface laptop (of course).

Apple / IPhone / iOS — Quick Links

iPhone 6 Screens Demystified
Also check their iPhone resolutions guide

iOS 8, thoroughly reviewed
Very long / detailed review

Video: Steve Jobs introduces WiFi to the masses with a hula hoop!

JavaScript — Quick Links

Promises in the Google APIs JavaScript Client Library
Google’s JavaScript SDK now return promises, for easier integration into promises-all-the-things!

Bye Bye Javascript Promises!
async/await like code in JS?

rcss.js
A JavaScript library to generate responsive stylesheets.

Explorations In Automatically Fixing JavaScript Linting-errors
By Addy Osmani from Google

Calculating Standard Deviation with Array.map and Array.reduce, In JavaScript
A bit of a different challenge

More from @Meligy / GuruStop

Thanks a lot for making it that far. If you like what I brought you, let’s connect in even more ways!

Follow me on twitter — @Meligy

Check The Newsletter Archive — https://www.gurustop.net/newsletter

Get friends to receive the newsletter — https://www.gurustop.net/newsletter/signup

Remember that you can just reply to this email or mention me on twitter to tell me what you feel needs to change in next issue.

Until then,

Meligy’s AngularJS and Web Dev Goodies – Issue 1

Hello there!
Welcome to the first issue of this Angular.JS and web-dev newsletter. The newsletter is going to be a weekly collection of programming related findings that I find interesting throughout the week.

As the first issue, and I knew a few of you have been on the list for more than a week. The links for today’s issue are going to be from my findings in the last couple of weeks.

The different sections and links are going to evolve in the coming issues. Maybe add more of this, less of that, merge/split things, etc. — You can tell me how you want the newsletter changed on twitter or by email.

Angular.JS — New & Hot

Angular.JS Changelog (New 1.2.x & 1.3.x Releases)
Did you know that there are 2 release candidates of Angular.JS 1.3 out already? RC0 and RC1. RC2 is very close to the corner too, and the last 1.2.x version is 1.2.24. Use the page to stay updated about Angular.JS version progress.

Adventures in Angular, The Podcast
A nice podcast just for Angular.JS stuff (co-hosted by John Papa). There’re 7 episodes out already with topics like the history of Angular.JS (1st episode, I bet more details than you know), how to learn it and teach it, running meetups for Angular.JS, build processes, etc. Each episode includes some special resources picks as well.

Angular.JS — Resources

Video: AngularJS Fundamentals In 60-ish Minutes
Oldie but a goodie! This is the main resource I give to everyone who wants to learn Angular.JS. Once you get all the main conecepts

Common Problems & Solutions When Using Select Elements With Angular.JS
If there is one small part of Angular.JS that’s completely missed up, it’s the select element directive and its corresponding ng-options. It’s very hard to do simple things like have an option pre-selected without having it replaced by an empty option you didn’t add in the 1st place. That’s why this post, which shows all the select problems solved with some non-well-known tricks is the most read post in my blog today (you can skip the video at the end).

AngularAgility
I’m not sure how popular this library is, but it can be quite useful if you are using forms a lot in Angular.JS. It generates form fields for you using Bootstrap styles, but you don’t have to use it this way. I only use one part of this library which is generating validation error labels, and showing them smartly. By smartly I mean showing error only when the field has been edited or the user tried to submit the form, etc. That’s where I find it very useful.

ng-book, The Book
From the same guy behind ng-newsletter articles, this seems to be the best Angular.JS currently available.

JavaScript — ECMAScript 6

Video: Douglas Crockford – The Better Parts
This video from April Douglas talks about ES 6 and other changes happening to JavaScript, and to his own opinions, like this alternative to object.create() that he now uses. It’s also such a fun video like other videos from Douglas usually are.

ECMAScript 6 modules: the final syntax
The final ECMAScript 6 modules syntax was agreed on in July this year. This post gives an overview of how modules work in ECMAScript 6. Pro Tip: Explore the blog when you are there, it’s a great JS source.

Collecting and Iterating, the ES6 Way
The post talks about collections in ES 6, but it also has several links to learning other areas of the language, and also to es6-shim.

JavaScript — Libraries

Flot Charts (JavaScript Library)
In my current project I needed to display a bar chart where bars show in green or gray based on some criteria. I needed IE 8 support so something like d3 wasn’t an option. Then I found Flot, and although the API was quite very verbose, I was able to achieve what I wanted. While I can’t share the project code, here’s the prototype I created to test it.

Node.JS

Learning Gulp
A nice visual tutorial for learning Gulp task runner.

ASP.NET

ASP.NET vNext Community Standup
ASP.NET team is working on a complete rewrite of the framework in the next version. It should be able to work on Mac in production, and have autocomplete in Sublime Text, use Grunt or Gulp to combine and minify CSS / JS. Scott Hanselman started a weekly Google Hangout with the team to show what they work on that week.

What is the significance of ASP.NET vNext? (Quick 6 points)
Whether you are someone who really likes or really dislikes ASP.NET as it is now, in this post I have a quick summary of why the new complete rewrite in next version should be really good.

Introducing Gulp, Grunt, Bower, and npm support for Visual Studio
Microsoft decided to stop making fights that make no sense. Most clinet-side libraries are on Bower package manager not Microsoft’s Nuget Package Manager, so, they decided to support that in Visual Studio, first as an extension to VS 2013, and then soon as part of the product in VS vNext. They also support Grunt / Gulp (so, they didn’t try to declare a winner). I talk about these plans in my blog as well.

Git

GitHub Flow Like a Pro with these 13 Git Aliases
A nice blog post by Phil Haack from Github on using git aliases when following Github flow.

Git pretty
A flow chart for showing which git commands you might want to use in different cases.

UI / Design

Grunt Email Design Workflow
A Grunt workflow for designing and testing HTML email templates with SCSS. I haven’t played with this myself (so no, it’s not used to produce this email), but it’s kinda promising. I already use SCSS and use PreMailer.NET to inline CSS in emails sent from the applications I develop.

UI Gradients
A nice tool for gradient hero content inspirations for any landing page you might be creating.

Design Tips for Developers
Since we devs ending up mocking with designs a lot of the time, these are targeted resources for helping with that.

More from @Meligy / GuruStop

Follow me on twitter — @Meligy

Check The Newsletter Archive — https://www.gurustop.net/newsletter

Get friends to receive the newsletter — https://www.gurustop.net/newsletter/signup