반응형
어떤 회사의 채용 퀴즈를 루비로 풀어봤습니다. (접수기간은 이미 마감)
변수 702에서 오류를 수정한 루비 코드입니다. 

--------------------------------------------------
codepad로 출력 결과를 볼 수 있습니다.
# num = gets.to_i # to get the user input
num = 65535
res = ''
abc = ('A'..'Z').to_a
while num > 26 do 
  res += abc[num%26-1]
  num = num/26
end
res += abc[num%26-1]
print res.reverse


 




반응형
반응형
-3.abs
처럼 쓴다. 숫자도 객체로 취급되기 때문에, 메서드 chain이 가능하다.
Math에 따로 없고 Complex는 복소수의 절대값을 말하는 것이기 때문에 (Complex plane에서 '실수부 제곱 + 허수부 제곱' 전체의 제곱근) 그 의미가 다르다.

참고할 링크.
반응형
반응형
2007년 12월 1일 금년 마지막이 될, 다섯 번째 루비세미나에 다녀왔습니다. 장소는 4회[각주:1]와 동일했습니다.

사용자 삽입 이미지

5회 루비 세미나 사진


첫 번째 발표는 Daum 캘린더 개발이야기. 관심이 갔던 부분은 SeeSaw인데요. 서버를 재시작하지 않고 중단하는 서버를 부분으로 나누어서 각각 갱신하는 점에 매력을 느꼈습니다. RoR로 운영되는 서비스라고 하셨는데, 좋은 선례가 되었으면 좋겠습니다.

두 번째 발표는 ETRI에서 YouFree. 휴대 가능한 작업 공간을 목표로 개발되었다고 합니다. 오픈소스이고 InstantRails 기반입니다. 집에서 USB로 꽂고 사용해 봤는데, 말씀하신 대로 하드디스크나 외장디스크에 복사해서 쓰시는 편이 더 좋을 듯합니다.

세 번째 발표는 Ruby와 Rails를 이용한 진짜 개발. 첫 부분인 Getting Real에서 다루어진 주제는, 애자일 흐름과 상응하는 부분이 많아서 공감했습니다. 배포 부분도 잘 모르고 있었는데 여러 경우로 나누어 설명해 주셔서 큰 도움이 되었습니다. 중간에 사진들도 재미있었어요. ^^ 발표 내용은 ikspres님의 블로그에서 5회 루비세미나를 참조하세요.

네 번째 발표는 2007년 크리스마스 선물이 될 예정인 Ruby 1.9에 대한 소개였는데요. 이번에 새로 지원되는 해시 표기법을 보니, 더 간단하다는 느낌이 드네요. String에서도 Enumerable을 버리고 문자 자체를 출력하도록 하는 것도 좋아 보여요. ASCII 코드값보다 더 자주 쓰여서 기존의 불편한 점이 해소될 거라고 봐요. GEM이 기본 배포에 포함되고, YARV(VM)도 포함된다고 하는데 기대가 됩니다. 발표하셨던 분이 참조하셨다고 이야기 해주신 Changes in Ruby 1.9의 링크를 겁니다.

다섯 번째 발표는 RESTful 웹 서비스 소개였는데요. RESTful Webservices라는 책을 도서관에 신청만 해두고 아직 읽어보지 못한 상태였는데, 핵심단어를 슬라이드에 띄우고 잘 설명해 주셔서 좋았습니다. REST에 대해 REpresentational State Transfer라는 표면적 의미보다는, 더 자세한 의미를 듣게 되어서 기뻤습니다.

여섯 번째 발표는 JavaScript on Rails였는데요. RJH, Lowpro(with RJS), JQuery 세 방식으로 구현된 잘 짜여진 예제가 매우 인상깊었습니다. 웹에서 행동을 분리하는 움직임은 DOM 스크립트라는 책을 읽을 때도 들었던 이야기인데요, 자바스크립트를 사용할 수 없는 설정이라도 작동이 온전히 이루어질 필요가 있다는 데 동감합니다.

일곱 번째 발표는 meet the Nginx였는데요. Nginx를 왜 채택했는지 경험에 기초해 이유를 설명해 주시고, 도입하고 나서 겪으셨던 어려웠던 경험들을 공유해 주셔서 좋았습니다. timeout default와 ignore_invalid_headers 두 가지였습니다. lockdown이 팁으로 나왔는데, 공부가 많이 부족해서 잘 이해를 못했습니다.

