Fast campus 안드로이드 앱 개발 프로젝트 CAMP 의 오리엔테이션 자료입니다.
http://www.fastcampus.co.kr/dev_camp_adp
Java 코딩은 가능한 분들을 대상으로 Android 의 바닥부터 시작해서 Google Firebase 와 Amazon AWS 를 사용하는 상용수준의 앱을 만들어 Play Store 에 배포하는 것까지 같이 진행해보는 CAMP 입니다.
"손코딩뇌컴파일눈디버깅" 모임을 소개합니다.
백문이 불여일런, 트라이얼앤에러(Trial and Error) 식의 몹쓸 교육을 받아 온 개발자들이 코딩하기 전에 신중하고 꼼꼼하게 생각해보기란 쉽지 않습니다.
개발 시간 중 디버깅 시간이 절반 이상을 차지하고 있는 실정에 버그를 줄이기 위해 TDD니 유닛테스트니 많은 방법들이 개발되고 있지만 가장 일차적으로 중요한 것은 개발자들이 꼼꼼히 따져보는 것이 아니겠는지요?
미국의 선진 SW회사들은 이미 화이트보드에 PS문제를 푸는 것을 인터뷰 방식으로 채택하고 있습니다. 이는 이와 같은 풀이 방식이 개발자들의 기본 역량을 측정하기에 알맞은 지표라는 것이고, 개발자들이 기본적으로 갖춰야 할 역량이기도 하다는 것 입니다.
또한 자신의 생각을 명확하게 정리하고 다른 사람이 이해할 수 있도록 전달하는 Communication Skill 도 개발자가 갖춰야 할 역량 중 하나 입니다. 알고리즘을 어떻게 구현할 것인가를 팀원들과 소통하면서 자연스럽게 생각을 정리하고 전달하는 연습도 할 수 있습니다.
컴퓨터에 앉아 코딩하기 전 펜과 종이를 들고 눈과 머리와 손을 굴려 보시는 것은 어떠신지요??
Fast campus 안드로이드 앱 개발 프로젝트 CAMP 의 오리엔테이션 자료입니다.
http://www.fastcampus.co.kr/dev_camp_adp
Java 코딩은 가능한 분들을 대상으로 Android 의 바닥부터 시작해서 Google Firebase 와 Amazon AWS 를 사용하는 상용수준의 앱을 만들어 Play Store 에 배포하는 것까지 같이 진행해보는 CAMP 입니다.
"손코딩뇌컴파일눈디버깅" 모임을 소개합니다.
백문이 불여일런, 트라이얼앤에러(Trial and Error) 식의 몹쓸 교육을 받아 온 개발자들이 코딩하기 전에 신중하고 꼼꼼하게 생각해보기란 쉽지 않습니다.
개발 시간 중 디버깅 시간이 절반 이상을 차지하고 있는 실정에 버그를 줄이기 위해 TDD니 유닛테스트니 많은 방법들이 개발되고 있지만 가장 일차적으로 중요한 것은 개발자들이 꼼꼼히 따져보는 것이 아니겠는지요?
미국의 선진 SW회사들은 이미 화이트보드에 PS문제를 푸는 것을 인터뷰 방식으로 채택하고 있습니다. 이는 이와 같은 풀이 방식이 개발자들의 기본 역량을 측정하기에 알맞은 지표라는 것이고, 개발자들이 기본적으로 갖춰야 할 역량이기도 하다는 것 입니다.
또한 자신의 생각을 명확하게 정리하고 다른 사람이 이해할 수 있도록 전달하는 Communication Skill 도 개발자가 갖춰야 할 역량 중 하나 입니다. 알고리즘을 어떻게 구현할 것인가를 팀원들과 소통하면서 자연스럽게 생각을 정리하고 전달하는 연습도 할 수 있습니다.
컴퓨터에 앉아 코딩하기 전 펜과 종이를 들고 눈과 머리와 손을 굴려 보시는 것은 어떠신지요??
이 책은 본격적인 알고리즘 공부보다는 알고리즘을 소재로 풀어가는 재미난 이야기를 담았다. 새로운 알고리즘 이론을 소개하는 것도, 독자에게 알고리즘을 ‘강의’하는 것도 아니다. 오히려 알고리즘은 맛있는 읽을거리의 ‘재료’로 쓰였을 뿐이다. 현실 세계와 유사한 재미있는 퀴즈로 독자의 흥미를 유도하기도 하고 때로는 딱딱한 수학 문제로 긴장감을 고조시킨다. 어떤 곳에서는 지저분한 펄 코드가 등장하기도 하며 깔끔하고 읽기 쉬운 C 코드 또한 자주 등장한다. 정렬이나 탐색 리스트 등의 정통 알고리즘도 책의 곳곳에 녹아 있다. 익살스럽고 특이한 그림을 보는 재미 또한 쏠쏠하다는 점도 이 책의 부수적인 장점이다.
“소프트웨어를 개발하는 사람에게 알고리즘은 취업이나 승진을 위해서 억지로 공부하는 대상이 아니라 퍼즐이나 수수께끼처럼 자체로 재미있고 신나는 놀이가 되어야 한다. 내 책 중에서 이 책이 가장 많은 사랑을 받은 배경에는 알고리즘을 딱딱한 공부가 아니라 말랑말랑한 놀이로 다루었다는 측면이 놓여 있을 것이다. 그런 의미에서 나는 이 책이 이미 개발자인 사람은 물론이고, 이제 막 소프트웨어 개발과 코딩을 배우려는 사람들에게 많이 읽히기를 희망한다.”
-- 지은이의 말 중에서
★ 대상 독자
- 휴식과 상식 쌓기와 공부를 동시에 원하는 바쁜 직장인
- 학문으로서가 아닌, 개발자의 삶에 녹아든 알고리즘 이야기가 궁금한 개발자
- 알고리즘이 재미있는 개발자
Spark 의 핵심은 무엇인가? RDD! (RDD paper review)Yongho Ha
요즘 Hadoop 보다 더 뜨고 있는 Spark.
그 Spark의 핵심을 이해하기 위해서는 핵심 자료구조인 Resilient Distributed Datasets (RDD)를 이해하는 것이 필요합니다.
RDD가 어떻게 동작하는지, 원 논문을 리뷰하며 살펴보도록 합시다.
http://www.cs.berkeley.edu/~matei/papers/2012/sigmod_shark_demo.pdf
1. 프리랜서 1 년간 겪은 Go
- 프리랜서는 은총알의 꿈을 꾸는가 ?
- 장점 위주 Go 소개
2. 소개
조석규
외주 전문 1 인기업 쑤왓 (https://ssuwat.com)
블로그 https://ezaurum.com
JAVA/Spring 으로 쇼핑몰 / 팜 게임 / 소셜카지노 서버
C# 으로 MMORPG/ 보드게임 서버
Unity3D/Flash 로 소셜카지노 /MMORPG/ 보드게임 클라
현재 Go/Vue
3. 횡설수설 ( 橫說竪說 )
어원 - 종횡무진 ( 縱橫無盡 ) 으로 왔다갔다하면서도 이치에
조금도 어긋나지 않는 , 조리가 정연한 말
현재 - 조리 없게 말하는 모습
정반합 - 일단 종횡무진으로 왔다갔다 하면서 조리가 없을 수도
있을수도 있음 , 이야기 중심으로 코드는 없이
4. 은총알을 찾아서
No Silver Bullet
– Essence and Accident in Software Engineering, Fred Brooks
23. 타이핑 vs 파이썬
비슷한 정도
→
코드가 깔끔해지고 비슷해짐 남의코드도 쉽게 읽을 수 있음
코드 분석 및 재활용이 쉬움
→
세미콜론이 없다 JS 코드 짤 때도
case 에서 break 도 없어짐
if 에서 괄호도 없어짐
목 객체 생성이 아주 쉬움 - JSON 과 비슷한 선언 형태
스펙 번역 -
https://github.com/golangkorea/golang-spec
24. 비동기 vs c#
C# 보다 쉽다
채널은 동기화 스트레스를 없애 준다
이벤트 드리븐도 채널도 간단히
성능은 충분
기본 제공 vs 라이브러리 형태
25. 성능 vs c/c++
충분히 빠르다
PHP 로 된 레거시 웹 서버
→ →
뻗음 대용량 서버로 교체
→ CPU 사용율 80% 이상
→ Go →
로 전환 1% 대
→ 고객 감동
→ 이후 전체 시스템 Go 전환 결정
물론 PHP 쪽 코드가 엉망인 탓이 컸음
26. 배포 / 컴파일 vs Java
컴파일 빠르다 - 테스트 하면서 흐름 끊기지 않음
파일 하나로 만들어진다
추가 라이브러리 , 플랫폼 설치할 필요 없음
테스트하면서 통화중인 고객이 서버 재배포를 인지 못함
알트탭 보다 빠르다
패키지 관리는 go mod 실행으로 끝 (dep ensure)
서버와 버전이 안 맞는 문제 - Docker 에서 컴파일
27. 폼 vs LISP
옛날 GW-BASIC 을 처음 배울 때의 흥분감
전체를 컨트롤 한다는 전능감
28. 단점 ( 이라고 생각했던 것 )
1. 순환참조 안됨 - 구조를 잘 생각하게 됨
상호 참조가 있으면 서로 분리할 필요가 없다
2. 제네릭 없음 - 이상하게 쓸 일이 없다
29. 하지만 Go 로 프로젝트를 하고자 하면 갑님은 ...
1.자바로 해 주세요
2.그게 뭐죠 ?
3.알아서 해주세요
33. 설득에 가장 효과가 있었던 것은
논리적으로 자세혀 설명해도 안 / 못 듣는다
→ 열정적으로 자신감 있게 큰소리 땅땅
→ 구글을 강조
→ 신기술이 아니고 성숙한 기술이라고 강조 (2009 년 발표 )
→ 10 년된 기술 ( 반올림해서 )
→ 배울 게 적어서 금방 쓸 수 있다 ( 처음엔 )
34. 사용하는 기자재
IDE – IntelliJ (GoLand)
–
웹 프레임워크 echo 기반 , 자잘한 건 자체 구현
DB – gorm(test - sqlite, stage - docker)
프론트 - Vue
배포 - scp