Image for post
Image for post
Photo by Anne Nygård on Unsplash

How

useState is the simplest React hook out in wild but it has a very interesting feature — lazy initialization

If you provide useState with a function, then it will be executed only on the initial render.

When to use

Any function that is computationally expensive can be initialized lazily.

Reference


Am I doing it right? Is my project structure correct? Am I getting too biased over a library? Is the naming convention I follow accepted universally? Importantly — Am I doing it right?

Image for post
Image for post
Yes, No, Yes, Yes … Maybe

Does your mind ever get into this rambling of self-doubts on your choices & your own framework of getting things done? I often face this, and sometimes it bothers me for days. This can be very frustrating & it definitely needs to be addressed. Also if you are a javascript developer, you totally get what I am saying, right?

So I tried a bunch of options —…


Image for post
Image for post
Use Slash GraphQL — just work with GraphQL, no strings attached

TL;DR

Don’t wait for the nightmare of migrating away from Firebase one day when it doesn’t scale anymore for your application. Use Slash GraphQL — just work with GraphQL, no strings attached.

Okay, before I share my view on this, here is an honest disclosure — I work as a front-end engineer at Dgraph Labs but the view expressed in this article is totally personal and based on my own experience of building apps.

The Firebase Spark

No doubt that Firebase is great! I was an early adopter and have seen firebase evolving from a real-time database as a service to the popular app…


Image for post
Image for post
Photo by Steven Libralon on Unsplash

Today, the Powerful User

Who’s not a power user in 2020? Most likely you are a power user of an application you use at your workplace everyday.

Power users are generally associated with people’s skill to reap maximum gain of functionalities from a software. Over the last few years, online productive apps & tools on web have altered this definition rather the path to become a power user has changed.

Fundamentally there is a difference between a power user of vim text editor & a power user of Google Sheet.


Image for post
Image for post
RAD Colors

Why do you need loudness?

Software in 21st century doesn’t come with user manuals. They are most likely self installed on a mobile device. Nobody teaches how to operate an app.

Some apps just are just POP & provide natural way-finding. There is no art behind this, its just quantitative analysis. Loudness needs to be tuned across the interface to help the user navigate & take actions.

Loudness is in your head!

You don’t need to make noise(literally) to be heard. You can visually evoke loudness in the mind. Colours, contrast, position & motion help digital interfaces communicate loudness. …


Image for post
Image for post
Photo by Franck V. on Unsplash

We are surrounded by machines doing their own jingles. It can be the washing machine that clinks when the clothes are dry or the toaster dings!. Companies have weaved sounds in their products to communicate information & more importantly make them lively.

The sounds are functional but beyond that it is visceral. Machines try to set our mood throughout our tasks using sound.

“The person washing socks becomes the hero in a domestic drama”, — Brandon Satanek, UI/UX global manager at Whirlpool shares in an article. An appliance’s notifications provide the soundtrack support the movie, which follows an emotional arc.


If all has to summarised in one line for product manager — GraphQL can Massively Impact Delivery 🚀

Image for post
Image for post
Photo by Clint Adair on Unsplash

So to cut the clutter, I will try to highlight major values & challenges in three different lens -

App Centric

Significant boost to developer experience. The documentation become more of a living document & allows the user to self explore documentation with limited or existing domain knowledge. Onboarding developers to use API’s will be easy. (Shopify is an early adopter which has exposed its public APIs over GraphQL)

frontend” team takes the ownership. Engineering effort on the Frontend team or client app centric…


Passing in objects rather than setting individual properties

Image for post
Image for post
Photo by Chris Barbalis on Unsplash

This piece should not be mistaken for a design pattern. It’s about good practices you can adopt when writing functions, designing components, or even architecting a system.

The major theme is around configurations, which are generally used across many programming languages. For this article we will use JavaScript to illustrate a few examples. We will discuss this later.

For now, lets explore how configurations can improve the developer experience and rapid development.

What is a Configuration?

A configuration can be as simple as a JSON object with a bunch of key values or as complex as a configuration object managed by a full-blown configuration…


Image for post
Image for post
The Tweet That Triggered This

In this short article I will try to explain how this checkered shadow effect was achieved by using just CSS which was a challenge posted by React Day. More than just telling you the solution, I will try to explain my though process around achieving the effect in CSS.


A Quick summary of major announcements made at Firebase Summit 201

Image for post
Image for post

The Big Announcement — Firebase Extensions

Firebase Extensions are pre-canned firebase solutions as a service. They are well tested & deployed on Firebase & GCP Environment. Personally I wish there were more extensions, right now there are 9, Sync with Mail-chimp & Resize Images being the most popularly discussed. Hope that this grows into a bigger marketplace in future.

For the web developers ❤️

Thiyagaraj T

Frontend at DgraphLabs

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store