그동안 리눅스를 버추얼머신에서 돌리려고 항상 버추얼 머신 설정하고 CD넣고 설치하고 했었는데요. 몇번 해보고 나니 뻘짓인 것 같아서 인터넷으로 검색해보니 이런게 나오네요. 리눅스야 무료로 배포하는 OS니까 실행 이미지를 배포하는 것도 문제가 없겠죠. 실행은 무료 VMWARE인 Vmware player 설치해서 돌리면 됩니다.

http://www.thoughtpolice.co.uk/vmware/

1. VMware player를 설치한다.
2. 위의 웹싸이트에서 이미지를 파일을 다운로드해서 적당한 위치에 복사하고 압축푼다.
3. VMware 파일을 클릭한다.

참 쉽죠?

위의 웹싸이트에는 몇가지 레드햇계열과, 오픈수세, 데비안, 우분투의 설치된 이미지 파일이 있습니다. 소스포지와 토런트로 배포하네요.

Posted by dududu
어쩌다보니 AGP 그래픽카드가 고장나서 PCI 인터페이스의 Geforce2 MX를 사용하게 됐습니다. 오래전 그래픽카드라서 그런지 설정하는 것도 쉽지가 않더군요.

1. 드라이버를 설치합니다.
sudo apt-get install nvidia-glx-legacy
이렇게 실행하면 이 패키지는 더이상 지원하지 않는다고 다른 것을 설치하라고 합니다.
nvidia-glx-96을 대신 설치하면 됩니다. 이런 식으로 진행이 안된다면 envyng를 설치해서 추천해주는 드라이버를 설치하면 됩니다.
드라이버 설치후 리부팅

2. nvidia-settings를 실행하고 설정파일을 저장합니다.
일단 설정파일을 백업합니다.
sudo mv /etc/X11/xorg.conf /etc/X11/xorg.conf.backup
다음명령어로 xorg.conf파일을 만드는 거라는데 제 생각에는 필요없어보입니다.
sudo nvidia-xconfig
다음명령어로 설정 프로그램을 실행합니다.
sudo nvidia-settings
이제 이 프로그램으로 해상도를 설정하고요. Apply 하고 Save to X Configuration File을 눌러서 파일을 저장합니다. 파일 경로는  /etc/X11/xorg.conf 로 하고요

3. 그 다음에 할 일 혹은 하지 말아야 할 일
2번을 설정하고 리부팅해보면 X 서버가 맛이 가서 프로그램의 타이틀바가 표시가 안되고 터미널을 실행해도 하얀 화면만 나옵니다. 그러면 시스템->기본 설정->모양새를 실행합니다. 화면효과 탭을 선택하고 없음을 선택합니다.
시스템->기본설정->디스플레이를 선택하면 nvidia 시스템으로 설정할 지 우분투의 기본 시스템으로 설정할지 물어봅니다. 여기서 nvidia가 아닌 기본 시스템으로 설정해버리면 나중에 아무리해도 nvidia의 설정이 적용되지 않습니다. 그러니 해상도를 거기서 설정하면 다시 거기서도 다시 설정을 바꾸어야 합니다.
인터넷의 어떤 사람의 글을 보니 vga 케이블이 고장나서 해상도 설정이 제대로 되지 않았다는 사람도 있었으니 잘안되면 그것도 체크해보십시오.

