달력

6

« 2025/6 »

  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • 29
  • 30
작년에 진행하던 프로젝트를 마무리하고 나서 틈틈히 공부하는 책이 있다.
사실 웹 개발을 오래하다 보면, 쉽게 간과하기 쉬운 부분이 Javascript와 CSS와 같은 부분이다. 왜냐하면, 요즘에 나오는 HTML Editor 툴과 개발에 사용하는 IDE의 성능이 상당히 향상되어서 양질의 코드를 생산할 수 있기 때문이다.
그러나 요즘에 사용하는 자바스크립트는 이전의 그것과 전혀 다른 모습을 띄고 있다. 한 마디로 스크립트 언어이기에 배우기 쉽고, 인터넷의 웹에서 비슷한 Sample들을 쉽게 가져 올 수 있기 때문에 별로 배울 가치가 없다라고 생각하면 큰 코 다친다.

AJAX라는 기술이 Web 2.0을 대표하는 기술로 이야기 되어진 이후로, Javascript를 좀도 체계적이고, 라이브러리처럼 쓸수 있는 많은 Javascript Framework들이 만들어 졌다. Yahoo의 YUI, Roby on Rails에서 기본적으로 사용할 수 있는 Prototype, 최근에 마이크로 소프트의 ASP.NET을 위해서 Visual Studio에서 지원하는 JQuery 그리고, ExtJS와 같은 상용 프레임워크까지 셀수 없이 많은 새로운 Javascript Framework가 나타나고 있다.

하지만 자바 스크립트라는 언어의 근간을 이해하지 못하면, 좀더 효율적으로 사용하지 못할 거라고 생각 한다. 그렇기 때문에, 공부의 우선순위가 떨어져서 한번을 공부해야지 했던것이 이제야 살펴 볼수 있는 기회를 갖게 되었다.

책을 읽어가면서 내가 느낀것은, 한마디로, 내가 10여년전에 사용하고 이해하던 자바스크립트와는 전혀 다른 세계였다. OO를 적용한 객체지향적인 속성과 재활용을 위한 여러가지 기능과 속성들을 이해해야만 한다.  너무나도 자유롭고 쉬운 문법을 가지고 있지만, 확장과 변경을 위해서는 언어의 특성을 완전히 이해해야만 한다.

위의 보이는 사진속의 책이 내가 최근에 공부하고 있는 책이다.
책은 각 쳅터의 주제에 맞는 쉬운 예제들을 보여주고 있다. 이를 통해서 기본 원리들을 익힐 수 있도록 구성되어 있다. DOM을 통한 Object를 찾고 접근하고 제어하는 방법과 Dynamic HTML의 속성들을 이용하여 접근할 수 있는 Object들의 사용법도 익히면, 책의 내용을 이해할 수 있는 기본적인 소양을 갖추고 있다고 할 수 있다.

책의 내용을 결코 어렵지 않지만, 이전에 알고 있던 자바스크립트에 대한 선입견을 버리지 않는다면 쉽게 이해하기 어려울 것이다.

나와 같이 개발에 참여하고 있는 개발자는 ExtJS를 이용하는데, 큰 어려움을 가지고 개발 작업을 진행했다. 사실 ExtJS를 구매하고 개발에 이용하는 목적은 개발의 효율성과 리소스를 절약하려는 목적이었는데, 이에 대한 효과는 전무하였다.
나름 대로 분석을 해보면, 주어진 컴포넌트는 API 다큐멘트를 찾아보면 알수 있지만, 이의 변형이나 새로운 형태로 변형을 가할 때는 Javascript와 Prototype 라이브러리에 대한 이해가 적었기 때문이다. 그렇기 때문에 다른 컴포넌트를 이용할 때도 기본기는 항상 중요하다.

약 380페이지의 책중에서 현재 110페이지를 읽고, 코드를 짜보고 있다. 책 속에는 개발시 필요한 디버커 툴을 소개해 주고 있는데, 개인적으로는 Firefox의 plug-in인 Firebug를 좋아하고 자주 사용하고 있다. 이외의 다른 툴들은 책의 내용을 참고하면 된다. 그리고 Junit와 유사한 Javascript Unit 테스트 툴들도 소개하고 있다. 아직은 별로 관심 없는 부분이다.




:
Posted by 행복상자
지난 달에 미국 라스베사스에서 열렸던 CES쇼에 발표되어 호응을 얻었던 제품으로, 우리에게 비디오카드로 유명한 NVIDIA에서 개발하였다.
NVIDIA는 비디오카드 Chip Set뿐만 아니라, 비디오 칩셋이 장착되어 있는 nForce라는 이름이 붙어있는 보드를 생산해 판매해 왔었다.

