유용한 javascript 예제와 팁

URL 파라메터 받아오기(get PARAM)

http://www.codetreat.com/get-url-parameters-values-with-javascript

$.params = function(paramname){
var value = new RegExp('[\?&]' + param
name + '=([^&#]*)').exec(window.location.href);
return value[1];
}

Jquery 셀렉터 성능(JQUERY SELECTOR Performance)

http://jsperf.com/selectors-perf/6
cssSelector는 id 나 element와 함께 쓰지 않고 단독으로 사용한다.


var obj = document.getElementById("childDiv");
xxx = obj.getElementsByClassName("txtClass");

 

이벤트 처리

preventDefault() : 이벤트의 기본 행동을 막는다.
If this method is called, the default action of the event will not be triggered.
stopPropagation() : 상위 핸들러로 이벤트를 넘기지 않도록 막는다.
Prevents the event from bubbling up the DOM tree,
preventing any parent handlers from being notified of the event.

prepend() - 앞쪽에 내용을 붙인다.(to attach content as a prefix.)
append() - 뒷쪽에 내용을 붙인다. (to attach content as a suffix.)

배열 요소에서 데이터를 받고 싶을 땐 $()로 한번 더 감싼다.
$($(array_selector)[0]).data(something);


두번 submit되는 문제(prevent submit twice)
onclick이벤트 보다는 onsubmit 이벤트를 사용한다.
http://stackoverflow.com/questions/2830542/prevent-double-submission-of-forms-in-jquery

this.element.find('.save').attr('disabled','disabled');

