본문 바로가기

1인개발일기/개발계획, 넋두리.

1인개발 - 근데 저 개발 처음입니다만? (1/2)

 간략하게 개발 경력(?)을 들춰보자.

진정한 의미의 경력을 들춰볼 수는 없다. 왜냐면 아무것도 없거든... 그럼 먼지같은 개발까지 포함해서 적어보자. 개발의 개짜도 모르는 놈이 주워들은 지식으로 맨땅에 박치기하는 기록같은걸 남기고 싶나보다.


 경력1. 정보처리'기능사'획득. 모듈이라는걸 쓰는 놈이 잘하는 놈이랬다. (근데 모듈이 뭔지 몰랐다.)

 경력2. VBA로 중대 인원현황 기록 및 갱신. 자동화는 재밌었다. (이게 일종의 parser였다. 물론 몰랐다.)

 경력3. MATLAB과제로 이미지 이용한 상호작용 지도 제작. 매틀랩은 결과 확인이 참 편했다. 컴파일이나 무슨 무슨 환경설정같은게 필요 없었다. 디버깅도 편했지만 최초진입장벽이 매우 낮았다. 이 경력은 나중에 도움이 되는 척 하다가 악연이 된다.

 경력4. C언어 수업으로 자료구조 구현, 로컬데이터처리. C언어는 엄격했다. Run만 되도 행복했던거 같다.

 경력5. 쌀집계산기 만드는 수업. SW구현은 어셈블리를 썼는데 기억나는 명령어는 두개밖에 없다. 어셈블리 대신 영단어로 프로그래밍 하게 해준 C느님 고마웠다.

 경력6. LabView, Matlab, Simulink로 장난감모터자동차에 이것저것 괴기능을 붙여봤다. 마우스만으로 프로그래밍이 가능하다니 놀라웠지만 불편했다. 특히 디버깅.


ㅋㅋㅋ이렇게 써놓으니 미친 천재 경력자같은데 사실 그냥 거의다 1주일에 두어시간씩 8주만에 끝낸 학교숙제 수준이었다.


 경력7. 이게 좀 중요한데, Simulink로 프로그래밍을 하고, Matlab으로 필요한 결과분석툴이나 각종 노가다완화툴을 만들고, 임베디드시켜서 테스트하고 반복했다. 회사일이어서 프로젝트 단위도 몹시 컸고, 문서나 아키텍쳐는 개발부터 다 끝내고 방정식을 풀 듯 나중에 만들었다. 정답부터 말하자면 문서와 아키텍쳐는 개발의 맨 처음단계에 와야 하는게 맞다. 그렇게 해도 모델링(실현)하다보면 여기저기서 뻥뻥 터져나가는게 SW개발인데... 아무튼 여기서 엄청나게 짜증이 났는데 그냥 그렇게 살았다. 아참, 형상관리도 구색만 맞춘 개판이었다.


지나고 보니까 경력에서 얻은건 스킬이 아니라, 뭐가 부족했는지 뭐가 답답했는지 같은 부정적인 경험의 느낌이었다. 덕분에 잘나가고 cool한 외쿡 프로그래머들은 일을 어떻게 하는지 많이 엿봤다. 그리고 여차저차 1인개발을 시작하게 됐다.


처음 해보는 웹 개발. 뭔가를 서버에 물려서 개발해본 기억이 없다. 태그 써서 HTML업로드한게 전부다.

처음 써보는 언어. 파이썬? 무슨 최면술 주술같다고 생각하면서 넘겼던 그 언어를 내가 쓰게 됐네? 이게 좋다길래 택했다.


이렇게나 빈약한 출발이니, 구색이라도 잘 갖추자 해서 열심히 구글링을 해봤다. 초심자를 위한 프로젝트 전체요소 설명같은건 없었다.


그래서 일단 아래의 계획을 세우고,


1. 언어도 익힐겸 딱 봐도 뻔한 필수 모듈 2개만 만들어 보자. 솔직히 모듈을 어떻게 분리하고(파일?함수?) 어떻게 불러와서 쓰는지도 모르지만.

2. DB라는걸 만들고 서버에 그걸 올려보자. 근데 서버는 사야하나?

3. 서버에 올린 DB에 접근해보자.

4. 슬슬 다음에 무슨 모듈을 만들고 어떻게 상호작용시킬지 막막해질거다. 이제 딱 봐도 뻔한 모듈같은건 없다.

5. 다 엎어버리고 아키텍쳐를 짜보자. 아키텍쳐링은 괜찮은 툴과 사용법을 구글링한다.

6. 요구사항 문서같은게 선행되야 하면 간단히 작성해보자. 엑셀같은데다가. 나중에 아키텍쳐랑 연결되게끔 하면 더 좋으려나.


그리고 맨땅에 헤딩을 시작했다. 계획도 분명 어디서 주워들은 소리들로 짠거라 개똥이겠지만.