CES에서 발표된 ION 플랫폼은 인텔의 ATOM프로세스와 NVIDIA의 GForce 9400 GPU를 탑재한 초미니 보드이다. 보드의 크기는 정말 사람 손 바닥만하다. (아래 그림 참조)... 정말 작고 귀엽다. ^^



가로의 길이가 겨우 10Cm 밖에 되지 않는다. 정말 작은 미니 PC를 만들수 있을 것 같은데, 이의 성능에 대한 자료는 NVIDIA의 사이트를 참조하면, 결코 만만치 않은 성능을 제공한다는 것을 알수 있다.
참고자료:


아래는 CES에 발료된 ION 플랫폼의 사양으로, Full HD를 지원함을 볼수 있다..

NVIDIA-Provided Benchmarks For The Ion Platform:

CPU

Atom 330, 1.6GHz, FSB 533MHz

Memory

Single Channel DDR3-1066, 2GB

GPU

GeForce 9400M, 16 graphics cores, full HD decode

SATA

3Gbps

Networking

10/100/1000 Ethernet

Audio

7.1 HD Azalia

Max Res.

2560x1600 dual link DVI, 1080p HDMI


최근 며칠동안 ION 플랫폼에 대해서, 자료를 찾아 보았다. 하지만 생각보다 많은 자료를 찾아 볼수 없었는데, 한국 NVIDIA에 관련된 자료와 소개자료가 Update 되었다.

최근의 계획은 올 여름에 일반에게 판매가 가능한 제품으로 출시될 예정이다.
만약, 출시가 되면, 개인적으로 구매해서 집안에서, 서버를 설치해서 사용해보려한다. 최근에 개인적으로 외장하드와 NAS 제품을 두고 고민을 많이 하였다. 점점더 많아지는 컨텐츠와 동영상과 사진등을 보관하기 위해서, 대용량의 HDD의 필요성을 커져만 가고 있다. 내가 NAS 제품을 포기하고 2.5인지 외장 하드를 선택한 이유는, 혹시 NAS의 소음이 크지 않을까라는 염려에서 였다. 인터넷을 구매할 때는 제품의 보지 않고 이미지와 평만을 가지고 구매 결정을 하므로, NAS를 과감히 포기할 수 밖에 없었다. 결국 2.5인치 외장 하드를 구해해 사용하고 있다.

http://www.nvidia.com/object/sff_ion.html 에 소개되어 있는 동영상을 보면, ION이 얼마만큼 뛰어난 성능을 제공하는지 가늠할 수 있는데, 개인적으로는 보드가 출시되면, 이를 이용하여, 홈서버를 구축하려고 생각하고 있다. 소음과 저절력의 시스템이라면, 운영에 큰 부담이 없을 거라 생각한다.
케이스는 투명 아크릴로 조립한다면, 또 다른 개인적인 즐거움을 제공할 거라 믿어 의심치 않는다.

그리고 ATOM 프로세스는 요즘 인기있는 넷북에서 사용하고 있는 프로세스로, WIN XP, WINDOWS 7, LINUX 그리고 MAC OS X 역시 무리 없이 잘 돌아가기 때문에, 메모리만 충분하다면, VirualBox와 같은 가상화 시스템 프로그램을 설치하면 여러가지 OS를 사용할 수 있는 만족감도 더불어 얻을 수 있을 거라 생각이든다.

만약 TV옆에다 설치를 한다면, 이 역시 또다른 재미를 줄 수 있을 거다.

'좋아하는 것 > Hardware' 카테고리의 다른 글

라즈베리 파이 설치  (0) 2015.11.28
:
Posted by 행복상자
최근에 우연히도 VirtualBox에 대해서 지인으로 부터 들었다. 이 프로그램은 가상화 시스템 또는 가상화 프로그램으로, 아마도 알고 있는 사람들은 다 알고 있을 것이다. 그리고 나름대로 한 두번은 설치해서 사용해 보았을 것이다. VmWare, 패러랠즈와 Zen과 비슷한 또는 동일한 기능을 하는 프로그램이다.

VirtualBox라는 프로그램은 선 마이크로 시스템에서 만든, GNU Gerneral Public License (GPL) 의 오픈 소스 프로그램이다. 이는 가상화를 지원하기 위한 소프트웨어로 x86계열의 프로세스에서 동작한다. 이를 이용하면, 리눅스 환경에서 윈도우를 구동시키거나, Apple의 OS X를 구동시킬수 있다.

현재 VirtualBox는 현재 2.1.2 버전이 Release 되어있는 상태이며, 윈도우즈 계열, Mac OS X, 리눅스와 선의 솔라리스를 지원하고 있다. (2.1.2 버전은 초근 2009년 1월 19일에 Release되었다.)

이를 다운로드 하기 위해서는 아래의 링크를 참조하면 된다.
- VirtualBox 2.1.2 : http://www.virtualbox.org/wiki/Downloads
  (OS별로 다운로드가 가능하다.)
