먼저 다음 중 자신에게 해당되는 부분이 있다면 Codeigniter로 옮겨 탈 가치가 충분하다.

  • 반복적인 작업에 자신이 만든 라이브러리(라고 스스로 칭하는 스파게티 소스코드)가 있는 사람
  • 개발 로직과 마크업 요소가 뒤엉켜 있어 뭔가 수정할 일이 있을 때 멍해지는 사람
  • SQL injection 등 각종 보안 문제로 골머리를 썩혔던 사람
  • PHP로 개발하는 사람
  • 관심있게 이 글을 읽고 있는 당신
개인적으로 안봤으면 하는 사람은 아래와 같다.
  • 객체지향 프로그래밍에 대해 관심이 없는 사람
  • PHP를 아직 잘 모르는데 Codeigniter로 배우기 시작하려는 사람

PHP Framework는 사실 뭔가 엄청나고 대단한 것이 아니다. 이미 수많은 개발 언어와 이론들의 방향을 살펴보면 오히려 자연스러운 전개다. PHP Framework는 필연적으로 나타날 요소였지만 이렇게 오랜 시간이 걸렸던 이유는 배우기 쉬운 개발언어라는 오명 하에 고급 언어를 롤 모델로 생산성을 향상 시키는 것에 게을리 해왔던 탓이 아닐까.

기존의 PHP 개발 방식은 하나의 파일에 모든 처리과정이 들어있는 방식이다. 비록 파일을 분리해서 include나 require로 불러오긴 하지만 데이터를 페이지로 가져오는 부분이나 가져온 데이터를 수정, 가공하는 부분, 화면에 출력하는 부분까지 모두 하나의 페이지에서 if나 switch와 같은 구문을 통해 처리를 한다. 이 개발 방식의 단점은 화면과 로직과 데이터를 분리할 수 없어 쉽게 비빔밥이 될 수 있다는 것이다.

이를 보완하기 위해 많은 개발 패턴이 등장하는데 Codeigniter에서 사용하는 패턴은 MVC 패턴이다. 앞서 말한 기존의 개발 방식은 비빔밥이라 예를 들었는데 MVC는 김밥과도 같다고 볼 수 있다.김밥은 나름 분해가 가능하니까! 뭐 꽉꽉 말아버린 김밥이면 분해했을 때 비빔밥처럼 될 수도 있으니 그리 적절하지 못한 비유긴 하지만;

MVC는 모델, 뷰, 컨트롤러의 머릿글자를 모아 만든 조어인데 각각 담당하는 역할이 다르다. 모델은 자료를 찾는 용도, 뷰는 화면에 보여주는 용도, 컨트롤러는 필요한 데이터를 모델에 요청하고 화면에 뿌릴 데이터를 뷰에 보내주는 역할을 한다.

간단하게 메모장을 만든다고 가정을 해보자. 모델에서는, 뷰에서는, 그리고 컨트롤러에서는 무엇이 필요할까? 답은 이 글의 끝에 붙여놓을테니 계속 읽으면서 생각해보자.

물론 말은 간단한데 처음 보는 접할 때는 뜬금없이 나온 이 세 녀석의 용도가 참 모호하다. 특히 내 경우는 그럼 모델과 컨트롤러는 무슨 차이를 가지는 것인가, 왜 분리하는 것인가, 어떤 경계를 가지고 돌아가는 것인가에 대해 상당한 의문을 품었던 기억이 난다. 깊게 생각하지 말고 컨트롤러는 전체를 총괄하고 모델은 데이터베이스 부분을 담당한다고 생각하면 쉽다. (막상 적다보니 왜 분리하는지에 대한 정확한 이유가 떠오르질 않는다;; 말리고 있어!!)

모델은 DB, 뷰는 Front-end, 컨트롤러는 총괄. 반복해서 탁하면 억하고 튀어나올 정도는 되어야 쓰면서 헷갈리지 않는다.

Codeigniter는 약한 MVC 패턴을 채택하고 있어서 사실 모델과 컨트롤러를 혼합해서 써도 되고 컨트롤러를 뷰처럼 써버려도 상관이 없다. 그래도 기왕 MVC 패턴으로 넘어오기로 했으면 MVC 답게 써야 하는 것이 좋지 않을까? (협박..;;)

컨트롤러

  • 메모입력
  • 메모수정
  • 메모삭제
  • 메모목록

모델

  • 메모 입력하기
  • 메모목록 불러오기
  • 메모 삭제하기
  • 메모 수정하기

  • 메모입력/수정
  • 메모목록
  • 메모보기
  • 메모삭제 확인

왜 이런 구조가 나올까? 고민을 하며 다음 글로ㅎㅎ;

2012년 8월 4일 melbourne deakins uni.에서 응시한 IELTS general training 후기.

한국에서 영어공부는 제도권 내에서 한 것이 전부고 대학시절 모의토익 한번 본 경험 (그것도 500대가 겨우 나왔던 것으로 기억) 외에는 딱히 영어공부를 하지 않았다. 그래도 IT쪽에 관심도 많고 실무를 진행하며 필요한 기술자료는 절대다수가 영어라 계속 접하긴 했다. 난 07학번이고 신입생때 봤으니 2007년 초였다. 계속 놀다가 2008년 12월~2011년 1월 군복무 했으며 군생활 하며 영어공부에 대한 필요성을 주변 동기들을 통해 계속 느껴 해커스 파랑이를 정석에서 집합, 명제만 실컷 푸는 것처럼 앞부분만 푼게 전부. 전역하고 1년간 웹개발자로 일하다가 2012년 2월에 퇴직하고 그 다음달에 워킹 홀리데이로 호주에 넘어왔다.

