ã€ã³ãã
ä»å¹ŽãRolling Scopesã³ãã¥ããã£ã¯ãã®1åšå¹Žãç¥ãæºåãããŠããŸãïŒ5幎åãååã®Dmitry Vorobeiã¯å¿ãåãããã人ã ã®äŒç€Ÿãéãããšããã¢ã€ãã£ã¢ãåŸãŸããã ãã®éãå°ããªã³ãã¥ããã£ãå šäœã®åãã«æé·ãããã©ã³ãã«ãªããŸããã 40å以äžã®äŒè°ãéå¬ããããŽã¡ã«ãã°ãããããã¬ã¹ããããŒã©ã³ãã®ã¯ã©ã¯ããã°ããã¹ã¯ããã³ã¹ã¯ã®äŒè°ã«å ãããŸããã 転ããã®ãåå²ãã¯ãŸããªãã¢ã®ã¬ãã«çŸããŸããRSã¹ã¯ãŒã«ãããã2017幎ã ãã§çŽ500人ãèšç·ŽãããŸããã
ããããªãŒã»ãŽã©ãããŒïŒ
ãç§ã¯ãå€ãã®äŒè°ãäŒè°ããã€ã³ãããŒãã€ã³ãã§éå¬ãããŠããããšãç¥ã£ãŠããŸããã³ãã¥ããã£ã®å€ãã®äººã ãçµç¹ã«é¢äžããŠããããæ®ãã¯ã€ãã³ãã«é¢äžããŠããªããšæããŠããŸãã ç§ãã¡ã¯ç¹å¥ãªé°å²æ°ãäœãåºãããåªããŠããŸãã ã»ãšãã©ãã¹ãŠã®äººãã¡ã³ã¿ãŒãŸãã¯ã³ãŒãã«ãªããç¶ç¶çã«åå è ãšå¯Ÿè©±ããäœããäŒãããã¥ãŒã¹ãå ±æã§ããåŠæ ¡ããããŸãã çŸåšãåŠæ ¡ã§ã¯70人ã®ã¡ã³ã¿ãŒãš20人以äžã®æåž«ãéçšããŠããŸãã ç§ã¯å匷ããŠãã人ã ãã絶ãããã£ãŒãããã¯ãåŸãŠããŸãã ããšãã°ã圌ãã¯å°éçãªæè²ãåããŠããããè·æ¥ãå€ããŠããŸãã ã奜ããªäººãã¡ã¯ããã®ãããªç¡æã®ãã¬ãŒãã³ã°ã®åŸãEPAMãä»ã®äŒæ¥ã«åå ã§ããããšã«æºè¶³ããŠããŸããããã¯éåžžã«åºæ¿çãªãã£ãŒãããã¯ã§ããã
äŒè°ã®ç»é²ã¯4æéã§ç· ãåããŸããã é±æ«ã«ã¯ãçŽ1000人ãããŒãªã³ã°ã¹ã³ãŒãã®çæ¿ã®äžã§éãããŸããã圌ãã¯ãã«ã¹ã¿ã ãããžãæ±²ã¿äžãã話ããæããŸããã äŒè°ã«åå ã§ããªãã£ã人ã ã¯ãåŽåçµå宮殿ã®çæŸéã«åå ããŸããã
ãžã¥ãªã¢ã»ã«ãã£ã³ãã§ã¯ïŒ
ãäžè¬çã«ãããŒãªã³ã°ã¹ã³ãŒãã¯ç掻ãå€ããŠããŸãã æšæ¥ã圌ãã¯ã³ãã¥ããã£ã®ã¡ã³ããŒã§ããããä»æ¥ã¯ç©æ¥µçãªè²¢ç®è ã«ãªããææ¥ã¯ã¹ããŒã«ãŒããªãŒããŒã«ãªãã圌ãã®éœåžã§éåãå±éããŸãã ã³ãã¥ããã£ãšã¯ãäžçãããè¯ãå Žæã«ãããŠã§ããããè¯ãå Žæã«ãããšããã¢ã€ãã¢ãçµéãã倧ããªå®¶æã§ãã é·ãéåç¬ã§åé¡ã®è§£æ±ºçãæ¢ãããšãã§ããŸããã仲éã«æ¥ãŠè³ªåããããšãã§ããŸããããã次ã®mitapã®ãããã¯ã«ãªããŸãã ã³ãã¥ããã£ã«æ¥ãŠããã¯ãŒã«ãªã¢ã€ãã¢ããããŸãããã£ãŠã¿ãŸãããããšèšãããšãã§ããŸãã ã³ãŒããä»ããŠãããŒã³ãçºå£²ããã³ãŒããä»ããŠã®ã¿ãŒãæŒå¥ããŸãããèå³æ·±ãã¿ã¹ã¯ã®äŸã¯ãããããããŸããã
ãã©ã«ãŒã·ããã·ã¢ãã¢ã«ããã¢ãã€ã³ããã»ã«ãã¢ãã€ã®ãªã¹ãããŒã©ã³ãããŠã¯ã©ã€ãããªã©ã³ãããã€ãããã®2æ¥éã2ã€ã®ã¹ããªãŒã ã33ã®ã¬ããŒããšã¹ããŒã«ãŒã
ãªãŒã¬ãã€ã¶ãŒã®ãªãŒããã³ã°ã¹ããŒãã®åŸãããã«ååã®ã¢ã³ãã¬ã€ã»ãã©ã«ãã§ã³ã³ã圌ã®å ±åã§åŽåçµå宮殿ã®å€§ããªããŒã«ã奚å±ããŸããã jsãšwebglã䜿çšããã¢ãã€ã«éçºã®åéã«ãããéèŠãªãœãªã¥ãŒã·ã§ã³ã«é¢ãã圌ã®è©±ã¯ãèŽè¡ããå€ãã®è³ªåãåŒãèµ·ãããŸããã
ã¢ã³ãã¬ã€ã»ãã©ã«ãã§ã³ã³ïŒ
ããã¬ãŒã ã¯ãŒã¯ãšãã®ããã©ãŒãã³ã¹ã«åžžã«äŸåããŠããããã§ã¯ãªããšããäºå®ã«ã€ããŠè©±ããŸãããããã©ãŒãã³ã¹ã®ããã«ããã€ãã®æœè±¡åãåãé€ãããšãæããŠã¯ãããŸããã
ã¢ã«ããã¢ã®ã³ãã¥ããã£ã®ãªãŒããŒã§ããChristy Progriã¯ã å°ããªçºã§Mozillaã³ãã¥ããã£ãæ§ç¯ããçµéšã«ã€ããŠè©±ã ããšã³ãžãã¢ãªã³ã°ã³ãã¥ããã£ã®éå¿ãç¶æããããã«çµç¹ã®ãçæããšç§å¯ãå ±æããŸããã
ååã®Ales Zwilæ°ã®ã¬ããŒããé»åããŒã¹ã®ã¢ããªã§Redux-Observableã䜿çšããã¹ãââãªãŒã APIãã¯ããã¹ã¯ãããã¢ããªã±ãŒã·ã§ã³ã®éçºã«åœãŠãããŸããã
ã¢ã¬ã¹ã»ããŽã£ã«ïŒ
ãç§ã¯ãŽã¡ã«åžã§2åã®RSäŒè°ã«åå ããŸããããä»ã§ã¯æ¬æ ŒçãªäŒè°ã§è©±ãæ©äŒããããŸãã-ãšãŠãã¯ãŒã«ã§ããïŒ ã¬ããŒãã§ã圌ã¯ããŸã銎æã¿ã®ãªãäžé£ã®ãã¯ãããžãŒã䜿çšãã圌ã®å人çãªçµéšã«ã€ããŠè©±ããããªãé¢çœãããšãçµã¿åãããŠãéèªæãªã¿ã¹ã¯ã解決ããããã«ããã€ãã®ç°åžžãªçµã¿åãããäœæã§ããããšã瀺ããŸããã ããã«ããéçºè ã®æ¥åžžç掻ãå€æ§åããã ç¹ã«æ³šç®ãããã¬ããŒããããã€ããããŸã-Marek Piaseckiããã®ã¬ããŒã-Beyond React ãããã³ããšã³ãã§ããå€ãã®ãéã皌ãæ¹æ³ã«ã€ããŠã®Alexei Migutskyããã®ã¬ããŒããæ°ã«å ¥ããŸããã
ãã€ã¯ããµãŒãã¹ã®ç©èªã¯Konstantin Krivlenyaã«ãã£ãŠå§ãŸããIvan Yovanovitchã¯ããããç¥ãç¶ãã Micro Frontendãäœã§ãããã©ã®åé¡ã解決ããããReactãAngularãVueã䜿çšããŠã¢ããªã±ãŒã·ã§ã³ãæ§ç¯ããæ¹æ³ãšè©³çŽ°ãªå®è£ äŸãªã©ãäŒããŸãããã€ã¯ããµãŒãã¹ã®ãã¯ãã®è©³çŽ°ã
ã¢ã¬ã¯ãµã³ããŒã·ã¥ã·ã¥ããã¯ã倧èŠæš¡ãããžã§ã¯ãã§Flowã䜿çšããçµéšã«è§Šãããã¹ãäžã«ééããå¯èœæ§ã®ããããŒã«ãšåé¡ã«ã€ããŠèªããŸããã
å¥ã®ååãããã€ã«ã»ã¬ãã£ããã«ãããšã圌ã®Codemodsã¬ããŒããš ASTã®äœæ¥ãšåæã®ååã«é¢ããJavaScriptã³ãŒãã®å€æ㯠ãæ§ææšãæ±ãåºæ¬çãªååãç解ãã䟡å€ããããŸãã
ããã€ã«ã»ã¬ãã£ããïŒ
ãå€ãã®ããã³ããšã³ãéçºè ã¯ãBabelãeslintãªã©ã®ããŒã«ã䜿çšããŠããŸãã ãã®ãããã¯ã«ã€ããŠå°ã説æãããããã®ããŒã«ã®ãã©ã°ã€ã³ãèªåã§äœæããŠç°¡åã«å®è¡ããæ¹æ³ã瀺ããŸããã ããã«ãjscodeshiftã®ãããªãã°ãããããŒã«ã§ã®çµéšãå ±æããŸããã ãããžã§ã¯ãã§ããã䜿çšããŠãjavascriptã³ãŒããæŽæ°ããŸãã ããšãã°ãèšèªã®ããã€ãã®æ°ããæ©èœã䜿çšããå ŽåããŸãã¯libã®æ°ããããŒãžã§ã³ã«åãæ¿ããå Žåã ãã®ããŒã«ã䜿çšãããšãã³ãŒãããŒã¹å šäœãå®è¡ããç¬èªã®ã¹ã¯ãªãããäœæã§ããç®çã®çµæãåŸãããŸããå€ãæ§æãåé€ãããæ°ããæ§æã«çœ®ãæããããŸãã
ç§ã¯äœããã2ã€ã®ã¬ããŒãã奜ãã§ãããIlyaSachkaã«ãããè£ é£ŸãããReduxã®ãšã¬ã¬ã³ã¹ ããš Tomasz Lakomaã«ãããReactã䜿çšããVRãšARã®æ ãã§ãã
圌ã®è¬æŒãããŒãã¢ããªããããã³ã°ããæ¹æ³ãã§ã®å®éã®ãããã³ã°ã®äŸã¯ãAssim HussainããæäŸãããŸããã
ïŒãã®ä»ã®ãããªãã¬ãŒã³ããŒã·ã§ã³ã¯ãã¡ã ãã¹ããŒã«ãŒãã¬ãŒã³ããŒã·ã§ã³ã¯ãã¡ã ïŒã
RSããŒãã£ã³ã°ã«åå ãããã³ãã¥ããã£ã«ã€ããŠäœãèããŠããªãå Žåã¯ãããŽã4ã€ã®ãµããŒããã€ãŒã«äžã®ãããªãJavaScriptãHTMLãCSSãããã³NodeãééããªãèŠãã¯ãã§ãã Jsã 5çªç®ã®ãã€ãŒã«ãäŒè°ã§è¿œå ãããŸãã-UXãã¶ã€ã³ã ããŒãªã³ã°ã¹ã³ãŒãã®2æ¥ç®ã¯ãã»ãŒå®å šã«ãã®åéã«å°å¿µããŸããã UXã¹ããªãŒã ã®ã»ãŒååãEPAMerã«åŒãç¶ãããŸããã
Vitaly Novikovã¯ãäŒè°ã®åå è ãšã²ã¹ãã®ãã¶ã€ã³æèã®éçãèšå®ããŸããã ãå€ãã®è£œåãšå°ããªãã¶ã€ããŒããããšãããšããã¬ããŒãã§ã圌ã¯å人çã«å€§äŒæ¥ã®èšèšããŒã ã®ç®¡çã«ã€ããŠè©³ãã説æãããããŒãžã£ãŒãéçºè ã顧客ããŠãŒã¶ãŒãšã®æé©åãšé©åãªã³ãã¥ãã±ãŒã·ã§ã³ã«ã€ããŠã¢ããã€ã¹ããŸããã
ãŽã£ã¿ãªãŒã»ããŽã£ã³ãïŒ
ãææ°ã®èšèšã¢ãããŒãã«ãããããžãã¹ã®ããŒãºãç¹å®ã§ããã ãã§ãªãããŠãŒã¶ãŒã®èŠä»¶ãšæåŸ ã調æ»ããããšãã§ããŸãã åŸã§è£œåã䜿çšãããŠãŒã¶ãŒã®åé¡ãåæããŸãã ãããããããéæããããšã¯éåžžã«å°é£ã§ãã æéãšãªãœãŒã¹ã ãã§ã¯ååã§ã¯ãããŸããã ããããããã»ã¹ãé©åã«æ§ç¯ããçµæåã®ããããŒã ãäœæããããšã§ã60人ã®ãã¶ã€ããŒãä»ãŸã§10ãå®è¡ããŠããããšã確å®ã«å®è¡ã§ããããã«ãªããŸãã
圌ã®ã¬ããŒãReserch-reserchã®çžäºæ¥ç¶ãšãããã¿ã€ãã³ã°ã®åé¡ã¯ãçªåºããŠããªãã ãDmitry Vanitskyã«ãã£ãŠæèµ·ãããŸããã å€ãã®äººã ã¯ããããã®2ã€ã®ã¹ãããã1ã€ãã€é²ããšèããŠããŸãããDimaã¯ããªãã«ãããçŽåŸãããããšããŸãã
ããããªãŒã»ãŽã¡ããããŒïŒ
ãç§ã®ã¬ããŒãã¯ã誰ãå¿ èŠãšããªãç¡é§ãªææç©ã®ã»ããã®ããã«ãçµæã®ãã¡ã³ã§ãããç 究ãè¡ããããªããã¹ãŠã®äººã«ã¢ããŒã«ãããšæããŸãã
ããŠããããé²ãæ¹æ³ã¯ãã¹ããŒãèªäœããåŠã³ãŸãã ã¡ãªã¿ã«ãDimaã«ã¯åœŒèªèº«ã®è¥ãããã°ããããåããããã¯ã«é¢ããèšäºãèªãããšãã§ããŸãã
ãã§ãŒãã«ã»ã·ã§ãã¬ã³ã³ã¯ã建ç¯ã·ã¹ãã èšèšã®åŸåã«ã€ããŠè©±ããŸããã
ãã§ãŒãã«ã»ã·ã§ãã¬ã³ã³ïŒ
ãç§ã®è©±ã¯ãã¶ã€ããŒã®ããã®ã¬ãŽãšåŒã°ããŠããŸãããã å€æ°ã®è£œåã®çµ±åã·ã¹ãã èšèšãäœæããããšã«å°å¿µããŠããŸãã ç§ã¯ãããæ£ããäœæããæ¹æ³ãç§ãã¡ãšç§ãã¡ã®ããŒã ãéäžã§ééããééãããããŠåé¿ã§ãããã®ã«ã€ããŠè©±ããŸããã äŒè°èªäœã¯éåžžã«ã¯ãŒã«ã§ã©ã³ãã®ããã§ãã åããŠã¹ããŒã«ãŒãšããŠåå ãããšããå®éããã¹ãŠãããŸããããŸããã
ãã¶ã€ããŒã®é©ãã®äŸããŠãŒãžãŒã³ãžã¥ãŒã«ããããããŸããã 圌女ã®å ±åã¯ã2æ¥ç®ã®æãè°è«ãããã¹ããŒãã®1ã€ã§ããã
ãšãã²ãã€ã»ãºãŒã«ïŒ
ããã®ã¬ããŒãã¯äž»ã«éçºè åãã§ããã ãã¶ã€ããŒãåã«èŠèŠçãªè§£æ±ºçã§å®éã®åé¡ã解決ã§ããªãå Žåãããã®éã®å Žåãåã«æãã ãã§ã¯äžååã§ããããšã瀺ããŸãããéåžžã«å®è¡å¯èœã§äººæ°ã®ãã匷åãªèŠèŠã³ã³ããŒãã³ãã®ãªãã€ã³ã¿ãŒãã§ãŒã¹ã§ãã æåã¯ã¹ããŒã«ãŒã§ããïŒRSã ãã§ãªããäžè¬çã«ãïŒã ãã®ããã圌女ã¯éåžžã«ç·åŒµããŠãããããã¬ããŒãã«è¡ã代ããã«åº§ã£ãŠæŒèª¬ã®æºåãããŸããã RSã®ã¡ã³ããŒã¯éåžžã«ã¯ãŒã«ã§ã圌ãã®1人ã¯èšèã§è¡šããªããããªæ°åã§ãïŒ
ããŒãã¹ãã©ãã¯ã®ä»£ããã«
äŒè°ã®2æ¥ç®ã®ãã€ã©ã€ãã¯ãã¯ãŒã¯ã·ã§ãããThink Like a Designerãã§ããã 誰ããæ°ãã圹å²ã«ææŠããã¡ã³ã¿ãŒãšäžç·ã«ãã¶ã€ã³æèã®æ¹æ³è«ã«ç²Ÿéããããšãã§ããŸããã åå è ã«ã¯ç¹å®ã®ã¿ã¹ã¯ãäžããããŸãã-人ãæ è¡ããã®ã«åœ¹ç«ã€ãããããæãããšã§ãã 圌ãã¯ãæœåšçãªãŠãŒã¶ãŒãšã®ã€ã³ã¿ãã¥ãŒãå®æœãããã¬ã€ã³ã¹ããŒãã³ã°ã«ã€ããŠåµé çã§ããã仮説ã確èªãŸãã¯åè«ããã¯ãŒã¯ã·ã§ããã®çµãããŸã§ã«è£œåã®ãããã¿ã€ããå ¬éããŸããã é埳ïŒãŠãŒã¶ãŒããã®å¿çãèŠã€ããå®éã®ãœãªã¥ãŒã·ã§ã³ã¯ãåžžã«è€éãªäœæ¥ãšçµç¹åãããããã»ã¹ã®çµæã§ãã
ã¢ãŠãã
æ°é±éãçµéããäŒè°ã®è©±ã¯çµãããŸããã§ããã ãããŠãã¢ãŒãã£ã¹ããé³æ¥œç¥ã«è§Šçºãããå Žåãæ°ããããããçãŸããéçºè ã®äŒè°ã®åŸãç§ãã¡ã®ãã®ã¯ééããªãéåžžã«èå³æ·±ããã®ãåŸ ã£ãŠããŸãã
ä»åŸã®mitapsãšRolling ScopesåŠæ ¡ã®ä»äºã«é¢ãããã¥ãŒã¹ã¯ãã¡ãã§ãã
FBãŸãã¯VKã§ã³ãã¥ããã£ã«åå ããŸãã