본문 바로가기

전체 글6

[독서기록] <데이터 삽질 끝에 UX가 보였다> Part 1 0. 들어가며데이터 공부를 시작하면서 가장 궁금했던 건 "그래서 그렇게 모은 데이터는 어디에 어떻게 쓰이는 건데?"였다. SQL, Postgre 등 데이터를 모으기 위한 문법을 정신없이 찍먹하고 있지만 그렇게 모은 데이터를 어디다가 어떻게 쓰는 건지는 아무도 설명해 주지 않았다. 그걸 모르는 내가 이상한 건가? 나 빼고 다들 데이터 어디다 쓰는지 알고 배우나? 이런 생각이 들 때쯤 데이터리안이 내 알고리즘에 떴고, 그렇게 데이터로 삽질 좀 하신 분의 경험을 책으로 접하게 되었다. 나는 데이터 분석가도 아니고, UX 디자이너도 아니지만 궁금했다. 모아야만 한다는 그 많은 데이터는 잘 모여서 어디로 흘러가는 걸까? 1. 그래서 데이터는 어디다 쓰는 건데? 정답은 없다. 사실 데이터를 모으는 사람도 데이터.. 2025. 11. 24.
iterm2로 맥북 터미널 꾸미기 맥북쓰는 개발자라면 터미널 꾸미는 빅재미를 놓칠 수 없으니까 오랜만에 터미널을 꾸며보았다.최종 모습:터미널 꾸미는데 필요한 준비물일단 아래 세 가지가 있어야 터미널을 꾸밀 수 있다. 맥북에 기본 내장되어 있는 터미널을 꾸미는게 아니라 iTerm2라는 터미널을 다운로드 받아서 이 터미널을 꾸며야 한다. 1. 맥북. 윈도우 터미널은 어떻게 쓰는지 모른다... 2. iterm2 설치 (https://iterm2.com/)- 다운로드 받아 설치- Homebrew로 받는것도 되지만 그냥 설치하는게 더 간단하다. Homebrew로 설치하려면 아래 명령어 입력. brew install iterm2 3. (대부분의 맥북에는 이미 설치되어 있지만 없다면) Homebrew 설치 (https://brew.sh/)터미널을 .. 2025. 11. 19.
SQLD - 데이터 모델링 데이터 모델링의 개념 데이터 모델리은 복잡한 데이터를 단순하고 이해하기 쉬운 구조로 표현하는 과정이다. 데이터 모델링을 통해 복잡한 데이터를 저장, 관리 및 활용 할 수 있다. 업무에서 필요한 데이터를 구조화하고, 데이터베이스로 설계하기 위한 과정이다. 데이터 모델링의 목적 1. 업무를 데이터로 표현현실세계의 개념을 데이터베이스 구조로 바꿈 (예: 고객이 주문한다 -> 고객, 주문 테이블로 표현) 2. 데이터 중복을 최소화 하고 일관성을 유지정규화를 통해 효율적인 구조를 만듬 3. 데이터를 이해하고 공유 데이터 구조를 문서화하여 개발자, 기획자 분석가의 관점으로 데이터를 바라보고 공유 데이터 모델링의 특징 1. 추상화: 복잡한 현실 세계를 데이터 관점에서 핵심적인 요소만 선별해 표현하는 것 - .. 2025. 10. 31.
[LeetCode] 13 Roman to Integer - Python Disclaimer: 배워가면서 정리하고 있습니다. 개념에 오류가 있을 수 있습니다.1. 문제 이해하기 (클릭하면 문제로 이동)문제 이해가 핵심인 문제다. 문제를 이해 하고나면(한참걸림) 코드 자체는 쉬워지는 매직! 문제를 잘 뜯어보자.일단 입력값으로 s라는 문자열을 받는다. s는 로마 숫자로 I, V, X, L C, D, M으로 구성되어 있다.출력은 int로 나온다.여기까지 보면 별로 어려울게 없다. 하지만 문제는 감산표기(Subtractive Notation)를 이해하는 것이다. 원래 로마 숫자 특성상 LV=55처럼 큰 수가 왼쪽에 오는게 정석이다. 하지만 감산표기가 되는 경우는 작은 값이 왼쪽에 온다. 그리고 다음과 같은 6가지 경우가 있다.IV=4 (5-1)IX=9 (10-1)XL=40 (50-1.. 2025. 10. 8.
[LeetCode] 242. Valid Anagram - Python Disclaimer: 배워가면서 정리하고 있습니다. 개념에 오류가 있을 수 있습니다.1. 문제 살펴보기문제로 이동:Valid Anagram문제 해설문자열로 된 두 변수 s와 t가 주어진다.t가 s의 애너그램*이면 True를 반환하고 그렇지 않으면 False를 반환한다.제약사항s, t는 모두 소문자로 이루어진 단어라고 가정한다.s와 t는 5* 10^4 보다 작은 철자로 이루어진 단어라고 가정한다.*애너그램은 어구전철이라고도 불린다. 한 글자의 철자를 재배열 하여 다른 단어를 만드는 것을 말한다.예시2. 답을 도출하는 방법문자열 정렬 방식class Solution: def isAnagram(self, s: str, t: str) -> bool: return sorted(s) == sorte.. 2025. 10. 6.
[LeetCode] 1. Two Sum - Python Disclaimer: 배워가면서 정리하고 있습니다. 개념에 오류가 있을 수 있습니다. 1. 문제문제로 이동배열에서 두 수를 더해 타겟 숫자를 만드는 인덱스를 찾는 고전 알고리즘 문제다.주어지는 변수: 숫자 리스트 nums, 정수 target반환해야 하는 값: nums 중에서 더해서 target이 되는 값의 각각의 인덱스 번호Assumption: 하나의 답만 있고 같은 인덱스를 두번 쓸 수 없다.예시:2. 답을 도출하는 방법이 문제에서 답을 도출하는 방법은 여러가지가 있지만 크게 다음의 세 가지로 풀이된다.1. 인덱스를 하나씩 더해보는 것 (brute force)그림과 같은 방식으로 답을 도출하면 4*4 array를 계산 할 때 총 6번의 연산이 필요하다. 위의 brute force (하나씩 다 계산해 .. 2025. 10. 6.