눈 앞에 닥쳐야 뭐든 하는 내 성격

뜬금없이 무슨 소리냐 하시겠지만, 오늘은 그 저의 개인적인  얘기를 좀 해볼까 합니다.

저는 어떤 일이든 꼭 닥쳐야 하는 나쁜 버릇이 있습니다. 생각해보니 제가 평소에는 의지도 약하고 그렇다고 근면 성실하지도 않기 때문에,(아 사실 평소뿐만 아니라 항상;; ) 평소에는 팽팽 놀다가 어떤 해야하는 일이 생기면 그때부터 미친듯이 해결하게 되는 경우가 많았더라구요. 그렇게 해서 조금이라도 할줄 알게 된것이 자바스크립트와 git등등이 있습니다. 물론 거의 아는 상태가 없는 기초부분만 파악한거긴 하지만 만질 수는 있게 되었다는것이죠;

문제는 닥치기전부터 공부해야지 해야지 생각은 계속 하면서도 하지 않는다는 것입니다. 언제쯤 철이 들어서 이 나쁜 버릇이 고쳐질지도 모르겠습니다. 항상 열심히 하는 분들을 보면 많이 부럽기도 하구요. 부럽지만 난 못해! 귀찮어! 안해! 이게 저의 나쁜점일지도 모르겠습니다.

그런데 이것이 또 나쁜점만 있느냐; 또 그런것같지도 않은게.. 사실 닥쳐서 하는것만큼 효율이 높은것도 없죠… 제 경험상 일을 급하게 해야하는 순간에는 집중이 잘되니까 시간낭비가 줄어듭니다. 이것을 잘이용해 보고 싶은데… 딱히 떠오르는 좋은 방법이 없드라구요.

많은 웹 퍼블리셔 분들이 자바스크립트를 배우는것을 힘들어 하십니다. 하지만 많은 분들이 배우고 싶어하죠. 책도 사보고 스터디도 참여해보고 많은 시도들을 해봅니다. 그래도 안되는 경우가 있다면 자기의 밥줄과 연관시켜서 억지로 해야할 상황을 만들어보는건 어떨까 싶습니다. 그럼 어떻게는 해결을 할것이고, 그게 계기가 되어서 자바스크립트를 익히는 발판이 될테니까요..

그러나 밥줄을 연결시키는게 쉬운건 아닙니다. 여건이 그렇게 잘 주어지는 경우도 드물구요.. 그럴때는 자기만의 프로젝트를 해보는것을 추천합니다만 이럴때는 무서운 멘토 한명쯤은 있는게 좋을것 같습니다. 그래야 억지로라도 할 수 있는 환경이 조성될테니까요.

하지만 무엇보다 제일 좋은 방법은 그냥 자발적으로 미리 준비하고 공부하는것입니다. 제가 말씀드리는 방법은 저처럼 의지가 약한사람에게 어느정도 해당되는말이니까요 🙂

“난 언제하나”, “하긴 해야하는데….” 라는 마음가짐으로는 아무것도 이룰수없습니다. 자의가 되었던 타의가 되었던 실천이 제일 중요합니다.

이글은 요즘 너무 대충사는 저에게 해당되는말이기도합니다.

새해에는 실천하는 행동하는 분들이 많았으면 좋겠습니다.
저는 올해 술을 줄이는 실천을 해보려합니다. 캬캬캬 =_=

겁네 오래된 맥북을 팔아봅니다.

2006년 말경에 저에게 지름 당해와서 제가 아끼고 사랑하던 맥북을 팔려고 합니다.

일단 스팩부터

Late 2006 – MA699LL/A

  • CPU : 1.83 GHz Intel “Core 2 Duo” processor (T5600), with two independent processor “cores” on a single silicon chip, a 2 MB shared “on chip” level 2 cache, a 667 MHz frontside bus,
  • Memory : 512 MB of 667 MHz DDR2 SDRAM (PC2-5300) 2GB 로 업글
  • Harddisk :60.0 GB Serial ATA (5400 RPM) hard drive with “Sudden Motion Sensor” technology 320GB(7200RPM) 업글
  • ODD : an 8X slot-loading DVD-ROM/CD-RW “Combo” drive
  • Graphic :an Intel GMA 950 integrated “graphics processor with 64 MB of DDR2 SDRAM shared with main memory”, and a 13.3″ widescreen TFT active-matrix “glossy” display (1280×800 native resolution).

이정도 놈입니다.

그러나 외관에 문제가 많습니다. USB쪽 나사가 좀 빠져있고  상판이 약간 들려있으며 각종 스티커가 붙어있습니다(3개정도)
그러나 얼마전에  배터리를 새로 갈아서 배터리 문제는 전혀 없고 성능상의 문제도 전혀없습니다.

