이쪽으로는 아는게 거의 없으니 뭘로할지 후보를 정하는 것부터가 쉽지 않다.
오늘 알게 된 WPF는 정말 쉽게 뭔가를 만들 수 있어보이는데
리눅스 유저다보니 결과물이 윈도 전용일 것이 걱정되 선뜻 사용하기가 꺼려진다.
일단 현재는 루비쪽에 슈즈라는게 있던데 꽤나 좋아보이는데.
배포하기가 좀 귀찮을듯.


License
달리 정하지 않는 한, 이 저작물 크리에이티브 커먼즈 코리아 저작자표시-비영리-변경금지 2.0 대한민국 라이센스에 따라 이용하실 수 있습니다.
Except where otherwise noted, this content is licensed under a Creative Commons Attribution-NonCommercial-NoDerivs 2.0 Korea License
간단히 말해서 if를 쓰고 탭키를 누르면 if(..){} 이런식으로 바꿔주는 스크립트

http://www.vim.org/scripts/script.php?script_id=1318

에서 snippy_plugin.vba, snippy_bundles.vba를 받아서 .vim/plugin/에 넣고
두 파일을 각각 vim으로 열어서 :so % 엔터.

이제 vi열어서 if하고 탭키를 치면 if문 블록이 생긴다.
그후 탭키를 누르면 다음칸으로 이동~

출처: http://hacker.golbin.net/zb/1981


License
달리 정하지 않는 한, 이 저작물 크리에이티브 커먼즈 코리아 저작자표시-비영리-변경금지 2.0 대한민국 라이센스에 따라 이용하실 수 있습니다.
Except where otherwise noted, this content is licensed under a Creative Commons Attribution-NonCommercial-NoDerivs 2.0 Korea License
http://www.vim.org/scripts/script.php?script_id=1879

~/.vim/plugin/ 에 다운받은 autocomplpop.vim를 넣는다

~/.vimrc 에 아래 내용을 붙여넣는다.(없으면 새로만든다)
function! InsertTabWrapper()
  let col = col('.') - 1
  if !col || getline('.')[col-1]!~'\k'
    return "\<TAB>"
  else
    if pumvisible()
      return "\<C-N>"
    else
      return "\<C-N>\<C-P>"
    end
  endif
endfunction

출처 및 참고: http://monac.egloos.com/1936134


License
달리 정하지 않는 한, 이 저작물 크리에이티브 커먼즈 코리아 저작자표시-비영리-변경금지 2.0 대한민국 라이센스에 따라 이용하실 수 있습니다.
Except where otherwise noted, this content is licensed under a Creative Commons Attribution-NonCommercial-NoDerivs 2.0 Korea License
루비온레일즈에 대한 관심이 그루비온레일즈로 옮겨간 요즘 고민이 하나 생겼다.
너무 웹개발만 하는건 아닌지 하는것이다.

여기저기 들어보면 웹개발은 직업으로 하기엔 좀 별로라는 의견이 지배적이고.
나도 개발자가 되고싶은 1인으로서 걱정이 안될수가 없다.

서버도 없는데 뭔가 만들어봤자 운영하기도 힘들고.
요즘은 뭐 그냥 그렇다.

뭘로 만들면 좋을지도 고민이 많이 되고
좀더 생각을 해봐야겠다.


License
달리 정하지 않는 한, 이 저작물 크리에이티브 커먼즈 코리아 저작자표시-비영리-변경금지 2.0 대한민국 라이센스에 따라 이용하실 수 있습니다.
Except where otherwise noted, this content is licensed under a Creative Commons Attribution-NonCommercial-NoDerivs 2.0 Korea License

사용자가 들어갈 DB 테이블을 만드는데 row생성시 생성시간을 자동으로 넣고싶었다.
그런데 mysql은 컬럼의 디폴트값에 함수를 넣을 수 없어서 current_date(), now() 따위를 디폴트로 써줄 수가 없다.
사용자를 생성하는 함수쪽에서 직접 날짜를 지정해줘도 되지만 좋은 방법을 찾았다.
timestamp 타입을 사용하면 null일경우 현재시간, 날짜를 자동으로 넣어준다.

