Skip to content

Instantly share code, notes, and snippets.

View jisungbin's full-sized avatar
👻
Beep beep boop

Ji Sungbin (Forky) jisungbin

👻
Beep beep boop
View GitHub Profile
여러분 안녕하세용 지난 번 행사에서 말씀드렸던 것처럼 내일 오전 중에 성빈랜드를 닫을 예정입니다!
못 오신 분들도 계실테니 다시 말하자면, 2~3년 동안 블로그 글을 써오면서 제 개인적인 기준이 많이 성장했는데요.
지금 성빈랜드에 쓰여진 글은 모두 글 퀄리티가 제 기준에 매우 못 미치기도 하고, 대부분 오래된 내용이라 현재와는 달라진 내용이 많더라구요.
그리고 글 내용 자체가 너무 어려워서…😂😂 지금 있는 글도 제대로 읽히지 않고 있을 확률이 커요! (읽다가 포기할 가능성 큼)
이런 것들이 저의 입장에서는 너무 아쉬웠습니다.
근데 모든 글을 제 기준에 맞게 최신 내용으로 수정하는 건 현실적으로 어려우니 성빈랜드를 닫고, 새롭게 개인 블로그를 시작하려고 합니다.

Tracking vs. Tracing in English

Tracking and tracing are terms that are often used interchangeably, but they have distinct meanings and are used in different contexts:

Tracking

Definition: Tracking refers to the continuous monitoring or following of the progress or movement of an object, person, or process over time.

Contexts and Usage:

  • Package Delivery: "Tracking" a package means monitoring its progress as it moves from the sender to the recipient.
  • Performance Monitoring: Tracking sales performance involves observing and recording sales data regularly.
import androidx.compose.runtime.Composable
import androidx.compose.runtime.InternalComposeApi
import androidx.compose.runtime.NonRestartableComposable
import androidx.compose.runtime.RememberObserver
import androidx.compose.runtime.currentComposer
import androidx.compose.runtime.remember
import kotlin.coroutines.CoroutineContext
import kotlinx.coroutines.CancellationException
import kotlinx.coroutines.CoroutineScope
import kotlinx.coroutines.Job
@jisungbin
jisungbin / DropShadow.kt
Created November 7, 2023 01:52
JetpackCompose-DropShadow
@Stable
fun Modifier.dropShadow(
borderRadius: Dp,
spreadRadius: Dp = 3.dp,
blurRadius: Dp = spreadRadius,
color: Color = Color.DarkGray.copy(alpha = 0.1f),
offsetX: Dp = 0.dp,
offsetY: Dp = 0.dp,
) =
drawBehind {
@jisungbin
jisungbin / Modifier.drawHorizontalFadingEdges.kt
Last active October 18, 2023 18:16
Jetpack Compose horizontal fading edges with ScrollableState.
@Stable
fun Modifier.drawHorizontalFadingEdges(
target: Color = Color.White,
width: Dp = 10.dp,
scrollState: ScrollableState,
) =
if (!scrollState.canScrollForward && !scrollState.canScrollBackward) this
else drawWithCache {
val gradientWidth = width.toPx()
/*
* Designed and developed by "옴마야" Team 2023.
*
* Licensed under the MIT.
* Please see full license: https://github.com/mash-up-kr/WeQuiz-Android/blob/main/LICENSE
*/
package team.ommaya.wequiz.android
import android.os.Bundle
@jisungbin
jisungbin / 01: basic types.ts
Created April 22, 2023 13:45 — forked from dimitardanailov/01: basic types.ts
Typescript in action
/**
* Boolean
*
* The most basic datatype is the simple true/false value,
* which JavaScript and TypeScript (as well as other languages) call a 'boolean' value.
*/
var isDone: boolean = false;
/**
* Number
class PlaygroundActivity : ComponentActivity() {
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
setContent {
Layout(
modifier = Modifier.fillMaxSize(),
content = {
Box(
modifier = Modifier
.layoutId("green")
fun <A, B> mutableStatePairOf(first: A, second: B): SnapshotMutablePair<A, B> {
return SnapshotMutablePairImpl(first, second)
}
fun <A, B> mutableStatePairOf(value: Pair<A, B>): SnapshotMutablePair<A, B> {
return SnapshotMutablePairImpl(value.first, value.second)
}
@Stable
interface SnapshotMutablePair<A, B> {