Posted by dududu
 얼마전에 지인을 통해서 알게된 인터넷 게임이 있다. 그렇다고 인터넷으로 노는 건 아니고 현실의 장소에 가서 보물을 찾는 게임이다. 인터넷 웹사이트에서는 보물의 위치(위도,경도로 표시된다.), 찾기위한 힌트등이 있다. 그리고 찾았다고 가져가는 게 아니라 서명하고 다시 원래위치에 놓아야 한다. -그래야 다른 사람이 또 찾아올 수 있겠죠?- GPS 기계가 있어야 원활하게 게임을 할 수 있지만 시내에는 이정표가 많으니까 지도들고 찾아가도 괜찮을 것 같다. 어차피 GPS 자체의 오류도 있고. 최상의 환경은 GPS+인터넷이 가능한 휴대용기기(아마도 GPS기능있는 핸드폰)이다. 지오캐싱 소프트를 깔아서 위치대로 찾아갈 수 있고 자신의 위치에서 바로 검색도 된다.
 그래서 저번주에 집근처에 캐시(지오캐싱에서 숨겨진 아이템을 캐시라고 부른다.)를 찾아갔는데, 결과는 못찾았다. 게다가 홈리스 할아버지들이 주변에 있어서 찾기도 뻘쭘하고. 못찾았다고 지오캐시 홈페이지에 결과를 올렸는데 다른 한국인 지오캐싱 유저가 메일을 보냈다. 캐시가 분실된 일은 거의 없는데 원래 난이도가 높은 아이템이라고. 그리고 2009년 5월 31일에 시간이 되면 지오캐싱 소개 이벤트를 하니까 찾아오라고 하는데 나는 아마도 못갈 것 같다. 관심있는 분들은 가보는 것도 괜찮을 듯하다. 이분은 수백개 이상의 캐시를 찾아낸 거의 달인급 유저이다.

http://www.geocaching.com/seek/cache_details.aspx?guid=97a2215d-7b68-4ead-af69-e9a7464742a7

사용자 삽입 이미지

Posted by dududu
m4650 + 아센 760으로 네비게이션기능을 사용하고 있다. 무료 소프트웨어 쓸만한게 있나 찾아보니 구글맵을 다운받아서 사용할 수 있는 Terracrosser라는 프로그램이 있었다. 그런데 기본제공맵이 월드맵이라서 자세한 맵은 알아서 다운받아야 한다. 위치랑 해상도 지정해서 대충 다운받으면 된다. 잘 모르겠으면 설명서 읽어보라. 이건 아래의 블로그에서 찾아서 사용해도 된다. 프로그램을 공식 싸이트에서 최신버전을 다운받는 것이 좋다.
Terracrosser의 특이한 점은 자체적으로 gps의 com포트를 설정하지 않는다. 시스템설정의 외부GPS의 하드웨어 탭을 직접 설정해줘야 한다.
한국 싸이트에서 부족한 설명중 하나는 방향키 가운데를 길게 누르면 스크롤모드와 네비게이션 모드를 전환한다는 설명이 없다는 것이다.

http://playppc.co.kr/46 - 한국의 블로그싸이트 설명이 약간 부족하고 소프트웨어도 구형

http://terracrosser.com/
 - 공식 싸이트

more..



더 자세한 설정방법

우선 아센 gps와 블루투스 연결을하고요. 블루투스 연결에서 com탭에서 GPS의 포트를 설정합니다. 저는 com3으로 설정했고요. 여기까지 해야 다른 네비 프로그램을 쓸수 있으니 아마 하셨을 것 같고요. 그다음에 설정->시스템->외부 GPS 선택하시고요. 하드웨어 탭 선택합니다. 그리고 아까 블루투스에서 설정했던 com포트를 여기에 써주면 됩니다. 저는 물론 com3으로 설정했습니다. 속도는 9600으로 했습니다. 그리고 4650같은 경우에 설정->시스템->외부연결 (PC와 연결방법을 세팅하는 곳) 에서 USB연결을 PDA로 설정해야 작동할 겁니다. 사실 잘 기억은 안나는데 이 페이지에서 설정을 해줘야 하는 것은 맞습니다. 안된다면 Serial 옵션을 PDA로 변경하던가 해보세요.
Posted by dududu
이전의 글에서 설명한 것처럼 자바는 현대적인 다른 프로그래밍 언어와 같은 멀티라인 스트링 리터럴 기능이 없다.

http://blog.efftinge.de/2008/10/multi-line-string-literals-in-java.html

