Read time 4 min
Dear reader. This is a brave attempt at writing a light read about programming that you will enjoy, even if you have zero knowledge of the subject matter.
I even used a pun in the title to get you here. Sucker.
Slack, Whatsapp, and TipRanks are some of the better-known companies that have used it in their products. Even a Google employee tweeted a heartfelt thank you to Petka, for enabling a dramatic performance increase (in what, we don’t know).
Whatsapp actually mailed Petka some chocolate to show their appreciation. While it’s a really nice gesture, I personally think some money would’ve been pretty cool, too.
The mandatory “bear with me” tech part
Let’s get the indispensable out of the way: What’s a promise library?
Well, it’s a tool for asynchronous programming. Feel free to google for what that means (you don’t need to though, you can just keep reading).
“A promise is a proxy for a value not necessarily known at its creation time. With promises, rather than an asynchronous call accepting a callback, it instead returns a promise. The calling code can then wait until that promise is fulfilled before executing the next step.”
(Definition by Glenn Anderson, lifted from this Quora search. Thanks, Glenn!)
Here’s an even shorter explanation, by me: Promises make a programmer’s life much easier and the code he or she writes way better.
Thank you for stretching your attention span! Now, back to the story.
Then, he heard of promise libraries, and found a really good article on the subject. It opened his eyes. Being so immersed in the language, he immediately knew he could create a superior alternative to anything that was available.
“Examining the source code of what was considered to be the fastest library, I realized I could write something that would work at least 10 times as fast,” he states, very humbly.
He started writing it with commitment and passion, spending 16 hours a day on it. “I skipped all my classes to work on it, because I wanted to make sure no one else does it before me,” he laughs.
When he put the first version out, the feedback from the astonished development community was overwhelming. Petka’s creation received appreciation and praise from around the world.
He continued his work, dropping the intensity to 4 or 5 daily hours, and started adding features requested by peers all around the world. Popularity grew and grew.
What made it so much better?
When Bluebird hit the internet, it was the only library that could “promisify all” (a term for the instant conversion of the existing libraries’ callback APIs into promise APIs).
Simply put, it means you can insert any string of code into Bluebird and it will come out as transformed, utilizing the library’s promises.
Other unique features included the “filtered catching” of errors, and a system that would warn you when you’re about to do something wrong. Naturally, these groundbreaking features have since been adopted by other libraries, such as When.js.
Additional superiority, to this day, includes speed, ease of debuggability, and an incomparable range of features.
Bluebird is in flight
Recently, the Blue Arrow Awards panel had this to say about Bluebird and Petka:
“A very important library for one key technology area, world-class success in its field. Based on external footprint and in terms of community followers, there is clear evidence of [Petka] being top talent and international community leader in his field.”
Yes, Bluebird continues to soar by gaining recognition and being useful. Currently, monthly downloads are at 10 million and more than 8,000 open source projects are utilizing it. Petka – In addition to working full time on Reaktor client projects – keeps an eye on his baby, monitoring and doing light maintenance whenever required.
Meanwhile, check out bluebirdjs.com for more information.