"개발"에 해당되는 글 16건
- 2008/11/13 구글, 검색 쿼리로 전염병의 발생을 예견하다
- 2007/10/21 우분투 3D 데스크탑 compiz-fusion (1)
- 2007/10/20 Ubuntu 7.10..! (1)
- 2007/09/24 오늘 새벽의 삽질
- 2007/09/04 회사 리눅스 개발환경 (9)
- 2007/04/26 술래잡기 프로젝트 삽질 (6)
- 2007/03/28 당분간 리눅스 (3)
- 2007/03/22 Least Sapzil Solution in Software Development (1)
- 2007/03/20 Python Unit Testing Framework (1)
- 2007/03/07 Django를 활용한 커뮤니티 사이트 개발
오늘 Slashdot.org 에서 매우 흥미로운 기사를 발견하였습니다. 구글에서 "Flu Trends" 라는 서비스를 개발한 것인데요. 이것이 무엇인지 한 번 살펴봅시다. 일단 요지는 이렇습니다. "사용자들이 검색하는 특정 단어들로 전염병의 발생을 찾아낼 수 있고. 이는 미국 질병관리센터 CDC의 데이터와 유사하여 이를 사용해 전염병을 예측할 수 있다"라고 한것입니다. 사람들이 아프면, 초기 증상들을 구글에서 검색하게 되고, 이는 바로 전염병의 좋은 지표가 될 수 있기 때문입니다.
실제 데이터를 보니 CDC보다 최대 2주나 빠르게 전염병의 확산을 예측할 수 있다고 하네요. 뭐, 아직 예전 데이터를 바탕으로 테스트 한 결과를 얘기하는 것이겠지만, 신빙성 있고, 논리있는 주장인것 같습니다. 공공의 이익을 위해 사용자 데이터를 쓰는 것 같아 보기 좋은것 같습니다.
하지만 한편으론, 이런 막강한 정보력을 갖고있는 구글이 다음엔 또 무엇을 할지 무섭기도 하네요. 참고로 이 서비스는 google.org 에서 하는 자선사업의 일부입니다.
이런걸 계속 분석하다가 주식 선행지수라도 발견하면 대박이겠네요. ^^
한번 나도 녹화해봤다. 허접하다..

Am I crying right now? ... It's magic!! On a live CD!

