Himanshu Patil, Full Stack Developer at Canvs
Himanshu Patil, Full Stack Developer at Canvs
Himanshu Patil, Full Stack Developer at Canvs
Himanshu Patil, Full Stack Developer at Canvs

ENGINEERING

11 MINS

The tinkering mindset of a good developer

The tinkering mindset of a good developer

Himanshu Patil, developer for Canvs and Cassini, shares his insights on how tinkering has shaped his journey as a developer and how this hands-on approach can inspire others to be curious and experiment in their own work.

Up until recently, the word *tinkering* was unfamiliar to me, though the mindset behind it has shaped me for as long as I can remember.


Tinkering, in simple terms, is driven by the thirst for knowledge and curiosity—an urge to understand how things work. It's about breaking things down, getting your hands dirty, and figuring out the mechanics, even if you're not fully sure where it will lead.


It’s more than a hobby; it’s how I approach life.

Up until recently, the word *tinkering* was unfamiliar to me, though the mindset behind it has shaped me for as long as I can remember.


Tinkering, in simple terms, is driven by the thirst for knowledge and curiosity—an urge to understand how things work. It's about breaking things down, getting your hands dirty, and figuring out the mechanics, even if you're not fully sure where it will lead.


It’s more than a hobby; it’s how I approach life.

How early curiosity led to creative problem-solving

How early curiosity led to creative problem-solving

As a kid, I would take apart my toys, much to the frustration of my family. I wasn’t trying to break anything—I just *had* to see what was inside, to understand what made it work. I didn’t always grasp what I was looking at, but I vividly remember the thrill of uncovering things like a tiny dynamo inside an RC car, not knowing exactly what it did but knowing it was important.


Similarly, I was fascinated by how magnets in some toys could make sounds when they came close to each other. It seemed like magic to me back then—two small pieces of metal creating a noise without any visible connection.

As a kid, I would take apart my toys, much to the frustration of my family. I wasn’t trying to break anything—I just *had* to see what was inside, to understand what made it work. I didn’t always grasp what I was looking at, but I vividly remember the thrill of uncovering things like a tiny dynamo inside an RC car, not knowing exactly what it did but knowing it was important.


Similarly, I was fascinated by how magnets in some toys could make sounds when they came close to each other. It seemed like magic to me back then—two small pieces of metal creating a noise without any visible connection.

Turning curiosity into expertise with practical projects

Turning curiosity into expertise with practical projects

If you’re a similarly curious person, you’ll know that this sense of curiosity will drive you to explore beyond what’s expected, whether it’s diving into random topics during a quick break or experimenting with a tool you come across in passing.


For instance, back when I was in college, I stumbled upon an Android browser that rewarded users with coins for browsing, which could then be redeemed for mobile recharges. Naturally, I wondered if there was a way to automate the process to earn more coins without the manual effort.

If you’re a similarly curious person, you’ll know that this sense of curiosity will drive you to explore beyond what’s expected, whether it’s diving into random topics during a quick break or experimenting with a tool you come across in passing.


For instance, back when I was in college, I stumbled upon an Android browser that rewarded users with coins for browsing, which could then be redeemed for mobile recharges. Naturally, I wondered if there was a way to automate the process to earn more coins without the manual effort.

Binary clock built with 3 prompts in 15 minutes
Binary clock built with 3 prompts in 15 minutes

This led me to a fun little side project. I registered a free domain, found a hosting provider, and set up a webpage that would automatically open new tabs at timed intervals, simulating active browsing. This simple hack taught me a ton of things I hadn’t planned on learning, like configuring DNS settings, managing hosting services, and writing basic JavaScript and HTML for automation.


It wasn’t just about earning coins, though. The project sparked my interest in web development and gave me the confidence to experiment with technologies I had never touched before. What started as a playful attempt to game the system turned into a valuable learning experience that expanded my technical toolkit.

This led me to a fun little side project. I registered a free domain, found a hosting provider, and set up a webpage that would automatically open new tabs at timed intervals, simulating active browsing. This simple hack taught me a ton of things I hadn’t planned on learning, like configuring DNS settings, managing hosting services, and writing basic JavaScript and HTML for automation.


It wasn’t just about earning coins, though. The project sparked my interest in web development and gave me the confidence to experiment with technologies I had never touched before. What started as a playful attempt to game the system turned into a valuable learning experience that expanded my technical toolkit.

