Brad Green spent some time discussing how Google as a company is fully embracing Angular as an application development framework. In fact, the goal is to have all web application development within Google to be using Angular by the end of 2017. He also explained that it makes sense for them to invest so many resources into Angular as an open-source project because of the additional benefits to Google itself. The primary benefit is the large ecosystem that has grown around Angular. Libraries and tools would probably not exist if Angular was simply an internal Google project. In addition, Google has built several tools internally that have been reproduced in other open-source projects. It makes sense that there is benefit to sharing these efforts with the community. It also helps with hiring within Google, where proprietary in-house tools require additional training and ramp-up for new hires. And, of course, the overall quality of the source code is improved by the great feedback received from the community through PRs, documentation, and training.
Last week, Wintellect held a live coding Python webinar presented by Michael Kennedy, host of the TalkPython and PythonBytes podcasts. Michael provided a live coding session showing Python examples for:
Using these best features and best practices of the Python language, attendees learned how to write more efficient and readable code which will also enable them to pick up other Python libraries more quickly.
StackOverflow’s 2017 Developer Survey Results has shown Python’s popularity has shot up 50% in the past 5 years. Python was also the most wanted language at 20.6%, meaning the language that developers want to use in 2017 after ranking 4th last year. We also found with polling during the webinar most of our audience at 53% had .NET/C# backgrounds and only 55% had a basic script knowledge of Python but were interested in learning the language and planned to use it this year.
The 1-hour webinar was followed by a 1/2-hour live Q & A session where attendees could ask Michael more questions about what they learned in the presentation or other questions about Python.… Read more
Day Two changes things up from the Day One and Day Three single-track format. There are breakout sessions focused on a specific topic as well as chances to sit down and ask questions of others who have expertise in Angular, including members of the Angular team themselves. It’s a good chance to listen to how others are approaching their development challenges and opportunity to discuss lots of interesting details in depth.
The first session of the day had a few large organizations talk about the things they are doing within their organization to manage Angular projects, how they approach analyzing the performance of these applications, and what kinds of things might help them improve these operations.
In terms of analysis, there was a great emphasis on metrics (“plan and measure”). This included low level tracking of “time to first paint”, “time to meaningful content”, and “time to interactive”. But it also included higher-level tracking of things like “perceived performance” (obtaining feedback about how the user perceives the performance of the application).
Tools were mentioned that help in this analysis. The primary tool, of course, is the Developer Tools within the browser (there was a lot of praise for the capabilities of Chrome Developer tools particularly).… Read more
I’m glad to be back again at ng-conf in Salt Lake City. I’ve used Angular since the very beginning and it continues to get better. Here are some of the highlights that stood out to me from the first day of the conference.
During the keynote, there was discussion about gauging the success of Angular. They estimated that the community is around 1.3 million users of AngularJS (version 1 of the framework) and 810 thousand users of Angular (versions 2 and 4 of the framework, they skipped version 3). Of all the applications out there, about 90% of them are internal applications (ones we can’t see because they are behind the corporate firewall). 17% of the public Angular applications are already on version 4 of the framework.
There are over 200 applications internal to Google that are using the framework. These applications serve as an initial test bed for all updates of the framework, helping to ensure smooth updates to new versions.
Version 4, released a short time ago, has some great improvements in performance and the size of payloads. The team worked hard to ensure that upgrades went smoothly and there were no breaking changes in the framework APIs.… Read more
On Thursday Wintellect held a live hand’s-on webinar on Xamarin mobile development for building cross-platform apps including IOS, Android and Windows Devices. The agenda included an interactive and coding presentation from Jason Bell, including the mobile landscape and development options, the Xamarin development platform, Xamarin application architectural options and building shared application components.
After a couple of requests, I added WiX 4.0 support to my Paraffin project, the file harvester, which makes maintaining installer projects a lot easier. As part of this update, I moved the code to Visual Studio 2017 and moved to .NET Framework 4.6.2. I nearly went down the path of making a .NET Core version of the console application, but will save that for another day.
Instead of rehashing the scope and purpose of Paraffin here, head over to your favorite search engine and search “Wintellect Paraffin” and you will find all the links that show how to use it. Also, if you don’t want to mess with compiling the application, head on over to the Releases tab page on the Git Hub project page and you can download the compiled binary along with it’s PDB file.
Thanks so much for using Paraffin! Who knew that a quick sample I wrote to learn about LINQ to XML would grow into a useful utility.… Read more
In this week’s Introduction to GraphQL & Relay webinar attendees learned how GraphQL could help improve upon Rest Services by allowing them to view data as a graph. This data can also be queried to serve data in the shape and amount needed by the consumer. Relay was also introduced showing how it is a great framework for React applications to consume GraphQL services.
Through polling we found most attendees hadn’t used GraphQL so it was a very informative session for the audience to understand the benefits and how to use it. After reviewing the GraphQL code there was a live demo to experiment with the code followed by a demonstration of Relay and a final code review. We ended the session with a live Q & A so the audience could ask any questions regarding the topics discussed.
Eric covered the differences between Angular 1 and 2 as well as a live coding session for the essentials of building components, building templates, data binding and handling events.
We have a new version of Visual Studio coming soon so I did the work to update my WintellectPowerShell module to support it. And, what a huge adventure that turned out to be! I will discuss why its support for Visual Studio 2017 was hard a bit later in this blog entry. For those of you who are new to WintellectPowerShell, it is a module that brings a number of useful cmdlets for setting up symbol and source servers for Visual Studio 2013-2017 as well as WinDBG. Other cmdlets automatically download and extract all the lovely goodness of the SysInternal tools, automate the analysis of lots of minidump files, and so on. The module has been helpful to me over the years. You can look at all the source code on GitHub: https://github.com/Wintellect/WintellectPowerShell. To install WintellectPowerShell directly, execute the following command in PowerShell:
If you have a previous version of WintellectPowerShell installed, you will see an ‘Authenticode issuer’ error when you try to update. The error is because since I last released a WintellectPowerShell build, my code signing certificate needed to be renewed. When PowerShellGet does checks a signed module, it checks all the certificate fields.… Read more
Having end-to-end tests and running them locally can definitely be beneficial, but one of the main reasons to have them is to run them automatically during a nightly build. Getting these tests to run in Visual Studio Team Services isn’t trivial. Here’s some tips on how to get them going.
When first setting up a build for your Spectron tests all the build definitions need to be manually entered. However, the first step is to actually specify what repository you want to use. This gets set when you start your first build definition.
Select the “Empty” template when the dialog pops up.
From there you can then choose what repository you want to from VSTS or even choose a repository from GitHub.
Here we can set up our steps to have our tests run. If you recall from our [first post on Spectron with our demo project I set up an
npm run script to run our tests. In this case, we only have two tasks to create for our build definition:
So the easy part is done. I only say that, though, because this next part was a bit tricky and wasn’t very well documented on what to do to get these types of tests to run.… Read more