PyDev of the Week: Pedro Pregueiro

This week we welcome Pedro Pregueiro (@pedropregueiro) as our PyDev of the Week! Pedro is an entrepreneur who has co-founded several companies. He is also an author and contributor at Real Python.

If you have some time, check out Pedro’s website. You can also see what he’s up to over on GitHub or connect with Pedro on LinkedIn.

Let’s spend some time getting to know Pedro better!

Can you tell us a little about yourself (hobbies, education, etc):

Hi there, my name is Pedro!

I was born in Braga, Portugal  ???????? and followed, what I believe is, a typical journey for developers. I took a BSc in Computer Science, followed by a MSc in language engineering, but quickly dropped the masters to start working at a small local company. After a year, I moved to Lisbon, to join a consulting firm and work with a big telco.

Soon enough, I got bored with the big company world and decided to work with startups instead. I ended up working with a London company, moving to Oslo soon after, then back to Lisbon. Now, I live in Stockholm.

After a decade of being a coder in multiple companies and at different levels (junior, lead, CTO), I decided it was time to start my own company. I moved to Stockholm to join a startup accelerator, where I met my co-founders, with whom I’m building Satchel today.

In my free time, I dust off my guitar now and then, but mostly I play video games to relax and have fun. I also enjoy playing online chess, especially bullet in between tasks.

Why did you start using Python?

By chance, I believe. After the mandatory boring Java consultancy gigs, I started playing a lot with Perl and Ruby (RoR).

I was super into web scraping, regex, and that kind of stuff, and at the time used mostly Perl for that. Also, Perl was pretty neat to create simple scripts to automate boring tasks. On the other hand, for web stuff, I was using RoR because using Perl for a web page felt a bit crazy at the time.

Then, I started using Python more often, at a new job. To start, I used it for building APIs, but soon realized that with Django (and later Bottle or Flask) I could get pretty close to the RoR easy-to-use feeling, while still using a language I felt was broader and more capable.

I don’t know how it happened, but soon after that I just started building everything in Python and fell in love with it. The simplicity, the speed, the potential, it was just great. I’m not coding as much today, due to being a founder, but every time I need to do any coding to automate a task, I pick Python.

What other programming languages do you know and which is your favorite?

Not sure I have a favourite. I’ve been using JS a lot lately, and even thought I wasn’t a huge fan of it, I think it has definitely matured quite a bit in the past years and, with the right framework, I think it’s a really pleasant language to work with today.

I studied Haskell at uni and every now and then I still dabble a little bit in it. Every time I hear of a startup that is using Haskell on their stack, I wonder how cool it’d be to join them and try using it on my day-to-day, as a professional instead of a hobbyist.

What projects are you working on now?

Right now I’m not coding as much. I’m working on my own company and, apart from a few automation scripts and a little bits of JS work, I mostly spend my time in between customer support, operations and whatever is new and burning on any given week.

Which Python libraries are your favorite (core or 3rd party)?

I’m a big fan of the collections core library. One of my managers in the past showed me how to use the defaultdict and I’ve loved it ever since, and use it quite often.

I also use requests a lot because some of the work I do requires a lot of integrations w/ different APIs. I also use arrow quite a bit, even though I feel like I should try one of the newer, cooler alternatives.

How did you get started with Real Python?

‘ve been following Dan Bader for quite a few years, before I even heard of Real Python. I really liked his python tips newsletter, and always felt he was really good at summarizing things into simple and easy-to-digest bits.

As Real Python grew bigger, I started finding myself reading their articles more and more often. I clearly recall reading the logging and pep8 articles, and thinking they were awesome. I started sharing RP’s article with my team all the time, and always felt like they were so well written and thorough.

At some point, I was freelancing and doing my own side project, and, since I had a bit more free time than usual, decided it was time to give back to the community. I wrote an application to RP saying that I’ve never been a technical writer, that I didn’t even know if I was capable of doing it or even good at it, but that I really wanted to give back and, if possible, write for RP.

I got an article as a trial and that’s how the story begun 🙂

I see you have co-founded several companies. Do you have advice for others who would like to strike out on their own?

There’s lot of advice I can think of, but maybe the most important is to just do it (sorry nike). If you have an idea or project that you’ve been thinking of doing for a while, go ahead, start small and build something that either makes your life or other peoples’ life easier.

After starting, my second most important advice is to launch it 🙂 Whatever you decide to build (or are building), put it in front of people. As a dev, I think it’s sometimes too easy to just build more and more, add scope, more functionality, and delay the process of actually launching and putting things in front of users. I did that mistake myself a few times, and ended up with a bunch of little dead projects, that no one ever used.

So, in short, if you have an idea of something to build, build it and launch it asap. No matter how small or simple.

Side-note: feel free to reach out if you’re working on a side-project or small co and wanna bounce some ideas or need some help. I’m always happy to help a fellow dev turned founder.