때문에 테스트용도 정도의 노트북으로는 전혀 문제가 없습니다. 맥을 입문 하시는 분들이 사용해도 좋을것 같습니다:)

보나스로 vga 어댑터 드립니다. 구형 너덜너덜한 블루투스 마이티마우스도 원하면 드립니다.!!

가격은 40만원 입니다. 제가 오프라인으로 아는사람이면 40만원 받고 작은 술 바로 쏩니다 ㅋㅋㅋ
“심금”을 울리는 사정이 있다면 가격 인하 가능합니다 ㅎㅎ

연락은 코멘트나 제 메일주소 (mydeute[at]gmail.com)으로 주시면 됩니다.

만약에 안팔리면 그냥 제가 두고 쓸랍니다 ~_~ 사진은 집에가서 올려드릴께요…

좋은분께서 구매해가셨습니다 🙂

부팅모습맥북상단 모습 기스가 좀많음나사가 빠진모습나사가 빠진 모습스티커 =_=스티커 =_=전면모습

소공동 롯데백화점 앞 버스정류장에서 왜 택시가…

원래 IT관련 말고는 글을 안썼으나 오늘은 좀 다른 주제의 글을 써보려합니다.

오늘 제가 볼일이 있어서 소공동의 롯데 백화점 앞 버스정류장에서 버스를 타야 할 일이 있었습니다.

소공동 롯데 백화점앞은 원래 교통체증이 심각하기로 소문난 곳입니다. 근데 제가 가려는 목적지의 노선을 아는곳이 그 앞에서 밖에 알지 못해서 그 앞에 가서 버스를 기다렸는데 버스가 정차하는곳에 택시가 너무 많더라구요… 그것도 5~6대가 줄서서 손님을 기다리는중 이었습니다. 버스 정차 위치라고 바닥에 표시가 모두 되어있었는데, 그 자리에 몽땅 택시라뇨….

원래 버스가 정차해야할 자리에 택시들이 점거를 하고 있었으므로 버스들은 원래 정차해야할 위치에는 정차하지못하고 대로변에 그냥 정차를 해서 승객들을 내리고 태우고 그랬습니다.버스 정차위치에 떡하니 차를 정차시키는 택시들

승객들은 약간 오버해서 목숨을 걸고 차도 한차선을 넘어서 택시행렬을 넘어 버스를 타고 버스에서 내려야 했습니다. 저희는 원하던 버스를 놓치기도 했지요…
사람들은 차도를 하나 넘어 가야 버스를 탈 수있다.

당연히 열이 받아 택시기사님께 한마디 해야할판이었습니다. 버스를 기다리던 일반시민들도 대놓고 불만을 터트리기 일쑤였습니다.

저희가 버스를 한대 놓쳤기 때문에( -_-+!! ) 그 거리를 좀 관찰 할 수 있었는데 조금씩 이해가 가기 시작했습니다. 그 거리는 택시 이용객의 비율이 높은것 이었습니다. 빈 택시가 와서 10분안에 바로 승객을 태워서  그 자리를 뜨더라구요… 그만큼 택시의 이용 빈도가 높은곳이니 택시 기사님들도 어쩔 수 없이 손님을 기다리는것 이었습니다.

제가 보기에  이 문제는 해결되어야 할 것 같습니다. 택시 정류장을 다른곳에 따로 만들던가 아님 버스정류장을 다른곳에 세우던가, 아님 단속을 자주하던가 말이죠. 넓지도 않은 도로에 두개 차선을 정차로 사용하는데다 차량의 통행량도 많으니 교통체증은 기본이 될것 같았습니다. 제가 버스를 기다리던 그 짧은 시간에도 사람들은 정말 위험을 감수하면서 버스를 타고 있었습니다. 사고날뻔한적도 여러번이었구요. 이러다 사고 나면 누가 책임질지 궁금합니다. 특히 그쪽 부근은 외국인 관광객도 많은데 그들에게 어찌 비쳐질지도 생각이 들더라구요.

조속한 해결을 바랍니다.

p.s 민원 넣을라고 중구청 사이트 들어갔는데 접속이안되는군요…

CSS3 Media queries Vol.1

얼마전에 One Web 에 대해서 잠깐 언급한적이 있었는데.. One Web 을 구현하기 위해 꼭 알아야 하는 기술인 CSS3 Media queries Module 에 대해서 아주 조금 건드려 볼까 합니다. 예전에 스터디에서 했던 주제를 고친것으로 계속 발전시켜 볼 예정입니다.

개요

