삶을 위한 소프트웨어

전 세계 사람들의 삶의 질을 높일 수 있는 소프트웨어

전체 글 329

그래 이제 벤처(Venture)로 가자!

그래 이제 벤처로 갈 때인것 같습니다. 사실 그 동안 이직 문제로 많은 고민을 하였습니다. 고맙게도 제가 유명 포털업체에 합격했었으며, 생각보다 큰 SI 업체에서 제의도 받았습니다. 이직을 하려고 결정하니 많은 분께서 조언과 도움을 주셨습니다. 정말 진심으로 감사합니다. :-) 여러분들의 좋은 조언과 제가 가지고 있던 뜻을 모아 벤처로 가기로 하였습니다. 휴~ 그동안 많은 고민이 있었습니다. 커피를 무한대로 주는 모 유명 포털업체가 정말 좋았으며, 대형 업체의 제의도 좋았습니다. 하지만.... 전 결국 벤처로 가기로 결정하였습니다. 항상 제가 말씀 드려왔던 것이 있습니다. 전 삶을 위한 소프트웨어를 만들고 싶은 사람이고 지금도 삶을 위한 소프트웨어를 꿈꾸고 있습니다. 이제 본격적으로 다양한 삶을 위한 소..

Software for Life 2010.02.23

Clojure 개발 환경 구축하기

Eclipse를 이용하여 Clojure의 개발 환경을 구축하는 방법을 알아보고자 합니다. 매우 간단하고 쉽습니다. Step by Step으로 진행하여 그 유명한 HelloWorld를 한번 실행해 보겠습니다. 우선 이클립스 3.4 이상이 설치되어 있다고 가정하겠습니다. 아울러 JDK 5(1.5)나 6를 설치하였다고 가정하겠습니다. 1. counterclockwise 이클립스 플러그인 설치 자 이렇게 설치가 되었다면, counterclockwise라는 이클립스 플러그인을 설치해야 합니다. 참고로 counterclockwise는 이클립스 하에서 Clojure를 개발할 수 있는 플러그인으로 REPL을 지원하며 신택스 강조(Syntax higlighting)이나 코드 완성(Code completion) 등을 지원..

증강현실(Augmented Reality, AR) 세미나를 다녀와서

어제 KT 디지에코(Digieco)에서 주최하는 증강현실(Augmented Reality, AR) 관련 세미나를 다녀왔습니다. 참 어색한 단어죠~ 증강현실~ :-) 어떤 분들은 증강현실이란 단어 자체가 잘못 번역되었다고 말씀하시는 분도 계십니다. 사실 Augmented Reality라는 단어를 번역하는게 그리 쉬운 일은 아니었을 것입니다. 개념자체가 몇가지 단어로 설명되기는 힘든 부분이 있기 때문이죠~ 여튼~ 제니텀의 김희관 사장님께서 Mobile Augmented Reality란 주제로 발표해주셨습니다. 발표 자료는 아래에 있습니다. 참 좋은 참고가 되었습니다. 감사합니다. ;-) Mobile Augmented Reality (KT경제연구소 세미나) View more presentations from ..

Software for Life 2010.02.10

소프트웨어 프로그래머는 정말 가치 있는 직업이다.

안녕하세요~ 장선진입니다. :-) 최근 블로깅이 뜸했네요~ 사실 개인적으로 많은 일들이 있었습니다. 그리고 최근 여러 분들을 만나면서 이런 저런 이야기들을 오프라인에서 많이 나누고 있습니다. 만나뵌 분중에서 소프트웨어 프로그래머에 대한 자괴감 섞인 이야기를 하시는 분들이 계셨습니다. 음.. 물론 소프트웨어 프로그래머란 직업이 정말 쉬운 직업은 아닌것 같습니다. 매일 같이 바뀌는 기술과 알아야할 것들이 정말 산더미처럼 쌓여있으며, 계속 되는 야근과 악몽같은 디버깅이 기다리고 있으니까요.. 하지만, 어떤 직업이 배워야할 것들이 없겠습니까? 아니면 일이 많지 않은 직업이 과연 몇개나 되는지요. 그리고 그런 직업들중에 가치있는 직업이 정말 몇개나 되는지 다시 한번 묻고 싶습니다. 예전으로 돌아가서 97년 IMF..