Binary clock built with 3 prompts in 15 minutes
Binary clock built with 3 prompts in 15 minutes

More recently, the same curiosity led me to an article on using OKLCH for writing color codes. The more I read, the more intrigued I became, and soon I found myself exploring how RGB and CMYK color models work behind the scenes. Learning about additive and subtractive color models and how they influence our perception of color was a fascinating deep dive that started with a single article and ended with a richer understanding of design principles.

More recently, the same curiosity led me to an article on using OKLCH for writing color codes. The more I read, the more intrigued I became, and soon I found myself exploring how RGB and CMYK color models work behind the scenes. Learning about additive and subtractive color models and how they influence our perception of color was a fascinating deep dive that started with a single article and ended with a richer understanding of design principles.

"That’s the beauty of tinkering: you never know where one small spark of curiosity will take you."

"That’s the beauty of tinkering: you never know where one small spark of curiosity will take you."

What starts as a quick glance at an article can lead to hours of research and experimentation, uncovering things you never expected to learn.


Along the way, you realise it's always been about the process and not the outcome.

What starts as a quick glance at an article can lead to hours of research and experimentation, uncovering things you never expected to learn.


Along the way, you realise it's always been about the process and not the outcome.

The transformative power of tinkering

The transformative power of tinkering

Here are a few ways tinkering has shaped how I approach problems, projects, and learning.

Here are a few ways tinkering has shaped how I approach problems, projects, and learning.

  1. The tinkerer’s mindset is constant

  1. The tinkerer’s mindset is constant

My tinkering mindset isn’t limited to working as a developer at Canvs—it shapes all aspects of my life. Long before the internet became widely accessible, I was already experimenting with networks—I convinced my neighbors to pool together and share a broadband connection. It was a wild experiment, but it worked. I learned how to create a local network, configure routers, and dive into PPPoE protocols—all driven by the need to solve a practical problem.


It wasn’t a smooth process, but the thrill of making it work made every hiccup worthwhile.

My tinkering mindset isn’t limited to working as a developer at Canvs—it shapes all aspects of my life. Long before the internet became widely accessible, I was already experimenting with networks—I convinced my neighbors to pool together and share a broadband connection. It was a wild experiment, but it worked. I learned how to create a local network, configure routers, and dive into PPPoE protocols—all driven by the need to solve a practical problem.


It wasn’t a smooth process, but the thrill of making it work made every hiccup worthwhile.

  1. Tinkering helps build creative solutions in unexpected ways

  1. Tinkering helps build creative solutions in unexpected ways

While working on Cassini, the toolkit we’ve built to facilitate better design-dev collaboration for product-makers, we came across a research paper explaining how to predict which UI elements draw users’ attention. That got the wheels turning. We built a serverless app that used a model to generate saliency heatmaps from images.

While working on Cassini, the toolkit we’ve built to facilitate better design-dev collaboration for product-makers, we came across a research paper explaining how to predict which UI elements draw users’ attention. That got the wheels turning. We built a serverless app that used a model to generate saliency heatmaps from images.

Binary clock built with 3 prompts in 15 minutes
Binary clock built with 3 prompts in 15 minutes

That’s the thing about tinkering—it’s never just about solving a problem—it’s about discovering unexpected connections that lead to new ideas and solutions.


You start with one question and before you know it, you’re knee-deep in a solution you didn’t even know you were capable of creating.

That’s the thing about tinkering—it’s never just about solving a problem—it’s about discovering unexpected connections that lead to new ideas and solutions.


You start with one question and before you know it, you’re knee-deep in a solution you didn’t even know you were capable of creating.

  1. An imperfect process that always delivers

  1. An imperfect process that always delivers

Even the simplest of projects can spark new ideas. I once worked with an NGO that needed to send bulk WhatsApp messages but didn’t want to rely on expensive third-party services.


Naturally, I saw it as an opportunity to experiment. I wrote a Python script that used Selenium to automate the message-sending process, one by one.


It wasn’t the most polished solution, but it got the job done, and in the process, I learned far more than I ever would have if we’d merely paid for a service.

Even the simplest of projects can spark new ideas. I once worked with an NGO that needed to send bulk WhatsApp messages but didn’t want to rely on expensive third-party services.


