웹 표준에 대한 내용 4/5 + 정작 HTML5와 CSS3가 1/5  비율..

첫 회사에서부터 웹 표준대로 코딩 하는 습관이 있었기 때문에, 큰 인상은 없었다.

다만 웹 철학과 원칙, HTML 표준화 과정에 대해 소개 하는 등등의 내용으로 체계적으로 정리해주는 부분은 있다.


-- CSS2.0 및 HTML4 내용 정리 --


1.  label 태그의 for  속성 



2. background-attachment : scroll & fixed



3. 동적선택자 = 가상 클래스 = ':'

   -  css 파일의 뒤쪽에 나올 수록 우선순위가 높기 때문에 작성 [ link > visited > hover > focus > active ]  순서로 작성

   - 우선순위가 가장 높다. ==> 왜? 구체적일 수록 우선순위가 높기 때문.



4. 언어 선택자 = 태그의 lang 속성을 사용 하면 같은 속성값을 가진 요소들의 선택, 디자인 적용 등이 가능



5. DOM Event 

  - Event Capturing : 부모 -> 자식 순서로 이벤트 발생 : addEventListener의 세번째 인수값이  true -> IE는 지원 안함

  - Event Bubbing : 자식 -> 부모 순서로 이벤트 발생 : addEventListener의 세번째 인수값이  false -> 모든 브라우저 지원

  

6. " if(window.함수이름) " 으로 기능 지원 여부를 확인하라

  -> 브라우저를 확인 하는 것 보다 더 간결하고 정확함. --> 버전을 신경쓰지 않아도 되기 때문.


7. css Position 관련 참고 싸이트 

  http://www.positioniseverything.net/



8. 세로 중앙 정렬 관련 참고 싸이트

 http://www.student.oulu.fi/~laurirai/www/css/middle/

 


9. 박스 채우기

  -  자식 요소에는 [display:block] -> 이 부분만 하면, 자식 요소의  영역 전체에 링크가 걸리지 않고 텍스트에만 링크가 생김

  - 부모 요소에는 [border-style:solid; overflow:auto; width:100%] -> 자식요소의 링크 확장을 위해 border-style을 주게 되면,, 자식요소가  block 요소로 부모안에 띄워지게 되면  Height를 계산 할때 자식 요소의 height 는 무시되는 결고가 나오기 때문에, 모든 브라우저에서 float 요소의 높이를 부모 요소 높이 계산에 포함 시킴.



10. 레이아웃

 - 유동 레이아웃(%) 사용시 min-width, max-width, min-height, max-height를 겸하여 사용하면 확장성에 더욱 좋음..

 - 탄력 레이아웃(em)을 사용하면 글자 크기에 비례하여 레이아웃이 결졍 되기 때문에 가상 이상적일 듯..



11. 일진 레이아웃 background-color 까지 채우는 법

  - float layout + height(모든 단의 길이 동일 하도록) + background-colir(각 단의 배경색 다르게)

 -  참고싸이트 : http://positioniseverything.net/articles/onetruelayout/


#container { overflow:hidden;}


#nav{float:left;width:20%;

background-color:red;

padding-bottom:500em;

margin-bottom:500em;}


#content{float:left;width:40em;

background-color:yellow;

padding-bottom:500em;

margin-bottom:500em;}


#advertisements{float:left;width:20%;

background-color:black;

padding-bottom:500em;

margin-bottom:500em;}

--> padding 및 maring의 높이는 : 제일 짧은 단의 높이 + 패딩 길이 > 제일 긴단 높이



12. 폼스타일 : http://meyerweb.com/eric/thoughts/2007/05/15/formal-weirdness/


13.고급 선택자(156p)

 - 인접 선택자 = 형제 요소 가운데, 어떤 요소와 인접한 형제 요소를 기준으로 특정 요소를 선택 할 수 있는 방법

   -> 선택자 1 + 선택자 2(li+li)

   -> IE7 이상 대부분의 브라우저가 지원

- 속성 선택자

  -- selector[attribute name] : 어떤 요소에 특정 속성이 지정된 지에 따라 선택여부 결정, 값은 무관 -> img[alt]

  -- selector[attribute name=vlaue] :  어떤 요소에 지정된 속성 및 값이 일치하는 경우 선택 -> img[alt=photo]

  -- selector[attribute name ~= value]

 -> 따옴표를 사용하지 않음.

  css3.0 : ^=(시작 문자열), $=(끝나는문자열), *=(like 검색) 도 제공.