여덟 번째 발표는 봇을 위한 페이지 캐싱이었는데요. 운영하시는 서비스의 로그 분석 결과를 보고(특정 검색엔진의 봇이 한 서버에 그렇게 많은 부하를 준다는 사실에 대해 놀랐습니다.), 그 문제를 해결하기 위해 어떤 방법을 사용하셨는지 이야기해 주셨습니다. 하지만 생각했던 것보다 효과가 잘 나타나지 않았던게, 봇이 똑똑해서 같은 페이지에 대한 Hit Ratio가 낮기 때문이라고 합니다.

번외로, deepblue님이 slugger에 대한 유인물을 2장 정도로 정리해서 나누어 주셨습니다. slugger는 me2day와 springnote의 open API로 DB없는 blog를 구성할 수 있게 한다고 이해했는데요, 정말 신선하고 재미있는 프로젝트라고 생각해요. 문서에서 slugger에 대한 deepblue님의 사랑이 느껴집니다. 발표가 모두 끝난 후, 인사이트에서 후원해주신 루비 관련 도서 5권을 rand 함수를 돌려서 추천했는데요, 당첨되신 분들 축하드립니다. ^^
(저는 ㅠㅠ)

루비 사용자 커뮤니티가 점점 커지는 모습이 보인다고 많은 분들이 말씀하셨습니다. 루비 세미나 참석해서 정말 즐거웠고, 많이 배워갑니다. 내년 6회 세미나를 기대해 봅니다.
반응형
반응형

한국 루비 사용자 포럼
BarCamp RubykrSeminar4
루비 세미나 공식 블로그

사용자 삽입 이미지

4회 루비 세미나


2007년 9월 8일.

4회 루비kr세미나에 다녀왔습니다. 장소는 3호선 양재역 근처의 다음커뮤니케이션 건물 3층이었습니다. 전에 매쉬업 세미나때문에 갔던 곳이라 길이 익숙했습니다. 원래 2시부터 시작이었는데, 일찍 왔는데 문이 잠겨있길래 문 앞에서 기다리고 있다가 직원 분이 카드로 문을 열어주셔서 들어갈 수 있었습니다. 엘리베이터에도 카드를 찍으시던데 정말 신기하더군요.

저녁의 다른 약속과 겹쳐서 아쉽게도 세션을 다 들을 수는 없었습니다. 세션 1에서는 코디안님이 Rails 기반의 RSS 서비스를 소개하셨습니다. Main DB를 사용하지 않고 API만으로 RSS 리더를 구현하는 모습이 신기했습니다. 그 뒤에 나루라는 블로그 검색엔진과 관련있는 온네트에서 API에 대한 소개를 해주셨는데요, 아직 공중에 공개되지는 않았지만 그렇게 될 예정이라고 합니다.

세션 2에서는 우선 강규영님이 JSSpec을 이용한 JavaScript BDD(Behavior Driven Development) 개발을 주제로 발표해 주셨습니다. BDD는 TDD(Test Driven Development)에서 갈라져 나온 개발양식이라고 이해했는데, 맞는지 모르겠습니다. 끝에 TDD에 관한 바른 이해를 돕는 여러 좋은 말을 들었습니다. (테스트 주도 개발을 어쩌다가 읽고난 뒤 오래되서 기억이 가물가물하네요.)
그 다음에는 '쉽게 배우는 JRuby on Rails'를 번역하신 이창신님이 저자직강으로 JRuby에 대해 이야기해주셨습니다. 현재 C/C++나 Java가 꽤 많이 쓰이고 있는 것은 사실이고, 그래서 Java와 연동이되는 JRuby on Rails는 미래지향적인 곳이라면 한번 도입해보는게 좋다고 들었습니다. JRuby on Rails는 앞으로 Java SE 5를 선행 요구사항으로 하여 개발될 예정이라고 합니다.

세션 3에서는 RubyCocoa에 대해서 Jenix님이 발표해주셨습니다. 코코아 프로그래밍이라는 책을 번역하셔서 곧 나올 예정이라고 하셨는데 9월 15일에 정식으로 인사이트에서 출판되었군요. 맥 개발환경이 낯설긴 했지만, 드래그앤 드롭으로 버튼을 만들고 하는 모습이 신기해 보였습니다. 덧붙여 Objective-C에 대한 호기심도 생겼고요.

그 다음 부분부터는 듣지 못해서 아쉬움이 남았습니다. 일찍 나와서 루비가 신입 참가자에게 준다는 루비가 그려진 가방도 못받고, 기념품도 못 받은채 갔네요. 루비 세미나 공식 블로그를 방문하시면 4회 세미나의 내용을 동영상으로 보실 수 있습니다. 저도 시간나면 세션 3 뒷부분과 세션 4 부분을 봐야겠네요.

여러 유익한 점들을 배울 수 있어서 좋았습니다. 차회 세미나에 또 참가하고 싶네요.

반응형

+ Recent posts