자막 넣고 봤지만 그래도 조금이나마 도움이 되었지 않을까 싶어서 적어보는건 미드를 좀 많이 봄. scrubs season 18, HIMYM 17, the office 18, the community 13. 적어보니 얼마 안되지만… himym랑 the office는 호주 와서도 계속 했으니 챙겨보다가 지금 다음 시즌 기다리고 있다. 시즌을 한번만 본게 아니라 각 시즌 텀마다 두세번씩 반복해서 봤다. 본 영화 또보고 또보고 하는거 좋아하는 타입이라 시즌 반복적으로 많이 봤다.

IELTS를 열심히 준비하지도 않고 당당하게 시험 응시 했다. 그래도 준비한 것이라 생각해 볼 만한 부분은 아래와 같다.

  • IELTS 캠브릿지 7, 8권 구입.. 큰맘주고 새책 구입. 검트리에서 구입하려고 하니 중국제 카피가 너무 많아서 그냥 구입했다.
  • 8권 아카데믹 test 1, 2 리스닝, 리딩… 대충 반 이상은 맞았다. 제목 고르기에 취약;; 문장에 대한 이해력이 떨어지나… 리스닝도 많은 연습이. test 1에서는 리스닝이 다 geography였는데 전공이 그쪽이다보니 내용도 잘 들어오고 했지만 test 2에서는 research 에 대한 부분은 하나도 귀에 들어오질 않았다.
  • 8권 제너럴 test 1 리딩, 라이팅 task 1. 리딩은 제네럴 아카데믹 다른줄 몰랐는데 보니 다르더라. 반보다 좀 더 많이 맞긴 했지만 제네럴이 쉬운 편이라 거의 아카데믹이랑 비슷한 점수로 계산될듯. 그래봤자 반절 ㅠㅠ
  • hamish and andy podcast gold logie편 50회 가량 반복 청취. 휴대폰이 아이폰이 아니라서 아이튠즈에서 직접 받아 넣었는데, 내 폰이 상태가 매롱하기도 하고 다시 넣기도 귀찮고 해서 반복적으로 들었다. 40분 분량이었는데 아직도 잘 못알아 듣는 부분도 많지만 그래도 전체적으로 내용도 알고, 들으면 들을수록 안들렸던게 들려서 새로운 것 듣는 기분(음..;) 다른거 받아서 들어봤는데 아예 내용 이해 안되지만 처음 시작보다 나은듯. 이건 호주 와서 계속 들었음.
  • hugh and kate 언젠지 모르는거 하나 20회 가량 반복 청취. 위와 비슷하다. 이건 20분 짜리.
  • 안드로이드 앱 중에 ielts writing 샘플 모아논 앱인데… 출퇴근시 대충 읽음.. 진짜 대충… 라이팅은 읽는 것도 중요한데 달달달 써봐야 손에 익어서 술술 쓸 수 있다.
  • 인터넷서 writing 샘플 두개 외운다고 몇번 옮겨적는거 이틀인가 함. 생각처럼 안외워진다, 정말. 시간을 많이 투자해야 할듯 ㅠㅠ
  • 영화 social network 20회 가량 반복 시청… 이건 그냥 평소 컴퓨터 할 때 틀어놓고 봄. 왠지 보면 볼수록 정확하게 뭔지는 모르겠지만 리프레시 하는 기분이 나서.. 원래 영화 자주 반복적으로 보는데 호주 와서 반복해서 본 영화는 social network, 50 first dates, 500 days of summer. social network는 좀 많이 봤고 다른 것도 10회 정도 본듯. 자주 봐서 무자막으로 봐도 내용 아는 정도.

처음 시험이니 시험 어떻게 되는가 알기 위한 것도 있지만 현재 변경할 비자에서 요구하는 점수가 general each 5.0 이라 다른 사람들에 비해 상당히 낮은 난이도였다. 그래서 마음 편히(?) 이렇게 개판으로 준비를 하지 않았나… 반성한다. ;ㅅ;

시험은 9시 시작인데 7시 50분까지 오라고 해서 갔더니 시험 수속이 엄청 오래 걸렸다. 가방, 외투 다 맡기고 연필 두자루, 지우개, registration card, passport를 들고 오랜 시간 수속해서 시험 보는 곳으로 갔다. 시험 감독관이 밖에서 일일이 한명씩 교실 안에 자리에 배정해주는게 인상적이었다.

리스닝은 혼자 연습할 때랑 다른 점이 지금 들은 부분이 정답인지 아닌지 고민할 때가 많았는데 페이지 마지막 답인 경우 사람들이 적고 바로 시험지를 넘기는데 다같이 촤라락 하고 넘기기 때문에 대충 답도 추측이 되고, 다음 페이지 문제로 넘어갔는지 아닌지도 알 수 있는 장점아닌 장점이 있었다;;