해결~


License
달리 정하지 않는 한, 이 저작물 크리에이티브 커먼즈 코리아 저작자표시-비영리-변경금지 2.0 대한민국 라이센스에 따라 이용하실 수 있습니다.
Except where otherwise noted, this content is licensed under a Creative Commons Attribution-NonCommercial-NoDerivs 2.0 Korea License
내가생각해도 난 너무 게으르다.
루비 잼있다고 말만 하고 정작 루비로 뭔가 한건 없다.
간간히 rss 읽으면서 루비,파이선으로 뭔가 끄적끄적하는 글이라도 볼라치면 나는 뭘하고있는가 자학한다.
요즘은 레일즈나 좀 연습해볼까하는데 우분투로 부팅을 잘 안하다보니 '에이 귀찮아' 이러고 만다.
많은 삽질로 어느정도 잘 쓰게된 우분투도 몇달째 부팅 안하다가 8.04나오면 그거깔고 제대로 써야지 이러고 있다.

이번에 2학년 복학하는데 과목에 씨쁠쁠이 있다.
생각만해도 토나는 씨쁠쁠이지만 토나올정도로는 파고들지 않겠지 라는 생각으로 애써 외면하고 있다.

어머니가 요즘 컴퓨터로 가계부를 쓰는데 기존에 있던 서비스나 프로그램들은 다 맘에 안든다고 하신다.
결국 워드프로세서로 틀만 만들어드리고 어머니가 직접 내용을 쓰시고 계산기로 합계를 내신다.
그걸본 나는 프로그래머가 이런걸 보고만 있다니! 하면서 분개했지만 맨날 쓰던 java로는 만들기 싫어졌다.
이왕 하는거 레일즈로 해볼까 생각했다.
그리고 얼마전에 샀던 레일즈책을 다시 뒤져보는 중이다.

목표는 컴퓨터를 잘 못하는 어르신들을 위한 가계부 프로그램이다.

내부는 레일즈로 하지만 웹서비스는 아니다.
로컬에서 실행하면 기본 웹릭으로 서버 돌리고 브라우저 띄우도록 할 예정이다.
가계부같은건 웹에 저장하면 불안한것도 있고. 어머니가 그런정보들을 웹에 저장하는걸 싫어하신다.
레일즈는 뭣도 모르지만 그까이꺼 배우면 되는거 아니겠어? 하면서 해보는 중이다.
일단 책 예제 다 해본다음에 제대로 해볼란다.
딱봐도 뭐하는건지 알수있도록 하는 ui로 최대한 만들면서 여기저기 도움말을 붙이는걸 목표로 열심히 연습한다.
얼마나 걸리려나.

이왕 하는거 진행상황을 계속 포스팅 해봐야겠다.


License
달리 정하지 않는 한, 이 저작물 크리에이티브 커먼즈 코리아 저작자표시-비영리-변경금지 2.0 대한민국 라이센스에 따라 이용하실 수 있습니다.
Except where otherwise noted, this content is licensed under a Creative Commons Attribution-NonCommercial-NoDerivs 2.0 Korea License
[2007년 KAIST 특강] 멋진 신세계: 게임 테크놀러지의 현주소와 공대생을 위한 서바이벌 가이드

직접 들을 수 있었으면 더 좋았겠지만 이런 업계 잘나가는 사람들의 강의는 맘속에 넣어두는게 좋다.
ppt를 다운받아봤는데 내가 주로 했던 웹개발과도 많이 다르지 않다는걸 느꼈다.

개발자가 가지면 좋은 자질은 내 생각엔 이런것들이다.

1. 개발 센스
    뭔가 기능을 들었을때 어떻게 구현하면 좋을지 머릿속에 어렴풋이 떠오름
2. 프로젝트에 대한 애정
    지신이 속한 프로젝트를 하는데 있어 애정을 가지고 있으면 사소한것에도 신경을 쓰게되어 효율이 증가하고 성공률이 올라간다. 반대로 애정이 없으면 자신이 맡은 부분 외에는 나몰라라 하게되어 시간이 지날수록 짜증만 늘어가게 된다.

일단 떠오르는건 이정도.


