That’s it! 2020 is over and it's time for me to share my trending topics of the past year.
Here is the list of technologies about which I spent a lot of time reading, watching videos or listening to podcasts. It does not include all technologies I worked with but only the main, those at the heart of my tech watch.
For sure my top 1! 🏆
I've been very interested in Svelte for two years now, in fact since the release of version 3. I like the syntax, the simplicity and the technological choices that have been made, mainly to improve the developer's experience. I also like the way it grows and the emulation that surrounds it. The community is great and growing every day. Just take a look at the discord server ;)
I spent a lot of time working with Svelte on side projects and also in the Svelte source code! I really enjoyed diving deep into it and discovering how a project like this is built. Obviously, it also helps me a lot to understand how it works and makes me appreciate the project even more.
During this year, I also wrote and spoke about Svelte :
- 📝/🏴 Svelte, why so much hype ?
- 🗣️/🇫🇷 Svelte, pourquoi tant de hype ?
- 🗣️/🇫🇷 Svelte, le framework qui sauve les bébés phoque
I even organized with my colleague Karine Sabatier the French chapter of the Svelte Society Day in september. It was such a great event and so fun to organize! We held a 4-hour event with 11 talks for the Svelte's French-speaking community and even a quick video in French from Rich Harris himself, the creator of Svelte! 😍
The release of Vue.js 3 has been for me one of the best news in the front-end ecosystem this year! There are so many great features that make me love the project more than I did in the past: reactivity, composition API, multiple v-model, Suspens, Portal, ...
The project is still led by Evan You -who is still at the cutting edge- always looking for improvements for the framework he created 6 years ago.
Moreover, he seems to be inspired by Svelte (see RFC#222, RFC#227, RFC#228). Based on the feedback from the community, this could be quite controversial but to me it's good news because it might beautify the syntax.
Part of the Vue.js ecosystem, Nuxt.js is a framework built on top of Vue.js that allows Server Side Rendering and Static Site Generation.
Server-side techniques are becoming more and more important in the web ecosystem for obvious performance reasons. And when it comes to optimizing web performance, here I am! I think that frameworks like this one, that care about performance without neglecting the developers experience push the web in the right direction. That's why I tried Nuxt.js this year. I loved it and can't wait for version 3! By the way, you can watch this video, the State of Nuxt, if you want information about Nuxt v3.
Year after year, it's still a subject which is at the heart of my tech watch. I have worked with them a lot in the past and I continue to follow how the Web Components ecosystem evolves.
In particular, I follow the LitElement project (and lit-html), which is part of the Polymer Project. I'm also interested in the adoption of Web Components. It doesn't seem to be used as much as I thought a few years ago, but a dedicated post would be needed to analyze why. However, some companies use them a lot. And this year, I've especially noticed the fact that SpaceX sent Web Components into space (see this Reddit thread).
The Microsoft team released 4 versions of TypeScript in 2020: 3.8, 3.9, 4.0, 4.1, including many very interesting features. Check out the roadmap for incoming features!
How to get a really nice end-to-end testing experience? Easy: just use Cypress. What a nice testing framework! I really enjoy using it and I advise all front-end developers to give it a try. In the past, end-to-end testing was a bit difficult and this has influenced the way we test applications. Today, with the help of tools like Cypress, I'm pretty sure we are going to change our testing approach to make it more end-to-end focused.
The Cypress Team did an incredible job in 2020 and released new versions at a very steady pace: from version 3.8.2 to... 6.2.0. The announcement of a $40M raise is good news and I wish Cypress an awesome year 2021.
I'm not a big fan of CSS frameworks, mainly because using a CSS framework feels like removing a part of my work that I really love: writing CSS. I like CSS, I'm good at using it, I'm efficient and using something that I didn't build is always more difficult. However, I know that writing CSS is not a piece of cake for all developers and that's why I also look at CSS frameworks. In 2020, I saw the emulation around TailwindCSS (see StateOfCSS 2020) and I decided to lift the hood to understand the hype and to be able to help teams I work with.
It was a great surprise, I enjoyed using it more than I thought even if I'm still not super convinced, not enough to use it on my own projects. I'm still thinking that I'm more efficient with my own CSS 😅. But, I have to recognize, it's a good product. I understand why people use it: it's easy to use and lets you quickly prototype an application without writing a line of CSS.
Well done Adam Wathan! 💪
Out of the frontend ecosystem, I worked a lot with GitLab CI/CD in 2020. Before that, I was used to working on it but only as a "simple user", I didn't expect all the empowerment it brought to me nor how fun it could be to work with. I added it to my tech watch and dove into some advanced features. It was really cool and I will continue to work with it.
Yet, I did not have the opportunity to work with it professionally (I hope I will) but I continue to use it on side projects, I still read about it and check the news regularly: the Flutter Medium is a good place to find many interesting articles.
During 2020, I have read a lot about Sustainable IT, at first seeking answers on websites' environmental footprint. Then, I looked for guidelines to make the applications/website I built more "green".
If I can sum up in just one sentence what I've learned about building low impact websites in 2020, it could be "Do I really need this website/feature ?".
I had many other technologies in my tech watch in 2020:
- React, because it's still a framework I like to work with.
- Angular, mainly because I wanted to understand precisely how Angular Ivy works (based on incremental DOM).
- Rollup, because I wanted to explore an alternative for Webpack.
- Snowpack, because of SvelteKit.
- Core Web Vitals, because it combines web performance and user experience, two important subjects for me.
- Web accessibility, more and more a subject I'm passionate about, pushing the front-end developer experience even more.
- CSS, SEO, Github actions, ArcGIS JS API, Warp 10 and more...