리스닝은 중고샵에서 물건 사는 내용이랑 컨퍼런스인지 뭔지 잡페어인지 하는건데 진행 어떻게 되는지 하는 내용, 신입생 안내해주는 내용, 마지막이 중세시대 농업과 관련된 내용이었다. 중간에 딴 생각에 빠져 놓친 문제가 있었는데 그래도 재빨리 정신 차리고 다음 것 들으려 노력했다. 공상에 빠지지 않는 것이 중요하다. section 1에서 냉장고를 freezer라고 썼는데 후기 공유하는 곳에 가보니 fridge라고. 아는대로 들리는게 문제다.

리딩은 티비 프로그램, cater business 와 관련된 내용, 영화관 티켓 얘매에 대한 내용, 일자리 관련된 내용(administrative jobs), 콩코드 여객기와 관련된 내용이었다. 한 10분 가량 남겨놓고 다 읽고 풀었고 답안지에 옮기고 한번 더 검토했다. 콩코드에서 가장 어려워 하는 heading 문제가 있었는데 그래도 나름 쉽게 풀어간듯. 뭐 결과 나와보면 정말 쉬웠는지 알겠지만… 암튼 괜찮았다.

라이팅 task 1은 새로운 일자리를 찾은 친구에게 편지쓰기(최근에 만나지 못한 이유, 새로운 직업은 어떤지, 언제 어디서 만날지 약속을 잡을 것) 이었고 task 2는 shopping centre와 local market에 대해, cumtomer와 society 에 어떤게 더 좋은지에 대해 적으라는 내용이었다.

라이팅은 준비한게 없어서 정말 가는대로 적었는데 이전에 옮겨쓰기 연습했을 때 한줄에 10 ~ 8개 정도 단어를 썼으니 task 1은 1520줄 정도, task 2는 2530줄 되면 분량이니까 급한대로 줄수 세면서 되는대로 문장을 만들어서 넣었다. task 1은 위에 세가지 내용을 각각 문단으로 3문단 썼고 task 2는 정말 엉터리로 썼는데(task 2는 직접 푼게 처음..;; 공부좀 해라..) 총 4문단으로 1. 쇼핑센터와 로컬마켓의 장단점을 잘 알아야, 2. 쇼핑센터의 장단점, 3. 로컬마켓의 장단점, 4. 상황에 맞게 잘 가면 소비자에게 이익을 줄것. 이라고 전개를 했는데 society에 대한 내용을 생각도 안하고 작성하고 다시 볼때야 알아 차려서 그냥 마지막 문단에 소비자와 society 둘다에게 좋을 것이란 식으로 대충 적고 마무리. task 1은 20분 task 2는 35분에 다 적었다. 내용은 비록 엉터리지만 분량은 맞춰 썼…다고 생각하는데 분량 안되는거 아니겠지?ㅠㅠ

스피킹은 14시 20분에 예정이었는데 미리 가서 이름 적으니 더 빨리 볼 수 있었다. 긴장하면 쉽게 체하는 사람이라 점심은 일부러 안먹었고 물만 마시고서 들어가기 전에 뭐 i would like to talk blarblar 이런거 정리된거 눈에 들어오지도 않는 상태지만 게속 봤고; 생각했던 것보다 훨씬 급박한 분위기에서 진행되었는데 이런 분위기에서도 여유를 가지고 차분하게 애기해야 하는구나 하고 끝나고 나서야 생각했다. 질문한 내용은 task 1 이름은 무엇, 어디서 왔는지, 고향은 얼마나 변화하였는지, 고향에서 평소에 어떤 일을 하는지, 휴식을 취할 때는 주로 무엇을 하는지, 컴퓨터는 많이 하는지, 컴퓨터를 많이 하는 것에 대해 어떻게 생각하는지 물어봤다.

task 2 좋아하는 tv programme or movie의 캐릭터에 대해 설명하고 그 사람의 장단점에 대해, 배울만한 부분에 대해 물어봤는데 the office의 마이클 스캇에 대해 얘기했는데 뭐 잘 정리가 안되게 말하다가 다음으로 넘어갔다.

task 3 tv programme or movie에서 어떤 캐릭터가 사람들에게 배울만한 점을 주는지, 슈퍼히어로, 사회 정의 구현 이런쪽으로 얘기하니까 어린 아이들에게만 해당하는 것 같다 반면 나이 많은 사람들에게는 어떤 캐릭터가? 이러니까 나이 많은 사람들은 하나의 캐릭터에서 특징을 보는게 아니라 각각의 캐릭터에서 좋은 점을 뽑아 배우게 된다는 식으로 얘기했는데 내가 무슨 말을 하는지 나도 모르는 상황이… 그 다음 조커와 같이 악역을 좋아하는 사람에 대해 어떻게 생각하나 였는데 뭐 복잡하게 갈피없이 선한게 일반적인 거니까 그에 대한 반작용으로 악한 케릭터를 좋아한다는 식으로 전개하려고 했는데 잘 안되다가 시험이 종료되었다.

역시나 끝나고 나니 ‘내돈.. 아, 더 준비했어야 했어’ 이랬다. 지나간 트램은 땅을 치고 후회해도 후진따위 하지 않는다. ;ㅅ;

