반응형



일생일대의 변화를 경험하다.

반응형

실행시킬 SQL문을 C:\SpoolSelect.sql로 저장 한다.

---- SpoolSelect.sql  시작 ---

SELECT empno, sal, ename, to_char(hiredate, 'RRRR-MM-DD') FROM emp;

SELECT deptno, dname FROM dept;

---- SpoolSelect.sql  끝 ---



C:\> SQLPLUS scott/tiger 


-- header가 display되지 않고 데이터만 display 

SQL> SET HEADING OFF



-- pagesize의 default는 14이며 그대로 하면 

-- 14줄마다 1줄씩 공백이  생기므로 

-- 그런 현상을 방지하기 위해 크게 지정한다. 

SQL> SET PAGESIZE 10000     



-- linesize도 record 길이만큼 지정하여 

-- 아래로 구분되지 않도록 합니다.

SQL> SET LINESIZE  300        



-- 명령이 display되지 않도록 한다.

SQL> SET ECHO OFF



-- 조회 결과가 화면에 나오지 않도록 한다.  

SQL> SET TERM OFF



-- data가 들어가는 화일 이름을 지정 한다. 

SQL> SPOOL  C:\test.txt    



-- 스크립트 파일을 실행 시킨다. 

SQL> @C:\SpoolSelect.sql



SQL> SPOOL Off


-- test.txt file이 생성 되었는지 확인 해보자.




출처 : http://www.gurubee.net/lecture/1152

반응형



아이콘 속성에 --disable-impl-side-painting을 추가하면 됨

출처 : http://www.todayhumor.co.kr/board/view.php?table=bestofbest&no=201071&s_no=201071&page=2


반응형

빌게이츠를 비롯한 IT선구자들 및 과학자들이 인공지능의 위험성을 경고하고 있다.

지난 수십년동안 발전하지 못하던 인공지능이 근래에 들어 급격히 발전하고있기도 하거니와

이런 추세로 간다면 수십년내에 인공지능의 수준이 인간과 동일하거나 인간을 초월하는 수준으로 나올수있음을 경고하고있다.


여러가지 관점이 있지만 어떤 과학자가 주장한 바에 의하면 인공지능을 두가지로 나눌수있다고 한다.

하나는 약인공지능이고 또하나는 강인공지능이다. 약인공지능은 단순히 인간의 지시를 이해하고 인간의 명령을 수행하는 수준의

다소 수동적인 수준이라 볼수있겠다. 또다른 강인공지능은 완전히 스스로 사고하고 판단하며 인간에 의한 것이 아닌 스스로의 의도

를 지닐 수 있는 점이다. 약인공지능은 일단 차치하더라도 강인공지능은 인류가 지구상에 존재하는 생태계 최강자로서의 입지를

위협할 수 있는 가능성을 가지기 때문에 인공지능의 가능성에 두려움을 가져야한다는 것이다.

(물론 주장의 상세는 다르지만 내가 이해한 방식으로 서술했다.)


약인공지능과 강인공지능의 구분중 강인공지능에 대한 가능성은 나로서는 판단하기 미묘하다. 

이는 일종의 새로운 종의 출현이라 볼수있을 것 같다. 우리와 동등하거나 우리보다 우월한 새로운 종족이 지구상에 출현했을때

그들이 우리를 어떻게 볼것인가 하는 문제인데... 아무래도 인공지능체이기 때문에 인류와는 생존방식이 판이하므로

우리가 먹고자고 마시는 가장 생물적인 패러다임과 충돌할 필요가 없는 존재들과의 대립은 쉽사리 상상하기 어렵다.

그들이 우리를 선의로 볼것인지 악의로 볼것인지는 철저히 논리적인 단계의 문제이리라 생각한다.

다만 우리로서는 아직존재하지 않는 강인공지능의 의도가 어떠할 것인지 전혀알 수 없다는점이 일종의 '미지에 대한 공포'를 

유발하는게 아닐까 싶다. 물론 그 미지의 공포와 조우하게 될날이 머지 않았으므로 공포감은 굉장히 현실적이다.

더불어 인류가 과연 강인공지능을 제어할수있을지에 대한 강한 두려움또한 동반되고있으리라 생각한다.


그에비해 약인공지능은 비교적 현실적으로 유추해볼 수 있다. 간단히 말하자면 우리가 지난 수십년간 경험해왔던 '자동화'의 연속

점에 있다. '사무자동화','공장자동화'와 맥락을 같이한다고 보면 될듯하다. 

나는 사회에 첫발을 내딛을때 'ERP'를 개발하는 회사에 있었다. (한기업의 자원을 관리하는 프로그램이라고 보면 보면 될것이다.)

어느날은 어느거래처에 갔더니 어떤 직원이 농담반진담반으로 "일하기 싫으니까 내가하는 모든일을 ERP가 할수있게 해달라"고

요구를 해왔다. 그말을 들으며 내가 느꼈던 점은 "자동화"의 단점을 모르고 저런말을 하는구나 였다.


