http://blog.naver.com/huni0629/70164637233
총몽의 설정을 좀 가져온 것 같지만, 읽어볼만한 작품이다. 19금 내용이긴 하지만 시사하는 부분이 많아서 링크 걸어둔다.
http://blog.naver.com/huni0629/70164637233
총몽의 설정을 좀 가져온 것 같지만, 읽어볼만한 작품이다. 19금 내용이긴 하지만 시사하는 부분이 많아서 링크 걸어둔다.
NI에 건의해봐야 택도 없을 거고. 데스노트에 적어둘 것도 아니고. 그러니 블로그에 적어둔다. 계속 추가될 듯.
1. 100% 마우스 사용.
2. 자료형 변환.
3. 화면이 커야 한다.
4. 그 결과, 매우 복잡해졌다.
if roifrom-roito < 0 then break 라는 조건문과
”
SET_ROI “+str(
roifrom/calibration)+”,”+str(
(
roifrom-roito)
/calibration) 이라는 문장을 만들기 위해 이 아이콘들을 다 갖다 배열하고 선을 이어야 한다. 알아보기도 어렵고, 처음에 배치하는 것 부터 문제가 시작된다.
5. 프로퍼티 노드를 복사해서 붙여넣기 하면 레퍼런스를 잊어먹는다. 망할.
6. 그래서 질질 끌고 가야 하는 애로사항이 있다.
7. 디버깅할 때 브레이크 포인트 주면 브레이크 포인트로 무조건 이동한다. 토글이 필요하다.
랩뷰는 어렵지 않다. 하다보면 짜증날 뿐이다.
“Englishman In New York” – Sting
I don’t drink coffee I take tea my dear 난 커피 말고 차를 마시지
I like my toast done on one side 토스트는 한쪽만 발라먹고
And you can hear it in my accent when I talk 내말을 들어보면 사투리가 들릴거야
I’m an Englishman in New York 난 뉴욕에 있는 영국인이거든
See me walking down Fifth Avenue 내가 5번가를 걸어갈때
A walking cane here at my side 지팡이 들고 가잖아
I take it everywhere I walk 어디든 지팡이를 들고 가지
I’m an Englishman in New York 난 뉴욕에 있는 영국인이거든
I’m an alien I’m a legal alien 난 외국인, 합법적인 외국인이지
I’m an Englishman in New York
I’m an alien I’m a legal alien
I’m an Englishman in New York
If, “Manners maketh man” as someone said 누가 “예절이 사람을 만들지”라고 하면
Then he’s the hero of the day 그는 영웅일거야
It takes a man to suffer ignorance and smile 무시로 상처받고 웃고
Be yourself no matter what they say 뭐라고 말하든 자신을 가져라
I’m an alien I’m a legal alien
I’m an Englishman in New York
I’m an alien I’m a legal alien
I’m an Englishman in New York
Modesty, propriety can lead to notoriety
You could end up as the only one
Gentleness, sobriety are rare in this society
At night a candle’s brighter than the sun
Takes more than combat gear to make a man
Takes more than a license for a gun
Confront your enemies, avoid them when you can
A gentleman will walk but never run
If, “Manners maketh man” as someone said
Then he’s the hero of the day
It takes a man to suffer ignorance and smile
Be yourself no matter what they say
I’m an alien I’m a legal alien
I’m an Englishman in New York
I’m an alien I’m a legal alien
I’m an Englishman in New York
나는 완벽한 프로그래밍 언어란 존재하지 않고, 만들려고 하는 프로그램을 가장 쉽고 빠르게 만들어 낼 수 있는 언어가 최고의 프로그래밍 언어라고 생각한다. 어쩌다보니 C, C++, VB.net, ASP, 매스매티카, 메이플, 매트랩, 파이썬, 랩뷰 등의 프로그래밍 언어들을 써 왔었다. 랩뷰는 인생에 쓸일이 없을 것이라 생각하고 일부러 안쓰려고 했는데 결국 그날이 오고야 말았다. 실험을 전공한 내가 잘못이지. 파이썬이 최악인 이유는 강제 들여쓰기와 암시적 형 지정때문이라고 생각했다. 뭐 어쩌다보니 지금 가장 자주 쓰는건 파이썬이기는 하지만. 하지만 아무래도 랩뷰를 내인생 최악의 언어로 바꿔야 할 것 같다. 일단 NI에서 제공하는 강력한 하드웨어 제어 기능과 연동되기 때문에 수많은 실험실에서 사용하고 수많은 상업 제품에서 널리 사용하고 있다는 부분은 다른 단점을 압도할 정도의 장점이기는 하다. 하지만 그 장점을 빼면, 프로그래밍 언어로서는 그다지 좋은 언어가 아니다.
http://stackoverflow.com/questions/372557/what-specific-features-of-labview-are-frustrating-to-you
위의 글에 내가 느끼는 문제점을 정말 똑같이(!) 짚어주고 있는데, 간단히 요약하자면 다음과 같다. (내 생각과 함께)
1. 스파게티 코드. 프로그램을 만들다 보면 스파게티 코드라는 말을 많이 하는데, 랩뷰 코드를 보면 진짜로 스파게티 코드가 뭔지 알 수 있다. 진짜 여기저기 선으로 도배되어 있는데, 차라리 텍스트 코드에서 페이지업-다운으로 찾아다니는 것이 더 낫지, 눈으로만 봐서는 도저히 따라갈 수가 없다. 만들때는 어떻게든 만들겠지만, 디버그 할 때 눈알이 뽑힐 것 같은 고통을 느낄 수 있다. 처음부터 버그가 없게 만들면 되겠지만, 그건 불가능한 일이다. 최소한 나한테는 불가능한 일이다.
2. 그림을 그려야 한다. 진짜로 그림을 그려야 한다. 빈공간이 없으면 옆으로 다 치워놓고 그려야 하고, 아님 옆으로 가서 그려야 한다. 물론 텍스트 코드에서도 빈공간을 만들어야 하긴 한다. 엔터 몇번 치면 되는 일이다. 랩뷰에서는 아이콘과 선들을 옆으로 치워야 한다. 컨트롤 키를 누르고 마우스 커서를 잡아끌면 빈공간이 나타나기는 하는데, 그럼 기존에 잘 정리해 두었던 코드가 엉망이 된다. 텍스트 코드에서는 엔터 두세번 쳤다고 해서 코드가 엉망이 되지는 않는다.
3. 조건문, 반복문 테스트. 한번만 실행시켜서 어떻게 되는지 보고 싶을때, 텍스트 코드 언어는 if문이나 for문이 있는 그 줄만 주석처리 해 버리고 돌리면 되는데 랩뷰에서는 밖으로 복사해놓고 전선 정리를 해 줘야 한다. 안하면 에러난다.
4. 느리다. 말할필요도 없이 C나 다른 언어에 비해서 느리다. 개발 속도가 빠르다는 장점이 있지만, 코드가 꼬일수록 고치기도 힘들어 진다는 점에서 바람직하지 않은 특징이라 성능에서 느린건 어떻게 할 수가 없다.
5. 의도하지 않은 병렬처리. 요즘 성능 향상을 위한 병렬처리가 각광을 받고 있지만, 기본적으로 컴퓨터는 순차처리가 기본이고 병렬화는 의도적으로 고민해야 하는 부분이다. 이게 왜 자동화되기 힘드냐 하면, 병렬처리할 때 서로 다른 루틴들이 처리되는 순서를 임의적으로 정해버리는 경우 프로그램 작동이 꼬일 수가 있기 때문이다. 특히, 랩뷰는 실험 장비들을 다루게 되는데 실험 장치들이 작동하는 순서가 달라지면 실험을 망칠 수도 있고 사고가 날 수도 있기 때문에 이런 부분을 방지하기 위해서 굉장히 노력을 많이 해야 한다.
6. 마우스 클릭. 개발을 해보면 알겠지만, 게임은 마우스로 하는게 편하지만 코딩을 마우스로 하는건 어려운 일이다. 빡친다.
7. 유료다. 물론 좋은 툴을 돈받고 파는건 당연한 일이고, 랩뷰도 나름의 장점이 있고 그만큼의 가치를 하니까 돈주고 사서 쓰는 것이다. 하지만 무료로 사용할 수 있는 프로그래밍 언어도 많은데 랩뷰는 사용하기 위해서 무조건 돈을 주고 사야 한다는 점에서 이건 명백한 단점이다.
그 외에도 많은 단점들이 있다. 나도 교수님이 쓰라고 하니까 쓰는 것이지 아니면 거들떠보지도 않았을 언어다. 아니면 외주 맡기든가.
분홍자전거 – 권진원
파란 하늘 닿을 듯 하얀 구름
언덕길에 풀잎처럼 가볍게 내려오네
그 아가씨
뒷자리엔 무지개 하나 가득
꽃 바구니
하얀 치마 흩날리며 내려오네
분홍 자전거
아이쿠 아가씨 조심해요 아가씨
그러다 넘어지면 어떡해요
조그만 시냇물 키가 큰 소나무
모두 그만 우-우당탕
그리 바삐 서둘러 어딜 가나
분홍 자전거
무지개를 타고서 하늘까지
그 아가씨
아이쿠 아가씨 조심해요 아가씨
그러다 넘어지면 어떡해요
조그만 시냇물 키가 큰 소나무
모두 그만 우-우당탕
그리 바삐 서둘러 어딜가나
분홍자전거
무지개를 타고서 하늘까지
그 아가씨
바람은 시원해 하늘은 드넓어
장미꽃처럼 빨갛게 물든 얼굴로
파란 하늘 닿을 듯 하얀 구름
언덕길엔
풀잎처럼 가볍게 내려오네
그 아가씨
라라라라 라라라라라 라라라라
무지개를 타고서
그 아가씨 분홍 자전거
우우우우 라라라라
아는 사람에겐 필요없지만 모르면 곤란한, 대학원에 들어오는 사람들을 위한 학회에 가서 할 일들. 워낙 기초적인 것들이라 다들 아는 내용이겠지만.
학회를 다녀올 때는 미리 초록집을 살펴보고 어떤 것들을 들을지 계획을 세워서 다 듣자. 자기 전공분야랑 관련된 것을 챙겨서 듣는 것이 좋고, 비는 시간이 있으면 전공 분야가 아니더라도 이런저런 발표들을 들으면서 교양도 쌓고 아이디어도 얻는 것이 좋다. 포스터 발표도 가급적 다 돌아다니면서 최대한 많이 구경하고 다니자. 업체 전시회를 같이 한다면 업체 카탈로그도 받아두고. 발표를 들으면서 중요한 내용들은 기록하고, 특히 결과가 발표된 논문은 잘 적어두자. 언제 필요할지 모른다. 물론 초록집에 있는 저자 정보와 제목을 검색해보면 논문을 찾을 수 있겠지만.
발표를 들을 때마다 최소한 1개 이상의 질문거리를 생각해 두자. 자기 전공이 아니어도 적당한 질문을 할 수 있는 능력을 키우는 것이 좋다. 물론 자기 전공분야라면 많은 질문거리를 생각해 낼 수 있어야 한다.
자신이 발표를 했다면, 발표가 끝나고 주어지는 토론시간에 질문받은것과 대답한 내용을 잘 적어두자. 연구에 중요한 부분을 제공할 수도 있다.
포스터 발표를 했으면 포스터 옆에서 인증샷을 꼭 찍어두자. 곤란해 질 수도 있다.
국내를 가든 외국을 가든, 가서 받은 모든 것은 일단 소중하게 간직해 둔다. 영수증, 기념품, 초록집, 팸플릿, 명함, 카탈로그 등등. 언제 어떻게 써먹게 될지 아무도 모른다. 무조건 챙겨두는 것이 좋다. 특히, 외국 학회 출장 다녀온 출장 증빙을 위해서 별걸 다 제출해야 하는 경우도 있다. 비행기와 숙박 영수증을 포함해서 학회 등록 영수증, 가서 만난 사람의 명함, 초록집, 인증샷 등등.
학회에 다녀와서 출장보고서를 작성해야 하는 경우도 있으므로 출장보고서에 뭘 적어야 하는지 미리 알아둔 다음 학회에서 최소한 그 분량은 채울 수 있을 정도로 발표를 듣고 와야 한다.
남는 시간에 관광을 다니거나, 아님 발표 안듣고 관광을 다니는 것은 전적으로 연구실의 분위기를 파악한 다음 하게 되는 개인의 선택이다. 어쨌든 최소한 뭔가 남는 것은 있어야 하고, 만약 너무 심하게 놀다가 걸리면 출장비를 토해내야 하는 경우도 있으므로 학회 갔으면 제대로 듣고 오자.
윈도우즈용 랩뷰에서 윈도우즈용으로 컴파일된 DLL 파일을 불러올 때 LPCSTR 같은 키워드의 정의를 물어보는 일이 있는데, MSDN에 다 나와 있다.
typedef const char* LPCSTR;
이렇게 정의되어 있다.
랩뷰에서 “뭔지 모르겠는데, 좀 알려달라”고 하면 짜증내지 말고 preprocessor definition 을 써주는 곳에다가
LPCSTR = const char*
이렇게 써주면 된다. 여러개 써야 할 때는 세미콜론;으로 구분해주면 된다.
http://msdn.microsoft.com/en-us/library/cc230350.aspx
이런건 개인 위키에 적어야 할 것 같은데…
하나 만들어야 하나.
apache2를 업데이트 했더니 pydio가 맛이 갔다.
아니, 그 전에 일단 apache2가 맛이 가서. mcrypt를 다시 설치해 주고, json을 설치해주고, 아차피 설정 파일에서 lockfile을 mutex를 쓰도록 고쳐주고, 그랬더니 잘 된다.
http://stackoverflow.com/questions/18239405/php-fatal-error-call-to-undefined-function-json-decode
http://askubuntu.com/questions/368515/upgraded-to-ubuntu-13-10-apache-not-able-to-start