Photo by ThisisEngineering RAEng on Unsplash

Even the best software developers are susceptible to making mistakes when writing code. A lot of times, these mistakes manifest themselves in bugs, code-smells, or even security vulnerabilities. And even when flaws don’t manifest themselves locally, deploying the application to production at times exposes issues (such as in the build process).

This is where testing becomes very important in each step of the software development lifecycle. It ensures that bugs and vulnerabilities are caught early and remediated. While there are tests that we do manually, we want to automate them a lot of times.

What is Test Automation?

Test automation is simply using automation…

Image Source

What are coding standards?

Coding standards are simply a set of principles, guidelines and rules that guide software developers on how to structure their code. It can also be considered a benchmark to measure their code base against.

In the context of this article, what we mean by “coding standards” is not the formally promulgated standards set out for, say C and C++, such as the MISRA standards. What we mean here are the generalized practices that can be applied to any language.

Some other terms used for coding standards are “coding conventions” or “style guides”. …

What Michelin Star Restaurants Can Teach Us About Message Brokers

Let’s say you are in a jam packed restaurant (in the times before the pandemic and social distancing requirements). This restaurant serves the best pasta and the filled up tables are evidence to you that their pasta’s reputation is well grounded.

Stay with me here, I’ll explain in a moment why we’re talking about pasta in an article on message brokers.

You sit down. A waiter comes over and asks for your order, which is, of course, the world-famous pasta dish. …

Java developers have very high job prospects in the software development industry. Rightfully so, Java powers a lot of the world’s desktop, web and mobile applications and servers. Most companies that recruit Java developers are in the most mature industries such as health care.

Consequently, it is important for Java developers to be effective and efficient in their jobs.

Below are six of the most helpful tools that Java developers should consider using.


A few Java developers will not recognize Netbeans. It’s a multi-language open-source Integrated Development Environment (IDE).

Far from being a simple text editor, it provides some neat…

Previously I wrote about an algorithm for finding out the height of a binary tree using iteration. Though that method gets the job done (in 7 steps no less), the same can be accomplished in a much simpler way.

Image of City Hyde Park in Chicago by Steve Hall. Image found in

In my opinion, one of the most powerful programming techniques is recursion. For readers new to programming — it is simply a function or method calling itself. To make the introduction simpler we have a method below that calls another method:

def outer_method(name)       (R1)
inner_method + name
def inner_method (R2)
"Hello "
print outer_method("Steve") -> #"Hello Steve"

In the…

Data structures and algorithms are the heart and soul of computer science and software. One cannot learn programming without understanding how data is organized in code and how to manipulate it.

One such data structure is a binary tree:

Photo by Jeremy Bishop on Unsplash

Oh no not that kind of tree, I mean this one:

Before learning web development and programming I was always at awe whenever I looked into nicely done websites. I love reading articles and the web is my primary source of contemporary information. Thus, I was exposed to a plethora of awesome pages that not only looked great but also provided sensible functionalities for its viewers. It stirred in me a desire to also one day be able to present information to the world in a way that would wow anyone looking at them.

Image by Caleb Dow on Unsplash

As a content creator I began by using Blogger, writing about financial education and entrepreneurship. With Blogger…

Last month (September 2018) I started the Microverse Fast Track Program. It’s an intense software engineering training utilizing what is known as remote pair programming. The goal of the program is to get its students ready for entry-level remote or relocation-based jobs in software development. Pair programming is not an entirely new concept, but I consider it a revolutionary learning method. Sans an instructor but with a partner to learn with.

How I used to learn — inconsistent, inefficient

Learning to code by yourself produces melancholy (Image of Richard Hendrix of HBO’s Silicon Valley T.V Series)- grabbed from

Prior to joining the program, I had been trying to learn web development for more than 3 years. I had purchased a number of courses on Udemy (and signed…

Ryan Vergara

Entrepreneur | Funnel Hacker | Software Engineer | Most Importantly A Child of God in Christ Jesus

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store