There are many professionals in the software development field, but very few of them are real inspirations in the community. We are glad to feature The Grumpy Programer , Mr. Chris Hartjes in our first interview today.
He is a remote software development consultant and tester who helps companies find and resolve bugs in production.
He is a PHP and Python developer, tester, author, and speaker.
The Grumpy Programmer owns a company Grumpy Learning Inc. operating for about ten years now. It provides PHP consultation, book creation, and courses to test PHP applications.
He worked remotely for Mozilla as part of the Ecosystem QA group, focusing on testing services and products that the Firefox web browser relies on.
He has authored “Grumpy Programmer’s Guide to Testing PHP Applications,” which is good enough to write tests with any framework and PHP application. Also, it helps in automated testing.
Devrims: First of all, share briefly about your career journey? How did you enter the programming world?
Grumpy Programmer: I was lucky enough to have a family that owned several computers when I was younger, ranging from a Commodore VIC-20 to some kind of IBM PC clone. I taught myself programming from typing out programs in magazines like Compute and Byte. After a brief detour to study civil engineering at college, I ended up going back to college to study computers and then got a job in 1997 as the “computer guy” for a company that sold compilation CD’s to professional DJ’s. They needed a website, I had learned a little bit of Perl but didn’t enjoy and stumbled across the PHP + MySQL combination. Been working with PHP ever since.
Devrims: Your profile suggests working in both PHP and Python. How do you see their future?
Grumpy Programmer: Neither language is going anywhere and remains solid tool for creating web applications. I don’t follow Python development much but PHP continues to push itself forward with new features, cleaning up inconsistent behavior, and trying to provide a balance between being friendly to beginning programmers while also giving more experienced programmers tools to build more advanced applications.
Devrims: Share the experience of writing the book “The Grumpy Programmer’s Guide To Testing PHP Applications. At exactly what stage of their career level should a developer read your book?
Grumpy Programmer: The book is aimed at intermediate PHP developers — in order to write tests you have to know how to write PHP code. You don’t need to be an expert but since tests are just more PHP code you are adding to your application, it would be pretty hard to teach a beginning developer how to write tests.
Devrims: There is so much talk in the town about PHP 8.1. What are your reviews about it?
Grumpy Programmer: Even though I have been using PHP for so long, I’ve never been the type of developer who pushes the language and tools to their extremes and breaks them. I’m happy, the work continues on the language with each iteration being a little faster and inconsistencies or unexpected behavior being fixed.
Devrims: You have been a speaker at CakePHP conferences as well. Share some insights if you think CakePHP is better than other frameworks or how it’s better with others in any aspect.
Grumpy Programmer: CakePHP was the first open-source project I ever got involved with and my longest-running web application (15 years and counting) was built with it. But these days I don’t really think any framework is better than another. Popularity contests are boring.
Devrims: Everyone has a few inspirations in the community. Who else is your inspiration in the software development communities?
Grumpy Programmer: I’m not a fan these days of “programming heroes” but I only have the career I have because Sebastian Bergman created the PHPUnit testing framework. I’ve been fortunate to work with lots of very smart developers over the years, which encourages me to keep learning new things.
Devrims: What would you like to recommend to new PHP developers? What single piece of advice would you like to give?
Grumpy Programmer:: I encourage beginning PHP developers to understand the problem that PHP was built to solve — how to easily create stateless web applications. It’s easy to get caught up in the hype and excitement that comes with PHP frameworks and related tooling. PHP is incredibly flexible — worry about solving your problems and then everything else can be fixed when you have a better understanding of the language.
Devrims: Which IDEs do you use or suggest according to your experience with PHP developers?
Grumpy Programmer: I’m a long-time Vim user (I use NeoVim these days) but also use PhpStorm. Pick an IDE (or editor) and learn its features inside and out. There are lots of good options available these days for PHP folks — literally spoiled for choice.
Devrims: You have worked at a famous web browser company Mozilla. Share the experience of working over there?
Grumpy Programmer: It is very rare that you get to work on something that millions of people use every single day. I approached my testing work with the idea that my goal was to find problems before the users did, and for the most part, it was the correct one.
Mozilla was also a great lesson in what happens when you have to create tools because your problems are actually unique instead of being ego-driven.
Devrims: You are working in a remote environment. Remote working trends have increased after COVID19 a lot. What do you think is the best or worst side of working remotely.
Grumpy Programmer: I’ve worked remotely since 2007 so the pandemic hasn’t brought much of a change for me personally in terms of work. I continue to work from a comfortable home office with my choice of equipment. I pursued remote jobs because I didn’t like how much time I was spending commuting and not getting to see my kids. Wouldn’t change any of it.
What I do think has happened is a lot of companies have had their communication problems exposed in an environment where you can’t have random conversations or everyone is expected to be “busy” at their desks.
Devrims: Hobbies are necessary to refresh minds, especially when we have a technical job. Apart from your professional life, what are your interests and hobbies?
Grumpy Programmer: My two main hobbies are Magic: The Gathering (specifically playing Commander, a multi-player version of the game where the focus is on social interaction) and a simulation baseball game that uses dice and cards and charts to replication playing the game. My longest-running website is on the league uses to track standings and results.
Devrims: We at Devrims provide one-click installation for the PHP stack. I would like you to check it yourself and share your opinion about the platform.
Grumpy Programmer: Any tool that allows folks to quickly and easily create virtual servers is a good tool. As powerful as AWS is, its tooling is written with engineers in mind and not people trying to get their ideas turned into a working application.
Devrims: Thank you for taking the time out for us. Who would you recommend that we should interview next?
Grumpy Programmer: I would reach out to Elizabeth Smith, someone who has done a ton of work with PHP in a Windows environment and consistently breaks everything she pushes against. Her email is [email protected] and tell her I sent you.