by SJ.. 2012. 5. 10. 18:42
컴퓨터 분야 책에 어룰리지 않는 제목으로.. 도서관 갔다가.. 눈에 띄어서 보게된 책..
앞부분의 강렬함이 뒤에 갈수록 빛이 바랜 느낌..
그리고 저자가 서양 사람이라 우리 나라와 맞지 않는 기업 문화,정서,
아직 우리나라 현실과 맞지 않는 해외IT 아웃소싱 등이 그닥 공감 가지 않다.
그리고 역시 미국인이라 느껴지는.. 실천편......^^;;

하지만 경력관리에 대한 부분은 공감이 가고.. 앞으로 내가 가져야할 자세에 대해.. 많은 도움이 됬다.
지금까지는 한분야만 파는게 좋다고 생각을 많이 했는데, 그렇지도 않은것 같다..
한가지만 안다고 해서.. 문제를 해결 할 수 없을 뿐더러,
직급이 높아질 수록.. 전체를 아우르는 총체적인 지식이 필요하니깐....

그나저나.. 여행 후 .. 많이 쉬었다. 이제는 취업해야지 >_<
by SJ.. 2011. 5. 11. 23:49
이책.. 정말 낚였다.. 
원래 요점만 간단한 짧은 글을 좋아하지만,
내용의 진실성이나 상업성의 관련 여부 등등에 의해서 원래 인터뷰 글을 좋아하지 않는 편이기는 하다..

나와는 안 맞았던 것이지, 분명 도움이되고 잘 맞는 사람도 있겠지만,
내가 생각했던 구성,내용과 너무 달라서.. 집중이 안됬다.
그리고 질문이 너무 많다. 당연히 대답도 짧고..
깊이잇게 파고들어야 할 질문에 대해 대충 대답한 느낌도 들고..
수준이나 환경이 나와 달라서 짧은 대답들 속에서 내게 적용되거나, 귀감이 되는 것도 발견하지 못했다.

나중에는 결국 대충대충.. 읽었다는....;;
by SJ.. 2010. 12. 15. 23:01
이 책은.. 내용면에서는 백전 만점으로 도움이 많이된 책이다. 다른 사람에게 추천해주기도 했으니깐..
대한민국에서의 소프트웨어,정부,경영자,관리자,개발자 측면에서 간략하하면서도, 핵심을 적절하게 집어주는 ..
전체적으로 조명하면서 각 부분에대해서 세밀함이 있는..
내가 정말 좋아하는 타입의 책이면서도, 내용이나 구성이 모두 훌륭했다.

대한민국에서 개발자로 일하면서 느낀 모든 문제의 원인이
"대한민국에서 소프트웨어는 문화로 인식되지 않았다."라는 짧은 문장으로 표현이됐다!!
명쾌한 문장이다. 정말 마음에 든다.

그리고 정부에게.. 경영자에게.. 관리자에게만 쓴소리 하지않고, 개발자에게 지적하는것도 좋았다. 
평소 당연하다고 생각했던 것들이 다른 사람에게 당연하지 않아서 답답한 것이 있었는데.. 나와 비슷한 부분을 지적한것에 대해서는 든든한 지원군을 얻은 느낌이 들었고,
나또한 생각하지 못했던 부분을 지적할때는.. 나도 한참 멀었다는 생각이 들었다.

디자이너를 포함해 IT관련사람이라면 누구나 읽어도 좋을 책같다..


하지만 상대적으로 2% 아쉬운 표지..
"대한민국" 을 직접적으료 표현한 태극기 모양이..아쉽다...-_-;
 
by SJ.. 2010. 12. 15. 02:30
회사에 입사하면서 업무관련 내용을 자주 검색 하다보니 네이버 등 국내 검색 엔진보다 검색 성능이 뛰어난 구글을 애용하면서 구글을 좋아하게 되었다.  그리고 "구글, 성공 신화의 비밀"을 읽으면서 동경하게 되었다.
구글이 나오게된 것이 기존의 검색 엔진 성능에 만족 못하면서, 사용자에게 진정으로 유용한 검색결과를 제공하고자 의기 투합한 두 청년의 비전과 열정을 발견하였기 때문이다

