'oscon'에 해당되는 글 6건

  1. 2008.07.28 [펌]OSCON 네째날 III - 웹 사이트 성능 향상 (2)
  2. 2008.07.28 [펌]OSCON 네째날 II - Lightning Talks
  3. 2008.07.25 [펌]OSCON 세째날 IV - Lightweight DB 시대 개막
  4. 2008.07.25 [펌]OSCON 세째날 II - SubVersion에서 하지말아야 할 10가지
  5. 2008.07.25 [펌]OSCON 둘째날 III - Exceptional 소프트웨어 개발
  6. 2008.07.25 [펌]OSCON 둘째날 I - 재미없는 튜토리얼, 재밌는 짤방

[펌]OSCON 네째날 III - 웹 사이트 성능 향상

ITWeb/스크랩 2008.07.28 14:09
아래 내용도 참 들어 보고 싶은 내용 이내요..
한가지 추천 할만한 사이트가 있어서 추가 합니다.. ^^*
다들 아시겠지만.. 서도. ㅎㅎ
동영상 강좌 사이트 : http://developer.yahoo.com/yui/theater/
퍼포먼스 : http://developer.yahoo.com/performance/

Dav Glass — Rich Text Editing with YUI

Senior YUI engineer Dav Glass.

36 minutes; source: Yahoo! Video (Flash) or download.yahoo.com (M4V, iPod/iPhone-compatible)

Senior YUI engineer Dav Glass introduces you to the YUI Rich Text Editor in this October 2007 tech talk.

Nate Koechley — The YUI CSS Foundation

Senior YUI engineer Nate Koechley.

42 minutes; source: Yahoo! Video (Flash) or download.yahoo.com (M4V, iPod/iPhone-compatible)

Senior YUI engineer Nate Koechley guides you through the YUI CSS foundation in this October 2007 tech talk.

Julien Lecomte — "High Performance Ajax Applications"

Yahoo engineer Julien Lecomte.

49 minutes; source: YUIBlog (Flash) or download.yahoo.com (M4V, iPod/iPhone-compatible)

Yahoo engineer and YUI contributor Julien Lecomte covers seven key areas of performance relating to modern web applications in this December 2007 tech talk.

Matt Mlinac — The YUI ImageLoader Utility

Yahoo! Engineer Matt Mlinac introduces you to the ImageLoader Utility.

9 minutes; source: Yahoo! Video (Flash) or download.yahoo.com (M4V, iPod/iPhone-compatible)

Yahoo! Engineer Matt Mlinac introduces you to the YUI ImageLoader Utility.

Todd Kloots — "The YUI Menu Control"

Todd Kloots, author of the YUI Menu Control.

25 minutes; source: Yahoo! Video (Flash) or download.yahoo.com (M4V, iPod/iPhone-compatible)

The YUI Menu Control comprises three rich, powerful UI tools. In this 25 minute video, YUI Menu developer Todd Kloots orients you to the Menu Control's structure, design, and implementation.

Nicholas Zakas — Maintainable JavaScript

My Yahoo! engineer and Wrox author Nicholas Zakas dispenses pearls of wisdom about the creation of maintainable applications in the browser.

42 minutes; source: Yahoo! Video (Flash) or download.yahoo.com (M4V, iPod/iPhone-compatible)

Nicholas Zakas is an engineer on the team that brings you My Yahoo!, one of the most popular personalized portals on the web. In this talk, Zakas focuses on some fundamental concepts in the world of frontend engineering with an eye toward making code more maintainable.

Matt Sweeney — "Web 2.0: Getting It Right the Second Time"

Matt Sweeney speaking on frontend architecture at Yahoo!'s Open Hack Day.

34 minutes; source: Yahoo! Video

Matt Sweeney, author of YUI's Animation Utility, Dom Collection and TabView Control, spoke to hackers gathered for Yahoo!s first Open Hack Day September 29, 2006. In this talk, Matt argues for the strict separation of presentation, content and behavior, providing a historical perspective on the evolution of available tools for engineering stable, scalable, applications using semantic approaches.

Iain Lamb — "The New Hacker's Toolkit"

Oddpost cofounder Iain Lamb speaks at Yahoo!'s Open Hack Day.

28 minutes; source: Yahoo! Video

Iain Lamb, cofounder of the Oddpost webmail startup that was acquired by Yahoo! and eventually became the basis for the all-new Yahoo! Mail, speaks at Yahoo!'s Open Hack Day on the skills needed by hackers in the new network ecosystem of mashups and web services.

Eric Miraglia — "Applying Ajax: Speeding the Journey from Idea to Information"

40 minutes; source: Sys-Con WebCast

Eric Miraglia, YUI engineer and technical evangelist, addresses the RealWorld Ajax conference in San Jose in April 2006. Miraglia's talk focuses on applying Ajax techniques to power real-world interaction problems and looks at autocomplete as a pattern that illustrate's the power of XMLHttpRequest.

YUI-Related Podcasts

Douglas Crockford reviews the current state of the web in the age of asynchronous (but insecure) Ajax transactions.

Douglas Crockford — "The State of Ajax"

38 minutes; source: YUIBlog (Flash) or download.yahoo.com (M4V, iPod/iPhone-compatible)

Yahoo! JavaScript Architect Douglas Crockford reprises his talk on "The State of Ajax", putting the popular technique through the critical lens of history and subjecting it to a review of how it stacks up against the current state-of-the-art in computer programming.

Douglas Crockford — "The JavaScript Programming Language"

Douglas Crockford provides a comprehensive introduction to the JavaScript Programming Language.

111 minutes; source: Yahoo! Video

Yahoo! JavaScript Architect Douglas Crockford provides a comprehensive introduction to the JavaScript Programming Language in this four-part video:

Douglas Crockford — "Advanced JavaScript"

67 minutes; source: Yahoo! Video

Yahoo! JavaScript Architect Douglas Crockford lectures on the nuances of the JavaScript programming language in this three-part video:

Douglas Crockford speaks on the nuances of the JavaScript language.

Douglas Crockford — "An Inconvenient API: The Theory of the DOM"

78 minutes; source: Yahoo! Video