Naturally, I saw it as an opportunity to experiment. I wrote a Python script that used Selenium to automate the message-sending process, one by one.


It wasn’t the most polished solution, but it got the job done, and in the process, I learned far more than I ever would have if we’d merely paid for a service.

"That’s the magic of tinkering: it’s never perfect, but it’s always a learning experience."

"That’s the magic of tinkering: it’s never perfect, but it’s always a learning experience."

The mindset behind tinkering

The mindset behind tinkering

At the core of every tinkerer is a set of traits and values that guide their journey of exploration and discovery.


These traits go beyond technical skills; they’re more about how we approach problems, learn from failures, and constantly seek new challenges.


Here’s how these traits manifest in both my work and personal life:

At the core of every tinkerer is a set of traits and values that guide their journey of exploration and discovery.


These traits go beyond technical skills; they’re more about how we approach problems, learn from failures, and constantly seek new challenges.


Here’s how these traits manifest in both my work and personal life:

  1. Curiosity: The engine that drives discovery

Prompt for a full length capture tool for Cassini
Prompt for a full length capture tool for Cassini

I’ve mentioned this trait above, and it is true: curiosity is the fuel that powers all tinkering. It’s the persistent question in the back of your mind that isn’t passive, it’s active and often relentless. It’s what gets you to pick up a tool, open a book, or jump down a rabbit-hole of research.


Curiosity has always been my companion, now I rarely settle for surface-level knowledge.

I’ve mentioned this trait above, and it is true: curiosity is the fuel that powers all tinkering. It’s the persistent question in the back of your mind that isn’t passive, it’s active and often relentless. It’s what gets you to pick up a tool, open a book, or jump down a rabbit-hole of research.


Curiosity has always been my companion, now I rarely settle for surface-level knowledge.

"It takes you places you didn’t expect to go, and the more you explore, the more you want to learn."

"It takes you places you didn’t expect to go, and the more you explore, the more you want to learn."

For example, while working on Cassini, a simple research paper on UI saliency sparked an interest in the foundational models behind visual attention. One paper led to another, and soon I was digging into machine-learning models for visual processing.

For example, while working on Cassini, a simple research paper on UI saliency sparked an interest in the foundational models behind visual attention. One paper led to another, and soon I was digging into machine-learning models for visual processing.

  1. Optimization: The art of making things better

A tinkerer is never satisfied with the status quo. There’s always a better way—a more efficient process, cleaner code, or a more effective workflow.


The question “What if we try this?” drives me to experiment with new methods and tools.


Optimization isn’t just about speed; it’s about enhancing user experience, simplifying systems, or reducing cognitive load.


At work, for example, our codebase continually evolves, from extracting reusable components to optimizing deployment. It’s this ongoing refinement where the real magic happens.

A tinkerer is never satisfied with the status quo. There’s always a better way—a more efficient process, cleaner code, or a more effective workflow.


The question “What if we try this?” drives me to experiment with new methods and tools.


Optimization isn’t just about speed; it’s about enhancing user experience, simplifying systems, or reducing cognitive load.


At work, for example, our codebase continually evolves, from extracting reusable components to optimizing deployment. It’s this ongoing refinement where the real magic happens.

  1. Enjoying the process: The joy of learning

An essential part of the tinkering mindset is finding joy in the process. Success isn’t always guaranteed, but loving the journey makes the destination less important. The real excitement lies in experimenting, breaking things apart, troubleshooting, and discovering new insights.


For example, a Python script I wrote to automate WhatsApp messages wasn’t perfect, but it taught me far more about Selenium, API limitations, and problem-solving than I expected. The joy wasn’t in sending the messages—it was in figuring out how to make everything work, even when things went wrong.

An essential part of the tinkering mindset is finding joy in the process. Success isn’t always guaranteed, but loving the journey makes the destination less important. The real excitement lies in experimenting, breaking things apart, troubleshooting, and discovering new insights.


For example, a Python script I wrote to automate WhatsApp messages wasn’t perfect, but it taught me far more about Selenium, API limitations, and problem-solving than I expected. The joy wasn’t in sending the messages—it was in figuring out how to make everything work, even when things went wrong.

  1. Optimism: Seeing opportunity in every failure

Prompt for a full length capture tool for Cassini
Prompt for a full length capture tool for Cassini

