Image for post
Image for post

I’ve been playing around with Substrate over the past couple of weeks. Substrate is a Rust-based blockchain building framework that is powering Polkadot and its associated blockchains. I’ve been a blockchain skeptic but there are a few changes in the ecosystem that is changing my opinion.

So, why would I be interested in the world’s worst database? Read on.

As many of you would know, blockchains started getting popular after Bitcoin and Ethereum showed that you can run a permission-less network and how it can reach consensus without a central authority.

I’m less interested in the financial/speculative aspects of these…


Image for post
Image for post

Though “failures teach you more than success” has become a cliche, it is true. At least I think it’s true. I haven’t had “success” to suggest otherwise.

I started working on smurly, a tool to generate cool dynamic short urls in 2019. Launched it in 2020 after a lot of procrastination. It failed, terribly. Here are some of the things that I have learned from that failure.

Products start from problems, not ideas

Your side project can start from an idea, but a product starts from a problem. People don’t pay because your idea is cool, they pay because your product solves a problem.

This was…


Image for post
Image for post

Mosaics have a long history where patterns and images come together to make something cohesive and depict a bigger visual.

Let’s try filling an abstract shape with some mosaic circles. The library which will be doing all the heavy lifting will be the d3 package. We will be hacking the d3-delaunay package specifically to make our final art piece.

The flow

Our input will be any PNG image with clear distinction between the borders. We will find the Voronoi points in the image with weighted stippling. Once that’s done, we’ll manipulate these points and try to change their size and…


Image for post
Image for post

I recently completed 3 years in the tech industry, and one thing that I have learnt in these 3 years is, you have to keep learning to stay relevant in the industry. I know it’s sounds cliched, but it’s true.

But learning a new tech stack or a database or a language can be daunting. You might run into errors while setting up the environment, you might not understand some concepts, you might have some questions which Google or StackOverflow can’t answer. There are a myriad of difficulties in the learning process, each depleting your motivation.

What if I told…


Image for post
Image for post

Prelude

The company I work for is a remote first company. Most of my colleagues are not in the same place and we get to work on different projects based on the need, skills and interests of the individuals. That means, we need to have an effective way to pair program. We don’t do pair programming as a rule but to deal with complex stories and exchange implementation ideas. We also find pairing to be an effective mechanism to onboard new developers into the project

So, how do we do that? What tools do we use? Of course there are tons…


Image for post
Image for post

During one of our consulting engagements, we got an opportunity to architect a GraphQL backend. There are currently a bunch of GraphQL libraries available, for this exercise, we decided to go with Apollo Ecosystem . So far it has been working great. In this post, I will briefly explain some of the aspects for considering Apollo.


As a developer, you definitely would’ve learned about bitwise operators at some point and would’ve thought to yourself. “huh, that’s neat. but where would I actually use it?”. That’s what we’ll be looking at today.

Image for post
Image for post

The modern world of computing and software engineering has extracted the complexities away to an extent that you really don’t need to know about how the code you write is executed.

While this is okay for most uses where your code is executed on servers and powerful computers, you’ll run into major problems while working on limited resource devices like microcontrollers and FPGAs. You will…


Often times we come to a situation where we have to search 100 000+ records from local database (coredata or realm) or from a file or a plist etc.

And when user starts to search, each key press will make the call to method that queries this large data resulting in unresponsive app.

One way to optimise this will be implementing debounce.

Image for post
Image for post

What is debounce? Its a function which forces the execution to wait a certain amount of time before running again.

We have 4(may be more) ways to achieve debounce in Swift

Timers are a great way to run…


As software craftsmen, one of the most common things we do on a daily basis is debug our code. When using docker, be it locally or on cloud, a lesser known, yet incredibly powerful tool available to us is docker attach.

Quoting from the docker docs.

Use docker attach to attach your terminal’s standard input, output, and error (or any combination of the three) to a running container using the container’s ID or name. This allows you to view its ongoing output or to control it interactively, as though the commands were running directly in your terminal.

Image for post
Image for post

Debuggers

Most programming languages…


As part of my learning in devops space, I started exploring service mesh and recently did a podcast. Here is the blog version which I think will be useful for others to get the big picture

This post assumes you are aware of how kubernetes works at a high level. If not, you could look this post before

Why Service Mesh?

So, our kubernetes world with pods, deployments, services and ingress controllers are buzzing with activity and we are happy with the newly gained power to deploy our services easily at will and scale them as we see fit

Image for post
Image for post
Refer to my past article if the above image does not make sense

Then, why should we…

Tarka Labs Blog

Tarka Labs is a team of passionate hackers, designers and…

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