Django is a MVT (Model View Template) framework used for building web applications. It is simple, powerful, and have many built in features. Django is the first framework that I use to build a website. With Gitlab CI/CD, we can deploy our website with just pushing a git branch.
In this article, we will learn how to automate deployment to Heroku with Gitlab CI/CD. So here are the steps.
Create your app from Heroku dashboard. Your app-name determines your host…
Last year when I was coding back-end server for a website, I want to try to run the back-end server as close how it actually run in the production server. But to run it like that, I need to install docker. The question “Why do I need Docker?” and “Why in every CI/CD use Docker?” pop-up in my mind multiple times. To answer these questions, first we need to understand Docker.
Docker is an open platform for developing, shipping, and running applications. Docker enables you to separate your applications from your infrastructure so you can deliver software quickly. With Docker…
In software engineering, design pattern is a reusable solution to a general problem in software design. The repository pattern is one of the most popular design patterns at the moment. If you know Erich Gamma’s book about design pattern, you should know about creational, structural, and behavioral design pattern types, but repository pattern is not listed in any of those. Then what is repository pattern?
Currently, I’m working on a Flutter project. It requires back-end API calls and should also work when it is offline. …
You’ve certainly heard the term “User Persona” before, especially if you have experience in UX design. Personas are a tool you certainly need to create a more user-centered product.
In this article, what is persona, Why do you need them, and how to create them.
A persona is a fictional character that represents the target user. Personas are commonly created for websites, applications, or products to help understand the audience they are targeting. Personas are mostly created from interview with the target audience. With this information, companies can create a fictional group of users that most accurately reflects their target…
In this story I’m gonna tell you my experience implementing offline database in my Flutter project.
To add SQLite into your app, you need to install sqflite library. It’s a third party library that has SQLite in it.
To install SQFlite, I type into the terminal:
flutter pub add sqflite
Writing that in the terminal is way faster than to search the latest version of sqflite in the pub.dev website and add it to
pubspec.yaml file. In your
pubspec.yaml , a new line that contains
sqflite should be automatically added inside
dependencies: that looks something like this:
Sometimes, there are classes that can’t be tested normally. Maybe it’s because there’s not many public methods, there’s an instance that can only run in the production code, or some other reasons. In this short article I want to share with you my experience writing tests with a powerful testing tool called Mockito.
Currently I’m working on a flutter project, and I have this
ActivityItemHelper class that I want to test.
DatabaseProvider is a service to create, configure, and get the database. …
In software development, clean code is very important. To write a clean, understandable, and maintainable is an important skill for any software developer. It is frustrating to continue someone else’s code but you cannot understand what it’s doing. In this article, I’ve list some of my tips to make your code a bit cleaner and easier to understand for everyone.
You don’t need to write comments on the variable if you name your variable correctly. Don’t use letters like x, y, z for a variable (for loop variables are an exception).
// BAD NAMING
int x = 1; // period number
In this article, I’m sharing with you my experience with Test-Driven Development on a new environment. But first, we must understand Test-Driven Development.
Test-Driven Development (TDD) is a technique to create tests before the implementation code. Writing the test first reduces errors that can occur during development. Test cases make sure that the code remains functional even when other people try to modify your code.
Steps on how to code with TDD:
In this article, I will share with you some of Git’s commands that I often use and my experience applying Git Flow in one of my projects.
Here are my most used git command other than the basics. To view all the commands, run:
git --help or
git <command> --help .
git branch is a command to create a new branch or manage created branch.
git branch <branch_name>to create a new branch with
<branch_name>as the name.
git branch -d <branch_name>to delete a branch.
git branch -m <old_branch> <new_branch>to rename a branch
git checkout is a…
In the past few days, my team have been creating our mobile application for Badan Pengelola Keuangan Haji or BPKH in short. BPKH is an institution that manages Hajj Finance in Indonesia. BPKH needs a mobile application to track monitoring of projects they have. Our goal is to simplify project monitoring anywhere and anytime. We use Scrum to help us achieve our goal and create a working software that meet BPKH needs. But what is Scrum?
Scrum is a lightweight framework that helps people, teams and organizations generate value through adaptive solutions for complex problems.
A framework doesn’t…
Computer Science Student