// jQuery plugin to prevent double submission of forms
jQuery.fn.preventDoubleSubmission = function() {
$(this).bind('submit',function(e){
var $form = $(this);
if ($form.data('submitted') === true) {
// Previously submitted - don't submit again
e.preventDefault();
} else {
// Mark it so that the next submit can be ignored
$form.data('submitted', true);
}
// Keep chainability
return this;
};


JSON

Object to String
JSON.stringify(obj);
Parse JSON response
JSON.parse(obj);

JSON.parse()사용시 오류 : Uncaught SyntaxError: Unexpected token o
http://stackoverflow.com/questions/8081701/i-keep-getting-uncaught-syntaxerror-unexpected-token-o
데이터형이 올바르지 않아서 나는 오류이다.
Looks like jQuery takes a guess about the datatype.
It does the JSON parsing even though you're not calling getJSON()--
then when you try to call JSON.parse() on an object, you're getting the error.


loglevel

https://github.com/pimterry/loglevel
원하는 레벨의 로그를 콘솔 메시지로 보낸다.
켜고 끄는 것이 편리하다.
log.enableAll() and log.disableAll() methods.
* log.trace(msg)
* log.debug(msg)
* log.info(msg)
* log.warn(msg)
* log.error(msg)


JavaScript 디버깅

chrome dev tool -> Settings -> General -> Disable cache
Timeline을 이용하면 어떤 코드가 어플리케이션에 부하를 주는지 찾아준다.
메모리 누수가 발생한다면 찾아 개선한다.
Profiles도구에서 Heap Snapshot을 두 개 만들어 comparison view로 비교하면 성능 저하 원인을 찾기 편하다.



by


Tags : , , , , ,

  • 재미있게 읽으셨나요?
    광고를 클릭해주시면,
    블로그 운영에 큰 도움이 됩니다!

자바스크립트용 개발 문서 작성기. JSDOC

주석 달기


/** define namespace
* @namespace category
*/

/** use namespace with hash
* @name category#name
* @constructor
*/

/** use member of for constructor
*@memberof category#name
*/


설정(configuration)

remove all comments.
// You must remove the comments before adding these options to your .json file

{
"tags":{
"allowUnknownTags":true
},
"source":{
"include":[],
"exclude":[],
"includePattern":".+\.js(doc)?$",
"excludePattern":"(^|\/|\\)_"
},
"plugins":[],
"templates":{
"cleverLinks":false,
"monospaceLinks":false
},
"opts":{
"template":"default", // same as -t default
"encoding":"utf8", // same as -e utf8
"destination":"./out/", // same as -d ./out/
"recurse":true, // same as -r
"tutorials":"path/to/tutorials",// same as -u path/to/tutorials, default "" (no tutorials)
"query":"value", // same as -q value, default "" (no query)
"private":true, // same as -p
"lenient":true, // same as -l
// these can also be included, though you probably wouldn't bother
// putting these in conf.json rather than the command line as they cause
// JSDoc not to produce documentation.
"version":true, // same as --version or -v
"explain":true, // same as -X
"test":true, // same as -T
"help":true, // same as --help or -h
"verbose":true, // same as --verbose, only relevant to tests.
"match":"value", // same as --match value, only relevant to tests.
"nocolor":true // same as --nocolor, only relevant to tests
}
}


실행
jsdoc -c conf.json

JSDOC github



by


Tags : , , , , , ,

  • 재미있게 읽으셨나요?
    광고를 클릭해주시면,
    블로그 운영에 큰 도움이 됩니다!

음악 듣는 재미를 찾아준 이어폰. 로지텍 UE900.

작년에 UE Triple.fi 10 pro를 중고로 방출하고, 소니의 이름 모를 이어폰을 사용했습니다.
꽤 만족스러운 이어폰이어서 트리플파이 생각이 별로 안났지요.
헌데 어느날 그 이어폰을 잃어버렸어요.

저가형 번들 이어폰을 써 보았습니다.
G어폰으로 알려진 옵티머스G 용 LG 쿼드비트(QuadBeat)도 써 보고,
대륙의 실수라 불리는 사운드매직 PL30 Plus Pro도 사용해 보았어요.
그런데 영 아쉽습니다.
귀에 이어폰 꼽는 게 전혀 즐겁지 않았어요.
음악은 소음처럼 들리고, 귀도 편하지 않았거든요.
그래서 방출했던 트리플파이를 다시 들여와야겠다고 마음먹었습니다.
그런데 단종되었다네요.
그리고 후속인 UE900이 로지텍에서 나왔습니다.
Ultimate Ears가 로지텍에 합병 되었거든요.
UE는 Ultimate Ears의 약자에요.
트리플파이는 BA 유닛이 3개였는데,
이번에 나온 UE900이란 녀석은 BA 유닛이 4개래요.
거기에다가 착용감도 트파보다 좋다네요.
'아, 이거다!' 싶었지요.
보통 하루 6시간 정도 이어폰을 사용하니,
기왕 쓰는 거 편하고 마음에 드는 녀석을 쓰는 게 좋겠단 들었어요.

comment-'title'

2주일간 숙고해서 산 UE900이 왔습니다.

UE900은 4개의 BA(Balanced Armature) 유닛을 탑재했어요.

우선 BA에 대해 알아보겠습니다.

다이나믹 방식 :
진동판에 코일을 부착하고 이를 자석과 가까이 배치한 코일에 음성신호(교류전기)를 끌여들 코일에 유도된 자력이 자석과 밀고 당기는 힘으로 굴리는 방식
BA 방식 :
BA 무빙코일과의 차이점은 진동판이 코일에 부착되어 움직이는 것이 아니라,
자석과 코일에 인접한 자력으로 말미암 상호반응으로 소리를 낸다는 것입니다.
(자료 출처 : http://skullchristal.tistory.com/137)

다이나믹 방식이 보편적으로 쓰인대요.

UE900의 BA유닛은 아래 역할을 담당합니다.
2개의 BA 유닛 : 저역을 담당
2개의 BA 유닛 : 중역과 고역을 각각 담당


로지텍 UE900 사용기

우선 착용감은 트리플파이보다 좋습니다.
프랑켄슈타인처럼 귀 밖으로 나사가 삐져나오지 않아요.
그러나 UE900음질은 기대에 좀 못미칩니다.
트리플파이만큼 감동이 없어요.
트파엔 뭔가 강렬함이 있었는데 말이죠.
UE900은 비록 트파처럼 야생마 같은 맛은 없지만,
섬세하고 편안합니다.
어찌 되었건 음악 듣는 즐거움을 다시 찾아준 녀석이니까요.
UE900.
이 녀석 정 붙이고 줄 열 번 갈아야 할 때까지 쓰렵니다.



by


Tags : , , , , , , , ,

  • 재미있게 읽으셨나요?
    광고를 클릭해주시면,
    블로그 운영에 큰 도움이 됩니다!

파이썬 Flask 플러그인 안내와 팁.

데이터베이스
Flask-SQLAlchemy : OR매핑을 지원하는 플라스크용 파이썬 SQL toolkit
SQLAlchemy에서 상속(Inheritance) : http://docs.sqlalchemy.org/en/rel_0_7/orm/inheritance.html

SQLAlchemy 컬럼에 데이터가 생성될때나 업데이트 될때 현재 시각을 자동으로 넣는 방법.
updated_at = db.Column(db.DateTime, default=db.func.now(), onupdate=db.func.now())

로그인·보안
Flask-Social : 소셜 네트워크와의 연결을 간편하게 해 줌.
Flask Security(Auth) : 로그인과 권한관리.

관리자 페이지
Flask-Admin : 관리자 페이지를 손쉽게 만들도록 도와줌.

다국어 지원
Flask-Babel : 파이썬용 다국어 지원 Babel의 Flask 플러그인

캐쉬
flask-cache : 캐쉬 설정을 도와줌.

에셋 관리
flask-assets : 각종 static 에셋 관리를 편하게 도와줌.
사용하고자 하는 기능에 따라 추가 모듈이 필요하다. (css 압축, scss사용)
pip install cssmin
pip install pyscss
Flask-Assets extension에서 pyScss컴파일러 사용 설정법

from flask import Flask, render_template
from flask.ext.assets import Environment, Bundle

app = Flask(__name__)

assets = Environment(app)
assets.url = app.static_url_path
scss = Bundle('foo.scss', 'bar.scss', filters='pyscss', output='all.css')
assets.register('scss_all', scss)
And in the template include this:

{% assets "scss_all" %}
{% endassets %}

SCSS file은 debug모드에서도 컴파일 된다.

캐쉬
Flask-Cache : 플라스크에서 캐쉬 사용 하기 쉽게 도와줌.
# Flask-Cache Cache Type
CACHE_TYPE = 'simple' # 개발 시
CACHE_TYPE = 'redis' # 배포 시. redis 서버 구동 필요.
from flask.ext.cache import Cache

app = Flask(__name__)
cache = Cache()
cache.init_app(app, config={'CACHE_TYPE': CACHE_TYPE})

파일 업로드
Flask-Uploads : 파일 업로드 관련 처리를 도와줌.
from flask.ext.uploads import UploadSet
images = UploadSet()
images.__init__('upload', IMAGES)
filename = images.save(files, folder='/images', name='test.')
image_path = images.path(filename)
url = images.url(thumbnail)

텍스트 검색
Flask-WhooshAlchemy : 텍스트 기반 검색을 쉽게 도와줌

오류 추적
flask-exceptional : 오류 추적 서비스인 exceptional를 flask에서 이용 가능하게 도와줌.

전자상거래(e-commerce) [flask용 extension 아님]
stripe : 결제 모듈을 간편하게 시스템에 붙이도록 도와주는 서비스.
satchmoproject : 오픈소스 전자 상점 프레임워크 (satchmo Wiki)
satchless : 프레임워크에 종속적이지 않은 e-commerce용 클래스와 패턴 모음
flamaster : flask용 e-commerce eventing 시스템

Flask에서 JSON 다루기(JSON Handling in Flask)
http://flask.pocoo.org/docs/api/#module-flask.json

import requests
r = requests.get(QUERY_URL)
return r.json
//normal return
return jsonify(username=g.user.username,
email=g.user.email,id=g.user.id)

jsonify a SQLAlchemy result set in Flask
http://stackoverflow.com/questions/7102754/jsonify-a-sqlalchemy-result-set-in-flask
jsonify의 문제는 object가 자동으로 json화 되지 않는다는 것이다.
serialize를 위해 다음을 모델에 추가 해 준다.


def dump_datetime(value):
"""Deserialize datetime object into string form for JSON processing."""
if value is None:
return None
return [value.strftime("%Y-%m-%d"), value.strftime("%H:%M:%S")]

class Foo(db.Model):
//... SQLAlchemy defs here..
def __init__(self, ...):
//self.foo = ...
pass
@property
def serialize(self):
"""Return object data in easily serializeable format"""
return {
'id' : self.id,
'modified_at': dump_datetime(self.modified_at),
# This is an example how to deal with Many2Many relations
'many2many' : self.serialize_many2many
}
@property
def serialize_many2many(self):
"""
Return object's relations in easily serializeable format.
NB! Calls many2many's serialize property.
"""
return [ item.serialize for item in self.many2many]

뷰에서는 아래처럼 사용한다.

return jsonify(json_list=[i.serialize for i in qryresult.all()])

gunicorn서버 사용 설정.

from werkzeug.contrib.fixers import ProxyFix
app.wsgi_app = ProxyFix(app.wsgi_app)

if __name__ == '__main__':
port = int(os.environ.get('PORT', 5000))
app.run()

Blueprint
routing관리에 이용한다.
application/feedback 폴더에 모듈을 넣을 경우.

from flask import Blueprint
mod = Blueprint('root', __name__, url_prefix='') // prefix를 공란으로 두면 root를 의미한다.
mod = Blueprint('feedback', __name__, url_prefix='/feedbacks') // prefix를 채우면 route('/')가 해당 prefix와 같다.
@mod.route('/')

새로운 디렉토리를 만들고 __init__.py파일을 추가해야 import시 인식한다.

모듈을 사용하려면 어플리케이션에서 등록해 준다.

from application.feedback.views import mod as feedbacksModule
app.register_blueprint(feedbacksModule)

파일 여러개 올리기(Uploading multiple files with Flask)
http://stackoverflow.com/questions/11817182/uploading-multiple-files-with-flask


@app.route("/upload", methods=["POST"])
def upload():
uploadedfiles = flask.request.files.getlist("file[]")
print uploadedfiles
return ""

동적으로 생성된 이미지 파일의 url 받기(How to get url for dynamically generated image file?)
http://stackoverflow.com/questions/12034949/flask-how-to-get-url-for-dynamically-generated-image-file

@app.route("/imgs/")
def images(path):
generateimg(path)
fullpath = "./imgs/" + path
resp = flask.makeresponse(open(fullpath).read())
resp.content_type = "image/jpeg"
return resp

mydomain.com/static/test.jpg

from flask import Flask, redirect, url_for

app = Flask(__name__)
@app.route('/')
def index():
generate_img("test.jpg"); #save inside static folder
return '<img src=' + url_for('static',filename='test.jpg') + '>'

Jade
두개의 속성을 지정할 땐 콤마(,)를 잊지 않는다.

script(data-main='js/app', src='js/vendor/require.js')



by


Tags : , , , , , ,

  • 재미있게 읽으셨나요?
    광고를 클릭해주시면,
    블로그 운영에 큰 도움이 됩니다!

최고의 빵집. 신포동 프렌치빌.

입구-'신포동 빵 맛집. 프렌치빌.'


신포동에 맛있는 집 많습니다.
하지만 딱 한 집을 뽑아야 한다면 바로 이 프렌치빌 빵집입니다.
몇 년 전 우연히 들른 뒤로 단골이 되었어요.

프렌치빌 빵 정말 맛있습니다.
식빵도 맛있고 케이크도 맛있고 다 맛있어요.
우선 초콜릿이 들어간 종류는 확실히 맛이 좋아요.
초콜릿 케이크나 초코 빵. 뭐 이런 종류죠.
왜냐면 프렌치빌은 제과점이면서 수제 초콜릿 전문점이기도 하기 때문이에요.
치즈가 들어간 케이크류도 맛이 좋습니다.
프로마쥬, 티라미스, 치즈케이크 다 맛있어요.


프로마쥬-'신포동 빵 맛집. 프렌치빌.'


프랑스 파리에 가면 안젤리나라는 유명한 제과점이 있습니다.
사람들이 한 시간 줄을 서서 몽블랑과 핫초코를 먹는 유명한 빵집이지요.
거기서 몽블랑 먹으면서 프렌치빌 생각이 나더라고요.
‘아. 역시 우리 동네 프렌치빌보다 맛있는 빵집은 없는 건가?’

혹시나 프렌치빌 앞을 그냥 지나칠 일이 생기면 아쉽습니다. :D

동인천에 왔는데, 달달한게 기신다면? 프렌치빌 적극 추천해요.



신포동 맛집. 프렌치빌 위치.

크게 보기



by


Tags : , , , , , , , ,

  • 재미있게 읽으셨나요?
    광고를 클릭해주시면,
    블로그 운영에 큰 도움이 됩니다!

막심 고리키의 희곡. 밑바닥에서.

러시아의 문호 막심 고리키의 희곡입니다.
항상 희곡과 각본이 헛갈렸는데, 이번에 희곡 ‘밑바닥에서’를 읽으며 각본과 희곡에 대한 정의를 찾아보았어요.

연기자가 주체가 되는 미모스(mimos)라는 연극에서 연기자를 위해 작가가 만드는 콤퍼지션이 바로 각본이다. 드라마는 어떤 문학작품을 예상하는 연극으로 그 문학작품이 곧 희곡이다. 드라마 역시 배우가 창조하는 예술이기는 하지만, 그들은 독자적으로 이것을 창조할 수 없기 때문에 극작가와 협동하지 않으면 안 된다. 그래서 희곡을 흔히 드라마라고 부르기도 한다.
- 출처 : [네이버 지식백과] 희곡 [drama, 戱曲] (두산백과)

즉 연기자가 주체가 되는가, 작품이 주체가 되는가의 차이군요.

희곡은 소설과 또 다른 재미가 있습니다.
공연장이라는 한정된 공간에서 정해진 시간 동안 이야기가 전개되기 때문에,
소설처럼 마음껏 양념을 치기가 어렵지요.
개성이 뚜렷한 등장인물들 위주로 풀어나가는 희곡, 밑바닥에서.
한 편의 연극을 관람한 기분입니다.
막심 고리키의 내공이 느껴지네요.
밑바닥에서 연극 상연 소식이 들리면 한번 보러 가야겠습니다.

헝가리 현대 미술관-'밑바닥에서(The Lower Depths)'

밑바닥에서 - 책갈피

노동이 만족스러우면, 생활은 나아지게 마련이지! 대신 노동이 의무가 되면, 삶은 노예가 되는거야!
- 사틴

일 많이 하기로 인간의 가치가 정해진다면… 말이나 소보다 더 훌륭한 사람은 아무도 없게?… 소나 말은 죽도록 하지만 말이 없잖아!
- 페펠

스스로가 자신의 주인인 자… 누구에게도 의지하지 않고, 남을 수단으로 삼을 생각이 전혀 없는 자에게는 거짓말이 무용지물이야! 거짓말이 노예나 주인의 종교라면… 진실은 자유로운 인간의 신이라고 할 수 있지!
- 사틴

누구나 자신을 위해 살다 보면 보다 나은 삶을 살게 될 거라고 생각하는 거야! 백 년이 지나고, 또 백 년이 더 지나면 아마도 사람들은 지금보다 훨씬 더 나은 삶을 살게 되는 거지, 결국엔!
- 루카



by


Tags : , , , , , , , ,

  • 재미있게 읽으셨나요?
    광고를 클릭해주시면,
    블로그 운영에 큰 도움이 됩니다!

블로그 글 찾아보기를 편리하게! 월풍서가(月風書架)

블로그를 시작한 지 꽤 오랜 시간이 흘렀습니다.
가끔 예전에 쓴 글을 보고 싶은데, 글 제목이 생각 안 날 때가 있더라고요.
그래서 페이지를 하나 만들었습니다.
월풍서가(月風書架)
분류별로 글을 정리해 월풍도원 블로그 글을 찾아보기 쉽게 하기 위함입니다.
우선 책 감상평만 정리하였지만,
나머지 부분도 체계적으로 정리해 나갈 생각입니다.

오래전 글을 다시 읽는 재미가 쏠쏠합니다.
‘그 땐 저런 생각을 하고 살았구나.’
‘저건 불과 반 년 전인데도 낯설구나.’
이렇게 저를 돌아보며 블로그를 계속 써온 것에 뿌듯함을 느꼈어요.
월풍서가(月風書架)'
저에겐 지난날을 곱씹는 반추의 공간으로,
블로그를 찾으시는 분들께는 편리한 정보 검색 공간이 되게 하겠습니다.

저의 블로그를 찾아주셔서 고맙습니다.



by


Tags : , , , , , , ,

  • 재미있게 읽으셨나요?
    광고를 클릭해주시면,
    블로그 운영에 큰 도움이 됩니다!

꿋꿋한 동네 맛집. 국제 경양식.

오래전 인천 지역신문에 맛집으로 소개되었던 집입니다.
고등학생 무렵으로 기억되는군요.
그땐 딱히 인상적인 맛을 느끼지 못했습니다.
돈스를 먹었던 기억인데요.
동인천 부근에 워낙 값싸고 맛 괜찮은 분식집이 많았던 터라,
국제 경양식의 음식 맛이 좋다는 생각이 들지 않았었지요.
그리고 세월이 흘러, 십 년도 더 지나서 다시 이 집을 찾았습니다.
일요일은 문을 닫는 것 같아요.
가보려고 처음 마음먹었던 일요일엔 문이 굳게 닫혔었고,
그다음에 또 생각이 나서 적어놓은 번호로 전화를 걸었을 때도 일요일엔 응답이 없었거든요.
그래서 토요일에 통화해서 문 열었다는 걸 확인하고 갔습니다.

간판-'국제경양식 (International Restorant)'

낡은 건물에 허름한 간판.
‘국제 경양식.’

메뉴-'국제경양식 (International Restorant)'

음식 가격은 분식점과 일반 양식당의 중간 가격입니다.
주문할 때 이런 질문을 하시죠.
“밥으로 하시겠습니까? 혹은 빵으로 하시겠습니까?”
경양식집이 아니고서야 이런 질문을 하지 않지요.^^;

빵-'국제경양식 (International Restorant)'

저는 빵이 좋아요.
사과잼과 버터가 함께 나오더라고요.
동네 슈퍼에서도 파는 잼과 버터지만,
빵이 느끼하지 않고 부드러워 함께 먹으면 맛이 좋습니다.
빵을 한 조각 집어 먹으니 주요리가 나오는군요.

함박스테이크-'국제경양식 (International Restorant)'

비프커틀릿-'국제경양식 (International Restorant)'

함박스테이크와 비프커틀릿입니다.
간단한 채소가 곁들여 나오는데요.
당근을 참 잘 삶았습니다.
간이 적절하게 잘 되었네요.
마카로니와 마요네즈의 기본 조합도 맛이 좋네요.
특별하진 않아도 내공이 쌓인 집이란 느낌이 들었습니다.

비프커틀릿은 그냥 그랬어요.
하지만 함박스테이크는 국제 경양식만의 특별함이 있습니다.
얇게 저민 양파를 고기 위에 올리거든요.
씹히는 맛이 좋습니다.
보통 함박스테이크는 햄버거 고기만 쓸쓸히 나오거나,
달걀부침 정도 올라가 있잖아요?
국제 경양식엔 분명 고유의 조리법이 있습니다.

어디 멀리서 국제 경양식 때문에 찾아온다면 기대보다 소박한 맛에 실망할지도 몰라요.
그러나 어찌어찌 지나가다 보니 근처라서 들른다면 만족스러울 겁니다.
뭐 사람마다 맛의 기준은 다르지만, 기본기가 잘 갖추어진 집이거든요.
음식에 어떤 매력도 없다면 40년도 더 경양식집을 운영하기 어려웠겠지요? :D

국제 경양식 위치

크게 보기



by


Tags : , , , , , ,

  • 재미있게 읽으셨나요?
    광고를 클릭해주시면,
    블로그 운영에 큰 도움이 됩니다!

생소한 맥. OS X에 익숙해지기.

최근에 맥(Mac)을 써볼 기회가 있었습니다.
익숙하지 않은 환경이라 생소했어요.
그렇지만 조금 만지다 보니 금방 익숙해집니다.
다음에 또 맥을 쓰게 되면 참고하려고 사용환경을 정리해봤어요.

유용한 앱

일반
Plain Text : 리치 텍스트를 일반 텍스트로 변환할 때 씁니다.
Textwrangler(http://www.barebones.com/products/textwrangler/) : 가벼운 코드 편집과 텍스트 편집에 씁니다.
Degrees : 메뉴바에 표시되는 날씨 앱입니다.
Chrome : 웹 브라우져 입니다.
Evernote(https://evernote.com) : 메모할 때 좋습니다.
CheatSheet(http://www.cheatsheetapp.com/CheatSheet/) : 맥 단축키를 익히기 좋습니다.
Vox MP3 player(https://www.macupdate.com/app/mac/24852/vox) : MP3플레이어로 메뉴바에 플레이 버튼이 생겨 좋습니다.
Alfred(http://www.alfredapp.com/) : 빠른실행, 검색등 다양한 기능을 담은 유틸리티입니다.
Dropbox(https://www.dropbox.com/) : 파일 저장을 위한 클라우드 서비스입니다.
uTorrent(http://www.utorrent.com/intl/ko/downloads/mac) : 토렌트 클라이언트 입니다.

개발
JSRef : CSS / HTML5 / Javascript 사전입니다.
Pycharm : 파이썬 개발도구입니다.
Iterm(http://www.iterm2.com/#/section/home) : 맥용 터미널 입니다.
Xcode : 맥용 개발 도구 모음입니다.
MariaDB(https://mariadb.org/en/) : 오픈소스 데이터베이스입니다.
Mysql Workbench(http://www.mysql.com/products/workbench/) : Mysql에서 제공하는 데이터베이스 설계 도구입니다.
homebrew(http://mxcl.github.io/homebrew/) : 패키지 설치를 쉽게 도와줍니다.
홈브루 설치법 : ruby -e "$(curl -fsSL https://raw.github.com/mxcl/homebrew/go)"
홈브루 패키지 정보 업데이트 : Brew update formula
홈브루 업데이트 : brew update
홈브루에서 파이썬 설치(https://github.com/mxcl/homebrew/wiki/Homebrew-and-Python) : brew install python
홈브루에서 마리아db 설치 : brew install mariadb

단축키

fn + ↑ : Page Up
fn + ↓ : Page Down
fn + ← : Home
fn + → : End
fn + delete : windows del키
Option(alt) + enter : 한자
Command + Option + ESC : 강제 종료
Command+Shift+3 : 캡쳐 파일 저장
Command+Ctrl+3 : 클립보드로 저장
Command+Shift+4 : 영역 지정 캡쳐
Command+Ctrl+4 : 어플리케이션 윈도우 캡쳐

Finder
Command+Shift+N : 새 폴더
Command+Shift+G : 폴더로 이동

사전
Command+Ctrl+D : 사전에서 찾기.(커서를 원하는 텍스트에 두고 누른다. 크롬등의 웹 브라우져에서도 지원한다.)
* 추가할 사전이 있을 때 : /Library/Dictionaries 에 압축 해제

사용자 정의 단축키 설정
automator -> service -> utility -> run shell script
명령어 입력후 키보드 서비스 단축키 설정

기타 팁

맥 부팅 소리 끄기
sudo nvram SystemAudioVolume=%80
맥 부팅 소리 켜기
sudo nvram -d SystemAudioVolume

맥에서 패스 잡기
모든 유저에게 적용할 땐 /etc/paths에,
단일 사용자에 정용할 땐 ~User/.bash_profile에 아래를 추가해 준다.
PATH=$PATH:/my/new/path/
(http://blog.just2us.com/2011/05/setting-path-variable-in-mac-permanently/)

맥 초기화
맥 전원을 끈다.
맥 전원을 켠 후 Command+R키를 누른다.
OS X를 재설치 한다.

맥에서 파이참 디렉토리 위치
/Users/dorajistyle/Library/Preferences/PyCharm20



by


Tags : , , , , , , ,

  • 재미있게 읽으셨나요?
    광고를 클릭해주시면,
    블로그 운영에 큰 도움이 됩니다!

마르크스, 니체, 프로이트를 말한다. 철학의 끌림.

글이 재미없습니다.
그럼에도 끝까지 읽은 것은 관심 분야이기 때문이겠지요.
철학에 대한 갈증이 조금만 덜 했어도 몇 장 읽고 접었을 책입니다.
이 책의 목적은 지식의 전달이 아니라 단순히 지식의 배출이 아닐까 생각이 듭니다.
독자를 위한 배려가 전혀 없는 책이라고 느껴졌어요.
문학처럼 유려한 문장까지는 아니더라도, 최소한 무슨 이야기인지는 알아듣게 설명을 해야지요.
몇 번을 읽어야 이해가 될 문장이 수두룩합니다.
예를 들면 아래와 같은 문장입니다.

우연히 말을 타다가 떨어져서 가슴을 다치는 바람에 제대할 때까지 니체는 병으로 휴가를 얻을 수 있었다. (원문)
->
니체는 말을 타다 우연히 떨어져 가슴을 다치는 바람에 제대할 때까지 휴가를 얻었다. (수정 예시)

문장을 조금만 손봐도 무슨 말을 하는지 이해가 쉬울 텐데요.
독자인 저의 기반지식이 부족해서 이해가 안 되는 부분은 어쩔 수 없습니다.
하지만 일반적인 부분까지 일부러 어렵게 꼬아놓을 필요는 없지 않을까요?
더욱 놀라운 건, 이 책이 개정 증보판이라는 겁니다.
만약 다시 한번 개정 증보판을 내실 계획이라면,
이런 매끄럽지 못한 문장들도 개선하면 좋겠습니다.

사실 내용만 놓고 본다면, 괜찮은 책입니다.
마르크스, 니체, 프로이트.
3인 사상가의 일생과 주요 주장, 비판까지 폭넓게 담았지요.
특히 사상가의 사상이 초기부터 후기까지 변화하는 모습을 담은 부분이 좋았습니다.

철학의 끌림.
애증의 책이네요.^^;

헝가리 부다페스트 현대 미술관-'철학의 끌림'

철학의 끌림 - 책갈피

지금까지 철학자들은 다양한 방법으로 세계를 해석하기만 했다. 문제는 세계를 변화시키는 것이다.”
- <포이어바흐 테제>, 마르크스

전통적인 철학의 네 영역

  • 형이상학 - 사물들(있는 것들: 존재자들)의 관계와 사물들의 근원(원천)이나 원리 및 사물들과 세계 원리와의 관계 및 성질들을 탐구하는 영역이다.
  • 인식론 - 인간의 인식(앎) 능력의 성격, 한계, 인식의 주관성과 객관성 및 보편성 등을 탐구한다.
  • 윤리학 - 실천적 행위에 대한 도덕판단의 의미와 가치를 탐구한다.
  • 미학 - 미적 체험과 아울러 미적 기준, 미적 활동, 예술과 예술작품의 미적 가치 등을 탐구한다.

네 가지 영역 이외에도 부차적으로 논리학과 철학사를 기본 탐구영역으로 포함하기도 한다.


프로이트의 리비도의 물리적 및 정신적 구성요소

  • 자극의 내면적이며 유기적인 원천
  • 자극의 일정한 긴장 내지 강도
  • 긴장이나 강도의 해소(완화)로부터 생기는 쾌감
  • 쾌감을 통해서 성립하는 일정한 목표
  • 그러한 목표를 실현할 수 있는 대상


프로이트의 개인의 성적 발달단계 5단계

  • 구강기(신생아~1세) - 엄마의 젖을 제대로 먹지 못하고 차가운 젖병만 빨고 자란 아기는 나중에 성인이 되어 원만한 성격이 형성되지 못한다.
  • 항문기(2세) - 엄한 변훈련을 받은 아이는 어른이 되어 인색하고 강박적인 항문파지성격을 가지고, 방만한 배변습관을 가진 아이는 커서 잔인하고 파괴적이며 무질서한 항문파열 성격을 띤다.
  • 성기기(3~6세) - 3~4세 아이는 남녀의 해부학적 차이에 대해 강한호기심을 보이고 때로는 불안해하고 혼란에 빠지기도 한다. 5~6세에 이르면 남자아이는 오이디푸스 콤플렉스를 그리고 여자아이는 엘렉트라 콤플렉스를 느낀다.
  • 잠복기(6~7세부터 12세) - 입, 항문, 성기에 관한 생각과 충동은 점점 무의식 안에 억압되고 그런 것들을 직접 행동으로 나타내거나 말로 표현하는 것은 허락되지 않는다.
  • 사춘기(12~13세) - 여자는 유방과 둔부가 커지며 초경을 경험한다. 남자는 변성과 음모를 경험하게 된다.

주요 철학자

그리스 철학

  • 소크라테스
  • 플라톤
  • 아리스토텔레스
  • 플로티노스
  • 에피쿠로스

중세 철학

  • 아우구스티누스
  • 토마스 아퀴나스

르네상스 철학

  • 로크
  • 데카르트
  • 스피노자

18,19세기 철학

  • 칸트
  • 헤겔


더 읽을 거리

  • 마르크스(Karl Heinrich Marx, 1818-1883)
    <국민경제학과 철학> <공산당 선언><자본론>
  • 바쿠닌(Mikhail Aleksandrovich Bakunin, 1814-1876)
    <신과 국가><국가와 무정부>
  • 니체(Friedrich Wilhelm Nietzsche 1844-1900)
    <비극의 탄생><이 사람을 보라>
  • 프로이트(Sigmund Freud,1856-1939)
    <꿈의 해석 The Interpretation of dreams><정신분석학 입문 강의>
  • 들뢰즈(Gilles Deleuze, 1925-1995)
    <앙티 오이디푸스<경험주의와 주관주의자>
  • 라캉(Jacques Lacan, 1901-1981)
    <에크리 crits> <자크 라캉 : 삶의 개요, 철학체계의 역사 [E.루디네스코]>



by


Tags : , , , , , ,

  • 재미있게 읽으셨나요?
    광고를 클릭해주시면,
    블로그 운영에 큰 도움이 됩니다!

추억의 맛집. 화평동 세숫대야 냉면. 할머니 냉면.

고등학생 시절 화평동에 자주 갔습니다.
무더운 여름.
이천 오백 원이면 세숫대야 냉면 한 그릇으로 더위를 달랬지요.
성장기라 엄청난 양의 음식을 흡입했었는데,
이곳에서 냉면을 먹으면 배를 두들기고 나왔어요.
사리도 먹고 싶은 만큼 얼마든지 먹어도 되었거든요.
그 추억이 생각나서 냉면집을 찾았습니다.
화평동 골목의 수많은 냉면집 중 제일 마지막 집입니다.
다른 냉면집과 맛 차이는 크지 않지만,
그래도 이 집 냉면이 제일 맛있었던 기억을 더듬어 왔지요.

메뉴-'인천 맛집 화평동 할머니 냉면'

오랜만에 오니 가격이 두 배로 뛰었습니다.
하긴 십 년도 더 지났으니 그럴 만도 하지요.
옛날엔 비냉이 오백 원 정도 비쌌던 기억인데 이젠 물냉과 가격이 같네요.
그래도 역시 냉면은 물냉이죠!
“물냉 주세요!”

물냉면-'인천 맛집 화평동 할머니 냉면'

커다란 그릇에 냉면이 담겨 나옵니다.
냉면의 맛을 좌우하는 건 양념과의 조합이에요.
식초와 겨자. 그리고 열무김치를 적당히 넣어줍니다.
그리고 잘 섞으면 맛 좋은 냉면이 완성됩니다.
“후루룩!”
성공입니다.
맛있어요.
특히 열무김치가 참 맛있습니다.
시원한 열무 냉면이 당기신다면 한 번 가보세요.
양을 많이 드시는 분은 곱빼기를 드시는 것이 좋습니다.
사리를 따로 시켜 먹으면 맛이 없거든요~

화평동 원조 할머니 냉면 위치

크게 보기



by


Tags : , , , , , ,

  • 재미있게 읽으셨나요?
    광고를 클릭해주시면,
    블로그 운영에 큰 도움이 됩니다!

존경합니다. 고리키 단편집.

문학은 언제나 정치적입니다.
작가가 추구하는 성향이 담겨있지요.
그 성향이 어떻든 자신에 대한 확신이 없다면 글에도 힘이 없습니다.
고리키의 글에는 자신의 메시지가 뚜렷이 드러납니다.
짧은 단편 한편 한편에 목소리를 잘 담은 고리키가 정말 존경스럽습니다.

이 단편집의 특징은 딴 사람 이야기가 많다는 겁니다.
집시 로이코 조바르와 랏다의 사랑 이야기, 독수리의 아들 라라.
심장을 뽑아 길을 밝힌 단코 이야기는 설화를 바탕으로 하였고,
다른 단편들은 관찰자가 주인공을 지켜보는 시점에서 쓰였어요.
대체로 동네 어르신에게 듣는 옛날이야기처럼 재미있습니다.
소설 속 인물들이 생동감 있거든요.
참 재미있는 책입니다.

러시아 소설에 자주 나오는 사샤 (Саша [Sasha])가 뭔지 궁금하여 찾아봤습니다.
찾아보니 남자이름 알렉산드르(Александр [Aleksandr]) 및
여자이름 알렉산드라(Александра[Aleksandra])의 애칭이라는군요.
단편 중 ‘코노발로프’의 주인공 이바노비치는 알렉산드르가 아닌데도 사샤라고 불리는 걸 보면,
이름에 크게 상관없이 사용하는 애칭인가 봅니다.
혹시 번역하신 최윤락 박사께서 이 글을 보신다면 댓글을 달아주시면 좋겠네요.^^;

노르웨이 베르겐-'고리키 단편집'

고리키 단편집 - 책갈피

그는 항상 하나님 말씀 안에서 삶을 살아야 한다고 설교하더군. 하나님께 순종하면 원하는 모든 걸 들어 주실 거라고 말이야. 그런데 정작 자신은 다 헤진 남루한 옷을 입고 있기에, 내가 하나님한테 새 옷이나 한 벌 주십사 해보시지 그러냐고 했더니, 버럭 화를 내며 욕을 마구 퍼부어 대면서 날 내쫓는 거야. 그러면서도 남을 용서하고 사랑해야 한다고 설교하더군. 그러니까 내가 좀 무례하게 굴었다고 하더라도 용서해 줘야 하는 거 아냐? 선생이란 작자들도 다를 건 하나도 없어. 아껴 먹으라고 가르치면서도 정작 자신들은 하루에도 열 배나 더 처먹거든.
- 마카르 추드라

생각만 한다고 해서 길 가운데 놓인 바위가 치워지지는 않습니다. 생각과 고민에 시간과 힘을 낭비해서야 되겠습니까? 일어납시다! 숲을 헤치고 나아갑시다! 끝은 반드시 있을겁니다. 이 세상에 끝이 없는 걸 보신 적이 있습니까? 갑시다, 자, 여러분!
- 단코

내가 무슨 생각을 한 줄 알아요, 여기 오는 동안? 아저씨를 노로 쳐서 돈을 빼앗고 시체를 바다 속에 버리자…. 어때요? 누가 아저씨를 찾겠어요? 찾는다 해도 누가 죽였는지 관심을 갖는 사람은 하나도 없을 거예요. 이 땅에서 아무 쓸모 없는 인간이 하나 죽었기로서니 누가 죽였든 무슨 상관이냐고요!
- 가브릴라

자신의 창자를 채울 단 몇 근의 빵을 얻기 위해 수천 근의 빵을 어깨에 짊어지고 무쇠 선박의 뱃속을 드나드는 인간들의 긴 행렬은 눈물겹도록 우스꽝스럽다.
- 첼카시 중

비렁뱅이! 돈이 뭐라고 그렇게 자신을 학대하지? 탐욕스럽기는…. 분수도 모르고 돈 때문에 자신을 팔아?
- 그라시카 첼카시

인간은 각자 자신이 자신의 주인이야. 그렇게만 살면 누가 죄를 짓겠어?
- 이바노비치 코노발로프

물어보고 싶은 것이 있어. 삶의 질서에 대한 책이 없을까? 어떻게 살아야만 하는지 그 방법을 가르쳐주는 책 말이야. 해야 될 일과 해서는 안 될 일이 어떤 것인지 난 알아야 겠어. 난 늘 내가 저지른 일로 인해 혼란스러워. 처음엔 좋은 일이라 생각하고 하지만 나중엔 해서는 안 될 일로 밝혀지거든.
- 이바노비치 코노발로프

언제나 인간은 누군가에게 자기의 사랑을 쏟고 싶은 욕망이 있다. 비록 그 사랑이 묵살되고나 더럽혀질지라도 그런 것은 전혀 상관 없다. 인간은 이웃의 생명을 자기의 사랑으로 망칠 수도 있다. 왜냐하면 사랑은 하면서 애인을 존경은 하지 않기 때문이다.
- 스물여섯 사내와 한 처녀 중



by


Tags : , , , , , , , ,

  • 재미있게 읽으셨나요?
    광고를 클릭해주시면,
    블로그 운영에 큰 도움이 됩니다!

탱고? 땅고.

2008년에 스윙을 시작했습니다.
한 재미있게 출 땐 주 3빠도 다녔는데,
최근엔 빠에 언제 간지 기억도 안 나는군요.
작년 겨울쯤에 한 번 간 게 마지막 출빠였던 거 같네요.
딱히 춤에 관심이 떨어진 건 아닌데,
예전만큼은 아닌가 봐요.

‘스윙 말고 다른 춤을 춰 보면 다시 그 열정이 살아날까?’
이런 기대를 고 땅고를 시작했습니다.
사실 땅고는 꼭 배워보고 싶은 춤이었어요.
가끔 영화나 TV에서 땅고를 접할 때면,
‘이야~ 멋있다.’는 생각이 들었거든요.
8주 동안 초급 수업을 들어보니, 스윙과 뭐가 다른지 약간 알겠습니다.
자유분방한 스윙에 비해 좀 엄격하다고 할까요?
우선 땅고엔 LOD(Line Of Dance)라는게 있습니다.
춤을 출 때 줄을 맞추어 반 시계 방향으로 돌아야 하지요.
피치 못할 사정이 아니라면 바깥쪽에 자리를 잡은 사람은 바깥에서 돌고,
안에 자리를 잡았으면 안쪽에서 쭉 돌아야 합니다.
고속도로 주행할 때처럼 앞사람과의 속도와 간격을 잘 맞춰 따라가야 하고,
뒷사람을 위해선 갑자기 멈춘 다던가 예상치 못한 행동을 지양해야 합니다.
땅고는 3년은 열심히 춰야 초보에서 벗어난다고 하니, 우선 3년은 춰봐야겠지요?

아래는 초보 땅게로의 관점에서 정리해본 땅고 초급 용어와 패턴 정리입니다.
3년 후에 패턴에 대한 정의가 지금과 어떻게 달라질지 궁금하네요.:D


땅고 용어 정리

땅고(tango) : 유럽에서 아르헨티나와 우루과이로 이주한 이주민들로부터 시작된 음악이다.
보통 두 대의 바이올린, 피아노, 더블베이스, 그리고 반도네온에 의해 연주된다. (출처 : 위키백과)
땅게로(Tanguero) : 남자. 리딩하는 쪽. 한국에선 보편적으로 리더를 지칭하는 말로 쓰이나, 사실 땅고의 남성 고수에게 붙는 칭호라고 함.
땅게라(Tanguera) : 여자. 리딩받는 쪽. 한국에선 보편적으로 팔로워를 지칭하는 말로 쓰이나, 사실 땅고의 여성 고수에게 붙는 칭호라고 함.
(출처 : 땅게로/땅게라의 명칭에 대하여.)
LOD(Line Of Dance): 춤을 추는 방향. 반 시계 방향으로 돈다.
딴따(Tanda): 탱고에서 한번 홀딩 후 춤을 추는 단위. 한 파트너와 세 곡을 춘다.
꼬르띠나(Cortina) : 딴따와 딴따 사이에 땅고와 다른 노래를 틀어 플로어 정리의 시간을 가진다.
까베쎄오(Cabeceo) : 춤을 추고 싶은 상대와 눈을 마주친후 고개를 옆으로 까딱 하여 춤을 청하는 방법.
꼬르띠나때는 춤을 청하지 않고, 곡이 시작되면 들어보고 청한다.

땅고 초급 패턴 정리

걷기 : 자연스럽지만 무게 중심을 확실히 하고 가슴이 먼저 나가고 발이 따라간다.
6살리다,8살리다 : 전후좌우로 걷는다. 무게중심을 확실히 옮겨줘야 땅게라가 리딩을 받는다.
락스텝: 걸음 중간에 락을 걸어준다. 방향 전환 등에 사용한다.
끄루사다 : 살리다 중 땅게라의 두 발을 크로스 시키면서 무게중심을 바꾸는 동작이다.
오쵸 꼬르따도 : 오초를 중간에 끊어 방향 전환 등에 사용한다.
오쵸 : 피벗을 통해 8자 모양으로 스텝을 밟도록 리딩한다.
히로 : 땅게라와 상체의 평행을 유지하며 땅게로 주위를 빙빙 돌도록 리딩한다.
메디아루나 : 오초에서 히로 들어간다.(?)
볼레오 : 리딩 중간에 상체를 멈추어 땅게라의 다리가 관성으로 허공에 던져지도록 한다.



by


Tags : , , , , , , , , ,

  • 재미있게 읽으셨나요?
    광고를 클릭해주시면,
    블로그 운영에 큰 도움이 됩니다!