Yahoo! JavaScript Architect Douglas Crockford discusses the nexus between JavaScript and the browser, exploring the history of the BOM and DOM APIs and their impact on frontend engineering today. This presentation is archived in three parts:

Douglas Crockford discusses the intersections of JavaScript and the browser.

Douglas Crockford — "Quality"

Douglas Crockford discusses the 40-year-old Software Crisis and what can be done to combat it.

48 minutes; source: Yahoo! Video (Flash) or download.yahoo.com (M4V, iPod/iPhone-compatible)

Yahoo! JavaScript Architect Douglas Crockford provided the anchoring keynote for Yahoo!'s annual internal web-development conference in March, 2007. The subject of the talk is "Quality" — the processes by which we engineer quality into our software and, of course, the processes by which we often fail to do so.

Douglas Crockford — "JavaScript: The Good Stuff"

40 minutes; source: Yahoo! Video (Flash) or download.yahoo.com (M4V, iPod/iPhone-compatible)

Douglas Crockford delivers the keynote at the 2007 Konfabulator Developer Day.

Yahoo! JavaScript Architect Douglas Crockford keynotes the 2007 Konfabulator Developer Day at Yahoo! on June 7, 2007. In this talk, he describes his own journey from skepticism about JavaScript to a deep appreciation for its power and elegance.

Browser Wars Episode II: Attack of the DOMs

42 minutes; source: Yahoo! Video (Flash) | download.yahoo.com (M4V)

This event brought together at Yahoo! Mike Shaver from Mozilla, Chris Wilson from Microsoft's IE team, CTO Håkon Lie from Opera, and moderator Douglas Crockford from Yahoo! to talk about the current state of the browser landscape. Recorded on February 28, 2007.

Gopal Venkatesan — "Writing Efficient JavaScript"

22 minutes; source: Yahoo! Video (Flash) | download.yahoo.com (M4V)

Gopal Venkatesan was the first frontend engineer hired by Yahoo! in India. In this talk, he explores some core characteristics of performant JavaScript. Recorded on March 8, 2007.

Dion Almaer — "Google, Back to Front"

Google's Dion Almaer.

56 minutes; source: YUIBlog (Flash) or download.yahoo.com (M4V, iPod/iPhone-compatible)

Google developer evangelist and Ajaxian cofounder Dion Almaer discusses the Google App Engine and the Gears project in a tech talk at Yahoo in June 2008.

Steve Souders — High Performance Web Sites: 14 Rules for Faster Pages

Yahoo! Performance guru Steve Souders offers 14 rules for faster websites.

37 minutes; source: Yahoo! Video (Flash) or download.yahoo.com (M4V, iPod/iPhone-compatible)

Steve Souders is Yahoo's former chief peformance guru and the author of High Performance Web Sites. While at Yahoo, Steve led a team investigating the root causes of poor page performance and applying the lessons learned to Yahoo!'s high-traffic, media-rich properties. Steve now serves in a similar role at Google.

Bill Scott — Designing the Rich Web Experience: Principles and Patterns for Rich Interaction Design on the Web

Former Yahoo Ajax Evangelist Bill Scott

51 minutes; source: Yahoo! Video (Flash) or download.yahoo.com (M4V, iPod/iPhone-compatible)

Bill Scott served as a Yahoo Ajax Evangelist and engineering manager from 2005-7. In this talk, given at nearly a dozen conferences around the world, Bill taxonomizes the rich interaction patterns that characterize the evolving web — a must-see for web designers and frontend engineers. (Slides, in Apple Keynote format, can be downloaded here [253MB].)

Peter-Paul Koch (PPK) — Fronteers: Guild of Front-End Developers

PPK, author of quirksmode.ort

29 minutes; source: Yahoo! Video (Flash) or download.yahoo.com (M4V, iPod/iPhone-compatible)

PPK is best-known as the author of the essential frontend engineering site quirksmode. In this talk, he discusses his more recent work — the formation of a professional guild for frontend engineers in Holland.

Joseph Smarr — High-performance JavaScript: Why Everything You've Been Taught Is Wrong

Joseph Smarr, Chief Platform Architect at Plaxo

51 minutes; source: Yahoo! Video (Flash) or download.yahoo.com (M4V, iPod/iPhone-compatible)

Joseph Smarr is the Chief Platform Architect at Plaxo, Inc., where he's led the engineering of Plaxo's address-book integration application. In this talk, Smarr explores the core lessons that he and his Plaxo team have learned in the development of their apps and the details of how they've leveraged maximum performance from the web browser.

Joe Hewitt — "Welcome to Firebug 1.0"

Joe Hewitt introduces Firebug to a developer audience at Yahoo!.

48 minutes; source: Yahoo! Video (Flash) | download.yahoo.com (MP4; recommended)

Joe Hewitt is a Mozilla developer who has written software dear to the heart of all web developers, including the original Mozilla DOM Inspector. Joe's newest Mozilla tool is Firebug, an integral logging and debugging extension for Firefox that sets a new standard for its category. Joe provided a power-user tour while announcing Firebug 1.0's release on January 25, 2007, at Yahoo!. Joe is a co-founder of Parakey, Inc.

Joe Hewitt — "An Introduction to iUI"

15 minutes; source: Yahoo! Video (Flash) or download.yahoo.com (M4V, iPod/iPhone-compatible)

Firefox co-founder and Firebug author Joe Hewitt discusses his newest project, iUI — a JS/CSS bundle empowering rapid development of web applications for iPhone that emulate the iPhone's native visual elements and transtions. Recorded in July 2007, a few weeks after the release of the iPhone, this talk also provides an excellent early overview of the state of iPhone web development and an orientation to standards support in the iPhone implementation of Safari.

Grady Booch — "The Promise, the Limits, the Beauty of Software"

Grady Booch, co-creator of UML and IBM Fellow

56 minutes; source: Yahoo! Video (Flash) or download.yahoo.com (M4V, iPod/iPhone-compatible)

Grady Booch is an IBM Fellow and one of the co-creators of UML. In this talk, he discusses the complex matrix of decisions and processes, both intentional and unintentional, that lead to the software designs and architectures upon which we increasingly rely in everyday life. This is a version of a talk originally given to the British Computer Society in honor of Alan Turing.