Software for Life 2010.02.09

한국에 스티브 잡스를 키운다는 뉴스를 접하며

"`한국의 스티브 잡스` 키운다."라는 뉴스를 접하였습니다. 여러분들도 아마 많이 읽어보셨을 것이라고 생각이 드네요~ 이 뉴스를 접한 저의 첫 느낌은 이제 소프트웨어 분야는 누구 한사람이 이루어가는 생태계가 아니라 여러가지 다양한 서비스들이 융복합되면서 훌륭한 소프트웨어로 발전해가는 시대인데, 이런 시대의 흐름을 잘못 읽은 또 하나의 정책 오류가 아닐까 하는 생각이었습니다. 아시다시피 정보통신부는 이번 정권이 들어서면서 없어졌습니다. 수 많은 IT 관련 국가 정책과 각종 업무를 총괄하던 부서를 없애버린 정권이 바로 이 정권입니다. 이로 인하여 수 많은 IT 관련된 정책들이 제대로 추진되지 않았다는 사실은 아마 여러분들도 잘 느끼셨을 것이라고 생각됩니다. 이런 시점에서 또 하나의 쑈를 벌이고 있다고 생각합..

Software for Life 2010.02.06

사용성 테스트 가이드북

사용성테스트 가이드북 - 조셉 두마스.제니스 레디쉬 지음, 방수원.박성준 옮김/한솜미디어(띠앗) http://blog.java2game.com2010-01-29T06:35:010.31010 사용성 테스트 가이드 북을 읽었습니다. 여러가지 시사점이 많은 책입니다. 소프트웨어의 품질을 따질때 기능성을 중심으로 테스트하는 경우가 많습니다. 하지만, 더 중요한 것이 사용성임을 이 책을 통하여 확실히 느꼈습니다. 약간은 딱딱하지만 좋은 책입니다. 소프트웨어를 조금 더 사용성 높게 만드시려는 분들에게 권해드립니다. :-) 사용성은 제품의 기능성처럼 모든 제품의 특성 중 하나이다. 기능성은 제품이 무엇을 할 수 있는지를 가리킨다. 기능성을 테스트한다는 것은 제품이 제품 명세서대로 작동하는지 보는 것이다. 반면 사용성..

Books in Life/2010 2010.01.29

소프트웨어 아키텍트(Software Architect)를 꿈꾸시는 분들에게

며칠전에 어느 대학교 4학년 분에게 메일 한통을 받았습니다. 그 분은 소프트웨어 아키텍트(Software Architect)를 꿈꾸시는 분이셨습니다. :-) 참 멋진 생각을 하고 계신것 같습니다. 소프트웨어 아키텍트라는 본인의 꿈을 이루기 위하여 조언을 구하시는 그분의 모습을 보면서 이러한 노력들이 나중에 훌륭한 소프트웨어 아키텍트로 성장하실 수 있는 좋은 밑바탕이 될 것이라고 생각하였습니다. 사실 저는 아직 큰 규모의 소프트웨어 프로젝트에서 소프트웨어 아키텍트로 많은 일은 하지 못하였습니다. 다만 제가 맡은 프로젝트나 아니면 중급규모의 회사의 프로젝트에서 나름 소프트웨어 아키텍트라는 역활을 수행하곤 하였습니다. 아울러 소프트웨어 아키텍트가 되기 위한 정식적인 교육을 받은 적은 없습니다. 따라서 그 분에..

Software for Life 2010.01.24

Tstore 안드로이드 공모전이 곧 열릴 예정입니다. Coming Soon~

