ã¯ããã« ããã«ã¡ã¯ãéçºãšã³ãžãã¢ã®north_mkyã§ãã å
æ¥æ¥åã«ãŠè² è·æ€èšŒã JMeter ã§è¡ãããšã«ãªããåŒç€Ÿãšã³ãžãã¢ãæžããäžèšã®èšäºãèªã¿ã€ã€è€æ°ã®ã·ããªãªäœæãè¡ããŸããã tech-blog.rakus.co.jp ã§ããæåã®1ã·ããªãªã®äœæã§å
šç¶æ³å®ããŠããåäœã«ãªãããäºæ³ããã3åã»ã©æéãããã£ãŠããŸããŸããããã ã·ããªãªäœæã«ããã£ãŠå¿
èŠãªç¥èãšããŠããã¡ããã·ããªãªãäœæãã察象ã®ç»é¢ã®ä»æ§çè§£ãå¿
èŠã§ããã æã£ã以äžã«å°ããªèšå®ãã¹ãå€ã ã§ãã ãã®èšäºã§ã¯åå ç®æã«æ°ã¥ããŸã§ã®ããã»ãã¹ãã ã©ã¯ ãã£ã¹ãã玹ä»ããããšæããŸãã ã¯ãã㫠察象èªè
ã·ããªãªäœæãã©ãã«ã·ã¥ãŒãã£ã³ã°ã¬ã€ã Step0. æºå Step1. jmeter.logã確èªãã Step2. ãªã¯ãšã¹ããã©ã¡ãŒã¿ã®å€ãæ£ããã確èªãã Step3. ã·ããªãªå®è¡ãã©ãã®ãªã¯ãšã¹ãã§èœã¡ããå®è¡é ã«èŠãŠç¹å®ãã ããã㫠察象èªè
ã·ããªãªãäœæããŠãã æ¹ã«ã¯æçãªèšäºã«ãªã£ãŠãããšæããŸãã ç¹ã«å°ãè€éãªã·ããªãªãäœæããããšããŠããæ¹ã«ã¯ãã²äžåºŠã¿ãŠããã ããããšæããŸãã JMeter ã®ã·ããªãªå®è¡ã¯ããããšããããã©ã·ããªãªäœæã¯åããŠ/å§ããã°ã£ããã®æ¹ ã·ããªãªéå§ããçµäºãŸã§ã®éã®ç»é¢é·ç§»ãå€ã( ãµã³ãã©ãŒ ãå€ã) ç¹å®ã®ãªã¯ ãšã¹ ããã©ã¡ãŒã¿ã®å€ãå€éšãã¡ã€ã«( CSV )ããèªã¿èŸŒãã§ã»ããããããã«ããŠãã ãªã¯ ãšã¹ ããã©ã¡ãŒã¿ãåçã«å€ããç»é¢é·ç§»ããã CSRF ããŒã¯ ã³ ã·ããªãªäœæ ãã©ãã«ã·ã¥ãŒãã£ã³ã° ã¬ã€ã ãã¹ã®åå 調æ»ãç°¡åãªãã®ããé€ã
ã«ç¹å®ãé£ããåå 調æ»ãžãšã¹ããããèžããšå¹çç ã§ãã®ã§ãã®ãããªæ§æã«ããŸãããã·ããªãª ãããã° ãããŠãããšæåã¯çŽããŠãçŽããŠãéããšã©ãŒãã§ãŠãã...ãšæãããŠãããšãããããã®ã§ãããå€ãã¯ç°¡åãªèšå®ãã¹ãªã®ã§ãæ°ã«ããæ·¡ã
ãšç¢ºèªããŠãããŸãããïŒ Step0. æºå ãŸãæåã« ãããã° ãã§ããããã«ããèšå®ãå¿
èŠã§ãã ãã¹ãèšç» ã®çŽäžã«ä»¥äž2ç¹ã® ã³ã³ããŒãã³ã ã远å ããŸããèšå®ãé©åã«è¡ããš å®éã«å®è¡ãããšãã®ãªã¯ ãšã¹ ãã»ã¬ã¹ãã³ã¹ã®æ
å ±ããã¹ãŠèŠããããã«ãªããŸã ãæ³šæãªã®ã§ããã ãããã° çšã«è¿œå ããã®ã§ å®éã«è² è·æ€èšŒãæµããšãã«ã¯å¿
ãç¡å¹ã«ããŠãã ããã æ£ããèšæž¬ãã§ããªãå¯èœæ§ããããŸãã ãªã¹ã㌠> ã·ã³ãã«ããŒã¿ã©ã€ã¿ å®è¡çµæããã¡ã€ã«åºåãã ã³ã³ããŒãã³ã ã以äžã®ãã㪠xml ãã¡ã€ã«åœ¢åŒã«èšå®ãã ãªã¹ã㌠> çµæãããªãŒã§è¡šç€º 1.ã§åºåãããã¡ã€ã«ãèªã¿èŸŒãã§ãªã¯ ãšã¹ ãã»ã¬ã¹ãã³ã¹ããããããã圢ã§è¡šç€ºãã ã³ã³ããŒãã³ã 倱æãããªã¯ ãšã¹ ãã¯èµ€åã«ããŠããã 1 ãŸã¡ãã£ãŠããããªãã©ã¡ãŒã¿ãèµ€åã«ããŠããã URL ãšã³ã³ãŒã ããããã©ã¡ãŒã¿ããã³ãŒãããŠè¡šç€ºããŠããã Step1. jmeter .logã確èªãã ãã€ã³ã å€éšãã¡ã€ã«ãæ£ããèªã¿èŸŒãŸããŠããã ãã¹ã®æå®ã誀ã£ãŠããªãã å€éšãã¡ã€ã«ã®æžãæ¹ãšã·ããªãªã§èšå®ããã«ã©ã ã®é çªãæ
å ±ã«èª€ãããªãã ãããã¹ãå®è¡ããŠã¿ããã®ã®ãæ¬æ¥ãªããã£ãšå®è¡ã«æéãããããšãããäžç¬ã§å®è¡ãçµãã£ãŠããŸã£ã...ãšããå Žåã¯ããããã·ããªãªãå®è¡ããããã®æºåã«äžè¶³ãããå¯èœæ§ãé«ãã§ãããã®ãšãã¯ãŸã jmeter .logã確èªããŸãã jmeter .logã¯å®è¡ãã°ãšãªã£ãŠãããå€éšãã¡ã€ã«ã®èªã¿èŸŒã¿ãããŸãè¡ã£ãŠããªãå Žåã¯ãšã©ãŒãšããŠèšé²ãæ®ããŠãããŸãã jmeter .logãã¿ãŠåå ç®æãæšæž¬ã§ãããã èšå®ãšã¬ã¡ã³ã > CSV Data Set Config ã®èšå®å
容ã§ãã£ããæå®ãããã¡ã€ã«ã®åœ¢åŒããã£ãŠããã確èªãé©å®ä¿®æ£ããŠãã ããã Step2. ãªã¯ ãšã¹ ããã©ã¡ãŒã¿ã®å€ãæ£ããã確èªãã Step0 ã§èšå®ãã ãªã¹ã㌠> çµæãããªãŒã§è¡šç€º ãèŠãŠå®éã«ã¢ã¯ã»ã¹ãããšãã®ãªã¯ ãšã¹ ããã©ã¡ãŒã¿ãèŠãŠãããŸãã ãã®ãã©ã¡ãŒã¿ã®èšå®ã®ãã¹ãå²ãšå€ãã®ã§äžèšãã€ã³ã4ã€ãé çªã«èŠãŠãããšè¯ããšæããŸãã ãã€ã³ã 倿°åããã®ãŸãŸåºãŠããªãã é©åã«URL ãšã³ã³ãŒã ãããŠããã åç»é¢ã®å€ãååŸãã åŸåŠç > æ£èŠè¡šçŸæœåº ã§èšå®ãã倿°åããã©ã¡ãŒã¿ã«ã»ãããå¿ããŠããªãã åãæž¡ããŠãã倿°ãã©ã¡ãŒã¿ã®å€ãåç»é¢ããæ£ããååŸãããŠããã 1. 倿°åããã®ãŸãŸåºãŠããªãã ãªã¯ ãšã¹ ããã©ã¡ãŒã¿ã®å€ãèŠãã°ããã«èŠã€ããããŸãã( ${hoge} ) 倧æµåå 㯠ã ãµã³ãã©ãŒ ã«èšå®ãã倿°åãå®çŸ©ãã倿°åãšéãã ã åŸåŠç > æ£èŠè¡šçŸæœåº ã® æ£èŠè¡šçŸ ã誀ã£ãŠããŠæœåºçµæã空ã ã® ãã¥ã ãã«ãªããŸãã 2. é©åã«URL ãšã³ã³ãŒã ãããŠããã ãã«ããã€ãæåã§ãã£ããURLã§ã¡ã¿æåãå©çšã§ããªãæåãå«ãŸãããã©ã¡ãŒã¿ãURL ãšã³ã³ãŒã ããªãã§ãªã¯ ãšã¹ ããæããŠããããéã«ãã§ã«URL ãšã³ã³ãŒã ããŠãããšããã«èª€ã£ãŠäºéã§URL ãšã³ã³ãŒã ãè¡ã£ãŠããŸã£ãŠããå ŽåããããŸãããURL Encode?ã ãã§ãã¯ããã¯ã¹ ã確èªããŠã¿ãŠãã ããã HTTPãããã·ãããŠãŠãªã¯ ãšã¹ ããèšé²ããå Žåããããªã« JMeter ãã€ããŠãããŠããå Žåãå€ãã§ããã æ£èŠè¡šçŸ ãçµãã ãããŠãããã¡ã«ãã§ãã¯ãå€ããŠããŸã£ã/ã€ããŠããŸã£ãããšãã§ãŠãããããããŸãããç·»å¯ãªäœæ¥ã§ãã¹ãèµ·ããããã®ã§èªåã責ããããããŠãããã«é²ããŠãããŸããã...( çµéšè« ) 3. åç»é¢ã®å€ãååŸãã åŸåŠç > æ£èŠè¡šçŸæœåº ã§èšå®ãã倿°åããã©ã¡ãŒã¿ã«ã»ãããå¿ããŠããªãã ãªã¯ ãšã¹ ããèšé²ããå Žåããã®èšé²ããŠããå€ã®ãŸãŸã«ãªã£ãŠãããããããŸãããããäžåºŠå€æ°ã®èšå®æŒãããªãã確èªããŠã¿ãŠãã ããã 4. åãæž¡ããŠãã倿°ãã©ã¡ãŒã¿ã®å€ãåç»é¢ããæ£ããååŸãããŠããã 1.ã§æžããåå ã«äŒŒãŠããŸããã æ£èŠè¡šçŸ æœåºã§åç»é¢ããæœåºèªäœã¯ã§ããŠããŠãäœèšãªæåãæŸã£ãŠããŠããŠãšã©ãŒã«ãªã£ãŠããå¯èœæ§ããããŸãã ãªã¹ã㌠> çµæãããªãŒã§è¡šç€º ã§ã¯ã¬ã¹ãã³ã¹ã®bodyã«å¯ŸããŠæååæ€çŽ¢ãã§ããããããªã¯ ãšã¹ ããã©ã¡ãŒã¿ã«ã»ããããå€ãåç»é¢ã®ã¬ã¹ãã³ã¹å
ã§åŒã£ãããã確èªããŠã¿ãŠãã ããã Step3. ã·ããªãªå®è¡ãã©ãã®ãªã¯ ãšã¹ ãã§èœã¡ããå®è¡é ã«èŠãŠç¹å®ãã ãã€ã³ã ãªã¯ ãšã¹ ã/ã¬ã¹ãã³ã¹ããšã«æ³å®ã®æåã«ãªã£ãŠããã確èªãã webãµãŒã/ã¢ããªãã°ãªã© ç»é¢ Step1,2ã確èªããŠãè§£æ¶ããªãå Žåã¯ããããã·ããªãªãããã¿ã€ã¶ãã«ç¢ºèªããäœæ¥ã«ãªããŸããè€æ°ç®æã§ãšã©ãŒãåºãŠããå Žåã¯ãã ãããäžã®ãšã©ãŒãåŒãç¶ãããŠãšã©ãŒãã§ãããšãå€ãã®ã§çŠãæ°æã¡ãæããŠäžããé çªã«èŠãŠãããŸãã ã¬ã¹ãã³ã¹ã§ãšã©ãŒç»é¢ããšã©ãŒæèšãããã°ãããããã³ã±ãåå ãèããããããšæããŸãã ã¢ãµãŒã·ã§ã³ ãé©åã«èšå®ããŠããªããšãšã©ãŒãªã®ã«èŠãç®ã¯æåã衚ãã°ãªãŒã³ã®ã¢ã€ã³ã³ã«ãªãã®ã§ããåå ç¹å®ãé£ãããªããŸããããåŸäžã®ããã«åå ãããã£ãã ã¢ãµãŒã·ã§ã³ ã远å ããŠæ¬¡ããåŒã£ããã£ããšãã¯å€±æã衚ãã¬ããã®ã¢ã€ã³ã³ã«ãªãããã«ãããšè¯ããšæããŸãã ãããã« ãããã§ããã§ãããããé·ãã·ããªãªã ã£ãããã©ã¡ãŒã¿ã®å€ãç»é¢ã®é·ç§»ãšãªããšã·ããªãªã«å°ãããã¹ãèµ·ãããããªãå²ã«åå ç¹å®ã«æéããããæ°å³ã«ãªããŸãã ãããªãšãã«ãã®èšäºãã¿ãŠããã ããŠçããã®ãããããèŠçãå°ãã§ãåããã°å¹žãã§ãã ãšã³ãžã㢠äžéæ¡çš ãµã€ã ã©ã¯ ã¹ã§ã¯ããšã³ãžãã¢ã»ãã¶ã€ããŒã® äžéæ¡çš ãç©æ¥µçã«è¡ã£ãŠãããŸãïŒ ãèå³ãããŸãããæ¯éã確èªããé¡ãããŸãã https://career-recruit.rakus.co.jp/career_engineer/ ã«ãžã¥ã¢ã«é¢è«ãç³èŸŒã¿ãã©ãŒã ã©ã®è·çš®ã«å¿åããã°è¯ããããããªããšããæ¹ã¯ãã«ãžã¥ã¢ã«é¢è«ãéæè¡ã£ãŠãããŸãã 以äžãã©ãŒã ãããç³èŸŒã¿ãã ããã rakus.hubspotpagebuilder.com ã©ã¯ ã¹Developersç»é²ãã©ãŒã https://career-recruit.rakus.co.jp/career_engineer/form_rakusdev/ ã€ãã³ãæ
å ± äŒç€Ÿã®é°å²æ°ãç¥ãããæ¹ã¯ãæ¯é±éå¬ããŠããã€ãã³ãã«ãåå ãã ããïŒ âTECH PLAY techplay.jp âconnpass rakus.connpass.com 倱æããã©ããã¯ã¢ããªã±ãŒã·ã§ã³ã«äŸåããã®ã§ ãµã³ãã©ãŒ > ã¢ãµãŒã·ã§ã³ ã§é©å®ãšã©ãŒãå®çŸ©ããå¿
èŠããããŸã ↩
id:radiocat ã§ãã ã¹ã¯ã©ã 㯠éã®åŒŸäžž ã§ã¯ãªãã®ã§ããã€ãããŸããããšã¯éããŸãããä»åã¯ç§ãã¡ã®ããŒã ã®å€±æäºäŸãã玹ä»ããŸãã 以åã®æçš¿ ã§ã玹ä»ããŸããããç§ãã¡ã®ããŒã ã¯1é±éã¹ããªã³ããæ¡çšããŠããŸãã以äžã®ããã«æšæã«èšç»ãç«ãŠãŠã¹ã¿ãŒãããç¿é±æšæã«ã¬ãã¥ãŒãè¡ãæµãã§ãã ã芧ã®ããã«éçºã«æ³šåã§ããæéã¯å®è³ª4æ¥ãããããŸãããæ²¹æãããšããã«ã¬ãã¥ãŒã®æ¥ãè¿ããã®ã§ç·åŒµæããããŸãããããŠããã®ç·åŒµæã«ããã«æè»ããããèŠçŽ ãã¹ããªã³ãæéäžã®ãäŒæ¥ãã§ãã é£äŒã®çéã®æé㯠ã¹ã¯ã©ã ãé²ããã¹ããïŒ ãåç¥ã®éãã2018幎ã®9æã¯2é±ç¶ããŠææãäŒæ¥ãšãªãæéããããŸããããã®ãŸãŸã ãšéçºãå®è³ª3æ¥ãããªãã¹ããªã³ãã2åç¶ããŸãã ããã«ããã®é£äŒæéãå©çšããŠ2人ã®äž»åã¡ã³ããŒãäŒæãåãããšã«ãªããŸããã5人ããŒã ãªã®ã§éçºåã¯åæžããŸããããŒã ã¯ãã®æéãã©ãéããã¹ãã§ããããïŒ é£äŒã®çéãã¹ããªã³ããé²ããéžæ ãå¯ãã®ãšãããæã
ã¯ãã®ãŸãŸã¹ããªã³ããé²ããŸããããšã¯ããããããã«äžžè
°ã§ãã®ç¶æ³ã«ç«ã¡åããã»ã©ã®åºŠèžã¯ãªãã®ã§ãæã
ãªãã«å¯Ÿçãç«ãŠãŠåãçµãããšããŸããããŸãã¯ãã®å¯Ÿçãã玹ä»ããŸãã é£äŒæéã® ã¹ã¯ã©ã ã€ãã³ãã¯äžæ¢ãã å
šå¡æã£ãŠããªãç¶æ
ãªã®ã§ã¹ããªã³ãã¬ãã¥ãŒã¯1é±éã¹ãããããããšã«ããŸããããã ãé£äŒåã®éæããçæããã¹ããªã³ããäžæããã®ã¯ãã£ãããªãã®ã§ä»¥äžã®ããã«é²ããããšã«ããŸããã åã
ã®éçºã¯é²ããŠè¯ã äžéå端ã«äœæ¥ãäžæããŠå¥ã®äºãããã®ãæ°æã¡ãæªãã®ã§ãåºç€ŸããŠããã¡ã³ããŒã¯åºæ¥ãç¯å²ã§éçºã¯é²ããŠããããšã«ããŸããããã ãäž»åäžåšã§éçºããŒã å
ã§ã®ãã©ããŒãã¬ãã¥ãŒã¯æèã«ãªãã®ã§ãç¡çããåºæ¥ãç¯å²ã§äœæ¥ãé²ããŠãäž»åã¡ã³ããŒã®ã¬ãã¥ãŒãå¿
èŠãªäœæ¥ãªã©ã¯é£äŒæããŸã§ä¿çããããã«ããŸããã çéã®4æ¥éã§1æ¥åã®å®çžŸãç®æšã«ãã äž»å2人ã®äŒæã§ããŒã å
šäœã®ããã©ãŒãã³ã¹ã¯äœäžããŸãããæ®ãã®ã¡ã³ããŒã ãã§ã4æ¥ããã°æ®æ®µã®1æ¥åãããã®å®çžŸã¯å
åéæåºæ¥ãã ãããšèããŸãããããããããšã§çµæçã«2é±éã®åèšã4æ¥åã®å®çžŸãšãªãã®ã§ããã€ãé²ããŠãã1é±éã¹ããªã³ããšåããããã®ããã·ãã£ãç®æãããšã«ãªããæèŠçã«ãããããããç®æšã«ãªããŸããäž»åäžåšãšã¯ãã4æ¥ã§1æ¥åãªã®ã§ãåºå€ããŠããã¡ã³ããŒã«ãè² æ
ãããããªãã¯ãã§ãã ãã©ã³ãã³ã°ãšå
±æããã€ã以äžã«ãã£ããè¡ã 念ã®ãããäŒæã®åæ¥ã«æ¹ããŠäž»åã¡ã³ããŒãèããŠããã¹ããªã³ãäžã®ã¿ã¹ã¯ã®é²ãæ¹ãããŒã ã®ã¡ã³ããŒãžãã£ããå
±æããŠåŒãç¶ãã§ããããŸããã äžãããããªãã£ãããŒã³ããŠã³ãã£ãŒã çµæçã«ãã®ã¹ããªã³ãã§ã¯ãæ®ã¿ã¹ã¯éã瀺ãããŒã³ããŠã³ãã£ãŒãã®å®çžŸã次ã®ããã«ãªããŸããã 埮åŠãªçµæã§ããå€§è² ããšããã»ã©ã§ããªãã埮åŠãªæããéã«æ°æã¡æªããããã§ãããããããã®ã¹ããªã³ãã®ãµããããã¯ããŒã ã«ç²åŒæãæŒããç§ãå«ããŠã¿ããªã¢ã€ã£ãšããç¶æ
ã§æ¹åã¢ã¯ã·ã§ã³ãããŸããŸãšããããªããŸãŸã¹ããªã³ãã¯çµäºããŸããã ãªãèšç»ã©ããã«ã¹ããªã³ããçµãããªãã£ãã®ãïŒ ãã£ããäœãåé¡ã ã£ãã®ããåŸæ¥ ã¹ã¯ã©ã ã³ãŒãã«çžè«ããŠã¿ããš3ã€ã®èª²é¡ãèŠããŠããŸããã ã¹ããªã³ããé²ããã®ã«ååãªäœå¶ã§ã¯ãªãã£ã ç§ãã¡ã®ããŒã ã®ã¡ã³ããŒæ§æãæ¹ããŠæŽçãããšæ¬¡ã®ããã«ãªã£ãŠããŸãã çŸåšé²ããŠãããããžã§ã¯ãã®åšç±æéã1幎以äžã®ã¡ã³ããŒã誰ãããªãç¶æ³ã§ãç®ã«èŠãã人æ°ä»¥äžã«ããŒã ã®äœå¶ã¯åŒ±ããªã£ãŠããŸããããã«å®ã¯ãã®ã¹ããªã³ãã®ååã®äž»åã¡ã³ããŒãäŒæã«å
¥ãçŽåãŸã§ãããŒã ãå©ããã¹ã ã¹ã¯ã©ã ãã¹ã¿ãŒã¯åºåŒµå
ãããªã¢ãŒãã§ããŒã ã®æŽ»åã«åå ããŠãããéçºããŒã ã®ç¶æ³ã詳现ãŸã§ææ¡åºæ¥ãªãç¶æ³ã«ãããŸããããã€ã以äžã«ãã£ããå
±æããŠããäŒæã«å
¥ããšããäºåã®å¯Ÿçã¯éçºããŒã å
ã®åã
ã®ã¡ã³ããŒã®æèŠã«èšãããŠããã客芳çã«ã¿ãŠã察çã§ããŠãããšãããç¶æ
ãã©ããã¯èª°ãããããªãç¶æ³ã«ãªã£ãŠããŸããã ããã¯ãã° ãReadyã§ã¯ãªãã£ã ããŠãäžèšã®ããŒã³ããŠã³ãã£ãŒãã¯çéã®4æ¥éã1æ¥ã®å®çžŸãšããŠãŸãšããŠããŸããããããããããã®æ¥ããšã®å®çžŸã«åããŠã¿ããšæ¬¡ã®ãããªå®çžŸã«ãªã£ãŠããŸããã äž»åã¡ã³ããŒãäŒæã«å
¥ã£ã忥ããå®çžŸãäžããããæ®ã¿ã¹ã¯ãå
šãæžã£ãŠããŸããããã§ã«å±éºãªç¶æ³ã«çªå
¥ããŠããããšãããããŸããå®ã¯ãã®ãšãããã©ã³ãã³ã°æç¹ã®æ³å®ãèŠã£ãŠãã®ãŸãŸã§ã¯ã¿ã¹ã¯ãé²ããããªãããšãããããŸããã ã¹ã¯ã©ã ãã¹ã¿ãŒã¯ããŒã ã®ç¶æ³ãå¯ç¥ãããã£ããã¿ã¹ã¯ã®çµäºæ¡ä»¶ãèŠçŽãããã¹ããªã³ãã®ãŽãŒã«ãèŠçŽããªã©ã®èª¿æŽãè¡ããäžåºŠã¯æ®ã¿ã¹ã¯ãæžããŸããããããã«ãŸãå¥ã®åé¡ãçºçããŠéã«æ®ã¿ã¹ã¯ãå¢ããŠããŸããŸããã çµæçã«ãã®æçæããŠãã ããã¯ãã° ã¯æåããReadyã§ã¯ãªãã£ãã®ã§ããã€ãŸããã®ã¹ããªã³ãã¯ååæç¹ã§ãã§ã«ã³ãŒã«ãè² ããæ±ºãŸã£ãŠããŸããã ãããã1ã€ç®ã®åå ã«ãããšãããããŒã ã®äœå¶ãäžååã§ãååæç¹ã§ã¯ãã®ç¶æ³ãæ£ãã倿ã§ããã¡ã³ããŒãããŸããã§ããã ã¹ã¯ã©ã ãã¹ã¿ãŒã¯ããŒã ã®ç¶æ³ãæ£ç¢ºã«å€æåºæ¥ãã ãã®æ
å ±ããã£ããã§ããŠããªãã£ãããå Žåœããçãªå¯Ÿçãåã£ãŠããŸããçµæçã«ã¯ã³ãŒã«ãè² ãããããŒã ã«ãã®ãŸãŸè©Šåç¶è¡ãä¿ãããšã«ãªã£ãŠããŸããŸããã 仿ããããŸã£ãŠããŠæåœãŠã远ãã€ãã ããŒã ã¯ããã§ããªããšãã¹ããªã³ãã®ãŽãŒã«ãç®æãããšåãçµã¿ãŸãããäŒæãæããŠãããäž»åã¡ã³ããŒã®é 匵ãã«ãã£ãŠãªããšãæã¡çŽããŸãããèšç»ããŠãããŽãŒã«ã«ã¯å°éã§ããŸããã§ããã ããŒã³ããŠã³ãã£ãŒããèŠããšã¹ããªã³ãã®æåŸã§æ®ã¿ã¹ã¯ã®æ¶åãå°ãªããªã£ãŠããŸããå®ã¯ãã®ãšãã仿äžã®ã¿ã¹ã¯ããããå¢ããããŠçµéšã®ããäž»åã¡ã³ããŒã§ãæ®ãã®æéã§å
šãŠãæåœããããšã¯åºæ¥ãªããªã£ãŠããŸãããã¹ããªã³ãååã«çºçããåé¡ããªããšãããããšããŠèšç»æã®æ³å®ãšã¯éãé²ãæ¹ããããããã£ããä¿çããŠä»ã®ã¿ã¹ã¯ã«æãåºããçµæãæ³å®ä»¥äžã«ä»æãäžã®ã¿ã¹ã¯ãå¢ããŠããŸã£ãã®ã§ãã ã³ãŒã«ãè² ãããªãéå å®ã¯ãããã®åå ã¯æ¢ã« ã¹ã¯ã©ã ã³ãŒãã®å矜ãããå¥ã®å Žã§ç€ºãããŠãããã®ã§ããã slide.meguro.ryuzee.com ãã®è³æã®äžã§ ã¢ãžã£ã€ã« éçºã§ã³ãŒã«ãè² ãããªãããã®5ã€ã®ãã€ã³ããæããããŠããŸãã å忡件 ã§éå§ãã Readyãªãããã¯ã ããã¯ãã° é
ç®ã ãçæãã åæã®ä»æããå°ãªããã ãã£ãŒãããã¯ãµã€ã¯ã«ãåãç¶ãã æè¡ã«æè³ãç¶ãã æã
ã¯5ã€ã®ãã€ã³ãã®ãã¡3ã€ãç¯ããŠããŸã£ãŠããŸãããã³ãŒã«ãè² ãããŠããŸã£ãŠã仿¹ãªãã§ãããã¹ããªã³ããé²ããã«ããããæ¹ããŠãããã®3ã€ã®ãã€ã³ããéèŠã§ããããšãçæããŸããã éå§ããã®ã«ååãªæ¡ä»¶ãïŒ ããã¯ãã° ã¯Readyã«ãªã£ãŠãããïŒ ä»æããå¢ããããé²ãæ¹ãããŠããªããïŒ ããã§ããæã
ã¯ãã®1åã®ã¹ããªã³ãã§ãšãŠã倧ããªåŠã³ãåŸããšãæã£ãŠããŸããä»åŸã¯ãããããã£ããæèããŠããŒã ã§åãçµãããšããŠããŸãã REGIONAL SCRUM GATHERING TOKYO 2019 ã®CfPãåºããŸããïŒ 2019幎1æ9æ¥ã11æ¥ã«å€§åŽãã©ã€ãã³ã¢ããŒã«ã§1幎ã«1床㮠ã¹ã¯ã©ã ã®ããã¯ã€ãã³ããREGIONAL SCRUM GATHERING TOKYO 2019ããéå¬ãããŸãã 2019.scrumgatheringtokyo.org ç§ãã¡ã® ã¹ã¯ã©ã ã®åãçµã¿ãå€ãã®æ¹ã«ç¥ã£ãŠããã ãããããŠç§ãã¡èªèº«ãåŠã³ãåŸãããã«ããããŒã¶ã«ã«å¿åããŸãããäžèšã®ãªã³ã¯ãã確èªããã ãããèå³ã®ããããã¯æ¯élikeããé¡ãããŸãïŒç· åã10ææ«ã§ãã®ã§ã泚æãã ããïŒã https://confengine.com/regional-scrum-gathering-tokyo-2019/proposal/7956/- confengine.com REGIONAL SCRUM GATHERING TOKYOã§ã¯æ¯åããããã®çŽ æŽãããã»ãã·ã§ã³ãè¡ãããŸãã®ã§ã ã¹ã¯ã©ã ã«èå³ã®ããããã¯ãã²ãã±ãããå
¥æããŠãåå ããã ããã°ãšæããŸãã
åãã« ããã«ã¡ã¯ïŒãšã³ãžãã¢ã® id:FM_Harmony ã§ãã ååã¯gitã®fetchã³ãã³ãã«ã€ããŠãèšäºãæçš¿ããŸããã tech-blog.rakus.co.jp ä»å㯠postgreSQL ã®å¯Ÿè©±åã¿ãŒããã«ã psql ã®ãªãã·ã§ã³ã«ã€ããŠç޹ä»ããããšæããŸãã æ®æ®µã®æ¥åã§ãã psql ã³ãã³ãã® -f ãªãã·ã§ã³ã -c ãªãã·ã§ã³ãå©çšããŠã¯ãšãªãçºè¡ããæ©äŒãå€ãã®ã§ããã psql ã«ã¯ä»ã«ã䟿å©ãªãªãã·ã§ã³ãåãã£ãŠããŸãã å€ãã®ãªãã·ã§ã³ãååšããŸãããä»åã¯ãã®äžã§ãå人çã«äŸ¿å©ã ãšæã4ã€ã®ãªãã·ã§ã³ã«ã€ããŠç޹ä»ããŸãã åãã« -aïŒçºè¡ããã¯ãšãªãã³ã¡ã³ããåºåãã -tïŒæœåºçµæã®ã¿åºå -AïŒäœçœ®æããè¡ããªã -FïŒåºåãæåãæå®ãã å©çšäŸïŒæœåºçµæããcsvãã¡ã€ã«ãäœæãã çµããã« åè -aïŒçºè¡ããã¯ãšãªãã³ã¡ã³ããåºåãã psql ã³ãã³ããå©çšã㊠SQL ãã¡ã€ã«ãã¯ãšãªã®çºè¡ãè¡ã£ãå Žåãå®è¡çµæã®ã¿åºåãããŸãã sample.sql --this is comment SELECT columnA, columnB FROM some_table; $ psql -U postgres -d some_db -f sample.sql columnA | columnB ---------+--------- A | B (1è¡) ãã®æã psql ã³ãã³ãã« -a ãªãã·ã§ã³ãæå®ããããšã§ãçºè¡ããã¯ãšãªã SQL ãã¡ã€ã«ã«èšèŒããã³ã¡ã³ããåºåããããšãã§ããŸãã $ psql -U postgres -d some_db -f sample.sql -a --this is comment SELECT columnA, columnB FROM some_table; columnA | columnB ---------+--------- A | B (1è¡) ãã®ãªãã·ã§ã³ã䜿ãããšã§ãäŸãã° SQL ãã¡ã€ã«ã®å®è¡çµæãã°ãã¬ãã¥ãŒããŠãããéãªã©ãã¬ãã¥ãŒè
ã SQL ãã¡ã€ã«ã®å®è¡ã³ãã³ããææ¡ãããããªããŸãã -tïŒæœåºçµæã®ã¿åºå éåžžã psql ã³ãã³ããçšããŠæœåºçµæãåºåããå Žåãååãåºåããè¡ãåºåçµæã«å«ããŸãã $ psql -U postgres -d some_db -c "SELECT columnA, columnB FROM some_table;" columnA | columnB ---------+--------- A | B (1è¡) psql ã³ãã³ãã« -t ãªãã·ã§ã³ãæå®ããããšã§ãæœåºçµæããååãè¡æ°è¡šç€ºãé€ããŠåºåããããšãã§ããŸãã $ psql -U postgres -d some_db -c "SELECT columnA, columnB FROM some_table;" -t A | B äŸãã°ã psql ã§æœåºããçµæãåºã«ããŠäœããã®ç¹°ãè¿ãåŠçãè¡ã ã¹ã¯ãªãã ãäœæããéãªã©ãæœåºçµæã«ååãè¡æ°è¡šç€ºã¯å¿
èŠãªãå ŽåããããŸãã ããã§ããã®ãªãã·ã§ã³ã䜿ãããšã§ããããé€ããåºåçµæãååŸããããšãã§ããŸãã -AïŒäœçœ®æããè¡ããªã psql ã³ãã³ããå©çšããéã®æœåºçµæã¯ã衚圢åŒã«æŽåœ¢ãããŠåºåãããŸãã $ psql -U postgres -d some_db -c "SELECT columnA, columnB FROM some_table;" columnA | columnB ---------+--------- A | B (1è¡) ãã®æã psql ã³ãã³ãã« -A ãªãã·ã§ã³ãå©çšããããšã§ãäœçœ®æããªãã®åºåãæåã | ãšãã圢åŒã§æœåºçµæãåºåããããšãã§ããŸãã $ psql -U postgres -d some_db -c "SELECT columnA, columnB FROM some_table;" -A columnA|columnB A|B (1è¡) äž»ã«ãã®ãªãã·ã§ã³ã¯ã次㮠-F ãªãã·ã§ã³ãšçµã¿åãããŠæœåºçµæã®åºå圢åŒã倿Žããéã«å©çšããŸãã -FïŒåºåãæåãæå®ãã åè¿°ã® -A ãªãã·ã§ã³ãšå
±ã«å©çšããããšã§ãæœåºçµæã®åºå圢åŒã倿Žããããšãã§ããŸãã -F ãªãã·ã§ã³ã®åŸã«æå®ããæåããæœåºçµæã®åºåãæåã«æå®ããŸãã $ psql -U postgres -d some_db -c "SELECT columnA, columnB FROM some_table;" -A -F : columnA:columnB A:B (1è¡) å©çšäŸïŒæœåºçµæãã csv ãã¡ã€ã«ãäœæãã ä»å玹ä»ãããªãã·ã§ã³ã®å©çšäŸãšããŠãããŒã¿ããŒã¹ã®æœåºçµæãã csv ãã¡ã€ã«ãäœæããæ¹æ³ãã玹ä»ããŸãã ãã®å Žåã -A ã -F ãªãã·ã§ã³ãæå¹ã§ãã 2ã€ã®ãªãã·ã§ã³ãçµã¿åãããŠåºåãæåã ã«ã³ã ã«ããããšã§ãæœåºçµæã csv ãã¡ã€ã«ã®åœ¢åŒã§åºåããããšãã§ããŸãã $ psql -U some_user -d some_db -c "SELECT columnA, columnB FROM some_table;" -A -F , columnA,columnB A,B (1è¡) ããšã¯ãåºåçµæã«å¯ŸããŠãªãã€ã¬ã¯ããªã©ãçšããããšã§ãæœåºçµæãã csv ãã¡ã€ã«ãäœæããããšãã§ããŸãã ãŸããåå㯠CSV ãã¡ã€ã«ã«å«ããããè¡æ°ã¯å«ããããªããšããå Žåã grep ã³ãã³ã ãªã©ãšçµã¿åãããŠè¡æ°è¡šç€ºãåºåçµæããé€ããšè¯ãã§ãããã # è¡æ°è¡šç€ºãåé€ããäžäŸ $ psql -U some_user -d some_db -A -F , -c "SELECT * FROM some_table;" | grep -v "è¡" columnA,columnB A,B çµããã« psql ã®ãªãã·ã§ã³ãããã€ã玹ä»ããŠã¿ãŸãããããããã§ããã§ããããã ä»å玹ä»ãããªãã·ã§ã³ã¯æœåºçµæã«åœ±é¿ãäžãããã®ã°ããã§ããããã¡ããããŒã¿ã®è¿œå ãæŽæ°æã«å©çšã§ãããªãã·ã§ã³ãååšããŸãã ãã ã psql ã³ãã³ããå©çšããç®çãšããŠå€ãã®ã¯ããã¯ãããŒã¿æœåºã ãšæããŸãã ãªã®ã§ãä»å玹ä»ãããªãã·ã§ã³ãå©çšã§ããæ©äŒãšããã®ã¯ãã»ãã®ãªãã·ã§ã³ã«æ¯ã¹ãŠå€ãããã«æããŸãã çããŸã psql ã³ãã³ããå©çšãããéã¯ãä»å玹ä»ãããªãã·ã§ã³ã®å©çšãæ€èšããŠã¿ãŠã¯ãããã§ããããã åè psql - PostgreSQL 9.6.5ææž ãšã³ãžã㢠äžéæ¡çš ãµã€ã ã©ã¯ ã¹ã§ã¯ããšã³ãžãã¢ã»ãã¶ã€ããŒã® äžéæ¡çš ãç©æ¥µçã«è¡ã£ãŠãããŸãïŒ ãèå³ãããŸãããæ¯éã確èªããé¡ãããŸãã https://career-recruit.rakus.co.jp/career_engineer/ ã«ãžã¥ã¢ã«é¢è«ãç³èŸŒã¿ãã©ãŒã ã©ã®è·çš®ã«å¿åããã°è¯ããããããªããšããæ¹ã¯ãã«ãžã¥ã¢ã«é¢è«ãéæè¡ã£ãŠãããŸãã 以äžãã©ãŒã ãããç³èŸŒã¿ãã ããã rakus.hubspotpagebuilder.com ã©ã¯ ã¹Developersç»é²ãã©ãŒã https://career-recruit.rakus.co.jp/career_engineer/form_rakusdev/ ã€ãã³ãæ
å ± äŒç€Ÿã®é°å²æ°ãç¥ãããæ¹ã¯ãæ¯é±éå¬ããŠããã€ãã³ãã«ãåå ãã ããïŒ âTECH PLAY techplay.jp âconnpass rakus.connpass.com
倧éªãªãã£ã¹ã®ç§»è»¢ ãæ©ã«ãçæŽ»ãªãºã ãçµ¶è³èŠçŽãäžã® @kawanamiyuu ã§ãã ä»åã¯æšå¹ŽåºŠããåãçµãã§ãããéç§°ããã¿ãããããžã§ã¯ããã®ä»æã®ææïŒã®äžéšïŒã«ã€ããŠã玹ä»ããŸãã ãã¿ãããããžã§ã¯ããšã¯ ããã·ã§ã³ ç®æš 瀟å
ã·ã¹ãã ã®ãã€ã¯ããµãŒãã¹å 瀟å
ã·ã¹ãã ã®æŠèŠ ãã¿ãããããžã§ã¯ãéå§å 2018 幎 9 æçŸåš ãã€ã¯ããµãŒãã¹ã®çµææŽåæ§ èª²é¡æ æ€èšŒå
容 æ€èšŒçµæïŒåŸãããç¥èŠïŒ ãµãŒãã¹ã®åå²ã¯é£ãã çµææŽåæ§ã®æ
ä¿ã¯é£ãã æåŸã« ãã¿ãããããžã§ã¯ããšã¯ ãã¿ãããããžã§ã¯ããšã¯ãéçºã®æªæ¥ã«å
æãæã€ãããžã§ã¯ããã®ç¥ç§°ã§ã2017 幎床ã«åãçµã¿ãå§ãŸããŸããã ããã·ã§ã³ ãç¶ç¶çã«æ°ããããšã«åãçµã¿ãçµç¹èŠæã«å¯ŸããŠè¿
éã«ãã¬ã³ãæè¡ã§å¿ããããšãã§ããããã«ãªãã ç®æš å
·äœçã«ã¯ä»¥äžã®å®çŸã®ããã®æè¡æ€èšŒãç¥èŠç²åŸãã瀟å
ã·ã¹ãã ã®ãã€ã¯ããµãŒãã¹åã顿ã«è¡ã£ãŠããŸãã ãœãããŠã§ã¢èŠæš¡ã«æ¯äŸããéçºå¹çäœäžã®è»œæž ç¡åæ¢ãããã€ãäžå
·åçºççäœäžãªã©ã®é«å¯çšæ§ã®å®çŸ çŸè¡ãœãããŠã§ã¢ããã®æ®µéçãªç§»è¡ã®å®çŸ 瀟å
ã·ã¹ãã ã®ãã€ã¯ããµãŒãã¹å 瀟å
ã·ã¹ãã ã®æŠèŠ LAMP ( PHP ) ã§æ§ç¯ãããã¢ããªã·ãã¯ãª Web ã¢ããªã±ãŒã·ã§ã³ ãšã³ãžãã¢ã çµç æ
åœè
ãªã©ãã瀟å
ããã®ã¿ã¢ã¯ã»ã¹ããŠå©çšãã ãããžã§ã¯ãç®¡çæ©èœãéçºçšŒåéèšæ©èœãªã©ãæäŸãã ãã¿ãããããžã§ã¯ãéå§å ãã¹ãŠã®æ©èœãã¢ããªã·ãã¯ãªã¢ããªã±ãŒã·ã§ã³ãšããŠæäŸãããŠãã 2018 幎 9 æçŸåš ã¢ããªã·ãã¯ãªã¢ããªã±ãŒã·ã§ã³ãããäžéšã®æ©èœããã€ã¯ããµãŒãã¹ãšããŠåãåºãã ãã€ã¯ããµãŒãã¹ã¯ AWS äžã§ã³ã³ãããšããŠåäœããŠãã ãã€ã¯ããµãŒãã¹ã®çµææŽåæ§ ãã€ã¯ããµãŒãã¹åãé²ãããšããã¯ãšã³ãã§è€æ°ã®ãµãŒãã¹ãå調ããŠåäœããããšã«ãªãããããŸã§ã¯ããŒã¿ããŒã¹ã® ãã©ã³ã¶ã¯ã·ã§ã³ æ©èœã«ããæ
ä¿ãããŠããããŒã¿ã®äžè²«æ§ã«ã€ããŠå¥ã®ã¢ãããŒããå¿
èŠã«ãªããŸãã ãã¿ãããããžã§ã¯ãã®ä»æã®åãçµã¿ã® 1 ã€ãšããŠããã€ã¯ããµãŒãã¹ã®çµææŽåæ§ã«ã€ããŠèª¿æ»ãæè¡æ€èšŒãè¡ããŸããã èª²é¡æ è€æ°ã«åå²ããããµãŒãã¹éã®ããŒã¿ã®äžè²«æ§ãã©ã®ããã«ä¿ãŠã°ããã ããŒã¿äžæŽåãçããå Žåãã©ã®ããã« ãªã«ã㪠ãŒããã°ããã æ€èšŒå
容 ããæ©èœã 2 ã€ã®ãµãŒãã¹ (å³äžã® project-service ãš function-service ) ãšããŠåãåºã ã¢ããªã·ãã¯ãªã¢ããªã±ãŒã·ã§ã³ããè€æ°ïŒç€Ÿå
ã§ã®å©çšå®çžŸããªãããããã¯å°ãªãïŒã®èšèªã ãã¬ãŒã ã¯ãŒã¯ ãå©çšããŠåå²ããããšãæè¡æ€èšŒã®äžç° ãããªãœãŒã¹ãæ°èŠç»é²ããéã«ãåŸæ¥ 1 ãã©ã³ã¶ã¯ã·ã§ã³ ã§è¡ã£ãŠããåŠç ( SQL ) ã®äžéšããä»ååãåºãããµãŒãã¹ã® API åŒã³åºãã«çœ®ãæãã ããŒã¿ã®æŽåæ§ã¯ãªãã©ã€åŠçã§æ
ä¿ãã æ€èšŒçµæïŒåŸãããç¥èŠïŒ ãµãŒãã¹ã®åå²ã¯é£ãã 倧åæãšããŠãµãŒãã¹ããŸãã ãã©ã³ã¶ã¯ã·ã§ã³ ãçºçããªãããã«ãµãŒãã¹ãåå²ãã¹ã ä»åã®ããã«åäž ãã©ã³ã¶ã¯ã·ã§ã³ ã§ããŒã¿æŽæ°ããããåŠçã§ããã°ããµãŒãã¹å士ã ççµå ã§ã¯ãªããšããããšã§ããããããããµãŒãã¹åå²ã®ç²åºŠãæ£ãããªãå¯èœæ§ãé«ã ãã¡ã€ã³ ã®ç¥èãä¹ããç¶æ
ã§ã¯é©å㪠ãã¡ã€ã³ å¢çãèªèããããšã¯ããããŠé£ãã ãã¡ã€ã³ ã®ç¥èãå¢ããäžç€ã«ãªã£ãŠããåå²ãçŽãããšããå¥ã®æå³ã§é£æåºŠãé«ãã èªåãã¹ããªã©å質æ
ä¿ã®ä»çµã¿ããäœãçŽãã«å¯Ÿããçµç¹ã®çè§£ã®åºŠåãã§å®çŸå¯èœæ§ã倧ããå€ãã çµææŽåæ§ã®æ
ä¿ã¯é£ãã ä»åã®ããã«ãªãã©ã€ïŒæéåæ°ïŒã§æŽåæ§ãæ
ä¿ããå Žåããã¹ãŠå€±æããå¯èœæ§ããŒãã§ã¯ãªããæçµçã«ãã°ãªã©ããæå ãªã«ã㪠ãŒã§ããä»çµã¿ãèããŠããå¿
èŠããã ä»åã¯æéã®éœåã§æ€èšŒããŠããªãããã¡ãã»ãŒãžãã¥ãŒãå©çšããã€ãã³ããœãŒã·ã³ã°ãª ã¢ãŒããã¯ãã£ ãæ€èšããã 忣 ãã©ã³ã¶ã¯ã·ã§ã³ ïŒäºçžã³ããããªã©ïŒã®ææ³ã䜿ãéžæè¢ãããããã·ã¹ãã ã®è€éããé£æåºŠãäžæ°ã«å¢å ãããã§çŸå®çã§ã¯ãªããã æåŸã« ãã€ã¯ããµãŒãã¹ã®åå²ãçµææŽåæ§ã«é¢ããç¥èŠã¯ãæ
å ±ãšããŠã¯äžã®äžã«ãããŸãããå®éã«èªåã®æãåãããŠæ€èšŒããããšã§ãæ¹ããŠãã®èª²é¡æã宿ãããšãšãã«ãçŸå®ã®ãµãŒãã¹éçºã«ãã€ã¯ããµãŒãã¹ ã¢ãŒããã¯ã㣠ãé©çšããé£ãããæããã«ãªããŸãã ã©ã¯ ã¹ã§ã¯çŸåšã HRïŒäººäºåŽåïŒé åã察象ããæ°ãµãŒãã¹ã®éçº ã«åãçµãã§ããããã®ããã¿ãããããžã§ã¯ããã§åŸãããç¥èŠãçŸå®ã®ãããžã§ã¯ãã§æŽ»ããããããšããŠããŸããäŸãã° ã©ã¯ ã¹ãæäŸãã ã¯ã©ãŠã ãµãŒãã¹ãšããŠã¯åããŠå
šé¢çã« ã¯ã©ãŠã ãã€ãã£ã㪠ã¢ãŒããã¯ãã£ ãæ¡çšããããšã決å®ããŸãã ãã€ã¯ããµãŒãã¹ ã¢ãŒããã¯ãã£ ã®æ¡çšã«ã€ããŠãæ€èšããŸããããä»åçµéšãããµãŒãã¹åå²ã®é£ããããããŸãã¯ã¢ããªã·ãã¯ãª ã¢ãŒããã¯ãã£ ã§æéã§ããŒã±ããã«åå
¥ãããšããéžæãããŸãã ã©ã¯ ã¹ã§ã¯çŸç¶ã«æºè¶³ããéçºã®æªæ¥ã«å
æãæã£ãŠããã仲éãHRTech ã«èå³ããããšã³ãžãã¢ãåéããŠããŸãïŒ www.wantedly.com ãšã³ãžã㢠äžéæ¡çš ãµã€ã ã©ã¯ ã¹ã§ã¯ããšã³ãžãã¢ã»ãã¶ã€ããŒã® äžéæ¡çš ãç©æ¥µçã«è¡ã£ãŠãããŸãïŒ ãèå³ãããŸãããæ¯éã確èªããé¡ãããŸãã https://career-recruit.rakus.co.jp/career_engineer/ ã«ãžã¥ã¢ã«é¢è«ãç³èŸŒã¿ãã©ãŒã ã©ã®è·çš®ã«å¿åããã°è¯ããããããªããšããæ¹ã¯ãã«ãžã¥ã¢ã«é¢è«ãéæè¡ã£ãŠãããŸãã 以äžãã©ãŒã ãããç³èŸŒã¿ãã ããã forms.gle ã€ãã³ãæ
å ± äŒç€Ÿã®é°å²æ°ãç¥ãããæ¹ã¯ãæ¯é±éå¬ããŠããã€ãã³ãã«ãåå ãã ããïŒ rakus.connpass.com
ã¯ããã« æ°å2幎ç®ãšã³ãžãã¢ã®kasuke18ã§ãã ã€ãå
æ¥iOS12ããªãªãŒã¹ãããŸããããªãªãŒã¹ãããå
å®¹ã¯æ°å€ããããŸããããã®äžã§ãæ°ã«ãªã£ãã®ããã·ã§ãŒãã«ããããšããã¢ããªã§ãããã®ã¢ããªãããŸã䜿ãã° iPhone åäœã§ API ã®å®è¡ãå¯èœã«ãªããŸããå®éã«è©ŠããŠã¿ãŸããã®ã§ã玹ä»ããŸãã ããã ã¯ããã« ãã·ã§ãŒãã«ãããã¢ããªã«ã€ããŠ äœæããã·ã§ãŒãã«ãã å
容 äœæäŸ å®è¡çµæ ãããã« åèæç® ä»é²ïŒä»å䜿çšããã¢ã¯ã·ã§ã³ ãã·ã§ãŒãã«ãããã¢ããªã«ã€ã㊠ãªãªãŒã¹ããŒã Shortcuts 2.0 release notes ãèŠããšããã·ã§ãŒãã«ãããã¢ããªã¯iOS12ã®ä»¥åã«ãWorkflowãã¢ããªãšããŠå
¬éãããŠããããã§ãã ãã·ã§ãŒãã«ãããã¢ããªã§ã¯ã ããžã¥ã¢ã«ããã°ã©ãã³ã°èšèª ã®ããã« ã¢ã¯ã·ã§ã³ ãšåŒã°ããæ§æèŠçŽ ãçµã¿åãããŠ1ã€ã®ã·ã§ãŒãã«ãããäœæããŸããã¢ã¯ã·ã§ã³ã«ã¯ iPhone端æ«ã®èšå®å€æŽ ã ä»ã¢ããªã®æäœã»ããŒã¿ã®åãæž¡ã ãšãã£ããã®ãçšæãããŠããã»ãã倿°ã»æ¡ä»¶åå²ã»ç¹°ãè¿ãïŒfor, foreachïŒãšãã£ãå¶åŸ¡ãè¡ããã®ãçšæãããŠããŸãã äœæããã·ã§ãŒãã«ãã å
容 ã¯ãªããããŒã ã«ä¿åãããŠããç»åã®ãªã³ã¯ã«å¯Ÿã㊠OCR ã® API ãå®è¡ããç»åå
ã®æåãããã¹ãã«å€æããŠåºåããããšããããšããã£ãŠã¿ãŸãããä»å䜿çšãã OCR ã® API 㯠Free OCR API | OCR.space ã§ããPOSTãã©ã¡ãŒã¿ãã¬ã¹ãã³ã¹ã® JSON æ§æã¯ãªã³ã¯å
ã§ã確èªãã ããã äœæäŸ ãŸãã¯POSTãªã¯ ãšã¹ ããéä¿¡ããéšåã§ãã å³1. POSTãªã¯ ãšã¹ ãã®éä¿¡ ä»åPOSTãã©ã¡ãŒã¿ãšããŠå¿
èŠãªæ
å ±ã¯ APIã㌠㻠ç»åå
ã®æåã®èšèª ã» base64ãšã³ã³ãŒããããç»å ã®ïŒã€ã§ãããã®ãã¡ ç»åå
ã®æåã®èšèª ã¯æ¥æ¬èªã§åºå®ãšããŠããã®ã§ãæ®ãïŒã€ãååŸããåŠçã¯ãµãã«ãŒãã³ãšããŠå¥ã·ã§ãŒãã«ããã«åãåºããããããåŒã³åºãæ¹åŒããšã£ãŠããŸããã§ã¯ããããã®ã·ã§ãŒãã«ãããèŠãŠãããŸãã APIã㌠ã®ååŸåŠçã§ãã API ããŒã¯ ç°å¢å€æ° ã«æã£ãŠããããã®ã§ããããããã«ãããŸã§ã¯ã§ããªããããªã®ã§ãä»å㯠ãªãã€ã³ã㌠ã¢ããªã«ä¿æã»èªã¿åºãããã«ããŠããŸãã å³2. API ããŒã®ååŸ å
容㯠API ããŒãä¿æããŠãã ãªãã€ã³ããŒ ãæ€çŽ¢ãããã®äžããä»å䜿çšãã OCR.space ãšããã¿ã€ãã«ã®é
ç®ãã API ããŒãååŸããŠããŸãã ã·ã§ãŒãã«ããã®æåŸã§ã¯ãã¡ã€ã³ã®ã·ã§ãŒãã«ããã«å€ãæž¡ãããã倿°ããå€ãåãåºããŠçµäºããŠããŸãã æ¬¡ã« base64ãšã³ã³ãŒããããç»å ã®ååŸåŠçã§ãããã®ãã©ã¡ãŒã¿ã«èšå®ããå€ã¯ data:image/[ãã©ãŒããã],[base64ãšã³ã³ãŒããããç»å] ã§ãã®ã§ãå®é㯠æ¡åŒµå ãš ç»åãbase64ãšã³ã³ãŒãããããã¹ã ã®ïŒã€ãå¿
èŠã«ãªããŸãã ãŸãã¯æ¡åŒµåã®ååŸåŠçã§ãã å³3. æ¡åŒµåã®ååŸ å€§ããªæµããšããŠã¯ããŸã ã¯ãªããããŒã ã®å
容ãURL圢åŒã©ãã確èªããURL圢åŒãªããã®å
容ãååŸããŸããããã«ãã®å
容ãã€ã¡ãŒãžã§ããã°æ¡åŒµåããããã§ãªããã° none ãšããããã¹ããè¿åŽããããšããåŠçãè¡ã£ãŠããŸãããã® none ãšããããã¹ãã¯ãã·ã§ãŒãã«ãããå®è¡ããåŽã®åŠçã§ none ãåãåãããšã©ãŒãšããŠåŠçãçµäºããããã«å©çšããŸãã æ¬¡ã ç»åãbase64ãšã³ã³ãŒãããããã¹ã ã®ååŸåŠçã§ãã å³3. ç»åã base64 ãšã³ã³ãŒã ããããã¹ãã®ååŸ ãã㯠æ¡åŒµå ã®æãšã»ãŒåãåŠçã®æµããããŠããŠã æ¡åŒµå ãååŸããŠãããšããã ç»åãbase64ãšã³ã³ãŒãããããã¹ã ãååŸããããã«å€æŽããã ãã§ãã æåŸã«ã¡ã€ã³ã®ã·ã§ãŒãã«ããã§ ä»ã®ã·ã§ãŒãã«ãããå®è¡ããïŒãã®çµæãåãåã åŠçãšã ã¬ã¹ãã³ã¹JSONãããŒã¹ãã åŠçãè¡ããŸãã ãŸã㯠ä»ã®ã·ã§ãŒãã«ãããå®è¡ïŒãã®çµæåãåã åŠçã§ãã å³4. å¥ã·ã§ãŒãã«ããã®å®è¡ åŠçã®æµãã¯ç»åã®éãã§ããã·ã§ãŒãã«ãããå®è¡ãããã®çµæãæ¡åŒµåã§ã¯ãªããšãã¯äžæãããããšãéç¥ãã·ã§ãŒãã«ãããçµäºããŸãã ç¶ã㊠ã¬ã¹ãã³ã¹JSONãããŒã¹ãã åŠçã§ãã å³5. ã¬ã¹ãã³ã¹ JSON ã®ããŒã¹ ãã·ã§ãŒãã«ãããã¢ããªå
ã§ã¯ JSON ã¯ èŸæž ãšããåèªã§æ±ãããŠããŸããã¢ã¯ã·ã§ã³ãšããŠã¯ èŸæžã®å€ãååŸ ãšãããã®ã§ãããã¯çµã¿åãããã°ãã¹ãããã JSON ã®ããŒã¹ãå¯èœã§ãããŸãä»åã¯çµæåºåã®ãããæåŸã«ã¡ã¢ã«æžãã ãããã«ããŠããŸãã å®è¡çµæ 以äžã®ãµã³ãã«ããååç§ãæžããèšäºã®ç»åã«å¯ŸããŠå®è¡ããçµæã以äžãšãªããŸãã å³6. OCR ã§èªèããç»å å³7. å®è¡çµæ ãããã« ä»ãŸã§ã¯ã¡ãã£ãš API ã詊ããŠã¿ããã ãã§ãPCãçšæããå¿
èŠããããŸãããããã®ãã·ã§ãŒãã«ãããã¢ããªã䜿çšããã° iPhone åäœã§ç°¡åã«ã§ããŸãããŸãä»åã¯ç޹ä»ããŠããŸããããããã¹ãã«å¯Ÿã㊠æ£èŠè¡šçŸ ãçšãããããã³ã°ãã§ããã®ã§ã ã¹ã¯ã¬ã€ãã³ã° ãå¯èœã§ãã iPhone ãŠãŒã¶ã®æ¹ã¯è©ŠããŠã¿ãŠã¯ãããã§ããããã æåŸãŸã§ã芧ããã ãããããšãããããŸãã åèæç® Shortcuts 2.0 release notes https://support.apple.com/en-us/HT209087 Free OCR API | OCR .space https://ocr.space/ocrapi ä»é²ïŒä»å䜿çšããã¢ã¯ã·ã§ã³ ã¢ã¯ã·ã§ã³åãšãã®äœ¿ãæ¹ã以äžã«ãŸãšããŸããã API å®è¡ URL URLãæ¬¡ã®ã¢ã¯ã·ã§ã³ã«æž¡ã URLã®å
容ãååŸ åãåã£ãURLããªã¹ ãšã¹ ãããã¬ã¹ãã³ã¹ã次ã®ã¢ã¯ã·ã§ã³ã«æž¡ã ã¯ãªããããŒã ããªã¯ ãšã¹ ãçšã«å å·¥ ã¯ãªããããŒã ãååŸ ã¯ãªããããŒã ã®å
å®¹ãæ¬¡ã®ã¢ã¯ã·ã§ã³ã«æž¡ã çš®é¡ãååŸ åãåã£ãå€ã®ããŒã¿çš®é¡ïŒã€ã¡ãŒãžã»URLãªã©ïŒã®ããã¹ããæ¬¡ã®ã¢ã¯ã·ã§ã³ã«æž¡ã Base64 ãšã³ã³ãŒã åãåã£ãå€ã Base64 圢åŒã§ ãšã³ã³ãŒã ã»ãã³ãŒãããå€ã次ã®ã¢ã¯ã·ã§ã³ã«æž¡ã ãã¡ã€ã«ã®è©³çްãååŸ åãåã£ãå€ïŒãã¡ã€ã«ïŒã®è©³çŽ°ïŒæ¡åŒµåã»ãµã€ãºãªã©ïŒã次ã®ã¢ã¯ã·ã§ã³ã«æž¡ã JSON ã®ããŒã¹ èŸæžã®å€ãååŸ åãåã£ã JSON ããæå®ããããŒã®å€ã次ã®ã¢ã¯ã·ã§ã³ã«æž¡ã å¶åŸ¡ 倿°ãèšå® åãåã£ãå€ã倿°ã«ä»£å
¥ãã åãåã£ãå€ããã®ãŸãŸæ¬¡ã®ã¢ã¯ã·ã§ã³ã«æž¡ã 倿°ã«è¿œå åãåã£ãå€ã倿°ã«è¿œå ããïŒListã«appendãããããªã€ã¡ãŒãžïŒ åãåã£ãå€ããã®ãŸãŸæ¬¡ã®ã¢ã¯ã·ã§ã³ã«æž¡ã 倿°ãååŸ å€æ°ããå€ãåãåºããæ¬¡ã®ã¢ã¯ã·ã§ã³ã«æž¡ã 次ã®å ŽåïŒif~elseæïŒ åãåã£ãå€ãšæå®ããå€ãæ¯èŒããïŒæ¬¡ãšçããã»æ¬¡ãå«ãã»ãã倧ããã»ããå°ããïŒ ããããã§ç¹°ãè¿ãïŒforeachæïŒ åãåã£ããªã¹ã圢åŒã®å€ã«å¯ŸããŠïŒã€ãã€åŠçãè¡ã ã·ã§ãŒãã«ãããå®è¡ åãåã£ãå€ãç¹å®ã®ã·ã§ãŒãã«ããã«æž¡ãããã®å®è¡çµæã次ã®ã¢ã¯ã·ã§ã³ã«æž¡ãïŒã¡ãœããã®ãããªã€ã¡ãŒãžïŒ API ããŒãååŸãã ãªãã€ã³ããŒãæ€çŽ¢ æ¡ä»¶ã«åèŽãããªãã€ã³ããŒãæ€çŽ¢ãããã®çµæã次ã®ã¢ã¯ã·ã§ã³ã«æž¡ã ãªãã€ã³ããŒã®è©³çްãååŸ åãåã£ãå€ïŒãªãã€ã³ããŒïŒã®è©³çްïŒã¡ã¢ã»ã¿ã€ãã«ãªã©ïŒã次ã®ã¢ã¯ã·ã§ã³ã«æž¡ã ãã®ä» ããã¹ã æå®ããããã¹ããæ¬¡ã®ã¢ã¯ã·ã§ã³ã«æž¡ã éç¥ã衚瀺 ã¿ã€ãã«ã»ã¡ãã»ãŒãžãæå®ãããã®å
容ãéç¥ãšããŠè¡šç€ºãã ã¡ã¢ãäœæ åãåã£ãå€ãã¡ã¢ã«æ°èŠç»é²ãã "ã·ã§ãŒãã«ãã"ãçµäº çŸåšã®ã·ã§ãŒãã«ãããçµäºãã çŸåšã®ã·ã§ãŒãã«ããã«å«ãŸããåŸç¶ã®ã¢ã¯ã·ã§ã³ã¯å®è¡ããªã ãšã³ãžã㢠äžéæ¡çš ãµã€ã ã©ã¯ ã¹ã§ã¯ããšã³ãžãã¢ã»ãã¶ã€ããŒã® äžéæ¡çš ãç©æ¥µçã«è¡ã£ãŠãããŸãïŒ ãèå³ãããŸãããæ¯éã確èªããé¡ãããŸãã https://career-recruit.rakus.co.jp/career_engineer/ ã«ãžã¥ã¢ã«é¢è«ãç³èŸŒã¿ãã©ãŒã ã©ã®è·çš®ã«å¿åããã°è¯ããããããªããšããæ¹ã¯ãã«ãžã¥ã¢ã«é¢è«ãéæè¡ã£ãŠãããŸãã 以äžãã©ãŒã ãããç³èŸŒã¿ãã ããã rakus.hubspotpagebuilder.com ã©ã¯ ã¹Developersç»é²ãã©ãŒã https://career-recruit.rakus.co.jp/career_engineer/form_rakusdev/ ã€ãã³ãæ
å ± äŒç€Ÿã®é°å²æ°ãç¥ãããæ¹ã¯ãæ¯é±éå¬ããŠããã€ãã³ãã«ãåå ãã ããïŒ âTECH PLAY techplay.jp âconnpass rakus.connpass.com
ã¯ããã« ããã«ã¡ã¯ã ã©ã¯ ã¹ãšã³ãžãã¢ã®strongWhiteã§ããä»åã¯8æã« 京éœã¢ãžã£ã€ã«ååŒ·äŒ ã«è¡ã£ãŠããŸããã®ã§ã¬ããŒãããããšæããŸãã ã¢ãžã£ã€ã« ãšã¯ãèŠæ±ä»æ§ã®æ±ºå®ã倿Žã«å¯ŸããŠãæè»ã«å¯Ÿå¿ããããã®ãœãããŠã§ã¢éçºææ³ã®ããšã§ããæšä»æåã«ãªãã€ã€ãã ã¢ãžã£ã€ã« ã§ããç§ãšããŠãèå³ããããŸããã®ã§ä»åå匷äŒã«åå ããŠã¿ãŸããã â»ãã®èšäºã§ã¯ ã¢ãžã£ã€ã« ã«é¢ãã詳现ãªèª¬æã¯çããŸãã ã¢ãžã£ã€ã« ã» ã¹ã¯ã©ã ãåããŠèãæ¹ã¯éŠŽæã¿ã®ãªãçšèªãåºãŠããŸãããäºæ¿ãã ããã äº¬éœ ã¢ãžã£ã€ã« å匷äŒãšã¯ ã¢ãžã£ã€ã« ã» ã¹ã¯ã©ã ãå®è·µããããšããŠããïŒãããã¯å®è·µäžã®ïŒäººã察象ãšããå匷äŒã§ãèªèº«ïŒãããã¯èªç€ŸïŒãæ±ããŠãã ã¢ãžã£ã€ã« ã» ã¹ã¯ã©ã ã«é¢ããçåãäžå®ãªã©ããã£ãã°ããã«è°è«ãããäºãã«çè§£ãæ·±ãåãäŒã§ããã¡ãªã¿ã«ç§ãè¡ã£ãŠããã®ã¯ä»¥äžã®å匷äŒã§ãã connpass.com ç§ã®æå±ããããŒã ã§ã¯ ã¢ãžã£ã€ã« ã» ã¹ã¯ã©ã ãåãå
¥ããéçºãããŠããã®ã§ãä»å㯠ã¢ãžã£ã€ã« ã» ã¹ã¯ã©ã ãå®è·µããäžã§ç§ãæ±ããŠããçåãäžå®ãå匷äŒã«åå ãããŠããçããã«ã¶ã€ããŠã¿ãããšã«ããŸããã åŠãã ããš ãã£ã¹ã«ãã·ã§ã³åœ¢åŒã®å匷äŒã¯åããŠã ã£ãã®ã§æ°é®®ã§ããããŸãã ã¢ãžã£ã€ã« ã» ã¹ã¯ã©ã ã«å¯Ÿããçè§£ãå°ããªããé²ãã æ°ãããŸãããç§ãšããŠã¯æ¥ã
ã¹ã¯ã©ã ã» ã¢ãžã£ã€ã« ãå®è·µããäžã§ ãããã¯ãããã¯ãã°ããã¹ããªã³ãããã¯ãã°ãåºããŸã§ã«æéããããæ¬¡ã®ã¹ããªã³ããå§ããããªã ãšãã課é¡ãæ±ããŠããã®ã§ãããä»åã®å匷äŒã§ãšããæ¹ãããèŠåãçºé²çã«æ¬¡ã®ã¹ããªã³ããå§ããã®ã¯ãããªãã®ã§ãæéãããã£ãŠãããããå
šãŠã®ã¹ããªã³ã ããã¯ãã° ãåºããŠããæ¬¡ã®ã¹ããªã³ããã¹ã¿ãŒããã¹ãããšããå©èšãããã ããå°ãåæ°ãããããŸããã çµããã« ä»åã®ãããªãã£ã¹ã«ãã·ã§ã³åœ¢åŒã®å匷äŒã¯è¬çŸ©åœ¢åŒã®ãå
ãæãã¯å
šããªãã®ã§ç§ãšããŠããªã©ãã¯ã¹ããŠåè¬ã§ããŸãããæ©äŒãããã°ãŸã ã¢ãžã£ã€ã« ã» ã¹ã¯ã©ã ç³»ã®å匷äŒã«åå ããããšæããŸããããŒã ãšããŠãç§ãšããŠããŸã ãŸã ã¢ãžã£ã€ã« ã» ã¹ã¯ã©ã ãå§ããã°ãããªã®ã§ããŸãçåãåºãŠãããããããå匷äŒã®å Žã§è§£æ¶ããŠããããšæããŸãã åè ã¢ãžã£ã€ã«éçº äº¬ã¢ãžã£
ããã«ã¡ã¯ãMasaKuã§ãã ããã°ããŒã¿ ãšããèšèãããç®ã«ããŸããããã®èåŸã«ããæè¡ã«ã€ããŠã¯ããŸãçè§£ããŠããŸããã§ããã ããã§ã ããã°ããŒã¿ ãæ¯ããæè¡ã®ã²ãšã€ã§ããNoSQLã«ã€ããŠèå³ãçãŸããã®ã§ãä»åã®èšäºã§ã¯ãNoSQLã«ã€ããŠå匷ããçµæã«ã€ããŠãŸãšããããšæããŸãã ïŒæ¬èšäºã®å·çã«ã¯ä»¥äžã®æžç±ãåèã«ãããŠããã ããŸããïŒ NOSQLã®åºç€ç¥è ããã°ããŒã¿ã掻ããããŒã¿ããŒã¹æè¡ ã¯ããã« NoSQLãšã¯ RDBãšã®éã NoSQLã«æåŸ
ããããš NoSQLã®ããŒã¿ã¢ãã« ããŒããªã¥ãŒå ã«ã©ã æåå ããã¥ã¡ã³ãæåå ã°ã©ãå ãããã« åèæç® ã¯ããã« çŸåšã Twitter ã¯ãïŒæ¥ãããïŒïŒãã©ãã€ããè¶
ããããŒã¿ãæ±ã£ãŠããããã§ãã 10ãã©ãã€ããšãããšãæžç±äžåã®ããŒã¿éïŒïŒïŒäžæåïŒãšãããšæžç±ïŒïŒïŒïŒäžååã«çžåœããŸãã ã¢ãã€ã«ã ãã€ã¹ ãããç°¡åã«ã¢ã¯ã»ã¹ããŠåçãåç»ã³ã³ãã³ããçºä¿¡ã§ãã WebãµãŒãã¹ ãæ®åããŠããããšã ããã°ããŒã¿ ã®çºçã®èµ·å ã®ã²ãšã€ã«ãªã£ããšèšããã§ãããã ããã°ããŒã¿ ã®å¯Ÿå¿ã«ã¯3Vãšãã以äžã®ãããªç¹åŸŽããããŸãã VolumeïŒèšå€§ãªéïŒ VelocityïŒéãïŒ VarieryïŒå€çš®å€æ§ïŒ ä»åŸãæŽã«ãªãããªæ
å ±ãæ±ã WebãµãŒãã¹ ãæ®åããŠãããšã ããã°ããŒã¿ ãåŠçããæè¡ããŸããŸãéèŠã«ãªãããšãããNoSQLã®æè¡çºå±ãæåŸ
ãããŸãã NoSQLãšã¯ PostgreSQL ã MySQL ãªã©ã® RDB ã§ã¯å¯ŸåŠãã¥ãããã㪠ããã°ããŒã¿ ã«å¯Ÿå¿ãã¹ãçã¿åºãããæè¡ã§ã SQL ã䜿çšããªããšããããšãç¹åŸŽã§ãã ãNot Only SQL ãã®ç¥ã§ãããã SQL ã ãã§ãªããæ°ããããŒã¿ããŒã¹ã®æè¡ãå©çšããå¿
èŠããããšããã ãŒãã¡ã³ãã®ããšã§ããããšå€ãã®æ¹ã«èªèãããŠããŸãã ãããããNoSQLãšã¯ãºããªããããããšïŒããšããå®çŸ©ã«ã€ããŠã¯ãŸã æç¢ºåããŠããªãããã§ãã NoSQLãšããŠä»£è¡šçãªãã®ã«ã¯ã Google ã® BigTable ãã¢ããŸã³ã® Amazon DynamoDB ãªã©ããããŸãã RDB ãšã®éã NoSQLãš RDB ãšã®éãã«ã€ããŠä»¥äžã«ãŸãšããŸããã æ©èœã¯è±å¯ã§ã¯ãªã ããŒã¿ã®æŽåæ§ãç·©ã çµææŽåæ§ã§ãããšããèã NoSQLã§ã¯ã RDB ã§åœããåã«å©çšã§ããJOINïŒçµåïŒãéåžžã¯ãµããŒããããŠããŸããã ãŸããåæå®è¡å¶åŸ¡ïŒ æä»å¶åŸ¡ ïŒãæç«ããã ãã©ã³ã¶ã¯ã·ã§ã³ ã®æ©èœãç·©ããããŠãããããŒã¿ã®æŽåæ§ãããã倧éã®ããŒã¿ãçŽ æ©ãåŠçããããšãåªå
ããŠãããšããç¹åŸŽããããŸãã NoSQLãš RDB ã®ç¹æ§ã®éãã説æããäžã§éèŠãªã CAPå®ç ããšããå®çããããŸãã 忣åããŒã¿ããŒã¹ã·ã¹ãã ã«ãããäžå€§èŠä»¶ãšããŠä»¥äžãååšããŸãã ConsistencyïŒæŽåæ§ïŒâŠåžžã«åäžã®ããŒã¿ãåç
§ãã AvailabilityïŒå¯çšæ§ïŒâŠ åžžã«èªã¿åºããšæžã蟌ã¿ãã§ãã Partition ToleranceïŒåæèæ§ïŒâŠãããã¯ãŒã¯ãåæãããŠãééã£ãçµæãåŒãèµ·ãããªã 忣åããŒã¿ããŒã¹ã·ã¹ãã ã§ã¯ãäžèšã®3ã€ã®ãã¡æå€§ïŒã€ããæºããããšãã§ããªãããšããã®ãCAPå®çã§ãã CAPå®ç RDB ã«ã¯ACIDãšããç¹æ§ãååšãã ãã©ã³ã¶ã¯ã·ã§ã³ ãä¿¡é Œæ§ããã£ãŠå®è¡ãããããã®å¿
èŠæ¡ä»¶ãå®çŸ©ãããŠããŸãã äžæ¹ãBASEãšãããã®ãååšããã¢ããªã±ãŒã·ã§ã³ã¯åžžæçšŒåããåžžã«æŽåæ§ãä¿ã€å¿
èŠã¯ãªããçµæçã«æŽåæ§ããšããç¶æ
ã«è³ããšããç¹æ§ãåããŠããã¹ãããšããèãæ¹ããããŸãã CAPå®çã®æå±è
ã§ããEricBreweræ°ã¯ä»¥äžã®ããã«èª¬æããŠãŸãã ã·ã¹ãã ã«æŽåæ§ïŒC)ãšåæèæ§ïŒPïŒãæ±ããããå Žåã«ã¯ãAICDç¹æ§ãå®åããªããã°ãªããªãã ã ããæŽåæ§ïŒCïŒãããå¯çšæ§ïŒAïŒãšåæèæ§ïŒPïŒãæ±ããããã®ã§ããã°ããã®ã·ã¹ãã ã¯BASEã®ç¹æ§ãæã€ã¹ãã§ããã RDB ã¯CAïŒæŽåæ§ãšå¯çšæ§ïŒã«åé¡ãããã»ãšãã©ã®NoSQLããŒã¿ããŒã¹ãCPïŒæŽåæ§ãšåæèæ§ïŒãAPïŒå¯çšæ§ãšåæèæ§ïŒã«åé¡ãããŸãã RDB ãšNoSQLã§ã¯æåŸ
ããŠããæ§èœãç°ãªãããšãããNoSQLã RDB ãå®å
šã«ä»£æ¿ãããã®ã§ã¯ãªãããšãããããŸãã NoSQLã«æåŸ
ããããš NoSQLå
šè¬ã«ã¯ä»¥äžã®ãããªèŠä»¶ãæºããããšãæåŸ
ãããŠããŸãã äžå°ã®ãµãŒãã«ã¯å容ã§ããªãã»ã©èšå€§ãªããŒã¿ãæ±ã ããŒã¿ãè€æ°ã®ãµãŒãã«åå²ããŠå²ãåœãŠã é«äŸ¡ãªããŒããŠã§ã¢çã§ã¯ãªããå®äŸ¡ãªæ±çšããŒããŠã§ã¢ã®äžã§çšŒåãã ããŒã¿ã«çŽå€±ããªããããŒã¿ã¯å®å
šãªç¶æ
ã«æ ŒçŽãããŠãã ã·ã¹ãã å
šäœãšããŠã¯ããã€ã§ã䜿ããç¶æ
ã«ãã é害ãçºçããŠãçæéã§åŸ©æ§ã§ãã ãªã¢ã«ã¿ã€ã ã«è¿ãå¿çæ§èœãåããŠãã ãŸããããŒã¿ãé«éã«åŠçããäžã§ãé«åºŠãªããŒã¿ããŒã¹ãã¥ãŒãã³ã°ã®æè¡ãå¿
èŠãšããªãããšãç¹åŸŽã§ãã ããŒã¿ã®ãµã€ãºã圢åŒãé »ç¹ã«å€åãããããªã¢ããªã±ãŒã·ã§ã³ã RDB ã§ããŒã¿ãé«éã§åŠçãç¶ããããã«ã¯ãããŒã¿ããŒã¹èšèšã«å¯Ÿããé«ãæè¡åãæã£ããšã³ãžãã¢ãåžžæå¯Ÿå¿ããªããã°ãªããŸããã ãããŸã§ã® RDB ã§ã¯ååãªæ§èœãåŸãããªãã£ããã RDB ã§å®çŸããããšãããšãæ§é ãè€éã«ãªããã³ã¹ãããããããããšããåé¡ãåé¿ããããã®ææ®µãšããŠNoSQLãéžæè¢ã®äžã€ãšãªãããããšãæåŸ
ãããŸãã NoSQLã®ããŒã¿ã¢ãã« NoSQLã«ã¯æ§ã
ãªããŒã¿ã¢ãã«ãååšããŸãã ããŒããªã¥ãŒå ããŒããªã¥ãŒå RDB ã®ãããªããŒãã«ãé¢ä¿æ§ãå®çŸ©ãããããŒãšããªã¥ãŒãšããçµã¿åãããããªãã·ã³ãã«ãªããŒã¿ã¢ãã«ã§ãã ããŒã¿ãå¢ããã«ã€ããŠè¡šãçžŠã®æ¹åã«äŒžã³ãŠããã€ã¡ãŒãžã§ãã ããŒã¿ã¢ãã«ãåçŽã§ããããšããããŒã¿ã容æã«åå²å¯èœãªããšãããã¹ã±ãŒã«ã¢ãŠãã«æé©ãªã®ãç¹åŸŽã§ãã ã«ã©ã æåå ã«ã©ã æåå äžèšã®ããŒããªã¥ãŒåã«ã«ã©ã ã®æŠå¿µãæãããããŒã¿ã¢ãã«ã§ãã è¡ã«ä»äžãããããŒãè€æ°ã®ã«ã©ã ãæã€ããšãã§ããŸãã ã«ã©ã æ°ã¯ RDB ã®ããã«åºå®ã§ã¯ãªããåçã«è¿œå ããŠããããšãã§ããŸãã RDB ãå©çšããŠãããšç°è³ªã«æãããããããŸããããã»ãã®è¡ã«ã¯ååšããªãã«ã©ã ãæã€è¡ãäœãããšãã§ããŸãã ããã¥ã¡ã³ãæåå ããã¥ã¡ã³ãæåå JSON ã XML 圢åŒã§èšè¿°ãããããã¥ã¡ã³ãã®åœ¢ã§ããŒã¿ã管çããããšãã§ããŸã åããã¥ã¡ã³ãã¯éå±€æ§é ãæãããçžäºã®é¢ä¿ã暪䞊ã³ã«ç®¡çããŸãã RDB ã®ããã«åºå®ãããããŒã¿èšèšãäžèŠãªããšããã ã¹ããŒã ã¬ã¹ã§ããããšèšãããŸãã ç§ã¯ããã¥ã¡ã³ãæååã®èª¬æãèªãã éãäžèšã®ã«ã©ã æååãšã®éããæç¢ºã«èªèããããšãã§ããŠããŸããã§ãããã以äžã®ãããªãã®ãªã®ã ãšçè§£ããŸããã ããã¥ã¡ã³ãæååã®äŸ ããã°ã®æçš¿å±¥æŽãšã¡ãŒã«ã®éä¿¡å±¥æŽãããã¥ã¡ã³ãæååããŒã¿ããŒã¹ã«èšé²ãããšããŸãã ãããã¯å
šãç°ãªãæ§è³ªã®ããŒã¿ã§ãããæçš¿æ¥ãšéä¿¡æ¥ã2018/9/18ã®ããŒã¿ããšæå®ããããšã§ãé¢ä¿ããããŒã¿ãååŸã§ããŸãã ãã®ãããªããŒã¿ã®æ§è³ªãç°ãªããã®ãããããŸã§ååŸããŠããããŒã¿ã®åœ¢åŒãåçªã«å€ãã£ãŠããŸããããªå¯Ÿè±¡ã§ããããã¥ã¡ã³ãã®åœ¢åŒã§ããŒã¿ããŒã¹ã«æ ŒçŽããããŒã¿ãåŠçã§ããããã«ããã®ã ãªããžã§ã¯ãæå åã®ããŒã¿ããŒã¹ã®ç¹åŸŽãªã®ã ãšæããŸããã ã°ã©ãå ã°ã©ãå ããŒã¿ãšããŒã¿æã®ã€ãªããã管çã§ããããŒã¿ã¢ãã«ã§ãã ã°ã©ãåã®ããŒã¿ããŒã¹ã«ã¯ä»¥äžã®æ§æã§è¡šçŸãããŸãã ããŒã ãªã¬ãŒã·ã§ã³ã·ãã ãããã㣠äŸãã°ã FaceBook ã®åéé¢ä¿ãã°ã©ãåã§è¡šçŸãããšä»¥äžã®ããã«ãªããŸãã Aãããšããã¢ã«ãŠã³ããååšããŸãïŒããŒãïŒ Aããã¯Bãããšé¢ä¿ããããŸãïŒãªã¬ãŒã·ã§ã³ã·ããïŒ AãããšBããã¯åéå士ã§ãïŒããããã£ïŒ ãã®åºæ¬æ§é ãæ¡åŒµããŠãããšãAããã®åéã§ããBããã®åéãããAãããšåéã«ãªã£ãŠãã3幎以äžçµéããã¢ã«ãŠã³ãããšãã£ãæ€çŽ¢ãå¯èœã«ãªããŸãã ãããã« ãããã§ããã§ããããã çè
ããMongoDBãšããããã¥ã¡ã³ãæååNoSQLãå©çšããŠç°¡åãªWebã¢ããªã±ãŒã·ã§ã³ãäœã£ãŠã¿ãŸããããNoSQLã«ã€ããŠèª¿ã¹ãŠèŠããšæ§ã
ãªããŒã¿ã¢ãã«ãååšããããšãããããŸããã ããããã®ããŒã¿ã¢ãã«ããšã®åŒ·ã¿ãå
ããããªWebã¢ããªã±ãŒã·ã§ã³ã®ç¹æ§ã«ã€ããŠãä»åŸèª¿ã¹ãŠãããããšæããŸããã åèæç® NOSQLã®åºç€ç¥èããã°ããŒã¿ã掻ããããŒã¿ããŒã¹æè¡ NoSQL - Wikipedia ブリュワーのCAP定理~データストレージの選定基準 - 浜村拓夫の世界 ãšã³ãžã㢠äžéæ¡çš ãµã€ã ã©ã¯ ã¹ã§ã¯ããšã³ãžãã¢ã»ãã¶ã€ããŒã® äžéæ¡çš ãç©æ¥µçã«è¡ã£ãŠãããŸãïŒ ãèå³ãããŸãããæ¯éã確èªããé¡ãããŸãã https://career-recruit.rakus.co.jp/career_engineer/ ã«ãžã¥ã¢ã«é¢è«ãç³èŸŒã¿ãã©ãŒã ã©ã®è·çš®ã«å¿åããã°è¯ããããããªããšããæ¹ã¯ãã«ãžã¥ã¢ã«é¢è«ãéæè¡ã£ãŠãããŸãã 以äžãã©ãŒã ãããç³èŸŒã¿ãã ããã rakus.hubspotpagebuilder.com ã©ã¯ ã¹Developersç»é²ãã©ãŒã https://career-recruit.rakus.co.jp/career_engineer/form_rakusdev/ ã€ãã³ãæ
å ± äŒç€Ÿã®é°å²æ°ãç¥ãããæ¹ã¯ãæ¯é±éå¬ããŠããã€ãã³ãã«ãåå ãã ããïŒ âTECH PLAY techplay.jp âconnpass rakus.connpass.com
id:radiocat ã§ãã9/13ã«æ±äº¬ãªãã£ã¹ã§éå¬ããMeetupã«ç»å£ããçµãããªã ã¹ã¯ã©ã ããšããã¿ã€ãã«ã§çºè¡šããŸãããä»åã®ã€ãã³ããéããŠãç§ãã¡ãç¶ç¶ã㊠ã¹ã¯ã©ã ã«åãçµãã§ããããã§ã®æ§ã
ãªæ°ã¥ããåŸãããšãã§ããã®ã§ããããã5ã€ã®åŠã³ãšããŠèšäºã«ãŸãšããŠã¿ãŸããããåå é ããã¿ãªããŸãããããšãããããŸããã rakus.connpass.com çºè¡šã®æŠèŠ çºè¡šã®ååã¯ç§ãã¡ã®ããŒã ãåãå
¥ãã ã¢ãžã£ã€ã« éçºã®ã ã©ã¯ ãã£ã¹ã®èª¬æã§ãä»å¹Ž3æã®ç€Ÿå
ã€ãã³ãã§çºè¡šããå
容ãããŒã¹ãšãªã£ãŠããŸãããããã®æŠèŠã¯ä»¥åã®ããã°èšäºã«ãŸãšããŠããŸãã®ã§ãåç
§ãã ããã tech-blog.rakus.co.jp çºè¡šã®äžç€ããã¯éçºãå°ãã〠ã¢ãžã£ã€ã« ã«ãããã㊠ã¹ã¯ã©ã ã«ãã£ã¬ã³ãžããŠããããã«ç§ãã¡ãåèã«ããæžç±ããããäžã®æ
å ±ã玹ä»ããŸããããããŠåŸåéšåã§ã¯ãçŸåšã®ãããžã§ã¯ãã§ãåŒãç¶ã ã¹ã¯ã©ã ã§éçºãé²ããŠããäžã§æ°ãã«åãçµãã§ããããšã玹ä»ããŸããã speakerdeck.com 5ã€ã®åŠã³ çºè¡šåŸã®æèŠªäŒã§ã¯åå è
ã®æ¹ã
ãããããããã£ãŒãããã¯ãé ããŠãããããã®çŸå Žã§å®è·µããŠãã ã¹ã¯ã©ã ã®åãçµã¿ãªã©ãæããŠããã ãããšãŠãææçŸ©ãªã€ãã³ãã«ããããšãã§ããŸãããé ãããã£ãŒãããã¯ã亀ããŠã5ã€ã®åŠã³ãã玹ä»ããŸãã 1. 圹å²ã«åŸ¹ããããšãã§ããäœå¶ã§ ã¹ã¯ã©ã ãå§ãã ç§ãã¡ã® ã¹ã¯ã©ã ããŒã ã§ã¯ãããã¯ããªãŒããŒïŒä»¥äžPOïŒããã¶ã€ã³éšéã®ã¡ã³ããŒãæ
ã£ãŠããŸãã ãã®çç±ã¯å€§ãã2ã€ã§ãã éçºããŒã ã¯å€§éªãPOã®ãã¶ã€ã³éšéãš ã¹ããŒã¯ãã«ã㌠ã®äºæ¥éšéã¯æ±äº¬ãæ ç¹ BtoBã®ãµãŒãã¹ã§ããããããã¶ã€ã³éšéã¯ãã¶ã€ã³ã®äœã蟌ã¿ãããUI/UXããã£ããæ€èšããããšãæ±ãããã ãã®è©±ãããæã«ããïŒäžèšã®äœå¶ãæžããïŒã¹ã©ã€ããèŠãæã«ããã ãšæã£ãããšãããã£ãŒãããã¯ãé ããŸããã ã¹ã¯ã©ã ããŒã ã®äžã§èª°ãPOã ã¹ã¯ã©ã ãã¹ã¿ãŒïŒä»¥äžSMïŒãæ
åœããã㯠ã¹ã¯ã©ã ã«åãçµãããã§ã®æåã®é£é¡ã®1ã€ã§ããããŒã ã®äžã§èª°ããã®åœ¹å²ãæ
ãã°ãã®åœ¹å²ã«åŸ¹ããããšãã§ããã®ãããã£ããåããããŠæ±ºããå¿
èŠããããŸãã 圹å²ã«åŸ¹ããããšãã§ããªãäœå¶ã§ ã¹ã¯ã©ã ãå§ããŠãããæãã倱æããŠããŸãããäžã®äžçã«è€æ°æ ç¹ããªã¢ãŒãã¯ãŒã¯ã絡ããã¡ã³ããŒæ§æã¯åœããåãšãªã£ãŠããŸãããããããã®çŸå Žã«åãããŠæé©ãªäœå¶ãèããå¿
èŠããããŸãã ã¡ãªã¿ã«ãä»åã®äœå¶ã®å Žåã¯éçºéšéã«ããããªãŒããŒãšããç«å Žã®ç§ãSMãæ
ãããšããã1ã€ã®èª²é¡ã«ãªããŸããã éçºããŒã ãæ©èœããããã«çµç¹ãšããŠã®åœ¹è·ãéªéã«ãªãããšãããã°ãããŸã掻çšããŠããŒã ãæ¯æŽã§ããããšããããããããããŸã䜿ãåããããšã圹å²ã«åŸ¹ããããã«å¿
èŠãªããšã§ãã 2. ã¹ããªã³ãã®æéã¯1é±éããããã ä»åã®çºè¡šã§åãäžããéçºãããžã§ã¯ãã§ã¯2é±éã®ã¹ããªã³ãã§ ã¹ã¯ã©ã ãå§ããŸããããçŸåšã¯ã¹ããªã³ãã®æéã1é±éã«ããŠããŸãã åæ§ã«1é±éã§ã¹ããªã³ããåããŠãã人ããã1é±éãããªããšã¹ããªã³ããåãã®ã¯ç¡çããšãããã£ãŒãããã¯ãããããŸããã倧ããªçç±ã¯ä»¥äžã®2ç¹ã§ãã ã¹ããªã³ãã®æåã«2é±éåã®ã¿ã¹ã¯ãæŽãåºããŠãã©ã³ãã³ã°ããã®ãå€§å€ 2é±éå
ã®èŠèŸŒã¿ãèŠæ¥µããã®ãå€§å€ ç§ãã¡ãæ
£ããä»ãšãªã£ãŠã¯1é±éãæããããããæããŠããŸãã ããŒã ã®äºæ
ã«ããããŸãããã¹ããªã³ãã®æéãã©ã®ãããã®é·ãã«ãããããŸã ã¹ã¯ã©ã ã«åãçµãäžã§ã®èª²é¡ã®1ã€ã§ããç§ãã¡ãæåã«ã¹ããªã³ãã®æéãæ±ºããåœæã¯ä»ã®ãããžã§ã¯ãã«çšŒåã䜿ãã¡ã³ããŒããããã2é±éããããã¡ããã©è¯ããšå€æããŸããããŸããåœæã¯1ã€ã®ã¿ã¹ã¯ã®ç²åºŠãå°ããããäºã«æ
£ããŠãããã1é±éã¹ããªã³ãã§å€§ããªç²åºŠã®ã¿ã¹ã¯ã®å®è¡ã«æ³å®å€ã®æéãããã£ãŠããŸããšãã£ãšããéã«ã¹ããªã³ãã®çµãããè¿ããŠããŸãæããæããŠããŸãããããããä»ãšãªã£ãŠã¯1é±éã¹ããªã³ããªãããŸããããªããŠãæ¹åããŠæ¬¡ã«æŽ»ããã°è¯ããšããæèŠã®ã»ãã倧ããã§ãã 3. ãªãã¡ã€ã³ã¡ã³ããšæè¡çã¹ãã€ã¯ã®å€§åããšé£ãã æ¬¡ã®ã¹ããªã³ãã«åã㊠ããã¯ãã° ãæºåãããªãã¡ã€ã³ã¡ã³ããæè¡çã¹ãã€ã¯ã®æŽ»å㯠ã¹ã¯ã©ã ã€ãã³ããšããŠã¯å®çŸ©ãããŠããŸããããéåžžã«éèŠã§ãã€ããŒã ã§ã«ãŒã«ã決ããã®ãé£ããæŽ»åã§ããç§éã®ããŒã ã§ã¯ãªãã¡ã€ã³ã¡ã³ãäŒè°ãã€ãã³ãåããŠåŒ·å¶çã«æéãåãããã«ããŠããŸãã ããã«ã€ããŠãåæ§ã«ã«ãŒã«ã決ããŠæéãåã£ãŠããããŒã ããããšãããã£ãŒãããã¯ãé ããŸãããããããã¯ããŒã ã«ãã£ãŠããããããããã§ãããããããã«ããŠããã©ã³ãã³ã°ãŸã§ã« ããã¯ãã° ããã¡ããšæºåã§ããŠããªããã°ãã¹ããªã³ãã¯ããŸãåããªããšããã®ãå
±éã®çè§£ã§ãã ã¡ãªã¿ã«ãçŸåšç§ãã¡ã®ããŒã ã§ã¯1ã¹ããªã³ãã«2çš®é¡ã®ãªãã¡ã€ã³ã¡ã³ãäŒè°ã宿œããŠããŸãã éçºããŒã å
ãªãã¡ã€ã³ã¡ã³ãäŒè°ïŒæè¡çã¹ãã€ã¯ã®ç¶æ³ç¢ºèªãèªèåãããäžå¿ ã¹ã¯ã©ã ããŒã å
šäœãªãã¡ã€ã³ã¡ã³ãäŒè°ïŒ ããã¯ãã° ã®æŽçãšå
容ã®èªèåãããäžå¿ ãã®çç±ã¯äž»ã«ä»¥äžã®3ç¹ã§ãã çŸåšåãçµãã§ãããããžã§ã¯ãã®ç¹æ§ãšããŠæè¡é¢ã§ã®äžç¢ºå®èŠçŽ ãå€ã éçºããŒã ã®äººæ°ãå¢ããŠããããå
šäœå
±æãèªèåããã®å Žããã£ãã»ããé²ãããã POãšéçºããŒã ã®æ ç¹ãå¥ããŠããããæéãæ±ºããŠå®æœããã»ããé²ãããã ããããç§ãã¡ã®ããŒã ã®äºæ
ã«ãããã®ã§ãããããããèžãŸããŠãªãã¡ã€ã³ã¡ã³ããæè¡çã¹ãã€ã¯ã¯ããããã®ããŒã ã§ãããããèããŠåãçµãå¿
èŠãããæŽ»åã ãšæããŠããŸãã 4. ããŒã ã®äººæ°ãå¢ããã«ã€ã㊠ã¹ã¯ã©ã ã¯é£ãããªã ç§éã®ããŒã ã¯ã¡ã³ããŒã10人ãè¶
ããããã¹ã±ãŒã«ã¢ãŠããæ€èšãå§ããŠããŸãã ããã«é¢é£ããŠããŒã ã®ã¡ã³ããŒã9人ãããšãã人ããããã£ãŒãããã¯ãããããŸãããããã€ãªãŒ ã¹ã¯ã©ã ãæéã©ããã«çµããããã ãã§ãé£ããã人æ°ãå¢ãããš ã¹ã¯ã©ã ã¯é£ãããªããšæããŠããŸããç§ãã¡ã®ããŒã ã§ããã¹ã©ã€ãã«æžããŠãããšãã ã¹ã¯ã©ã ã»ãªãã» ã¹ã¯ã©ã ãLeSSã Nexus ãšãã£ãå€§èŠæš¡ ã¹ã¯ã©ã ã®äºäŸã調æ»ããŠæ€èšãããŠããŸãããäºäŸèªäœãããŸãå€ããªãã®ã§ãŸã å
·äœçãªå€æã¯äžããŠããŸããã ãã ãã¹ã©ã€ãã®äžã«æžããŠãããè¥æã¡ã³ããŒã®ãã ã¹ã¯ã©ã ãã詊ãæéã§ãäžæçã«ã¡ã€ã³ã®ãããžã§ã¯ãã®ã¡ã³ããŒã5人ã«ãããšããããã·ãã£ãäžãã£ãŠã¹ããªã³ãã以åããããŸãåããããã«ãªã£ãã®ã§ããã¯ã5人ããããã¡ããã©è¯ããšããæèŠãåŸãŠããŸãã 5. ããŒã ã®è²æãšæé·ã¯ç±æãæã£ãŠæ ¹æ°åŒ·ã äžèšã®ãè¥æã¡ã³ããŒã®ãã ã¹ã¯ã©ã ããã以åãã®ããã°ã§ã玹ä»ããã ã¹ã¯ã©ã ã¯ã€ãºãã«é¢ããŠã¯è¯ããã£ãŒãããã¯ãé ããŸããã ããŒã ã®ã¡ã³ããŒã²ãšãäžäººããã¡ããš ã¹ã¯ã©ã ã«åãåããªããã° ã¹ã¯ã©ã ãããŸãåãããšãé£ãããªããŸãããã£ãŒãããã¯ã®äžã§ãã®ç¹ã«èª²é¡ãæã£ãŠããããŒã ã®è©±ãããã€ãèãããšãã§ããŸããããããŒã ã®äžã§ç±æããã£ãŠé²ããããã¡ã³ããŒãããªããš ã¹ã¯ã©ã ãç¶ããŠããã®ã¯é£ãããšæããŸããã æã
ããŸã ãŸã 詊è¡é¯èª€ããªããæ§ã
ãªåãçµã¿ãè¡ã£ãŠãããšããã§ããããã®ããã«ãä»ã®ããŒã ã®äºäŸã課é¡ã¯ãšãŠãåèã«ãªããŸããããããæå³ã§ãä»åã®ã€ãã³ãã§ã¯ããããã®ãã£ãŒãããã¯ãé ããç§ãã¡èªèº«ã®æ°ããªåŠã³ãåŸãããšãã§ããŸããã ãã®åŠã³ããŸãããŒã ã«æã¡åž°ã£ãŠããã« ã¹ã¯ã©ã ãåé²ãããŠããããã§ãã ã¹ã¯ã©ã ã®ç¿åŸã¯ãŸã ãŸã çµããããã«ãããŸããã ä»åã®ã€ãã³ãããã£ããã«åœããã°ã«ãçµãããªã ã¹ã¯ã©ã ããšããã«ããŽãªãäœããŸãããä»åŸã ã¹ã¯ã©ã ã®åãçµã¿ã§åŸãããšãéæçºä¿¡ããŠãããããšèããŠããŸãã®ã§ãåŒãç¶ããã§ãã¯ããŠé ããŸããšå¹žãã§ãã ãšã³ãžã㢠äžéæ¡çš ãµã€ã ã©ã¯ ã¹ã§ã¯ããšã³ãžãã¢ã»ãã¶ã€ããŒã® äžéæ¡çš ãç©æ¥µçã«è¡ã£ãŠãããŸãïŒ ãèå³ãããŸãããæ¯éã確èªããé¡ãããŸãã https://career-recruit.rakus.co.jp/career_engineer/ ã«ãžã¥ã¢ã«é¢è«ãç³èŸŒã¿ãã©ãŒã ã©ã®è·çš®ã«å¿åããã°è¯ããããããªããšããæ¹ã¯ãã«ãžã¥ã¢ã«é¢è«ãéæè¡ã£ãŠãããŸãã 以äžãã©ãŒã ãããç³èŸŒã¿ãã ããã forms.gle ã€ãã³ãæ
å ± äŒç€Ÿã®é°å²æ°ãç¥ãããæ¹ã¯ãæ¯é±éå¬ããŠããã€ãã³ãã«ãåå ãã ããïŒ rakus.connpass.com
ããã«ã¡ã¯ãéçºãšã³ãžãã¢ã®d_ shr ( id:d_shr )ã§ãã ãããŸã§ã¯Node.jsã PostgreSQL ã«ã€ããŠæžããŠããŸããã ä»åã¯IoTãæ¯ãã éä¿¡ãããã³ã« MQTT ã«ã€ããŠãŸãšããŸãã tech-blog.rakus.co.jp tech-blog.rakus.co.jp ã¯ãã㫠軜éã§çé»å ã¡ãã»ãŒãžã³ã°ãšTopic ã¡ãã»ãŒãžã³ã° Topic MQTTã®æ©èœ QoS Retain Will ãŸãšã ã¯ããã« MQTT ã¯ãPublish/Subscribe ã¢ãã«ã®ã¡ãã»ãŒãžã³ã°ã«ãããéåæã«1察å€ã®éä¿¡ãã§ãã ãããã³ã« ã§ãã ã·ã³ãã«ãã€è»œéã«èšèšãããŠãããããæ©æ¢°å士ãéä¿¡ãè¡ãããåãããM2M (Machine-to-Machine) ã å®¶é»ãèªåè»ãªã©å€çš®å€æ§ãªãã¢ãããéä¿¡ãè¡ãããåãããIoT (Internet of Things) ãå®çŸããã®ã«é©ãã ãããã³ã« ãšèšãããŠããŸãã 軜éã§çé»å HTTPãšæ¯èŒãããšã軜éã§çé»å㪠ãããã³ã« ã§ãã MQTT ã®ããããµã€ãºã¯ïŒãã€ãããšHTTPã«æ¯ã¹ããšããªã軜éã«ãªã£ãŠãã ãã®è»œéãããããããªãŒãéãããŠããã¢ãã€ã«éä¿¡ã«é©ããŠããŸãã ã¡ãã»ãŒãžã³ã°ãšTopic ã¡ãã»ãŒãžã³ã° MQTT ã¯Pub/Subã¢ãã«ã§ã¡ãã»ãŒãžã³ã°ãè¡ããŸãã Pub/Subã¢ãã«ã§ã¯ã¡ãã»ãŒãžã®éä¿¡è
ãPublisherãã¡ãã»ãŒãžã®åä¿¡è
ãSubscriberãã¡ãã»ãŒãžã®ä»²ä»ãããã®ãBrokerã§ãã Publisher ã¯ã¡ãã»ãŒãžãBrokerãžéããšããéã£ãã¡ãã»ãŒãžãã©ã® Subscriber ã«å±ãã®ããªã©æ°ã«ããå¿
èŠã¯ãããŸããã Subscriberã¯ã¡ãã»ãŒãžãã©ã® Publisher ããéãããŠæ¥ãã®ãç¥ãããšãªã欲ããã¡ãã»ãŒãžãBrokerããåãåããŸãã Topic MQTT ã§ã¯ãTopicãšåŒã°ããããŒãçšããŠã¡ãã»ãŒãžã³ã°ãè¡ããŸãã ãããã¯ã¯ã/ãã§åºåãããéå±€æ§é ã«ãªã£ãŠããŸãã äŸïŒjapan/osaka Publisherã¯Topicãæå®ããŠã¡ãã»ãŒãžãéä¿¡ããSubscriberã¯åä¿¡ããããããã¯ãfilterãšããŠæå®ããããšã§ã欲ããã¡ãã»ãŒãžã ããæã«å
¥ããããšãã§ããŸãã MQTTã®æ©èœ QoS MQTT ã§ã¯ã¡ãã»ãŒãžããšã«å°éä¿èšŒã«é¢ãã QoS (ãµãŒãã¹ã®å質)ãæå®ããŸãã QoS0 ã¡ãã»ãŒãžã¯æé« 1 å é
ä¿¡ããã ã¡ãã»ãŒãžã éä¿¡å
ã«å±ããã¯ä¿èšŒãããªã QoS1 ã¡ãã»ãŒãžã¯æäœ 1 å é
ä¿¡ããã ã¡ãã»ãŒãžã éä¿¡å
ã«å±ãããšãä¿èšŒããããéè€ããŠå±ãå¯èœæ§ãããïŒ QoS2 ã¡ãã»ãŒãžã¯æ£ç¢ºã« 1 å é
ä¿¡ããã ã¡ãã»ãŒãžãéäžè¶³ãªã 1 åã®ã¿å°çããããšãä¿èšŒãããïŒ Retain Topicããšã«æåŸã«Publishãããã¡ãã»ãŒãžãMQTTãµãŒããä¿æããŠããæ©èœã MQTT ã¯Pub/Subã¢ãã«ãªã®ã§ãPublishãããšãã«SubscribeããŠããã¯ã©ã€ã¢ã³ãã«ããã¡ãã»ãŒãžã¯éä¿¡ãããŸããã å
·äœçã«ã¯ã10åããšã«æŽæ°ãããæ
å ±ãåŸãããã«æ°ããSubscribeããŠãïŒæé·10åéã¯ãªã«ãæ
å ±ãåŸãããªãããšã«ãªããŸãã ããããRetainæ©èœã䜿ããšãã®æç¹ã§ã®ææ°ã®æ
å ±ãåŸãããšãã§ããŸãã Will PublisherãåæãããŠãµãŒããšã®éä¿¡ãã§ããªããªã£ããšãã« æå®ãããTopicãšã¡ãã»ãŒãžãSubscriberã«éä¿¡ããæ©èœã äºæãã¬åæãªã©ãçºçãããšãã«ãSubscriberã¯PublisherãåæãããŠããããšã倿ã§ããŸãã ãŸãšã IoTãæ¯ãã ãããã³ã« MQTT ã«ã€ããŠç°¡åã«ãŸãšããŠã¿ãŸããã äžã®äžã«IoTãåºãã£ãŠããŠããã®ã§ãããã«é¢é£ããæè¡ã¯è¿œã£ãŠãããããšæããŸãã ãšã³ãžã㢠äžéæ¡çš ãµã€ã ã©ã¯ ã¹ã§ã¯ããšã³ãžãã¢ã»ãã¶ã€ããŒã® äžéæ¡çš ãç©æ¥µçã«è¡ã£ãŠãããŸãïŒ ãèå³ãããŸãããæ¯éã確èªããé¡ãããŸãã https://career-recruit.rakus.co.jp/career_engineer/ ã«ãžã¥ã¢ã«é¢è«ãç³èŸŒã¿ãã©ãŒã ã©ã®è·çš®ã«å¿åããã°è¯ããããããªããšããæ¹ã¯ãã«ãžã¥ã¢ã«é¢è«ãéæè¡ã£ãŠãããŸãã 以äžãã©ãŒã ãããç³èŸŒã¿ãã ããã rakus.hubspotpagebuilder.com ã©ã¯ ã¹Developersç»é²ãã©ãŒã https://career-recruit.rakus.co.jp/career_engineer/form_rakusdev/ ã€ãã³ãæ
å ± äŒç€Ÿã®é°å²æ°ãç¥ãããæ¹ã¯ãæ¯é±éå¬ããŠããã€ãã³ãã«ãåå ãã ããïŒ âTECH PLAY techplay.jp âconnpass rakus.connpass.com
ã©ã¯ ã¹ã¯ã ITæè¡ ã§äžå°äŒæ¥ã匷ãããŸãïŒããããã·ã§ã³ã«æ²ãã ã¡ãŒã«å
±æã»ç®¡çã·ã¹ãã ã®ã¡ãŒã«ãã£ãŒã©ãŒããå§ãŸããçµè²»ç²Ÿç®ã·ã¹ãã ã®æ¥œæ¥œç²Ÿç®ã«è³ããŸã§ã å»¶ã¹40,000瀟ãè¶
ããã客æ§ã«èªç€Ÿéçºãã ã¯ã©ãŠã ãµãŒãã¹ãæäŸããŠããŸããã ä»åïŒ9/13(æš)ïŒã¯ã ã©ã¯ ã¹ã§äž»å ã¯ã©ãŠã ãµãŒãã¹ã®éçºãçœåŒãããšã³ãžãã¢ã«ãã ããŒã¯ ã»ãã·ã§ã³ãšäº€æµäŒãéå¬ããŸãã ã¯ã©ãŠã ãµãŒãã¹éçºã®ãšã³ãžãã¢ãšããŠæŽ»èºããŠããæ¹ã¯ãã¡ããã ã¯ã©ãŠã ãµãŒãã¹éçºã«ãèå³ããæã¡ã®ãšã³ãžãã¢ã®æ¹ãæ°è»œã«ãåå é ããã°ãšæããŸãã èªç€Ÿéçºãªãã§ã¯ã®æè¡ã»éçšããŠããŠããæ°ããåãçµã¿ã®ææã倱æè«ãªã© ãåèã«ããŠé ããæ
å ±ãç©æ¥µçºä¿¡ããŠãããããšèããŠãããŸãã ãã®ã€ãã³ããæ°ããæ°ã¥ããæé·ã«ã€ãªããæ©äŒãæäŸããå Žã«ãªããšãšãã«ã ã©ã¯ ã¹ç€Ÿå¡ãšåå è
ã®çããŸããŸãåå è
ã®çããŸåå£«ã§æ°ããªã€ãªãããçãŸãããã£ããã«ãªãã°å¹žãã§ãïŒ é嬿ŠèŠ ãæ¥æã2018/9/13(æš) 19:30ïœ21:30(éå Žã¯19:00) ãäŒå Žã ã©ã¯ ã¹ æ±äº¬æ¬ç€Ÿ ïŒã151-0051 æ±äº¬éœæžè°·åº åé§ã¶è°· 5-27-11ãã¢ã°ãªã¹ã¯ãšã¢æ°å®¿2F [ã¢ã¯ã»ã¹] ïŒ ãå®å¡ã30å ãç³èŸŒã¿ã connpass ãåå è²»ãç¡æ ãäž»å¬ã ã©ã¯ã¹ ä»åã® ããŒã¯ ããŒã çµãããªã ã¹ã¯ã©ã ãïœæ¥œæ¥œç²Ÿç®ã®ãµãŒãã¹æ¡å€§ãæ¯ãã ã¹ã¯ã©ã éçºã®åãçµã¿ 倧塿£éïŒããã€ããŸãã¿ã¡ïŒ ã©ã¯ ã¹ã§ã¯ããŸã å€ãã®éçºããŒã ã ãŠã©ãŒã¿ãŒãã©ãŒã« åã® éçºããã»ã¹ ãæ¡çšããŠããŸããã äžéšã®ããŒã ã§ ã¹ã¯ã©ã ã«ãã ã¢ãžã£ã€ã« éçºã«åãçµãã§ããŸãã ä»åã¯æ¥œæ¥œç²Ÿç®ããŒã ã§ã®åãçµã¿ã玹ä»ããŸãã å®éã«ãã£ãŠã¿ããšæ§ã
ãªåé¡ãçºçããŸãããåé¡è§£æ±ºã«åããã¢ã¯ã·ã§ã³ãåãçµã¿ãéããŠåŸãç¥èŠãä»åŸã®èª²é¡çãäºäŸã亀ããŠã話ãããŸãã ãã ã¯ãªãŒã ïŒèªç§°ïŒãšããŠã®ãã£ãŠããïŒãïœ iOS ã¢ããªéçº ããŒã ãçã㊠å·äžŠè£ïŒãããªã¿ããïŒ è¥æãšãŒã¹ãšã³ãžãã¢ãåããŠã® iOS ã¢ããªéçº ã§ãã ã¯ãªãŒã ãšããŠå¥®éããã話ãã§ãã iOS ã¢ããªéçº ã¯ãèªèº«ãåãã¡ã³ããŒãåããããççŽæïŒ3ãµæïŒïŒïŒïŒã ãã® ãã¹ããŒã ãäºæãããäžå©ãªæ¡ä»¶äžã§ããã ã¯ãªãŒã ãšããŠã©ã®ããã«ããŒã ããªãŒãã£ã³ã°ããã®ãã æ§ã
ãªäºäŸã亀ããŠã玹ä»ããŸãã æµè¡ã®éçºææ³ChatOpsãšã¯ãïœæ¥œæ¥œæçްããŒã /ChatOpsã§ã«ãŒãã£ã³äœæ¥ããŸãããšèªååïœ äžç°è±äžïŒã¿ããããã¡ïŒ Jenkinsã®å°å
¥ã§èªååãé²ãã ãã©ããJenkinsãæ¯åéãã®ã¯é¢åãããã¢ã«ãŠã³ãã®äœæãé¢åãããéãšã³ãžãã¢ã«äœ¿ã£ãŠãããã«ã¯ã¡ãã£ãšããŒãã«ãé«ããã ããã§å°å
¥ããã®ãChatOps! Slackäºæã®ãã£ããããŒã«ãMattermostãã§ã«ãŒãã£ã³äœæ¥ãäžžããšèªååããŸããã å©çšãã bot ããŒã«ãã·ã¹ãã æ§æãHubot ã¹ã¯ãªãã ã®å®äŸãªã©ãããŠããŠãäœãããšãªãã玹ä»ããŸãã ã¿ã€ã ããŒãã« 19:00 éå Žã»åä»éå§ 19:30 ã€ãã³ãã¹ã¿ãŒã 21:30 çµäºäºå® ããŒã¯ ãçµããæ¬¡ç¬¬ã亀æµäŒã«ç§»ããŸãã 亀æµäŒã§ã¯ããã£ã³ã¬ãŒããŒããããªã³ã¯ããçšæèŽããŸãã ãæ°è»œã«ãåå ãã ããã ãšã³ããªãŒæ¹æ³ [connpass] ãããšã³ããªãŒããé¡ãããŸãã â»åœæ¥ã¯ãååº2æãæåãã ãã â»æäŸå¯èœãªèšåïŒ Wi-Fi ã黿º äŒå Ž ã©ã¯ ã¹ãæ±äº¬ãªãã£ã¹2F ã»ã ããŒã«ãŒã æ±äº¬éœæžè°·åº åé§ã¶è°· 5-27-11ãã¢ã°ãªã¹ã¯ãšã¢æ°å®¿2F [ã¢ã¯ã»ã¹]
ã¯ããã« ããã«ã¡ã¯ sts -250rrã§ãã ååã®èšäºã§ã¯ARãããŒãã«èšäºãæçš¿ããããŸããã ä»åã¯ããŒããã¬ã©ãªãšå€ããŸããŠã æ©æ¢°åŠç¿ ãã«ã€ããŠç°¡åã«ãŸãšããŠã¿ãããšæããŸãã æšä»ã AWS ã® Amazon Machine Learningã Microsoft ã®Azure Machine Learning Studioãªã©ã§æè»œã« æ©æ¢°åŠç¿ ãå©çšã§ããããã«ãªã£ãŠæ¥ãããšã«å ãã æ¥œæ¥œç²Ÿç®ã§ã¯ã iOS åãã«é åæžã®ã¢ããããŒããã§ããã¢ããªããªãªãŒã¹ããŸããã æ¥œæ¥œç²Ÿç® æ ªåŒäŒç€Ÿ ã©ã¯ ã¹ ããžãã¹ ç¡æ ãã®ã¢ããªã§ã¯ æ©æ¢°åŠç¿ ç³»æè¡ã®1ã€ã§ãã OCR ïŒOptical character recognitionïŒãçšããŠé åæžããŒã¿ãèªã¿åããæ¥œæ¥œç²Ÿç®ã«ã¢ããããŒãããŠããŸãã äžéçã«ã話é¡ãã€ã ã©ã¯ ã¹ã§ã æ©æ¢°åŠç¿ ã«æ³šç®ããŠããããšãããã è¯ãã¿ã€ãã³ã°ãªã®ã§ æ©æ¢°åŠç¿ ã«ã€ããŠæŽçããŠã¿ãããšããããšã§ãã ä»åã¯ç°¡åã« æ©æ¢°åŠç¿ ãšã¯ ãšãã£ã話ããã æ©æ¢°åŠç¿ ãè¡ãããŒã«ã䜿ã£ãŠ æ©æ¢°åŠç¿ ãäœéšããŠã¿ãå
容ããŸãšããŠãããŸãã æ©æ¢°åŠç¿ ãšã¯ïŒ ã¯ããã«ã Wikipedia ã§ã¯ æ©æ¢°åŠç¿ ã«ã€ããŠããæžãããŠããŸãã æ©æ¢°åŠç¿ ïŒããããããã
ããè±: machine learningïŒãšã¯ã 人工ç¥èœ ã«ãããç 究課é¡ã®äžã€ã§ã人éãèªç¶ã«è¡ã£ãŠããåŠç¿èœåãšåæ§ã®æ©èœãã³ã³ãã¥ãŒã¿ã§å®çŸããããšããæè¡ã»ææ³ã®ããšã§ããã ã€ãŸãã 人工ç¥èœ ãå®çŸããææ®µã æ©æ¢°åŠç¿ ãšããäºã§ãã ããã« Wikipedia ãèªã¿é²ããŠãããšæŠèŠã«ããèšèŒãããŠããŸãã ã»ã³ãµãããŒã¿ããŒã¹ãªã©ãããããçšåºŠã®æ°ã®ãµã³ãã«ããŒã¿éåãå
¥åããŠè§£æãè¡ãããã®ããŒã¿ããæçšãªèŠåãã«ãŒã«ãç¥è衚çŸãå€æåºæºãªã©ãæœåºãã ã¢ã«ãŽãªãºã ãçºå±ãããããªããããŒã¿éåãè§£æããã®ã§ã çµ±èšåŠ ãšã®é¢é£ãæ·±ãã ãšããããã«ãå®ã¯ æ©æ¢°åŠç¿ 㯠統èšåŠ ãšæ·±ãé¢é£ãæã£ãŠããŸãã çµ±èšåŠ ã¯ã倧éã«åŸãããããŒã¿ã®æ§è³ªãèŠåæ§ãåé¡ãèŠã€ãããããªåŠåã§ããããã® æ§è³ªãèŠåãèŠã€ããäº ã æ©æ¢°åŠç¿ ã«ãšã£ãŠã®åŠç¿ã«ãªãããã§ãã æ©æ¢°åŠç¿ ã®çš®é¡ æ©æ¢°åŠç¿ ã«ã€ããŠå°ãæãäžããŠãããŸãã åçŽã« æ©æ¢°åŠç¿ ãšãã£ãŠãã倧ããåããŠã æåž«ããåŠç¿ ããšã æåž«ãªãåŠç¿ ããååšããŸãã ããããã«åŠç¿æ¹æ³ãã§ããããšãç°ãªããŸãã®ã§ç°¡åã«ãŸãšããŠãããŸãã æåž«ããåŠç¿ åŠç¿ã«äœ¿çšããã㌠ã¿ã»ãã ã«å¯ŸããŠãæ£è§£ãäžããŠããåŠç¿æ¹æ³ã§ãã ãã®åŠç¿ã§ã¯ã倧éã®ã㌠ã¿ã»ãã ããæ£è§£ã®æ
å ±ãåŠç¿ãããããç¹åŸŽãæã€ãã®ã¯ãããäºæã«å¯ŸããŠæ£è§£ã§ãããããšã倿ã§ããåŠç¿æ¹æ³ã§ãã ç°¡åãªäŸã ãšããèµ€ãè²ãšããç¹åŸŽãæã€æç©ãããçŸå³ããããšå€æããããšãã§ããŸãã ããããæ£è§£ãšããŠãçŸå³ãããããçŸå³ãããªãããã®ã¿ãåŠç¿ãããŠããããããèµ€ãè²ãšããç¹åŸŽãæã€æç©ãããçŸããããã¯å€æããããšã¯ã§ããŸããã æåž«ããåŠç¿ ãè¡ãæ¹æ³ã«ã¯æ¬¡ã®ãããªãã®ããããŸãã ç·åœ¢ååž° ããžã¹ãã£ãã¯ååž° ãã€ãŒã ãã€ãº kè¿åæ³ ãã¥ãŒã©ã«ãããã¯ãŒã¯ æåž«ãªãåŠç¿ æåž«ããåŠç¿ ãšã¯å察ã«ãåŠç¿ã«äœ¿çšããã㌠ã¿ã»ãã ã«å¯ŸããŠãæ£è§£ã¯äžããŸããã ãã®åŠç¿ã¯ã倧éã®ããŒã¿ã®é¡äŒŒåºŠãèŠåæ§ãåŠç¿ããããŒã¿ã®åé¡ãè¡ããŸãã ç°¡åãªäŸã ãšãããæç©ã®ããŒã¿ã倧éã«éããŠãããš3ã€ã«åããããŸããã æ©æ¢°èªèº«ã«ã¯åããããããŒã¿ãäœã瀺ããã®ã§ãããã¯ããããŸããããæ¬¡ã«ããŒã¿ãåŸãããæã3ã€ã®ãã¡ã©ãã«è©²åœããããŒã¿ã§ãããã倿ããããšãã§ããããã«ãªããŸãã æåž«ãªãåŠç¿ ãè¡ãæ¹æ³ã«ã¯æ¬¡ã®ãããªãã®ããããŸãã äž»æååæ k平忳 ãã£ãŒãã©ãŒãã³ã° 匷ååŠç¿ *1 æ©æ¢°åŠç¿ ã詊ããŠã¿ã èšèã®ã¿ã§ã¯è
ã«èœã¡ãªãéšåãããã®ã§å®éã©ã®ããã«åŠç¿ããŠããã®ãã詊ããŠã¿ãããªããŸããã ããã§weka *2 ãšããããªãŒã® æ©æ¢°åŠç¿ ããŒã«ã䜿ã£ãŠãããŸãã (ä»åãwekaã®äœ¿ãæ¹ã«ã€ããŠã¯ç¹ã«èª¬æããããŸããã®ã§æªããããããã) ä»å㯠æåž«ããåŠç¿ ã«ãããžã¹ãã£ãã¯ååž°ãã æåž«ãªãåŠç¿ ã«ãk平忳ãã«ãã ã¯ã©ã¹ã¿ãªã³ã° ã䜿ã£ãŠãããŸãã ãããã®ææ³ã«ã€ããŠã¯äžèšã®èšäºã§è©³çްã玹ä»ãããŠããŸããã qiita.com qiita.com ã詊ã1ïŒ æåž«ããåŠç¿ wekaã®ãµã³ãã«ããŒã¿ã§ããã¢ã€ã¡ã®åçš®åé¡ããŒã¿iris.arffã䜿ã£ãŠãããŸããããŒã¿ã®å
容ã¯ä»¥äžã®éãã§ãã ã¯ã©ã¹(æ£è§£):setosa, versicolor, virginica ç¹åŸŽé(屿§) - sepallength : ããã®é·ã - sepalwidth : ããã®å¹
- petallength : è±åŒã®é·ã - petalwidth : è±åŒã®å¹
äžèšã®ããŒã¿ãæã£ã150ã®ã㌠ã¿ã»ãã ãšããžã¹ãã£ãã¯ååž°ã䜿ã£ãŠåŠç¿ããããŠã¿ãŸããã ããããåŠç¿ããããã ãã§ã¯æå³ããããŸããã åŠç¿ã®ææãèŠãããã«ã10åå²äº€å·®æ€å®ãçšããŠå€å¥å¶åºŠãèŠãŠãããŸãã wekaãªããããŸã§ãã£ãŠãããã®ã§ãæè»œã§ãã æ€èšŒçµæã®æç²ã§ãã === Stratified cross-validation === === Summary === Correctly Classified Instances 144 96 % Incorrectly Classified Instances 6 4 % Kappa statistic 0.94 Mean absolute error 0.0287 Root mean squared error 0.1424 Relative absolute error 6.456 % Root relative squared error 30.2139 % Total Number of Instances 150 === Detailed Accuracy By Class === TP Rate FP Rate Precision Recall F-Measure MCC ROC Area PRC Area Class 1.000 0.000 1.000 1.000 1.000 1.000 1.000 1.000 Iris-setosa 0.920 0.020 0.958 0.920 0.939 0.910 0.970 0.933 Iris-versicolor 0.960 0.040 0.923 0.960 0.941 0.911 0.975 0.933 Iris-virginica Weighted Avg. 0.960 0.020 0.960 0.960 0.960 0.940 0.982 0.955 åŠç¿ã«ããå
šäœã®å€å¥å¶åºŠ96%ã ããããã®æ£è§£ã«æ£ããå€å¥ããããšãã§ãã確çã Iris-setosa : Iris-versicolor : Iris-virginica = 100ïŒ
: 95% : 92% ãšããçµæãåŸãããŸããã ãã¹ãããŒã¿ãšããããšããããªããªãã®å¥œæçžŸã§ããã ã詊ã2ïŒ æåž«ãªãåŠç¿ æåž«ããåŠç¿ ãšåããããªããŒã¿ã§è©ŠããŠã¿ãŸãã ãã ãã æåž«ãªãåŠç¿ ã§ã¯æ£è§£ããŒã¿ã¯å¿
èŠãªãããåé€ããŠãããŸãã ä»åã¯k平忳ã«ãã ã¯ã©ã¹ã¿ãªã³ã° ãè¡ã£ãŠã¿ãŸããã å
ããŒã¿ã3çš®ã«åé¡ãããŠããã®ã§3 ã¯ã©ã¹ã¿ ã«åé¡ãããããã«èšå®ããŸããã ãã¹ãããŒã¿ãšã¯ããã綺éºã«åé¡ãããããã§ã¯ãªãããã§ããããã ããã§ç¶ºéºã«åé¡ãããããªåŠç¿ãã§ããã°ãæ°ããªããŒã¿ãåŸãéã«ã©ãã«åé¡ããããå€å¥ã§ããããã«ãªãããã§ããã ããªããã£ããã§ãããæ°å€ãç»é¢ãã¿ãŠå°ãã ãã€ã¡ãŒãžã§ããŸããã ãŸãšã ä»åã¯ æ©æ¢°åŠç¿ ã«ã€ããŠç°¡åã«ãŸãšããŠã¿ãŸããã ããããªããããã®èšäºã®å
å®¹ã¯ æ©æ¢°åŠç¿ ã®è¡šé¢ããªãã£ãçšåºŠã§ãããããŸããã ä»åã®ãããªå
容ããã£ããææ¡ããŠããããšããã¯ããã«è¿°ã¹ããã㪠Amazon Machine LearningãAzure Machine Learning Studioãå©çšããããšã§ç°¡åã« æ©æ¢°åŠç¿ ã¯å©çšå¯èœãªäžã®äžã«ãªãã€ã€ãããŸãã ãã ããå¹çãã æ©æ¢°åŠç¿ ãåãå
¥ããããã«ããã©ããªæ¹æ³ãäœã«é©ããŠããã®ãã¯ç¥ã£ãŠããã¹ãã§ãããã æ¬¡åã¯ä»ã® æ©æ¢°åŠç¿ ã®æµè¡ããããŒãã«æçš¿ããŠã¿ããããšæããŸãã®ã§ã楜ãã¿ã«ã *1 : æåž«ããåŠç¿ ã æåž«ãªãåŠç¿ ãšåãã¬ã€ã€ãŒã§åããããå ŽåããããŸãã *2 : https://www.cs.waikato.ac.nz/ml/weka/
ã©ã¯ ã¹ã¯ã ITæè¡ ã§äžå°äŒæ¥ã匷ãããŸãïŒããããã·ã§ã³ã«æ²ãã ã¡ãŒã«å
±æã»ç®¡çã·ã¹ãã ã®ã¡ãŒã«ãã£ãŒã©ãŒããå§ãŸããçµè²»ç²Ÿç®ã·ã¹ãã ã®æ¥œæ¥œç²Ÿç®ã«è³ããŸã§ã å»¶ã¹40,000瀟ãè¶
ããã客æ§ã«èªç€Ÿéçºãã ã¯ã©ãŠã ãµãŒãã¹ãæäŸããŠããŸããã ä»åïŒ9/13(æš)ïŒã¯ã ã©ã¯ ã¹ã§äž»å ã¯ã©ãŠã ãµãŒãã¹ã®éçºãçœåŒãããšã³ãžãã¢ã«ãã ããŒã¯ ã»ãã·ã§ã³ãšäº€æµäŒãéå¬ããŸãã ã¯ã©ãŠã ãµãŒãã¹éçºã®ãšã³ãžãã¢ãšããŠæŽ»èºããŠããæ¹ã¯ãã¡ããã ã¯ã©ãŠã ãµãŒãã¹éçºã«ãèå³ããæã¡ã®ãšã³ãžãã¢ã®æ¹ãæ°è»œã«ãåå é ããã°ãšæããŸãã èªç€Ÿéçºãªãã§ã¯ã®æè¡ã»éçšããŠããŠããæ°ããåãçµã¿ã®ææã倱æè«ãªã© ãåèã«ããŠé ããæ
å ±ãç©æ¥µçºä¿¡ããŠãããããšèããŠãããŸãã ãã®ã€ãã³ããæ°ããæ°ã¥ããæé·ã«ã€ãªããæ©äŒãæäŸããå Žã«ãªããšãšãã«ã ã©ã¯ ã¹ç€Ÿå¡ãšåå è
ã®çããŸããŸãåå è
ã®çããŸåå£«ã§æ°ããªã€ãªãããçãŸãããã£ããã«ãªãã°å¹žãã§ãïŒ é嬿ŠèŠ ãæ¥æã2018/9/13(æš) 19:30ïœ21:30(éå Žã¯19:00) ãäŒå Žã ã©ã¯ ã¹ æ±äº¬æ¬ç€Ÿ ïŒã151-0051 æ±äº¬éœæžè°·åº åé§ã¶è°· 5-27-11ãã¢ã°ãªã¹ã¯ãšã¢æ°å®¿2F [ã¢ã¯ã»ã¹] ïŒ ãå®å¡ã30å ãç³èŸŒã¿ã connpass ãåå è²»ãç¡æ ãäž»å¬ã ã©ã¯ã¹ ä»åã® ããŒã¯ ããŒã çµãããªã ã¹ã¯ã©ã ãïœæ¥œæ¥œç²Ÿç®ã®ãµãŒãã¹æ¡å€§ãæ¯ãã ã¹ã¯ã©ã éçºã®åãçµã¿ 倧塿£éïŒããã€ããŸãã¿ã¡ïŒ ã©ã¯ ã¹ã§ã¯ããŸã å€ãã®éçºããŒã ã ãŠã©ãŒã¿ãŒãã©ãŒã« åã® éçºããã»ã¹ ãæ¡çšããŠããŸããã äžéšã®ããŒã ã§ ã¹ã¯ã©ã ã«ãã ã¢ãžã£ã€ã« éçºã«åãçµãã§ããŸãã ä»åã¯æ¥œæ¥œç²Ÿç®ããŒã ã§ã®åãçµã¿ã玹ä»ããŸãã å®éã«ãã£ãŠã¿ããšæ§ã
ãªåé¡ãçºçããŸãããåé¡è§£æ±ºã«åããã¢ã¯ã·ã§ã³ãåãçµã¿ãéããŠåŸãç¥èŠãä»åŸã®èª²é¡çãäºäŸã亀ããŠã話ãããŸãã ãã ã¯ãªãŒã ïŒèªç§°ïŒãšããŠã®ãã£ãŠããïŒãïœ iOS ã¢ããªéçº ããŒã ãçã㊠å·äžŠè£ïŒãããªã¿ããïŒ è¥æãšãŒã¹ãšã³ãžãã¢ãåããŠã® iOS ã¢ããªéçº ã§ãã ã¯ãªãŒã ãšããŠå¥®éããã話ãã§ãã iOS ã¢ããªéçº ã¯ãèªèº«ãåãã¡ã³ããŒãåããããççŽæïŒ3ãµæïŒïŒïŒïŒã ãã® ãã¹ããŒã ãäºæãããäžå©ãªæ¡ä»¶äžã§ããã ã¯ãªãŒã ãšããŠã©ã®ããã«ããŒã ããªãŒãã£ã³ã°ããã®ãã æ§ã
ãªäºäŸã亀ããŠã玹ä»ããŸãã æµè¡ã®éçºææ³ChatOpsãšã¯ãïœæ¥œæ¥œæçްããŒã /ChatOpsã§ã«ãŒãã£ã³äœæ¥ããŸãããšèªååïœ äžç°è±äžïŒã¿ããããã¡ïŒ Jenkinsã®å°å
¥ã§èªååãé²ãã ãã©ããJenkinsãæ¯åéãã®ã¯é¢åãããã¢ã«ãŠã³ãã®äœæãé¢åãããéãšã³ãžãã¢ã«äœ¿ã£ãŠãããã«ã¯ã¡ãã£ãšããŒãã«ãé«ããã ããã§å°å
¥ããã®ãChatOps! Slackäºæã®ãã£ããããŒã«ãMattermostãã§ã«ãŒãã£ã³äœæ¥ãäžžããšèªååããŸããã å©çšãã bot ããŒã«ãã·ã¹ãã æ§æãHubot ã¹ã¯ãªãã ã®å®äŸãªã©ãããŠããŠãäœãããšãªãã玹ä»ããŸãã ã¿ã€ã ããŒãã« 19:00 éå Žã»åä»éå§ 19:30 ã€ãã³ãã¹ã¿ãŒã 21:30 çµäºäºå® ããŒã¯ ãçµããæ¬¡ç¬¬ã亀æµäŒã«ç§»ããŸãã 亀æµäŒã§ã¯ããã£ã³ã¬ãŒããŒããããªã³ã¯ããçšæèŽããŸãã ãæ°è»œã«ãåå ãã ããã ãšã³ããªãŒæ¹æ³ [connpass] ãããšã³ããªãŒããé¡ãããŸãã â»åœæ¥ã¯ãååº2æãæåãã ãã â»æäŸå¯èœãªèšåïŒ Wi-Fi ã黿º äŒå Ž ã©ã¯ ã¹ãæ±äº¬ãªãã£ã¹2F ã»ã ããŒã«ãŒã æ±äº¬éœæžè°·åº åé§ã¶è°· 5-27-11ãã¢ã°ãªã¹ã¯ãšã¢æ°å®¿2F [ã¢ã¯ã»ã¹]
ã¯ããã« ããã«ã¡ã¯ã @rs_tukki ã§ããæ°å2幎ç®ã§ãã ååã®èšäºã¯ä»¥äžãã芧ãã ããã tech-blog.rakus.co.jp ãŸãã以åã«æžããèšäºãããããã¢ã¯ã»ã¹æ°äŒžã³ãŠããŠããã¿ããã§ããããããšãããããŸãïŒ tech-blog.rakus.co.jp ããŠãæ¬é¡ã«å
¥ããŸãããã 瀟äŒäººãšããŠ2幎ç®ã«å
¥ãããã¹ãã®çµæãè³æã«ãŸãšãããããã°ä¿®æ£ã®å¯Ÿå¿æ¹éãäŒããããšãèªåã®ãã£ãããšãå
茩ãäžåžã«å ±åãçºè¡šããå¿
èŠæ§ãå¢ããŠããããã«æããŸãã èªåã¯ä»ãŸã§ããŸã説æããçºè¡šããã奜ãã§ã¯ãªãã£ãã®ã§ãããä»ã§ã¯åŸæãšããã»ã©ã§ã¯ãªãã«ãããåŸã
ã«èŠææèã¯ãªããªã£ãŠããŸããã ä»åã¯ããšã³ãžãã¢ãšããŠå¿
é ã¹ãã«ã§ãã説æãçºè¡šã®èŠææèãåãæãããã®1ã€ã®ææ®µã LT ã«ã€ããŠã®ã話ã§ãã ã¯ããã« Lightning Talks(LT)ãšã¯ïŒ äœæ
LTãæå¹ãªã®ã ã説æããããšããè¡çºã®ç·Žç¿ã«ãªã è²ããªæè¡ã®ç¥èŠãåŸããã 人ãšç¹ããæ©äŒã«ãªã ãŸãšã åè Lightning Talks(LT)ãšã¯ïŒ ã§ã¯ãŸãã LT ãšã¯äœã§ããããïŒ å°ã£ããšãã® Wikipedia å
çã ã©ã€ããã³ã° ããŒã¯ ïŒè±: Lightning TalksïŒãšã¯ã«ã³ãã¡ã¬ã³ã¹ããã©ãŒã©ã ãªã©ã§è¡ãããçããã¬ãŒã³ããŒã·ã§ã³ã®ããšãæ§ã
ãªåœ¢åŒãããããæã¡æéã5åãšããå¶çŽãåºãå
±æãããŠããã 圢ãšããŠã®ã©ã€ããã³ã° ããŒã¯ ã¯1997幎㮠Python ã«ã³ãã¡ã¬ã³ã¹ã§åããŠè¡ããããšãããŠããã[1]ãã®æç¹ã§ã¯åã«ãã·ã§ãŒã ããŒã¯ ããšåŒã°ããŠããããã©ã€ããã³ã°ïŒLightningïŒçš²åŠ»ãé»å
ç³ç«ïŒããšããèšèãçšããããããã«ãªã£ãã®ã¯ã2000幎6æã«è¡ããã YAPC 19100 ConferenceãããšãããŠããã[2]ãã®åŸæè¡çãªã«ã³ãã¡ã¬ã³ã¹ã«æŒããŠããã®èšèãæµžéããããã«ãªã£ãŠãã£ãã LTãšããã®ã¯ç°¡åã«èšãã°çããã¬ãŒã³ã®ããšã§ãã ãã¬ãŒã³ããŒã·ã§ã³ãšãããšãäŒç€Ÿå
ã§ã¯æ°ããäŒç»ã®èª¬æäŒãäŒç€Ÿå€ã§ã¯æ°ååã®çºè¡šäŒâŠãªã©ãªã©ãã©ã¡ãã«ããŠã1æé以äžã¯æéããããŠãã£ãããšè©±ãã€ã¡ãŒãžãããããšæããŸãã ã§ãããLTã¯ã皲劻 ããŒã¯ ããšããæå³ãããåããéããæã¡æéã¯ã ããã5åãé·ããã®ã§ã10åãšãããããã§ãã LTã®å
容èªäœã¯ããçšåºŠã®ããŒãããæå®ããããã®ã®ãæè¡ç㪠ããŒã¯ ã«éå®ãããªãããšãå€ããçããéãããæéã®äžã§èªåã®å¥œããªè©±ãèªç±ã«çºè¡šããŠããŸãã(ãããŠå匷äŒãªã©ã§ãªãéãã¯å€§äœãé
ãã€ããŠããŸã) connpass çã®åéãµã€ãã§ãé »ç¹ã«LTäŒãéå¬ãããŠãããããŸãã reedex.connpass.com connpass.com engineers.connpass.com äœæ
LTãæå¹ãªã®ã æåã«ãLTãšã¯ 説æãçºè¡šã®èŠææèãåãæãããã®1ã€ã®ææ®µ ãšèª¬æããŸããã LTâŠãšããããçºè¡šèªäœã«èŠææèã®ãã人ã«ã¯ããŒãã«ãé«ãããšæããŸãããããã§ãç§ãšããŠã¯ã瀟å
ã瀟å€åããæ°åã®ãã¡ãããã²LTã«ç»å£ããŠã¿ãŠã»ãããšæã£ãŠããŸãã ã説æããããšããè¡çºã®ç·Žç¿ã«ãªã LTã®ç¹åŸŽã¯ãäœãšèšã£ãŠããã®çãã§ãã ãé·ãæé話ãã®ã«èããããªãããç®ãåãããããªãããšãã人ã§ãã倧äœ5ïœ10åçµã£ãŠããŸãã°åŒ·å¶çã«çµäºã§ããããå²ãšå€±æããŠãæ¥ãããããªãã§ãã 瀟å€ã®LTã§ã€ãžãé£ã¶ã®ãæãâŠãšãã人ãããŸããã倧æµç€Ÿå€ã®LT㯠Twitter ã§å®æ³ãããã®ã§èŠãŠãã人ãã€ãžãé£ã°ããŠããäœè£ã¯ãªããšæããŸã(ç¬)ã togetter.com ãããªç°å¢ã®äžã§ãèªåãåŠãã ããšãæ°ã«ãªã£ãŠããããšãçãæéã§çºè¡šããããšã§ãè³æã®äœæã«æ
£ããåãããããäŒãæ¹ã«æ
£ãããããã¯ç€Ÿå
ã§äººã«èª¬æããããšã«ãæ
£ããŠãããã®ã§ã¯ãªãããšæã£ãŠããŸãã è²ããªæè¡ã®ç¥èŠãåŸããã æ°åãšããŠäŒç€Ÿã«å
¥ç€Ÿããçããã¯æ¥åã§äœ¿ãæè¡ãåŠãã§ããããšæããŸãããéšçœ²ãç°åã«ãªãã°ãŸãå¥ã®æè¡ãå¿
èŠã«ãªãã§ããããã転è·ãšããªãã°ä»æã£ãŠããæè¡ã§ã¯å€ªåæã¡ã§ããªãããšãããã§ãããã ãããªãšãã«ã æ°ããªæè¡ã(ååã ãã§ã)ç¥ã£ãŠããããšããã®ã¯å€§ããªæŠåšã«ãªãåŸãŸãã 話ãããåŽã ãã§ãªããèŽãåŽãšããŠãæ§ã
ãªäººã®æ§ã
ãªå
容ã®LTãèŽãäžã§ããšã³ãžãã¢ãšããŠã®ç¥èãã©ãã©ã身ã«ã€ããŠããããšæããŸãïŒ äººãšç¹ããæ©äŒã«ãªã ããšç€Ÿå€ã®LTã§èšããŸããšããããçµæ§ãªã¡ãªããã§ãã å
ã»ã©LTã®å
容㯠Twitter ã§å®æ³ããããšæžããŸããããçºè¡šãçµãããæèŠªäŒã«ãªã£ãåŸã§æ°ã«ãªã£ãçºè¡šè
ã«ã話ãèŽããŠã¿ãã®ããããšæããŸãããããã SNS çã§ç¹ããããšããããŸããã話ãçãäžããäžã§å¥ã®å匷äŒã«èªã£ãŠããã ããããšããããŸãã æ°åã®éã¯ã©ãããŠã瀟å€ã®äººãšç¹ããæ©äŒãå°ãªãããšæããŸããããããã£ãLTã®æ©äŒãã茪ãåºããŠãã£ãŠã¿ãŠã¯ã©ãã§ããããïŒ ãŸãšã ä»åã®èšäºã§èšãããã£ãããšã¯äžã€ã§ãã ã説æåãã®åäžã®ããã«ãLTã«ç©æ¥µçã«ç»å£ããŸãããïŒ ãããŠã çããã®é¢çœã話ããã²èãããŠãã ããïŒ ä»¥äžã§ãããèŠèŽããããšãããããŸããã(LT颚ã«) åè ライトニングトーク - Wikipedia IT業界でよく聞く「LT」ってなんなの?3つのメリットを知って、きみもLTしてみよう! | トビラシステムズ株式会社
ã¯ããã« FM_Harmonyã§ãã8æ2åç®ã®æçš¿ã«ãªããŸãã âååã®èšäºã¯ã³ãã©ã§ã tech-blog.rakus.co.jp ä»åã¯gitã³ãã³ãã®fetchã«ã€ããŠãåŠãã å
容ããŸãšããŠã¿ãŸããã ä»åã®èšäºãæžãããšæã£ããã£ãã㯠pullãšfetchã®éã ã«ã€ããŠå°ããããæã现ãããšãããŸã§çããããªãã£ãããšã§ãã ïŒå€§éæã« fetchã¯ããŒã¿ãæã£ãŠããã ããpullã¯mergeãŸã§è¡ã ãšããããšãŸã§ã¯çããããã®ã§ãã...ïŒ ããã§ããã®æ©äŒã«fetchã«ã€ããŠåŠã³ãªãããŠã¿ãŸããã GitãåŠã³å§ããã°ããã®æ¹ãã埩ç¿ããããšèããŠããæ¹ã®åèã«ãªãã°å¹žãã§ãã ã¯ããã« fetchã®èª¬æ...ã®åã«ãªã¢ãŒã远跡ãã©ã³ãã®èª¬æ æ¬é¡ãfetchã®èª¬æ merge, pullã®èª¬æ ãããã« åè fetchã®èª¬æ...ã®åã«ãªã¢ãŒã远跡ãã©ã³ãã®èª¬æ fetchã説æããããã§ ãªã¢ãŒã远跡ãã©ã³ã ã®èª¬æã¯æ¬ ãããŸããã ã§ã¯ããªã¢ãŒã远跡ãã©ã³ããšã¯äœã§ããããïŒ ãªã¢ãŒã远跡ãã©ã³ãïŒRemote-tracking branchïŒãšã¯ãããŒã«ã« ãªããžã㪠ã«ãã£ãŠ ãªã¢ãŒ ããªããž ããªã®ç¶æ
ãä¿æããåç
§ ã§ãã ç°¡åã«èšããšããªã¢ãŒãã«ããååã®ãã©ã³ããšåäžã®ã³ããããæããã©ã³ãã®äºã§ãã ãã®ãã©ã³ãã®ç¹åŸŽãšããŠããªã¢ãŒã远跡ãã©ã³ãã®ãã©ã³ãåã¯( ãªããžã㪠å)/(ãªã¢ãŒãã®ãã©ã³ãå)ã§åºå®ãããããŠãŒã¶ã倿Žãã³ããããããªã©ããŠãã©ã³ããæãã³ããããçŽæ¥æäœããããšã¯ã§ããªãããšãã£ãããšãæããããŸãã ãã®ãããããŒã«ã« ãªããžã㪠ããããªã¢ãŒã远跡ãã©ã³ããéããŠããªã¢ãŒ ããªããž ããªã®å€æŽã確èªãããããŒã«ã«ã®äœæ¥ãã©ã³ãã«ãªã¢ãŒãã®å€æŽãåã蟌ããšãã£ãããšãã§ããããã«ãªã£ãŠããŸãã ããããããŒã«ã« ãªããžã㪠ã¯24æé365æ¥ãããã¯ãŒã¯ã«æ¥ç¶ã¯ããŠããŸããã ãã®ãããããŒã«ã« ãªããžã㪠ã«ãããªã¢ãŒã远跡ãã©ã³ãã¯åžžã«ãªã¢ãŒãã®ãã©ã³ããšåããã®ãæãããã§ã¯ãããŸããã 誰ãããªã¢ãŒãã®ãã©ã³ãã«å€æŽãpushããŠããŸããšããªã¢ãŒã远跡ãã©ã³ããšãªã¢ãŒãã«ããååã®ãã©ã³ããæãã³ããããç°ãªããšããããšãçºçããŸãã ãã®ç¶æ³ãè§£æ¶ããããã«äœ¿ãã³ãã³ãã fetch ãªã®ã§ãïŒ æ¬é¡ãfetchã®èª¬æ fetchã³ãã³ããå©çšããããšã§ããªã¢ãŒ ããªããž ããªã®å€æŽãããŒã«ã« ãªããžã㪠ã«åã蟌ã¿ããªã¢ãŒã远跡ãã©ã³ããåæããããšãã§ããŸãã äŸãã°ãäžèšã®ã³ãã³ããå©çšãããšããªã¢ãŒ ããªããž ã㪠origin ã® master ãã©ã³ãã«ã€ããŠã倿ŽãããŒã«ã« ãªããžã㪠ã«åã蟌ã¿ããªã¢ãŒã远跡ãã©ã³ã origin/master ããªã¢ãŒããã©ã³ã master ãšåæãããŸãã $ git fetch origin master ãã®æç¹ã§ã¯ãããŒã«ã«ã®äœæ¥ãã©ã³ãã«å€æŽã¯åæ ãããŸããã ãã®ãããäŸãã°ããŒã«ã«ã®ãã©ã³ã master ã«å¯ŸããŠã³ããããè¡ã£ãŠããå Žåããªã¢ãŒã远跡ãã©ã³ããšããŒã«ã«ã®ãã©ã³ããšãåå²ããããšã«ãªããŸãã merge, pullã®èª¬æ ããŠãããããŠåã蟌ãã ãªã¢ãŒããã©ã³ãã®å€æŽãããŒã«ã«ãã©ã³ãã«åæ ããã«ã¯ã©ãããã°ããã§ããããïŒ ãã®æ¹æ³ã®äžã€ãšããŠã ããŒã«ã«ãã©ã³ãã«ãªã¢ãŒã远跡ãã©ã³ããmergeãã ãšããæ¹æ³ããããŸãã äŸãã°ã origin/master ãšããŒã«ã«ãã©ã³ã master ãåå²ããå Žåãäžèšã®ã³ãã³ããå®è¡ããããšã§å³ã®ãããªãã©ã³ãæ§é ã«ãªããŸãã $ git checkout master $ git merge origin/master ãŸããåãã³ãã³ããå®è¡ããå Žåã§ãã origin/master ãããŒã«ã«ãã©ã³ãã®å
ã®ã³ããããæããŠããã ãã§åå²ããŠããªãå Žåã master ã®æãã³ãããã倿Žããã ãã®ãããã Fast-forward ããŒãžãè¡ããŸãã å¥ã®æ¹æ³ãšããŠã pull ã³ãã³ããå©çšãããšãããã®ããããŸãã ããã¯ã fetch + merge ãšåãåäœãè¡ããŸãã ããªãã¡ã $ git checkout master $ git pull origin master ãšããã³ãã³ãã¯ãäžèšã®ã³ãã³ããšå矩ã§ã ã *1 $ git checkout master $ git fetch origin master $ git merge origin/master ãããã« fetchã«ã€ããŠç°¡åã«ãŸãšããŠã¿ãã®ã§ããããããã§ããã§ããããã å人çã«ã¯ãªã¢ãŒã远跡ãã©ã³ãã®ååšãç¥ããªãã£ãããããã®æ©äŒã«ç¥ãããšãã§ããŠè¯ãã£ããšæããŸãã ä»åã®èšäºäœæãéããŠãGitã«ã€ããŠãŸã ãŸã ç¥èãè¶³ããªãããšãåãã£ãã®ã§ããŸãå¥ã®æ©äŒã«ä»ã®æäœ(addãpush, etc...)ã«ã€ããŠãæ©äŒãäœã£ãŠèª¿ã¹ãŠã¿ãããšæããŸãã åè Git - リモートブランチ Gitã®å
¬åŒã«ãããªã¢ãŒã远跡ãã©ã³ããšfetchã®èª¬æã§ã ãšã³ãžã㢠äžéæ¡çš ãµã€ã ã©ã¯ ã¹ã§ã¯ããšã³ãžãã¢ã»ãã¶ã€ããŒã® äžéæ¡çš ãç©æ¥µçã«è¡ã£ãŠãããŸãïŒ ãèå³ãããŸãããæ¯éã確èªããé¡ãããŸãã https://career-recruit.rakus.co.jp/career_engineer/ ã«ãžã¥ã¢ã«é¢è«ãç³èŸŒã¿ãã©ãŒã ã©ã®è·çš®ã«å¿åããã°è¯ããããããªããšããæ¹ã¯ãã«ãžã¥ã¢ã«é¢è«ãéæè¡ã£ãŠãããŸãã 以äžãã©ãŒã ãããç³èŸŒã¿ãã ããã rakus.hubspotpagebuilder.com ã©ã¯ ã¹Developersç»é²ãã©ãŒã https://career-recruit.rakus.co.jp/career_engineer/form_rakusdev/ ã€ãã³ãæ
å ± äŒç€Ÿã®é°å²æ°ãç¥ãããæ¹ã¯ãæ¯é±éå¬ããŠããã€ãã³ãã«ãåå ãã ããïŒ âTECH PLAY techplay.jp âconnpass rakus.connpass.com *1 : å³å¯ã«ã¯å矩ã§ã¯ãªããmasterã«mergeãããã®ã¯FETCH_HEADãšããfetchããéã«äœæããããã©ã³ãã§ãã
id:radiocat ã§ããæ¢ã«èšäºã§ç޹ä»ãããŠããŸããã倧éªãªãã£ã¹ã®éçºéšå
ã§æ¯æéå¬ããŠãããã¢ããã·ã¥ã§ãã¿ã¹ã¯ç®¡çã®ãããããšããŒã«ã®äœ¿ãããããšããã¿ã€ãã«ã§çºè¡šãããŸããã tech-blog.rakus.co.jp ä»åã¯ãã®çºè¡šã§ç޹ä»ãã ã¹ã¯ã©ã æ¹åŒã®ã¿ã¹ã¯ãããžã¡ã³ãææ³ãæ¹ããŠèšäºã«ãŸãšããŸãã å人ã®ã¿ã¹ã¯ãããžã¡ã³ããšã¯ïŒ ããããå人ã®ã¿ã¹ã¯ãããžã¡ã³ããšããã®ã¯ãã€ãäœããã©ã管çããã®ã§ããããïŒ å®¶æãšç掻ããŠãã人ã¯å®¶æã«é ŒãŸããè²·ãç©ãäŒç€Ÿåž°ãã«è²·ã£ãŠåž°ãããã«è²·ãç©ãšããã¿ã¹ã¯ã管çããããããããŸãããå察ã«ãã©ã€ããŒãã¯èªç±æ°ãŸãŸã«éããããã®ã§çްããäºãŸã§ç®¡çããããªã人ããããããããŸããã ããŒã«ã®éžã³ãã äœãã©ããŸã§ç®¡çãããã®ãã¯äººãããããªã®ã§ãããŒã«ã®éžã³ããããã®äººã®ç掻ã¹ã¿ã€ã«ãç°å¢ã«ãã£ãŠå€ãã£ãŠããŸãã äžã®äžã«ã¯æ§ã
ãªã¿ã¹ã¯ãããžã¡ã³ãããŒã«ããããŸãããããäžã§ã¯TrelloãTodoistãasanaãšãã£ããµãŒãã¹ã䜿ã£ãäºäŸãããç®ã«ããŸããç§ã®æå±ããããŒã ã§ã¯Trelloã䜿ã£ãŠããŸãã trello.com ja.todoist.com asana.com ç§ã®å Žåã¯å®¶æãšç掻ãããŠããŠèªåã®æéã¯éãããŠããã®ã§ã¹ããæéã¯å€§åã§ãããŸãã ã¹ãã 㯠Android ã§ãã«ã¬ã³ããŒãã¡ãŒã«ã¯ Google ã®ãµãŒãã¹ã䜿ããããããããšé£æºããäœ¿ãæ¹ããã€ã³ãã«ãªããŸãã ãŸããæ§æ Œçã«ãã©ã€ããŒããããŸãããããªç®¡çããã®ã¯æ¯èŠããæãããããã¹ããæéã䜿ãã«ããŠãæè»œããã«ãžã¥ã¢ã«ããéèŠã§ãã Google Keepã®äœ¿ãæ¹ ä»¥äžãèžãŸããŠç§ãéžãã ããŒã«ã Google Keepã§ãã Google Keepã¯ã¿ã¹ã¯ç®¡çããŒã«ãšããããã¯ã¡ã¢ããŒã«ã§ããããããéã«ã·ã³ãã«ã§å人ã§ã¿ã¹ã¯ã管çãããªããã®ã¬ãã«ã§ååãšæããŠããŸãã ã¹ã±ãžã¥ãŒã«ãšã®é£æºãªã© Google ã®ä»ã®ãµãŒãã¹ãšã飿ºã§ããŸãã ã¹ãã ã®ããŒã ç»é¢ã«è¡šç€ºããã ãŠã£ãžã§ãã ããé§
ãªã©ã®ç¹å®ã®å Žæã«å°çãããéç¥ããŠããããªãã€ã³ãæ©èœã䟿å©ã§ãã å€åºäžã§ããã°é³å£°ã§ç»é²ãããã ã¹ã¯ãªãŒã³ã·ã§ãã ãæ®ã£ãŠæ®ãã¯èªå®
ã§ãšããããã®å Žã®ç¶æ³ã«å¿ããäœ¿ãæ¹ãå¯èœã§ãã ã¹ã¯ã©ã æ¹åŒã®ã¿ã¹ã¯ãããžã¡ã³ãå®è·µæ¹æ³ ãããŠã Google Keepã䜿ãã ã¹ã¯ã©ã ã®ããæ¹ã«ãã³ããåŸãã¿ã¹ã¯ç®¡çã®ææ³ãä»å玹ä»ãã ã¹ã¯ã©ã æ¹åŒã®ã¿ã¹ã¯ãããžã¡ã³ãã§ãã ã¹ã¯ã©ã åæ§ã«ã·ã³ãã«ã§è»œéãªãããžã¡ã³ãææ³ã§ãã ããã¯ãã° ã®ããã«éèŠãªãã®ãã1åã«äžŠã¹ã Google Keepã¯ã¡ã¢ããŒã«ãšããŠç»é²ããã¡ã¢ã瞊äžåã«äžŠã¶ããã«ãªã£ãŠããŸãããã®ããéèŠãªãã®ããé çªã«äžŠã¹ãã ãã§ ããã¯ãã° ã®ããã«æ±ãããšãã§ããŸãã ããã¯ãã° ã®ããã«ãå®äºããïŒããŠããªããã ãã管ç ã¹ã¯ã©ã ã§ã¯ã¹ããªã³ãã®æéãŸã§ã«å®äºããŠããªãã¿ã¹ã¯ã¯ããšãéäžãŸã§å®æããŠãããšããŠãæªå®äºãšããŠæ±ããŸããå人ã®ã¿ã¹ã¯ãããžã¡ã³ããåæ§ã§ããè²·ãç©ãããããããã°ã«èšäºãæžããšããã¿ã¹ã¯ãéäžãŸã§çµãã£ãŠããŠãããŸãæå³ããããŸããããã®ãããå®äºãããã©ããã ãã芳枬ããããã«ããŸãããŸããå®äºããã¿ã¹ã¯ã¯ã ã¢ãŒã«ã€ã ãããããšã§äžèЧããã¯é€å€ãããŸãããã¡ãã¥ãŒãã ã¢ãŒã«ã€ã äžèЧã衚瀺ããããšãã§ãããããã€ã§ãå®äºããã¿ã¹ã¯ã確èªããããšãã§ããŸãã ã¿ã€ã ããã¯ã¹ã決ããŠç¹°ãè¿ã ç§ã¯æ¯é±æ¥ææ¥ã«1é±éãæ¯ãè¿ã£ãŠãç¿é±ã®ãã©ã³ãã³ã°ãããŠããŸãããã©ã³ãã³ã°ã§ã¯1é±éã§ã§ããããªç¯å²ã®äžäœã®ã¿ã¹ã¯ã ããéèŠãªé ã«äžŠã³æ¿ããŠããªãã€ã³ããèšå®ããããã¿ã¹ã¯ã®å
å®¹ãæŽçããŸãã ã¹ã¯ã©ã ã§ããŠãŒã¶ãŒã¹ããŒãªãŒãå
·äœåãããå®äºã®å®çŸ©ãæç¢ºåãããã㊠ããã¯ãã° ãReadyã«ããŸãããå人ã®ã¿ã¹ã¯ãåãããã«ããã°ã®ã¢ãŠãã©ã€ã³ãã¡ã¢ããŠããããã Google Keepã®ãªã¹ãæ©èœã䜿ã£ãŠããããšã®è©³çްããã§ãã¯ãªã¹ãåããŠReadyã«ããŸãã ã¹ã¯ã©ã éçºãšã¯éããšãã ã¹ã¯ã©ã éçºãšã¯éã£ãŠå人ã®ã¿ã¹ã¯ãããžã¡ã³ãã§ã¯ãããªãããšããããŸãã å
šäœã®èŠéããç«ãŠãªã äœããéçºããããªãªãŒã¹ããããã§ã¯ãªãã®ã§ãå人ã®ã¿ã¹ã¯ç®¡çã«ã¯çµããããããŸããããã®ããå
šäœã®èŠç©ãããããŒã³ããŠã³ãã£ãŒããäœã£ãŠèŠéããç«ãŠããããªããšã¯ããŸããã åã
ã®ã¿ã¹ã¯ãèŠç©ãããªã å
šäœã®èŠéããç«ãŠãå¿
èŠããªãã®ã§åã
ã®ã¿ã¹ã¯ãèŠç©ãããŸããããã ããåã
ã®ã¿ã¹ã¯ãã©ããããæéããããããªã©ã现ãã管çããã人ã¯èŠç©ãããããŠããããããããŸããã ãããã¯ãããŸã§ç§ã®å Žåã¯ããå¿
èŠããªããšæããŠããããšã§ãããå¿
èŠã«æããå Žåã¯ãããããã¢ã¬ã³ãžããŠã¿ãŠãè¯ããããããŸããããã®å Žå㯠Google Keepã§ã¯ã§ããªãããšãããã®ã§ãäžèšã§ç޹ä»ããTrelloãªã©ã®æ¬æ Œçãªã¿ã¹ã¯ç®¡çããŒã«ã䜿ãã»ããè¯ããããããŸããã ãããã« ãã®ææ³ã¯ããããã¯ã·ã³ãã«ã§ãããããã»ã¹ããã¡ããšåãããã«ããããã«ã¯ãæ¥ã
ã®ç¶æ³ãã§ãã¯ã1é±éåäœã®å®äºç¢ºèªããµãããããã©ããŸã§ããããªã©ããèªåã§ã«ãŒã«ã決ããŠãã©ãã·ã¥ã¢ããããå¿
èŠããããŸããçè§£ã¯å®¹æã§ãããç¿åŸãå°é£ãªç¹ã ã¹ã¯ã©ã ãšåãã§ãã ä»åã¯ç§ãæçšããŠãã Google Keepã䜿ã£ãŠã®ããããã玹ä»ããŸããããåæ§ã®ããããã¯ä»ã®ããŒã«ã§ãã§ãããããããŸãããèªåã®äœ¿ããããããŒã«ã§å®è·µããŠã¿ããšè¯ãã§ãããããã ã Google Keepã¯è»œéã§æ±ããããããŒã«ãªã®ã§ãä»å玹ä»ããææ³ã«åããŠããããŒã«ã ãšæã£ãŠããŸããç§ãšåãããã«æ®æ®µäœ¿ãããŒã«ã¯ Google ã®ãµãŒãã¹ãäžå¿ã§æè»œã«ã¿ã¹ã¯ãããžã¡ã³ãããããšãã人㯠Google Keepã䜿ã£ãŠ ã¹ã¯ã©ã æ¹åŒã®å人ã®ã¿ã¹ã¯ãããžã¡ã³ããå®è·µããŠã¿ãŠã¯ãããã§ããããã åœæ¥çºè¡šããã¹ã©ã€ãã¯å
¬éããŠããŸãã®ã§è¯ããã°ã芧ãã ããã speakerdeck.com åç¥ïŒMeetupã§ ã¹ã¯ã©ã éçºã«ã€ããŠçºè¡šããŸã åœããã°ã§ãæ¢ã«åç¥æžã¿ã§ããã9/13ã«éå¬ãããåŒç€Ÿäž»å¬ã®Meetupã§æ¥œæ¥œç²Ÿç®ã®éçºããŒã ãå®è·µããŠãã ã¹ã¯ã©ã éçºã®åãçµã¿ã«ã€ããŠçºè¡šããŸããä»åã®çºè¡šã¯éå»ã® 瀟å
ã€ãã³ã ã®è³æãããŒã¹ã§ãããè³æãã¢ããããŒãããŠåœæã¯ãªãªãŒã¹åã§è©±ããªãã£ãå
容ãããããžã§ã¯ãã®ãã®åŸã®ç¶æ³ã«ã€ããŠã話ãããäºå®ã§ãã®ã§ãã²ãåå ãã ããã rakus.connpass.com ãšã³ãžã㢠äžéæ¡çš ãµã€ã ã©ã¯ ã¹ã§ã¯ããšã³ãžãã¢ã»ãã¶ã€ããŒã® äžéæ¡çš ãç©æ¥µçã«è¡ã£ãŠãããŸãïŒ ãèå³ãããŸãããæ¯éã確èªããé¡ãããŸãã https://career-recruit.rakus.co.jp/career_engineer/ ã«ãžã¥ã¢ã«é¢è«ãç³èŸŒã¿ãã©ãŒã ã©ã®è·çš®ã«å¿åããã°è¯ããããããªããšããæ¹ã¯ãã«ãžã¥ã¢ã«é¢è«ãéæè¡ã£ãŠãããŸãã 以äžãã©ãŒã ãããç³èŸŒã¿ãã ããã forms.gle ã€ãã³ãæ
å ± äŒç€Ÿã®é°å²æ°ãç¥ãããæ¹ã¯ãæ¯é±éå¬ããŠããã€ãã³ãã«ãåå ãã ããïŒ rakus.connpass.com
kuwa_38ã§ãã ã©ã¯ ã¹ã§ã¯æïŒåã®ããŒã¹ã§éçºã¡ã³ããŒã®äº€æµäŒãšããŠãã¢ããã·ã¥ãéå¬ããŠããŸãã ãã¢ããã·ã¥ãšã¯ããŒã«ãªã©ãšè»œé£ãçæã«ãã©ã³ã¯ã«æè¡å
容ã«ã€ããŠçºè¡šãããèªãåã亀æµäŒã§ãã ïŒ7æåã®ãã¢ããã·ã¥ã«ã€ããŠã¯äžèšã®èšäºãã芧ãã ããïŒ tech-blog.rakus.co.jp 倧éªéçºéšã®ãã¢ããã·ã¥ã§ã¯ã決ããããããŒãã«æ²¿ã£ãçºè¡šãè¡ããããŒãæ çºè¡šããšèªç±ãªããŒãã§çºè¡šãè¡ããLTïŒLight Talk ïŒæ ããååšããŸãã 仿ã®ããŒãã¯ã ããŒã«ç¹é ãã§ããåã
ã䜿çšããŠãã䟿å©ãªããŒã«ãæ¥åå¹çåã®ããã«äœ¿ã£ãŠããããŒã«ã«ã€ããŠçºè¡šããŠé ããŸããã æ¬èšäºã§ã¯ããŒãæ ãLTæ ïŒèªç±çºè¡šïŒããããã®çºè¡šã«ã€ããŠã玹ä»ããŸãã ããŒãæ ïŒããŒã«ç¹éïŒ ããŒã«çŽ¹ä» Node.jsãšnpmã®é¢é£ããŒã« My Powerful Scripts ã¿ã¹ã¯ç®¡çã®ãããããšããŒã«ã®äœ¿ããã å人çã«äœ¿ã£ãŠãã䟿å©ããŒã« æ¥åå¹çUP iOSã¢ã㪠LTæ ïŒèªç±çºè¡šïŒ ã€ã³ãã©ãšã³ãžãã¢ã®æã話 ããŠãã³ã»ãžã£ãŒã㌠ãããã« ããŒãæ ïŒããŒã«ç¹éïŒ ããŒãæ ã§è¡ããã6ä»¶ã®çºè¡šã«ã€ããŠã玹ä»ããŸããåçºè¡šã®ç޹ä»ãå°ãèšèŒããåŸãçºè¡šå
ã§è¿°ã¹ãããŠããããŒã«ãåæããŸãã ããŒã«çŽ¹ä» Snipping Tool ã Tampermonkey ã® ã¹ã¯ãªãã ãªã©æ¥åã§äœ¿çšããŠãã䟿å©ãªããŒã«ã ã¹ã¯ãªãã ã玹ä»ããŠé ããŸãããæ¥åã§ã©ã®ãããªæã«äœ¿ã£ãŠããã®ããšããã話ããã£ãããã䜿ãå Žé¢ãæ³åãæãããä»ã®ããŒã ã®æ¹ãã©ã®ãããªæ¥åãé²ãæ¹ãããŠããã®ããšãã£ãç¹ã§ãåèã«ãªãçºè¡šã§ããããŸãã Snipping Toolã廿¢ããã ããšã¯ç¥ããªãã£ãããé©ãã§ããã Snipping Tool phpStormã®Diff Node.jsãšnpmã®é¢é£ããŒã« Windows ã§ã®Node.jsãnpmã®ããŒãžã§ã³ç®¡çããŒã«ã§ããNodistãnpmã®ããŒãžã§ã³5.2.0ã§å°å
¥ãããnpxãèªäœãããã¹ã¯ãŒããçæããããŒã«ã«ã€ããŠç޹ä»ããŠé ããŸãããnpmã䜿çšããåŸæ¥ã®æ¹æ³ãšãnpxãäœ¿ãæ¹æ³ãåã§å®è·µããŠäžãã£ããããnpxã䜿ãããšã§ã¯ã³ã©ã€ã³ã§ç°¡æœã«å®è¡ã§ããããšããããçºè¡šã«ãªã£ãŠããŸããã Nodist npm npx ãã¹ã¯ãŒããâŸå✣æããããŒã« My Powerful Scripts Tampermonkeyã§èªäœãã䟿å©ãª ã¹ã¯ãªãã ã«ã€ããŠã©ã³ãã³ã°åœ¢åŒã§çºè¡šããŠé ããŸãããGitLabã§ã®ã¬ãã¥ãŒãç°¡åã«ããããã«åªå
床ãä»å ãããã¿ã³ã衚瀺ãã ã¹ã¯ãªãã ãMattermostã§æªèªã®ã¿ã衚瀺ãã ã¹ã¯ãªãã ãªã©ã玹ä»ããŠé ããŸããããMattermostã§æªèªã®ã¿ã衚瀺ãã ã¹ã¯ãªãã ãã¯ãã£ãããã¹ãããªããŠèŠæããªãã®ã§ç§ãæ®æ®µãã䜿ãããŠããã£ãŠããŸãã Tab ããŒæŒäžæã«ãã¿ãïŒHard TabïŒã®ä»£ããã«ãã¹ããŒã¹ x 4ïŒSoft TabïŒãå
¥åããã¹ã¯ãªãã GitLab ã® Merge Request ã® Code Review ã³ã¡ã³ãã«å¯Ÿå¿åªå
床ãä»å ãã ã¹ã¯ãªãã Mattermost ã§æªèªãã£ã³ãã«ã ãã衚瀺ãã ã¹ã¯ãªãã ã¿ã¹ã¯ç®¡çã®ãããããšããŒã«ã®äœ¿ããã è²ã
ãªã¿ã¹ã¯ç®¡çããŒã«ã玹ä»ããåŸãçŸåšäœ¿ã£ãŠããã¿ã¹ã¯ç®¡çããŒã«ïŒ Google KeepïŒãšãã®äœ¿ãæ¹ãäœãè¯ãã®ãã«ã€ããŠçºè¡šããŠé ããŸãããæ¥ååããšããããã¯ãã©ã€ããŒãã§ã®ã¿ã¹ã¯ç®¡çã«ãã©ãŒã«ã¹ããã話ã§ããã Google Keepã§ã¯ Googleã«ã¬ã³ã㌠ãªã©ã®ä»ã® Google ã¢ããªãšé£æºãã§ããããšãã©ãã§ãèŠããããšã䟿å©ãšã®ããšã§ãããŸããã¡ã¢ã®ããã«æè»œã«æžã蟌ã¿é±æ«ã«åªå
é äœã倿Žããæ¬¡ã®1é±éã®ã¿ã¹ã¯ã決ããŠããããã§ãã Google Keep ïŒçºè¡šè
ããããïŒ Trello ïŒä»ã®äž»æµïŒ Todoist asana Toodledo Google Tasks Microsoft To-Do å人çã«äœ¿ã£ãŠãã䟿å©ããŒã« ã³ããŒå±¥æŽãä¿åããŠãããããŒã«ïŒClipyïŒã Markdown èšæ³ãçšããŠç¶ºéºã«æžãããšã®ã§ãããšãã£ã¿ïŒTyporaïŒã Mac äžã®ã¢ããªã»ãã¡ã€ã«ãªã©ãæ€çŽ¢ã§ããããŒã«ïŒSpotlightæ€çŽ¢ïŒãªã©æ¥åã®äžã§å人çã«äœ¿ã£ãŠãã䟿å©ãªããŒã«ã®ç޹ä»ãè¡ããŸãããæ¥åã§ Markdown èšæ³ãçšããããšãå€ããããTyporaãMarpã¯æçšããŠããŸãã Clipy Typora Spotlightæ€çŽ¢ Marp æ¥åå¹çUP iOS ã¢ã㪠æ¥åå¹çåã®ããã«äœ¿çšããŠãã iOS ã¢ããªã«ã€ããŠç޹ä»ããŠé ããŸãããçŸåšãçºè¡šè
ã®æ¹ãè¡ã£ãŠããæ¥åã®é¢ä¿äžãOffice LensãSkitchãªã©ã®ç»åå å·¥ã¢ããªãã¡ã€ã³ã§ãããããŸããšããŠãæåã«æ¿ç¹ãä»ããŠãããDakutenãšãã£ãé¢çœãã¢ããªã®ç޹ä»ããã£ãããã å
èŠãã ãã®ã§ãªãèãæããç¬ãã®èµ·ããçºè¡šã§ãããç§ãæ
å ±å
±æã®ããã« ã¹ã¯ãªãŒã³ã·ã§ãã ããšãã説æãä»å ããããšã¯è¯ãè¡ããããã€ãã詊ããŠã¿ãããšæããŸãã Office Lens Skitch Key æ¥œæ¥œç²Ÿç® ã¢ã¶ã€ã¯ ãŒãã&ã¢ã¶ã€ã¯å å·¥ã¢ã㪠Dakuten LTæ ïŒèªç±çºè¡šïŒ LTæ ã§è¡ããã2ä»¶ã®çºè¡šã«ã€ããŠã玹ä»ããŸãã ã€ã³ãã©ãšã³ãžãã¢ã®æã話 å€ãšããã°æã話ããã®çºè¡šã§ã¯ã€ã³ãã©ãšã³ãžãã¢ãå®éã«èµ·ãããããŸãã¯ãèµ·ãããšèãå·ãããã¹ã«ã€ããŠã玹ä»é ããŸãããçºè¡šäžã¯ç¬ããèµ·ãã£ãŠããŸãããã rm -rf / ãshutdownã³ãã³ããªã©ã誀ã£ãŠå®è¡ããŠããŸããšç¬ãããšã§ã¯æžãŸãªããã¹ã«ã€ããŠã玹ä»é ããŸãããrmã³ãã³ããshutdownã³ãã³ããæ¥åã§äœ¿ã£ãããšã¯ãããŸããããæ©äŒããããšãã¯æ¬åœã«æ°ãä»ããªããšãããªããªãšèããããããçºè¡šã§ããã ããŠãã³ã»ãžã£ãŒã㌠php conference 2018 Kansai ã«ç»å£ããããšã«ã€ããŠãç»å£ã決ãŸããŸã§ãæ¥åãšããŠç»å£ããã«ãããæºåããããšãè³æäœæãªã©ã«ã€ããŠã説æé ããŸãããå
¬éãªããŒãµã«ãåœæ¥ã®çºè¡šã«è³ããŸã§ã®çºè¡šè
éã§ã®ã¿ã¹ã¯ç®¡çãæ
å ±å
±æãªã©ãç»å£ãŸã§ã®éçšãè£åŽã«ã€ããŠç¥ãããšãã§ããçºè¡šãšãªã£ãŠããŸããã ïŒç»å£ãããæ§åã«ã€ããŠã¯äžèšã®èšäºã埡芧ãã ããïŒ tech-blog.rakus.co.jp ãããã« ä»æãæ§ã
ãªã¿ã€ãã®çºè¡šãèãããšãã§ããŠã倧å€å
å®ãããã¢ããã·ã¥ã«ãªããŸããã æ¬¡åã®ããŒãã¯ã ä»äººã®ã¹ã©ã€ãçºè¡šäŒ ãã§ããä»ã®äººãäœã£ãã¹ã©ã€ããé¢çœãã£ãèšäºãã¹ã©ã€ããçšããŠçºè¡šããŠé ããŸããä»ãŸã§ã«ãªãçºè¡šåœ¢åŒãªã®ã§ãã©ã®ãããªçºè¡šããããã®ã楜ãã¿ã§ãã
ã©ã¯ ã¹ã¯ã ITæè¡ ã§äžå°äŒæ¥ã匷ãããŸãïŒããããã·ã§ã³ã«æ²ãã ã¡ãŒã«å
±æã»ç®¡çã·ã¹ãã ã®ã¡ãŒã«ãã£ãŒã©ãŒããå§ãŸããçµè²»ç²Ÿç®ã·ã¹ãã ã®æ¥œæ¥œç²Ÿç®ã«è³ããŸã§ã å»¶ã¹40,000瀟ãè¶
ããã客æ§ã«èªç€Ÿéçºãã ã¯ã©ãŠã ãµãŒãã¹ãæäŸããŠããŸããã ä»åïŒ9/13(æš)ïŒã¯ã ã©ã¯ ã¹ã§äž»å ã¯ã©ãŠã ãµãŒãã¹ã®éçºãçœåŒãããšã³ãžãã¢ã«ãã ããŒã¯ ã»ãã·ã§ã³ãšäº€æµäŒãéå¬ããŸãã ã¯ã©ãŠã ãµãŒãã¹éçºã®ãšã³ãžãã¢ãšããŠæŽ»èºããŠããæ¹ã¯ãã¡ããã ã¯ã©ãŠã ãµãŒãã¹éçºã«ãèå³ããæã¡ã®ãšã³ãžãã¢ã®æ¹ãæ°è»œã«ãåå é ããã°ãšæããŸãã èªç€Ÿéçºãªãã§ã¯ã®æè¡ã»éçšããŠããŠããæ°ããåãçµã¿ã®ææã倱æè«ãªã© ãåèã«ããŠé ããæ
å ±ãç©æ¥µçºä¿¡ããŠãããããšèããŠãããŸãã ãã®ã€ãã³ããæ°ããæ°ã¥ããæé·ã«ã€ãªããæ©äŒãæäŸããå Žã«ãªããšãšãã«ã ã©ã¯ ã¹ç€Ÿå¡ãšåå è
ã®çããŸããŸãåå è
ã®çããŸåå£«ã§æ°ããªã€ãªãããçãŸãããã£ããã«ãªãã°å¹žãã§ãïŒ é嬿ŠèŠ ãæ¥æã2018/9/13(æš) 19:30ïœ21:30(éå Žã¯19:00) ãäŒå Žã ã©ã¯ ã¹ æ±äº¬æ¬ç€Ÿ ïŒã151-0051 æ±äº¬éœæžè°·åº åé§ã¶è°· 5-27-11ãã¢ã°ãªã¹ã¯ãšã¢æ°å®¿2F [ã¢ã¯ã»ã¹] ïŒ ãå®å¡ã30å ãç³èŸŒã¿ã connpass ãåå è²»ãç¡æ ãäž»å¬ã ã©ã¯ã¹ ä»åã® ããŒã¯ ããŒã çµãããªã ã¹ã¯ã©ã ãïœæ¥œæ¥œç²Ÿç®ã®ãµãŒãã¹æ¡å€§ãæ¯ãã ã¹ã¯ã©ã éçºã®åãçµã¿ 倧塿£éïŒããã€ããŸãã¿ã¡ïŒ ã©ã¯ ã¹ã§ã¯ããŸã å€ãã®éçºããŒã ã ãŠã©ãŒã¿ãŒãã©ãŒã« åã® éçºããã»ã¹ ãæ¡çšããŠããŸããã äžéšã®ããŒã ã§ ã¹ã¯ã©ã ã«ãã ã¢ãžã£ã€ã« éçºã«åãçµãã§ããŸãã ä»åã¯æ¥œæ¥œç²Ÿç®ããŒã ã§ã®åãçµã¿ã玹ä»ããŸãã å®éã«ãã£ãŠã¿ããšæ§ã
ãªåé¡ãçºçããŸãããåé¡è§£æ±ºã«åããã¢ã¯ã·ã§ã³ãåãçµã¿ãéããŠåŸãç¥èŠãä»åŸã®èª²é¡çãäºäŸã亀ããŠã話ãããŸãã ãã ã¯ãªãŒã ïŒèªç§°ïŒãšããŠã®ãã£ãŠããïŒãïœ iOS ã¢ããªéçº ããŒã ãçã㊠å·äžŠè£ïŒãããªã¿ããïŒ è¥æãšãŒã¹ãšã³ãžãã¢ãåããŠã® iOS ã¢ããªéçº ã§ãã ã¯ãªãŒã ãšããŠå¥®éããã話ãã§ãã iOS ã¢ããªéçº ã¯ãèªèº«ãåãã¡ã³ããŒãåããããççŽæïŒ3ãµæïŒïŒïŒïŒã ãã® ãã¹ããŒã ãäºæãããäžå©ãªæ¡ä»¶äžã§ããã ã¯ãªãŒã ãšããŠã©ã®ããã«ããŒã ããªãŒãã£ã³ã°ããã®ãã æ§ã
ãªäºäŸã亀ããŠã玹ä»ããŸãã æµè¡ã®éçºææ³ChatOpsãšã¯ãïœæ¥œæ¥œæçްããŒã /ChatOpsã§ã«ãŒãã£ã³äœæ¥ããŸãããšèªååïœ äžç°è±äžïŒã¿ããããã¡ïŒ Jenkinsã®å°å
¥ã§èªååãé²ãã ãã©ããJenkinsãæ¯åéãã®ã¯é¢åãããã¢ã«ãŠã³ãã®äœæãé¢åãããéãšã³ãžãã¢ã«äœ¿ã£ãŠãããã«ã¯ã¡ãã£ãšããŒãã«ãé«ããã ããã§å°å
¥ããã®ãChatOps! Slackäºæã®ãã£ããããŒã«ãMattermostãã§ã«ãŒãã£ã³äœæ¥ãäžžããšèªååããŸããã å©çšãã bot ããŒã«ãã·ã¹ãã æ§æãHubot ã¹ã¯ãªãã ã®å®äŸãªã©ãããŠããŠãäœãããšãªãã玹ä»ããŸãã ã¿ã€ã ããŒãã« 19:00 éå Žã»åä»éå§ 19:30 ã€ãã³ãã¹ã¿ãŒã 21:30 çµäºäºå® ããŒã¯ ãçµããæ¬¡ç¬¬ã亀æµäŒã«ç§»ããŸãã 亀æµäŒã§ã¯ããã£ã³ã¬ãŒããŒããããªã³ã¯ããçšæèŽããŸãã ãæ°è»œã«ãåå ãã ããã ãšã³ããªãŒæ¹æ³ [connpass] ãããšã³ããªãŒããé¡ãããŸãã â»åœæ¥ã¯ãååº2æãæåãã ãã â»æäŸå¯èœãªèšåïŒ Wi-Fi ã黿º äŒå Ž ã©ã¯ ã¹ãæ±äº¬ãªãã£ã¹2F ã»ã ããŒã«ãŒã æ±äº¬éœæžè°·åº åé§ã¶è°· 5-27-11ãã¢ã°ãªã¹ã¯ãšã¢æ°å®¿2F [ã¢ã¯ã»ã¹]
ããã«ã¡ã¯ããšã³ãžãã¢ã®mickey-STRANGEã§ãã ä»ãŸã§ã¯ããã©ãããããããŒãã«ããç°¡åã«ââããæ¹æ³ãã玹ä»ããŠããŸããã tech-blog.rakus.co.jp ä»åã®èšäºã§ã¯ã3幎ç®ã«ãªã£ãç§ãããããŸã§ã®ãšã³ãžãã¢ç掻ã®äžã§ãã£ãŠãŠããã£ããšæããã JavaScript ã§éã¶ãããšã«ã€ããŠã話ããããšæããŸãã ãšã³ãžãã¢ã«ãªããšåšããããå匷ããšããæ¹ããããããããããªæè¡è§Šã£ãšããæ¹ããããããšå£°ããããããããšãå€ããšæããŸãã ããããäœããæãä»ããŠãããåãããªããã©ããªæè¡ããã©ããªèšèªãè§Šã£ãŠã¿ãã°ãããåãããªãããšæåã¯æããããããŸããã ãããã£ãæ°äººãšã³ãžãã¢ã®æ¹ãååŒ·ãšæ°è² ãéãããè»œãæ°æã¡ã§ã JavaScript ã§éã¶ãããšããå§ããã¡ãªããã«ã€ããŠã話ããŠãããŸãã å®è¡ç°å¢ã®æºåãèŠããªã JavaScript ã®å®è¡ç°å¢ã¯ãã©ãŠã¶ã§ããå匷ãå§ããããã®ç°å¢æ§ç¯ãšãããã§ãŒãºãå¿
èŠãããŸããã ãã¹ãçšã®HTMLãã¡ã€ã«ããçšæããŠããŸãã°ãã©ãŠã¶ã§éãã ãã§å®è¡ããŠãããŸãã ãã ãæåã¯HTMLã®èšè¿°ãš JavaScript ã®èšè¿°ãåæã«èããã®ãé£ãããšæããŸãããããªæã¯æ®æ®µèŠããµã€ãã®HTMLæ§æããã®ãŸãŸåŒã£åŒµã£ãŠããããšããå§ãããŸãã å®éã«å
¬éãããŠããHTMLæ§æãªã®ã§äœã蟌ã¿ããããŠããŠãç°¡åã«ãã£ãããšãããã¹ãçšHTMLãçšæããããšãã§ããŸãã ããããããšã§ãèªåã§ããŒã¹ã®HTMLãçšæããªããŠã JavaScript ã®ç·Žç¿ãåºæ¥ãããã«ãªããŸãã ç°å¢æ§ç¯ãå¿
èŠãªãã®ã¯ããšã£ã€ãããããšããé¢ã§ããªãã®åŒ·ãã«ãªããŸããã å®éã«äœ¿ããæ¥åç¥èãåŸããã JavaScript ã¯æ¥åã§ããã䜿ãèšèªã§ããWebç³»ãšã³ãžãã¢ãªãåœç¶ãç»é¢äžã®åã㯠JavaScript ã§èšè¿°ããããšã«ãªããŸãã ãšã¯ãããéåæåŠçããã£ãããç»é¢äžã®ãŠãŒã¶æäœãšã®å
Œãåãããã£ããã§ãå®è¡é ãåããã«ãããªãåŸåããããç§ã®åšãã§ã JavaScript ã«å¯ŸããŠèŠææèãæã€ã¡ã³ããã¡ãã»ãããŸãã ç§ãæåã¯ããã§ãããã JavaScript ã§ã¡ããã¡ããéãã§ããçµæãå€§èŠæš¡ãªç»é¢æ¹ä¿®ã¿ã¹ã¯ãæ
åœããããšã«ãªã£ãŠãæ¯ãŸãªããªããä»ã§ã¯èŠææèã¯èªåã§ã¯ã»ãŒãªããšæããŠããŸãã ãŸãã JavaScript ã¯ãã¯ããã©ãŠã¶äžã ãã®èšèªã ãã§ã¯ãªãã JavaScript ããŒã¹ã®èšèªã§ãã€ãã£ãã¢ããªã®ç»é¢ãæ§æã§ãããããµãŒããµã€ãã®åŠçãèšè¿°ãããããããšãã§ããŸãã 以åæçš¿ãããGASãã JavaScript ããŒã¹ã®èšèªã ã£ããããŸãã tech-blog.rakus.co.jp JavaScript ã¯ä»ã®èšèªãšæ¯ã¹ãŠãåŸãç¥èãã©ããã§æ¥åã«ç¹ããå¯èœæ§ã®é«ãèšèªã§ãããšãããã§ãããã å°ããªæ¹åãããã«ã§ããããã«ãªã æ®æ®µèŠããµã€ãããã©ãŠã¶ã¢ã¯ã»ã¹ããã·ã¹ãã ã®ç»é¢ã«å¯ŸããŠã䜿ãã«ãããªãŒããã©ããããªãŒããšæã£ãããšã¯ãããŸãããïŒ ãããªæã¯ chrome ã® æ¡åŒµæ©èœ ã®Tampermonkeyãããããã§ãã chrome.google.com Tampermonkeyã¯ãæå®ããURLã®ããŒãžãéãããšãã«èªåã§ JavaScript ãå®è¡ããŠããã æ¡åŒµæ©èœ ã§ãã ãããå©çšããããšã§ãæ®æ®µäœ¿ãã·ã¹ãã ã®ç»é¢ãã¡ãã£ãšäœ¿ããããããããšãã£ãããšãæ°è»œã«è¡ããŸãã ãŸããäœæãã ã¹ã¯ãªãã ã¯ä»ã®ã¡ã³ãã®Tampermonkeyã®ç»é¢ã«è²Œãä»ãããŠãããã ãã§å
±æãåºæ¥ãã®ã§ãå°ããªæ¹åãããããŒã ã«å
±æããããšãåºæ¥ãŸãã ç§ã瀟å
ã®åºå¹¹ã·ã¹ãã ã®èšå€§ãªæ°ã®ã¡ãã¥ãŒãããæãã«æ€çŽ¢åºæ¥ã ã¹ã¯ãªãã ãäœæããŠãããŒã å
ã«å
±æããŠããã®ã§ããããã€ã®éã«ãåºãŸã£ãŠãããä»ã®ããŒã ã®æ¹ããææ³ãããã ãããšããããŸããã çšäºããªãéãä»ããŒã ã®æ¹ã«è©±ããããæ©äŒã¯ããŸããªãã®ã§ããããã£ãé¢ã§ããšãŠãããã£ããšæããŸãã ãããã« ç§ãæããã JavaScript ã§éã¶ãããšã§åŸãããããã£ãç¹ããŸãšããŠã¿ãŸããããããã§ããã§ããããã ãšã£ã€ãããã ã æ¥åã«ç¹ããããã ã æ¹åã«ãã€ãªãã ããšããã®ã¯ããªãã®ã¡ãªããã ãšæããŸãã ãŸãã JavaScript 㯠ajax ãçšããããšã§ä»ã·ã¹ãã ã® API ãå©ãããšãå¯èœã§ãã®ã§ã1ã€ã® ã¹ã¯ãªãã å
ã§åºæ¥ãããšã®å¹
ãããªãåºãã§ãã ãå匷ãããããšæããšé£ãããããããŸãããããã®ããŒãžã®ãããããããããªããåååã«ã JavaScript ã§éã¶ãæèŠã§æãä»ãå§ãããšæ¥œãããåãã£ãŠããã ããããšæããŸãã æ¥œãããšããæèŠã«ãªã£ãŠããŸãã°åæã«æç¶ããã®ã§ãéã³æèŠã§ ã¹ãã«ã¢ãã ããŠã¿ãŸãããïŒ
ã¯ããã« ãšã³ãžãã¢ã®FM_Harmonyã§ãã Rakus Developers Blogã«ã¯ãäœåºŠãèšäºãæçš¿ãããŠããã ããŸããã tech-blog.rakus.co.jp âååã®æçš¿èšäºã¯ãã¡ãã§ã ããŠãä»å¹Žãæ©ããã®ã§7æåæ¬ã«éçºéšãžæ°å瀟å¡ãé
å±ãããŸããã ãŸããåææã«ãªãã·ã§ã¢å
ã® ãããã åäŒç€ŸããåºåŒµè
ã®åãå
¥ããè¡ããŸããã ããã§å
æ¥ãæ°å瀟å¡ïŒ ãããã ã¡ã³ããŒã®æè¿äŒãéå¬ããããŸããïŒ æè¿äŒã®å
容ããŸãšããŸããã®ã§ãã¿ãªããŸã« ã©ã¯ ã¹ç€Ÿå
ã®é°å²æ°ãäŒããã°å¹žãã§ãã 亀æµã®æ§å ãŸãã¯èªå·±ç޹ä»ããè¡ããŸãããååãšé¡ãèŠããŠããã ãã®ã¯éèŠã§ãã ä»åã¯ãæ®æ®µã®ãã¢ããã·ã¥ã§çšæããŠãããã®ãããã豪è¯ãªé£äºããçšæãããŠããã ããŸããïŒ åå ãããæ¹ã«äŒºã£ããšãããã¿ãªãããæºè¶³ããã ããããã§äœããã§ãã æ®æ®µã¯ãªããªãè©±ãæ©äŒã®ãªããå
茩ã管çè·ã®æ¹ãšãããããŠè©±ãæ©äŒãèšããããšãã§ããã®ããæè¿äŒã®ãããšããã§ãã æ°åã®æ¹ãç©æ¥µçã«è©±ããããŠããŸãã ãããã ã®ã¡ã³ããŒã®æ¹ã¯ãã£ããæ¥æ¬ã®ã¡ã³ããŒãšãæã¡è§£ãããããã§ãããããŠèšå¿µæ®åœ±ãè¡ã£ãŠããããŸããã ã¢ã€ã¹ãã¬ã€ã¯ïŒããŒããŒã¿ã¯ãŒ äŒã®çµããããã«ã¯ãã¢ã€ã¹ãã¬ã€ã¯ïŒIce breakïŒãšã㊠ããŒããŒã¿ã¯ãŒ ãšããã²ãŒã ãè¡ããŸããïŒ ç°¡åã«èª¬æããŸããšãA4çšçŽ20æã䜿ã£ãŠæãé«ãã¿ã¯ãŒãäœã£ãããŒã ãåå©ãããšããã²ãŒã ã§ãã ã§ã¯ãã²ãŒã ã®æ§åãåçãšãšãã«ã芧ãã ããã ã«ãŒã«çŽ¹ä» ä»åã¯ä»¥äžã®ãããªã«ãŒã«ã§ã²ãŒã ã宿œããããŸããã 1ããŒã 4ïœ5åã§è¡ã 2åã²ãŒã ãè¡ããããããã§åå©ããŒã ãæ±ºå®ãã äœæŠãæ€èšããæéã¯5åãå®éã«ã¿ã¯ãŒãçµã¿ç«ãŠãæéã5åãšãã å©çšããŠè¯ãã®ã¯ãA4çšçŽ20æããã³çŽããŒã1måã®ã¿ãšãã âã«ãŒã«ã¯ãã¡ãã®ãµã€ããåèã«ãããŠããã ããŸãã heart-quake.com âã«ãŒã«ç޹ä»ã®æ§åã圌ã®å³æ£ãªå¯©æ»ã«ããåããŒã ã®åæã決ãŸããŸã äœæŠã¿ã€ã âããããŒã ã®äœæŠäŒè°ã®æ§åããã®ãã©ã³ãã³ã°ã«ããäœæ¥ãã¹ã ãŒãºã«è¡ãããæ±ºãŸããŸã âå¥ã®ããŒã ã®æ§åãçŽãçæã«äœæŠäŒè°äžã§ã â ãããã ã¡ã³ããŒã®æ¹ã
ã¯1ããŒã ãšããŠéãŸã£ãŠããã ããŸãã ç¶ããŠå®éã®çµã¿ç«ãŠã®æ§åãšããããã£ãã®ã§ãããæ®å¿µãªããšã«æ®åœ±æ
åœè
ãã²ãŒã ã«åå ããŠãããããçµã¿ç«ãŠæã®åçã¯ãããŸããã§ãã⊠ãã®ãããçµæçºè¡šã®æ§åã«ç§»ããããšæããŸãã çµæçºè¡š âèšæž¬ã®æ§åãã¿ã¯ãŒãåããªãããã¿ãªããå¿
æ»ã§ã âäžã«ã¯äºæ³å€ã®çµã¿ç«ãŠæ¹ããããããŒã ãïŒ èå¿ã®çµæã¯ã©ããªã£ãããšãããšããªããš 2åãšã ãããã ã¡ã³ããŒããŒã ã®åå© ã§ããïŒïŒ âææç©ãšäžç·ã«èšå¿µæ®åœ±ãã¿ãªããããã§ãšãããããŸãïŒ ãããã« ãšãããšããã§ãä»åã¯ãããŸã§ãšãããŠããã ããŸãã ãã®èšäºãéããŠãã¿ãªããŸã« ã©ã¯ ã¹ãšããäŒç€Ÿã®é°å²æ°ãäŒããããšãã§ããã®ã§ããã°å¹žãã§ãã ä»åã¯ç§ãã€ãã³ãéå¬ãæ
åœããã®ã§ãããæ¬åœã«æ¥œããæè¿äŒãéå¬ããããšãã§ããŠè¯ãã£ãã§ãã ãŸããæ°äººã ãããã ã®æ¹ã ãã§ãªããç§ãã¡ãæ®æ®µããŸãè©±ãæ©äŒã®ãªãæ¹ãšã話ãã§ããããšãè¯ãã£ããšæããŸããã æåŸã«ãªããŸãããæ°åã®æ¹ã«ã¯ããããã®æŽ»èºãã ãããã ã®æ¹ã«ã¯æ¥æ¬ã§è²ŽéãªçµéšãåŸããããããå¿ããç¥ã£ãŠãããŸãã
ããã«ã¡ã¯ãéçºãšã³ãžãã¢ã®amdaba_skïŒ ãã³ã ãŒã æªå®ïŒã§ãã ååã®åé ã§ãã¡ããã£ãšä»¥äžã®ããã«æžããŸããã ãOWASP ZAPã«ã€ããŠèª¿ã¹ãŠã¿ãããšããèšäºãæžããŸããã åäœãã¹ã äžã«ãã£ãã䜿ã£ãŠã¿ããããšæã£ãŠããã®ã§ãããæå
ã®ç°å¢ã§ã¯ããŒãåŸ
ã¡åãã§ãšã©ãŒãåºãŠããŸã£ãŠæŸçœ®ããŠããŸãâŠâŠã ãã®ä»¶ã«ã€ããŠãå®ã¯ããŒãçªå·ãéžã¹ã°ããŒã«ã«ãããã·ãšããŠäœ¿ãããã ãšããããšãããã£ãã®ã§ãã®ããšã§ç¶å ±ãããšæã£ãã®ã§ããã ããã¿ã€ãã³ã°ã§ãŸãããã®äººãç®ç«ã£ãŠãããŸãããïŒ 2018.kphpug.jp tech-blog.rakus.co.jp å
æ¥éå¬ããã PHP ã«ã³ãã¡ã¬ã³ã¹é¢è¥¿ 2018 ã« ã©ã¯ ã¹ã®ãšã³ãžãã¢ãç»å£ããŸãããæããåç°ããããã®ãã¡ã®äžäººãšããŠåå ããŠããŸãã åœæ¥ã¯ç§ãèŠã«è¡ããŸãããéå§åã®ãããç·åŒµããŠããããããŠããå§¿ãšãçºè¡šäžã®å ã
ãšè©±ãå§¿ã®ã®ã£ãããæ¿ããã£ãã®ããããå°è±¡çã§ããã ãšããããã§ããã®ããã°ãžã®æ¬¡ã®æçš¿ãããããã¿ã«ãããããããŸããšæã£ã次第ã§ããäŸã«ãã£ãŠéè«ã«èŠããããŠãŸãåç°ããã«ã€ã³ã¿ãã¥ãŒããŠã¿ãŸããã®ã§ããã®æã®è©±ãä»åã¯æžãããšæããŸãã ïŒâ»æ¬äººäºæ¿æžã¿ããã ãåçã¯æ°æ¥ããããã®ã§ãã£ã±ãNGã ããã§ããã»ããšããä»ãããªæããããŸããïŒ ãªãã€ãã³ããã®ãã®ãšãåŒç€Ÿããã®ã€ãã³ãã«å
¬åŒã«åå ããããšã«ãªã£ãçµç·¯ãªã©ã«ã€ããŠã¯ãªã³ã¯å
ãã芧ãã ããã ã«ãã§ã¹ããŒã¹ã«ãŠ PHPã«ã³ãã¡ã¬ã³ã¹ é¢è¥¿ã®éå¬ãããç¿é±ãç§ã¯ããæãã«è©±ãèããã¿ã€ãã³ã°ãèŠèšãã£ãŠããŸãããåç°ããã¯äœããå¿ãããã§ããªããªãæŒé£ããã£ããã«è¡ããªãæ§åãç¡çã«æéãäœã£ãŠãããã®ãæªãã®ã§ã©ããããã®ããšæã£ãŠãããšãããã¡ãã£ãšããäŒæ©ã§ãåãã€ãããªã®ãã³ãããæã£ãŠå·å宀ãåºãŠããåç°ããã®å§¿ããç§ã¯ãã£ã³ã¹ãšã°ããã«åŸã远ããŸããã ãã³ã ãŒã æªå® ïŒä»¥åŸ ãã³æª ïŒããšããããã§ã話ãããŸãããã åç°ãã ïŒä»¥åŸ åç° ïŒãäœãããšããããããªãã âŠâŠããŠããããã®ã¡ã¢çŽãšãã³ã¯äœïŒ ãŸãããã°ã®ãã¿ã«ããããã€ïŒã ãã³æª ãã¡ã£ãåã®ãããªåã®ããã¬ãã¯âŠâŠã åç° ãå«ãã ãšãããªãç¡çã«ã話ããªããŠãããã®ã ãã©ã ãã³æª ããããã奜ãã ããããããã£ã¡ã奜ããå¯ãããããŠå©ãããïœã ã¹ããŒã«ãŒãã£ããŒã®ããš ãã³æª ã忥ã«ãæ¥ååŸã«äœãè¡ã£ãŠãããïŒã åç° ãã¹ããŒã«ãŒãã£ããŒã£ãŠããã®ã«åå ããŠããåœæ¥ã¯ãäºãçºè¡šããã£ãŠè©±ãæéãåããªãããã ãšã ãã³æª ã飲ã¿äŒèªäœãããŸã奜ããããªãã£ãŠèšã£ãŠãã®ã«ããè¡ãæ°ã«ãªã£ããã åç° ããã£ããã®æ©äŒã ãããšæã£ãŠã瀟å€ã®äººãšäº€æµããæ©äŒããããŸããªããã ãã³æª ãã©ããªæãã ã£ãïŒã åç° ããããã®ç¥ãåããšã®ãªãäŒã£ãŠæãã ã£ããã¿ããªç§æã ããããããããŠãââããã§ããïŒãã¿ãããªå£°ã®ããæ¹ãšãããå
šå¡éãŸããŸã§é©åœã«ã ã¹ã£ãŠãæãããŸãããã ãã³æª ããžãŒããã®å Žã«ãã人ã¯ã¿ããªãäºãå察é¢ã ã£ãæãïŒã åç° ãããããã£ããç¥ãåãã£ãŠæãã®äººãå€ãã£ãããªãæ¯åç»å£ããŠããããªäººãšããçŸéå¶ãå
éå¶ã¿ãããªäººéã¯ãäºãã«ç¥ãåãã§ããããç§ã¿ãããªæ°åè
ã®æ¹ãçããã£ããããªå°è±¡ãããããã£ãŠã¡ãã£ãšè©±ã«å ããã¥ããæããããã åç° ãã§ãå®è¡å§å¡é·ã®äººã¯åžãè¿ãã£ãããã£ãã話ãããããããã°ä»åã¯ã¹ãã³ãµãŒã®å¿åãäŸå¹Žãããããå€ãã£ãã¿ããã§ããããåããŠã¹ãã³ãµãŒããã£ãŠãšãããå€ãã£ãããããããã§ååãããã£ã±ãæ¥ãŠå¯Ÿå¿ã倧å€ã ã£ããšãã ãã³æª ããããªãã ãããã¯ã¡ãã£ãšç³ãèš³ãªãã£ãæãããããâŠâŠã åœæ¥ã®ããš ãã³æª ãçºè¡šçŽåã¯ãã£ã¡ãããããããŠããããåç°ããã§ãç·åŒµãããã ã£ãŠæã£ãã åç° ãç§ã ã£ãŠç·åŒµãããããŸãããã¢ããã·ã¥ã®çºè¡šã®ãšãã ã£ãŠç·åŒµããŠããã§ããã ãã³æª ãå
šç¶ããã¯èŠããªãã åç° ãããä»ã®äººã«ãèšããããã ãã©ããªãã§ããèŠãããŠããã®ãâŠâŠã ãã³æª ãããã¯åãããããæ¯ãèããããŠãããããšããèšãããããªããã©ãã§ããã®æã¯ããšããç·åŒµããŠãã£ãŠããšã§ãããïŒã åç° ããŸãããçºè¡šãå§ãŸã£ãŠããã¯å€å°èœã¡çããã ãã©ãçºè¡šåã®5åéã¯çµæ§ã€ããã£ãã ãã³æª ãçºè¡šåã«ã㜠ã³ã³ãã© ãã«ããã£ãããã åç° ããããããç§ã®æã£ãŠãå¯äžã®ããŒãããœã³ã³ãå
XPã§çŸ Linux æèŒã®å€ããã€ã§ãããšããšäœ¿ãããã©ããããããªããã£ãŠè©±ã¯ããŠãã®ã ãã©ã VGA ã®ã±ãŒãã«ããã£ãããèªåã®ããœã³ã³ç¹ãããããšæã£ã®ã«ãããç¹ããŠããããœã³ã³èµ·åãããŠã¿ããšãªãããã°ã€ã³ã§ããªããªã£ãŠãããšããããããåãããªãã£ããæéãç¡ãã£ãããæ¥éœããœã³ã³ã貞ããŠããã£ãã ãã³æª ãããã£ãŠãã¹ã¯ãŒããã¹ã£ãŠãã ãã§ã¯ã åç° ãééã£ãŠã¯ããªãã£ããšæãã®ã ãã©ãªããåŸã§ VGA ãå€ããŠããåãããã«ãã°ã€ã³è©Šè¡ããŠã¿ããæ®éã«å
¥ãããã ãã³æª ããŸãã§ãçºè¡šå§ãŸã£ããæ¥ã«ã¹ã€ããå
¥ã£ãæãã ã£ãããããªããç·Žç¿ãããäžæ®µãšåããããããªã£ãŠããããªæ°ãããããäœãæºåããŠãïŒã åç° ãå¥ã«çŽåã«ç¹å¥ãªããšã¯ããŠãªããã¹ã©ã€ãèŠè¿ããšããã®çšåºŠã§ã ãã³æª ãããã§è©±ãããšãããããªãæéãã»ãŒãŽã£ããã ã£ãããã åç° ãæéã¯ãå®ã¯ã¡ãã£ãšé
ãããã£ãŠæã£ãŠããäžåæèšãèŠãã®ã ãã©ãã€å§ãŸã£ãŠãã€çµãããªããšãããªãã®ããããããªã£ãŠããããããã£ãŠã ãã³æª ããŸãã§ããããã£ã¡ãäžå®ãããªãïŒã åç° ã仿ããšäžå®ãªãã ãã©ãçºè¡šäžã¯ãªããæéã®ããšå¿ããŠããããã ãããäžæè°ãªããšã«ã åç° ãã§ãçºè¡šäžã«åºãŠãã£ã¡ãã人ãããã®ã¯æ®å¿µã ã£ããªãã ãã³æª ãããŒãããããã°ããããã§ãããã£ãŠä»æ¹ãªãããããªãïŒã åç° ããããããããªããã©ãã§ã仿ãè¿ããŠã¿ããšã確ãã«ãLaravelã®è¯ãã£ããšãããã®ã»ã¯ã·ã§ã³ã¯ç¢ºãã«èããŠãŠã€ãŸããªããããšãæããã ãããLaravelã®å®£äŒããŠãã ãã¿ãããªæãã«ãªã£ãŠãŠããšãã£ãŠãã©ãå€ããã°ããã®ãããããããªãã®ã ãã©ã ãã³æª ããŸãããã¯ä»åŸã®èª²é¡ãšããããšã§ããŸãåããããªçºè¡šãããæ©äŒãããã°ãã®æèãçŽããŠã¿ããšããã§ããã åç° ãããã§ãããããé »ç¹ã«åããããªçºè¡šãããããšã«ãªã£ãŠãå°ããã©ã ãããŠä»äºã¯ã€ã¥ã ãŸã ãŸã 話ã¯åŒãåºãããã§ããããæ¯æãã«ã¯ååãªã»ã©ã«è©±ãããŠããŸããã ç§ãã¡ã¯è©±ããããã¡ã«é£²ã¿å¹²ããŠããŸã£ããè¶ãå
¥ããªãããèªåžã«æ»ããŸããã ããããã¯äŒç€ŸãšããŠã PHPã«ã³ãã¡ã¬ã³ã¹ ã®ãããªã€ãã³ããå匷äŒãžã®åå ãæšé²ããŠãããšã®ããšãªã®ã§ãåç°ããã«æŽ»èºããŠãããæ©äŒãä»åŸããã³ãã³ããã®ã§ãããã ç§ã¯å¿ã®äžã§ãšãŒã«ãéãã€ã€ãå
ã»ã©èãã話ãããã°ã«ãŸãšããã¹ãããŒããŒãããããã®ã§ããã