John Resig — "Advancing JavaScript with Libraries"

John Resig

57 minutes; source: Yahoo! Video (Flash) or download.yahoo.com (M4V, iPod/iPhone-compatible)

John Resig of Mozilla Corp., author of the popular JQuery JavaScript library, describes the role of libraries in the world of frontend engineering, the problems they solve, and the things we can learn from how developers use and think about libraries in their projects.

Lars Knoll and George Staikos: "From KHTML to Webkit"

Lars Knoll and George Staikos of the KHTML development team speak at Yahoo! about KHTML and WebKit on December 8, 2006.

26 minutes; source: Yahoo! Video

Lars Knoll and George Staikos from the KHTML project visited Yahoo! to give a talk on the history of KHTML and Konqueror and the connection between those projects and Apple’s open-source WebKit (which was built upon KHTML and announced in January of 2003 as the foundation of Apple’s Safari browser). See the accompanying YUIBlog article for more details.

A Conversation with David Weinberger

David Weinberger, author of 'Everything Is Miscellaneous.

55 minutes; source: Yahoo! Video (Flash) or download.yahoo.com (M4V, iPod/iPhone-compatible)

Author David Weinberger speaks with Yahoo!'s Bradley Horowitz about the nature of our evolving relationship to information — a relationship that is at the heart of the growing network of web-services-dependent applications on the web.

YUI Theater on del.icio.us:

bookmark on del.icio.us

be the first to bookmark this page!

YUI Theater Accessibility Series

  1. Victor Tsaran: An Introduction to Screen Readers (27 minutes): Flash | MPEG-4
  2. Karo Caran: An Introduction to Screen Magnification Software (16 minutes): Flash | MPEG-4
  3. Shawn Lawton Henry: Web Content Accessibility Guidelines Update (75 minutes): Flash | MPEG-4 | Transcript

Doug Geoffray — "From the Mouth of a Screenreader"

Doug Geoffray

47 minutes; source: Yahoo! Video (Flash) or download.yahoo.com (M4V, iPod/iPhone-compatible)

GW Micro founder Doug Geoffray discusses the evolution of screen readers on the desktop and the nature of the challenges we face as we start addressing similar issues in the context of rich internet applications.

Implementation Focus — LinkedIn

An interview with frontend engineers at LinkedIn disucssing their use of YUI.

10 minutes; source: YUIBlog (Flash) or download.yahoo.com (M4V, iPod/iPhone-compatible)

An interview with frontend engineers at LinkedIn disucssing their use of YUI.

Implementation Focus — "OurStory.com"

10 minutes; source: Yahoo! Video

OurStory.com co-founder Chris Lunt, Chief Architect Tim Correia, and Senior Engineer Jerome Poichet talk about their extensive use of YUI as well as a host of Yahoo! APIs provided by the Yahoo! Developer Network in creating their product.

Jon Chambers — "Screencast: Thinkature Co-founder on Developing with YUI"

Jon Chambers, co-founder of Thinkature, explores YUI integration in his product with YUI engineer Eric Miraglia.

6 minutes; source: YUI Blog (QuickTime) or Yahoo! Video (Flash)

Thinkature co-founder Jon Chambers discusses the Thinkature collaborative ideation interface and how he used YUI in creating it.

Paul Colton — "Screencast: YUI Support in the Aptana IDE"

Aptana founder Paul Colton demos YUI support in the Aptana editor.

7 minutes; source: YUI Blog (QuickTime) or Yahoo! Video (Flash)

Aptana founder Paul Colton provides an overview of the Aptana IDE and its built-in support for the YUI Library; more Aptana screencasts are available on Aptana TV.

Ross Harmes — "Screencast: YUI Bundle for TextMate"

9 minutes; source: YUI Blog (QuickTime) or Yahoo! Video (Flash)

Ross Harmes of Yahoo! Small Business demos his YUI bundle for the popular Mac OS X code editor TextMate. See the YUIBlog post on the screencast for full details.

ref. http://channy.creation.net/blog/538

OSCON에서는 단순히 오픈 소스만 다루는 것이 아니라 웹 서비스와 연관되어 있기 때문에 상대적으로 웹과 관련된 세션도 적지 않은 비중을 차지하고 있습니다.

오늘은 이 블로그 독자들의 비중이 높은 “Front-end” 개발자를 위한 세션 두개에 들어갔습니다. 하나는 CSS를 통한 자바스크립트 UI 성능 향상이고 또 하나는 자바스크립트를 이용한 웹 사이트 성능 향상에 대한 것입니다.

CSS for High Performance JavaScript UI
Gavin Doughtie는 구글에서 파카사웹을 만드는 사람이고 XDraw는 JS 기반 드로잉 서비스를 만들기도 했습니다. 자바스크립트로 도형을 그리거나 하는 것은 어렵고 복잡한 코딩에 속도도 느리기 때문에 이를 위해 CSS를 이용하는 것이 편리함을 강조했습니다.

CSS로 박스, 테이블, 텍스트, 이미지 등을 그리고 크기를 바꾸거나 할 때 CSS의 기초적인 float, positioning, negative margins, relative units, pseudo-selectors 등을 사용하면 편리하게 할 수 있음을 보여 주었습니다. 즉, body {
margin: 0; padding: 0; height: 100%; width: 100%; overflow: hidden;}
으로 미리 정의해 놓고 position을 absolute로 한 후 좌표값을 계산하는 것이죠. 특히 도형을 그릴 때는 img { position: relative; width: 100%; height: 100%; } 처럼 img를 정의하고 계산하면 편리하다는 방법입니다.

자신만의 노하우를 담은 샘플 예제를 중심으로 발표를 진행했는데 곧 발표 자료를 홈페이지에 올린 답니다. 샘플을 계속해서 보여주어서 제대로 설명하기는 좀 힘들 군요.

이 친구 발표 중에 이런 이야기를 하더군요. 자기는 뭐든지 자유롭게 구현 가능한 Safari와 Webkit 엔진을 가장 좋아한다고 합니다. 특히, 요즘 웹 브라우저들로 할 수 있는 것이 많기 때문에 자신이 제시한 구현을 통해 좀 더 좋은 기능을 제공하려면 IE6를 포기하는 것도 고려해 볼만 하다는 거죠.

