Remember the 90s? Pokémon, Beanie Babies, Crazy Bones, Super Nintendo, Pogs, and neon windbreakers… Those were the good old days. The web was a simpler place too, with barebones websites composed of mostly text and hyperlinks. I remember it like it was yesterday. Or, wait — 30 years ago?
I recently found Wicked Coolkit — a nifty retro-themed toolkit — and I thought it would be fun to play around with it to briefly relive those years. The toolkit includes a hit counter, webrings, and developer trading cards.
If you’re feeling nostalgic too, let’s explore some web development trends from…
With a long list of end-to-end (e2e) test frameworks available to choose from, it’s hard to know which one you should be using. Cypress and Selenium are leading the market as the most widely used options, but there’s also Appium for mobile app testing, Puppeteer for automating tasks in Chrome, and Protractor for Angular and AngularJS applications, just to name a few.
Recently, a newcomer has joined the pack: TestProject, a free, open source test automation platform for e2e testing that helps simplify web, mobile, and API testing. …
Slack is a communication lifesaver. It makes it simple to organize messages, retain searchable message history, communicate asynchronously, and keep everyone in the loop.
Slack can also be a productivity nightmare of never-ending interruptions.
The key to using Slack effectively is for everyone to commit to having good Slack etiquette. Let’s look at a few guidelines to see what this means:
Information sharing is one of the beauties of Slack. When you use public channels to communicate announcements, discuss ideas, ask questions, and troubleshoot problems, everyone in the channel can participate.
On the flip side, if you rely solely on…
All code repos should use merge request templates.
My goal in this article is to convince you that the above statement is true. Let’s dig in!
Let’s start with a little background for context. The professional world is complex. Take a look at just about any industry, and in it you’ll find complexity. Let’s examine, for instance, the fields of medicine, aviation, and construction. These fields may seem vastly different, but they also share many similarities.
First, each field contains too much information for any one person to know. Doctors specialize and super-specialize to occupy a specific niche. A doctor…
Software engineers make a lot of money. And yet, blogging, for most tech writers, pays very little. How do we reconcile these two truths?
To make the numbers more concrete, let’s imagine a software engineer makes $100,000 per year. If they work 40 hours per week, 52 weeks per year, that comes out to roughly $48.08 per hour.
A salary of $150,000 would be $72.12 per hour, and a $200,000 salary would be $96.15 per hour.
That’s a lot of money. And yet, most paid tech writing opportunities advertise payments of anywhere from $100 to $350 per article. …
Test-driven development, or TDD, is a programming paradigm in which you write your tests first and your source code second. TDD is perfect when you’re writing code that has clear inputs and outputs, like pure functions or API endpoints.
But what about when building user interfaces? Can TDD be done for UI development?
You’re about to find out!
In this article we’ll explore a few questions:
When discussing test-driven development with frontend developers, the conversation usually goes…
For any active code repository you maintain, it’s essential to keep your dependencies up to date. By staying up to date, you have access to all the latest features and bug fixes in each third-party package you use. It’s also much easier to update to one major version ahead, like from v2 to v3, than it is to update to several versions ahead, like from v2 to v7. Staying on top of your dependency updates helps you avoid the mess of dealing with several breaking changes at once.
I tend to update the dependencies in projects I own about every…
Remote work has killed pair programming. Or has it? If anything, it certainly presents an interesting challenge for pair programming when the two developers involved are no longer sitting side by side in the same room. But can you still successfully pair program in this world of remote work?
In this article, we’ll look at some of the benefits of pair programming and how you can use technology like the Visual Studio Code Live Share extension to continue to pair program remotely with your colleagues.
Let’s start with a quick definition. We’ll define pair programming as a development technique in…
Unit tests are important. They prevent regressions as you refactor code, serve as documentation, and save you hours of time not spent doing tedious manual testing. In short, tests enable change.
But how much attention to cleanliness do we give our tests? We refactor our app’s production code, give descriptive names to variables, extract methods for repeatable functionality, and make our code easy to reason about. But do we do the same for our tests?
Consider this quote from Robert C. Martin:
“Test code is just as important as production code. It is not a second-class citizen. It requires thought…