겨울이오면 - 조정치

0 notes

PS1 수정기

facebook그 룹중에 ‘9x개발자 그룹’이라는 곳이 있다.

터미널 폰트에 대한 글이 있었는데, 그 글에서 제공하는 터미널 폰트를 깔고 설정하니, 이번엔 콘솔 프롬프트를 고쳐보고 싶었다.

image

바꾸기 전의 모습이다.

원래는 [ user@host ] pwd :$ 이런 느낌으로 하려고 했는데, 하나보니 정보도 얻고 조금 마음이 바뀌었다.

[history] pwd :$ 로 마음을 먹었다.

설정법 여기에 줄줄이 쓰고는 싶지만 나보다 더 잘 설명해준 분들이 많기에 블로그로 대체를 한다.

사실 명령어 몇 개 때리면 되긴하다만, 영어문서들을 처음 봤을 때 색깔은 무슨소린지 하나도 못 알아 들었었다. 그것도 다 위 블로그에 적혀있다.

핵심은 \e[숫자m 이고 마지막에는 \e[m으로 마무리해주면 된다.

원하는 색깔은 위키피디아가서 보면 된다. 콤마로 이루어진 것은 3개 연속으로 쓰니깐 되는 것 같았다.

그래서 바꾼것이 아래다.

image

미적 감각이 있으면 더 예쁘게 꾸몄겠지만, 뭐 그럭저럭..ㅎㅎ

설정은 .bashrc 가서하거나 .bash_profile가서 해도 될 것 같다.

source .bash~~~로 적용하면 된다.

추가1. 라인이 overlap되는 문제.

http://askubuntu.com/questions/111840/ps1-problem-messing-up-cli

1 note

오늘의 밥 리뉴얼.

항상 하던일이 잘 안 풀릴때는, 코딩을 하면서 마음을 다잡아야한다.

그전에 PHP로 했던 오늘의 밥이라는 페이지를 (cgi셋팅을 못하고..) 과감히 node.js-express로 바꿨다.

PHP썼을 때에는 무조건 페이지를 simple_dom_parser를 이용하여서 파싱했었다.

문제가 물론 많았다. 페이지라는게 언제든지 바뀔지 모르기 때문일뿐더러, 속도도 많이 느렸다. 메모리 문제도 있었다. 그전에는 학교 홈페이지가 몇번 다운되었었다. 다운 될 때마다 분석에러가 났다. 사람들은 에러를 싫어하기에 재방문자들은 점점 떨어져 나갔다. 정말 안타까웠다.

꽤 전에 한양 홈페이지가 리뉴얼되면서, xml를 제공하였다. 그럼에도 불만인건 테이블을 고대로 따다가 놓은 듯한 구성이었다. ㅎㅎ 한날짜에 모아주지않고, 반찬을 메뉴라고 표현하고 등등.. (심지어 euc-kr이라고 페이지는 선언했지만 코딩은 utf-8이라 웹브라우저에서 한번에 보기 힘들다. 클릭클릭..)

어쨌든 이번에는 db에 저장해놓고 불러오기로 방향을 잡았다. (저장시간에 홈페이지가 다운되어을 때는 핸들링 하지않았다. 그건 진짜로 일어나면 생각해보도록해야겠다ㅎㅎ) xml을 분석하여서 저장해놓고 페이지마다 불러준다는 취지였다. 이로써 학교는 xml을 이번 주랑 다음 주의 식단만 보여줌에서 자유로워 질 수 있었다.

이렇게 쉽게 풀렸으면 좋겠는데 위에 언급했듯 xml을 식단이 없는 테이블을 식사가 없다고하면 규칙찾기가 더 쉬울텐데, 그렇게 해놓지 않아서 문제가 조금 있었다. 핸들링해야한다. 안돌아가는 머리를 돌리느라 몇시간을 날렸다. 어쨌든 해결하였다.

image

클릭할 때, ajax로 불러오도록 하였다.

아무래도 다 불러오는 것과 많이 고민할 수 밖에 없었는데 한번에 다 불러오면 어짜피 교직원같은거 잘 안볼텐데 하는 생각이 들었다. 또 POPUP을 이용하여서 표시해주는데, 이걸 다 불러주면 팝업 창을 5개나 만들어야한다. 기왕이면 한개를 재활용하는게 더 깔끔하지않을까 싶었다.

이제 코딩하고 남은 숙제들을 나열해보면

  1. 팝업창이 일정하게 뜨지 않는다.
  2. 3쥐환경이면 창이먼저 뜨고 내용이 바뀐다 -> 가운데로 창이 뜨지 않는다.
  3. 코딩을 깔끔하게 하고싶다.

1,2는 해결하고 3번은 더 성장하고 또 리뉴얼해야겠다ㅎㅎ.

1,2는 popup() method를 부름으로서 해결.

-

주소는

http://meal.hannjs.com

밥진수랑 밀진수랑 고민많이했는데, 밥진수는 밥성수랑 포지션이 겹치므로 밀진수로 결정하였다.

빵진수, 씻진수, 챗진수에 이어서 밀진수의 탄생. 또 본업에 집중하고 틈틈히 obj-c를 공부해야겠다.

다음 목표는 맥 appstore입성이다.ㅎㅎ

-

미천한 스펙은

SERVER

node.js

  • express
  • nodejs-mysql
  •  restler
  • date-utils

mysql

CLIENT

jquerymobile

jquery

-

깃허브는 조금더 고치고 한번에 올려야겠다.

웹스톰으로 코딩하다보니, 로컬 혹은 드랍박스로 링크해서 코딩하는게 편하다.

0 notes

Angular.js Tutorial

0 notes

MongoDB array안에 특정한 Object만 삭제.

db가 간단하게 

{ '_id' : ObjectId('1231390123120931') ,
 'comment' : [
{ 'test1' : 'test' , 'test2' : 'test' , 'test3' : 'test' }, { 다 다른거 }, { 다 다른거 }
]
}

라고 치면 

$pull을 이용해서

db.collection.update( { ‘_id’ : ObjectId(‘21312312321312’) } , { $pull : { ‘comment’ : { ‘test1’ : test’ } })

라고 치면 된다. 여튼 핵심은 $pull

0 notes

붕어빵 지도

기능이 잘 된다는 보장은 없지만 데이터가 좀 쌓였으면 하는 마음에서 끄적여 본다.

-

때는 바야흐로 많은 분들이 2학기 기말고사를 기다리는 시즌.

많은 분들이 분주하게 움직이고 있었다.

그 중 마이크로프로세서 실습을 하는 분들이 유독 눈에 띄었다.

실습을 하느라 다들 무언가를 가지고 다녔는데, 실습 실에서는 그 보드를 담으라고 종이서류 봉투를 나누어 주셨나보다.

image

이거.. 이거다..

이것이 너무 붕어빵봉투 같았다..

그래서 맨날 입으로 ‘아 붕어빵지도 만들어야지’ 노래를 불렀다.

그래서 성탄절 특집으로

붕어빵지도 개발에 착수하여서 약 25-29 동안 쉬엄쉬엄 혹은 빡세게 만들었다.

-

주소는

속칭 빵진수닷컴이다.

주변에 붕어빵 포장마차 등록하고 코멘트 남기면 될 것 같다.

코멘트 삭제는 아직 안된다. 아 디비만지는건 너무 귀찮다. 몽고디비가 직관적이라서 좋긴한데..

비번은 물론 암호화해서 저장한다.

-

개발은

Sever

nodejs

  • express
  • mongolian
  • jade

mongodb 

Client

jquery , bootstrap 썼다.

탈 jquery하려는 흔적들이 몇몇있다.

굳이 $쓰면될껄 돌아가는것이 드물게 있다.

bootstarp쓰는 겸 responsive design으로 작성되었다.

1 note

지구 종말의 날 기념 JetBrains사 라이센스 75% 할인.

IntelliJ IDEA는 5만원이라 보류.

링크는 javascript전용 WebStorm $12

지금 글쓴시각부터 약 22시간 남았습니다.

4 notes

Which is the Best Code Editor?

개인적으로는 Emacs와 Eclipse 조합을 좋아한다.

Emacs의 Key binding을 Eclipse에서 지원하기 때문이다.

Emacs를 쓰게된 이유는 단순히 선배의 영향때문이었다.

충분히 넘어갈 여지가 있음에도 Emacs의 Key binding은 terminal에서도 mac에서도(이걸 뭐라표현하지..) 제공되므로 포기할 수가 없다.

다만 Windows에서는 Emacs를 절대 안 쓴다. Sublime Text2에 Emacs key 패키지를 설치하여 한다. Windows에서 Emacs는 생긴게 똥이다.  -______-

0 notes

jQuery에서 Bottom event를 잡아내고 싶을때.

처음에는 접근을 어떤 div에 리스너를 붙여서 div가 보여지면 이벤트를 넣으면 되지않을까 생각했는 데,

너무 골치아픈 얘기같았고,

글을보니 

 var col = $('#col2');
col.scroll(function(){
if (col.outerHeight() == (col.get(0).scrollHeight - col.scrollTop()))
loadMore();
});

라는 답변이 있었다.

조금 수정해서, 원하는 곳에 쓰려고보니 1픽셀씩 엇나가는 경우가 있었다.

그래서 조금 수정해서 near bottom을 찾으려고 보았다.

 $(window).scroll(function() {
if($(window).scrollTop() + $(window).height() > $(document).height() - 100) {
alert("near bottom!"); }
});

그래서 2개를 합쳐서

 var col = $('#col2');
col.scroll(function(){
if (col.outerHeight() > (col.get(0).scrollHeight - col.scrollTop() - 5))
loadMore();
});

 약 5px의 오차를 두어서 near bottom일때 이벤트가 동작하도록 했다.

그것 때문에 올라갈때 로딩하는 경우가 있긴한데 오차범위를 줄이면 해결할 수 있을 듯 하다.

+

  1. 로딩시에 로딩에관한 div(혹은 이미지)을 append시키면 아래 오차범위이상의 컨텐츠가 생겨서 괜찮을 듯.
  2. savvykang 형님의 조언
    - footer가 있다면 Infinite Scroll은 조금 더 고민해보자 (Link)
3 notes