This week we welcome Frank Vieira as our PyDev of the Week. Frank is the creator of the Vibora package, a “fast, asynchronous and elegant Python web framework.” You can see what else Frank is up to over on his Github profile. Let’s take a few moments to get to know Frank better!
Can you tell us a little about yourself (hobbies, education, etc):
My name is Frank Vieira, I’m 25, a really skilled Dota player (lol) and passionate software developer. On my free time, I like to play some games and work on hobby projects like small games using Unity or open-source projects as Vibora.
Why did you start using Python?
I got a job in a security company that used Python for everything and I almost immediately fell in love with it.
What other programming languages do you know and which is your favorite?
What projects are you working on now?
I’m working in a complete refactoring of Vibora and also in a mobile game. Hopefully, I’ll be able to finish both 🙂
What is the origin story of the Vibora package?
I was working in some Redis-backed APIs (using Flask/Gunicorn) at my job and after some benchmarks, I saw that Redis was almost sleeping while several machines were with 100% CPU load… After some research, I found Sanic/Japronto that could bring some raw performance on the server but they were still young projects and I was not happy with their direction… So here we are, Vibora is still at an early stage, missing a lot of stuff and far from production ready but I hope I’ll catch up soon 🙂
Why should people use it over Flask or Django?
First of all, Vibora is a work-in-progress. Don’t replace your Flask/Django app with it.
The project exploded on Reddit before I got the chance to make it stable… I’m working on it to get a stable release as soon as possible, stay tuned 🙂
But to answer your question: Flask/Django are synchronous frameworks, which is not bad but far from optimal when dealing with IO challenges (in my humble opinion). Vibora has also a focus on performance which is not a priority on those frameworks.
Which Python libraries are your favorite (core or 3rd party)?
Requests for sure. Although I do have some critics to it I think it influenced the vast majority of HTTP libraries out there (in many different programming languages) in a good way.
Thanks for doing the interview, Frank!