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…
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.
Docker allowing developers to work…
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.
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.
To install Git, you can jump into its documentation and choose the right installation method based on your Operating System.
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.
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…
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.
“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.
To install NGINX in ArchLinux OS, you can run this command in your…