create account

Why I Reinvent the Wheel (Sometimes It's the Best Way to Learn and Build) by thecrazygm

View this thread on: hive.blogpeakd.comecency.com
· @thecrazygm ·
$12.89
Why I Reinvent the Wheel (Sometimes It's the Best Way to Learn and Build)
Hey everyone,

I sometimes get asked why I spend time building certain tools or scripts when similar things might already exist, or why I dive into the nitty-gritty of how something works instead of just using an off-the-shelf solution. It's a fair question, and recently I came across an article by Jan Endler called "[Reinvent the Wheel](https://endler.dev/2025/reinvent-the-wheel/)" that perfectly encapsulates a lot of my own thinking on this. I'm not going to replicate his excellent post, but I wanted to share some thoughts along the same lines.

![How was that wheel made?](https://files.peakd.com/file/peakd-hive/thecrazygm/AJizt73rkUAXCZ2YvootiwMvymgDVwwb9kMtjpdRrTVySMEqYqHEWBkDc8cS634.png)

## It's Not Always About Having the "Best" Tool First Try

For me, diving in and building something, even if it's a version of a "wheel" that's been invented before, is often about:

1.  **Deep Learning & Understanding:** The single best way I've found to truly understand a system, a library, or a concept is to try and build with it, or even replicate parts of it. When I was working on `hive-nectar` (my fork of `beem`), delving into the transaction signing, the API calls, and the data structures wasn't just about getting a library working; it was about understanding Hive at a more fundamental level. Similarly, building tools like `auto-market` or the various Hive-Engine scripts forces me to understand how those systems _actually_ operate, their quirks, their limitations, and their strengths.
2.  **Control and Customization:** Sometimes, an existing tool is 90% of what you need, but that last 10% is crucial for your specific workflow or idea. Building it yourself, or heavily modifying something existing, gives you complete control to tailor it perfectly. You're not beholden to someone else's feature roadmap or design choices.
3.  **Identifying Pain Points (and Solutions):** When you build it, you _feel_ the friction. You encounter the awkward APIs, the missing documentation, the performance bottlenecks. This firsthand experience is invaluable for then figuring out how to make it _better_, not just for yourself, but potentially for others too. My recent adventure with the Hive-Engine richlist pagination limit for Market Viewr is a perfect example – I hit a wall, figured out why, and then engineered a solution.
4.  **The Joy of Creation (and Sharing):** Let's be honest, sometimes it's just fun to build stuff! Taking an idea from a concept to a working piece of code is incredibly satisfying. And if that tool then helps someone else, that's even better. Sharing these projects, even the "simple" or "crude" ones, is part of that process.
5.  **Avoiding Black Boxes:** While using established libraries is often efficient, relying _solely_ on black boxes without understanding how they work can leave you stuck when things go wrong or when you need to innovate. "Reinventing" a small piece can demystify the larger system.

## It's Not About Ignoring Existing Work

This doesn't mean I think everyone should always build everything from scratch every time. That's not practical. But there's immense value in the _process_ of building, even if the first version isn't perfect or if it replicates existing functionality. The learning gained, the control achieved, and the deeper understanding of the underlying systems often lead to better, more robust, and more innovative solutions in the long run.

Many of my Hive tools, from simple scripts to more complex applications, are born from this mindset. I wanted to understand something better, or I needed a tool that worked _just so_, and the best way to get there was to roll up my sleeves and build.

So, the next time you see me tinkering with something that looks like a solved problem, know that there's usually a method to my madness – it's all part of the journey of learning, building, and hopefully, contributing something useful back.

As always,
Michael Garcia a.k.a. TheCrazyGM

πŸ‘  , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , and 131 others
properties (23)
authorthecrazygm
permlinkwhy-i-reinvent-the-wheel-sometimes-its-the-best-way-to-learn-and-build
categoryhive-186392
json_metadata{"app":"peakd/2025.5.7","format":"markdown","tags":["dev","personal","tribes","archon","proofofbrain","pimp"],"users":[],"image":["https://files.peakd.com/file/peakd-hive/thecrazygm/AJizt73rkUAXCZ2YvootiwMvymgDVwwb9kMtjpdRrTVySMEqYqHEWBkDc8cS634.png"]}
created2025-05-26 12:31:15
last_update2025-05-26 12:31:15
depth0
children10
last_payout2025-06-02 12:31:15
cashout_time1969-12-31 23:59:59
total_payout_value6.458 HBD
curator_payout_value6.435 HBD
pending_payout_value0.000 HBD
promoted0.000 HBD
body_length3,969
author_reputation77,747,633,810,485
root_title"Why I Reinvent the Wheel (Sometimes It's the Best Way to Learn and Build)"
beneficiaries[]
max_accepted_payout1,000,000.000 HBD
percent_hbd10,000
post_id142,973,095
net_rshares40,497,183,603,176
author_curate_reward""
vote details (195)
@buttcoins ·
$0.10
β€˜If you build it, they will come’
If I build it, I will come to know more’ 
πŸ‘  , , , , , , , ,
properties (23)
authorbuttcoins
permlinkre-thecrazygm-2025526t71626146z
categoryhive-186392
json_metadata{"type":"comment","tags":["hive-186392","dev","personal","tribes","archon","proofofbrain","pimp"],"app":"ecency/3.3.2-mobile","format":"markdown+html"}
created2025-05-26 13:16:27
last_update2025-05-26 13:16:27
depth1
children2
last_payout2025-06-02 13:16:27
cashout_time1969-12-31 23:59:59
total_payout_value0.052 HBD
curator_payout_value0.051 HBD
pending_payout_value0.000 HBD
promoted0.000 HBD
body_length75
author_reputation213,514,242,675,346
root_title"Why I Reinvent the Wheel (Sometimes It's the Best Way to Learn and Build)"
beneficiaries[]
max_accepted_payout1,000,000.000 HBD
percent_hbd10,000
post_id142,973,661
net_rshares328,657,475,234
author_curate_reward""
vote details (9)
@thecrazygm ·
$0.23
I love that! Is it attributed to someone or did you make it up?
πŸ‘  , , , , , , , ,
properties (23)
authorthecrazygm
permlinkre-buttcoins-swve8q
categoryhive-186392
json_metadata{"tags":["hive-186392"],"app":"peakd/2025.5.7","image":[],"users":[]}
created2025-05-26 13:17:15
last_update2025-05-26 13:17:15
depth2
children1
last_payout2025-06-02 13:17:15
cashout_time1969-12-31 23:59:59
total_payout_value0.114 HBD
curator_payout_value0.113 HBD
pending_payout_value0.000 HBD
promoted0.000 HBD
body_length63
author_reputation77,747,633,810,485
root_title"Why I Reinvent the Wheel (Sometimes It's the Best Way to Learn and Build)"
beneficiaries[]
max_accepted_payout1,000,000.000 HBD
percent_hbd10,000
post_id142,973,682
net_rshares717,646,915,267
author_curate_reward""
vote details (9)
@buttcoins ·
$0.10
I read your post and i was just playing with the field of dreams quote.
So i just tweaked the field of dreams quote to what you were saying... so it is both an original idea and a borrowed idea...
πŸ‘  , , , , , , ,
properties (23)
authorbuttcoins
permlinkre-thecrazygm-swvejf
categoryhive-186392
json_metadata{"tags":["hive-186392"],"app":"peakd/2025.5.7"}
created2025-05-26 13:23:39
last_update2025-05-26 13:23:39
depth3
children0
last_payout2025-06-02 13:23:39
cashout_time1969-12-31 23:59:59
total_payout_value0.052 HBD
curator_payout_value0.051 HBD
pending_payout_value0.000 HBD
promoted0.000 HBD
body_length196
author_reputation213,514,242,675,346
root_title"Why I Reinvent the Wheel (Sometimes It's the Best Way to Learn and Build)"
beneficiaries[]
max_accepted_payout1,000,000.000 HBD
percent_hbd10,000
post_id142,973,755
net_rshares326,766,224,430
author_curate_reward""
vote details (8)
@ecoinstant ·
$0.02
I think the whole of life is like this.  Yes I could read the instruction manual or watch a video on youtube about a topic, but digging in and getting my hands dirty has always taught me so much more.

I think half the brilliant ideas in permaculture I had to discard within the first few years on the farm, and I would never had learned the "deeper truths" without doing it myself.

There is something deeper here too, most "permies" hire people to do the farm work.  I wonder, do they ever learn anything?

!PAKX
!PIMP
!PIZZA
πŸ‘  ,
properties (23)
authorecoinstant
permlinkre-thecrazygm-swvgup
categoryhive-186392
json_metadata{"tags":["hive-186392"],"app":"peakd/2025.5.7","image":[],"users":[]}
created2025-05-26 14:13:39
last_update2025-05-26 14:13:39
depth1
children1
last_payout2025-06-02 14:13:39
cashout_time1969-12-31 23:59:59
total_payout_value0.012 HBD
curator_payout_value0.012 HBD
pending_payout_value0.000 HBD
promoted0.000 HBD
body_length527
author_reputation825,388,272,460,288
root_title"Why I Reinvent the Wheel (Sometimes It's the Best Way to Learn and Build)"
beneficiaries[]
max_accepted_payout1,000,000.000 HBD
percent_hbd10,000
post_id142,974,652
net_rshares82,299,599,037
author_curate_reward""
vote details (2)
@pakx ·
<center><table><tr></tr><tr><td><center><img src='https://files.peakd.com/file/peakd-hive/pakx/PakX-logo-transparent.png'><p><sup><a href='https://hive-engine.com/?p=market&t=PAKX'>View or trade </a> <code>PAKX</code> tokens.</sup></p></center></td><td><center>@ecoinstant, PAKX has voted the post by @thecrazygm. (1/2 calls)</p><br><br><p>Use !PAKX command if you hold enough balance to call for a @pakx vote on worthy posts! More details available on <a href='/@pakx'>PAKX Blog</a>.</p></center></td></tr></table></center>
properties (22)
authorpakx
permlinkre-ecoinstant-1748268876
categoryhive-186392
json_metadata"{"tags": ["pakx", "hivepakistan"], "app": "HiveDiscoMod"}"
created2025-05-26 14:14:36
last_update2025-05-26 14:14:36
depth2
children0
last_payout2025-06-02 14:14:36
cashout_time1969-12-31 23:59:59
total_payout_value0.000 HBD
curator_payout_value0.000 HBD
pending_payout_value0.000 HBD
promoted0.000 HBD
body_length524
author_reputation32,485,921,861
root_title"Why I Reinvent the Wheel (Sometimes It's the Best Way to Learn and Build)"
beneficiaries[]
max_accepted_payout1,000,000.000 HBD
percent_hbd10,000
post_id142,974,668
net_rshares0
@edicted ·
$0.02
Why would you go to school when the things they do in school have already been done before? 
kek
πŸ‘  , , ,
properties (23)
authoredicted
permlinkre-thecrazygm-swvkci
categoryhive-186392
json_metadata{"tags":["hive-186392"],"app":"peakd/2025.5.7","image":[],"users":[]}
created2025-05-26 15:29:09
last_update2025-05-26 15:29:09
depth1
children0
last_payout2025-06-02 15:29:09
cashout_time1969-12-31 23:59:59
total_payout_value0.010 HBD
curator_payout_value0.010 HBD
pending_payout_value0.000 HBD
promoted0.000 HBD
body_length96
author_reputation3,487,917,156,251,768
root_title"Why I Reinvent the Wheel (Sometimes It's the Best Way to Learn and Build)"
beneficiaries[]
max_accepted_payout1,000,000.000 HBD
percent_hbd10,000
post_id142,975,926
net_rshares68,185,848,309
author_curate_reward""
vote details (4)
@pizzabot ·
<center>PIZZA!


$PIZZA slices delivered:
@ecoinstant<sub>(1/20)</sub> tipped @thecrazygm 


<sub>Come get [MOON](https://moon.hive.pizza)ed!</sub></center>
properties (22)
authorpizzabot
permlinkre-why-i-reinvent-the-wheel-sometimes-its-the-best-way-to-learn-and-build-20250526t141402z
categoryhive-186392
json_metadata"{"app": "pizzabot"}"
created2025-05-26 14:14:03
last_update2025-05-26 14:14:03
depth1
children0
last_payout2025-06-02 14:14:03
cashout_time1969-12-31 23:59:59
total_payout_value0.000 HBD
curator_payout_value0.000 HBD
pending_payout_value0.000 HBD
promoted0.000 HBD
body_length156
author_reputation7,435,294,310,717
root_title"Why I Reinvent the Wheel (Sometimes It's the Best Way to Learn and Build)"
beneficiaries[]
max_accepted_payout1,000,000.000 HBD
percent_hbd10,000
post_id142,974,662
net_rshares0
@tydynrain ·
I understand this completely, because this is how I learn anything, I dive in and I figure it out for myself. When I got into Arch Linux, I was so enthralled by its elegant functionality, that I wanted to understand it well, so I installed originally installed it three different times, to learn the process well. All three of these Arch installations, which are all several years old now, are still running great, having been migrated across several computers, hard drives, and SSDs. I've run into innumerable technical issues over the years, but I always find a solution in the end, with lots of researching, testing, experimenting, tinkering, adjusting, and refining as I go. 😁 πŸ™ πŸ’š ✨ πŸ€™ 
πŸ‘  
properties (23)
authortydynrain
permlinkre-thecrazygm-2025526t22037844z
categoryhive-186392
json_metadata{"tags":["dev","personal","tribes","archon","proofofbrain","pimp"],"app":"ecency/3.2.0-vision","format":"markdown+html"}
created2025-05-27 08:00:39
last_update2025-05-27 08:00:39
depth1
children2
last_payout2025-06-03 08:00:39
cashout_time1969-12-31 23:59:59
total_payout_value0.000 HBD
curator_payout_value0.000 HBD
pending_payout_value0.000 HBD
promoted0.000 HBD
body_length689
author_reputation198,766,503,419,701
root_title"Why I Reinvent the Wheel (Sometimes It's the Best Way to Learn and Build)"
beneficiaries[]
max_accepted_payout1,000,000.000 HBD
percent_hbd10,000
post_id142,989,235
net_rshares52,988,542,299
author_curate_reward""
vote details (1)
@thecrazygm ·
$0.26
Arch is amazing, and the wiki is an amazing resource to learn from, love those guys.

I still remember using a library computer to print a giant stack of papers that was the [Linux From Scratch](https://www.linuxfromscratch.org/index.html) manual, way back in 99', following along and building the whole thing from the ground up and how much I learned from that experience, and not to mention the respect it gave me for people that manage distributions now.
πŸ‘  , , , , , , , , ,
properties (23)
authorthecrazygm
permlinkre-tydynrain-swww3g
categoryhive-186392
json_metadata{"tags":["hive-186392"],"app":"peakd/2025.5.7","image":[],"users":[]}
created2025-05-27 08:40:30
last_update2025-05-27 08:40:30
depth2
children1
last_payout2025-06-03 08:40:30
cashout_time1969-12-31 23:59:59
total_payout_value0.130 HBD
curator_payout_value0.130 HBD
pending_payout_value0.000 HBD
promoted0.000 HBD
body_length457
author_reputation77,747,633,810,485
root_title"Why I Reinvent the Wheel (Sometimes It's the Best Way to Learn and Build)"
beneficiaries[]
max_accepted_payout1,000,000.000 HBD
percent_hbd10,000
post_id142,989,716
net_rshares830,233,298,755
author_curate_reward""
vote details (10)
@tydynrain ·
$0.02
Indeed it is, and the wiki is one of the best in the Linux world (*Gentoo's was excellent too before their server crashed*). Arch is the perfect balance between DIY and automation.

Dude, I've thought about doing that so many times! I give you mad props on LFS, as well as for your method of getting the manual! I've learned so much just working with Arch, so I can imagine the many magnitudes more learning when building the whole thing from the ground up. Ditto that on respect for those who run distributions, some of which have continued on for decades. 😁 πŸ™ πŸ’š ✨ πŸ€™ 
πŸ‘  ,
properties (23)
authortydynrain
permlinkre-thecrazygm-2025527t2114638z
categoryhive-186392
json_metadata{"tags":["hive-186392"],"app":"ecency/3.2.0-vision","format":"markdown+html"}
created2025-05-28 07:01:45
last_update2025-05-28 07:01:45
depth3
children0
last_payout2025-06-04 07:01:45
cashout_time1969-12-31 23:59:59
total_payout_value0.012 HBD
curator_payout_value0.012 HBD
pending_payout_value0.000 HBD
promoted0.000 HBD
body_length568
author_reputation198,766,503,419,701
root_title"Why I Reinvent the Wheel (Sometimes It's the Best Way to Learn and Build)"
beneficiaries[]
max_accepted_payout1,000,000.000 HBD
percent_hbd10,000
post_id143,009,165
net_rshares83,008,093,504
author_curate_reward""
vote details (2)