작가는 이 책을 집필하기 위해서 구글에 방문도 여러번 하고 내부 인사 뿐만 아니라 외부인사 150명도 만나서 인터뷰를 하고 창립부터 현재까지의 내외적인 모든 상황을 구글의 탄생부터 2009년 초까지의 기업 내부 상황과, 구글로 인해 바뀐 패러다임의 영향에 대해 시간순서로 잘 표현하고 있다.
열정으로 의기투합한 래리&세르게이..
그들이 추가하는 효율의 극대화와 자유로움과 열정이 구글을 만들어 냈지만
시간이 지나면서 수익을 창출해야 한다는 투자자들 압박과 CEO 에릭 슈미츠의 영입과 갈등..
갈등 해소 과정과 에드워즈의 개발로 수익 창출.. 기존 광고 업체의 수익 감소..
여러가지 사업에 진출하면서 기존 업체들과의 갈등..해소.. 사업 확장을 거치며 성장하는 구글과 앞으로의 가능성과 숙제등을 제시하며 끝을 맷는다.

구글드에서는 "큰 흐름을 주도하는자, 그 흐름을 타는자, 그 흐름에 망하는자"가 인상에 남았는데..
성공과 실패를 좌우하는 것은 상황이 아니라 내 반응 즉, 긍적적인 반응이냐 부정적인 반응이냐에 따라 좌우됨을 다시한번 확인했다. 내가 흐름을 주도하지는 못 해도, 변화에 대해 부정적인 생각이나 걱정에만 있다면... 바로 망하지만,
그 흐름을 잘만 이용하기만 해도.. 긍정적으로 반응하기만 해도.. 발전 할 수 있으니까 ^^..

그리고 레리&세르게이의 성향에대해서 좀더 알 수 있었는데..
무엇보다도 어렸을때부터 학구적인 분위기에서 성장한 배경이 부러웠다.
그래서 역시 내가 결혼하게 되면 집에 TV를 없애고 아이와 어려서부터 대화를 많이하고 책 읽는 습관을 길러야 겠다는 생각을 했다.
또 한가지는 그들은 너무 똑똑한 나머지 효율의 극대화만 추구하고 자신만 옳다고 생각하기 때문에 "감성"이란것을 잘 모르는 사람인것 같았다. 그래서 사업 확장시 기존 업체들과 갈등을 심하게도 했고, 디자이너들이 떠나게 되는 것 같다.
역시 무엇이든지 지나친것은 좋지 않은것 같다.

나도 언젠가.. 큰 흐름을 주도 할 수 있는 사람이 될 수 있을까..??
by SJ.. 2010. 5. 3. 20:20
저자 : 니콜라스 카 
역자 : 임종기 
출판사 : 동아시아
출판일 : 2008년 11월 

회사에서 틈틈히 읽어서 얼마나 걸렸는지는 잘 모르겠다..
개인적으로 볼때 처음 날 확 잡아 끌던 강렬함이 뒤쪽으로 갈수록 시들해 진 느낌이다.
처음에 충격을 받은 이유는 소프트웨어의 유틸리티화를 말하고 있기 때문이다.
그리고 시들한 느낌은 지금 직면해 있는 상황, 너무나도 잘 알고있는 상황에 대해 설명하고 있기 때문이다.
원서 출판일이 2008년 1월..
이 책을 쓰고 있던 상황이나,막 나왔을때를 기준으로 보면, 끝까지 긴장감있게 보았을 책이다.
역시 책은 타이밍이다...-_-;
앞으로는 발빠르게 이런 책 좀 읽어야 겠단 생각이 든다..

책을 보면서 느낀건 .. 역시 앞으론 보안쪽이 소프트웨어 산업에서 영향이 클 것같다.
또 유틸리티화가 가속되고, 인터넷이 활성화 되면 될수록..
소프트웨어 산업에만 국한되지 않고 사회 전반에 걸처 더욱 영향이 커질 것 같고..
by SJ.. 2009. 11. 25. 23:47
편하게 읽으려고 한 책인데 초반부에 심리학 용어가 많이 나오고 생각하면서 읽느라 예상 했던 것 보다 시간이 더 걸렸다.