소문만 무성하였던 Tstore 안드로이드 공모전이 곧 열릴 예정입니다. :-) 이미 2009 공개소프트웨어 공모대전 대상을 수상한 바가 있었기에 이번 Tstore의 안드로이드의 공모대전에 많은 관심이 가는군요~ 특히 기존에 아이디어 공모대전에 장려상을 받았던 작품들을 조금 더 자세하게 다듬고 싶습니다. SKTelecom이 많은 준비를 하고 있는것 같습니다. 임시 문의 게시판도 운영하고 있습니다. http://tac.tstore.co.kr/ 에서 자세한 내용을 살펴보세요~ 두시궁~ Coming Soon~ ;-)

Story of My Life 2010.01.15

Lisp의 객체지향은 그 무엇보다 강력했다.

Lisp의 깊은 바다를 헤매이다가 Lisp의 객체 지향(Object-Oriented)에 대하여 이번에 알게 되었습니다. 나름 객체지향에 대한 일정 수준의 이해가 있다고 생각했던 저에게 Lisp의 객체지향은 그야말로 하나의 충격이었습니다. Lisp은 우아하게 그리고 너무도 자연스럽게 객체 지향을 매우 깊이 있게 지원하고 있었습니다. 이 괄호로 둘러싸여 이상하게 보이는 언어는 AOP(Aspect Oriented Programming)를 이미 포용하고 있었으며 독특하면서도 특별한 객체 지향의 모습을 멋지게 보여주었습니다. 너무도 멋진 이 Lisp의 객체 지향 관련된 기능은 Common Lisp에서는 CLOS(Common Lisp Object System)이라고 부릅니다. 여러분중에 객체에 대하여 난 좀 알고 ..

ANSI Common Lisp 책을 읽고 있습니다.

카네기 멜론에서 나온 Common Lisp: A Gentle Introduction to Symbolic Computation 책을 "Lisp을 좋아하는 사람들의 그룹"에서 공부한 후 현재는 ANSI Common Lisp 책을 읽고 있습니다. Common Lisp은 Lisp을 처음 접하시는 분들에게 상당히 훌륭한 책이라고 생각합니다. 저 역시 이 책을 Lisp을 좋아하는 사람들의 그룹에서 진행한 오프라인 스터디를 통하여 공부하였는데, 많은 도움이 되었습니다. 혹시 Common Lisp 책을 공부하시는 분들 중에 참고자료를 찾으시는 분들이라면 저희 그룹에서 진행한 오프라인 스터디 동영상을 한번 참고하시기 바랍니다. 저희 위키 사이트인 http://lisp-korea.wikispaces.com/Common+..

누구나 시간은 없지만..

나름 재미있는 인생을 살고 싶어서 여러가지 일들을 의욕적으로 많이 하는 편입니다. 그러다 보니 많은 분들이 궁금해하는 것 중에 하나가 어떻게 그렇게 시간을 낼 수 있는가인것 같습니다. :-) 글쎄요~ 사실 누구나 시간은 없습니다. 저 역시도 항상 시간은 많지 않습니다. 결국 누구에게나 공평하게 제공되는 24시간을 어떻게 효과적으로 사용할 것인가를 많이 고민하는 편입니다. 제가 쓰는 플래너입니다. 아시다시피 프랭클린 플래너를 사용하고 있습니다. 이렇게 다이어리를 공개하는 것은 이번이 처음 입니다. 거의 제 플래너를 공개하지 않았는데~ 이번에 공개하는군요 :-) 사실 저는 이 프랭클린 플래너를 6년째 사용하고 있습니다. 프랭클린 플래너 전에는 오롬이나 다른 다이어리를 계속 사용해 왔었습니다. 고등학교 친구중..

Story of My Life 2010.01.07

눈이 선물해준 하루