그런데 어떤 외국인이 멀티라인 스트링을 구현했다. 코드는 간단하니까 관심있으면 읽어보시길...
평가를 하자면 근성은 칭찬할만 하지만 구리다. 자바6부터 스크립트 언어 기능이 강화됐다 했던가?
jvm을 쓰기 위해서 굳이 자바를 사용할 필요가 없을 듯하다. python+C 언어 조합처럼 스크립트언어+자바 언어를 쓰는 것이 좋을 것 같다. 예를 들어 네트워크 프로그래밍을 할 때 대부분의 코드를 파이썬으로 작성하고 I/O에 관련된 부분만 C언어로 작성하면 성능을 크게 떨어뜨리지 않으면서 생산성을 향상시킬 수 있다. jvm에서도 대부분의 코딩을 자신에게 편리한 스크립트언어로 하고 필요할 때만 자바를 쓰면 되지 않을까?

Posted by dududu
제가 가장 좋아하는 텍스트에디터중에 하나는 윈도우즈의 기본 프로그램인 notepad입니다. 실행속도가 빠르고 인코딩을 달리하여 파일을 저장할 수 있고 화면구성도 깔끔해서 이죠. 하지만 notepad에는 몇가지 단점이 있습니다. 이러한 단점을 보완할 수 있는 것이 AkelPad입니다. 원래 노트패드를 대체하는 것을 목표로 하기 때문에 설치옵션중에 windows/system32/notepad.exe로 파일을 설치하는 옵션이 있습니다. (언인스톨하면 복구 가능합니다.) 이제 Akelpad가 노트패드를 대체할 만큼 좋은 이유 몇가지를 나열해 보겠습니다.

1. 실행 속도가 노트패드와 거의 비슷할 만큼 빠르다.
클릭버튼을 떼자마자 바로 실행됩니다. 상용에디터인 emeditor가 이정도로 빠르죠. 현재는 무료 에디터인 notepad++을 주로 쓰긴하지만 이렇게 빠르지는 않습니다.

2. 파일 로딩 속도가 더 빠르다.
1메가 정도되는 텍스트 파일을 로딩해보니 Akelpad는 바로 로딩되는 반면 notepad는 0.5초정도 딜레이가 있었습니다. 결국 파일용량이 조금만 커도 akelpad가 더 빠르다는 거겠죠.

3. 탭과 shit+탭으로 들여쓰기 조정가능.
이건 노트패드에는 없는 기능이지만 프로그래밍할때 반드시 필요한 기능이죠. 노트패드를 제외한 윈도우용 텍스트에디터는 대부분 지원하는 기능이고요.

4. 자동 줄바꿈 모드에서 행번호로 이동가능.
노트패드는 텍스트 파일의 줄번호와 에디터상의 줄번호가 달라지면 이동이 안되죠. akelpad는 당연히도 잘 됩니다. 그리고 노트패드는 자동줄바꿈 모드에 버그가 있어서 자동줄바꿈 상태로 에디팅을 하다보면 화면과 실제 데이터가 따로 놀게됩니다. akelpad는 그런 현상이 없기를 바랍니다.

5. 다양한 코드페이지로 파일 로드/세이브 가능
노트패드는 ANSI와 유니코드로만 읽고 저장할 수 있지만 akelpad는 유니코드및 다양한 mbcs인코딩을 지원합니다. 또한 유니코드에서 bom을 포함할 것인지를 지정할 수 있는 것이 유용해 보입니다.

6. HexSel 플러그인
텍스트의 코드에 문제가 있어서 코드를 봐야할 때 Ultraedit의 Hex editor기능이나 emeditor의 코드보기 기능을 많이 사용하는데요. 제가 써본 것중 이게 가장 편하네요. 플러그인 실행하고 코드를 보기를 원하는 텍스트를 선택하면 플러그인 화면에 코드가 나옵니다.