반성하면서 읽었다.

프로그래머로서의 내 기준에 의해 개발 했기 때문이다.
호모로지쿠스 부분에서 저자의 비판에 가까운 말들은 인정하기 싫지만 인정하게 되었고..
먼저 회사, 팀전체적으로 내가 주도 할 수 는 없어도,
내가 맡은 부분에 대해서는 “페로소나”를 생각하면서 개발해야겠다는 생각을 했다.
그래야 꼭 필요한 기능과 필요하지 않는 기능에 대해 분별력이 생길테니깐..

인터랙션 디자인으로 MS의 XAML를 생각했는데..
진정한 인터랙션 디자인은.. 모두를 위한 디자인이다
사용자는 사용하기 편하면서도 꼭 필요한 기능을 포함한 프로그램을 제공 하고,
프로그래머에게는 탄탄한 디자이늘 기반으로 간결하고 깔끔하게 프로그램을 짤 수 있기 때문이다.
고객들이 쓰기 좋은 프로그램이라면 당연히 기업 이익도 올라 갈 것이고..
by SJ.. 2009. 10. 20. 22:06
참 많이 찔려 가면서 본 책이다.
개발 하면서 시간과 사용자 사용성 사이에서 타협을 했고,
내가 이해하고 개발했기 때문에, 사용자들이 불편할꺼라는 생각도 못한적도 있었다.
최근 계속되는 유지보수를 하면서 짜증이 많이 난 상태였는데,
이 책을 보면서 반성하게 되었다.
앞으로는 정말 사용자 입장에서 이해하고, 유용한 서비스를 개발해야겠다고 다짐하게 되었다.

사용자의 편의성과 UI, 보안(웹페이지 회원 인증)에 대해 풍부한 사례와 해결방안을 제시한다.
분량으로는 책의 반정도 되고 내게 정말 유용한 부분이다.
그 후에 나오는 MS, 컴퓨터 괴짜, 앞으로의 대응에 대한 내용인데 앞부분에서 받은 인싸이트에 비해 좀 실망 스럽기까지 한다.

1. 사용자에게 시스템 이해를 강요하지 말고 간단하게 만들라.
실수가 발생 했을 때 이를 치료하는것이 훨씬 더 효율이다. 사용자의 확인(저장하시겠습니까? 취소하시겠습니까? 삭제하시겠습니까?)을 최소하 하고 최실행취소 & 재실행 기능을 사용하라. 실행 취소를 할 수 없는 작업에 대해서만 확인 대화상자를 띄워야 한다.
사용자 확인은 사용자에게 시스템 내부를 이해하고 이에따른 의사 결정을 맡기는 것이 된다.
60p - 고객은 드릴을 원하기 때문에 드릴을 구입하는 것이 아닙니다. 구멍을 내기 위해 드릴을 사는 것 입니다.
74p - 온갖 잡다한 것들을 가능하다는 이유만으로 사이트에 추가하는 데에만 정신이 팔려, 사용자들이 그런 것에는 관심도 없다는 것을 잊어버리는것 같다.
간단한 것을 간단하게 만드는 대신 복잡한 것들을 가능하게 만들고, 사용자의 사고 과정에 인터페이스를 맞추는 것이 아니라 사용자에게 내부 동작을 이해하도록 강요하는 것이다.
고객은 최소한의 노력으로 자신이 원하는 결과를 얻는데에만 관심이 있다.

