ใ€ใฏใ‚„ใ™ใŽใ‚‹ใ•ใ„ใฆใใ‹ใ€‘

ๆ—ฉใ™ใŽใ‚‹ๆœ€้ฉๅŒ– ใจใฏ๏ผŸ

๐Ÿ’ก ใพใ ้…ใใ‚‚ใชใ„ใฎใซ้ซ˜้€ŸๅŒ–ใ™ใ‚‹ใช โ€” ่ซธๆ‚ชใฎๆ นๆบ
๐Ÿ“Œ ใ“ใฎใƒšใƒผใ‚ธใฎใƒใ‚คใƒณใƒˆ
ๆœ€้ฉๅŒ–ใฎๆญฃใ—ใ„้ †ๅบ ๆญฃใ—ใ„้ †ๅบ โœ“ 1. ๅ‹•ใ‹ใ™ Make it work 2. ๆญฃใ—ใใ™ใ‚‹ Make it right 3. ่จˆๆธฌใ™ใ‚‹ Profile it 4. ้€Ÿใใ™ใ‚‹ Make it fast ๆ—ฉใ™ใŽใ‚‹ๆœ€้ฉๅŒ– โœ— 1. ๅ‹•ใ‹ใ™ ๏ผˆ้€”ไธญใงโ€ฆ๏ผ‰ ใ„ใใชใ‚Šๆœ€้ฉๅŒ–๏ผ 4. ้€Ÿใใ™ใ‚‹ ๏ผˆๅ‹˜ใงโ€ฆ๏ผ‰ ๆญฃใ—ใ„้ †ๅบ โ†’ ่ชญใฟใ‚„ใ™ใใ€ๆœฌๅฝ“ใซ้€Ÿใ„ ๆ—ฉใ™ใŽใ‚‹ๆœ€้ฉๅŒ– โ†’ ่ค‡้›‘ใงใ€ๅฎŸใฏ้€Ÿใใชใ„
ๆญฃใ—ใ„ๆœ€้ฉๅŒ–ใฎ้ †ๅบใจใ€Œๆ—ฉใ™ใŽใ‚‹ๆœ€้ฉๅŒ–ใ€ใฎ็ฝ 
ใฒใ‚ˆใ“ ใฒใ‚ˆใ“

ใƒšใƒณใ‚ฎใƒณๅ…ˆ็”Ÿใ€ใ€Œๆ—ฉใ™ใŽใ‚‹ๆœ€้ฉๅŒ–ใ€ใฃใฆใฉใ†ใ„ใ†ๆ„ๅ‘ณ๏ผŸๆœ€้ฉๅŒ–ใฏๆ—ฉใ„ใปใ†ใŒใ„ใ„ใ‚“ใ˜ใ‚ƒใชใ„ใฎ๏ผŸ

ใƒšใƒณใ‚ฎใƒณๅ…ˆ็”Ÿ ใƒšใƒณใ‚ฎใƒณๅ…ˆ็”Ÿ

็›ดๆ„Ÿ็š„ใซใฏใใ†ๆ€ใ†ใ‚ˆใญใ€‚ใงใ‚‚ใƒ‰ใƒŠใƒซใƒ‰ใƒปใ‚ฏใƒŒใƒผใ‚นใฃใฆใ„ใ†ใ‚ณใƒณใƒ”ใƒฅใƒผใ‚ฟ็ง‘ๅญฆใฎๅคงๅ…ˆ็”ŸใŒใ€Œๆ—ฉใ™ใŽใ‚‹ๆœ€้ฉๅŒ–ใฏ่ซธๆ‚ชใฎๆ นๆบใ€ใฃใฆใ„ใ†ๆœ‰ๅใชๆ ผ่จ€ใ‚’ๆฎ‹ใ—ใฆใ‚‹ใ‚“ใ ใ€‚ใพใ ้…ใ„ใ‹ใฉใ†ใ‹ใ‚‚ใ‚ใ‹ใ‚‰ใชใ„ใฎใซใ€้€Ÿใใ—ใ‚ˆใ†ใจใ™ใ‚‹ใ“ใจใŒๅ•้กŒใชใ‚“ใ ใ‚ˆใ€‚

ใฒใ‚ˆใ“ ใฒใ‚ˆใ“

้…ใ„ใ‹ใ‚ใ‹ใ‚‰ใชใ„ใฎใซ้€Ÿใใ™ใ‚‹ใฃใฆใ€ใฉใ†ใ„ใ†ใ“ใจ๏ผŸ

ใƒšใƒณใ‚ฎใƒณๅ…ˆ็”Ÿ ใƒšใƒณใ‚ฎใƒณๅ…ˆ็”Ÿ