즉 IE7+, Firefox 3+, Safari 3+, Opera 9.5+ 등과 같이 높은 사양의 웹 브라우저만을 지원하는 것인데 만약 서비스가 매우 유용하다면 사용자들이 바꿀 것이라는 겁니다. (즉, IE6이 문제가 아니라 개발자 우리 자신에게 문제가 있는 것이라는 이야기입니다.)

Even Faster Web Sites
이 세션을 진행한 구글에 계신 Steve Souders 이름을 들어본 분이 많을 겁니다. 야후!에 웹 서비스 기술 책임자로 있을 때 14가지 웹 서비스 성능 최적화 기법이라는 것을 소개하고 High Performance Web Sites라는 책도 발간하셨던 유명한 분입니다. 특히, Firebug 기반의 Y!Slow라는 퍼포먼스 측정 도구를 만드신 분이기도 합니다.

그의 성능 향상의 결론은 바로 ‘프론트 엔드의 자바스크립트를 경량화’하라는 것입니다. 그의 이야기에 따르면 서버 기반 코드가 생성되는 것은 전체 웹 로딩 속도의 10%에 불과하고 80~90%는 프론트 엔드 코드의 렌더링에 따른 것이고 아무리 백엔드 코드 성능을 향상 시켜도 사용자 체감 속도는 별로 안높아진다는 겁니다.

이번 세션에서는 이전의 14가지 기법을 재탕하는 것은 아니구요. 새롭게 2탄으로 추가된 내용입니다.

기존의 1탄

새로운 2탄

2탄에 있는 10가지를 다 알려 주면 얼마나 좋겠습니까마는 이번 세션에서는 앞의 3가지만 해준다고 합니다. 2탄의 대부분은 자바스크립트에 관한 것인데 그 이유는 자바스크립트가 문제의 대부분이기 때문에 그렇다고 합니다. 그가 Y!Slow를 통해 여러 웹 사이트의 문제점을 보여주었는데 로딩 타임의 대부분이 자바스크립트 병목에서 오고 있었습니다. (Cuzillan의 결과 참조)

로딩 부담을 나눠라! Split the initial payload
첫번째 방법은 js파일의 로딩 부담을 나누라는 것입니다. js파일을 웹 페이지가 렌더링 되는 중간 중간 나눠서 로딩하고 이를 위해 doloto같은 도구를 이용하라고 조언 합니다.

중단 없이 스크립트를 읽어라! Load scripts without blocking
대개 js파일은 대개 직렬적으로 읽고스타일 시트가 로딩 되는 동안 다른 것이 block 되는 등 초기의 여러 조건에 따라 로딩 속도가 차이가 나게 되는데 이를 위해 block이 되는 조건을 잘 찾아서 적절한 방법을 사용하라고 조언 합니다.

이를 위해 대개 다음 6가지 방법을 제시했습니다. (상세한 방법론은 PT에 있는데 밖으로 유출하지 말라는 구글 회사 계약 내용 때문에 웬만하면 사진을 찍지말라고 했지만 제가 찍긴 했습니다. 필요하시면 저에게 메일로 알려주시길…)

  1. XHR Eval (must have same domain as page)
  2. XHR Injection (same domain)
  3. Script in iFrame (same domain)
  4. Script DOM Element (domains can differ)
  5. Script Defer (only supported in IE, domains can differ)
  6. document.write (not recommended, parallelization only works in IE)

그런데 위의 기능을 사용하는 데 있어서도, 웹 페이지에 따라 스크립트와 CSS 파일의 위치와 로딩 순서 등 몇 가지 조건이 있고 조건에 따라 다른 방법을 사용해야 한다고 합니다. 가급적 Cuzillan과 Y!Slow를 이용해서 자신의 웹 페이지에 있는 css, javascript 등의 로딩 순서를 한번 체크해 보고 가장 맞는 방법으로 최적화 하는 것이 좋겠습니다.

인라인 스크립트를 남발하지 말라! Don’t scatter inline scripts
Firefox에서는 스타일 시트가 스크립트의 병렬 다운로드를 막고, IE는 인라인 스크립트에서 스타일시트를 막습니다. 따라서 가급적 인라인 스크립트를 안쓰는 게 좋다는 이야기입니다. 방법은 인라인 스크립트를 스타일시트 위에서 먼저 실행하거나 또는 @import를 쓰지 말고 link로 css를 부르는 것이 좋습니다.

그 밖에 Mozilla 프로젝트가 Firebug 개발을 지원하기 시작했고, Firebug Light 버전과 HTTPWatch for Firefox이 출시된다는 점을 소개했습니다. 아마 이분 위의 10가지를 가지고 책하나 더 쓰실 예정인가 봅니다.

Trackback 0 : Comments 2

[펌]OSCON 네째날 II - Lightning Talks

ITWeb/스크랩 2008.07.28 14:02
open scrum : ㅎㅎ 이건 애자일 방법론 마스터 교육 받으며서 배웠던 것들인데요.. 2주 단위로 나눠서 진행했던 기억이 있내요.. 대만에서 교육 받을때.. 나름 재밌었는데.. 실무에서는 잘 활용 하면.. 프로젝 관리에.. 아주 효과적입니다..

openid : 야후코리아에서는 오픈 아이디를 이용해서 로그인이 가능하죠.. ㅎㅎ 근데.. myid.net 과 같이 openid 의 취지에 맞지 않게 자기들이 제공하는 오픈ID 만 사용해야 한다는건 좀 취지에 어긋나는듯 하내요.. 제가 만든다면.. 어차피 url 이니.. 정보 확인해서 적절한 서버로 인증 요청해서 로그인 제공 해주는게 맞지 않나 싶내요..

memcached : 손 쉽게 server / client 사이드 캐쉬를 적용 할 수 있겠죠.. 분산 처리도 되고.. 뭐 암튼..

근데.. 아래 내용들.. 정말.. 매력적이내요.. 흑.. 저도 듣고 싶내요..
어디 동영상 올라 온건 없을까요??? 발표 자료 라도..

ref. http://channy.creation.net/blog/537