설치 프로그램은 약 38Mbyte로 생각보다 사이즈가 작았다.
PC에 다운로드 하였다면, 한번 설치해 보자. 다운 받은 설치 프로그램을 실행시키면 다음과 같은 화면을 볼수 있을 것이다. (내가 설치한 환경은 윈도우즈 XP 이다)


위의 화면은 첫 화면으로 버전과 선의 프로그램에 대한 설명이 나타나 있다.
이어서 "Next >" 버튼을 클릭하면, 아래와 같이 License 동의에 관한 화면이 나타날 것이다.


라이센트에 동의를 하게되면 아래와 같이 설치를 위한 설정에 대한 화면이 나타나는데, 처음이므로 기본설정의 변경없이 넘어가겠다. (만약 설치 위치를 변경하거나, USB와 Network를 변경하려면 아래 화면에서 설정 사항을 변경하면 된다.)

아래역시 기본 설정을 그래도 두고 다음으로 넘어간다.

설정이 끝나면, 아래 화면의 하단에 있는 "Install" 버튼을 클릭하면 설치가 시작된다.

아래는 설치를 실행했을 때 나타는 설지 진행 상태를 보기 위한 화면이다.

설치가 성공적으로 마치게 되면, 아래와 같이 설치 완료에 대한 화면이 나타난다.
아래의 옵션은 설치가 완료되면, VirtualBox를 실행시킬지에 대한 설정을 포함하고 있다. 


위의 순서대로 설치를 마치고, VirtualBox를 실행해 보면 영문이 아닌 한글을 지원한다는 것에 감동을 할 것이다. 한글 메뉴와 툴팁들을 제공하므로, XP나 Vista의 이미지를 생성할 수 있을 것이다.

나는 이를 이용하여, 요즘에 배포되고 있는 윈도우 7 Beta를 설치해 보았다.
다음에는 이에 대한 스크린을 가지고 사용법을 간단하게 알아 볼 것이다.

'Tip & Tips > VirtualBox' 카테고리의 다른 글

Virtual Box 4.0 Released  (1) 2010.12.25
VirtualBox 3.0.2 Released  (4) 2009.07.12
선 마이크로 시스템의 VirtualBox ver 2.1.2 설치 (2)  (0) 2009.02.14
:
Posted by 행복상자
제목부터 달고 글을 쓰려니, 글 제목이 삶과 인생에 대해 무언가를 보여주어야 한다는 약간의 압박은 준다. 그러나 과감히 무시하려고 한다. 내가 말하고 이야기 하고 싶은 것은 결코 무겁고, 어려운 이야기가 아니기 때문이다.

내가 PC를 통해서 프로그래밍을 배우고, 프로그램을 시작한지는 약 17년 정도 된다. 그리고, 이를 통해서 돈을 벌고 만지기 시작한 것은 14년정도 된다. 그동안 많은 것들을 해보았고, 배우고 경험해 보았다. 하지만 삶도 마찮가지이지만, 모든 일은 선생이 되는, 역할 모델의 역할을 하는 사람들이 있다. 나에게는 일민(Toby)이가 이런 사람중의 한명이고, 내가 개발자의 길로 들어서는데 중요한 역할을 한 사람이다. 여러 사람들이 그에게서 천재성을 이야기하기도 하지만, 자유로움를 추구하고, 마음이 가는 데로, 꿈이 이끄는 대로 살아가는 그의 삶이 모습이 개인적으로 부럽기도 하다. 그리고 관심있는 일에 보이는 놀라운 집중력은 그가 보여준 개발자로의 놀라운 열정이다. 그리고 조금씩이지만, 자신의 관심의 영역들이 다른 이들에게 좋은 의미의 길을 보여주는 작은 노력들이 기특하기도 하다.

조금 전에 TV에서 보여준 이름 모를 프로그램에서 "천재는 재능적으로 띄어난 사람이 아니라, 세상의 발전과 변화에 영향을 끼친 사람이다." 라는 멘트가 나왔다.  어떤 뛰어난 재능있는 사람이 자신을 이야기 할때, 자신은 천재가 아님을 겸손하게 이야기 하면서, 이를 언급하곤 했다고 한다. 나는 너무나도 쉽게 이 멘트에 동의할 수 밖에 없었다.
재능있는 사람이 아니라 영향력을 줄 수 있는 사람은 주변에서 작게 크게 찾아 볼 수 있다. 단지 돈을 벌고 회사의 이익을 위해서 재능을 사용하는 것이 아니라 세상을 바꾸기 위해서 재능을 사용하는 사람일거라 생각했다.

