2020, Year of Self-Growth, 2021, Year of Productivity

2020, Year of Self-Growth, 2021, Year of Productivity

Share My Journey in 2020, and what's for 2021

2020 has been passed, it’s been a thrilling ride for this year especially for uncertainties about COVID that limit us to move around especially traveling. Some people like me, who work abroad, far from family, may have some difficulties. However, it doesn’t need to be that desperate. Instead, there were so many good things that happened during this past 1 year. My productivity increase twice even more than before. There were multiple accomplishments that I took as proof that this year, as much as it sounds a hurtful year, we can always find and seek the opportunity to turn the table around.

Introducing SFSymbolsFinder

Compact Tools for SFSymbols

Recently I got stumbled with a boring way to create an icon from SF Symbols. As you know that Apple introduces SF Symbols for a developer to reuse in their own application if needed. SF Symbols is a set of over 1,500 symbols that you can use in your app. Why SFSymbols are great for indie developers? It is free Optical alignment with text for all weights and sizes Support multicolor Support localization for RTL languages such as Arabic, Devanagari, and Hebrew Normally we will do something like this for using the SFSymbols

Xcode handy “Move and Share” breakpoint in 2 minutes

Learn how to easily debug in Xcode

Do you know that we can actually simply share our breakpoints with our colleagues at work? Xcode provides us with the capability to share it. This share function is very handy if we want all colleagues to have a similar breakpoint. Some breakpoints that worth sharing are Exception breakpoint, Runtime breakpoint, and some Symbolic breakpoints. Let see how it works Go to your debug navigator panel on the left panel

Symbolic Breakpoint Xcode in 2 Minutes

Use Symbolic Breakpoint for debugging

Once upon a time, while I was debugging my code, I found out an annoying warning comes up like below [TableView] Warning once only: UITableView was told to layout its visible cells and other contents without being in the view hierarchy (the table view or one of its superviews has not been added to a window). This may cause bugs by forcing views inside the table view to load and perform layout without accurate information (e.

Fun usage of Generic implementation in Swift

Implementing Generic in Swift

Most of us know that generic in programming means we able to do something not limited to one specific type but has more wide selection on the same basis. The most common examples are Queue or Stack use cases. Let say we would like to implement an implementation of both problems not limited to one type of data type, we would like to use a Generic way to solve this problem like the code below

Escalated Testing Pyramid

Understand Pyramid of Testing

As a normal software engineer, we always remember the rule of thumb of testing. We always heard the word of the testing pyramid which consists of 3 things : Unit Testing Integration Testing UI Testing Unit Testing is the foundation of your test suite that will be made up of unit tests. Your unit tests make sure that a certain unit (your subject under test or SUT) of your codebase works as intended.

MapView Annotation in SwiftUI

Implementing MapView in SwiftUI

SwiftUI is very powerful for building an interactive UI at a fast pace. However, there are a couple of limitations still there such as some native API from UIKit like MKMapView from MapKit or search bar and other UIKit API. I will provide a tutorial for making a MapView in SwiftUI by using UIViewRepresentable as well as putting callback to the SwiftUI if we have clicked the annotation. Some quick knowledge about several items below:

Wrapper Pattern Swift in 5 minutes

Understanding type of wrapper pattern in Swift

Have you ever heard about the problem that you need to separate two modules working independently without knowing each other implementation, but requires to be able to communicate easily by only sending necessary data? Most of the advanced use cases will face this real-world use case and we require a more advanced design pattern to be able to solve this pattern to give more scalability to the project. There is a general concept about “Wrapping” an object through an intermediary class that can adapt to each other.

Distributing private project with Cocoapod and Carthage in 5 minutes

Learn how to use deploy private project with Cocoapod

Last week I have a problem while making a pod for my SDK team. I ever made my own pod long time ago and it was very easy in the process. But this one was a different story. I need to make support of Cocoapod and Carthage and SPM for the project that is built within private repo but we want to distribute it globally. So what is the option? Pod and Carthage and SPM offer capabilities to share the project repo to being used widely by many people and they can easily integrate or even contribute to it.

Trigger iOS Unit Test Check-In Github with Jenkins (Automation)

Learn to deploy unit-test check-in with Jenkins

Wonder how to make automation for triggering the build and unit test in git with Jenkins? So this one could be the easiest tutorial you can follow. First let open our Jenkins web page, login, and create a new Free project. Once you create it, go to configure tab and you will go to this page below Fill up the textbox above on the description and tick the GitHub project row and fill in the project URL.