What are design patterns?

March 3, 2020 • ☕️ 2 min read

Coding can be fun! You get to type all those random characters that make up the syntax of a language and watch it produce cool results. Don’t get me started on how it feels when you have friends who don’t code, how cool you look typing all those things that don’t make sense to them and using fancy terms like “compile” and “debug”.

However, know this: at the end of the day, building software is serious business. That’s why design patterns are important.

Check out this cool staircase:

Apple staircas image Source: https://mashable.com/2013/10/02/apple-patent-glass-cylinder

Apple won an architectural patent for those fancy and cool glass staircase in their stores.

But quite a number of people may have problems with this design.

The transparency of the staircase poses a vulnerable situation for women wearing dresses or skirts. What if someone happens to be standing under the staircase or walks by and glances up?

Awkwarrrrrd! right?

The prevalence of camera phones and accessibility to the internet can also make this even more distressing for women.

If you’re not careful, you can build software like that glass staircase. Fancy, but with a faulty design that might put some users off.

Software engineering has grown over the years. We’ve learnt from our mistakes.

We’ve noticed some constansts. Patterns. Design Patterns.

We’ve standardised them.

You wanna be really good at building reliable and quality software?

You need to tap in.

The goal of this post and this blog as a whole, is to help you understand the need behind whatever each post is about, and why you should be interested.

So, I’m not going to talk about the actual design patterns we have today.

I would like for you to start asking the right questions.

So if for example, you build software with JavaScript or PHP or C# or Java or any other language, I need you to begin to ask questions like:

What design patterns exist for the language(s) I use? What problems do they solve? How can I apply them when I’m building?

There are tons of resources out there that can help.

If you have any more questions or any observations about this post, lets connect on Twitter!


Awelle's Personal Blog
Those tech terms are really not complex!