Back to the Mac

4세대 하스웰 프로세스가 탑재된 2013년형 맥북에어를 구입하였습니다.

IMG_1481

지금까지 여러번 Mac을 사고 팔기를 반복했습니다.

  1. 맥북 (2007년)
  2. 아이맥 (2008년)
  3. 맥북에어 (2011년)
  4. 맥북에어 (2013년)

처음 만난 순간부터 Mac OS X가 참 마음에 들었지만 국내 환경에서 할 수 없는 것들이 많다보니 Mac OS X와 MS Windows를 왔다갔다 하다가 차라리 MS Windows 하나만 쓰자는 결론에 매번 도달하더군요.

IMG_1484

다시 Mac으로 돌아가자고 결심하게 된 까닭은 다음과 같습니다.

  1. iOS 앱개발, Node.js 웹개발
  2. Mac 사용 환경 개선 (인터넷 뱅킹, 한글 폰트, …)
  3. 너무나 매력적인 OS X 10.9 Mavericks

프로그래밍에 대한 순수한 열정을 유지하려면 회사 업무가 아닌 취미로 프로그래밍을 즐겨야 한다고 생각합니다. 회사에서 매일 사용하는 Eclipse, Java, Android SDK 보다는 전혀 경험이 없는 Xcode, Objective-C, iOS SDK를 공부하면 배우는 것도 많고 재밌을 것 같았습니다. iOS 앱개발이 아니더라도 Unix를 기반으로하는 Mac은 개발자에게 훌륭한 환경을 제공합니다!

mac-first-look

직관적이고 간결한 UI을 제공하는 OS X는 사용하는 것만으로도 즐거움을 선사합니다. 많은 변화가 있을것으로 예상되는 차기 버전 Mavericks가 기대됩니다. 가을에 출시 예정인데 WWDC 이후에 Mac을 구입했기 때문에 무료로 업데이트 받을 수 있습니다. Mountain Lion보다 배터리를 적게 사용한다고 하는데, Mountain Lion에서도 하스웰 맥북에어는 12시간을 사용할 수 있습니다. Mavericks에서는 몇 시간을 사용할 수 있을까요?

air-order

이번에는 고장날때까지 사용할 생각으로 최고 사양으로 구입했습니다. 200만원이 넘는 가격이 아깝지 않도록 생산적인 일에 잘 활용할 생각입니다. 앞으로 Mac을 사용하면서, Mac으로 프로그래밍 공부를 하면서 경험한 것들을 조금씩 블로그에 정리해 보겠습니다.

Ubuntu에 Objective-C 개발환경 구축하기

1. 관련 패키지 설치

$ sudo apt-get install build-essential
$ sudo apt-get install gobjc
$ sudo apt-get install gnustep-devel

2. 빌드 환경 구축

$ sudo chmod +wx /usr/share/GNUstep/Makefiles/GNUstep.sh
$ /usr/share/GNUstep/Makefiles/GNUstep.sh

.bashrc에 추가

/usr/share/GNUstep/Makefiles/GNUstep.sh

3. Vim 설정

cocoa.zip 다운로드

$ unzip cocoa.zip -d ~/.vim

.vimrc에 추가

let filetype_m='objc'

4. 코드 작성 (hello.m)

#import <Foundation/Foundation.h>

int main (int argc, const char *argv[])
{
    NSLog (@"Hello!");
    return (0);
}

5. 빌드

$ gcc `gnustep-config --objc-flags` hello.m -o hello -I /usr/include/GNUstep/ -L /usr/lib/GNUstep/ -lgnustep-base

6. 실행

$ ./hello
2013-07-18 20:39:42.506 hello[6697] Hello!

2013 SW+인문 컨퍼런스 요약

열정 없는 인생은 죽음과 같다 – 싸이월드 창업자 형용준 대표

  • 오프라인 사용자 프로세스를 가상의 세상으로 옮겨보기
  • 오프라인 세상을 잘 이해해야 함
  • 오프라인의 문제를 해결하는 솔루션으로서의 SW 개발이 필요함
  • 문제를 함께 인식해야 구성원이 같은 방향으로 열정을 가질 수 있다.

