Weekly developer news – September 29th 2017

So, this is a different kind of post, and something I’ve been thinking of trying for a while.

At the moment, this is something I want to trial, and if people find this useful will continue to do this.

As part of my consulting work and teaching work I do with developers and development teams, I feel it’s vital that I stay on top of advanced in our industry.

Most technology developments are things that I just need to be aware of. Some are ones that I need to dig into more details with, and others are things that I go deep on, and adopt in my own work, or work I do with clients.

So in this series, I will summarise my own research and comment on what I feel are the top 5 most interesting developments, updates, and articles from the past week in software development.

So, without further ado, here we go:

1 : ReactJS Updates

After huge amounts of criticism and concern, React JS has switched license from BSD + Patents to MIT license in version 15.6.2, and also released a newer v16.0 build with some new features.

In v16.0, they describe the changes as “some long-standing feature requests, including fragments, error boundaries, portals, support for custom DOM attributes, improved server-side rendering, and reduced file size.”

To be honest, I think most developers are going to be more interested in the licence change than the new feature set, though it’s good to see development continue.

If the previous license had you concerned, and planning switching to alternative frameworks, how do you feel know about the future of React? Do you now feel happy to continue using it?

For more details on this, checkout the react blog

2: Firefox Quantum

Mozilla has announced a beta of Firefox Quantum. This is a new Firefox build that includes what they describe as a completely reinvented modernized engine, offering significantly fast performance.

I know many developers that used to be Firefox fans switched long ago to Chrome, and also Safari for some, mainly due to performance, but also due to Firefox feeling dated.

What are your favourite browsers for development / general browsing? It will be interesting to see if the speed improvements are worth it, and lead to more of us going back to Firefox.

More details on their announcement are available on their site.

3 : New Alexa hardware and SDKs

Amazon has announced new Alexa hardware, including compact echo that includes a screen, plus Alex gadgets, a way to interact with all new Alex buttons, plus also build your own hardware that can interact with Alexa.

You can see more details on their development blog.

A link on the blog allows you to register to be notified when these new SDKs are available to use.

For me, Alexa, and audio interaction is something that I am keeping an eye on, and may also be releasing something on shortly.

As a developer, what’s your opinion on Alexa / voice interaction? Is this something you are building for now, or looking to do in future?

4 : TypeScript at Lyft

If you aren’t already aware, TypeScript is a superset of JavaScript that adds optional static typing to the language.

This comprehensive article from the engineering team at Lyft gives a good breakdown of their motivations for choosing TypeScript over plain JavaScript, as well as FlowType as well as digs into details of how they went about this and the benefits they have seen.

I know for me, even though I tend to stick with vanilla JS over TypeScript, given I tend to use Visual Studio Code for editing, I see the benefits of TypeScript day to day, purely through the autocompletions and hints the IDE provides based on TypeScript definitions.

5 : Unit testing Postgres

Simon McClive has written a really interesting article detailing an approach to unit testing changes at the database level.

If you are working with databases of any reasonable complexity, the schema will change over time, and his approach seems like a great way to introduce testing at that level.

For me this is something I would adopt in addition to many other types of tests, but it seems like this would be very valuable as a way to catch errors before any end to end tests ran, which at best, even if they do spot issues are likely to result in high level application errors that need to be debugged.

So that’s it for this first post of this type. I’m comitting to doing this weekly for the next 4 weeks, and if people find it useful am happy to continue further.

If you have any feedback at all, then please do let me know.

Leave a Reply