2. 사용성 테스트 제대로 하자.
개발자는 이미 알고 있기 때문에 처음 접해보는 사람에게는 어려울 것이라는 것을 상상조차 하지 못한다.
102p - 디자이너들은 테스트가 필요하다는 것을 인식했을 때조차도 제대로 해내지 못합니다. 그들은 디자인을 자신들이 직접 테스트 하거나 또는 팀에서 같이 일하던 동료에게 부탁합니다. 놀랄 일도 아니지만, 테스트는 성공적으로 통과 합니다.
디자이너들은 사이트의 존재 목적과 기능을 이미 알고 있기 대문에, 그걸 모르는 사람들에게 사이트가 어떻게 비칠지를 상상할 시도조차 하지 못합니다. 그러나 새로운 방문자에게 수초 이내에 그걸 설명하는 것은 사이트 디자인에서 풀어야 할 가장 중요한 문제 입니다. 그렇게 하지 못할 경우 아무도 나머지 내용을 보지 않을 것이기 때문입니다.
디자이너는 네비게이션 기능이 일반 사용자에게도 쉬운지를 테스트 할 수 없습니다. 그들은 이미 사이트가 사용자로부터 데이터를 어떤 식으로 요구하는지 알고 있기때문에(신용카드 번호를 입력할 때 빈칸을 제거해야 한다는 식의), 일반 사용자가 그걸 생각해낼 수 있을지 장담 할 수 없습니다.


3. 보안은 사람과 관련된 문제다.
어떤 시스템의 보안 강도는 가장 약한 부분의 강도이다. 
보안 관련 설정을 사용자에게 분담 시키지 말자.  어떤 기능의 설정 여부가 보안에 끼치는 영향을 잘 모른다.
117p - 컴퓨팅 분야의 거의 모든 문제와 마찬가지로 보안 또한 기술적 문제라기보다는 사람과 관련된 문제이다.
보안은 과정이지 제품이 아닙니다. 보안은 고리와 같아서 그 강도는 고리의 가장 약한 부분의 강도와 같다.
설계과정에서 인간의 본성을 인지하고 이해하고 고려하기 전까지는 사용자, 즉 인간이 항상 고리의 가장 약한 부분이고, 바로 이 부분이 고리가 끊기는 부분이 될 것이다.
138p - 대부분의 기능을 비활성화시켜 놓고 사용자가 필요한 기능만 활성화시켜 놓는 것이 모든 기능을 기본적으로 활성화시켜 놓고 사용자가 불필요한 것을 비활성화 시키도록 하는 것보다 훨씬 안전하다.

4. 인증 문제
각 인터넷 웹 싸이트마다 비밀번호 정책이 다르기 때문에 모든 싸이트의 비밀번호를 기억하기 힘들다.
그러면 매우 쉬운 비밀번호를 쓰거나, 적어 놓거나(사회 공학적 해킹에 취약) 하게 된다.
따라서 통합된 인증(현재 우리나라에서 은행에 상관없이 1개의 인증서를 등록해 사용 할 수 있는 것 처럼) 방법이 필요하다.
핵심 서비스가 아닌 부분을 아웃 소싱하듯 인증도 이런 방법이 필요하다.
171p - 개발자는 사용자의 삶을 쉽게 하기 위해 존재하기에 사용자가 아이다와 패스워드를 자유롭게 선택 할 수 있도록 해야 한다.
문자 선택의 제한을 두거나 강력한 패스워드를 요구하면 사용자는 패스워드를 적어 둘 것이고, 그러면 패스워드의 안정성은 포스트잇 수준으로 떨어진다.

5. 정확한 문제에 집중하자.
새로운 것을 만들 때 그것이 왜 유용하고, 왜 사용해야 하는지에 대해 고려하자.
기술만을 위한 기술을 사용하지 말고 풀어야하는 비즈니스 문제에 집중하라
238p - 괴짜는 문제 정의 기술, 즉 어떤 문제를 풀어나갈 것인지를 결정하는 방법이 부족하다.
240p - 괴짜는 사용 편의성이 모든 보안 시스템의 중요한 문제라는 것을 깨닫지 못한다.


유용한 싸이트
www.whysoftwaresucks.com : 이 책의 싸이트
www.webpagesthatsuck.com : 웹 디자인 전문가인 빈센트 플랜더스(Vincent Flanders)


참고 도서
Surely You're Joking, Mr. Feynman(파인만씨 농담도 잘 하시네1,2-사이너스 북스) 
The Progress Rardox:How Life Gets Better While People Feel Worse - Random House, 2003
(진보의 역설 : 우리는 왜 더 잘살게 되었는데도 행복하지 않은가)
Cryptonomicon(크립토노미콘 1~4-책세상)
The Inmates Are Running the Asylum(정신병원에서 뛰쳐나온 디자인)
by SJ.. 2008. 11. 16. 00:00
| 1 |