Peter Krumins is a well-known open-source developer and co-founder and CEO of Browserling, a popular cross-browser testing service. Peter is most known from his popular blog cat-on-mat where he’s been blogging about programming for a decade. We’ll be chatting with Peter about how he became a programmer, how he created his blog and what it’s like to run your own software company.
Hello Peter and thanks for your time. Can you tell more of yourself to the readers?
Peter: Hey, thanks for inviting me here. You already gave a good introduction. Besides Browserling and catonmat, I’m also Hacker-in-Residence at Hackers/Founders, world’s largest startup network. The term “hacker” here means a skillful computer user.
How did you start programming?
Peter: I just really liked computers as a kid. I started exploring them and then heard that they can be programmed. I asked everyone I met to explain this to me and teach me. People were helpful and I quickly learned various programming languages.
Which was your first programming language?
Peter: I started with Visual Basic, mIRC Scripting and C all at once. I also tried C++ but couldn’t understand templates so I only learned it later.
Which programming language do you enjoy the most?
Peter: I like many programming languages. They’re all pretty much the same. They’re all Turing machines. But if I have to choose one then it’s Perl.
What do you think new programmers should know when they start?
Peter: That programming is super hard and it will take many years to learn it.
How to learn a new programming language?
Peter: You should just start with an empty text file and try to write some code in that language, and use a search engine to find examples. Don’t buy books as you don’t know which one to choose and most authors have no idea how to teach. Another great approach is to start with interactive online tutorials such as Code Academy or the similar sites.
You’re an author of a book yourself, aren’t you?
Peter: Yes, I actually wrote several books about one-liners. Perl one-liners, Awk one-liners, Sed one-liners and now I’m working on Bash one-liners.
What are one-liners?
Peter: One-liners are these tiny programs that fit in a single line of code and do one and only one thing really well. They’re the best time savers. One-liners help you quickly accomplish big things. For example, doing quick data calculations, deleting particular lines in files, extracting patterns and converting data. All this can be done with one-liners and doesn’t require you to write bigger programs.
What’s the difference between Perl, Awk, Sed and Bash one liners?
Peter: There is no big fundamental difference. These are just different languages. I like to know many languages so I wrote about them all, and will be writing about many more.
How did you write one-liners books?
Peter: It started as a tutorial on my catonmat blog. I wanted to show people how awesome one-liners are. My tutorial turned into a series of posts. Then I self-published my posts as e-books. Then No Starch Press noticed my work and I published Perl One-Liners with them.
How was it to work with No Starch Press?
Peter: It was a long process. We did a lot of editing for about 6 months until it was finished.
How did you start your blog?
Peter: I just wanted to become popular online and establish my name as a great developer. My idea was that if I write interesting articles and create interesting projects then people will get to know me and when I launch a startup I’ll immediately have a lot of users and customers.
Did that work?
Peter: It did! My blog quickly grew in popularity and when I started Browserling I already had a base of users and when I went to meetups people told me they read my blog. Success!
How did you start Browserling?
Peter: I read a lot of Paul Graham’s essays about starting a startup. Then I met a friend online in Perl programming channel on FreeNode and he had read Paul Graham’s essays, too. Then we just started working on the idea that we had.
What’s exactly the idea behind Browserling?
Peter: Browserling is a cross-browser testing platform. It lets developers quickly test their website designs and code in all the web browsers. There are so many browsers (IE, Firefox, Chrome, etc), and each browser is a little bit different. To make great websites you’ve to test your site in all the browsers. Browserling maintains installations of all browsers and lets you test your code in 5 seconds.
What is your biggest challenge faced so far?
Peter: In Browserling or in general? My biggest challenge in life was learning everything I know. That was very difficult and time consuming. At Browserling everything is easy as it’s just programming that I really like.
How do you choose your development environment?
Peter: I prefer a dual Windows/Linux setup. Windows runs GUI software, such as Photoshop, and I ssh into my Linux servers with Putty. I automate everything with Perl scripts and one-liners. I use Vim as my text editor. I don’t need anything else. As I like to say, give me the command line and I shall move the world.
On your blog you run a popular article series about your favorite books. Can you tell me more about that?
Peter: I just love reading computer and programming books. I constantly keep myself updated about the latest literature. Especially I like books that follow puzzle-hint-solution style, such as The Little Book of Semaphores by Allen Downey, or books that are a dialogue between the writer and the reader, such as The Little Schemer.
What are you fond of doing when not coding?
Peter: I love to keep myself in perfect shape. I run 5km every day, do 100 pushups and 50 pullups. I also love to compete in track and field. And I also like to make comics for the nerds.
What’s more important talent or hard work?
Peter: I don’t know. A little bit of each, I suppose.
What are your plans for any new projects?
Peter: Actually I just started a new project. It’s a network of online tools. Online tools are tiny utilities for getting simple tasks done. Each online network site focuses on a single tool category and each tool does one and only one task. All tools work in the browser and are entirely powered by JavaScript without any server-side processing, so they are super fast. That has been fun.
Thanks Peter!