생각의 관점을 바꿔라! – 관점디자이너 박용후

  • 카카오톡 포함 16개 회사의 마케팅 담당
  • 통찰: 같은 현상이나 사물을 바라보고 남과 다른것을 볼 수 있는 능력
  • Jobs: Connect & Develop not R&D
  • 당연하지 않았던 것들이 당연해 지면서 세상은 바뀐다.
  • 퓨쳐마킹의 시대가 왔다. 2015년엔 당연해질 것들!?
  • Simple, Easy
  • 메뉴얼이 필요하면 성공 가능성이 낮아진다.
  • 링크 기반의 확산 시스템을 이해하지 못하면 SW를 성공시킬 수 없다.
  • 자발적 확산구조 (애니팡)
  • 마케팅은 고객의 관점을 바꿔 우리 제품을 다르게 보이도록 하는 것
  • 남과 다른 관점의 시작: 당연함을 부정하라!
  • 당연함을 넘어서는 생각법
    • 본질
      • 항상 질문하라. 김범수 의장
      • 전화기의 본질!? 커뮤니케이션
    • 핵심
    • 관점
  • 내가 만든 앱이 사람들의 습관을 바꿀 수 있을까!? 그렇지 않다면 투자받을 수 없다.
  • 필요할 때 도와주고 사라져야 한다. 슈퍼맨이 계속 곁에 있다면 어떨까!?
  • 생각한대로 된다. 된다고 말하고 믿고 안된다는 생각이 떠오르면 버리려고 노력한다.
  • 픽사의 이야기. 가장 중요한 건 중력. 잡스는 중력을 가진사람이다. 개발자, 기획자가 함께 고민해야 한다. 중력을 가진사람이 있어야 일을 성공시킬 수 있다.
  • 모두의 격려를 받는 회사가 나왔으면 한다.
  • 세바시 251회 관점을 바꾸면 미래가 바뀐다 @박용후 Perspective Designer

개발자여! 꿈을 설계하라 – 데니스홍

  • 나는 천재가 아니다. 똑똑하고 아주 열심히 하는 엔지니어다.
  • 연구소 및 개발중인 로봇 소개
  • 장님이 운전할 수 있도록 도와주는 로봇기술을 개발한 경험으로부터 자신이 하고 있는 일이 사람들에게 도움이 될 수 있다는 것을 가슴으로 깨닫게 되었다.
  • 모든 분야의 전문가가 될 수는 없다. 협력을 잘하는 것이 중요하다. 자신은 기계공학 전공이지만 필요한 분야에 대해 어느정도 이해도를 가지고 있다.

토크쇼

  • 고우성: 같이 일하는 사람이 즐거워하는가를 생각하며 일을 한다. 즐거움이 있어야 창의적인 아이디어가 나올 수 있다.
  • 데니스홍: 내 꿈은 로봇엔지니어 뿐만 아니라 요리사, 마술사. 다양한 분야에 대한 관심과 경험이 새로운 발상에 도움이 된다.
  • 데니스홍: 뛰어난 사람보다 같이 재밌게 일할 수 있는 사람을 선택한다. 친구가 되고 싶은 사람.
  • 박용후 디자이너: 착한 사람, 기업과 일해야 지속성을 가질 수 있다. 식당에서 종업원에게 함부로 대하는 사람은 ROI로 사람을 판단한다. 필요없으면 사람을 버리는 사람. 나로 인해서 다른 사람이 행복했으면 좋겠다는 생각을 가진 사람이 착한 사람. 이러한 가치를 추구하는 기업이 착한 기업.
  • 유진평: 자발적으로 만들어갈 수 있는 환경을 마련해 주자. 임의로 만들어 내는 방향은 아니라고 생각한다. 미래창조과학부를 예로 들어.
  • 박용후: 성공하는 앱의 공통점은 단순함. 자발적 확산 구조를 활용. 상황, 환경을 잘 활용함. 인프라에 대한 이해. 사람들이 열광하는 코드를 읽기. 실패하는 앱들은 결이 없다. 하나의 흐름이 없고 흩어져있다.
  • 박진형: 창업에 사람이 제일 중요. 믿고 함께할 수 있는 사람을 선택.
  • 유명환: 합의를 만들어낼 수 있는 사람과 함께 일해야 한다.
  • 박용후: 커뮤니케이션을 못하는 회사는 똑똑한 사람들을 모아놓고 멍청한 선택을 한다. 카카오톡은 직책 호칭이 없어서 장벽없이 커뮤니케이션을 한다.
  • 양수열: 개발자가 인문학적인 부분까지 잘 할 수 있을지는 어려운 문제. 중요한 것은 커뮤니케이션 능력.
  • 데니스홍: 연구실에서 학생을 뽑을 때 나와 같이 되고 싶은 사람. 나와 같은 사람, 친구가 되고 싶은 사람을 선발한다.
  • 박용후: 동기부여가 가장 중요. 어떤 일을 해야하는지 명확히 인식이 되었다면 회사에 출근하지 않아도 일을 할 수 있다. 자유보다 자율이 중요하다.
  • 유명환: 분야를 떠나서 함께 일을 해결하려는 의지가 필요함.