728x90
반응형
[ pinslog/Log.daily() ]가장 훌륭한 코드는 작성하지 않은 코드다: 입사 3주 만에 프로젝트 중단을 건의한 이유2026-04-07 16:39:53들어가며개발자가 오직 나 하나뿐인 새로운 직장에 합류하며 받은 첫 미션은 명확했다.'기존 수기로 진행되던 현장 조사 및 보고서 작성 업무를 자동화하는 앱을 만들 것'하지만 나는 입사 후 3주 동안 단 한 줄의 코드도 작성하지 않았다. (테스트코드 제외)대신 현장 업무 프로세스와 레거시 데이터를 분석했고, 최종적으로'현재 환경에서의 앱 개발은 무의미하며, 전면 재검토가 필요하다'는 리스크 검토 보고서를 경영진에 제출했다.결과적으로 나는 회사를 떠나게 되었지만, 이 3주간의 경험은 4년 조금 모자란 개발자 커리어 중 가장 강렬한 인사이트를 남겼다.'무엇을 만들 것인가?'보다 '왜 만들면 안되는가?'를 치열하게 고민했던 그 과정을 기록해보려 한다. 1. 환상과 현실의 괴리회사가 원한 것은 클릭 몇 번으로 데이..
[ pinslog/Log.daily() ][git] git stash 쓰다 식겁한 이야기2024-07-03 20:55:46개발하면서 git stash 명령어를 요긴하게 사용하고 있었다.A 브랜치에서 작업하다 급하게 B 브랜치로 넘어가야 할때,커밋할 정도는 아니라고 느껴질 때,stash 해놓고 볼일을 보고 돌아와 마저 할 일을 하는 것이 정말 편리했다.이 날도 어김없이 stash 하고 돌아와 apply를 했는데내가 만들어 놓은 파일이 나타나질 않는 것이다.그게 지금 작업의 핵심이라, 사라지면 일을 한 의미가 없어지는 거여서침착하게 마음을 가다듬고 폭풍 검색을 했다.그러다가 어느 블로그에서 stash는 변경사항만 저장하고신규사항은 저장하지 않는다는 것을 알게 되었다. 눈물...작업한 내용은 다행히 로컬에 남아있어 겨우겨우 살려냈다.stash 할 때 신규 작업까지 모두 저장해두려면git stash --include-untrack..
[ pinslog/Log.daily() ][Kotlin] Kotlin Destructuring2023-12-27 18:36:42때로는 객체를 여러 변수로 분해하는 것이 더 편리할 때가 있다. 이를 코틀린에선 구조 분해 할당(구조 분해 선언)이라고 하며, 한번에 여러 변수를 생성할 수 있다. data class Person( val name: String, val age: Int, ) fun main() { val person = Person("David", 30) val (name, age) = person println(name) // David println(age) // 30 } 이는 다음과 같이 컴파일 된다. val name = person.component1() val age = person.component2() 데이터 클래스가 자동으로 componentN() 를 제공하며, 클래스에서 직접 구현하기 위해서는 다음과 같..
[ pinslog/Log.daily() ][Kotlin] takeIf2023-12-26 22:25:37주어진 조건을 만족하는 경우 해당 객체를 반환하는 함수이다. (만족하지 못하는 경우 null을 반환함) takeIf는 단일 객체에 대한 필터링을 도와준다. inline fun T.takeIf(predicate: (T) -> Boolean): T? 주어진 조건 (it.age > 30) 을 만족하는 경우 해당 객체를 반환 그렇지 않은 경우 null을 반환하는 것을 확인할 수 있다. data class Person( val name: String, val age: Int, ) fun main() { val list = listOf(Person("amy", 34), Person("john", 45), Person("tom", 27)) list.forEach { println(it.takeIf { it.age >..
[ pinslog/Log.daily() ][Etc.] MacOS 영상 녹화하기 (feat. 사운드 캡쳐)2023-12-13 16:34:59*Sonoma 14.1.2 기준으로 설명됩니다. 그냥 OBS 스튜디오만 설치하여 녹화하여도 사운드는 녹음이 된다. 마이크로 녹음이 되는 거기 때문에 내가 타자치는 소리, 말하는 소리 이런 것들이 다 들어가게 된다. 이를 제외한 미디어 소리만 영상에 녹화되도록 하고 싶다면 아래의 방법을 사용하면 된다. 1. OBS 스튜디오 설치 실행하면 보안 관련 설정을 진행하라고 하는데 하라는대로 해주면 된다. brew install --cask obs 2. 사운드 캡처 프로그램 설치 아래의 링크에서 설치 BlackHole: Route Audio Between Apps Zero Latency. Perfect for Streamers, Podcasters, and Online Instructors. existential...
[ pinslog/Log.daily() ][Kotlin] tailrec 꼬리재귀2023-12-10 22:16:31알고리즘 문제를 풀다가 알게 된 녀석 문제 : 콜라츠추측 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 이 문제의 키워드는 '오버플로 Overflow' 이다. 오버플로 Overflow 넘쳐 흐른다는 뜻으로, 컴퓨터의 메모리가 8비트의 데이터를 저장할 수 있다고 하고, 편의상 부호는 없는 양수인 경우만 고려해 보자. 가장 작은 값은 0000 0000 (=0) 이며, 1씩 증가시키면 0000 0001 (=1)을 거쳐 최댓값인 1111 1111 (=255)에 도달하게 된다. 여기에서 1을 다시 한번 더하게 되면 최댓값의 범위를 넘어서게 되고, 최솟값인 0000..
728x90
반응형