OSCON에서 단골 프로그램 중 하나인 State of Lighting Talks는 15개 오픈 소스 프로젝트의 멤버들이 자신들의 현재 진행 내용을 5분만에 발표하는 Ignite 형식을 가진 프로그램입니다.

대략 2시간 가까이 되는 엄청 긴 세션이었지만 빨리 요점만 이야기하니까 그나마 낫더군요. 대략 17개 프로젝트 리더들이 발표한 것 같습니다. 간단한 메모입니다.

OSI (Open Source Initiative) Danese Cooper
OSI는 오픈 소스 라이센스의 범위를 정하고 결정하는 기구로서 Danese는 3년간 이사로 있었습니다. 최근 그들의 문제는 OSI가 좀 더 효과적인 기구가 되기 위해 오픈 소스 커뮤니티랑 비슷하도록 구조를 짜는 것인데, 향후 Apache와 같은 회원제와 헌장을 기초로 운영한답니다. OSI에 가입 할 수 있는 기회?

Open Scrum James Dixon
Open Scrum은 애자일 기법을 활용해서 오픈 소스 프로젝트를 관리할 수 있는 원칙들입니다. 하지만, ‘대면(face-to-face) 개발’ 같은 것은 오픈 소스에 불가능하니까 모든 애자일 기법이 오픈 소스 개발에서 가능한 것이 아닙니다. 대략 반 정도만 통용이 된다고 하는 데 관심 있는 분은 OpenScrum 원칙을 참고하세요.

MySQL Monty Widenius
MySQL은 5.1의 버그를 많이 잡고 있고 3개월 후에 이에 대한 업데이트가 있을 예정이며 5.0에서 온라인 백업, 빠른 join과 서브쿼리를 위한 옵티이저가 포함되고 5.1에는 InnoDB 플러그인이 포함 됩니다. 커뮤니티를 Launchpad로 옮기고 참여자가 좀 늘었고, 새로운 Forge도 구축했으니 버그를 많이 올려 달라는 군요.

OpenID Scott Kveton
아들하고 같이 연단에 오른 Scott은 지금까지 5억(?)개의 오픈 ID와 2만개의 적용 사이트가 생겼고, 보안성을 개선한 OpenID 2.0 스펙 이후 3.0을 준비중. URL을 기억 못하는 사용성 문제를 해결하고자 URL-이메일 맵핑을 지원하고자 하고 있답니다. ㅎㅎ 8월에 이사진을 새로 뽑는다는데 한국에서도?

Gentoo Donnie Berkholz
몇 년간 내홍을 겪어서 커뮤니티가 위기였던 젠투는 올해 전열을 가다듬고 있다고 합니다.

PostgreSQL Bruce Momjian
Bruce가 누군가 했더니 후원사인 EnterpriseDB에서 일하는 사람이었군요. PostgreSQL은 진짜 오래된 오픈 소스 DBMS인데, 지금까지는 기업이 원하는 기능 위주로 추가를 해왔다면 앞으로는 좀 공격적이고 실험적인 기능을 넣어 볼 거라고 하는군요. 그러고 보니 Win32지원, Savepoints, Point-in-time 리커버리, 테이블 스페이스 등 많군요.

Bazaar Mark Shuttleworth
멋쟁이 마크셔틀워스가 Python으로 만든 우분투용 버전 콘트롤인 Bazaar를 소개했는데 얼마전 MySQL도 이걸로 바꿨다고 합니다. 분산 브랜칭이나 팀 체크아웃에 유용하고 속도 개선과 크로스 플랫폼, 플러그인 확장성을 염두해 두고 개발을 하고 있답니다. SubVersion에도 벌써 대안이?

Memcached Alan “Dormando”
이 프로젝트는 설립자인 Fitz가 구글로 들어간 이후 진짜 작고 간단한 커뮤니티를 운영하고 있습니다. 6개월간 릴리스가 없다고 이번 주에 1.3.1을 낸다고 하네요. 문서는 역시 없음. 너무 완벽해서 고칠게 없는 건지 너무나 포크를 많이 해서 원 소스트리에 보내줄게 없는 건지… 계속 굴러갈 수 있을지는 의문?

The Talking Bridge Project Cliff Schmidt
시골에서 네트웍 안되는데서 쓰는 작은 MP3 디바이스 같은 걸로 데이터 교환을 도와주는 프로젝트라는데 영 이상하군요. 혹시 관심 있는 분은 literacybridge.org을 참고.

오레곤 주립대 OSL Lance Albertson
유명한 오픈 소스 연구소 입니다. 70여개의 오픈 소스 프로젝트 미러링과 코로케이션을 을 제공하고 있고 12명의 학생들이 시스템 운영을 한다고 하네요. (ASF, Drupal, kernel.org, OpenOffice, Gentoo, phpBB 등) 내일 순선님과 견학가려고 합니다. 오픈 소스 교육 및 정부에서 오픈 소스 활용에 대한 아이템을 계속 발굴 중…

OpenOffice.org Louis Suarez-Potts
대략 백만 사용자가 있고 350명의 커미터가 있으며 (대부분 썬에 근무) 앞으로 웹 쪽에 중심을 맞출 예정이랍니다. 흠… 아웃룩 대체품을 준비 중이고 오피스 2007과 포맷 맞추는 작업도 하고 있으며 내년에는 1억 5천만 다운로드 기록을 깨려고 한답니다. (다운로드는 많이 하는 데 쓰는 사람은 없다??)

Mozdev Brian King
Firefox 확장 기능 개발 사이트는 Mozdev는 250개의 활동 프로젝트와 500명의 개발자가 있다고 하는 군요. 얼마전까지 돈이 없어서 고생했는데 지금은 사정이 좀 나아졌답니다. 앞으로 좀 더 열심히 한다는데, Mozilla에서 직접 도움을 주고 있지는 않나 봅니다. (하긴, 대안이 워낙 많으니 확장 기능 소스 포지 같은게 별도로 있어야 하는지는 조금 의문…)