그보다 내 마음속에 아직 남아있는 앙드레교(ㅋ) 초대 교주님인 아트D님이 아직 데브켓에 계셨구나.



License
달리 정하지 않는 한, 이 저작물 크리에이티브 커먼즈 코리아 저작자표시-비영리-변경금지 2.0 대한민국 라이센스에 따라 이용하실 수 있습니다.
Except where otherwise noted, this content is licensed under a Creative Commons Attribution-NonCommercial-NoDerivs 2.0 Korea License
어떤 프로그램을 만들때.
또는 어떤 웹 사이트를 만들때 보통은 디자이너-개발자간의 협업을 하게 된다.
혼자하더라도 마찬가지지만 디자인이 먼저일까 기능구현이 먼저일까.

물론 어느것이 더 좋다고 단정할 수는 없다.
내생각에는 둘중에 단순한것, 시간이 적게 걸릴 것으로 예상되는걸 먼저 하는게 좋은 것 같다.

예전에 군인트라넷 웹개발을 할땐 먼저 기능구현을 한 뒤 디자이너가 만든 디자인을 입히는 작업을 나중에 했는데 mvc만 잘 나눠서 개발한다면 디자인 입히기는 생각보다 오래 걸리지 않는다. 기능구현엔 디자인이 필요 없지만 디자인을 입히기 전까지 윗사람에게 시연을 할 수 없는 단점이 있다.

나중에 반년간 일했던 회사에선 먼저 디자인이 완성된 뒤 개발을 하는 방법을 썼는데 이 방법의 단점은 디자인이 다될때까지 개발자가 놀았다는 단점이 있다. 뭐 pm하기 나름이겠지만 디자인이 진행되는동안 간단한 작업들이라도 먼저 시켰다면 어땠을까도 생각해본다. 프로젝트 시작하고 기본 일주일은 일없이 디자인만 기다리는 일도 있었으니..

개인적으로 가장 좋은 방법은 동시에 작업하는것이라고 생각한다. 뷰만 잘 분리한다면 디자인 입히기는 매우 쉽기 때문이다.


License
달리 정하지 않는 한, 이 저작물 크리에이티브 커먼즈 코리아 저작자표시-비영리-변경금지 2.0 대한민국 라이센스에 따라 이용하실 수 있습니다.
Except where otherwise noted, this content is licensed under a Creative Commons Attribution-NonCommercial-NoDerivs 2.0 Korea License

자바개발을 하면서 난 날짜연산이 필요할때.
예를 들면 어제날짜가 필요한다던가 입력받은 날짜에 얼마만큼의 기간을 더하고 빼고 할때 말이다.
java.util.Date객체의 메소드들은 대부분 Deprecated되어서(API문서) setDate같은 메소드를 쓰기도 찜찜하다.
그럴땐 Calendar 객체가 아주 유용하다.

Calendar cal = Calendar.getInstance(); // 지역에 맞는 캘린더객체 생성

위와같은 코드로 쉽게 생성이 가능하다.

자 이제 날짜연산을 어떻게 할까.
이것도 매우 쉽다. add메소드를 이용한다.

cal.add(Calendar.DATE, -1); //하루 전
cal.add(Calendar.MONTH, 4); //4개월 뒤
cal.add(Calendar.WEEK_OF_YEAR, -4); //4주전

같은 방법으로 get을 사용하면 해당 값을 가져올 수 있다.

GregorianCalendar는 이외에도 유용한 메소드가 많다.
cal.getMaximum(Calendar.DAY_OF_MONTH); //현재 월의 마지막 날짜

그리고 java.util.Date객체가 필요하다면,
Date date = cal.getTime();
Date date = new Date(cal.getTimeInMillis());

등의 방법으로 가능하다.
더 많은 정보는 API문서를 참고.




License
달리 정하지 않는 한, 이 저작물 크리에이티브 커먼즈 코리아 저작자표시-비영리-변경금지 2.0 대한민국 라이센스에 따라 이용하실 수 있습니다.
Except where otherwise noted, this content is licensed under a Creative Commons Attribution-NonCommercial-NoDerivs 2.0 Korea License

+ Recent posts