Ryan usually wrote something here, blog, article, etc, you name it

  1. 29/5/2021 by Ryan Setiagi

    Automate App Center Upload with Fastlane

    App Center is a platform to build, test, release and monitor apps. Like google play and apple appstore, we can also store apps on appcenter for releasing the app to the QA for testing. Before we can upload an app, we need to create an "app" inside the appcenter dashboard. This "app" might have different specs based on "operating system", "platform", and we can also specify the "Release Type" for each "app". Uploading an app in appcenter is quite simple, we just need to build and save the app file (.apk and .ipa) and then upload it to the appcenter. On the App Center dashboard, go to the "Distribute" → "Release" section, and then click "New Release". Each operating system might have a different upload step, like on iOS and android, it has the same "Upload", "Write release notes", "Set destinations", and "Review uploads", but specifically on iOS we need to review "Destination's Devices" after setting destinations, to make sure all devices already provisioned with the correct profiles. Fo

    read more
  2. 10/6/2020 by Ryan Setiagi

    Refactoring nullish type in Typescript

    On javascript we have two different nullish type which is null and undefined. These types basically have same meaning that value with these types doesn't contain anything or empty, but these two types have different behavior, maybe you can find the differences between these nullish type in somewhere else in the internet. My point is, when dealing with nullish type (especially on typescript), we need to handle all the variables to have something kind of fallback. For example, On the code snippet above, we know that every response should returned with id, status, message, and data. Also on the getUserPhoneNumber() we pass data from response object and return the user phone number from that. All clear, but how if we don't know if the data is actually always exist. Ok, now just assume we know the response.data is not always exists by checking the response from backend side or by using tools like Apollo Codegen (it can generate Typescript definitions if you are using graphql). After we add

    read more
  3. 31/1/2019 by Ryan Setiagi

    How I Setup My vscode

    Visual Studio Code is my favorite code editor right now. I always use it for writing code. I have been using vscode for almost 3 years. At my usage, i setup this code editor for developing JavaScript. For someone who do not know what vscode is, here is a paragraph from it's website. Visual Studio Code is a lightweight but powerful source code editor which runs on your desktop and is available for Windows, macOS and Linux. It comes with built-in support for JavaScript, TypeScript and Node.js and has a rich ecosystem of extensions for other languages (such as C++, C#, Java, Python, PHP, Go) and runtimes (such as .NET and Unity). The main reason i choose vscode as my main code editor is because of it's popularity. Many developers are use vscode and they have their own setup or configuration for their usage. And then i tried and i love it. I have been using many code editor before like sublime, notepad++, and atom. But, i think the best fit for me are vscode. As i said before, i am using v

    read more
  4. 19/1/2019 by Ryan Setiagi

    My Linux Environment

    On this post i would like to tell you about my environment and experience of using linux system operations. I have been using linux as my daily basis operating system for about 6 months from 2018. Actually i used to use windows-based operating system for about 8 years, from windows xp to seven to 8 to 8.1 and lastly windows 10. But in the middle year of 2016 i learned another operating system with *NIX based kernel called Linux. My first linux distro that i dual-booted to my disk is Ubuntu (i forgot the version of it). Since then i get used to using terminal and get rid all of the GUI-things and change to CLI and i feel more powerful at that time, and that is true because i am feeling just like hacker (LOL, all geeky kid dreams). But then the problems is come, first, a lot of features of Windows are not available or not so powerful on Linux such as Microsoft Office. Second my laptop disk is cannot accommodate any other data because i use separate disk partition for linux. third, at tha

    read more
  5. 15/1/2019 by Ryan Setiagi

    Hello World

    So, h1 my name is Ryan Setiagi, but you can call me masbossun. and. This is my first post on my blog. and then.

    read more