What is Clean Code?

Here are some views of experienced programmers about clean code.

Clean code is simple and direct. Clean code reads like well-written prose. Clean code never obscures the designer’s intent but rather is full of crisp abstractions and straightforward lines of control. — Grady Booch, author of Object Oriented Analysis and Design with Applications

Grady viewed clean code as code that has low complexity, straightforward lines, and readable.

Clean code can be read, and enhanced by a developer other than its original author. It has unit and acceptance tests. It has meaningful names. It provides one way rather than many ways…

Let’s try to containerized your applications (and take the advantages)!

What is Docker?

Docker is an open platform that provides the ability to package and run an application in a loosely isolated environment called a container. It can run many containers simultaneously on a given host. Containers are lightweight and contain everything needed to run the application, so you do not need to rely what is currently installed on the host. Containers can be easily shared to others, so that you can share containers to anyone who need the same containers as yours and they will get the same containers as yours.

What’s the uses of Docker?

  • Fast, consistent delivery of your applications

Docker allowing developers to work…

Write minimal code using TDD!

Have you ever create a ‘big’ application without any tests? How was it? Is it going well? Is it bug-free? Well, creating a ‘big’ application without any tests usually comes to hard to maintain and too complex code because you just write anything that comes to your mind in that time.

To overcome that problem, you can use TDD on your projects. TDD will make things easy for you to code. With TDD, you’ll write minimal code and avoid many code smells that you probably write on creating logic for your application.

Laws of TDD (by Robert . Martin)

  • You may not write production code until you…

Let’s get Git your projects!

git — most used VCS

What is Git?

Git is a Distributed Version Control Systems that created on 2005 by Linus Torvalds (and Linux development community). The development of Git was started since the revokement of BitKeeper’s free-of-charge status and it was made for Linux Kernel maintenance.

How to install Git?

To install Git, you can jump into its documentation and choose the right installation method based on your Operating System.

Adventure of Git — Basic Commands

In this section, we will learn basic commands of git by using it right away. But, before doing that, I suggest you to register for an account on an online Git Repository such as GitHub or GitLab. …

Agility is actually good! Want to know why? Check this out!

source :

What is Agile?

According to oxford dictionary, agile means able to move quickly and easily. In the context of software development, agile means the ability to create and respond to change, so that it can deal with uncertain and turbulent environment.

What is Agile Software Development exactly?

Agile Software Development is a term for any frameworks and practices that based on the values and principles of Agile Software Development’s Manifesto.

The focus of Agile Software Development is on people doing the work and how they can work together. And, the community of Agile Software Development put a big focus on collaborating and self-organizing team.

Self-organizing team means that it…

Should we care about users needs on making a product? Let’s learn more about UCD!

What is User-Centered Design? Have you ever heard about it? Are you curious enough to know more about it? Well, here is my understanding about User-Centered Design.

UCD Illustration [source:]

Brief Explanation

“User-centered design emphasizes that the purpose of the system is to serve the user, not to use a specific technology, not to be an elegant piece of programming. The needs of the users should dominate the design of the interface, and the needs of the interface should dominate the design of the rest of the system.”
— Donald A. Norman, 1987

To simplify, User-Centered Design (UCD) is a design approach on making product…

NGINX is open source software for web serving, reverse proxying, caching, load balancing, media streaming, and more. It was created by Igor Sysoev and first publicly released in 2004.

First of all, I will only show you a way to implement load balancing in Django Web Application in ArchLinux OS (one of linux distribution). You can do more research to know more about NGINX. So, before we going any further, we have to make sure that we already made a Django Project. Then, lets follow these steps.

Installing NGINX

To install NGINX in ArchLinux OS, you can run this command in your…

Muhammad Zuhdi

Casual learner

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