Have you heard the commandment of the unit testing crowds? We must achieve enlightenment. We must achieve 100% code coverage! Any project that does not achieve 100% code coverage is garbage!
It’s an enticing argument. If we accept the logical argument that testing is good for code, then it would seem to follow that more tests covering 100% of our code would be even better, right?
It’s true, code coverage is great. It is definitely something that we should strive for. It’s a simple enough argument to make, and it holds true in the majority of circumstances — foreshadowing!
Good code covered by good tests to 100% will only serve to make your project stronger over the long term. This is the utopia that we are searching for, and gosh darn it, we deserve it, don’t we? …
If you do any open source development in PHP, you are likely to stumble across the need to use multiple PHPUnit versions. This can become a pain quickly.
Do you use the vendor directory?
Is it PHPUnit 7, or can you use PHPUnit 9?
I deal with this issue a lot, as I swap between Laravel and WordPress open source projects, and then the random projects that I like to contribute to. Each seems to have their own PHPUnit needs, and I’m constantly having to look up which version I should be using.
That’s why I created this BASH script to act as a polyfill for PHPUnit. Instead of trying to modify PHPUnit, and use just a single file, I tackle the job at the operating system level. …
What would you do to be able to work side by side with the people at the top of your industry? To sit in on their discussions. To have them personally review your work, and provide feedback. All while building software together that makes the world run.
This is an article about open source, but it’s really an article about ego. The problems with open source are the same as the strengths. It is free and open to everyone. Everyone includes some of the greatest minds in computer science — as well as the cockiest minds in computer science.
These are not mutually exclusive, but I digress. …
My last week has been an insane flurry of development on WordPress core, as I attempt to do some code clean up. Part of that was finally installing xDebug and making it work with the WordPress Development environment.
Once I got that working I did what any self respecting developer would do.
I played with it.
I set a breakpoint at the very beginning of the request — first line of index.php — and I clicked step-in until my finger got tired. If you’ve never done this, let me just say…
It’s dreadfully long.
Which I knew, but I also apparently hate myself a little, so I kept going. That is, until I realized what I was actually seeing, and get curious. …
Have you ever heard the term “Nor’easter?” Growing up in New England, I learned that term early. At 10 years old I learned a new term: Ice Storm.
The Ice Storm of ’98 was without a doubt the worst storm I have personally lived through to date. My home had no power for weeks — plural. We couldn’t travel without risking going off the road. Power poles — not just lines — were laying on the ground, toppled by the weight of the inches-thick ice that coated them from top to bottom.
Ours was one of the lucky families. We had a wood stove. It stayed cold enough that we were able to store most perishables outside, and anything that needed to stay frozen went next door to the house with a generator. …
I’ve been writing code every day for the last 12 years. In that time I have experienced all of the ups and downs that come with doing what you love professionally.
Long before I was a professional developer, I was an amateur writing code in notebooks, and transcribing it to a PC when I was able to get onto one. I would read books on programming languages like others read novels. …
What is your job as a software developer?
That question is something I’ve been thinking about for years, now. What, really, does it mean to be a developer?
Is our job to write code? We certainly start out thinking this, for the most part, don’t we. Just show up, write my code, and go home. If that’s where you’re at right now, keep reading.
I’m about to blow your mind.
Writing code is how we generally do our job, but writing code isn’t the job itself.
So, what is our job, as developers?
That’s the big question. I read an article the other day that stated our job as developers was to solve problems with code. …
Tobi, I’m not sure if you’ve noticed, but you upset some people with your tweet.
I’m not going to presume to know how you feel about front end developers, because Twitter is notoriously bad at properly transmitting the full context of a statement.
That said, I want to focus on this tweet specifically. Because, let’s be honest, it’s kind of bad.
Front end developers are developers. Not just junior developers, but developers in full.
Now, I don’t want to nitpick your comment too much out of context, so let’s look at your follow up.
Front end development is 100% a specialization within the larger context of engineering, but you’re absolutely wrong about it not being an independent layer. …
I started writing programs before I could read properly. I was 5 years old when I wrote my first line of code. I still remember it to this day:
10 print "Hello, world"
I copied that, verbatim, from a book titled “BASIC for Kids” that came with the Apple IIe my father brought home in a box of parts. I couldn’t read the book very well. I had to ask for help. My mother explained to me that the highlighted sections were what I was supposed to type into the computer.
So I did.
First, the program above.
Then longer programs. Programs that built chess boards on the screen. Colored the screen with lines. Programs that made rudimentary choose your own adventure games. …
I’m a self taught programmer, which really means the majority of my instructors have been frozen in time in the form of the written word.
Robert C. Martin, aka Uncle Bob, is one of those instructors.
But, as we grow, and we look at subjects in our own light, it is natural that we will grow different views than our teachers. Which is what I’ve done lately around the topic of Clean Architecture, specifically around Martin’s arguments about folder structure and web frameworks.
I’ve watched nearly every video I can find on YouTube where Robert Martin gives a talk about clean code, or clean architecture. …