2014년 11월 26일 수요일

IT를 시작하는 것은 결코 어렵지 않다. 다만,

Browser : Chrome Browser

일을 하다가 보면 가끔씩 옆에서 "IT일이 참 부럽네요. :)" 라고 하시던 분이 있었다.
뭐 그분은 성격도 좋고, 사교적이라. 거기다 나이도 많으셨는데 꼬박꼬박 존댓말을.
많이 친해지고 난 후에는 형 동생했지만. :)
평소 일하는 사람들하고는 대화가 별로 없는 나도 우스개소리로 "왜요? 책상에 앉아서 하루종일 일하니깐 좋아보이세요?" 라며 대꾸했다.
그러자 그분이 "저같은 사람은 컴퓨터 일을 못하니깐 부러워서 그러져!, 그리고 뭐 수학도 잘 해야 된다고 하던데..." 라 하시는데 순간, 웃음이 나왔다.
초등학생이 프로그램을 만드는 시절이고, 수학은 중학생 이하 비슷한 수준만 되도 IT 일을 시작하는데 별로 무리가 없는 일이기에 순간적으로 나온 웃음이였다.
그래서 나는 그분이 평소 "이런거 대체 어떻게 만들어?" 라며 물어보시던 것을 html 파일을 만들어(그 당시 그분이 궁금해했던 프로그램은 C# 윈도우 어플) 한번 보여드렸다.


1. 원하시는 숫자를 적으세요. (3자리까지 가능)       2. 한 페이지에 보기 원하는 갯수를 선택해 주세요.      

대충 스크립트를 보면 알겠지만, 작업자가 입력한 내용이 화면에 보여지는게 어떤 이유로 되는지 설명해 드린 부분이다.
스크립트를 보면 알겠지만, 코딩은 절대 어려운게 아니며 그분은 코딩을 보자마자 "정말 쉽네요!" 라고 하셨다. 당연하다. 달랑 몇 줄밖에 안된다.
그리고 코딩에 사용된 수학(?)이라 하기 뭐한 방정식.
총 페이지 수 = (x / y) + ((x % y) > 0)
페이지별 시작 번호 = ((x-1) * y) + 1
페이지별 끝 번호 = x * y
이게 끝이다.

설명을 다 듣고 그분이 하신 이야기는,
'재미있어 보이는데 나같이 늦게 시작한 사람도 IT일을 하느냐' 고 여쭤보셨다.
그래서 난 조용히 말씀드렸다.
IT를 시작하는건 어렵지 않다. 다만 미래를 생각하시는게 좋다.
그리고 덧붙여 내가 생각하고 있던,
strategy is the creation of a unique and valuable position, involving a different set of activities.
전략의 핵심은 남들과 '다른 자리'를 차지하는 데 있습니다. 그리고 그 자리가 쉽게 모방하기 힘든, 지속가능한 자리여야 합니다.
이 부분에 대해서 설명해드렸다.
결국 누구나 프로그램은 만들 수 있다. 다만 전략적인 비지니스가 없다면 지금 일하고 계신 곳이 훨씬 좋다고.

지금 돌이켜 생각해보면 그때는 나만의 전략적인 무엇인가를 만들기 위해 회사에서도 집에서도 상당히 노력했던걸로 기억한다.
그러나 지금은 적당히 돈 벌면서 적당히 노는게 더 낫다는 생각으로 하루를 살아가고 있다.

아!!!
만약에 위 스크립트를 사용해서 DB를 가져온 다면 쿼리는 어떻게 될까?
-- 1. 일반적인 order by절을 사용한 쿼리
    SELECT
        * 
    FROM
        (SELECT
            T1.*,
            ROWNUM RNUM 
         FROM
            (SELECT
                SEQUENCE, LOG_DT, LOG_YMD, ROW_DATA
             FROM TEST_TABLE  
             WHERE LOG_YMD='20120613'
             ORDER BY LOG_DT DESC
                ) T1 
         WHERE ROWNUM <= 스크립트에서 구한 EndNum
        ) 
    WHERE RNUM >= 스크립트에서 구한 Start Num

-- 2. 오라클 hint를 사용한 쿼리
    SELECT
        * 
    FROM
        (SELECT
            T1.*,
            ROWNUM RNUM 
         FROM
            (SELECT
                /*+ INDEX_DESC(TEST_TABLE TEST_TABLE_IDX) */
                SEQUENCE, LOG_DT, LOG_YMD, ROW_DATA
             FROM TEST_TABLE  
             WHERE LOG_YMD='20120613' AND LOG_DT<='20120613 235959'
                ) T1 
        WHERE ROWNUM <= 스크립트에서 구한 EndNum
        ) 
    WHERE RNUM >= 스크립트에서 구한 Start Num

결론 : 내년이면 세상에 대한 이 귀차니즘에서 벗어나겠지. 그러고 싶다.

댓글 없음:

댓글 쓰기

대항해시대 조선 랭작

숙련도 획득 방법 선박 건조, 선박 강화, 전용함 추가시 숙련도 획득 모두 동일한 공식 적용 획득 숙련도 공식 기본 획득 숙련도 ≒ int{건조일수 × 현재랭크 × (0.525)} 이벤트 & 아이템 사용...