Web development has got to be included in one of the fastest-changing sectors in the world. Trends come and go faster than you can blink. I wanted to learn AngularJs and had it on my to-do list last year. Before I got around to mastering it, AngularJS 2 was released in beta. AngularJS 2 is a big change and it will make learning AngularJS defunct. Technology changes so fast it's impossible to keep up. This is why we need to try and predict the future and guess where trends will occur. All of us only have so many hours in a day. Your aim should be to focus your energy on skills that will last over time. In this article, I will share my predictions about what technologies will trend in 2017.
.NET and Linux
At Connect 2016, Microsoft announced the upcoming partnership it has made with the Linux Foundation. This new partnership combined with the latest releases of Visual Studio that will work on MACs and Linux shows the first glimpses of a potentially fundamental shift in how Microsoft technologies, like C# and ASP.NET, could be developed. Take .NET CMS development, if CMS software like Umbraco CMS, or, Episerver CMS can get around to supporting .NET Core, the way we think about hosting websites will change. The decision will no longer just be between an on-prem Windows server, or, Azure.
Linux could be a serious consideration. Using Linux could save a company thousands per year on hosting. Companies that traditionally would only consider software that was open-source, or would only run on their existing Linux boxes, will now be able to consider .NET as a language to solve their needs. This should create a lot of extra work and opportunities for developers who know .NET. .NET powered CMS systems will be able to compete with Java CMS systems. They will be able to sell to a larger market share. .NET developers who only know IIS may need to dust off their Linux books, otherwise, they could have limited job opportunities in the future.
Things like caching, security, deployment, testing etc.. could massively change depending on which environment you want to host with. As Linux boxes are cheaper to run than their MS counterparts, I'm assuming a lot of clients will want to use Linux boxes to host their websites. How quickly the CMS companies will provide support for this is still unknown, however, this is something that will happen in the future.
I've written favourably about Umbraco Cloud before (here). As a relatively new offering, I think it's pretty great. Over 2017, I think Umbraco Cloud will gain more momentum and more clients will start to use it. With the price tag and ease of setting up, I think UmbracoCMS will start to be a consideration to people who would have ruled it as. You no longer need a full-time developer to manage your Umbraco site! Umbraco Cloud should help bridge the gap for people who are considering WordPress. For a relatively small cost, having dedicated hosting and not having the pains of shared WordPress hosting makes Umbraco even more favourable. For large organizations that have in-house developers that know Azure, I don't think Umbraco Cloud provides that much more benefit. For smaller clients, I definitely think this is a game-changer.
Less Server Side Code/More Front-end Code
Over the last few years, more and more code and logic are being stripped out of the backend and being replaced by an API and some front-end code to access it. For most organisations, decoupling their website to use a micro-service/SOA architecture is a no-brainer. Deployments become less risky as you only need to release a single service, not a whole application. It makes future maintenance easier as well. If you want to replace a feature or a service provider, things are easier as the changes are made in small isolated pockets. If you look at the open tickets being raised at Stackoverflow and you can see frameworks like ReactJs, EmberJs, and AngularJs are dramatically increasing.
I've heard distant rumours that some of the CMS providers are considering moving to an API based service, rather than CMS access via traditional back-end code. These new CMS systems will be known to work in a headless CMS configuration. In headless CMS, websites could be rendered as single-page apps and all page data is populated from JS. Keystone JS, is one of the first JS only CMS systems available. Over 2017 I think this is a definite trend that will continue to grow. If you've come from a classic back-end server-side development history, then this is the year that you need to add learning a JS framework into your new year's resolutions. The longer you put this off, the more behind the curve you'll be.
HTTP2 will carry on getting more adoption over 2017. As of writing, Azure still doesn't support HTTP2 and the only way for a .NET website to leverage it is to use traditional hosting with Windows Server 2016. Most companies will wait until they upgrade their websites until they upgrade their infrastructure. As more companies start adopting HTTP2 this will bring a change in architecture.
For those who don't know the reason why HTTP2 was introduced, let me explain. HTTP2 was released to overcome a limitation of HTTP. Traditional HTTP requests only allow for synchronous calls. Due to this limitation, over the past few years, the focus was to combine CSS files, combine JS files etc... to reduce the number of requests a page had to make. In the future, as websites will work faster with smaller/multi-files, how CSS and JS will need to be tweaked. Using HTTP2 will allow a website to download more assets asynchronously. A web page that downloads multiple assets may cause race conditions, however, things like the
defer attribute can be leveraged to get around this. In the future, life will be about small and loading what's needed, compared to monolithic files.
Video Becomes King
Web trends aren't all about the heavy tech and programming languages. To launch and maintain a popular website, you need to have good content. In terms of content, it seems a lot of focus is being put on video at the moment. Over the past 6 months, I've had at least 10 video agencies contact me, to see if I needed any video content.
Looking at the latest Adode web trends report, video content is ranked highly in their list. I'm guessing as an industry this trend will continue to grow. They say a picture paints a thousand words, however, a video does that tenfold. A video is nothing new, but with continual advances in things like fibre-optic broadband and 4g, embedding video content on a site is more feasible.
All of us watch TV as it's a great medium, useful for story-telling and getting a message across quickly. Video has several advantages over written content. People can listen to your website as a background task. Hubspot, a leading online marketing company has gone so far as to predict that by 2018, 79% of all internet traffic will be video. Video also makes perfect sense for mobile. When you have a small screen, instead of having to scroll and squint to read content, a full-screen video is easier to get a message across. If you’re not convinced that video is the way to go for 2017, you may have to re-think your strategy, or face falling behind!
This sums up my predictions. Do you agree? Leave your comments below! Happy Coding 🤘