ใŸใจใˆใฐใ€Œใ“ใฎใƒซใƒผใƒ—ใฏ้…ใใ†ใ ใ‹ใ‚‰ใ€ใฃใฆๅ‹˜ใง่ค‡้›‘ใชใ‚ญใƒฃใƒƒใ‚ทใƒฅใฎไป•็ต„ใฟใ‚’ๅ…ฅใ‚ŒใŸใจใ™ใ‚‹ใ‚ˆใญใ€‚ใงใ‚‚ๅฎŸ้š›ใซ่จˆๆธฌใ—ใŸใ‚‰ใใฎใƒซใƒผใƒ—ใฏๅ…จไฝ“ใฎ0.1%ใฎๆ™‚้–“ใ—ใ‹ไฝฟใฃใฆใชใใฆใ€ๆœฌๅฝ“ใฎใƒœใƒˆใƒซใƒใƒƒใ‚ฏใฏใƒ‡ใƒผใ‚ฟใƒ™ใƒผใ‚นใฎๅ‘ผใณๅ‡บใ—ใ ใฃใŸโ€ฆใชใ‚“ใฆใ“ใจใŒใ‚ˆใใ‚ใ‚‹ใ‚“ใ ใ€‚็ตๆžœใ€ใ‚ณใƒผใƒ‰ใŒ่ค‡้›‘ใซใชใฃใŸใ ใ‘ใง้€Ÿๅบฆใฏๅค‰ใ‚ใ‚‰ใชใ„ใ€‚

ใฒใ‚ˆใ“ ใฒใ‚ˆใ“

ๅ‹˜ใงๆœ€้ฉๅŒ–ใ—ใกใ‚ƒใƒ€ใƒกใชใ‚“ใ ใญใ€‚ใ˜ใ‚ƒใ‚ใฉใ†ใ™ใ‚Œใฐใ„ใ„ใฎ๏ผŸ

ใƒšใƒณใ‚ฎใƒณๅ…ˆ็”Ÿ ใƒšใƒณใ‚ฎใƒณๅ…ˆ็”Ÿ

้‰„ๅ‰‡ใฏใ€Œใพใš่จˆๆธฌใ€ๆฌกใซๆœ€้ฉๅŒ–ใ€ใ ใ‚ˆใ€‚ใƒ—ใƒญใƒ•ใ‚กใ‚คใƒฉใƒผใฃใฆใ„ใ†ใƒ„ใƒผใƒซใงๅฎŸ้š›ใซใฉใ“ใŒ้…ใ„ใ‹ใ‚’ๆ•ฐๅ€คใง็ขบ่ชใ—ใฆใ‹ใ‚‰ๆ‰‹ใ‚’ๅ…ฅใ‚Œใ‚‹ใ€‚ใใ†ใ™ใ‚ŒใฐๅŠนๆžœใฎใ‚ใ‚‹ๅ ดๆ‰€ใ ใ‘ใซ้›†ไธญใงใใ‚‹ใ—ใ€ไธ่ฆใช่ค‡้›‘ใ•ใ‚’้ฟใ‘ใ‚‰ใ‚Œใ‚‹ใ‚“ใ ใ€‚

ใฒใ‚ˆใ“ ใฒใ‚ˆใ“

ใงใ‚‚ๆœ€ๅˆใ‹ใ‚‰ใใ‚Œใ„ใซ้€Ÿใ„ใ‚ณใƒผใƒ‰ใ‚’ๆ›ธใใฎใฏใƒ€ใƒกใชใฎ๏ผŸ

ใƒšใƒณใ‚ฎใƒณๅ…ˆ็”Ÿ ใƒšใƒณใ‚ฎใƒณๅ…ˆ็”Ÿ

ใ„ใ„่ณชๅ•ใ ใญใ€‚ใ€Œๆ˜Žใ‚‰ใ‹ใซ้žๅŠน็އใชๆ›ธใๆ–นใ‚’้ฟใ‘ใ‚‹ใ€ใฎใฏๆœ€้ฉๅŒ–ใ˜ใ‚ƒใชใใฆใ€Œ่‰ฏใ„่จญ่จˆใ€ใ ใ‚ˆใ€‚O(nยฒ)ใงๆธˆใ‚€ใจใ“ใ‚ใ‚’ใ‚ใ–ใ‚ใ–O(nยณ)ใงๆ›ธใๅฟ…่ฆใฏใชใ„ใ€‚ใ‚ฏใƒŒใƒผใ‚นใŒๆˆ’ใ‚ใฆใ‚‹ใฎใฏใ€ๅฏ่ชญๆ€งใ‚„ไฟๅฎˆๆ€งใ‚’็Š ็‰ฒใซใ—ใฆใพใงๅพฎๅฐใช้€Ÿๅบฆๅ‘ไธŠใ‚’่ฟฝใ„ๆฑ‚ใ‚ใ‚‹ใ“ใจใชใ‚“ใ ใ€‚

ใฒใ‚ˆใ“ ใฒใ‚ˆใ“

ใƒ™ใƒ†ใƒฉใƒณใ‚จใƒณใ‚ธใƒ‹ใ‚ขใงใ‚‚ใ‚„ใฃใกใ‚ƒใ†ใฎ๏ผŸ

ใƒšใƒณใ‚ฎใƒณๅ…ˆ็”Ÿ ใƒšใƒณใ‚ฎใƒณๅ…ˆ็”Ÿ