어제부터 오늘까지 눈때문에 출근하기 정말 어려웠습니다. 어제는 출근을 포기하기까지 했습니다. 제가 살고 있는 곳은 용인 청덕이란 곳인데 평소에는 정말 살기 좋은 곳입니다. 다만 어제처럼 눈이 많이 오는 경우에는 정말 출근하기 어려운 곳입니다. 아침부터 눈이 와서 일찍 일어났습니다. 오래 오래 기다려서 버스를 탔는데..... 한 정거장에서 한정거장 가는데 30분씩 걸리더군요... ㅡ_ㅜ 9시정도 되니.. 이제는 더이상 출근할 수 없다는 생각이 들었습니다. 회사에 연락해서 겨우 겨우 버스에서 내렸습니다. 다시 집으로 돌아가려는데... 집방향으로 가는 버스는 한대도 안왔습니다. 휴.... 무작정 기다릴 수 없기에 천천히 집으로 걸어가기 시작하였습니다. 1시간 넘게 집으로 걸어 갔지만 정말 멋진 풍경이 펼쳐져 ..

Story of My Life 2010.01.05

소프트웨어란 무었인가?

항상 고민했던 부분이 소프트웨어(Software)란 무었인가?라는 물음이었습니다. 정말 어려운 이 문제에 관심을 가지는 이유는 제가 소프트웨어를 좋아하고 좋은 소프트웨어를 만들어 내고 싶기 때문입니다. 출처: http://www.gnu.org/philosophy/compromise.html 즉 소프트웨어에 대한 제 자신만의 생각을 명확하게 가지고 있어야, 삶을 위한 소프트웨어에 대한 구체적인 생각을 정리할 수 있다고 생각하고 있기 때문입니다. 따라서 저는 항상 소프트웨어란 무었인가?(What is the software?)란 질문을 스스로에게 던지곤 하였습니다. 많은 문헌들과 인터넷에서도 수 많은 소프트웨어의 정의가 있습니다. 하지만 대부분 소프트웨어의 분류를 정하고 각 분류별로 소프트웨어의 특징을 설명..

Software for Life 2009.12.30

기적의 양피지 캅베드

기적의 양피지 - 헤르메스 김 지음/살림 http://blog.java2game.com2009-12-27T08:16:460.31010 독서평을 작성하면서 가장 독서평을 적고 싶지 않았던 책이 있었습니다. 벌써 읽은지 6개월여의 시간이 흘렸지만, 이 책의 독서평은 계속 쓰기 싫었습니다. 마치 천기를 누설하고 싶지 않은 기분이랄까요 :-) 하지만 이 좋은 책을 저 혼자 읽을 수 없기에~ 올해가 가기전에 드디어 독서평을 적게 되었습니다. 마치 시크릿을 읽었을때의 감동을 느낄 수 있는 정말 좋은 책입니다. 이 책의 주인공은 유명한 선박왕이었던 오나시스(Aristotle Onassis)의 일생에 관한 이야기 입니다. 숫한 화제와 염문을 뿌렸던 오나시스를 중심으로 그가 살았던 삶과 어떻게 그런 삶을 살 수 있었는지..

Books in Life/2009 2009.12.27

구세군의 종소리 같은 블로그가 되겠습니다.

언제부터인지 가장 정겨운 소리 중에 하나가 구세군의 청명한 종소리인것 같습니다. 지하철에서.. 길에서 우리에게 우리 주변의 어려운 사람들을 다시한번 생각하게 하는 구세군의 종소리.. 이 종소리가 없었다면 우리는 아마도 다른 어려운 이웃들을 생각하지 못하고 지나치게 될 것 같습니다. 저는 구세군의 청명한 종소리야 말로 우리에게 가장 필요한 소리라고 생각합니다. 마찬가지로 제 블로그가 여러분들에게 구세군의 청명한 종소리와 같은 블로그가 되었으면 좋겠습니다. 여러분들에게 가끔 지친 일상에 다른 것들을 찬찬히 살펴보고 생각하게 할 수 있는 블로그가 되었으면 좋겠습니다. 그리고 한가지 더 붙인다면 자선냄비와 같은 소프트웨어를 만들고 싶습니다. 정말 옛날에는 집에 쓰던 냄비에 빨간색 페인트를 발라서 사용했었을 것 ..

Software for Life 2009.12.26

2010년을 준비하면서 :-)

