This is Meligy from GuruStop.NET, and this is a special letter celebrating Angular 4.2… Actually, Angular 4.2.1 already!
Let’s see what good content I have found on the Internet since last letter, that you should find super useful as well. Of course it’s not just going to be about Angular, but also AWS, Node, .NET Core, and more…
Reading through the post, I think the most exciting features for me are the new fake async helpers for tests, allowing to test async code while not having to wait for real
setTimeout() calls, etc, which helps tests run faster! There’re also enhancements for animations, and more features relying on TypeScript 2.3+ strict features.
The Angular usergroup I run in Sydney is experimenting with recording sessions simply by using a mobile phone. While there’s a lot of room for improvements, this approach allowed capturing some very good content. Like a session about Angular 4 from an official Angular team member in April, and these sessions from May:
Amazon AWS Getting Started
If you are like me, you might have heard several people talk about AWS.
Everything is going to the cloud, and Amazon is the biggest player in this field. But how do you get started? What would you build in the first place? Would you use Angular for it? And once it’s ready, how do you get it to the cloud?
Well, that’s exactly what this video talks about!
The speaker’s challenge was quite the opposite. She is fairly comfortable with AWS, and still learning Angular. So, she decided to build herself a new personal website to show her work and more. She used Angular and the Angular CLI, and of course she deployed it to AWS.
In the video, she explains why this is a good idea you should try too, and goes through all the different options that make sense for getting started, with demos covering both Amazon CLI tools and UI console.
She also wrote a very good tutorial on how to do it, with a lot of links to learn about specific topics. Highly recommended.
I’m referring to it myself to learn this stuff.
Angular Modules & Lazy Loading
In this video by Aliaksei Kuncevic, an Angular expert, and a frequent ng-sydney attendee and speaker, we go into the lesser known official Angular guidance around Core Modules, Feature Modules, and structuring your real world Angular projects.
It covers even less known tools that help you analyse the size of the JS files that tools like Webpack etc generate, to see what JS modules take up the most space and make them big. He shows some interesting cases with RxJS, lodash, momentJS, and other libraries.
You might also want to check my earlier very quick blog post on shared modules.
While still a pre-release version, which you can npm install as
typescript@next, TypeScript 2.4 is already some awesome features that I’d love to mention here. Also it doesn’t seem to pose any breaking changes that prevent you from experimenting with it in your Angular 4+ projects (which officially support TypeScript 2.3 already).
The first feature, as explained in wiki, is native support for lazy-loaded imports, which promises to make lazy loading much easier in future applications (although will probably need to wait for tools like Webpack to support fully).
This is going to be a big deal soon I hope, as now people often rely on complex solutions for lazy loading that’s often encapsulated by routing tools (like Angular CLI routing support) because it’s just too much.
There’s also better type inference all over the place. That’s something you can take advantage of today, and it basically means less places where you don’t have to specify the types manually thinking “Grr.. the compiler should’ve known that by itself already”, and still get proper typing support.
If you are not familiar with what’s new in TypeScript 2.3 itself, or other earlier versions, check the same wiki page, What’s new in TypeScript, which explains almost all the TypeScript features as of the versions they were added to the language, and also explain what real world scenario tempted the team to add each feature, and how you case use it for your own uses.
Node & Build Tools
Node 8 & Canary
In case you missed the news, Node 8 is a final release now. This is an important update mainly because it’s an even number release, which in Node ecosystem means after a few more minor versions, it’ll become the next Long Term Support “LTS” release, most suitable for production apps (Node 8.1 is already out!).
It also includes some performance improvements, and new APIs. Although most of the new APIs are low level ones, this means that as native modules etc start relying on them, more and more tools will require moving to Node 8. Luckily, it doesn’t seem to break anything noticeable if you are already using Node 6.
And in other news, there’s also a Node Canary release channel, which uses the most bleeding edge version of Chrome’s V8 engine!
The biggest feature of the release IMO is much faster package installs (comparable to Yarn), Using
--save by default (like, err, Yarn), and better
npm link workflows for open source developers (not the same as Yarn, but this area is not ideal with all current tools anyway, and only affects those who play with non releases open source tools).
And yes, no surprises, should be a straightforward update from NPM 4, with a single exception that you’ll NPM local package cache will be cleared, but the speed of installs should make up for that anyway.
Although not final yet, Webpack 3 seems to be moving fast. For the vast majority of us, it’s going to be a mostly backwards compatible version with Webpack 2 that gives us free performance and saves all the time we spend waiting for the build to finish!
For plugin creators, there might be a bit more fiddling. If you are using the Angular CLI, they arealready working on a version that works with Webpack 3.
.NET Fringe Conference Videos
One thing to love about .NET is that no matter what time of the year it is, there’s always some good .NET conference going on! This time it’s .NET Fringe.
[Video List]: .NET Fringe 2017 Conference Videos
The conference took place a few days ago, and the videos area already available. There’re many good topics like this and this on Open Source in .NET, this on what on earth does .NET Standard mean, this on whether Mono is dead, this on DotNetCoreKoans C# exercises, this about the A Wider .NET initiative, and a lot more.
There are many lightning talks as well. They don’t have the titles in the YouTube list for these unfortunately, but the entire channel is worth browsing.
Other Worthy Content
[Article] MSDN Blogs: Performance Improvements in .NET Core
Performance is obviously a big thing in .NET Core, and this details some of the specifics.
[Opinion] The Coming .NET Renaissance
While there’s some crazy fun with .NET Core versioning and tutorials and all, it seems to be all for the good. Or is it?
[Article] Scott Hanselman: .NET and Docker
A lot of the docker tutorials around .NET focus on Visual Studio integration etc. This one covers a wider view, including realistic production workflows.
Gotta Stop Here…
Alright, there’re many more things I’d like to share with you here, but then the email would go forever, and a lot of the really good things here would be lost. So, gotta stop somewhere.
Feel free to reply directly to this email and tell me which resource you liked the most, and what topics you’d rather I mention or reference more info about in the next letter to make it more useful for you.