리스닝, 리딩, 라이팅은 그래도 좀 나름의 노력을 했는데 스피킹은 회사에서 말하기, 집에서 아줌마 아저씨랑 얘기하기 수준이었는데 이것은 말 그대로 대화고 시험에서 요구하는건 PT에 가까웠다. 좀더 체계적으로 말하는 연습이 필요하다고 느꼈다.

그리고 리스닝, 리딩, 라이팅은 책보고 공부하는 방식으로 충분히 가능하다는 생각이 들었다. 실제 시험에서 주는 느낌이랑 크게 다르지 않았으니 구입한 책만 잘 풀고 문제 잘 정리하고 하면 크게 도움 될거란 예상이다. 다음 시험은 9월에 잡아뒀는데 열심히 준비해서 정말 좋은 성적을 거둬봐야겠다.

이 글이 조금이라도 도움이 되었으면 좋겠다. 17일에 성적 나오는데 그 전까지…. 놀지 말고 공부를 열심히! 성적 나오면 높든 낮든간에 여기에 붙여놔서 내 스스로를 좀 자극시켜야겠다!

 

결과는 리딩 리스닝 6.5 라이팅 스피킹 5 overall 6 받았다. 다행히 지금 필요한 점수는 받았지만 앞으로 더 높은 점수도 필요하기도 하니 열심히 준비해서 다음 시험 보려고 한다. (뭐 이것도 점수라고 올렸나 싶지만 ;ㅅ; 스스로 자극도 하고 챙피도 하고 공부도 하라고 ㅠㅠ)

다음 시험은 10월 22일. 그 전까지 IELTS cambridge 7, 8권 풀기, 하루 라이팅 하나씩(task 1, 2 돌아가며), 구입한 책 다 읽기 (startup with you) 계획으로 준비할 예정이다.

추가.

다음 시험은 계획대로 준비를 못했…고 사실 그냥 놀았다. 돈아까브. 6 6 5 5 받았다 ;ㅅ;

평평한 기업문화로 한국서 유명한 곳은 다음이다. 유명해진 이유가 서로 호칭을 ‘ㅇㅇ님’ 이라고 하기에 더 평평하다느니 얘기를 들었는데 내가 왕년에 다음에 근무해보았을 때…가 없었기 때문에 잘 모르겠습니다….

여튼 기업문화에 대한 얘기를 갑자기 꺼낸 이유는 이 글을 보고 나서 공유하고 싶다는 생각이 들었기 때문이다.

http://design-play.kr/valve/

http://newcdn.flamehaus.com/Valve\_Handbook\_LowRes.pdf

평평한 기업문화가 가지는 장점과 단점에 대해 잘 기술되어 있는데 벨브의 사내 분위기 자체가 상당히 유연하고 능동적인 사람으로 유지하는 방식이 고유한 철학으로 녹아있었다. 지난번 기업 문화와 관련한 글 중 개발자에게는 높은 연봉이나 유연한 출퇴근이 아니라(차선이란 얘기다.. 필요 없단게 아니고;;) 개발자를 인정해주는 문화가 가장 중요하다는 글이 있었다.

인정은 관료틀 안에서 창의를 보장받기 위한 버팀이 되겠지만 이건 하향식의 한계를 일정 덮어버린 것 이외에는 크게 가치가 없다. 관료적인 기업문화를 포기하지 않는다면 타협의 선택이 되겠지만 이제 시작한다면 벨브가 가진 철학을 따라가보는 것도 좋지 않을까.

“한국에서는 어림도 없어.” 라는 생각보다 “한국에서는 아직 보지 못했으니 이건 분명 블루오션이다!!!!! 앜ㅋㅋ!!!!” 식의 접근을 하는게 정신 건강에 이롭다.

인정하고 싶지 않지만 mac에서 Windows Live Writer 만큼 강력하고 편리한 블로깅 도구를 찾을 수가 없었다. 그나마 대안으로 찾은 도구가 ecto와 MarsEdit인데 ecto는 왠지 모를 불편한 부분이 있어 이전에 몇번 써보다가 그냥 지워버렸다. 그래서 한동안 로컬에 WordPress 설치 해두고 거기에 일기 쓰고, 이것저것 글 쓰고 그랬는데 이러다 내 맥북을 분실하게 되면 깡그리 사라지는데? 라는 생각이 들어 다시 이쪽으로 옮겨 담으려고 하고 있다.

유능한 목공은 연장탓을 하지 않는다고 하지만 나는 유능하지 않으므로(…) 글쓰기 위해서는 왠지 블로그 스킨도 고쳐야 하고, 글쓰는데 환경을 꾸미는 것에 더 치중하는 스타일, 전형적인 연장탓하는 스타일이다. 그래도 그 사이에 뭔가 멋진 녀석이 나오지 않았을까 검색해봤는데 역시나 돈이 안되는 구석이라 그런지 여전히 MarsEdit이랑 ecto만 우선 순위로 검색이 되고 있었다. MacJornal을 추천하는 글도 많았지만 글이 많아지면 느려지는 부분이나 블로그로 싱크하거나 이런 부분이 문제가 되지 않을까 생각도 들고… 일단 모두 유료이기 때문에 한번 사면 쭉 써야하므로 계속 리뷰만 찾아보게 되는게 현실이다.