언제나 처럼 프랭클린 플래너를 준비하였습니다. 어느새 6년이란 시간을 함께 해온 프랭클린 플래너 :-) 2010년 준비를 위한 든든한 동반자입니다. 항상 플래너를 통해 일상을 정리하고 새로운 내일을 준비할 수 있었습니다. 2010년도 플래너와 함께 더욱 새로운 그리고 더욱 보람찬 일들을 해보겠습니다. 참고로 올해는 거의 공짜로 플래너를 구입했습니다. 바로 카드사의 포인트를 이용하였습니다. 아마 카드사에서 포인트 조회해보시면 생각보다 많은 포인트들이 적립되어 있을 거에요~ 이번 기회에 카드사 포인트도 2010년을 준비할 수 있는 플래너 하나 장만하시죠~ 행복한 2010년을 만들어 가실 수 있을 거에요 ;-)

Story of My Life 2009.12.11

해커와 화가

해커와 화가 - 폴 그레이엄 지음, 임백준 옮김/한빛미디어 드디어 해커와 화가를 읽었습니다. :-) 그토록 사고 싶었지만 품절인 관계로 Lisp을 좋아하는 사람들의 그룹(한국 리스퍼)의 별파란님께서 빌려주셔서 읽었습니다. 폴 그레이엄(Paul Graham)이란 분의 독특하지만 새로운 시각으로 프로그래밍 언어와 IT 세계를 바라볼 수 있었습니다. Lisp이란 언어를 기반으로 만든 쇼핑몰 웹 어플리케이션을 Yahoo에 판매하여 많은 수익을 얻은 인문학적인 프로그래머 및 해커로 기억되길 원하는 폴 그레이엄(Paul Graham)!! 한번쯤 읽어보면 프로그래밍 언어와 IT를 바라보는 새로운 시각에 대하여 알 수 있게 될 것 같습니다. 다만 저자의 독특한 사고 체계에 대하여 너무 심각하게 생각할 필요는 없을듯 합..

Books in Life/2009 2009.11.13

Eclipse 3.4 (CDT)와 Cygwin으로 C/C++ 개발환경 설정하기

최근 정말 재미있는 책을 하나 읽고 있습니다. 바로 Short Coding이란 책입니다. 천천히 읽고 있는 관계로 독서평은 나중에 올리구요~ Short Coding을 하기 위한 환경을 Eclipse 3.4 CDT와 Cygwin으로 설정하였습니다. 아시다시피 Eclipse는 C/C++에도 막강한 기능을 발휘하는 툴이라고 생각합니다. 특히 gcc 컴파일러가 여러모로 추천되더군요~ 제가 특정한 플랫폼을 타켓으로한 C/C++ 어플리케이션을 개발하려는 것이 아니고 Short Coding 에 나오는 예제들을 중심으로 확인하려는 것이 가장 큰 목적이므로 별다른 고민없이 구축하였습니다. 특히 GCC를 사용할 수 있다는 큰 장점이 있습니다. Step by Step으로 확인해 보겠습니다. 1. Cygwin 설치 첫번째로 ..

최대 공약수 구하기

최대 공약수(GCD, Greatest Common Divisor)를 구하는 알고리즘을 올립니다. 휴~ 모두 간만에 하나 헷갈리는군요~ Java로 최대 공약수 구하는 알고리즘을 찾는 분에게 도움이 되었으면 좋겠습니다. /** * Copyright (C) 2009, http://www.softwareinlife.com * * This file is part of "Software in Life". * * "Vision Software in Life" is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software..

RLE(Run-Length Encoding) 알고리즘

나름 Java로 풀어본 RLE 입니다. O(n)이 되도록 신경썼는데~ 잘 풀어진건지 모르겠네요~ 고수님들의 많은 의견 부탁드립니다. 참고로 RLE(Run-Length Encoding)는 연속적인 데이터나 문자열 등을 압축하는 알고리즘에 하나입니다. 대표적인 BMP가 이러한 RLE를 사용하여 압축합니다. /** * Copyright (C) 2009, http://www.softwareinlife.com * * This file is part of "Software in Life". * * "Vision Software in Life" is free software: you can redistribute it and/or modify * it under the terms of the GNU General P..