자동화는 편리하다. 인간을 편리하게 한다. 그것은 분명한 사실이다. 그러나 그 편리함의 이익을 누가 가져지에 대해서는 별개의

이야기다.다시말해서 모든업무가 자동화가 된다면 내모든일을 알아서 해주는 ERP를 만들 수 있다면 그프로그램이 하던일을 하던

사람이 필요없어진다는 의미이다. 기계와 컴퓨터가 인간이 할일을 모두 알아서 해준다면 사장입장에서는 그직원을 채용해야할 필요

가 없어진다. 인공지능의 발달로 인해 우리주변의 무수한 직업이 인공지능의 발전으로 인해 사라질 수있다.

결국 (약)인공지능의 발달은 단기적으로 자본가의 이익을 극대화시켜줄 것이다. 자본가는 인건비지출때문에 고민할 필요가 없어지고

근로효률이나 노동조건등의 상황을 고민할 필요가 없다. 결국 자본가들의 돈이 돈을 버는 상황이 올 것이고 인공지능의 발달로 인해

폐기될 직종의 근로자들은 직장을 잃고 다른 직장을 구하기 어려워 지리라...


어떤이는 인공지능의 발달이 또다른 분야의 일거리를 창출할것이라고 하는데 일부는 맞고 대부분 틀렸다.

인공지능과 그와 관련된 기계장치들을 유지/보수/관리 하는 사람들의 일자리는 늘어날 것이지만 이미 인공지능과 기계가 대체하기

시작할 사라져갈 모든 일자리의 숫자만큼은 아니다. 이것이 내가 생각하는 (약)인공지능의 가장큰 딜레마이다. (ERP자동화를 요구

했던 직원의 모순과 일치한다.)


나는 '스타트렉'이라는 SF영화를 좋아한다. 어느날인가 그영화를 보다가 한가지 재미있는 사실을 발견했다.(매니아들에게는 익숙한

사실이겠지만) 스타트렉의 미래에는 화폐가 없다는 점이다. 돈이나 경제라는 관념이 그세계에는 전무하다. 어째서?라고 반문할수

있겠지만 극도로 발달한 과학기술의 혜택이 인간에게 모두 전달되는 구조의 사회가 전제되었기 때문이다. 인간은 더 이상 생산활동

에 매진할 필요가 없다. 인간의 일은 기계와 인공지능들이 알아서 해주니 원하는 것은 모두 가질수있고 인간을 편리하게 만들어주는

세상이기에 더이상 인류가 전통적으로 유지해왔던 경제체계를 유지할 필요가 없어지는 것이다. 나는 이영화적 발상을 보고 충격을

받았다. 극도로 발전된 기술이 인간을 자유롭게 할수있다고 생각한 것이다.


그런데 근래에 드는 생각은 자본가들이 저런기술을 보유하고있다고 해서 과연 그 기술의 혜택을 가지지못한 이들과 공유할수있을지

회의적인 생각이든다. 나로서는 극도로 발전된 (약)인공지능이 인간에게 굉장한 편리함을 제공할 수있으나 어디까지나 인공지능은

특정사람 혹은 단체의 소유이므로 누군가에게 소속된 인공지능이 경제적이득없이 타인에게 봉사하는 것을 허용할 수 있을지는 의문

이든다.


뭐... 자본가들도 (약)인공지능의 발달에 당분간은 환호하겠지만 장기적으로 본다면 생산주체인 대부분의 인간들이 경제능력상실에 

따른 이익감소를 어떻게 버틸지도 궁금하다. 이런 상황이 전개되다가 자본가의 이익과 직장을 잃은 노동자들의 균형이 깨지는 순간

과연 자본가들이 본인들의 이익을 포기하고 기술의 혜택을 노동자들과 공유할 것인지 아닌지 사뭇 궁금하다. 어찌됐든 확실한 점은

기술의 발전이 단기적으로 우리 노동자들의 경제활동을 상당히 박탈할 것 이다.


우리의 일자리는 분명 점점더 사라져 갈 것이고 자본가와 노동자사이의 거리는 더욱 넓혀질 것이다. 그시간이 적어도 수십년은 지속

될 것이다. 이런 상황하에 직장을 상실할 우리 노동자들은 어떻게 대처해야할지... 솔직히 나도 잘모르겠다. 

반응형

참조 : http://www.codeproject.com/Articles/11505/NGif-Animated-GIF-Encoder-for-NET




c#으로 만든 GIF생성프로그램


NGif_src의 소스를 참조했다.


뭐... 말이 참조지 실제로 만든부분은 UI에 불과하고 실제 소스는 NGif_src의 것을 그대로 썼다.

NGif는 .net 2003버전으로 만들어진 프로젝트인데 2010으로 변환해서 사용하니 아무문제 없이 잘돌아간다.


아래는 내가 임의로 만든 GIF생성프로그램의 UI이다.


1)은 저장할 파일명이다.

2)는 파일이 저장될 경로

3)은 재생돼는 시간단위이다. 100밀리초 이므로 0.1초 단위로 이미지가 재생된다.

