alpaca0984.log

Love coding with a cup of cappuccino with soy milk

Posts

Change WebView's theme through JavaScript

AndroidWebViewCSSJavaScript

I added a WebView in an Android app and found it doesn't interoperate with the prefers-color-scheme CSS media feature as well as it's explained in the official doc. It works with Android 13 but not...

Read more...

Google — Place Autocompletion API

PlacesAPIHiltJetpackCompose

If you work on an application that requires your users to fill out their addresses, there is an SDK that you should consider using. It is the Google's Place Autocomplete SDK. It enables your users..

Read more...

Detekt — Submit a review to the GitHub

KotlinDetektGitHubPython

Detekt is a static code analysis tool for Kotlin. It's more than just a fancy linter. It warns us of potential bugs and performance issues. Also, it suggests you follow Coroutine's best practices if you don't...

Read more...

Composition over inheritance

KotlinSoftwareDesign

Have you ever heard of “composition over inheritance”? It's one of my favorite concepts in software design. According to Wikipedia, it is about Classes should achieve polymorphic behavior and...

Read more...

Scrum is just a continuous improvement

ScrumAgile

If you are a software developer and in an agile-oriented team, probably you have experienced something called scrum, or you do it now. Do you like it? I didn’t use to. That’s because, once every...

Read more...

Android WebView — Intercept Download

AndroidJetpackCompose

In general, embedding a WebView inside native Android app is not so difficult. However, if you want to intercept interactions inside the WebView, it can be very tricky. Did you ever try intercepting download for like...

Read more...

Kodein — overwrite for a testing

KodeinKtorDependencyInjection

Kodein is a simple and easy-to-use dependency injection that works on JVM. I use it in our project’s data layer which takes care of networking. Let’s see a simple example...

Read more...

Clean code, clean commits and clean PR

CodingConvention

If you are a software developer, you write code, commit changes, and open pull requests. Do you have good practice for them? Here I will note my tips. They’re quite simple but really...

Read more...

Jetpack Compose — Where is recomposed?

AndroidJetpackCompose

After I published my last post "Jetpack Compose - One-time request", I came up with a question if it works in any condition. SharedFlow doesn't persist value inside of it so I expected it would...

Read more...

Jetpack Compose — One-time request

AndroidJetpackCompose

Thanks to the Jetpack Compose, building Android UI is much easier than it used to be. Within composable functions, we can do almost whatever we want. However, it is a good practice to use view models as state...

Read more...

Composition in Python

PythonSoftwareDesign

I'm a big fan of "Composition over inheritance". I mainly use Kotlin for my job and it has a built-in delegation mechanism which I like very much. Recently I have worked on a Python project with my friend...

Read more...

A Minimal Environment for Octave with VSCode

OctaveDataScience

If you're interested in Data Science or Machine Learning, probably you heard about Andrew Ng Machine learning at Coursera. Yes, I'm one of them. One thing which I think is interesting is that it uses...

Read more...

AWS Summit 2022 Berlin

AWS

On 12th May, I attended AWS Summit Berlin. The place is huge and clean and what I'm impressed with was that they offered free Curry 36. I didn't get one because there was always a long line of people waiting...

Read more...

Chrome extension to order a latte

ChromeJavaScript

I live in Berlin which has so many nice cafes. I like going there and opening a laptop and doing something. Recently I found one that serves really really nice Latte. I don't remember how many times...

Read more...

Convert Markdown to HTML with Syntax highlighting

Node.jsRemarkRehype

While I was creating this blog's template, I wanted to convert Markdown files into HTML ones with code syntax highlighting. Fortunately, there is a "remark" that works with markdown as structured data...

Read more...