Mars Edit

느린 인터넷 사정으로 리뷰도 잘 검색이 안되서 오늘 출근해서 한번 검색해봤더니 MarsEdit도 30 day trial이 있길래 바로 설치해봤는데 결국 MarsEdit을 구입할 것 같다.  ;ㅅ; 너무 괜찮네.

설치한지 30분도 안되었는데 반해버리고 말았다.

  • 블로그 주소만 치면 알아서 인식해주고 계정만 입력하면 연결작업은 끝난다.
  • preview template을 html로 편집할 수 있게 되어있다.
  • drag & drop으로 사진 업로드가 된다.
  • 블로그 연결해도 깔끔하다.
  • 아 좋다.

Windows Live Writer는 리본 인터페이스로 변한 이후로 좀 어색한 감이 있었다. 기능도 너무 많고 역시나 찾기 힘든게 문제였는데 애플에서 그런 강력한 녀석 하나 내주진 않겠지?

그나저나 Sublime Text 2라는 녀석도 구입할 예정인데 이 달에 앱에만 100불 가량 지출 될 예정이다. 가장 화나는건 Coda를 답답한 면이 많음에도 아껴주고 칭찬해주고 지내왔는데 이렇게 더 매력적인 도구가 나타날줄은… Coda 구입한걸 후회하고 있을 정도다. Coda도 꽤 큰 돈 내서 산건데. 참. Sublime Text2도 어느 정도 적응이 되면 리뷰 올리고 싶을 만큼 강력한 녀석이다. 파이썬 기반인데 반응도 빠르고 요즘 브라우저와 유사한 탭방식에다가.. 여튼 이 글은 나중에.

MarsEdit 참 좋다. Trial은 앱스토어에서 받을 수 없고 해당 개발사 사이트에서 받을 수 있다.

2012년의 목표도 예년과 같이 블로그에 열심히 글쓰기였지만 올해 쓴 글은 15건에 불과하고(물론 그렇다고 작년에 많이 쓴 건 아니었지만;;) 그나마 다섯줄 넘어가는 글은 손에 꼽는다. 뭐 매번 거짓공약만 남발하고 있으니 내 스스로에 대한 반성을… 물론 매년 하는 반성이라 자체 면역이 있는지 그게 잘 안먹히는 점이 흠이다.

아무튼 글을 안쓰는 가장 큰 원인으로는 SNS에 너무 빠져서 긴 글 쓰기는 더욱 귀찮아 하고있다. 게다가 남 글에 좋아요 누르기 바쁜 관계로 차분하게 앉아 글을 쓸 마음의 여유가 없었다. 그래 핑계는 늘 거창한 법이니까… 그래서 일단 반성과 참회의 시간을 위해 facebook account를 deactive 해놓고 습관적으로 접속하던 것을 좀 자제하려고 한다.

그리고 호주로 넘어온지 4개월차가 되었다. ‘어디든 상황에 닥치면 어떻게든 되지 않을까.’ 나도 그렇게 생각하고 넘어왔는데 내 스스로는 ‘한 35% 정도 잘 하고 있구나, 나머지 40%는 정신 차리고 열심히 해야겠구나, 25%는 게으른건 공간이 문제가 아니구나.’ 이렇게 생각하고 있다. 여전히 워킹홀리데이 비자를 가지고 있고 열심히 영어를 준비해서 여기서 좀더 시간을 보낼 수 있는 상황을 만들 수 있을까 고민하고 있는데 실상은 일이 바쁘다는 핑계로 퇴근하고 놀기에 바쁘다. 그만 놀고 준비를…

여튼 호주 넘어와 많은 면접을 봤는데 이 두가지를 정말 많이 물어봤다. OOP 기반의 개발에 대해, 그리고 CMS에 대한 경험에 대해서. 전자는 지식적인 부분이고 후자는 각각의 CMS에서 어떤 철학으로 OOP를 구현했는지, 즉 좀더 실무적인 측면에서 바라봤을 때의 OOP에 대한 이야기랄까. 한국서 흔히 볼 수 있는 ‘PHP 개발자, 웹표준 코딩, 디자인 가능자 우대’ 이런거랑은 전혀 다른, 진짜 너는 개발자인가 아닌가를 물어보는 면접이… 100%였다. 50, 60, 70%도 아니고, 80, 90%도 아닌 100%.

joomla, drupal 한번씩 설치해본 것, 내 블로그로 워드프레스 쓰는 것이 내 CMS 경험의 전부였다. Codeigniter를 관심있게 보고 꾸준히 사용해왔던 부분이 그나마 내가 가질 수 있는 득점 포인트였지만… 그래도 영어때문에 쉽지 않았다. 그래서 지금 나를 채용한 회사에 너무나도 감사하고 있다. (사장님 감사합니다..ㅠㅠ)

그래서 지금 가지고 있는 단기적인 목표는 좀더 장기적으로 일할 수 있는 비자로 전환하는 것이다. 아직 학업도 마무리 하지 못했지만 (07학번. 군대 다녀온 애들도 졸업하더라.) 여기서 생각만큼 정착이 된다면 여기에서 학교를 다니는 것도 정말 좋은데, 비용적인 문제도 있고. 아무튼 그 이후의 문제니까 전환이 되면 그때 더 생각해보려고 한다.

