# Must Read Developer Articles on Hashnode - #17

Here are last week's must-read articles from Hashnode.

---

#  [7 non-obvious benefits of automated testing](https://mariocervera.com/non-obvious-benefits-automated-testing)

 [![https://mariocervera.com/non-obvious-benefits-automated-testing](https://cdn.hashnode.com/res/hashnode/image/upload/v1603668467760/4GyjF2gAa.jpeg?w=1600&h=840&fit=crop&crop=entropy&auto=format&q=60)](Link) 

Written by @[Mario Cervera](@macerub)

---

# [Light and dark mode image in HTML](https://h.daily-dev-tips.com/light-and-dark-mode-image-in-html) 

 [![Light and dark mode image in HTML](https://cdn.hashnode.com/res/hashnode/image/upload/v1603946772465/1rJFwr6Th.jpeg?w=1600&h=840&fit=crop&crop=entropy&auto=format&q=60)](https://h.daily-dev-tips.com/light-and-dark-mode-image-in-html) 

Written by @[Chris Bongers](@dailydevtips)

---

# [Let's build a video conferencing app](https://rbkannan1.dev/lets-build-a-video-conferencing-app)

 [![Let's build a video conferencing app](https://cdn.hashnode.com/res/hashnode/image/upload/v1604125304102/75mIA02h0.gif)](https://rbkannan1.dev/lets-build-a-video-conferencing-app) 

Written by @[Kannan](@rbkannan1)

---

#  [How to log user activities using the Beacon Web API?](https://blog.greenroots.info/how-to-log-user-activities-using-the-beacon-web-api-ckgq6s7k0094do9s15udf767u) 

 [![How to log user activities using the Beacon Web API?](https://cdn.hashnode.com/res/hashnode/image/upload/v1603691659048/d8vSsDhH3.png?w=1600&h=840&fit=crop&crop=entropy&auto=format&q=60)](https://blog.greenroots.info/how-to-log-user-activities-using-the-beacon-web-api-ckgq6s7k0094do9s15udf767u) 

Written by @[Tapas Adhikary](@atapas)

---

#  [Create a Landing page in less than 100 lines (incl. CSS)](https://blog.madza.dev/create-a-landing-page-in-less-than-100-lines-incl-css) 

 [![Create a Landing page in less than 100 lines](https://cdn.hashnode.com/res/hashnode/image/upload/v1603807059766/sf5_L9UYb.png?w=1600&h=840&fit=crop&crop=entropy&auto=format&q=60)](https://blog.madza.dev/create-a-landing-page-in-less-than-100-lines-incl-css) 

Written by @[Madza](@Madza)

---

#  [The technical writers guide to contributing to open source projects](https://edidiongasikpo.com/the-technical-writers-guide-to-contributing-to-open-source-projects) 

 [![The technical writers guide to contributing to open source projects](https://cdn.hashnode.com/res/hashnode/image/upload/v1603866505249/z7chC5t8h.png?w=1600&h=840&fit=crop&crop=entropy&auto=format&q=60)](https://edidiongasikpo.com/the-technical-writers-guide-to-contributing-to-open-source-projects) 

Written by @[Edidiong Asikpo](@didicodes)

---

#  [Design a CSS Art-(Frankenstein)](https://error404-sp.hashnode.dev/design-a-css-art-frankenstein) 

 [![Design a CSS Art-(Frankenstein)](https://cdn.hashnode.com/res/hashnode/image/upload/v1603713719627/5AvXOfV1G.png?w=1600&h=840&fit=crop&crop=entropy&auto=format&q=60)](https://error404-sp.hashnode.dev/design-a-css-art-frankenstein) 

Written by @[Shreyasi Patil](@error404_sp)

---

#  [Create URL Shortner with Python](https://ayushirawat.com/create-url-shortner-with-python) 

 [![Create URL Shortner with Python](https://cdn.hashnode.com/res/hashnode/image/upload/v1603964120390/f0kqQvV-V.png?w=1600&h=840&fit=crop&crop=entropy&auto=format&q=60)](https://ayushirawat.com/create-url-shortner-with-python) 

Written by @[Ayushi Rawat](@ayushi7rawat)

---

#  [How to map a domain to Hashnode through Cloudflare?](https://townhall.hashnode.com/how-to-map-a-domain-to-hashnode-through-cloudflare) 

 [![How to map a domain to Hashnode through Cloudflare?](https://cdn.hashnode.com/res/hashnode/image/upload/v1603878003428/tj2zkpGfb.png?w=1600&h=840&fit=crop&crop=entropy&auto=format&q=60)](https://townhall.hashnode.com/how-to-map-a-domain-to-hashnode-through-cloudflare) 

Written by @[Edidiong Asikpo](@didicodes)

---

#  [How I Failed 2 Side Projects In Under a Year And Lessons Learned](https://blog.moeminmamdouh.com/how-i-failed-2-side-projects-in-under-a-year-and-lessons-learned) 

 [![How I Failed 2 Side Projects In Under a Year And Lessons Learned](https://cdn.hashnode.com/res/hashnode/image/upload/v1604135473067/FgRHjtOtT.png?w=1600&h=840&fit=crop&crop=entropy&auto=format&q=60)](https://blog.moeminmamdouh.com/how-i-failed-2-side-projects-in-under-a-year-and-lessons-learned) 

Written by @[Moemin Mamdouh](@moeminmamdouh)

---

#  [How To Use TailwindCSS With Node.js, Express And Pug](https://catalins.tech/how-to-use-tailwindcss-with-nodejs-express-and-pug) 

 [![How To Use TailwindCSS With Node.js, Express And Pug](https://cdn.hashnode.com/res/hashnode/image/upload/v1603723970297/EhLTj6azW.jpeg?w=1600&h=840&fit=crop&crop=entropy&auto=format&q=60)](https://catalins.tech/how-to-use-tailwindcss-with-nodejs-express-and-pug) 

Written by @[Catalin Pit](@Catalinpit)

---

# [Implement a Binary Search Tree in JavaScript](https://initjs.hashnode.dev/implement-a-binary-search-tree-in-javascript) 

 [![Implement a Binary Search Tree in JavaScript](https://cdn.hashnode.com/res/hashnode/image/upload/v1603812438509/9osAA5vY2.png?w=1600&h=840&fit=crop&crop=entropy&auto=format&q=60)](https://initjs.hashnode.dev/implement-a-binary-search-tree-in-javascript) 

Written by @[Michael Mitrakos](@Mitrakmt)

--- 

#  [4 Games to Level Up Your CSS Skills](https://jatinrao.dev/4-games-to-level-up-your-css-skills) 

 [![4 Games to Level Up Your CSS Skills](https://cdn.hashnode.com/res/hashnode/image/upload/v1604249938257/f6N5lWie-.png?w=1600&h=840&fit=crop&crop=entropy&auto=format&q=60)](https://jatinrao.dev/4-games-to-level-up-your-css-skills) 

Written by @[Jatin Rao](@jatinrao)

---

#  [Build a live reloader with Deno](https://otrv.hashnode.dev/build-a-live-reloader-with-deno) 

 [![Build a live reloader with Deno](https://cdn.hashnode.com/res/hashnode/image/upload/v1603838312095/6z4Kohw-P.jpeg?w=1600&h=840&fit=crop&crop=entropy&auto=format&q=60)](https://otrv.hashnode.dev/build-a-live-reloader-with-deno) 

Written by @[Özgür Tanrıverdi](@otrv)

---

#  [Why you should choose to learn 'React'?](https://blog.skay.dev/why-you-should-choose-to-learn-react) 

 [![Why you should choose to learn 'React'?](https://cdn.hashnode.com/res/hashnode/image/upload/v1603797780927/S6loCK6fY.png?w=1600&h=840&fit=crop&crop=entropy&auto=format&q=60)](https://blog.skay.dev/why-you-should-choose-to-learn-react) 

Written by @[Skay](@skay)

---

#  [How to become a Kickass Web Developer in 2021 [Frontend & Backend Tips]](https://sunil.hashnode.dev/how-to-become-a-kickass-web-developer-in-2021-frontend-and-backend-tips-ckgqh1a3f00dz8vs175kfadv4) 

 [![How to become a Kickass Web Developer in 2021](https://cdn.hashnode.com/res/hashnode/image/upload/v1603712518787/KgtXsFovg.jpeg?w=1600&h=840&fit=crop&crop=entropy&auto=format&q=60)](https://sunil.hashnode.dev/how-to-become-a-kickass-web-developer-in-2021-frontend-and-backend-tips-ckgqh1a3f00dz8vs175kfadv4) 

Written by @[Sunil Joshi](@suniljoshi19)

---

#  [How to localize Vue.js app with vue-i18n and Localazy](https://vaclavhodek.com/how-to-localize-vuejs-app-with-vue-i18n-and-localazy) 

 [![How to localize Vue.js app with vue-i18n and Localazy](https://cdn.hashnode.com/res/hashnode/image/upload/v1603815931987/xc3GooRwz.png?w=1600&h=840&fit=crop&crop=entropy&auto=format&q=60)](https://vaclavhodek.com/how-to-localize-vuejs-app-with-vue-i18n-and-localazy) 

Written by @[Václav Hodek](@vaclavhodek)

---

#  [The Importance Of Whitespace In Web Design & How To Properly Use Them](https://shaydeecoder.hashnode.dev/the-importance-of-whitespace-in-web-design-and-how-to-properly-use-them) 

 [![The Importance Of Whitespace In Web Design & How To Properly Use Them](https://cdn.hashnode.com/res/hashnode/image/upload/v1602684859557/NvIm0N7yp.jpeg?w=1600&h=840&fit=crop&crop=entropy&auto=format&q=60)](https://shaydeecoder.hashnode.dev/the-importance-of-whitespace-in-web-design-and-how-to-properly-use-them) 

Written by @[Shaydee Coder](@shaydeecoder)

---

#  [How to start a React app?](https://blog.reactstory.com/how-to-start-a-react-app) 

 [![How to start a React app?](https://cdn.hashnode.com/res/hashnode/image/upload/v1603830014060/ee83tSCiv.jpeg?w=1600&h=840&fit=crop&crop=entropy&auto=format&q=60)](https://blog.reactstory.com/how-to-start-a-react-app) 

Written by @[Maxime Vasse](@webdif)

---

#  [The Easiest Way to Add Node.js User Authentication](https://jamesqquick.hashnode.dev/the-easiest-way-to-add-nodejs-user-authentication) 

 [![The Easiest Way to Add Node.js User Authentication](https://cdn.hashnode.com/res/hashnode/image/upload/v1603913236017/A7wdYhR9E.jpeg?w=1600&h=840&fit=crop&crop=entropy&auto=format&q=60)](https://jamesqquick.hashnode.dev/the-easiest-way-to-add-nodejs-user-authentication) 

Written by @[James Q Quick](@jamesqquick)

---

# Hashnode Technical Writing Challenge

Are you up for a challenge?

We are starting a new recurring monthly challenge series. In the 1st challenge, the top writers on Hashnode will get Egghead's Annual Pro subscription 🎟 & Hashnode badges.

Learn more and Participate now: https://hashnode.com/challenge/october

[![Hashnode Technical Writing Challenge](https://cdn.hashnode.com/res/hashnode/image/upload/v1602590747760/lEzvBj9gA.png?auto=compress)](https://hashnode.com/challenge/october) 