한국에서 개발자로 살아 간다는 것은, 어떤 의미에서는 돈과 회사의 이익이 더 가까울수 있다.
따라서, 원치 않는 것들을 배우기도 하고, 중요하다고 생각하는 가치들을 잠시 내려놓고 가야만 할 수도 있다. 내가 아는 어떤 사람들은 닷컴 붕괴이후 전혀 다른 일을 하고 있는 경우도 있었다. 보험업을 하거나, 장사를 하기도 한다. (나도 결코 이를 실패한 삶이라고 보지 않는다. 나름 현재의 생활에 만족을 하고, 성공도 하고 있으니까..)

개발자로의 삶은 나에겐 재미 있는 일중의 하나이고, 즐거움을 줄 수 있는 일중의 하나이다. 개인의 즐거움을 회사가 포기하지는 않을 것이다. 하지만 내가 하는 일이 잠시 겨쳐가는 삶의 단계가 되지 않았으면 좋겠다. 또한 나 자신에게 하는 일이지만, 즐거워 하는 일을 결코 포기하지 않았으면 좋겠다.

17년 동안 PC를 만지고 개발 관련되 것들을 공부하면서 느끼는 것이지만, 새로운 기술은 이전 기술드의 응용이기도 하지만, 갈수록 신기술들은 많아지고, 배워야 하는 것들은 많아지고 있다. 하지만 이들의 수명도 트렌드의 변화와 IT업계의 마케팅 방향에 따라 짦아지고 변화의 주기는 빠르게 변화된다.

다시 한국에서 개발자로 살아간다는 것은, 정말 많은 것들을 배우고 트렌드를 따라가기 위해, 엄청난 노력을 해야한다. 남들보다 빠르고, 신속하게 배운다 해도 적용할 시점이 되면, 새로운 것들이 마구 쏟아져 나온다.
"네트워크 컴퓨터","그리드 컴퓨팅", "UDDI 웹 서비스","유비쿼터스", "클라우딩 컴퓨팅" 등 이름과 마케팅의 미사구로 무장한 기술들이 마구튀어 나오지만, 그 기술적 근원은 모두 비슷하다. 단지, 시장과 서비스에 가장 적합한 현 시점의 기술들을 이용해서 말하고 있을 뿐이다. 물론 기술적으로 전혀 다르다고 할 수 있지만, 네트워크를 통한 서비스라는 측면에서는 모두 같다. 그냥 트렌트는 편하게 받아들이면 된다. 유비쿼터스가 그러했듯이, 지나면 다른 것으로 변화해서 나타날 것이다. (시대가 원치 않았기 때문일 거다. 반드시 기술적인 성숙도가 한계치에 도달할 때는 꼭 반드시 해야할 것이다.) 따라서 트랜드에 쳐지지 않으려면, 용어와 기본적인 개념은 반드시 익혀야 한다.)

그리고, 개발을 위해 많은 툴과 프로세스틀 익히고 알아야한다. 경험있는 개발자는 프로세스와 개발에 필요한 도구들을 만드는데 많은 노력을 들여야 하는 것이 개발자의 또 다른 삶이다. 매번 하는 프로젝트 마다 반독적으로 검토하고 준비해야 한다. (빌드 방식, 형상관리, 다큐멘테이션, 테스트등)
하지만 한번도 프로젝트 리소스와 기간에 이 부분이 반영되거나 일정이 늘어나지 않는다.
개발자로 살아가기 위해서는 필요한 것과 버려야 할 것을 잘 선별하고, 잘 선택해야 한다. 이 경우는 개발의 Quality(질)과 Requirement(요구사항) 중에서 한가지를 선택해야만 한다.

앞으로 10년 또는 20년을 개발자로 살아간다면, 한번쯤을 자신을 위한 프로젝트를 계획하는 것도 좋을 것 같다. 조금씩 조금씩 돌 탑을 쌓듯이 만들어 간다면, 먼저 나에게 그리고 사회에 이바지 할 수 있는 좋은 프로그램을 만들수 있을거라 믿는다. 규모의 크고 작음은 중요하지 않다. 내가 나를 만족시킬수 있다면, 그리고 더 나아가 다른 사람들에게 도움이 된다면, 이보다 더 좋을 수 없을 것이다.  
하루 하루의 연속성을 통해서 개발자로의 살아가는 목적이 명확해져 갈것이다. 나에게는 무엇인가를 만든다는 즐거움이, 무엇인가를 프로그래밍 할때 얻는 즐거움이 목적이 될거라 생각이 든다.

갑자시 생각이 나서 글을 썼다. 내가 즐겁다고 느끼는 것은 환경이 도와주지 않고, 해야할 많은 다른 것들로 방해를 받더라도 마라톤을 띈다는 심정으로 한걸음씩 나아간다면, 또 다른 것을 이루고 성취할 수 있는 기쁨을 얻을수 있을 거라고 믿는다. 


  
:
Posted by 행복상자