When you’re pushing boundaries and experimenting with new ideas, failure is inevitable. But for a tinkerer, it’s just another step toward a solution. Each misstep is a chance to learn, refine, and try again with new insights.


I’ve faced countless dead ends in my career. The first time I configured my home network, I failed multiple times. But every attempt taught me more about routers, cable interactions, and settings. Eventually, the system worked—all thanks to those early lessons.

When you’re pushing boundaries and experimenting with new ideas, failure is inevitable. But for a tinkerer, it’s just another step toward a solution. Each misstep is a chance to learn, refine, and try again with new insights.


I’ve faced countless dead ends in my career. The first time I configured my home network, I failed multiple times. But every attempt taught me more about routers, cable interactions, and settings. Eventually, the system worked—all thanks to those early lessons.

  1. Persistence: The power of staying the course

No problem is unsolvable if you’re persistent. Tinkering often means hitting roadblocks, but it’s persistence that drives you to break down complex problems and keep testing until something clicks.


It’s about not giving up, knowing the answer is out there—you just have to find it.

No problem is unsolvable if you’re persistent. Tinkering often means hitting roadblocks, but it’s persistence that drives you to break down complex problems and keep testing until something clicks.


It’s about not giving up, knowing the answer is out there—you just have to find it.

  1. Experimentation: Embracing the unconventional

Prompt for a full length capture tool for Cassini
Prompt for a full length capture tool for Cassini

Tinkering makes you confident about the unconventional. Experimentation often leads to the most groundbreaking results, opening doors to insights and solutions you wouldn’t find otherwise.


Something as mundane as setting up a broadband connection will teach you about networking protocols and configuring routers—things that you usually don’t go about looking to learn. Sometimes, the best outcomes come from taking a risk, even if it’s untested.

Tinkering makes you confident about the unconventional. Experimentation often leads to the most groundbreaking results, opening doors to insights and solutions you wouldn’t find otherwise.


Something as mundane as setting up a broadband connection will teach you about networking protocols and configuring routers—things that you usually don’t go about looking to learn. Sometimes, the best outcomes come from taking a risk, even if it’s untested.

  1. The unending quest for knowledge

The world is full of things to learn, and as a tinkerer, you’re always seeking new challenges to explore. Whether it’s diving into new technology, an unexpected interest, or a side project, there’s always something to keep you engaged and learning.


Each new discovery builds on the last, expanding your skill set and helping you solve problems more creatively.

The world is full of things to learn, and as a tinkerer, you’re always seeking new challenges to explore. Whether it’s diving into new technology, an unexpected interest, or a side project, there’s always something to keep you engaged and learning.


Each new discovery builds on the last, expanding your skill set and helping you solve problems more creatively.

Tinkering inspirations: Projects that spark creativity

Tinkering inspirations: Projects that spark creativity

Exploring new projects and ideas is one of my favorite things to, and helps me further train my tinkering brain.


If you’ve read all the way till here, you’re probably into the idea of tinkering, and I think you’d like to know of a few cool creators and their projects:

Exploring new projects and ideas is one of my favorite things to, and helps me further train my tinkering brain.


If you’ve read all the way till here, you’re probably into the idea of tinkering, and I think you’d like to know of a few cool creators and their projects:

  1. Digging a secret tunnel by Colin Furze

  1. Digging a secret tunnel by Colin Furze

Colin Furze’s secret tunnel project is a massive undertaking right under his backyard. It’s one of those “just because I can” moments that I find both crazy and incredibly inspiring—turning a wild idea into reality, no matter the scale.

Colin Furze’s secret tunnel project is a massive undertaking right under his backyard. It’s one of those “just because I can” moments that I find both crazy and incredibly inspiring—turning a wild idea into reality, no matter the scale.

  1. Arduino-controlled LED lights by Bob Clagett

  1. Arduino-controlled LED lights by Bob Clagett

Bob created “Smart Stairs” using Arduino-controlled LED lights to add a touch of tech to a simple staircase. It’s a great example of taking everyday objects and making them, well, smarter.

Bob created “Smart Stairs” using Arduino-controlled LED lights to add a touch of tech to a simple staircase. It’s a great example of taking everyday objects and making them, well, smarter.

  1. Compressed air-powered engine by Tom Stanton

Tom built a compressed air-powered engine and optimized it to fly a small RC plane. It’s a solid reminder that sometimes tiny tweaks can have a big impact on performance.