벌써 8월이다. 이제 남은 기간을 어떻게 보내느냐가 내 20대 인생의 후반을 좌우한다는 점을 잊지 말고 할 수 있을 때에 최선을 다해봐야겠다.

생활지역이 제주에서 좀 더 큰 섬인 호주(?!)로 바뀌면서 블로그에 크게 신경을 쓰지 못하고 지냈다. 하던 일도 모두 정리해놓고 영어를 하겠다는 일념 하에 호주로 넘어왔지만 호주의 엄청난 물가를 감당하지 못하고 서둘러 일자리를 찾고만 있지만 나름 즐거운 시간을 보내고 있다.

여기서도 새로운 만남이 많이 있어 그 계기로 알게 된 사이트가 개발자 영어였다. 나솔님이 주도적으로 운영하고 있는 이 사이트는 원래 이고잉님의 생활코딩에서 파생된 사이트(내가 보기에는;;)인데 같이 공동 번역도 하고 영어 공부 방법론도 얘기하는 그런 커뮤니티인데 다른 커뮤니티와 다른 점은 아티클이 영어라는 점이다. 영어를 모르면 아무래도 뒤쳐질 수 밖에 없는 IT 분야이기 때문에 늘 개발자는 영어에 대한 니즈가 충만한 법인데 요구에 맞춰 좋은 환경이 만들어지지 않았나 생각이 든다.

위는 생활코딩에 딸려있는 웹페이지고 아래는 페이스북 그룹인데 페이스북 그룹에서 대부분의 의사소통이 진행되고 거기서 뭔가 정적인 요소가 필요하게 되면 그게 웹페이지에 만들어져 운영되는 식이다. (지금껏 내가 본 것으론 ㅠㅠ)

혼자 하는 영어공부보다 이렇게 바글바글 모여서 하는 것도 재미도 있고 의욕도 더 붙는다. 시간 내서 한번 방문해 보시라!

영어발음기호를 읽는데 익숙치 않아 자료를 찾다가 BBC Learning English에서 영어발음기호 학습 자료를 찾게 되었다.

BBC Learning English

사이트에서 수준별로 다양한 학습 자료를 제공하는데 Pronunciation 페이지에서 해당 발음기호 학습 자료를 찾을 수 있다.

Published on February 20, 2012

MySQL에서 문자열을 병합할 때 concat()을 사용할 수 있는데 group by로 묶은 쿼리에서 concat()을 사용하면 해당하는 행 중 하나의 값만 도출된다. 합친 문자열이 필요한 경우 group_concat()을 사용해야 한다.

# `website` table
type      name
1         twitter
1         facebook
2         daum
2         naver

# select type, group_concat(name) as name from website group by type
type     name
1        twitter, facebook
2        daum, naver

Group by에서 사용할 수 있는 함수는 다음의 레퍼런스 문서에서 확인할 수 있다.

마지막에 –with-pdo-mysql 부분은 magento 설치시 요구사항이라 추가했고… 현재 설치된 php의 컴파일 옵션을 확인하는 방법은 config.nice를 보거나 phpinfo()를 쉘에서 실행해보면 알 수 있습니다.

./configure
  --with-mysql=/home/mysql
  --with-mysqli=/home/mysql/bin/mysql_config
  --with-apxs2=/home/apache/bin/apxs
  --with-gd
  --with-curl
  --with-jpeg-dir=/usr
  --with-freetype-dir=/usr
  --with-png-dir=/usr
  --with-xpm-dir=/usr
  --with-zlib
  --with-zlib-dir=/usr
  --with-gdbm
  --with-gettext
  --with-iconv
  --with-openssl
  --enable-gd-native-ttf
  --enable-exif
  --enable-magic-quotes
  --enable-sockets
  --enable-soap
  --enable-mbstring=all
  --enable-bcmath
  --with-libxml-dir=/usr/lib
  --enable-ftp
  --with-mcrypt
  --with-pdo-mysql

올해부터는 블로그에서 평어체로 작성하기로 마음을 먹었는데 그게 쉽질 않네요. 그냥 편하게 쓰겠습니다;;

아이리버 story K를 구입했습니다. 99,000원에 아이리버 스토어에서 구입했는데 저가형 이북시장을 타겟으로 했나봅니다. 이전에 사용하던 아이리버 스토리는 (첫번째 모델) 당시 타사 모델에 비해 느린 전환 속도와 깔끔하지 않은 잔상 문제, 그럼에도 좀 고가로 책정되어 있었습니다. 그래서 구입해서 사용하다 아직은 시기상조였나 싶어서 중고장터에 내어놨습니다.

아이리버에 대해 늘 비판적인 견지를 가지고 있지만 못났어도 살게 아이리버 것 밖에 없으니 아이리버를 계속 구매하고 있습니다. mp3도 iHP-100, H320, E320을 거쳤고, 전자사전도 아이리버로 두번 가량 구입했습니다만 하드타입 mp3 외에는 크게 만족하진 못했습니다. 특히 전자사전에 탑재된 smart UI는 키보드만으로도 모든 컨텐츠에 접근이 가능해야 하는데도 꼭 한손에는 터치펜이 없음 검색조차 불편한 구조로 되어있죠. 게다가 좋아했던 하드타입 mp3는 더이상 나오질 않습니다; 기술환경이 달라진 것도 요인이긴 하겠지만요.

