목록분류 전체보기 (37)
체대출신 코더의 개발자 성장기
오늘은 한게 없는 것 같으면서도 많다. 일단 잠을 두시간도 못자서 멍한 상태로 출근했다. 정신이없었다.. 회사는 나에게 익숙한 agile 방법론을 택하고있어, standup meeting에 반갑게 참가했다. 하지만, 신입사원의 한계인지 오가는 용어들을 하나도 알아들을 수 없었다... 간단한 소개와 함께 업무에 돌입했다. 나에게 주어진 업무는 1개월 안에 현재 php로 짜여진 회사홈페이지를 자바스크립트로 리팩토링 하는 것 이었다. 오전엔 새로 받은 컴퓨터의 운영체제를 윈도우에서 나에게 익숙한 우분투 18.06 LTS 로 바꿨다. 오랜만에 하는거라 서칭하면서 진행했는데 ssd파티션을 나누지 않고 그냥 알아서 되겠거니 하고 우분투를 깔아버렸다가 에러가 나서, 다시 설치를 진행했다..(진땀..) 파티션을 수동으..
입사 확정 이후 10일 이라는 시간이 너무나도 빠르게 지나갔다. 프론트엔드 개발자로서 아직은 배워야 할 점이 무궁무진하다고 생각한다. 두렵다.. 하지만 내가 정말 가고 싶었던 회사에서 커리어를 시작할 수 있는 것 만큼 값진 기회는 없다는 것을 알고 있다. 이 기회를 놓치지 않기위해 당장 수습 3개월 기간 만이라도 집중하여 달려보고자 한다. 화이팅!
OOP란? OOP(객체지향프로그래밍) 은 캡슐화, 추상화, 상속성, 다형성 의 네가지 성질을 띄는 개발 방식이다. 하지만 나는 그동안 왜 굳이 객체지향 프로그래밍을 해야하는지의 필요성을 몰랐다. 하지만 오늘 대충 감이와서 삘이 꽂힌김에 기록을 남겨보려한다. OOP의 필요성은 어떤 물건을 설계하고 제작하는 과정에 빗대어 보면 이해가 쉽다고 생각한다. 컴퓨터를 예로 들어보자 컴퓨터는 많은 부품(CPU,GPU,RAM,SSD,Power)들이 조합되어야, 그 기능을 수행할 수 있다. 하지만 더 좋은 성능을 원한다면 우리에겐 두 가지의 선택지가 있다. 1. 새로운 컴퓨터를 산다. 2. 새로운 부품을 산다. 과연 두 방식 중 효율적인 방식은 무엇일까? 나는 개인적으로 2번 이 효율적이라고 생각한다. 이유는 새로 모든..
HTTP 를 이용한 통신은 두가지 특성이 있다. 1. 비연결성(Connectionless) 클라이언트가 HTTP 를 이용해 서버에게 요청을 보내면 서버는 응답을 주고 연결을 끊어버린다. 2. 무상태성(Stateless) 클라이언트의 상태가 존재하지 않음을 의미한다. 서버와 클라이언트가 주고받은 기록의 상태를 남기지 않는 것을 의미한다. 위 두가지 특성으로 인해 클라이언트와 서버의 독립적인 관계유지가 쉬워져 클라이언트는 여러서버로 요청을 보낼 수 있고 서버는 여러 클라이언트로 응답을 보내줄 수 있다. 하지만, 두가지 특성 모두 서버를 클라이언트의 요청없이는 바보가 되도록 만든다. 한번의 요청에 한번의 응답 만을 보낼 수 있으며 기록이 남지 않기 때문에 서버는 같은 클라이언트로부터 요청이 와도 같은 클라이언..

1. owlPost Project란? 익명의 상대와 하루에 한통의 편지만을 주고 받을 수 있는 서비스이다. 꾹꾹 눌러담아 쓰던 편지의 감성을 스마트폰 유저들도 느낄 수 있는 유저경험을 만들기 위해 기획 되었다. 2. 기획 과정 먼저 miro를 이용해 모든 팀원들이 머리를 맞대고 UI와 UX적인 요소를 가장 먼저 기획 했다. 초기 기획안은 같이 작업한 현서님의 블로그에 잘 작성 되어있다. https://analogcoding.tistory.com/88 UI 기본설계 analogcoding.tistory.com 이후 백엔드 개발 맡으신 분들은 백엔드의 전체적인 흐름구조도를 짰다. 초반에 설계를 매우 잘해놓으셔서, 이 flow는 프로젝트가 끝날때 까지 거의 바뀌지 않았다. 3. API 문서 작성 및 Agile..
움직이고 싸돌아다니는걸 좋아했던 나는 어떠한 계기로 개발을 선택하게 되었을까? 1. 개발의 시초..고등학생 때는 바야흐로.. 2008년 내가 고등학교 1학년이라는 신분을 가졌을때. 지금 생각해보면 아무 생각없이 살았던 시기 인 것 같다. 학교에서 농구하는 거 좋아하고, 나를 뽐낼 수 있는 체육대회나 체력장 날만 기다리는 사춘기 절정의 시기였다. 나와 같은 반에 지금은 연세대를 갔지만, 키도 크고 얼굴도 잘생기고 공부도 잘하는 소위 엄친아 였던 친구가 있었다. 그 친구는 모든 과목을 잘했지만, 그중 과학과 수학에 굉장히 강했다. 또한 설명도 굉장히 잘해서, 수학시험만 끝나면 그 친구 주변으로 사람들이 몰렸었다. 난 어린마음에 그게 굉장히 멋있게 느껴졌나 보다. 당시 우리학교는 시험 점수에 따라 영어와 수학..

코드 스테이츠 에선 이머시브 코스를 잘 따라와 준 수강생들에게 큰 기회를 선물로 준다. 바로 기업과의 협업 프로젝트 기회를 주는 것인데, 나는 이번 4주 프로젝트에서 그 기회를 이용해 마인드 로직이라는 회사와 함께 구글 어시스턴트를 이용해 '초성 퀴즈'와 '끝말잇기' 게임을 만들었다. 마인드 로직은 인공지능 기술을 이용해 현재 가상남자친구, 여자 친구 서비스를 Google Assistant에 현재 제공하고 있는 기업이다. https://mindlogic.ai/#/ MINDLOGIC mindlogic.ai 1. Cocoa project 란? Actions on google 이라는 라이브러리를 이용하면 구글 어시스턴트와 대화를 나눌 수 있다. 또한 Google interactive Canvas를 이용하면 이..

지금 도커에대해 한페이지 넘게 쓴게 날아가서 ... 그냥 간단하게 쓰고 자려고 한다. 임시 저장하는 습관을 가져야겠다.ㅜㅜ 1. 도커 한 컴퓨터에서 구축한 환경은 다른 컴퓨터에서도 사용할 수 있도록 도와주는 기술 2. 이미지 한 컴퓨터에서 서버를 만들때 구축한 환경을 글로써 저장해 놓는것. 이 글만 있으면 어디서든 이 글에 써져있는 환경을 구성하고 사용할 수 있다. 3. 컨테이너 이미지를 실행시켜 환경을 만들어 놓은 것. 환경별로 독립적인 공간을 만들어 놓기 때문에, 충돌의 걱정은 하지 않아도 된다. 4. vm과의 차이점 컨테이너라는 것이 기존 컴퓨터 안에서 다른 환경을 만든다는 측면에서 가상 컴퓨팅를 생각할 수도 있을텐데 자원을 효율적으로 쓴다는 측면에서 도커가 훨씬 우위를 점한다. 위의 그림을 참고하..