I try to keep up with web development trends but it’s hard to keep pace since it’s such a fast evolving field. Barely a week goes by without the release of a new JS framework, elaborate build tool or testing suite — all of them touted as the one to learn. Sorting the hype from the genuinely useful is no mean feat, so my aim in this article is to summarise some of the most interesting happenings that web development saw in the last year, and what trends we expect to see more of in 2019.
A technology or framework doesn’t have to be brand new to be on our list here, it just needs to be growing rapidly or evolving in an interesting way. Let’s take a look!
Looking Back on 2018: SPA, CSS Grid, and Speed
Single Page Applications (SPAs) saw a leap in popularity in 2018. A simple concept made possible by the power of modern Javascript, a SPA loads a page once then never reloads it or navigates to another page; instead, Javascript is used to manipulate the DOM and render new layouts in the browser. JSON data can be sent between the client and server, but the page behaves more like a desktop application than a “conventional” website. (Visit the websites of Gmail, Facebook, Apple and many more to see a SPA in action). It can provide a much snappier experience to the user and really transform the responsiveness of a site, but usually requires a sizeable chunk of code shipped to the browser. It’s an idea that’s been popular for a while but really saw a lot of developer engagement last year.
2018 also saw some long-awaited improvements to core web technologies. It’s fair to say that when HTML and CSS were conceived, they were not designed to handle the modern web. Hence, CSS preprocessors and libraries are rife, because they provide a more abstract, convenient interface to create and layout UIs. Bootstrap, the most popular front-end library, has a grid system which has been widely used to easily position content for years. 2018 brought the widespread adoption of a native CSS grid, supported by all major browsers; a big deal for headache-free aligning.
Something that was really taken to heart last year was how much mobile users care about page-load speed. In fact, Google even started including this in its ranking algorithms for search. Additionally, its “Open Source” Accelerated Mobile Pages (AMP) project continues to be popular but controversial for the amount of control Google has over it.
Expected in 2019 on the Backend:
First, let’s talk about some of the backend/server-side changes we can expect to see, before moving onto front-end technologies.
Containers
Ok, so this one certainly isn’t a new idea, but it’s a technology which is growing so fast that it’s impossible to ignore. These days, rapid deployment is the name of the game, which means your backend/server needs a consistent, repeatable environment. The goals of this is to make development, testing, and production seamless.
Containers also provide an awesome amount of modularity, which makes both development and maintenance very easy. Want separate containers for your application, database, compute workers and Redis? No problem; in fact, it’s encouraged. This makes it super simple to switch out different modules and scale your service as required.
Docker is, of course, the most popular platform for containerisation. I love using it and wrote a guide to Docker and containers if you’re curious about what’s under the hood.
Serverless
Closely linked to containers is serverless computing, and this is perhaps the biggest change that’s happening right now in terms of how websites and applications are deployed.
Serverless computing allows you to write and deploy code without ever touching the underlying infrastructure. Anyone who has deployed a website after manually setting up servers, load balancers, etc knows how much time configuring infrastructure can take away from time developing the app/website itself.
Serverless code is written as a number of independent “functions”, which are all event-driven. Each of these modules runs only when triggered, spinning down when not in use. The beauty of this is that you only pay your serverless provider for the computation which takes place: it’s effectively pay-as-you-go. If your site has a quiet period, you pay very little. But if you experience a sudden surge in demand, it’s very easy to scale your service by simply adding hundreds or thousands more module instances on the fly.
Ultimately, it makes it possible to scale your provisioning by network-usage, CPU or memory instead of units of “a new server”. On-demand computing is great for technical efficiency and maintenance, and it makes economic sense as well. 2019 is set to be an exciting year for new heights of adoption, as well as open-source serverless technology like OpenFaaS.
On the Frontend in the Coming Year:
Cool, those are some of the backend trends I expect to see, what about the front-end?
The web app becomes more modular by the day
There’s a reason that front-end development frameworks like Angular and React are so popular, and for the most part, it comes down to modularity. Writing large, monolithic files of HTML and JS, makes for code which is difficult to re-use between pages, slow to re-factor, and horrible to unit test. Instead, why not use a framework to create components, each with its own styling and scripting, and defined inputs and outputs. Not only does this make it incredibly easy to use the same building blocks again and again, but the codebase also becomes far easier to understand and plug into a test suite.
The reason I mention this is that there’s a new framework on the block which implements the component model so well that it’s enjoyed amazing growth in 2018.
Vue.js
Vue’s remarkable recent success will only continue. It’s done so well because it implements exactly what developers want, in a very lightweight package (see this size comparison with other mainstream frameworks). Its recent growth is a good indicator of where it’s going this year.
If you’re looking to improve your front-end development skills and haven’t learned Vue yet, it’s a solid place to start in 2019.
Is this the death of server-side rendering?
Ten years ago, the standard way to create a website was to render all the files server-side before sending them to the browser, using technologies like PHP and ASP.NET. Then Javascript frameworks/libraries started showing up, first slowly, then in a deluge. More and more parts of web applications shifted client-side, until we arrive at today, where it’s common practice to create a Single Page Application entirely in the browser.
That doesn’t mean that server-side rendering isn’t used today, far from it; many new applications continue to use it because it fits well with their requirements. Server-side rendering is well suited to largely static sites, as well as being great for SEO out of the box. On the whole, the decision between server-side and client-side rendering is a complex balance depending on network speed, the type of dynamic/interactive content on the site, and many more factors.
What does that mean for the future? Whilst server-side rendering is conceding ground today, it’s still a good fit for a large number of use cases; it’s not going anywhere for now.
Progressive Web Apps (PWA)
There are some interesting statistics on apps vs websites on mobile devices. Whilst mobile sites receive about 12x as many visitors as apps, users spend roughly 20x longer on apps than mobile sites. What if there was a way to get the user engagement of an app without the friction of installing one?
A Progressive Web App, or PWA, is simply a term for a website which fulfills a set of requirements and best practices, predominantly for mobile use. PWAs should load reliably and load fast, with snappy navigation and identical feel to a native app. They are designed to be added to the home screen of mobile devices and are capable of operating offline.
Google turns out to be a big fan of PWAs; Chrome will automatically prompt users to add a website to their mobile home screen if it meets the PWA criteria. They also created an open source tool, Lighthouse, for auditing your site to PWA standards and integrating into CI workflows.
Prove Me Wrong, 2019
2019 is set to be an interesting year for web developers and users, with exciting technologies at the front-end and back-end. If you have any predictions, be sure to leave them in the comments, we’d love to hear what you think. And of course, I’ll be coming back to this thread in a year to see if we got it right!
I rarely log in just to say “great article”, but today I’m making an exception.
Very good summary.
Agreed. Having had first hand experience of most all of the topics this year it really resonated with me was great to summarise.
I predict a few dozen security vulnerabilities in NPM packages, 5 new frameworks, WebAssembly will finally save us from javascript, except everyone will be using bloated WASM binaries so we’ll be downloading 100mb websites all day. Thousands of job posts for 10x web developers will be posted, and the companies posting them will get exactly what they deserve.
Also, I hang out on r/programmingcirclejerk and you should too >.>
I had a very bad opinion of JS me too (before ES6). But now, it evolve to a good way and is very powerful. You can make classes, use promises, make amazing things with nodeJs and is very clean with async programming… It is not yet perfect, for sure but it is better and better.
I’d argue that SPAs exploded in popularity between 2014-2016, they aren’t a 2018 thing. Certainly there are new frameworks being released, which is increasing the popularity further, but they were widely used before 2018. If anything the initial hype has slowed now people realise they are much harder for SEO (although I haven’t checked how well the latest frameworks support AJAX crawling etc) and initial page load speeds.
More needless cross site scripting haemmoraging data about the site visitors and/or being bandwidth hogs and security weak links.
Oh, and let’s not forget dumb website trends like using kitsch ms word fonts, roundifying images for no good reason and white everything that isn’t content, ontop of making them portrait view focused.
What do you guys think of rust and wasm for 2k19 ?
certainly the most moral choice
I think Golang will be more successful than Rust. The people that would gladly put up with the tooling of Rust are probably the people that are writing high quality C/C++ code right now so they don’t need it as much.
Wasm will make headway, Rust… probably not, more likely to see Python -> WASM instead.
Ohh javascript, yes, of course:
https://hackernoon.com/how-it-feels-to-learn-javascript-in-2016-d3a717dd577f
Go replace 2016 by 2019 and whatever dead framework in the blog post by Vue.js and 3 yrs later is more or less the same mess.
I a slightly better world, reliance on frameworks will drop and people will start to understand that it is the data that matters, not the platform or the language. WebASM? JS? CSS? Ruby? It is all fine, perfectly usable. Just do not Jerry-rig together a Mongolian cluster fuck of various frameworks.
Start BUILDING things again instead of “assembling” them.
+1
^this.
Could you point me, as a new programmer learning JS and C++, towards any articles, books, or online tutorials to think this way and build better code? I want to plan my career and passion well instead of just hoping on trend bandwagons. We could also email / converse if you’re open! Thank you.
I won’t use native apps on my phone because they have much freer access to my private data than web sites. No wonder so many organizations want you to install an app. I don’t know anything about PWA but if Google is keen on it that doesn’t bode well…
sometimes websites have more access to your personal data than native apps do. Go look at all of the permissions that your browser has, those are all the permissions that the websites have to your personal information. Hot tip: most “apps” are just PWA’s now a days, especially the banking and account management ones.
Mentioning angular and react in one sentence is a bit of pain to me. React is nothing without redux and only a simple frontend rendering. Angular came a long way from the days of angularJs and is a full blown framework and probably the single most powerful of them out of the box.
What’s new in web development for 2019 for me is me happily getting out of the business of web development.
Hello. Could you share with me the code that you wrote. I will share with you my display technology. I really need this code.
thank you in advance.
https://chrismillerstuff.com/2015/09/22/creating-a-1-meter-rgb-pov-display-with-raspberry-pi-and-lpd8806/#
I live in Russia and in our country it is very difficult to find a developer of your level. I would be grateful if you respond to my message. As soon as I complete my project I will send it to you.
Containers just don’t do it for me, just another layer on top of your hardware, especially with the modern (and good) trend to virtualisation.
You are effectively running a system (container) within a system (instance OS) within a virtual hardware (instance) within a system (host OS) within a physical hardware (host)…
The more layers you add, the more complexity and places for things to go wrong.
Very true. Those people touting container usage apparently don’t understand that one gets performance by removing layers, not by adding ones. Want faster database access? Move it from somewhere-on-the-internet or container-next-door to localhost.
That said, we’ll undoubtly see CLWA (ContainerLess Web Applications) hyped later this year or next year. Web development is a lot about reinventing the wheel.
That’s not really containers though… containers are more like a chroot in the original hardware, with everything statically linked. Semi-virtual view of the filesystem, but no virtual hardware involved.
I was making predictions the other day for a fun thing at work, and PWA’s was my number one. I think they’ll make big inroads this year. The tech is finally there.
PWA <3
New year in web development = new megabytes of bloat and less content on usual page. You can be sure that “modern webpage” with few lines of text and some picture will be unusable on for example dual-core device with 1GB of RAM
Agreed
Well the “utility” that’s the internet already requires a bigger highway to carry all that necessary information.
I also expect client side virtualization. It’s unavoidable consequence of WebASM popularity rise – next step of “serverless” architecture will be downloading and running servers (with their own OSes) on client machines
did someone mention websockets? Yeah, I am still on the cutting edge.
What do you want more about WS? You already make reliable and well managed realtme communications with Socket.IO
Websockets are cool, we are just looking for an application
An application? Anything which needs realtime communication :)
For exemple : https://www.youtube.com/watch?v=WTF_jCOgcfI
does anyone know it the syntax highlighting on the first image was an ATOM plugin? that’s my editor. but I love the colors in that image, looks perfect.
I might be a dinosaur but I’m just glad that “script src integrity crossorigin” now means that UAs can cache jQuery between sites because I no longer have to serve it locally for security reasons.
What is the advantage of using SPA? A disadvantage seems to be that it makes the browser use of forward and backward paging as well as bookmarking difficult.
You can solve that easily, if you want to. Other than end-user experience and other reasons, a personal reason: it makes navigation and development in general so much easier. Clicking around to get back to the thing you were working on is terrible…
If it’s an action that is idempotent analogous to a GET then use an anchor like “#action”, which can be bookmarked and navigated forward and backward to
I hope stores will finally accept PWA, NodeJS will be better for Iot (low.js), and JS will continue to evolve (private methods in classes please :s).
Oh, you forgot one thing: Chrome is the new IE6: on several occasions heard of sites only working in chrome. :(
For no good reason…
Chrome is the first one to implement latest RFC, that’s a huge difference.
They do a lot more than just that…
The day of the 3D Javascript rendering? https://threejs.org/
Meanwhile I have to scrape HAD to find my comments..
Shouldn’t Google find them for you?
not chronologically or recent comments
I expect adblocking to become more entertaining
Is there anyone here with more experience in development, I am trying to setup a social network.
There is Scuttlebutt https://www.scuttlebutt.nz/ and there is RetroShare https://retroshareteam.wordpress.com/ .
Thank You. Appreciate it very much.
Nice twist to read about web development in hackaday :) I have a small website where I put links that I found interesting about web development. Check it out if you are into that thing https://www.devbests.com
Noice!
Especially the Progressive Web Apps(PWA), it has a huge contribution to the upcoming web development field.
Your article was incredibly helpful, but what I found way more incredible is your research with the web development. I just visited for the first time last month and am still in awe and mesmerization. Thanks for the article! And keep up the traveling! ????
A web app would be able to maintain its place from one year to another only when it captures the developments and makes itself appear new. So the features of the serverless web computing are definitely great and shall include it in my work.
Nicely written, Well my stakes are on Progressive Web Apps (PWA) since people have don’t time to install & check the apps
Great share and PWA is looking most in demand.
Never thought I’d see the day that server-side rendering kicked the bucket, but I suppose it only makes sense from a cost perspective.
Software Development IT Company in Noida | 0120-4380777
Aanaxagorasr is a proven custom software development company that helps startups and enterprises build quality software to achieve growth and scale. Our advisors give you free advice to concern the software. If you need any help regarding software development and maintenance you can directly contact our advisor. Aanaxagorasr contact no. is 0120-4380777.
https://aanaxagorasr.com/software-development.php
Yeah, I also think about server side rendering website, one of my client website is on react and really difficult to crawl it by bot. As react don’t provide server side rendering and effects the SEO of the website.
In 2023, there are more technologies on the list