HTML4.01 과 CSS2 에서 이미 media type에 대응하는 스타일 시트를 따로 구성할 수 있는 방식을 지원하고 있었지만, 미디어에 대한 특징이나 범위를 명확하게 지정할 수 없었기 때문에, screen, print, handheld 정도만 사용 되었던것이 사실이었습니다. 그래서 CSS3에서는 좀 더 미디어의 특징을 잘 표현할 수 있는 방법을 확장하고 세분화한 스팩을 제공하게 되었습니다. 그것이 CSS3 Media Queries Module 이 되겠습니다. 앞서 언급했지만 HTML4, CSS2에서도 media type에 따른 css를 분기하는 방법은 지원하고 있었습니다. 그예를 보면 HTML4.01 에서는 스타일 시트 정의 시에 media를 선택 할 수 있습니다.


<STYLE type="text/css" media="projection">
    H1 { color: blue}
</STYLE>
<link rel="stylesheet" type="text/css" media="screen" href="sans-serif.css">
<link rel="stylesheet" type="text/css" media="print" href="serif.css">

참고 URL 은 다음과 같습니다.

CSS2에서 정의된 media type 정의방법은 다음과 같습니다.


@media screen {
    * { font-family: sans-serif }
}

참고 URL은 다음과 같습니다.

  • http://www.w3.org/TR/CSS21/media.html

위의 방법은 출력될 media의 type만 결정 할 수 있기 때문에 같은 미디어의 다양한 환경을 모두 수용하기에는 어려움이 많습니다. 하지만 CSS Media queries Module을 이용하면 디바이스의 종류뿐만 아니라 다양한 조건을 이용하여 Style을 분기할 수 있게 됩니다.

문법 및 사용법

미디어 쿼리의 문법 및 사용법은 다음과 같습니다.

media_query_list: <media_query> [, <media_query> ]*
media_query: [[only | not]? <media_type> [ and <expression> ]*]
| <expression> [ and <expression> ]*
expression: ( <media_feature> [: <value>]? )
media_type: all | aural | braille | handheld | print |
projection | screen | tty | tv | embossed
media_feature: width(가로 너비) | min-width(최소 가로 너비) | max-width(최대 가로 너비)
| height(높이) | min-height(최소 세로 높이) | max-height(최대 세로 높이)
| device-width(디바이스의 기본 가로 너비)
| min-device-width(디바이스의 기본 최소 가로 너비) | max-device-width(디바이스의 기본 최대 가로 너비)
| device-height(디바이스의 세로 높이) | min-device-height | max-device-height
| aspect-ratio(화면 비율) | min-aspect-ratio(최소 화면 비율) | max-aspect-ratio(최대 화면 비율)
| device-aspect-ratio(디바이스의 화면 비율)
| min-device-aspect-ratio(디바이스의 최소 화면 비율) | max-device-aspect-ratio(디바이스의 최대 화면 비율)
| color(색상당 비트수) | min-color(최소 색상당 비트수) | max-color(최대 색상당 비트수)
| color-index(user agent가 지원하는 팔레트의 색상 갯수)
| min-color-index(user agent가 지원하는 팔레트의 색상의 최소 갯수) | max-color-index(user agent가 지원하는 팔레트의 색상의 최대 갯수)
| monochrome(흑백 장치에서 픽셀 당 비트의 개수)
| min-monochrome(흑백 장치에서 픽셀 당 비트의 최소 개수) | max-monochrome(흑백 장치에서 픽셀 당 비트의 최대 개수)
| resolution(해상도) | min-resolution(최소 해상도) | max-resolution(최대 해상도)
| scan | grid

무슨소리인지 저도 잘모르겠습니다. ㅎㅎ 미디어 쿼리는 대소문자를 구별하지 않으며 알수없는 미디어의 경우에는 false 를 리턴한다고 합니다. 🙂

Media Type

CSS3 Media Queries Module 에서 정의하는 Media의 종류는 다음과 같습니다.

  • all : 모든 미디어 타입
  • aural : 음성 합성 장치
  • braille : 점자 표시 장치
  • handheld : 손으로 들고 다니면서 볼 수 있는 작은 스크린에 대응하는 용도
  • print : 인쇄 용도
  • projection : 프로젝터 표현 용도
  • screen : 컴퓨터 스크린을 위한용도
  • tty : 디스플레이 능력이 한정된, 텔렉스(teletype), 터미날, 또는 수동 이동 장치 등, 고정 피치(fixed-pitch:폭이 일정) 글자를 사용하는 메디아를 위한 의도 “tty” 메디아 타입에서 제작자는 픽셀(pixel) 단위를 사용하여서는 안됨
  • tv : 음성과 영상이 동시 출력되는 TV와 같은 장치
  • embossed : 페이지에 인쇄된 점자 표지 장치