ใƒ™ใƒ†ใƒฉใƒณใปใฉใƒ‘ใƒ•ใ‚ฉใƒผใƒžใƒณใ‚นใฎ็Ÿฅ่ญ˜ใŒใ‚ใ‚‹ใถใ‚“ใ€Œใ“ใ“ใ‚’ๆœ€้ฉๅŒ–ใ—ใŸใ„ใ€ใฃใฆใ„ใ†่กๅ‹•ใซ้ง†ใ‚‰ใ‚Œใ‚„ใ™ใ„ใ‚“ใ ใ€‚ใงใ‚‚ๆœฌๅฝ“ใฎใƒ—ใƒญใฏใ€ŒไปŠใ“ใฎๆœ€้ฉๅŒ–ใฏๅฟ…่ฆใ‹๏ผŸใ€ใจ่‡ชๅ•ใงใใ‚‹ใ€‚Make it work, make it right, make it fast๏ผˆๅ‹•ใ‹ใ›ใ€ๆญฃใ—ใใ—ใ‚ใ€ใใ‚Œใ‹ใ‚‰้€Ÿใใ—ใ‚๏ผ‰ใฃใฆใ„ใ†ๆ ผ่จ€ใŒใใฎๅ„ชๅ…ˆ้ †ไฝใ‚’ๆ•™ใˆใฆใใ‚Œใ‚‹ใ‚ˆใ€‚

ใฒใ‚ˆใ“ ใฒใ‚ˆใ“

ใพใšใฏๅ‹•ใ‹ใ™ใ“ใจใŒๆœ€ๅ„ชๅ…ˆใชใ‚“ใ ใญ๏ผ

ใƒšใƒณใ‚ฎใƒณๅ…ˆ็”Ÿ ใƒšใƒณใ‚ฎใƒณๅ…ˆ็”Ÿ

ใใ†ใ€‚ใใ—ใฆ้ข็™ฝใ„ใ“ใจใซใ€ใ‚ทใƒณใƒ—ใƒซใง่ชญใฟใ‚„ใ™ใ„ใ‚ณใƒผใƒ‰ใฎใปใ†ใŒใ€ๅพŒใ‹ใ‚‰ๆœ€้ฉๅŒ–ใ‚‚ใ—ใ‚„ใ™ใ„ใ‚“ใ ใ€‚่ค‡้›‘ใซ็ตกใฟๅˆใฃใŸใ‚ณใƒผใƒ‰ใฏใฉใ“ใ‚’ๅค‰ใˆใฆใ„ใ„ใ‹ใ‚‚ใ‚ใ‹ใ‚‰ใชใใชใ‚‹ใ€‚ใ‚ทใƒณใƒ—ใƒซใ•ใ‚’ไฟใคใ“ใจใŒใ€็ตๆžœ็š„ใซๆœ€้€Ÿใฎ้“ใชใ‚“ใ ใ‚ˆใ€‚

ใƒšใƒณใ‚ฎใƒณ
ใพใจใ‚๏ผšใ–ใฃใใ‚Šใ“ใ‚Œใ ใ‘่ฆšใˆใ‚ŒใฐOK๏ผ
ใ€Œๆ—ฉใ™ใŽใ‚‹ๆœ€้ฉๅŒ–ใ€ใฃใฆๅ‡บใฆใใŸใ‚‰ใ€Œใพใšๅ‹•ใใ‚‚ใฎใ‚’ไฝœใ‚Œใ€้€Ÿใใ™ใ‚‹ใฎใฏใใฎๅพŒใ ใ€ใจๆ€ใˆใ‚Œใฐใ ใ„ใŸใ„OK๏ผ
๐Ÿ“– ใŠใพใ‘๏ผš่‹ฑ่ชžใฎๆ„ๅ‘ณ
ใ€ŒPremature Optimizationใ€ ๏ผ ๆ™‚ๆœŸๅฐšๆ—ฉใชๆœ€้ฉๅŒ–
๐Ÿ’ฌ ใ‚ณใƒณใƒ”ใƒฅใƒผใ‚ฟ็ง‘ๅญฆใฎๅทจๅŒ ใƒ‰ใƒŠใƒซใƒ‰ใƒปใ‚ฏใƒŒใƒผใ‚นใŒ1974ๅนดใฎ่ซ–ๆ–‡ใง่ฟฐในใŸ่จ€่‘‰ใ ใ‚ˆใ€‚ๆญฃ็ขบใซใฏใ€Œ็ด„97%ใฎใ‚ฑใƒผใ‚นใงใ€ๅฐใ•ใชๅŠน็އใ‚’ๅฟ˜ใ‚Œใ‚‹ในใใ ใ€‚ๆ—ฉใ™ใŽใ‚‹ๆœ€้ฉๅŒ–ใฏ่ซธๆ‚ชใฎๆ นๆบใงใ‚ใ‚‹ใ€ใจๆ›ธใ‹ใ‚Œใฆใ„ใ‚‹ใ‚“ใ 
โ† ็”จ่ชž้›†ใซใ‚‚ใฉใ‚‹