ããã°ã©ãã¼ã«åãã¦ãã人ã¨ããã§ãªã人
ä¸è¬çã«ãæ¨æºçãªè½åã®ããã°ã©ãã¨ãè¯ãã§ããããã°ã©ãã¨ã®è½åå·®ã¯ä½åã¨ãä½ååã¨ãè¨ãããå人ãã¨ã®è½åå·®ãéå¸¸ã«æ¿ããè·ç¨®ã ã¨è¨ããã¦ãã¾ãã
èªåèªèº«ããã®æ¥çã§10年以ä¸ä»äºãã¦ãã¦ãæ¬å½ã«ãã®ã¨ããã ãªãã¨èº«ã«ãã¿ã¦æãã¾ãã
éã«ãå¹³åçãªããã°ã©ãã«ãªã誰ã ã£ã¦ãªãããåãä¸åããªãã¦ãªããã¨ããæè¦ãããããã§ãããåã¯ããã§ã¯ãªããåãä¸åããããã¨èãã¦ãã¾ãã
ä¾ãã°ã
- ãªãã¸ã§ã¯ãæåã«ã¤ãã¦ç±å¿ã«åå¼·ãã¦ãããã®ã®ããã£ã±ãçè§£ã§ãã¦ããªãã£ã人
- ãããä¸ã®ã³ã¼ããã³ããããäºããè±å´ã§ãããèªåã®æ¸ããã³ã¼ãã説æã§ããªã人
- ç°¡åãªè¨è¨ããããã¦ããã¢ã«ã´ãªãºã ï¼å¦çæé ï¼ãå ¨ãæãæµ®ãã°ãå¦çè¨è¨ãåºæ¥ãªãã£ã人
ãªã©ãããã®äººããã°ã©ãã«åãã¦ããªããªããã¨æã人ãä½äººãè¦ã¦ããããã§ãã
ã§ã¯ãããã°ã©ãã«åãã¦ãã人ã£ã¦ã©ããã人ãªãã§ããããã
ã°ã¼ã°ã«å çã«è¨ãã¦ã¿ã¦ãã
- é ã®åè»¢ãæ©ã人
- 楽ãããã®ããã¾ã人
- æ ãè
ãªã©æ§ã
ãªèãæ¹ããããã¾ãããããè¨ã£ã¦ããã¨ã¯åããã®ã§ãããã¤ãã¤ãçãå¾ãçãã¯å¾ããã¾ããã§ããã
ããã°ã©ãã®ä»äºï¼ããã°ã©ãã³ã°ï¼ä»ã®ä»äº
ããã°ã©ãã¨ã¯ããªãã¡ããã°ã©ãã³ã°ãããè·æ¥ã®ãã¨ã§ãããå®éã«ã¯ããã°ã©ãã³ã°ä»¥å¤ã«ããããã¨ã¯æ²¢å±±ããã¾ãã
ã§ãæ¬è³ªçã«ã¯ãããã°ã©ãã³ã°ã主ãªä»äºã§ãã
åé¡ãåç´åããããã«ãããã°ã©ããã§ã¯ãªãããããã°ã©ãã³ã°ãã«ã¤ãã¦ãã©ã¼ã«ã¹ãã¦èãã¦ã¿ã¾ãã
ããã°ã©ãã³ã°ã®ç´ 質
ããè«æã§ã¯ã60%の人間はプログラミングの素質がない ããã§ãã
ã¨ãããã¨ã¯ 10人ã®ãã¡ããã°ã©ãã³ã°ã®ç´ 質ãããã®ã¯ 4人ã ããã¨ãããã¨ã«ãªãã¾ãã
ããã§æ¸ããã¦ãããã¨ãã以ä¸ã«æç²å¼ç¨ãã¾ãã
人éã¯ã©ããã£ã¦ããã°ã©ãã³ã°ãå¦ãã§ããã®ãããã説ã«ããã°ã人éã¯ä¸ããããç¶æ³ã«å¯¾ãã¦ãã¡ã³ã¿ã«ã¢ãã«ï¼è¦åï¼ãå½¢æãã¦ããã®ã ã¨ããããã®ã¡ã³ã¿ã«ã¢ãã«ã®ã«ã¼ã«ã«ãããã£ã¦ç¶æ³ãè§£éãããã¡ã³ã¿ã«ã¢ãã«ãééã£ã¦ããã°ä¿®æ£ãè¡ããæçµçã«ãã¡ã³ã¿ã«ã¢ãã«ã¨ããã°ã©ãã³ã°è¨èªãä¸è´ããããã«ãªãã
ããã§ãä»ããããã°ã©ãã³ã°ãå¦ã¼ãã¨ãããããã¾ã§ããã°ã©ãã³ã°ã«ä¸å触ãããã¨ã®ãªãçå¾ã«å¯¾ãã¦ãããã°ã©ãã³ã°ãæããåã«ã次ã®ãããªãã¹ããè¡ã£ãã
ãã¹ãã¯ãè¤æ°ã®åé¡ãããªããããã¹ã¦ã®åé¡ã¯ãåºæ¬çã«åããã®ã§ããã
Javaã§æ¸ããããµãã¤ãã¿ã£ã¤ã®å¤æ°ã®å®£è¨ã¨ãããã«ç¶ããã²ã¨ã¤ããã¿ã£ã¤ã¾ã§ã®ä»£å ¥æã
è§£ç群
ä½ç½
ä¾ãã°ã以ä¸ã®ããã«ãªãã
以ä¸ã®æãèªãã§ãæ£ããçãããã§ãã¯ããªããã
int a = 10;
int b = 20;
a = b;
aã¨bã®æ°ããå¤ã¯ï¼
è§£ç群ã¨ãè§£çç¾¤ã«æ£è§£ããªãã¨èããå ´åã®è§£çæ¬ã
ä½ç½
çå¾ã¯ãå ¨å¡ããã°ã©ãã³ã°ã«è§¦ãããã¨ããªãããå°ãªãã¨ãçã=ãæ°å¦ã§ã¯çå·è¨å·ãæå³ãããã¨ãç¥ã£ã¦ããã ãã®æ°å¦ã®åºç¤çãªæè²ã¯åãã¦ããã¯ãã®è ãã¡ã§ãã£ãã
ãã¡ãããããã°ã©ãã³ã°ã«ã¤ãã¦ä½ãç¥ããªã人éãªã®ã ãããJavaã®ã³ã¼ãã¨ãã¦è§£éããå ´åã®ä»£å ¥ã®æåãæ£ããåçãããã¨ãæ£è§£ã«ãªãã®ã§ã¯ãªãã=ã¯å¤æ°ã®å¤ã夿´ããªãã®ãããããªããä»£å ¥ã ã¨ãã¦ããå³ããå·¦ã§ã¯ãªããå·¦ããå³ã¸ã®ä»£å ¥ãããããªããä»£å ¥ã§ã¯ãªããç§»åãªã®ãããããªããã¤ã¾ããä»£å ¥ããå¾ã®å¤æ°ã¯0ã«ãªããããããªãããããã¯ãå¤ã®äº¤æãªã®ãããããªãã
ãã®åé¡ã§ã¯ãè§£ç群ã®ãæ°ãããã¨ããè¨èã®ä½¿ç¨ã«ãã£ã¦ãå¤ããªã«ãå¤åãããã®ã§ããã¨æ¨æ¸¬ãããã¨ãæå¾ ãã¦ããã
ã©ã®ãããªè¦åã§åçãããã¨ããã®ã¯åé¡ã§ã¯ãªãããã®ãã¹ãã§ã®è©ä¾¡ã¯ãã²ã¨ã¤ã®è¦åããè¤æ°ã®ä¼¼ããããªåé¡ã«é¦å°¾ä¸è²«ãã¦é©ç¨ã§ãããã©ãããã¿ããã¤ã¾ãã=ã¯å¤ã交æããã¨ããè¦åãæ¨æ¸¬ããã¨ããããã»ã¼ãã¹ã¦ã®åé¡ã«å¯¾ãã¦ããªã交æã®è¦åãé©ç¨ããçµæãåçããå ´åã®ã¿ãä¸è²«ããã°ã«ã¼ã(consistent group)ã¨ãããå顿¯ã«éãè¦åã§çãããã®ããä¸è²«ãã¦ããªãã°ã«ã¼ã(inconsistent group)ã¨ãããä½ãæ¸ããã«æåºãããã®ãã空æ¬ã°ã«ã¼ã(blank)ã¨ããã
å²åã¨ãã¦ã¯ãä¸è²«ããã°ã«ã¼ãã44%ãä¸è²«ãã¦ããªãã°ã«ã¼ãã39%ã空æ¬ã°ã«ã¼ãã8%ã§ãã£ãã
æ¢åã®ã³ã³ãã¥ã¼ã¿ã¼ç§å¦è ã«æè¦ãæ±ããæã空æ¬ã°ã«ã¼ãããã£ã¨ãããã°ã©ãã³ã°ã®é©æ£ãããã°ã«ã¼ãã§ãããã¨äºæ³ãããããå½¼ãã¯ãçè§£ãã¦ããªãåé¡ã«æ¶æ¸¬ã§çãããã¨ãæå¦ãã種é¡ã®äººéãªã®ã ãã¨ãããããã£ã¦ããã£ã¨ãããã°ã©ãã³ã°é©æ£ãããã«éããªãã
ããããçµæã¯ç°ãªã£ã¦ããããã£ã¨ãé«æç¸¾ã®ã°ã«ã¼ãã¯ãä¸è²«ããã°ã«ã¼ãã§ãã£ããä¸è²«ãã¦ããªãã°ã«ã¼ãã¨ç©ºæ¬ã°ã«ã¼ãã«å±ãã人éã¯ãããã°ã©ãã³ã°ã®çè§£ã«è¦ãã¿ã試é¨ã®æç¸¾ãä½ãã£ãã
ã¤ã¾ããæªç¥ã®ãã®ã«å¯¾ãã¦è¦åæ§ãè¦åºããã¨ããé¦å°¾ä¸è²«ãã¦èããã¿ã¤ãã®æ¹ããããã°ã©ãã³ã°ã®æç¸¾ãè¯ãã£ãã¨ãããã¨ã§ãã
ããã«æ¬¡ã®ããã«ç¶ãã¦ãã¾ãã
ããã°ã©ãã³ã°è¨èªã¨ã¯ãããèªä½ã¯ç¡æå³ãªãã®ã§ãããããä¸å®ã®ä¸è²«ããè¦åã«å¾ã£ã¦è§£éããçµæãããã¾ãããèªä½ã§ã¯ç¡æå³ãªçµæãåºããã¤ã¾ããããã°ã©ãã³ã°ã®ç´ 質ã¯ãæ§ç¯ããã¡ã³ã¿ã«ã¢ãã«ãããã¬ãã«ä¸è²«ãã¦é©ç¨ã§ãããã©ããã«ããã£ã¦ããããã ã
ç¡æå³ãªæèããä¸è²«ããè¦åãå½¢æãã¦é©ç¨ã§ãã人éã¯ãããã°ã©ãã³ã°ã®ç´ 質ããããç¡æå³ãªæèããå¤ãã®è¦åãçæãã¦ãã©ãã©ã«é©ç¨ãã人éã¯ãããã°ã©ãã³ã°ãå¦ã¶ã®ãé£ããã
ã¡ã³ã¿ã«ã¢ãã«ã¨ã¯ã人ããã¤ãç©äºã«å¯¾ããåæã®ãã¨ã§ããç©äºã夿ããåºæºã«ãªã£ã¦ãã¾ãã
ã¤ã¾ãã
int a = 10; int b = 20; a = b;
ã¨ãããããªç¡æå³ãªæèããã"=" ã§ç¹ãããå·¦å´ã¯å³å´ã®å¤ã¨åãã«ãªããã ã¨ããããã«ä¸å®ã®è¦åãèªåã®ä¸ã«æ§ç¯ããè¤æ°ã®åé¡ã«ããã£ã¦ä¸è²«ãã¦é©ç¨ã§ãããã©ãããã¨ãããã¨ã§ãã
åé ã«æ¸ããã¦ããããã«ãèªåã®ä¸ã®ã¡ã³ã¿ã«ã¢ãã«ããããã°ã©ãã³ã°è¨èªã®ããã«ä¸è²«ãã仿§ã«ãªã£ã¦ããªãã¨ãããã°ã©ãã³ã°ãªãã¦åºæ¥ãªãããã§ããã¡ã³ã¿ã«ã¢ãã«ãè¤æ°ã§ãã¦ããããä¸è²«ãã¦é©ç¨ãããã¬ãããã人ã¯ããã°ã©ãã³ã°ãå¦ã¶ã®ãé£ãããã¨è¨ã£ã¦ãããã§ãã
ãã®è«æã¯å¤ãã®ãµã¤ãã§è°è«ããã¦ãã¾ãããããã¤ãå¼ç¨ãããã¨æãã¾ãã
プログラミングできる人とできない人との間の深い溝 - 翡翠はコンピュータに卵を生むか
çµå±ãããã°ã©ãã³ã°ãæ°å¦ã«æ±ããããã®ã¯æ½è±¡çãªãã®ãæ½è±¡çãªã¾ã¾ã§æ±ãè½åã¨ãããã¨ã«ãªãã®ã ãããæ½è±¡çãªæ¦å¿µãã«ã¼ã«ã«å¿ è¦ä»¥ä¸ã«æå³ãæ±ããããå ·ä½çãªèº«ã®åãã®ãã¿ã¼ã³ã«ç¡çç¢çå½ã¦ã¯ãããã¨ããã¨ã¢ãã«ã¨ãã¦ã®ä¸è²«æ§ãå´©ããæ½è±¡åããæå³ããªããªã£ã¦ãã¾ãã
なぜ60%の人はプログラミングが出来ないのか|舩木俊介 『かつて未来とよばれたソサエティ』
å®é¨èª¿æ»ã®çµæãç¡æå³ãªãã®ã§ããããåãå ¥ããä»ã«ãä¸è²«ãã¦ãã®åãå ¥ããã«ã¼ã«ãé©ç¨ã§ãããã¨ãããä¸è²«æ§ã®é«ããããã°ã©ãã³ã°ã®é©æ§ã¨é«ãç¸é¢ããã£ãã
é常ã®å¦åã¨ã¯ç¬ç«ããããã°ã©ãã³ã°ç´ 質ãåå¨ããããã°ã©ãã³ã°ãå¦ç¿ãã以åã«æ±ºã¾ã£ã¦ããã
ãã¤ã³ã¿ã表ã * ããä¸çå·ã表ã !=ãã¯ã©ã¹å®ç¾©ãã©ã ãå¼ã®ææ³ãªã©ãç¾å®ä¸çã§ã¯å ·ä½çã«ãªãã®æå³ããªãã®ã§ãã
ããã°ã©ãã³ã°è¨èªã¨ããæ½è±¡çã§ããã ãã§ã¯æå³ã®ãªããã®ãçè§£ããã«ã¯ãããã«å¯¾ããå ·ä½çãªæå³ãªã©èãããæ½è±¡çãªã¾ã¾ã§ã«ã¼ã«ãåãå ¥ãããã¨ãåºæ¥ããã©ãããã¨ããããã§ãã
ãªã¬ã¼ã·ã§ãã«ãã¼ã¿ãã¼ã¹ããUNIXã·ã§ã«ã®ç¿å¾ã«æ¼ãã¦ãåããããªããã ã¨æãã¾ãã*1
ããã£ã¦ãããã°ã©ãã³ã°è¨èªã®ç¿å¾ã»æ¦å¿µçè§£ã«é¢ãããã¨ã ã¨æãã¾ãã
ã§ãå®éã«ããã°ã©ã ãæ¸ãã¦ç¾å®ä¸çã®åé¡ã解決ãããã¨ããã¨ããã£ã¨è«ççãªæèè½åãæ±ããããã¨æãã¾ãã
è«ççæèè½å
ããã°ã©ã ãç¨ãã¦ç¾å®ä¸çã®åé¡ã解決ãããã¨ãããã¨ã«ã¤ãã¦ãã¡ã³ã¿ã«ã¢ãã«ãããã°ã©ãã³ã°è¨èªã¨ä¸è´ããä¸ã§ããã«æ·±å ãããã¨ãæªç¥ã®åé¡é åã«å¯¾ãã¦ãæ³¨ææ·±ã観å¯ããæ¨è«ããèªå·±æ¤è¨¼ããä¸è²«ããè«çãæ§ç¯ãããã¨ãåºæ¥ããã©ãããã¨ãããã¨ã§ã¯ãªãã§ããããã
ä¾ãã°ã
1 1 2 3 5 8 13
ã¨ããæ°ã®ä¸¦ã³*2ããã£ã¦ãæ¬¡ã«æ¥ãæ°åã¯ãªãã§ãããï¼ ã¿ãããªã¯ã¤ãºã徿ãªäººã¯ãããã°ã©ãã³ã°ã®ç´ 質ãããã¨æãã¾ãã
ä»ã«ã¯ã
1 4 27 256
6 15 35 77
ã¨ãããããªæ°åã¯ã¤ãº*3ã§ãã
ããªãã¡ããã®ã¯ã¤ãºãè§£ãã«ã¯ã
- è¦åæ§ãã«ã¼ã«ãè¦ã¤ãã
- æ£ããæ¨è«ãè¡ãã
- èªå·±ã®çè§£ãæ¤è¨¼ãã
ã¨ãããã¨ãæ±ãããã¾ãã
ããã¦ããã°ã©ãã³ã°ã«å¿ è¦ãªæèã¯ã
- ç©äºã®è¦åãã«ã¼ã«ãæ½åºãæ½è±¡åãæç¢ºã«å®ç¾©ãã
- æ¨è«ã«ãã£ã¦å¦çæé ãçµã¿ç«ã¦ã
- å®é¨ããè«çã®æ£èª¤ãæ¤è¨¼ãã
ã¨ãã£ãã¨ããã ã¨æãã¾ãã
è¦ããã«ããã°ã©ãã³ã°ã«å¿ è¦ãªèãæ¹ã®ãã¼ã¹ï¼ã¨ããããã®ãã®ï¼ï¼ã ã¨æããã§ãã
è«ççæèè½åã¨ããè¨èãä¸çªè¿ãããç¥ãã¾ããã
ä»ã«ããæ°ç¬ãªã©ã®ããºã«ãããªã»ããå°æ£ã徿ãªäººãè«ççæèè½åãé«ãã¨æãããã®ã§ããã°ã©ãã³ã°ã®ç´ 質ãããã¨æãã¾ãã
ããã²ã¨ã¤ã®éè¦ãªè¦ç´
ãã¦ãããã°ã©ãã³ã°ã®ç´ 質ããã£ã¦ããããã°ã©ãã«åãã¦ããªãå ´åãããã¾ãã
ããã°ã©ãã³ã°ã楽ããã¨æãããã©ãã ã§ãã
è¨ãã¾ã§ããªããã¨ã§ãããããã°ã©ãã³ã°ã楽ãããé¢ç½ãã好ããã¨æãã人ã§ãªãã¨ãè¯ãããã°ã©ãã«ã¯ãªããªãã§ãããã
ããã°ã©ãã¨ãã¦åããã¨
ããã«ãåéããã¦ã¯ãããªãäºãããã¾ãã
è¶£å³ã§ããã°ã©ãããã£ã¦ããã ããªãããç¥ãããããã®ããã°ã©ãã¨ãã¦ç¤¾ä¼ã§åãã®ãªãã°ãããã°ã©ãã³ã°ã®ç´ 質以åã«ã社ä¼äººã¨ãã¦åãè½åã絶対ä¸å¯æ¬ ã§ãã
å½ç¶ã®ãã¨ãªãããããã°ã©ãã§ããåã«ç¤¾ä¼äººãªã®ã§ããã社ä¼ã§åãããã«ã¯è«ççæèè½åã¨ã¯å ¨ãç°ãªãå¥ã®ã¹ãã«ãããã¤ãæ±ãããã¾ãã
代表çãªãã®ã§ã¯ãã³ãã¥ãã±ã¼ã·ã§ã³è½åãªã©ã§ããã(^_^)