뭔가 겁네 많은것 같아요. 일단 대충 이정도로 알아보고 실제 사용해보면서 알아보는거로 하는게 좋겠어요.

사용예

외부 파일을 사용하는법


&lt;link rel="stylesheet" media="screen and (min-device-width: 200px)" href="example2.css" /&gt;
&lt;link rel="stylesheet" media="screen and (min-device-width: 800px)" href="example1.css" /&gt;

예제) 아이폰과 웹브라우저에서 비교 http://mydeute.com/media_queries/1.html
디바이스의 가로값이 최소 200px이상이면 example2.css를 로드, 디바이스의 가로값이 최소 800px이상이면 example1.css도 같이 로드함

<style> 태그를 이용하는법.


&lt;style type="text/css" media="screen and (min-device-width: 200px)"&gt;
body { background-color: #0F0; }
&lt;/style&gt;
 &lt;style type="text/css" media="screen and (min-device-width: 800px)"&gt;
body { background-color: #F00; }
&lt;/style&gt;

예제) 아이폰과 웹브라우저에서 비교 http://mydeute.com/media_queries/2.html

CSS 파일내에서 사용하는 방법


&lt;style type="text/css"&gt;
@media screen and (min-device-width: 200px) {
body { background-color: #0F0; }
}
@media screen and (min-device-width: 800px) {
body { background-color: #F00; }
}
&lt;/style&gt;

예제) 아이폰과 웹 브라우저에서 비교 http://mydeute.com/media_queries/3.html

only, not

media type 을 선별하는 과정중에 선택할 수 있는 접두어

only

@media only handheld {
body { background-color: #F00; }
}
not

@media not screen {
body { background-color: #F00; }
}

features

width

user-agent의 현재 width 값에 대응해서 반응


@media screen and (width: 980px) {
body { background-color: #F00; }
}

예제) 아이폰과 브라우저에서 비교 http://mydeute.com/media_queries/4.html user-agent의 가로너비가 980px일때 배경이 빨간색으로 표현

min-width

최소 가로 너비를 지정하고 지정된 값보다 너비가 길면 그값에 대해 반응


@media screen and (min-width: 981px) {
body { background-color: #F00; }
}

예제) 아이폰과 브라우저에서 비교 http://mydeute.com/media_queries/5.html user-agent의 가로너비가 981px 이상 일때 배경이 빨간색으로 표현

max-width

최대 가로 너비를 지정하고 지정된 값보다 너비가 좁은 경우에만 그 값에 대해 반응


@media screen and (max-width: 980px) {
body { background-color: #F00; }
}

예제) 아이폰과 브라우저에서 비교 http://mydeute.com/media_queries/6.html user-agent의 가로너비가 980px 이하 일때 배경이 빨간색으로 표현

응용 1

조합이 가능해짐 0~ 320px 까지는 배경이 파란색 321px~ 800px 까지는 배경색이 빨간색 801px이상의 너비에서는 녹색 배경을 만들고 싶다면


@media screen and (max-width: 320px) {
body { background-color: #00F; }
}
@media screen and (min-width: 321px) and (max-width: 800px) {
body { background-color: #F00; }
}
@media screen and (min-width: 801px) {
body { background-color: #0F0; }
}

예제 브라우저의 가로 너비를 조절해보면서 보면 됨 http://mydeute.com/media_queries/7.html

응용 2

브라우저 화면의 가로 너비에 따라 레이아웃을 변경할수도 있음


@media screen and (max-width: 320px) {
#wrap { width:320px }
#left {  border:2px solid #F00; width: 316px }
#contents{ border:2px solid #0F0; width: 316px }
#right { border:2px solid #00F; width: 316px }
}
@media screen and (min-width: 321px) and (max-width: 800px) {
#wrap { width:800px }
#left {  float: left; border:2px solid #F00; width: 196px }
#contents{ float: left;border:2px solid #0F0; width: 596px }
#right { clear:both;border:2px solid #00F; width: 796px }
}
@media screen and (min-width: 801px) {
#wrap { width:100% }
#left {  float: left; border:2px solid #F00; width: 23% }
#contents{ float: left;border:2px solid #0F0; width: 50% }
#right { float: left;border:2px solid #00F; width: 23% }
}

예제) http://mydeute.com/media_queries/8.html

아주 기본적인 미디어 쿼리의 사용법에 대해 알아보았습니다.
이 다음에는  제가 현재 제블로그 스킨을 좀 바꿔보려고 하고 있으므로 실제 적용기를 다뤄볼까 합니다.

그럼 그동안 즐거웠어요

닥치고 웹 표준