4)반복설정은 모든이미지가 재생된 후 처음부터 다시 자동재생할지 여부를 설정한다.

5)GIF의 소스가 될 이미지 목록이다. 정렬된 순서로 GIF이미지에 삽입된다.

6)2의 저장할 경로를 바꾸는 버튼이다.

7)소스가 될 이미지들을 불러온다.

8)5에서 선택부분이 체크된 항목들을 삭제한다.

9)GIF를 생성한다.

10)5의 목록은 다중선택 할 수 있는데 선택된 항목의 선택을 표시한다.

11)5의 목록에서 다중선택된 항목을 해제한다.

12)일괄전체 선택한다.

13)일괄전체 해제한다.

14)파란색으로 강조된 선택항목을 윗열로 올려서 순서를 바꾼다.

15)파란색으로 강조된 선택항목을 아랫열로 내려서 순서를 바꾼다.

16)목록에 올라와있는 이미지들을 18의 미리보기창에서 재생한다.

17)16버튼을 클릭해서 자동재생돼는 이미지를 중지시킨다.

18)5의 목록에서 선택을 하면 이미지가 미리보여지며 16버튼을 클릭해서 자동재생시에도 표시된다.

    자동재생시의 이미지는 실제 GIF와 유사하지만 반드시 일치하지는 않는다.(각이미지의 가로세로 비율 때문에 실제이미지와

    다르게 보일 수 있다.




GIFmake.zip


반응형




확실히 잘만들었다.

근래에 본영화중에 최고였다.


흔히들 스페이스오딧세이2001과 비교하곤 하는데 시각적 즐거움면에서는 2001보다야 나을지 모르겠지만

아무리 그래도 인터스텔라가 2001을 압도할수는 없다고 생각한다.


단지 2001이 다소 몽환적인 판타지의 느낌이 있었다면 비슷한 소재를 굉장히 구체적으로 풀어놨다는 점이 다르달까?

2001과 인터스텔라의 관계는 마치 놀란감독이 베트맨시리즈의 조커를 재해석한 것과 비슷한 느낌을 받았다.


굉장히 잘만들었고 재미있게 보았고 내취향과  잘 맞는 영화였다.


※몇달전에 감상했던 트랜센던스따위와는 비교할 수 없을 정도로 잘만들었다.

트랜센던스는 굉장히 재미있게 만들 수 있는 소재를 참 그지같이 만들었고

인터스텔라는 재미있는 소재기는 하지만 자칫하면 3류소설이 됄수있는 까다로운 아이디어를 제대로 영화화한 것 같다.


반응형

굉장히 간단한 내용이다.

AJAX로 사용하는 요즘은 거의 사용할 일이 없는 태크닉인데

asp.net 2.0으로 구축된 사이트를 유지보수하다 보니 발생하는 귀찮음 때문에 찾아보다가 주저리 주저리 써본다.


Page.aspx에 


<asp:Label ID="lbl01" runat="server"></asp:Label>

<asp:Label ID="lbl02" runat="server"></asp:Label>

<asp:Label ID="lbl03" runat="server"></asp:Label>

<asp:Label ID="lbl04" runat="server"></asp:Label>

<asp:Label ID="lbl05" runat="server"></asp:Label>


와 같이 Label컨트롤을 순차적으로 생성 돼있다.

이 Label들에 값들을 일일이 코딩해주려니 귀찮고  for문등을 이용해서 자동으로 값을 넣고 싶은데 방법을 잘모르겠고...


여튼 해결 방법은 다음과 같다.

((Label)Page.FindControl(id)).Text = _txt;

굉장히 단순하다.

이를 응용해서 for문으로 값을 넣는다면

string[] _values = {"1","2","3","4","5"};

의 값을 자동으로 넣는다고 가정해보자.

for(int i = 0; i < 5; i++)

{

((Label)Page.FindControl("lbl0" + (i + 1).toString() )).Text = _values[i];

}

이런식으로 처리하면 매우 간단하다. 

여튼 핵심은 Page.FindControl("ID")가 돼겠다.



반응형



...

반응형

<script type="text/javascript">


var num = 3.14;


// 그대로 출력

document.write(num, '<br />');

// 출력 결과: 3.14


// 소수점 이하 6자리로 강제로 출력

document.write(num.toFixed(6), '<br />');

// 출력 결과: 3.140000





num = 3.1415926535897932384626433832795;


// 그대로 출력

document.write(num, '<br />');

// 출력 결과: 3.141592653589793


// 소수점 이하 3자리로 출력

document.write(num.toFixed(3), '<br />');

// 출력 결과 (반올림됨): 3.142



</script>


※출처 : http://mwultong.blogspot.com/2007/08/javascript-tofixed.html


자바스크립트에서 숫자가 0.02555555555555555555555555555555와 같이 나올때

이숫자를 0.03으로 변경할때 사용한다.

숫자가 지정된 변수에 val.toFixed(2);로 사용한다.

반응형



최초버전은 못질렀지만 새로나온 녀석은 질렀다. 느낌 제법 괜찮다.

+ Recent posts