
¿¡¸¯ ·¹À̸յ尡 ¾´ ¡´¼º´ç°ú ½ÃÀ塵(The Cathedral and the Bazaar)Àº ÀÚÀ¯ ¼ÒÇÁÆ®¿þ¾î öÇÐÀ» ´ëº¯ÇÏ´Â À¯¸íÇÑ ±ÛÀÌ´Ù. ·¹À̸յå´Â ÀÌ ±Û¿¡¼ ¸®´ª½º Ä¿³Î °³¹ß°úÁ¤°ú ÆÐÄ¡¸ÞÀÏÀ̶ó´Â ¿ÀÇ ¼Ò½º ÇÁ·ÎÁ§Æ®¸¦ °³¹ßÇÑ °æÇèÀ» µé¾î ¿ÀÇ ¼Ò½º °³¹ß ¹æ½ÄÀÇ À¯È¿¼ºÀ» ¼³¸íÇÑ´Ù. 1997³â 5¿ù 27ÀÏ ¸®´ª½º ȸÀÇ¿¡¼ óÀ½ °ø°³µÇ¾úÀ¸¸ç, 1999³â °°Àº À̸§ÀÇ Ã¥¿¡ Æ÷ÇԵǾî ÃâÆÇµÇ¾ú´Ù.
±Û¿¡¼ ÀúÀÚ´Â µÎ °¡Áö ¹æ½ÄÀÇ ÀÚÀ¯ ¼ÒÇÁÆ®¿þ¾î °³¹ß ¸ðµ¨À» ´ëÁ¶ÇÑ´Ù.
- ¼º´ç ¸ðµ¨: Ãâ½Ã ¶§¿¡¸¸ ¼Ò½º Äڵ带 °ø°³ÇÏ°í ±× »çÀÌ¿¡´Â Á¦ÇÑµÈ °³¹ßÀڵ鸸 ¼Ò½º Äڵ忡 Á¢±ÙÇÒ ¼ö ÀÖ´Ù. GNU À̸ƽº¿Í GNU ÄÄÆÄÀÏ·¯ ¸ðÀ½°¡ ¿¹ÀÌ´Ù.
- ½ÃÀå ¸ðµ¨: ¼Ò½º Äڵ尡 ÀÎÅͳÝÀ¸·Î ÀϹݿ¡ °ø°³µÈ »óÅ·Π°³¹ßµÈ´Ù. ·¹À̸óµå´Â ¸®´ª½º Ä¿³Î ÇÁ·ÎÁ§Æ®ÀÇ ¸®´õÀÎ ¸®´©½º Åõ¸£¹ß½º°¡ ÀÌ ¹æ½ÄÀ» ¹ß¸íÇØ ³Â´Ù°í ¾²°í ÀÖ´Ù. ±×´Â ¶ÇÇÑ ÆäÄ¡¸ÞÀÏ ÇÁ·ÎÁ§Æ®¿¡ ÀÚ½ÅÀÌ ÀÌ ¸ðµ¨À» Àû¿ëÇÑ À̾߱⵵ ¾²°í ÀÖ´Ù.
±ÛÀÇ ÁÖÁ¦´Â ±×°¡ ¸®´©½º ¹ýÄ¢À̶ó°í À̸§ºÙÀÎ "º¸´Â ´«¸¸ ¸¹´Ù¸é, ¾î¶² ¹ö±×¶óµµ ½±°Ô ÀâÀ» ¼ö ÀÖ´Ù"´Â ¸íÁ¦ÀÌ´Ù. ÀÌ ¸»Àº ¸¹Àº »ç¶÷ÀÌ Å×½ºÆ®Çϰí ÈȾ°í ½ÇÇèÇØ º¼ ¼ö ÀÖµµ·Ï Äڵ尡 °ø°³µÇ¾î ÀÖÀ¸¸é ¹ö±×´Â »¡¸® ÀâÈú °ÍÀ̶õ ¶æÀÌ´Ù. ÀÌ¿¡ ´ëÇØ ¼º´ç ¸ðµ¨¿¡¼´Â ¼Ò½º Äڵ带 ¿©·¯ ¸íÀÇ °³¹ßÀڵ鸸 º¼ ¼ö ÀÖÀ¸¹Ç·Î ¹ö±×¸¦ Àâ´Âµ¥¿¡ ¾öû³ ½Ã°£°ú ³ë·ÂÀÌ µç´Ù°í ÁÖÀåÇß´Ù.
ÀÌ ±Û·Î ÀÎÇØ GNU À̸ƽº¿Í GCC¸¦ Æ÷ÇÔÇÑ ¸¹Àº ¿ÀÇ ¼Ò½º¿Í ÀÚÀ¯ ¼ÒÇÁÆ®¿þ¾î ÇÁ·ÎÁ§Æ®µéÀÌ ½ÃÀå½ÄÀÇ ¿¸° °³¹ß ¸ðµ¨À» »ç¿ëÇÏ°Ô µÇ¾ú´Ù. ÀÌ Áß °¡Àå À¯¸íÇÑ °ÍÀº ³Ý½ºÄÉÀÌÇÁ°¡ ³Ý½ºÄÉÀÌÇÁ Ä¿¹Â´ÏÄÉÀÌÅÍÀÇ ¼Ò½º¸¦ °ø°³ÇÑ °Í°ú ¸ðÁú¶ó ÇÁ·ÎÁ§Æ®¸¦ ½ÃÀÛÇÑ °ÍÀÌ´Ù.
¼º´ç ¸ðµ¨Àº »ó¿ë ¼ÒÇÁÆ®¿þ¾îÀÇ ÀüÇüÀûÀÎ °³¹ß ¹æ½ÄÀÌ´Ù. ´õ¿íÀÌ »ó¿ë ¼ÒÇÁÆ®¿þ¾î´Â º¸Åë Ãâ½Ã ¶§ ¼Ò½º°¡ °°ÀÌ Á¦°øµÇÁö ¾Ê´Â´Ù. ±×·¡¼ "½ÃÀå°ú ¼º´ç"À̶ó´Â ±¸¹®Àº Á¾Á¾ »ó¿ë ¼ÒÇÁÆ®¿þ¾î¿Í ¿ÀÇ ¼Ò½º ¼ÒÇÁÆ®¿þ¾î¸¦ ºñÀ¯ÇÏ´Â µ¥¿¡ ¾²ÀδÙ. ±×·¯³ª ¿ø·¡ ±Û¿¡¼´Â ÀÚÀ¯ ¼ÒÇÁÆ®¿þ¾îµé Áß¿¡ µÎ Á¾·ù¸¦ ºñ±³ÇÏ¿© ¼³¸íÇÏ°í »ó¿ë ¼ÒÇÁÆ®¿þ¾î¿¡ ´ëÇÑ ¾ð±ÞÀº ¾ø¾ú´Ù.
¼º´ç°ú ½ÃÀåÀÇ ¿¹´Â ¼ÒÇÁÆ®¿þ¾î ÇÁ·ÎÁ§Æ®¿¡¸¸ ÀÖ´Â °ÍÀÌ ¾Æ´Ï´Ù. À§Å°¹é°ú´Â ½ÃÀå½ÄÀÇ ÇÁ·ÎÁ§Æ®À̰í, ´©ÇÇµð¾Æ³ª ºê¸®Å´ÏÄ¿ ¹é°ú»çÀüÀº ¼º´çÇüÀÇ ÇÁ·ÎÁ§Æ®ÀÌ´Ù.
======================================================================
IT ¿Í °ü·ÃµÇ¼ MS, IBM µîÀÇ °Å´ë ±â¾÷ÀÇ ½ºÅ¸ÀÏÀÇ ¹Ý´ëÆí¿¡ ¼ ÀÖ´Â Áø¿µÁß(GNU, Netscape, BSD µîµî) °¡Àå ¿µÇâ·ÂÀÌ Å« GNU Áø¿µÀÇ Linux ¶ó´Â OS (¿î¿µÃ¼°è) ÀÇ °³¹ß ½ºÅ¸ÀÏ¿¡ ´ëÇÑ ³»¿ëÀÔ´Ï´Ù.
¼ÒÇÁÆ®¿þ¾î¸¦ °³¹ßÇÏ´Â ÇϳªÀÇ ¹æ¹ý·ÐÀÔ´Ï´Ù¸¸ À̸¦ Âü°í·Î »ý°¢Çغ¼¸¸ÇÑ ³»¿ëÀÌ ¸¹¾Æ¼ ±ÛÀ» ¿À·Áº¾´Ï´Ù.
¼º´ç°ú ½ÃÀå º»¹® => ¡´¼º´ç°ú ½ÃÀ塵, 1.31.2 ¹öÀü, KLDP À§Å°, 2001.(±×´©)
»ó´çÈ÷ ±ä ±ÛÀ̶ó ±ÍÂ÷´ÏÁò¿¡ Àüü¸¦ ¾ÊÀо½Ç ºÐµéÀ» À§Çؼ ±ÛÀÇ ³»¿ëÁß ÇÙ½ÉÀûÀÎ ¼ÒÁ¦¸ñµé¸¸ ³ª¿ÇØ º¸µµ·Ï ÇϰڽÀ´Ï´Ù.
- ¼ÒÇÁÆ®¿þ¾î, ÇÁ·Î±×·¥Àº ¹ÎÁÖÁÖÀÇ, »çȸÁÖÀÇ µî »çȸ ü°è·Î ġȯ - °³¹ßÀÚ, ÇÁ·Î±×·¡¸Ó´Â À§ÀÇ »çȸ ü°è¸¦ À̲ø¾î°¡´Â ¸®´õ·Î ġȯ - »ç¿ëÀÚ, º£Å¸Å×½ºÅÍ´Â À§ÀÇ »çȸ ü°è ¹× ¸®´õ¸¦ µû¸£´Â ½Ã¹ÎÀ¸·Î ġȯ
1. ¸ðµç ÁÁÀº ¼ÒÇÁÆ®¿þ¾î´Â °³¹ßÀÚ °³ÀÎÀÇ °¡·Á¿î °÷À» ±Ü´Â °ÍÀ¸·ÎºÎÅÍ ½ÃÀ۵ȴÙ. (Every good work of software starts by scratching a developer's personal itch)
2. ÁÁÀº ÇÁ·Î±×·¡¸Ó´Â ¾î¶² ÇÁ·Î±×·¥À» ¸¸µé¾î¾ß ÇÒ Áö ¾È´Ù. À§´ëÇÑ ÇÁ·Î±×·¡¸Ó´Â ¾î¶² ÇÁ·Î±×·¥À» ´Ù½Ã ¸¸µé¾î¾ß ÇÒ Áö (±×¸®°í Àç»ç¿ëÇØ¾ß ÇÒ Áö) ¾È´Ù. (Good programmers know what to write. Great ones know what to rewrite(and reuse))
3. ``°¡Áö°í ÀÖ´Â °ÍÀ» ¹ö¸± °èȹÀ» ¼¼¿ì¶ó ; ¾ðÁ¨°¡´Â ¹ö¸®°Ô µÉ °ÍÀÌ´Ù (Plan to throw one away; youu will anyhow)'' (Fred Brooks, ``The Mythical Man-Month'', Chapter 11)
4. ÀûÀýÇÑ Åµµ¸¦ °¡Áö°í ÀÖÀ¸¸é Èï¹Ì·Î¿î ¹®Á¦°¡ ´ç½ÅÀ» ã¾Æ°¥ °ÍÀÌ´Ù. (If you have the right attitude, interesting problems will find you)
5. ÇÁ·Î±×·¥¿¡ Èï¹Ì¸¦ ÀÒ¾ú´Ù¸é ÇÁ·Î±×·¥¿¡ ´ëÇÑ ´ç½ÅÀÇ ¸¶Áö¸· Àǹ«´Â ´É·ÂÀÖ´Â ÈÄÀÓÀÚ¿¡°Ô ÇÁ·Î±×·¥À» ³Ñ°ÜÁÖ´Â °ÍÀÌ´Ù. (When you lose interest in a program, your last duty to it is to hand it off to a competent successor)
6. »ç¿ëÀÚµéÀ» °øµ¿°³¹ßÀÚ·Î »ý°¢Çϸé Äڵ尡 ´Ù¸¥ ¾î¶² ¹æ¹ýº¸´Ùµµ ºü¸¥ ¼Óµµ·Î °³¼±µÇ¸ç È¿À²ÀûÀ¸·Î µð¹ö±ëÇÒ ¼ö ÀÖ´Ù. (Treating your users as co-developers is your least-hassle route to rapid code improvement and effective debugging)
7. ÀÏÂï ¹ßÇ¥Çϰí ÀÚÁÖ ¹ßÇ¥Ç϶ó. ±×¸®°í »ç¿ëÀÚµéÀÇ ¼Ò¸®¿¡ ±Í¸¦ ±â¿ïÀ̶ó. (Release early. Release often. And listen to your customers)
8. ÃæºÐÈ÷ ¸¹Àº º£Å¸Å×½ºÅÍ¿Í °øµ¿°³¹ßÀÚ°¡ ÀÖÀ¸¸é °ÅÀÇ ¸ðµç ¹®Á¦µéÀº »¡¸® ÆÄ¾ÇµÉ °ÍÀÌ°í ½±°Ô °íÄ¡´Â »ç¶÷ÀÌ ÀÖ°Ô ¸¶·ÃÀÌ´Ù. (Given a large enough beta-tester and co-developer base, almost every problem will be characterized quickly and the fix obvious to someone)
9. ÀڷᱸÁ¶¸¦ ÈǸ¢ÇÏ°Ô ¸¸µé°í Äڵ带 ¸ÛûÇÏ°Ô ¸¸µå´Â °ÍÀÌ ±× ¹Ý´ëÀÇ °æ¿ìº¸´Ù ÈξÀ Àß ÀÛµ¿ÇÑ´Ù. (Smart data structures and dumb code works a lot better than the other way around) => ¿©±â¼ ÀڷᱸÁ¶´Â °øµ¿Ã¼ÀÇ ³»ºÎ ½Ã½ºÅÛÀ» ÀǹÌÇϰí ÄÚµå´Â ±× ½Ã½ºÅÛÀÇ ½ÇÇàÇÏ´Â ÇàÀ§¸¦ ¸»ÇÕ´Ï´Ù.
10. º£Å¸Å×½ºÅ͵éÀ» °¡Àå Áß¿äÇÑ ÀÚ¿øÀ¸·Î ¿©±ä´Ù¸é ±×µéÀº Á¤¸» °¡Àå Áß¿äÇÑ ÀÚ¿øÀÌ µÇ¾îÁØ´Ù. (If you treat your beta-testers as if the're your most valuable resource, they will respond by becoming your most valuable resource)
11. ÁÁÀº ¾ÆÀ̵ð¾î¸¦ »ý°¢Çس»´Â °Í ´ÙÀ½À¸·Î Áß¿äÇÑ ÀÏÀº »ç¿ëÀÚµéÀÌ ¾Ë·ÁÁØ ÁÁÀº ¾ÆÀ̵ð¾î¸¦ ±ú´Ý´Â °ÍÀÌ´Ù. ¶§·Î´Â ÀÌÆíÀÌ ´õ ³ªÀ» ¼öµµ ÀÖ´Ù. (The next best thing to having good ideas is recognizing good ideas from your users. Sometimes the latter is better)
12. Á¾Á¾ °¡Àå Ãæ°ÝÀûÀ̰í Çõ½ÅÀûÀÎ ÇØ°áÃ¥Àº ´ç½Å ÀÚ½ÅÀÌ ¹®Á¦¿¡ ´ëÇØ¼ °¡Áö°í ÀÖ´Â °³³äÀÌ À߸øµÇ¾î ÀÖ´Ù´Â °ÍÀ» ±ú´Ý´Â °Í¿¡¼ ³ª¿Â´Ù. (Often, the most striking and innovative solutions come from realizing that your concept of the problem was wrong)
13. ``(¼³°è¿¡ ÀÖ¾î¼) ¿Ïº®ÇÔÀ̶õ ´õ ÀÌ»ó Ãß°¡ÇÒ °ÍÀÌ ¾øÀ» ¶§ ÀÌ·ç¾îÁö´Â °ÍÀÌ ¾Æ´Ï¶ó ´õ ÀÌ»ó ¹ö¸± °ÍÀÌ ¾øÀ» ¶§ ÀÌ·ç¾îÁø´Ù. (Perfection (in design) is achieved not when there is nothing more to add, but rather when there is nothing more to take away)'' => Á¦°¡ Á¦ÀÏ ÁÁ¾ÆÇÏ´Â ¹®±¸ÀÔ´Ï´Ù.
14. ¾î¶² µµ±¸µçÁö ±â´ëÇÏ´Â ¹æ¹ýÀ¸·Î ¾µ¸ð°¡ ÀÖ¾î¾ß ÇÏÁö¸¸ Á¤¸» À§´ëÇÑ µµ±¸´Â »ç¿ëÀÚ°¡ ÀüÇô ±â´ëÇÏÁö ¾Ê¾Ò´ø ¿ëµµ¿¡ ¾Ë¸Â°Ô µÈ´Ù. (Any tool should be useful in the expected way, but a truly great tool lends itself to uses you never expected)
15. ¾î¶² Á¾·ùµç °ÔÀÌÆ®¿þÀÌ ¼ÒÇÁÆ®¿þ¾î¸¦ ¸¸µé·Á°í ÇÑ´Ù¸é µ¥ÀÌÅÍ ½ºÆ®¸²¿¡ °¡´ÉÇÑ ÇÑ ÃÖ¼ÒÇÑÀÇ Á¶ÀÛ¸¸ °¡Ç϶ó -- ±×¸®°í ¼ö½ÅÀÚ°¡ °Á¦·Î ÇÏ°Ô ÇÏÁö ¾Ê´Â´Ù¸é Á¤º¸¸¦ *Àý´ë·Î* Àß¶ó¹ö¸®Áö ¸»¶ó. (When writing gateway software of any kind, take pains to disturb the data stream as little as possible -- and *never* throw away informtion unless the recipient forces you to!) => °ÔÀÌÆ®¿þÀÌ ¼ÒÇÁÆ®¿þ¾î¶õ Á¤º¸³ª µ¥ÀÌÅ͸¦ ¹Þ¾ÆµéÀÌ´Â °ü¹®ÀÇ ¿ªÇÒÀ» ÇÏ´Â ¼ÒÇÁÆ®¿þ¾î¸¦ ÀǹÌÇÏ¸ç µ¥ÀÌÅÍ ½ºÆ®¸²À̶õ ÀÏ·ÃÀÇ µ¥ÀÌÅ͵éÀÇ ¸®½ºÆ®ÀÔ´Ï´Ù.
16. ¾ð¾î°¡ Æ©¸µ-ÄÄÇø®Æ®ÇÏÁö ¾Ê´Ù¸é ±¸¹®»óÀÇ À¯¿¬¼ºÀÌ ÇÊ¿äÇÏ´Ù. (When your language is nowhere near Turing-complete, syntactic sugar can be your friend)
17. º¸¾È½Ã½ºÅÛÀº ±×°ÍÀÌ º¸È£ÇÏ·Á°í ÇÏ´Â ºñ¹Ð¸¸Å¸¸ ¾ÈÀüÇÏ´Ù. °¡Â¥ ºñ¹Ðµé¿¡ ÁÖÀÇÇÒ °Í. (A security system is only as secure as its secret. Beware of pseudo-secrets)
18. Àç¹ÌÀÖ´Â ¹®Á¦¸¦ Ç®¾îº¸°í ½Í´Ù¸é Àڽſ¡°Ô Àç¹ÌÀÖ´Â ¹®Á¦¸¦ ã¾Æ ³ª¼´Â °ÍºÎÅÍ ½ÃÀÛÇ϶ó. (To solve an interesting problem, start by finding a problem that is interesting to you)
19. °³¹ß Á¶Á¤ÀÚ°¡ ÃÖ¼ÒÇÑ ÀÎÅͳݸ¸Å ÁÁÀº ¸Åü¸¦ °¡Áö°í ÀÖÀ¸¸ç °Á¦·ÂÀ» »ç¿ëÇÏÁö ¾Ê°í ¾î¶»°Ô À̲ø¾î¾ß ÇÒ Áö ¾Ë°í ÀÖ´Ù¸é ÇÑ ¸í º¸´Ù´Â ¿©·¯¸íÀÇ ¸®´õ°¡ ÇÊ¿¬ÀûÀ¸·Î ´õ ³´´Ù. (Provided the development coordinator has a medium at least as good as the Internet, and know how to lead without coercion, many heads are inevitable better than one)
[ÀÌ °Ô½Ã¹°Àº °ü¸®ÀÚ´Ô¿¡ ÀÇÇØ 2011-09-05 21:14:36 ¹Ùº¸¹®¿¹¿¡¼ À̵¿ µÊ]
|