여튼 아이리버 story K의 리뷰를 시작하겠습니다. 스펙에서 눈에 띄는 점은… 특별히 없네요. 그냥 타 기종과 비교해서는 무난한 것 같습니다. 

좀 특이한 점은 hwp를 지원한다는 점이 되겠습니다. (아래아한글을 안써서 확인은 안해봤지만 잘 된다고 합니다. 단 reflow 기능이 없어서 스토리에 맞게 문서 규격을 맞춰줘야 한다고 하더군요.)


패키지입니다. 교보문고 스티커가 눈에 띄네요.

박스 뒷면엔 설명이 있구요.

2GB, WIFI 모델입니다.

박스 봉인은 뜯으면 티가 안날 수 없도록 잘 해두었네요.

개봉!

이런 얇은 비닐에 들어있습니다. 전자책은 켜져있는 것처럼 보여도 전력소모가 계속 일어나는 상태가 아니니 저렇게 센스있게 설명을 띄워서 배송해주는 것 같습니다.

박스 안에는 usb 케이블 1개, 품질보증서와 퀵가이드 한 장이 들어있습니다.

버튼은 다른 기기들과 좀 독특합니다. 아이리버의 전자사전 중 D10의 키패드와 똑 닮았는데 누르면 딸깍하며 정확하게 눌리는 느낌이 나는 편입니다. 반면 페이지 넘기는 은색 길다란 막대가 좀 특이한데 상하 컨트롤은 조그 다이얼과 같이 되어있고 좌우는 버튼식입니다. 귀퉁이에 페이지 넘김 버튼보다 기기를 잡을 때 엄지손가락이 자연스럽게 가는 곳에 위치해 있어 세로로 잡든 가로로 잡든 의외로 괜찮은 배치입니다. 물론 대부분의 이북 기기들이 하드웨어 키보드를 넣을거면 터치로 만들고 화면을 크게 키우겠습니다의 방향으로 가는 것과는 조금 다른 양상이긴 합니다.

뒷면은 잘만들었단 생각 전혀 안들게 생겼습니다. 앞에 없는 전원 버튼이 뒤에 달려있습니다. 왜 뒤에 버튼이 문제인가는 케이스를 씌운다고 생각해보시면 바로 아실거에요. 차라리 측면에 달려있는게 나을텐데, 유선형의 디자인 때문일까요?

그리고 SD 카드를 넣을 수 있는 슬롯은… 정말 엉성합니다. 스토리1에서는 충전하는 곳이 저렇게 되어 있었는데 충전할 때마다 빼다보니 점점 헐거워져 별로 기분이 좋지 않았습니다. 물론 SD 카드야 자주 넣었다 뺐다 안하지만… 만져보면 정말 엉성한 기분 들어요. 색상은 박스와 동일한 색입니다. 사진에선 별로인 것 같은데 실물은 괜찮은 편입니다.

켜면 바로 기본적인 조작을 알려주고 wifi를 세팅해줍니다. 상당히 깔끔하게 설명이 되어 있습니다.

켜자마자 업데이트가 시작되는데요. 펌웨어 업그레이드 시 사이트에서 내려받아 넣는 복잡한 과정 없이 wifi만 되면 바로 업데이트가 가능합니다. 좋은 아이디어네요.

업데이트가 완료되면 이와 같은 홈 화면으로 넘어옵니다. 상단에 iriver story K는 설정에서 변경할 수 있는 부분입니다. 상단에 교보문고 부분을 선택하면 wifi를 통해 교보문고 북스토어로 연결이 되구요. 두번째 표지부분은 선택시 최근에 읽은 책을 바로 열어줍니다. 그리고 아래는 구입목록, 최근목록 등 확인할 수 있는데 구입목록이 가장 먼저 온 것은 좀 불편하더군요. 교보문고에서 책은 많이 구입하시는 분들께는 편리할겁니다.

저해상도라고 해서 글씨 번짐에 대해 얘기가 많은 편인데 아래는 인쇄물이고 위는 스토리K의 화면입니다. 민감하신 분은 이질적으로 느낀다고 하는데 저는 크게 거슬리지는 않았습니다.

폰트 사이즈는 다양하게 조절이 가능합니다. 두번째가 기본 크기설정이며, 총 8개의 단계로 조절 가능하며 크기 비교를 위해 볼펜을 두었으니 가늠해보시기 바랍니다. 저는 가장 작은 것보다 하나 큰 크기가 가장 적당하게 느꼈습니다.

설정에서는 무선 네트워크 설정, 시스템 설정, 개인정보 설정, 전원설정, 시스템 마법사, 기기정보 총 6가지 항목이 있습니다. 아쉽게도 이전에 되었던 기능인 폰트는 직접 넣지 못하네요. 그리고 전부터 락스크린 시 이미지를 직접 지정할 수 있었으면 했는데 그것도 없구요. 아무래도 보급형 모델이라 그런지 그런 기능을 다이어트 했나봅니다.