Tom built a compressed air-powered engine and optimized it to fly a small RC plane. It’s a solid reminder that sometimes tiny tweaks can have a big impact on performance.

  1. Slim PS5 build by Matt

Matt’s attempt to build a slim PS5 from scratch is pure tinkering energy—reimagining a product we’re all familiar with and making it his own. It’s not just a technical challenge; it’s a creative one too.

Matt’s attempt to build a slim PS5 from scratch is pure tinkering energy—reimagining a product we’re all familiar with and making it his own. It’s not just a technical challenge; it’s a creative one too.

  1. Hydroelectric power from rainwater

This video explores the possibility of generating hydroelectric power from rainwater collected in a gutter. It’s one of those small-scale projects that could have a huge impact if scaled up.

This video explores the possibility of generating hydroelectric power from rainwater collected in a gutter. It’s one of those small-scale projects that could have a huge impact if scaled up.

  1. William Osman’s humorous builds

William Osman’s videos, like building a phone you can’t drop or figuring out how many pressure washers it takes to fly, are as entertaining as they are inventive. His humorous take on tinkering proves you don’t always need a serious goal—sometimes it’s just about having fun with ideas.

William Osman’s videos, like building a phone you can’t drop or figuring out how many pressure washers it takes to fly, are as entertaining as they are inventive. His humorous take on tinkering proves you don’t always need a serious goal—sometimes it’s just about having fun with ideas.

  1. Unnecessary inventions Explore Channel

This entire channel is dedicated to building unconventional (and often completely unnecessary) things. But that’s what makes it great—reminding us that tinkering doesn’t always have to be about practical solutions. Sometimes, it’s about pushing the limits of creativity for its own sake.

This entire channel is dedicated to building unconventional (and often completely unnecessary) things. But that’s what makes it great—reminding us that tinkering doesn’t always have to be about practical solutions. Sometimes, it’s about pushing the limits of creativity for its own sake.

These projects are just a few examples of how tinkering can take you down unexpected paths. For me, they’re not just interesting to watch—they’re a reminder of why I love to experiment, play, and learn. Every wild idea has the potential to become something great.

These projects are just a few examples of how tinkering can take you down unexpected paths. For me, they’re not just interesting to watch—they’re a reminder of why I love to experiment, play, and learn. Every wild idea has the potential to become something great.

Staying ahead of the curve

Reading documentation is important even if you're vibe coding
Reading documentation is important even if you're vibe coding

Staying up-to-date is essential for a tinkerer. I avoid newsletters as they clutter my inbox and I don’t rely on social media for my learning as you’re always just one step away from mindless scrolling.


Instead, I prefer using RSS feeds to gather information. I’ve set up a dedicated Slack channel that aggregates articles from tech writers and thought leaders, allowing me to dive into fresh content on a weekly basis. Every Friday, I spend some time exploring the latest trends, research, and technologies.


Working at a place like Canvs has been a blessing to me in this regard. It’s not every day that you find a workplace that encourages curiosity, experimentation, and a constant drive to learn. I have the freedom to tinker with different technologies, explore research, and dive into ideas beyond the immediate scope of my job. It’s an environment that nurtures innovation, and for a tinkerer like me, it’s a dream come true.

Staying up-to-date is essential for a tinkerer. I avoid newsletters as they clutter my inbox and I don’t rely on social media for my learning as you’re always just one step away from mindless scrolling.


Instead, I prefer using RSS feeds to gather information. I’ve set up a dedicated Slack channel that aggregates articles from tech writers and thought leaders, allowing me to dive into fresh content on a weekly basis. Every Friday, I spend some time exploring the latest trends, research, and technologies.


Working at a place like Canvs has been a blessing to me in this regard. It’s not every day that you find a workplace that encourages curiosity, experimentation, and a constant drive to learn. I have the freedom to tinker with different technologies, explore research, and dive into ideas beyond the immediate scope of my job. It’s an environment that nurtures innovation, and for a tinkerer like me, it’s a dream come true.

Canvs is an interface design and engineering studio based in Mumbai, India. We are group design partners to some of India’s market leaders in Banking and Finance and have been around since 2016.

©2024 Canvs Creative Solutions Pvt. Ltd. All rights reserved

©2024 Canvs Creative Solutions Pvt. Ltd. All rights reserved