OpenSolaris Glen Foster
3년전 소스코드를 오픈한 OpenSolaris는 최근에 웹 사이트를 개편하고 썬 내부에 있는 소스 코드를 Bugzilla와 Mercurial을 쓰기로하고 회사 밖으로 내보낸다고 합니다. (그동안 독단적인 몇 명 때문에 커뮤니티 운영도 잘 안됐다는데, 썬의 폐쇄적인 오픈 소스 개발 방식이 여실히…)

GNOME Dave Neary
우분투와 페도라의 기본 데스크톱 시스템은 그놈은 Adobe, VMWare, IBM 같은 회사에 커뮤니티가 있을 정도라는 군요. 리눅스 데스크톱의 생태계를 만든다는 각오로 사용성, 국제화 및 지역화, 소프트웨어 장애인 접근성에 관심을 기울이고 있답니다. 특히, 접근성은 IBM, Mozilla, Sun, Google에서 펀딩을 할 정도 라니 특히 Mozilla에서 돈을 많이 냈답니다.

Subversion John Mark Walker
openCollaNet의 커뮤니티 매니저인 John은 2006년 9월 이래로 지난 달 출시한 1.5 버전의 기능 소개를 했습니다. 궁금하신 분들은 오랫만에 Subversion 홈페이지로 가보시길…

그런데, 갑자기 GlassFish를 발표하려던 Ken Drachnik이 급한 용무로 자리에 올 수 없자 청중 중 한명이 그의 발표를 대신했습니다. 근데 이 친구 자바 개발자도 아니고 GlassFish를 들어본적도 없다고 하네요. (Java EE5 기능을 구현한 오픈 소스 미들웨어라는 건 아실 거고) 2009년 6월에 3.0이 나온다는 거 이외에 한편에 코미디를 하고 내려가더군요. (오늘 썬 사람들 왜 이러죠?)

Drizzle Brian Aker
제가 Lightweight DB 출현에 소개한 Drizzle입니다. 이번 컨퍼런스에서 Brian Aker 진짜 많이 보네요. memcached 튜토리얼, 키노트 대담, CouchDB 발표때도 제 옆에 앉아서 딴 짓있더니만…
Drizzle에 없는 것은? Stored procedures, triggers, prepared statements 기타 등등 CPU에 부담 주는 건 다 뺀다. 크기는 대략 420k, 웬만한 라이브러리는 다빼고, 핵심 코드에는 기능 안넣고 사용자가 원하면 넣고. 한마디로 진정한 RDB 기능을 하는 MySQL 판 SQLite? Sun의 사내 프로젝트지만 관심 있는 분은 Drizzle 프로젝트 로…

5분 발표이고 해서 프리젠테이션 일부 찍은 사진과 기억에 의존해서 대충 적었습니다. 최근 뜨는 몇 가지 오픈 소스 프로젝트의 현재 이야기이니 참고하시길…

tags : oscon, oscon2008
Trackback 0 : Comment 0

[펌]OSCON 세째날 IV - Lightweight DB 시대 개막

ITWeb/스크랩 2008.07.25 10:40

ref. http://channy.creation.net/blog/535

OSCON 08의 세째날의 세션을 보다 보면 공통적인 것이 있습니다. 이름도 생소한 ‘데이터베이스’들이 나오고 있다는 것이입니다. 우리가 잘 아는 DB는 오라클, DB2, 인포믹스, MySQL 즉 상용 관계형 DB(RDB)가 대부분이죠.

하지만 대세가 바뀌고 있습니다. 현재 웹에서 요구하는 핵심 기능들 또는 빠른 속도로 검색하고 인덱싱하는 파일 기반 데이터베이스가 속속 오픈 소스로 개발 되고 있다는 점입니다. 왜 이런 일이 일어나는 걸까요?

바로 최근 웹 서비스들이 관계형 DB에서 지원하는 Relation, Tigger 등등이 거의 필요 없다는 겁니다. 게시판이나 블로그만 보더라도 그렇죠. 따라서 빨리 저장하고 쉽게 불러다 쓰는 방식의 데이터베이스들이 나오고 있는 중입니다.


CouchDB는 Erlang 언어로 만든 분산형 비 관계형 DB 입니다. 질의 방식이 쉬운 HTTP REST 형식으로 GET, UPDATE 등으로 문서에 저장하듯이 하고, 질의 시 JSON으로 결과를 받습니다.

Incremental하게 데이터를 볼 수 있고 Replication도 쉽게 할 수 있도록 설계하고 있지요. Damien Katz가 2년동안 만들었고 최근 IBM에 의해 지원을 받고 있습니다. Apache 재단에 의해 인큐베이팅을 받아서 오픈 소스로 전향했습니다.

발표 상세 정보


HyperTable은 Google BigTable을 오픈 소스로 구현한 것입니다. Hadoop 위에 구동되는 것으로 1TB를 9개 노드로 데이터를 빠르게 읽을 수 있습니다. 발표 상세 정보


LucidDB는 위의 두 가지 DB와 마찬가지로 컬럼 기반 DB이고 압축을 사용해서 좀 더 빠르게 읽어 올 수 있습니다. MySQL MYISAM에 비해 속도가 뛰어나다는 벤치 마크 자료도 있군요. 발표 상세 정보


이에 질세라 MySQL의 기술 담당자인 Brian Aker는 자사의 내부 프로젝트인 Drizzle을 공개했습니다. Drizzle은 MySQL 코드를 기반으로 해서 만든 가벼운 버전으로서
최신 InnoDB 코드를 제공하고 GPLv2 라이센스로 Linux와 Mac 플랫폼을 지원 합니다. 웹 기반 서비스 패턴에 맞도록 개발 되고 대용량 동시 접속 및 멀티 CPU 구조에 맞도록 개발 할 예정이라고 합니다.

Drizzle은 MySQL이 썬에 인수되고 난 후 시작 된 프로젝트로서 최근 Google AppsEngine 및 Amazon SimpleDB 등 웹 기반 데이터스토어가 많아지고 있는 현실을 직시한 변화라고 보여집니다.

웹 서비스의 변화에 따라 로컬 PC의 SQLite 탑재, 파일 시스템 기반 분산 DB의 등장, Lightweight MySQL인 Drizzle 등 이런 상황에서 향후 웹 서비스 비지니스에서 오라클, DB2 등 믿을만한 상용 DB를 계속 고집 할 수 있을까요? (물론 엔터프라이즈 환경 비지니스 로직이 복잡한 IT 환경 말고 말이죠.)