잠금 설정하면 이렇게 이쁜 그래픽과 함께 잠금상태로 들어갑니다. (잠금 설정 시마다 이미지가 달라집니다.) 별도의 이미지를 설정할 수 없지만 그래도… 이쁜 아트웍이 나와서 기분 좋네요.

그리고 wifi를 통해 교보 북스토어에 바로 접속해 책을 구입할 수 있게 되어 있었습니다. 이전에 구입했던 ebook 도서들도 쉽게 받을 수 있더군요.

그런데?

그런데 좀 의구심이 들었습니다. 기사로는 wifi는 지원하나 웹브라우저는 탑재하지 않았다는 말은 네이티브 어플리케이션에서 위와 같은 포멧을 지원한다는 얘기 같았는데 제가 보기엔 이건 그냥 인터넷 화면 같았습니다. 게다가 글 입력 시 특수문자에 .com이 있었습니다; 그래서 검색란에 검색어 대신 userAgent를 검출해보았더니…

무려 웹킷엔진의 브라우저가 들어있던 겁니다.(크롬, 사파리 등에 들어있죠.) 네이버나 다음도 접속할 수 있지만 각 모바일 사이트가 고대비로 구성되지 않아 그닥 쾌적한 웹브라우징은 아니었지만 웹브라우저는 탑재하지 않았다는 말은 사실과 다르다는 겁니다.

물론 인터넷에서의 컨텐츠를 활용할 수 있게 된다면 아이리버가 가고자 하는 비지니스 로직에 큰 문제가 생기겠죠. 특히 교보문고에서 컨텐츠를 이와 같이 최적화된 형태로 공급해주는 것에 대한 조건으로 오직 교보문고만 접속할 수 있는 단말기가 되어야 했다면… 충분히 이해가 되는 상황입니다. 교보측에서 그렇게 요구해 아이리버는 어쩔수 없었다 일 수도 있겠지만… 다른 방향으로 생각해보면 웹브라우저 오픈해서 더 높은 가격으로 팔지도 모르겠네요. 뭐 어디까지나 가정입니다; 그러니까 그냥 오픈해주지 그랬어요…

사진리뷰다보니 보이지 않는 부분이 있습니다. 바로 전환속도인데요. 확실히 속도에는 많은 개선을 이뤘네요. 물론 누르자마자 팍 바뀌는 정도는 아닙니다만 느리다는 생각이 들지 않습니다. 그리고 키패드를 통해 입력할 때 예전엔 빠르게 입력시 인식이 잘 안되는 경우도 있었는데 지금은 하나도 놓침 없이 바로바로 받는 걸 보니 확실히 CPU가 높아졌다는 점을 느끼게 되었습니다. 이북은 잡다한 기능보다는 속도가 가장 중요합니다.

장점은,

  • 국내에서 쉽게 구입할 수 있다. 저렴하다는 킨들도 오다보면 비싸지니까요.
  • 가격이 저렴한 편.
  • 교보문고에서 편리하게 컨텐츠 구입, 내려받기 가능.
  • 사전 탑재. 저는 쓸 일이 거의 없어 리뷰하지 않았지만 컨텐츠 상당히 좋은 것으로 알고 있습니다.
  • 상당히 개선된 속도. 특히 키 입력시 입력 인식 안되는 경우가 없어져서 위 사전 검색이나 컨텐츠 검색 시 답답함이 전혀 없었음.
  •  휴대하기 간편하다. 크기가 A4 반절보다 작은 편.

단점은,

  • 같은 기기였다는 스토리HD보다 떨어진 해상도… 좀 뿌옇게 느껴지긴 합니다.
  • 전원 버튼 뒤에 있어서 불편.
  • 락스크린 이미지 변경 불가… 저는 이런 유치한걸 원한다구요.
  • 폰트 변경 불가. 읽는 파일의 포맷에 따라 고딕과 명조체가 나오는데 원하는 폰트를 넣지 못해서 좀 아쉽군요.
  • 웹브라우저 좋은거 있으면서도 없다고 하고 인터넷 못하게 한 것ㅎㅎㅎ

총평을 하자면 가격대비 상당히 좋은, ebook만을 위한 기기입니다. 킨들의 경우 광고 플랫폼을 통해 가격을 낮췄지만 아이리버는 광고 없이 가격을 낮췄다는 점에서 높이 샀습니다. 특히 개선된 전환 소요시간, 기존보다 약간 작아진 사이즈로 휴대성을 높였다는 점이 위 리뷰에 없던 추가 점수 요인이네요. 베터리와 관련해서는 그만큼 오래 써보질 못해서… 원래 이북은 잊어질 쯤 충전하니까요. wifi만 많이 쓰지 않는다면 크게 문제 없을 것 같습니다.

마지막으로 바라는 점은 다음 펌웨어에서 웹브라우저 좀 오픈해서 이북에 최적화된 화면으로 뉴스나 미디어를 광고를 넣어도 상관 없으니 볼 수 있게 만들어준다면 좋겠습니다. 웹킷 브라우저 자체가 강력한데… 썩히기 아깝네요.

Published on January 22, 2012

색상을 바꿔요

눈에 편한 색상을 골라보세요 :)

Darkreader 플러그인으로 선택한 색상이 제대로 표시되지 않을 수 있습니다.