본문 바로가기

"경제적 자유를 얻기 위한" 자청의 역행자 를 읽고서 느낀점 역행자를 읽고서 느낀 점과 조금이나마 도움이 될 사람들을 위해 이 글을 남긴다. # 서론 (나의 경험담) 자청이라는 유튜버를 알게 되고 최근에 발행한 책이 있다고 해서 읽게 되었다. 작년부터 인가 돈 을 많이 벌어서 경제적 자유를 얻고 싶다는 생각이 들었다. 그래서 부업으로 크몽을 하기 시작했고 개발 의뢰가 들어오면 해당하는 프로그램을 개발해주고 비용을 받는 형태로 일을 시작 했다. 의뢰가 들어오는 일은 전에 해보지 못한 업무와 기술들이 요구되었고 그로 인해서 새로운 기술들을 접목해볼 수도 있었고 그 분야에 대한 지식도 약간은 익혀 나갔다. 조금이나마 개발 실력이 향상됨을 느꼈다 정확히는 다른 업무를 받아들이는데 더 유연해졌다고 생각이 든다. 그런데 지금에 와서 드는 생각은 돈이 급해서 남이 주는 일만 ..
딥러닝을 이용한 채팅 단어 자동 완성 프로그램 (크몽 의뢰편) # 개발 착수 크몽에서 개발 의뢰건이 하나 들어 왔다 내용은 위 그림과 같이 특정 키워드를 입력 하면 알고리즘이 연관되는 단어를 추천 해주는 프로그램 이다. 시스템 설계는 의뢰 하는 쪽에서 이미 되어 있었다 구성은 서버, 클라이언트, 딥러닝 학습 모델 이렇게 3가지 파트로 분류 되었다. 내가 맡은 분야는 클라이언트 부분 이다. 서버와 클라이언트는 소켓 통신으로 패킷을 송수신 하고 데이터 포멧은 Json 형태 이다. 전송 할 데이터는 키워드 인데 이 키워드를 AES암호화 알고리즘을 이용해 암호화 해서 송신 해야 한다. 위 내용만 봤을땐 개발 이 순조롭게 될걸로 예상 되었다. 설계도 깔끔 하게 된거 같고 기술들은 이미 시중에 다 나와 있어서 조금만 검색 해보면 처리 할 수 있는 것들이다. 회사에서 사용하는 ..
C# 영어문장 생성 프로그램 #2 (크몽 개발 의뢰건) 자료 구조들은 공통된 속성을 인터페이스로 정의해서 상속을 받고 있는 것을 볼 수 있습니다. 인터페이스들은 각각의 상위 인터페이스들을 상속 받고 공통된 속성을 공유 하여 클래스간 의존성을 줄여서 수정이 용이 하게 합니다. 객체지향 언어의 특성이라 볼 수 있습니다. 위 자료 구조 중에 사용된건 List 와 Dictionary 를 사용 하였는데 List: 인덱스로 엑세스 할 수 있어 목록의 검색, 정렬 및 조작에 이용 됩니다. 그리고 동적으로 할당이 가능해서 웬만하면 C# 에서는 List 를 주로 사용 됩니다. Dictionary: Key와 Valued가 하나의 쌍으로 이루어 져 있으며 탐색 할때 Key 에 해당하는 Value 를 찾을 수 있고 O(1) 시간복잡도를 가지고 있어 검색속도가 제일 우수한 자료 형..
꾸준히 한다는 것 그것에 대한 고찰 사람들은 새로운 기술을 익히기 위해 목표를 정하고 매진한다. 처음 마음 먹은 크기에 따라 열심히 하게 된다. 그렇게 열심히 하다보면 대부분의 사람들은 제 풀에 지쳐 쓰러지게 된다. 그리고 몇일후 그 일을 그만 두게 된다. 이와 관련해서 유튜브 영상을 본적이 있는데 그 내용에는 사람마다 그 기술에 대해 제각기 "마나" (게임에서 스킬을 사용하기 위한 능력치)를 가지고 있는데 처음에 열심히 그 일에 대해 매진하면 그 마나를 다 소진 한다고 하였다. 그레서 처음에는 일정량 사용 하면서 꾸준히 매일 하는게 중요하다고 하였다. 그러면서 비유를 하나 더 든것이 있는데 공부 잘하는 애들은 한번에 몰아서 공부를 하는게 아니라 조금씩 꾸준히 매일 한다고 하였다. 그러다가 일정 기간이 지나면 자신이 가지고 있는 마나 총량..
C# 영어문장 생성 프로그램 #1 (크몽 개발 의뢰건) 이번에 소개할 프로젝트는 영어 선생님으로 부터 의뢰 받은 건으로 영어 문장을 입력하게 되면 원하는 알고리즘으로 문장을 변형하여 구성하는 프로그램 이다. 프로그램설명 SOURCE 입력란 에 문장을 입력하면 RESULT 입력 란에 영어 문장이 생성 되는 프로그램 이다. ① 출제될 문제의 수를 설정 한 후 실행 버튼을 누르면 입력된 수 만큼 문제가 출제 된다. ② [A / B] 형태로 A는 정답 B는 오답으로 문제 생성될 대상을 인식 하도록 합니다. ③ ① 에 설정한 숫자 만큼 ② 에 입력된 문장중 출제할 문제를 랜덤으로 출제 된다. 용어설명 C#: MS가 개발한 닷넷 프레임워크 (윈도우 프로그램 개발 및 실행환경) 안에서 실행되는 객체지향 언어 로 컴파일 되어서 실행 되며 자동적으로 메모리를 관리 해주는 (..
WPF 차트 바인딩 하는 법 - 기초편 (크몽 개발의뢰건) 이 프로젝트는 크몽에서 받은 WPF 개발 의뢰 건입니다. 기존 소스에 기능 추가 하는 개발 의뢰건 입니다. 단가가 낮은 대신에 단순해서수락 하였고 개발 착수에 들어 갑니다.  체크 여부에 따라 시리즈를 제어 할 수 있는 체크 박스 기능을 추가 해달라고 한 것 입니다. 이 기능을 범례기능 추가라고 하겠습니다. 생소 하신 분들을 위해 Chart 컨트롤의 용어 들을 요약 했습니다. Series: 데이터 일련의 집합으로 오른쪽 차트 기준으로 빨간색 전체가 하나의 Series 라고 합니다. 현재는 총 3가지 (빨간색, 노란색, 파란색) Series 가 표현되어 있습니다. 바인딩: 구체적인 값을 확정 하는 것을 말합니다. 즉 값을 할당을 의미 합니다. Legend: 범례 라고 하며 차트에 표현된 계열의 종류를 ..
자료구조와 알고리즘 차이점 # 자료구조 와 알고리즘 정의 “자료구조” 의 사전적의미: 데이터 단위와 데이터 자체 사이의 물리적 또는 논리적인 관계 즉 데이터의 접근 을 효율적으로 관리 (저장,수정,삭제) 하기 위한 데이터 조직 입니다. “알고리즘” 사전적의미: 입력된 자료를 가지고 원하는 출력을 유도 하는 유한개의 규칙의 집합. 즉, 문제 해결에 필요한 계산 절차 또는 처리 과정의 순서 예시) 도서관 마다 책장에 진열되어 있는 방식 (연도별, 색인별, 종류별 등) 을 데이터 구조 그 구조안에서 원하는 책을 효율적으로 찾기 위한 논리적인 규칙 을 알고리즘 자료구조 방법론으로 인해 새로운 개발 언어들이 탄생 되고 특히 객체 지향 언어 (C#, Java) 같은 경우 세부적인 구현 방식은 몰라도 인터페이스 를 이용해서 개발을 쉽게 하는 ..
서울 올라와서 직장 생활 하면 겪게 되는 순간 겪게 되는 순간 - 외로움 서울에 연고가 없이 혼자 상경 했을 경우 외로움은 심하게 느껴진다. 특히 일이 없는 주말에는 오히려 출근 하는날 보다 더 괴롭다. 가끔 고향 친구나 직장 동료들과 주말에 만나곤 하지만 원천적으로 외로움을 해결 해줄순 없다. 여자 친구가 생기면 이런 외로움을 해결 해줄수 있으리라 믿고 주말에 아르바이트도 해서 친구를 사귈려고 했지만 쉽지가 않다. 그리고 소모임이 유행 해서 동아리 활동도 나가봤지만 죄다 남탕이다 이때 많은 유혹들이 있는데 유흥 에서 이런 외로움을 잊고자 한다. 헌팅 술집이나 클럽 같은 곳에 시간과 돈을 낭비 하는 경우가 있다. 이 맛에 한번 빠져 들면 헤어 나오기 가 쉽지가 않다. 최대한 덜 빠져서 헤어 나와야 한다. 겪게 되는 순간 - 자동차 사회 초년생이 특히..