Trackback 0 : Comment 0

[펌]OSCON 세째날 II - SubVersion에서 하지말아야 할 10가지

ITWeb/스크랩 2008.07.25 10:38
최근까지 야후는 CVS 를 사용하고 있었고 지금도 쓰고 있는데요..
본사에서 CVS 교체를 위해서 몇가지 bench marking 을 하고 있더라구요..
지금은.. 제가 퇴사를 하여 뭘 하고 있는지 모르겠으나..
ㅋ 아래 10계명은.. subversion 말고도 cvs 에서도 거의 동일하게 적용 되는듯 하내요.. ㅎㅎ

ref. http://channy.creation.net/blog/533

구글에서 SubVersion을 많이 쓰는 것을 알고 있을 겁니다. 요즘 서브버전을 사용하기 시작하는 회사들이 많고 오픈 소스 프로젝트에서도 많이 이용합니다.

구글 엔지니어인 Ben Collins-Sussman와 Brian W. Fitzpatrick 두 사람이 Subversion의 최악의 사례 10가지를 설명해 주었습니다.

10. Debate Version Control
- CVS냐 SubVersion이냐 논쟁하는 시간이 아깝습니다.
9. Do a Brute-Force Transition
- 힘들게 버전 컨트롤 시스템을 다른 것으로 바꾸는 것을 하지 마세요.
8. Backups? What Backups
- 백업 하지 마세요.
7. Loads of Locales
- 다국어 지원에 힘을 들이지 마세요. 인코딩 등 다 알아서 해줍니다.
6. Rule with an IRON FIST
- 너무 엄밀한 규칙을 피하세요. 커밋 규칙이나 브랜칭, 태깅 정책 등등…

5. Hide the Version Control
- 누가 어떤 커밋을 했는지 잘 알 수 있도록 공개해야 합니다.
4. Use Complex Branching Schemes
- Trunk에서 개발 가능한 걸 복잡하게 너무 많은 브랜칭하는 규칙을 만들지 말것.
3. Put Everything in the Repository
- Tar, ISO, ZIP 파일 모두 레포지터리로? 안될 말씀.
2. Use a Network Drive
- 삼바나 공유 폴더 같은 네트웍 저장소로 사용하지 마세요.
1. Really Clever Hook Scripts!
- 스크립트로 트랜잭션이나 커밋 히스토리를 바꿀려고 하지 마세요.
0. Edit the Repository Database
- 리포지터리 DB를 건드리는 건 최악의 짓입니다.

재미있게 풀어낸 앞의 10가지 사례는 Subversion을 사용하거나 할 계획이 있으시면 꼭 명심하는 게 좋겠습니다

Trackback 0 : Comment 0

[펌]OSCON 둘째날 III - Exceptional 소프트웨어 개발

ITWeb/스크랩 2008.07.25 10:30

그냥 개인적인 생각 입니다만.
개발자는 문서쟁이는 하지 말았으면 한다는 짧은 생각이 스쳐 가내요...
좀더 설계, 개발 등에 집중할 수 있게 해줬으면 좋겠내요..
문서는 전문 writer 에게... ^^*

Channy's Blog 에서 퍼왔슴돠

두번째 키노트로 나선 Robert Lefkowitz의 발표는 정말 인상적이었습니다. 우선 그는 마이크로소프트의 개발 프로세스를 꼬집어서 전통적인 개발 방식이 오픈 소스와 얼마나 다른지 비교해 주었습니다.

뿐만 아니라, 켄트벡의 익스트림 프로그래밍의 라이프 사이클도 비교 대상에 올렸는데요. 이러한 과정은 과거 5세기 부터 발달한 수사학 단계의 일반적 접근으로 보았습니다.

수사학의 분야는 착상(inventio), 배열( dispositio), 표현(elocutio), 암기(memoria), 발표(actio-pronuntiatio)라는 다섯 부분으로 이루어져 있고, 이는 일반적으로 연설이 행해지기까지의 과정으로 알려져 있죠. 수사학과 MS, XP, 오픈 소스를 비교한 도표는 아래와 같습니다.

방법론 개발 과정
Rheotic(수사학) Inventio- Dispositio- Elocutio- Memoria- Pronuntiatio
Microsoft Requirement- Development - Test - Release - Maintainance
XP방법론 Exploration- Planning - Iteration - Release - Productionizing
오픈소스 Bug Report- Tiage - Integration - Commit/Update - Run/Use

하지만, 오픈 소스의 개발은 실제로 Bug Report가 아니라 Commit으로 부터 출발합니다. 즉, Commit / Update (memoria) - Run / Use (Pronuntiatio) - Bug Reporting (Inventio) - Triage (Dispositio) - Integration (Elocutio)의 순서를 따르고 이 점이 전통 소프트웨어 개발과 확연히 다른 것이죠. 여기서 Exceptional Software Methodology가 나옵니다.

먼저 우리가 만드는 소스 코드의 70%는 예외 처리 코드입니다. try - catch를 보면 catch쪽의 코드가 꽤 많죠. 즉, 일단 만들고 문제점을 파악하는 익셉션 처리 방식을 힌트로 오픈 소스 개발 방법론을 정의한 겁니다. 이것은 유지 보수만 있고 개발이 없기 때문에 당연히 프로젝트 단계에서 맨먼저하는 (우리가 늘 고민하는) ‘요구 사항’을 만들지 않습니다. (여기서 모두들 박수를!)

실제로 많은 오픈 소스 프로젝트에서 요구 사항이란게 존재하지 않죠. 사람들은 일단 가져와 그냥 쓰거나 원하면 직접 ㅏ 고치죠. 진짜 필요하면 원하는 기능을 담은 버그를 제출할 뿐입니다. 이게 들어가는지 좋을지 여부를 사용자와 개발자가 판단할 뿐 입니다. 궁극에는 모든 개발 프로젝트의 원흉인 ‘요구 사항’이 없어지는 순간입니다. 행복한 개발 프로세스의 시작인가요? 흠…