7. WSH(windows shell script) 지원(이건 사실 부록이긴하지만)
 wsh를 지원하기 때문에 필요한 기능이 있다면 스크립트 프로그래밍으로 간단히 구현이 가능합니다. wsh는 구글에서 검색하면 마이크로소프트에서 관련 문서및 프로그램을 다운받을 수 있습니다. 문서가 한글로 되있어서 읽기 쉽습니다. 이미 설치된 스크립트중에 텍스트계산기가 편해보입니다. "(23+44)*10"과 같이 텍스트를 에디터상에 쓰고 calculator.js플러그인을 실행하면 670이라고 결과를 보여줍니다.

하지만....
노트패드를 대체하는 에디터이기 때문에 전문적인 에디터 기능이 빠져 있습니다. 별도의 플러그인으로 지원되는 지는 몰라도 기본적으로는 다음과 같은 기능이 없습니다.

1. 정규식으로 찾기/바꾸기
2. 파일에서 찾기 - 여러 파일에 찾기
3. 매크로

Posted by dududu
우선 아래의 링크에서 나온 것처럼

http://luto.tistory.com/83

#sudo rmmod  psmouse
#sudo modprobe psmouse rate=100 proto=imps

위 명령어를 실행하면 휠이 작동한다.
하지만 리부팅하면 원래대로 휠이 작동하지 않는다. 리부팅안하고 계속 쓸거라면 상관없겠지만 난 개발용으로 쓸거라서 안된다.

http://ubuntuforums.org/archive/index.php/t-840596.html

위 링크를 보면 /etc/modprobe.d/psmouse를 root 권한으로 만들고 파일내용을

options: psmouse rate=50 proto=imps
라고 만들라고 하지만 그렇게 하면 에러가 난다. 콜론을 없애고 아래와 같이 쓰면 된다.
options psmouse rate=100 proto=imps

p.s.
/etc/X11/xorg.conf 파일을 고치는 방법은 전혀 효과가 없었다. 나중에 마우스 관련된 코드를 전부 주석처리해도 잘 작동한다.
/etc/modprobe.d/options 파일을 수정하는 방법도 전혀 효과없음.

p.s.2
결국 VMplayer를 설치하니까 화면도 넓게 쓸 수 있고 사운드, 휠등도 아무 문제가 없더라. ㅎ
아래의 링크를 보면 무료 가상머신에 우분투를 돌리는 방법이 써있다.
http://johnbokma.com/mexit/2005/11/07/vmware-player-ubuntu-installation.html

Posted by dududu
삼성의 pda폰 m4650을 며칠전에 사서 마이크로소프트에서 파워토이를 다운받았다.
찾기 힘드네... remotedisplay를 쓰면 에뮬레이터 쓰는 것처럼 pc에서 pda를 조작할 수 있게된다.
그외에도 여러가지 도구들이 있다.

http://www.microsoft.com/downloads/details.aspx?familyid=74473fd6-1dcc-47aa-ab28-6a2b006edfe9&displaylang=en
Posted by dududu
1. 스카이프(skype)
 스카이프는 프로그램이라기 보다는 서비스이지만 프로그램이 상당히 좋다. 너무나 가볍고 반응이 빠르다. nateon과 비교해보면 시작시간이 비교가 안된다. 지저분한 팝업도 안뜨고. 우리나라의 소프트웨어 문제는 이통사의 독점적인 지위때문이다. 거지같이 만들어도 수백만명의 사용자가 보장이 되니까.
스카이프의 문자서비스는 120원에 160바이트로 좀 비싸다. 전화도 1분단위로 과금하기 때문에 통화를 길게 해야 싸게 쓰는 효과가 난다. (coarse granularity) 시내 전화로 사용할 때 좋다.
전체 회원검색이 가능하기 때문에 가끔씩 스팸성 메세지가 날아올 때가 있다.
옥션에서 다운받았다. 회원가입은 옥션과는 별도니까 회원정보 유출사전과는 관련이 없을 듯 싶다.