겁나 멋지게 꾸며서 찍었는데.. 거의 모든 내용이 기밀이다. ;ㅁ;
사양은 대충 24" LCD, Intel Core 2 Duo 6600, 4G ram, unknown HDD, unknown NFS w/ PB storage
요즘 끊임없는 코드와의 술래잡기를 하고있다. 아니- 정확히 말하자면 술래잡기라는 게임이 있는데, 이 게임을 웹으로 올려 사람들이 들어와, 자신의 AI를 테스트해보고, 다른 사람들이 올린 AI 와 술래잡기를 하는 그런 환경을 제작하고 있다.
문제는, 많은 사람들이 짐작하고 있겠지만, 바로 유저 AI 코드를 서버쪽에서 실행해야 한다는데에 있다. 이는 보안상 매우 취약한것이 사실이므로 이를 막기 위해서 많은 보안 요소를 도입해야 했다. 유저나 서버 코드가 모두 파이썬이므로, 파이썬에서 파이썬 코드를 불러와 실행하게 한다. 그런데, 유저는 아주 단순한 연산만 가능하게 포장해야 하므로 다른 필요없는 것들을 유저가 접근하지 못하도록 해야한다.
처음에는 간단했다. import 라는 키워드를 막으면 거의 모든 문제를 해결할 수 있을줄 알았다. (import 라는 키워드는 파이썬에서 다른 모듈을 불러올 때 사용한다)
하지만 그것으로 끝나지 않았다. 선배가 그럼 '''exec "__imp"+"ort__"''' 는 어떻게 막겠냐고 하자, 내가 정말 할말이 없어지더라..
정말.. 술래잡기라는 게임을 웹에서 사람들이 대전하는 형식으로 개발하자고 했던 내 아이디어 자체가 불가능한 것이였던것 같다. 사용자가 올린 봇끼리 n번씩 대결한다고 할때 기하급수적으로 늘어나는 대결 횟수와.. 한판을 시뮬레이션 하는데에 드는 서버 코스트까지.. 이리저리 계산해도 불가능한 수치가 나왔다.
하지만 그 수치에 아랑곳하지 않고 이렇게까지 개발을 밀어부쳤는데.. 이제 사용자 코드 실행이라는 어려운 난제에 부딛히게 되었다.
결국.. 인터넷에서 찾은 safe evaluation 모듈을 이용해 나름 깔끔한 구현을 찾으려고 했다. 그런데 이놈을 사용하려고 하니, 막상 클래스 정의같은것도 힘들고. 이래저래 제한사항이 많다.
결국 내가 짰던 술래잡기 게임 framework 를 갈아엎어야 하는 상황이 되었다. -_-;;
어떻게 해야할까.. 누가 좀 살려주세요. ;ㅁ;
문제는, 많은 사람들이 짐작하고 있겠지만, 바로 유저 AI 코드를 서버쪽에서 실행해야 한다는데에 있다. 이는 보안상 매우 취약한것이 사실이므로 이를 막기 위해서 많은 보안 요소를 도입해야 했다. 유저나 서버 코드가 모두 파이썬이므로, 파이썬에서 파이썬 코드를 불러와 실행하게 한다. 그런데, 유저는 아주 단순한 연산만 가능하게 포장해야 하므로 다른 필요없는 것들을 유저가 접근하지 못하도록 해야한다.
처음에는 간단했다. import 라는 키워드를 막으면 거의 모든 문제를 해결할 수 있을줄 알았다. (import 라는 키워드는 파이썬에서 다른 모듈을 불러올 때 사용한다)
하지만 그것으로 끝나지 않았다. 선배가 그럼 '''exec "__imp"+"ort__"''' 는 어떻게 막겠냐고 하자, 내가 정말 할말이 없어지더라..
정말.. 술래잡기라는 게임을 웹에서 사람들이 대전하는 형식으로 개발하자고 했던 내 아이디어 자체가 불가능한 것이였던것 같다. 사용자가 올린 봇끼리 n번씩 대결한다고 할때 기하급수적으로 늘어나는 대결 횟수와.. 한판을 시뮬레이션 하는데에 드는 서버 코스트까지.. 이리저리 계산해도 불가능한 수치가 나왔다.
하지만 그 수치에 아랑곳하지 않고 이렇게까지 개발을 밀어부쳤는데.. 이제 사용자 코드 실행이라는 어려운 난제에 부딛히게 되었다.
결국.. 인터넷에서 찾은 safe evaluation 모듈을 이용해 나름 깔끔한 구현을 찾으려고 했다. 그런데 이놈을 사용하려고 하니, 막상 클래스 정의같은것도 힘들고. 이래저래 제한사항이 많다.
결국 내가 짰던 술래잡기 게임 framework 를 갈아엎어야 하는 상황이 되었다. -_-;;
어떻게 해야할까.. 누가 좀 살려주세요. ;ㅁ;
TAG 개발
Web - Ruby on Rails, Django on Python, PHP(for small sites)
Scripting - Python =? Perl =?? Ruby >= Sh
Windows Application - Delphi = VCL
System Programming - C
Game Development - C++, D?!
ERP, SI - Java, .NETish Langages (?)
Performance Critical - C with Assembly
Rapid Prototyping - Python =? Perl > Ruby
Hybrid(Web+SP+Performance Critical Things) Server Side Service - Definitely Python(With C Modules) ?
Education - Pascal, Lisp
To Feel Superior - Lisp, Scheme
그냥 내 생각 -_-a. 논란의 여지가 있는 부분은 ? 처리 했어요~ 더 좋은거 알면 공유좀 해줘요. ㅎㅎ
Scripting - Python =? Perl =?? Ruby >= Sh
Windows Application - Delphi = VCL
System Programming - C
Game Development - C++, D?!
ERP, SI - Java, .NETish Langages (?)
Performance Critical - C with Assembly
Rapid Prototyping - Python =? Perl > Ruby
Hybrid(Web+SP+Performance Critical Things) Server Side Service - Definitely Python(With C Modules) ?
Education - Pascal, Lisp
To Feel Superior - Lisp, Scheme
그냥 내 생각 -_-a. 논란의 여지가 있는 부분은 ? 처리 했어요~ 더 좋은거 알면 공유좀 해줘요. ㅎㅎ
파이썬에서 유닛 테스팅을 어떻게 할까 찾아보다가.. 설마 했는데 그냥 기본 지원되더라. lol
Python Web Framework 인 Django 를 활용해 내가 졸업한 고등학교 커뮤니티 사이트를 제작중이다. 현재 시간날 때 마다 조금씩 조금씩 제작중인데, 개발이 아주 순조롭다. 카이스트 01 학번이신 김병수 선배님과 열심히 개발을 진행하고 있다.

지금 제작중인 테그기반 게시판이다. 요즘들어 유행하는 테그기간 게시판을 따라 구현해 봤다.
개발 프로세스로 아주 순조롭다. 주욱 주욱 개발하고 티켓 clear 하고. 코딩하는게 즐겁다. :)
이 녀석 체우는 재미도 쏠쏠하다. 마일스톤 프로그레스바가 진행할 때마다 너무나도 행복하다.
얼른 0.2를 완성해 기존에 만들었던 커뮤니티를 대체해야겠다. Open Beta 를 얼른 해야하는데. 쩝 ㅎㅎ

지금 제작중인 테그기반 게시판이다. 요즘들어 유행하는 테그기간 게시판을 따라 구현해 봤다.


얼른 0.2를 완성해 기존에 만들었던 커뮤니티를 대체해야겠다. Open Beta 를 얼른 해야하는데. 쩝 ㅎㅎ


Comments