Variable 회고 일지
·
프로그래밍/기본기
서론Variable(변수)는 변하는 값이라는 뜻이다.프로그래밍에서의 변수라는 개념도 개념적으로는 동일하다. 프로그래밍을 처음으로 시작한 2019년 3월부터,졸업을 앞둔 2025년 2월까지 개발 피지컬은 조금씩 늘어왔다. (여전히 못한다.) 그리고 변화양상은, 내가 개발에 있어서 기본적인 정의들을 어떻게 대했는가에서 드러난다. 대학생활의 마무리를 지으며,'변수'에 대한 관점의 변화를 회고하려 한다.  변수란 무엇인가?Wiki백과에서는, "하나의 값을 저장할 수 있는 기억공간"이라고 서술한다. 변수의 목표는 값을 재사용하는 것이다.우리가 원하는 '단어'로 값을 사용하고 싶은 것이다.그렇다면 다음의 조건을 충족해야 한다. 1. 메모리 어딘가에 저장되어야 한다.2. 변수이름으로 그 값을 찾아낼 수 있어야 한다...
0. 자유의 가치를 증명하라
·
프로젝트/SteadyClub
자유와 책임은, 행복의 본질이다.나는 책임이 중요하다고 생각한다. (OOP뿐만 아니라 인간도..)사람들은 보통 자기소개를 할 때, 직업을 소개한다.직업이란, 자기가 지고 살아가는 책임을 의미하기 때문이다. 학생이라면, '학업과 정신적 성숙'라는 책임을지고 살아간다.개발자라면, '동작하는 코드와 그를 위한 모든  것'이라는 책임을지고 살아간다.팀장이라면, '팀의 목표달성과 그를 위한 모든 것'이라는 책임을지고 살아간다. 책임이란, 남에게 단 하나라도 맡기지 않고 온전히 혼자서 끌어안는 것이다.  누구나 자유롭지만, 누구나 자유를 누리지는 못한다. 자유란 마음대로 할 수 있는 상태를 의미한다.마음대로 한다는 것은, 그로 인해 발생하는 모든 결과에 대해 책임진다는 것이다. 책임을 지지 않는 상태가 자유로운 상..
미래는 현재의 연속선이다
·
견문/활동
기부에 대하여남을 돕는다는 것은 꽤나 아름답고 숭고한 일이다. 메마른 현실에서, 본인도 목이 마를텐데.물 한모금을 나눌 수 있는 자애로움이란 얼마나 아름다운가? 그런 사람을 동경 하기에, 기부를 하는 것은 좋아한다.내가 가진 지식, 돈, 사랑 어떤 것이든 간에 나누는건 멋진 일이다. 현실을 핑계삼아자주는 아니였지만, 지갑에 사정이 넉넉하면 가끔 후원을 하곤 했다.금액이 많지도 않았지만, 1년에 1번 정도 꼴이였던거 같다. 내 생활비, 내 꿈에 투자할 돈도 부족하기에 위축되었던 것 같다.'남을 돕는것도 중요하지만, 내가 온전해야 도울 수 있으니까'라는 그럴싸한 이유로 말이다. 현실과 이상을 합친 1,000원그래서 이전에는 다음과 같이 생각했다.'번듯한 돈벌이가 생기면, 정기후원을 해야겠다'라고. 그런데 갑..
[작성 중] 적절하게 좋은 아키텍처를 향해
·
프로그래밍/기본기
Entity는 pk를 가져가 한다.이는 DB영속화를 위한 수단뿐만이 아니라이 객체를 다른 객체와 구별해야 할 이유(정체성, Identity)가 존재한다 이다. 정체성이 있어서, 변경되어도 자동으로 트래킹 되어야 한다면. 변하지 않는 정체성이 존재해야 하고. 트래킹 될 필요가 없다면, 순수한 값인 VO가 사용되게 되는 것이다. ---수평 조직 수직 조직이 있는것 처럼 수평 조직이 Service수직 조직이 Usecase이다 같은 결의 여러가지 업무를 처리할 수 있는게 Service이며이 Service를 적절히 사용하여 원하는 바를 이뤄내는게 Usecase이다. ---repo사이드에서 inmemory로 구현해서 관리하고,특정 시점에 영속화 해도 괜찮은 전략인거 같다.
[작성 중]Real MySQL 8.0: 1권
·
견문/독서
0. Proto-type과 예광탄 코드
·
프로젝트/ParseDF
서론고객이 요청한 프로그램을 개발은 다음의 과업을 이루면 된다.고객의 요구사항을 정확하게 이해해야 한다.고객이 바라는걸 찾아갈 수 있게 도와줘야 한다.신뢰 관계를 구축하고, 소통을 자주한다.책임을 지고 내 역할을 완수한다.그리고 한 번쯤은 멘탈이 갈리게 된다.(과연 한 번일까?)고객도 일부러 그러지는 않는다.상상력에 한계가 있는 인간의 죄이지, 나쁜 사람은 아닐 것이다. (나쁜 사람 같다면, 모쪼록 행복하길 빈다..) 정답은, 소통을 많이하고 신뢰 관계를 쌓는 것.상대의 생각과 내 생각을 동기화 시키기 위해서 소통을 많이 해야한다.그리고 신뢰를 바탕으로, 조율과 협상을 해내고프로젝트를 완수 시켜내야 한다! 내가 이해 한 고객의 요청사항은 다음과 같다.RAG에 PDF를 넣으면, 이미지와 표를 잘 활용하지 ..
싸우는 식물
·
견문/독서
What인간은 공존하려하지 않는다.Why식물은, 식물과의 경쟁만 신경쓰지 않는다.식물은 환경, 균, 곤충, 동물, 인간과 공생을 택했고 결국 생존했다.인간은 인간과의 경쟁만을 신경쓴다.공생을 택하지 않으면, 미래는 안 봐도 뻔하다.How작가는 이에 대해 알려주지 않았다. 스스로 찾아야 한다.인간은 욕심을 양보하고, 겸손과 다양성을 받아들여야 한다.Summary
UV: Rust 기반 python_manager
·
프로그래밍/도구들
서론python의 패키지 관리자는 pip -> poetry -> pdm 등 많은 것들이 등장했고,Rust의 인기를 업고 uv가 등장했다. pip대비 10 ~100배의 속도 & python 설치 및 관리라는 매력적인 특성이 있다. 목표어떤 기능을 제공하는지 정리기존의 어떤 문제점을 해결했는지 이해  핵심 명령어1. 프로젝트 생성# 애플리케이션 생성uv init {app_name}# 라이브러리 생성uv init --lib {lib_name}# 확장 모듈 생성 (maturin: Rust, scikit-build-core: C계열)uv init --build-backend maturin {ext_name}배포용인 프로젝트와, 아닌 프로젝트를 구분할 수 있게 해준다.Rust나, C기반의 성능이 중요한 프로젝트를 ..
[작성 중] 실용주의 프로그래머
·
견문/독서
이 책은 제목이 요약 그 자체인 것 같다.책의 내용은 방대하며, 어느 수준에서나 읽어도 매번 영감을 주는 느낌. 1회독은 하루에 1장씩, 53일에 걸쳐서 해내고.책장에 넣어뒀다가 생각날 때 마다 읽을 것 같다.Summary