2. 구글 토크(google talk)
이것도 가볍고 빠르다. gmail상에서도 쓸 수 있지만 프로그램을 설치하면 응답을 받기 좋다. gmail알림 기능이 있기 때문에 gmail notifier를 자동으로 언인스톨해준다. gmail 사용자에게 강추. 그러고 보니 근래에 메신저를 두개나 깔았구나. msn, nateon까지 총 4개의 메신저를 사용 중.

3. 송버드(songbird)
미디어 플레이어계의 파이어폭스라고 불린다. 윈앰프 개발자들이 개발하고 있는 오픈소스 mp3 플레이어다. firefox, sqlite등의 모듈을 사용한다. 이미 iTunes, 알송등을 깔아놨지만 궁금해서 깔아 봤다. 알송은 가사기능이 있어서 좋지만 UI가 윈앰프 스타일이라서 불편하다. 이건 개인적인 취향이고.
송버드의 스타일은 iTunes 비슷하고 메뉴들은 파이어폭스 비슷하다. extension같은 것도 있고. flock 브라우저같은 프로그램인가 보다. 뭔가 기능이 많은 것 같은데 심심할 때 찾아봐야 겠다.


Posted by dududu
대부분의 언어들은 여러줄의 문자열 리터럴을 간단히 쓰기 위한 문법이 있다. 이게 뭐냐면 문자열 리터럴은 보통 "문자로 둘러 싸여서 한줄에 쓰게 된다.

"This is string"


위와 같이 말이다. 그런데 한 문자열이 한줄이 아니라 여러줄을 가지게 되면 어떻게 될까?

"This is 1st line.\nThis is 2nd line"


위와 같이 쓰면 된다. 그런데 이렇게 계속 쓰게 되면 2~3줄 정도는 괜찮지만 텍스트 분량이 많은 경우에는 상당히 보기 힘들게 된다. 프로그래밍 텍스트 에디터는 대부분 자동 줄바꿈을 사용하지 않기 때문에 더욱 그렇다.

"Q: 애초에 이렇게 쓸 수는 없나요?
A: SQL에서는 된답니다."

그래서 대부분의 프로그래밍 언어는 스트링 리터럴에 여러줄을 쓸 수 있는 특별한 문법을 지원한다.

그래서 자바도 당연히 있을 것이라고 생각했고 내가 몰라서 못쓰는 것 뿐이라고 생각했다. 하지만 자바에는 그런게 없다. 자바에서 그런 문법이 추가된다면 어떻게 될지에 대해서 토론하는 글타래가 있다.

http://www.jroller.com/scolebourne/entry/java_7_multi_line_string

또한 다른 언어에서는 이 문법이 어떻게 구현되는 지 내가 아는 프로그래밍 언어에 대해서 대충 정리해 보았다.


C, C++
char* aString = "This is 1st line.\n"
    "This is 2nd line.";

Python, Scala, Groovy

aString = """This is 1st line.
This is 2nd line."""
"문자만 사용되므로 개인적으로 가장 좋아하는 스타일이다.



Perl

$aString = <<END;
This is 1st line.
This is 2nd line.
END
이것을 heredoc 스타일이라고 하는데 다른 스크립트 언어에서도 많이 쓰인다.



C#

string aString = @"This is 1st line.
This is 2nd line.";
@하나만 추가하면 되므로 나쁘지 않다.



Java
String = "This is first line\n"
    + "This is second line";
아까 말했듯이 그런거 없다. 그냥 + 로 붙여라.
Posted by dududu
◀ PREV : [1] : [2] : [3] : [4] : [5] : ... [7] : NEXT ▶

BLOG main image
두두두가 IT 기술에 대한 글을 포스트 하는 공간입니다. by dududu

공지사항

카테고리

분류 전체보기 (61)
Total : 47,618
Today : 1 Yesterday : 7