source: Jo Szczepanska on

An individual review article for Software Engineering Project UI 2020 course.

Worried about a messy or inconsistent design? This is where design guidelines step in to save the day. Design guidelines help you have efficient and consistent design throughout your application. They help guide the overall style and flow so that you don’t repeatedly think about things like, what colour should this button be? or what size font should I set this text?

What is it exactly?

As defined by, design guidelines are guidelines on how to implement design principles such as learnability, efficiency and consistency in order to let your application have…


An individual article for Software Engineering Project UI 2020 course.

Behind most applications, codes and products, there is a team. This where team dynamics steps in. How the team communicates and work together will be the foundation of how the development process grows as time goes on.

What is Team Dynamics really?

“Team dynamics are the unconscious, psychological forces that influence the direction of a team’s behaviour and performance.” — S. P. Myers (2013)

The connections between the individuals in the team and how everyone interacts with each other is what makes up the team dynamic and what determines how the flow of work will…

An individual review for Software Engineering Project UI 2020 course.

source: ammiel jr from

What is docker?

When developing and finally deploying an app, you need to have multiple things installed and configured on the production server, such as the database, libraries, web servers, other dependencies, and so on. The frameworks, architecture, and tools may have discontinuous interfaces between lifecycles and this can result in many complexities.


An individual review article for Software Engineering Project UI 2020 course.

Just like how vaccines need to be tested before mass distribution, we better test out our design before deploying it for mass usage. What better way to do this than to conduct some usability testing?

What is Usability Testing (UT)?

UT is a practice of testing to see if your application is easy to use for a group representative of users. This is done by observing users complete a series of tasks known as scenarios. It can also be done for multiple designs to test any alternative designs.

Why UT?

Why bother conducting UT? Because they…


New in Flutter and want to start making custom widgets? This article will give a simple example of making custom widgets while using the classes available from Flutter.

Before we start talking about the Flutter stuff, let’s talk about refactoring.

NOTE: For those who want to just look into the Flutter part, feel free to skip ahead.

What is Refactoring?

“Refactoring is a controlled technique for improving the design of an existing code base.” — Martin Fowler

Refactoring is done by applying small changes to the code design while preserving their behaviour. It is an iterative practice with the goal of reducing bug potentials, reduce code smells, reduce code duplications, improving reusability and maintainability.

Keep in mind that refactoring is…

An individual review article for PPL UI 2020 Course

As we take more and more projects, surely we are bound to go through some ‘people management’ as we call it here in PPL UI Course. When working in a team, we should be able to interact with them, build relationships so the team can work in a better environment.

There are 3 main aspects that I would like to discuss in this article regarding people management:

1. Making Friends

Making friends is such an important ability. The more friends we have, the more help we can get. Friends are those we can go…


An individual review article for PPL UI 2020 Course

In this 2020 pandemic season, everyone became more concerned with cleanliness. This is also something, us, programmers should have been concerned with about our code. Having a clean code will help ourselves, as well as other programmers who may later use our code too. This is especially important when working within a team. Clean code helps us navigate, debug and reuse code with much more ease.

What is Clean Code?

Clean code is a practice all programmers should apply. Dirty code is something all of us would want to avoid. According to Robert Martin, the…

Photo by Emile Perron on Unsplash

An individual review article for PPL UI 2020 course


What is TDD? TDD is an approach and style of software development where tests are made first before implementing any code functionality. The tests done are for every small functionality of the application. This means the tests will fail first and only then will any code implementation be done. Additionally, only enough code is made to make the tests pass. Any further code should wait for the next set of tests to fail first.


As programmers, we are bound to find bugs and failed tests that leave us confused and frustrated…

Photo by Annie Spratt on Unsplash

An individual review article for PPL UI 2020 Course

Version Control?

Known also as the Version Control System (VCS), Version Control allows organised team management within a development team. Realistically, different team members or developers will be working on different things at the same time and the changes made by each developer may not necessarily be compatible with other versions of the project developed by other developers. VCS will help solve problems like this by tracking individual changes and have a merging system to prevent any conflicts within the project.


Git is one of a VCS and is probably the most popular…

source: unsplash

An individual review article for PPL UI 2020 Course


Wilson Hadi

3rd year Bachelor’s Degree of Computer Science at University of Indonesia

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