p.s. 세번째 키노트는 Larry Wall과 함께 Perl 커뮤니티를 이끌고 있는 Damian Conway 였는데 이렇게 유쾌하면서 지적인 기조 연설을 처음 입니다.

그의 발표는 뭐랄까 ‘유머와 지적 유희’가 겸비되어 있어서 뭐라고 설명하기가 어렵군요. 우선 앞서 발표한 Mark, Robert와 자신의 친구 Larry Wall을 가지고 노는 희화를 통해 사람들에게 유머를 줍니다. 물론 오픈 소스의 미신이라는 것을 섞어서 풍자해서 말이죠.

한바탕 웃고 나서 자신이 구현한 양자 역학과 일반 상대성 이론을 결합할 수 있는 Perl 모듈을 소개했습니다. 제목이 “Temporally Quaquaversal Virtual Nanomachine Programming in Multiple Topologically Connected Quantum-Relativistic Parallel Timespaces — Made Easy” 인데요. 대략 ‘다중 위상으로 연결된 양자-상대적 평행 시공간에서 일시적 양자우주 가상 나노 머신 프로그래밍- 아주 쉬워요!’ 입니다. 솔직히 진짜 쉽게 풀어냈습니다.

그의 이론은 양자역학의 결론은 반물질(Dark Energy)에서 힌트를 얻어 시간이 반대로 흐를 때 사용할 수 있는 positronic variables 라는 변수를 얻어 내는 module을 만듭니다. (이를 이용하면 정의 없이도 값을 얻어 낼 수 있답니다. 흡…)

그의 발표가 끝나자 사람들이 그의 Geek적이고 학자적인 창의적 아이디어에 우뢰와 같은 기립 박수를 보내더군요. 재미있는 광경이었습니다.

tags : oscon, oscon2008
Trackback 0 : Comment 0

[펌]OSCON 둘째날 I - 재미없는 튜토리얼, 재밌는 짤방

ITWeb/스크랩 2008.07.25 10:25
저도 꼭 가보고 싶었던 컨퍼런스 였는데.. 흑..
회사에서 이런거 보내 주면 좋을텐데.. ^^;

늘 윤석찬님의 블로그를 통해서 좋은 정보 잘 보고 있습니다.
감사 드립니다..

ref. http://channy.creation.net/blog/529

오늘 튜토리얼에서 별로 건진게 없습니다. 우선 jQuery를 만든 John Resig의 ‘자바스크립트 라이브러리의 비밀’에서는 그 동안 존 레식이 여러번 강의 한 내용을 재탕(?)하는 수준이었습니다. 아마 존 레식의 강의 파일이나 동영상을 찾아보시는 게 더 낫겠습니다.

Break Time을 통해 ‘세 시간 만에 Open Source 스타트업 만들기’에 들어가보니 사람들의 아이디어를 받아서 간단하게 오픈 소스 프레임웍을 이용해서 프로젝트를 완성하는 수준이더군요. 쩝쩝…

빨리 빠져나와서 Rasmus Lerdorf가 하는 PHP 구조, 확장 유연성 및 보안에 대한 세션에 들어갔습니다. 사실 Rasmus의 발표도 과거 발표를 좀 더 종합한 것인데 다행히 강의 자료를 온라인으로 제공해 주더군요. 잘 몰랐는데 http://talks.php.net에 꽤 많은 발표 자료들이 올라와 있었습니다.. 게다가, 바로 활용할 수 있는 팁들이 많았습니다.

특히, php.ini의 몇 가지 설정을 바꾸고 시스템 콜 부분을 확인해서 병목을 없애거나, inclued 확장으로 include dependence 찾고, Callgrind나 XDebug 같은 디버깅 툴을 이용하는 방법 등이 자세히 나와 있더군요. 구조적인 측면에서 DB 레이어 분리할 때 자신이 사용하는 방법을 잘 설명해 주었습니다. 보안에서는 역시 XSS를 막는 방법 위주로 설명이 되어 있습니다. PHP 개발을 하시는 분이면 참고하시면 도움이 되겠네요.

오후에는 People for Geeks라는 세션에 들어갔는데 6명이 30분씩 어떻게 하면 개발자들이 사람들과 커뮤니케이션을 잘할까 하는 쉽지 않은 질문에 대한 생각을 발표하는 시간이었습니다. Kirrily (GeekEtiquette.com)는 결국 개발자도 사람이니 매너를 지켜야 하고 소프트웨어 개발에서 80/20 법칙, 즉 20%의 중요한 기능을 계속 손봐야 하듯이 남을 존경하고 들어 주는 20% 효과를 얻어야 한다는 다소 뻔한(?) 논리였습니다. 에티켓에 대한 역사를 좀 지루하게 이야기 했습니다만 재밌는 짤방이 있습니다. (When you program open source, you’re programming Communism.)

그 다음 의사 소통 부재에 대한 이야기 였는데요. miscommunication is lying (의사소통 부재는 거짓말과 같다.)라며 개발자들의 의사 소통 역량 없음을 지적했습니다. 뭐 이것도 Please & Thank you 같은 표현을 자주 하고, 인간적인 소통의 적극성을 높여야 한다는 건 다 아는 이야기고 재밌는 짤방 하나로 마무리 합니다. (Tact Template이라고 Please & Thank you를 쓰면서 얼마나 개발자들이 게으른가를 단적으로 보여줍니다.)

그 다음 How to speak Manager라는 세션에서 ‘아! 이제 그만 나가봐야겠다’는 생각이 들었습니다. 간단히 요약하면 상사에게 도망가지말고 말하고, 상사가 무능하면 회사를 바꾸는 게 좋다, 상사 처럼 생각하라, 상사가 멋지게 보이도록 만들어 줘라 뭐 그런 이야기입니다.

대부분 컨퍼런스가 그렇듯이 튜토리얼은 역시 재미가 없군요. 시간도 길고 이미 온라인에서 많이 얻고 있는 정보를 재탕하는 경우가 많으니까요. 사실 자신의 분야가 아닌 곳에 들어가는 게 맞는 것 같은데 그러려니 시간이 아깝다는 생각도 들고 역시 튜토리얼은 컨퍼런스의 계륵인것 같습니다.

tags : oscon, oscon2008
Trackback 0 : Comment 0