https://kaigionrails.org/2024/talks/osyoyu/
ããã°ã©ãã³ã°è¨èªãRubyãã®å½å æ大ã®ãã¸ãã¹ã«ã³ãã¡ã¬ã³ã¹ãRubyWorld ConferenceããRubyã®å é²çãªå©ç¨äºä¾ãææ°ã®æè¡ååãéçºè æè²ã®ç¶æ³ãªã©ã®æ å ±ãçºä¿¡ãããã¨ã§ããRubyã®ã¨ã³ã·ã¹ãã (çæ ç³»)ããç¥ããã¨ãã§ããå ´ã¨ãã¦éå¬ãã¾ããããã§ç»å£ããã®ã¯ãRubyã¢ã½ã·ã¨ã¼ã·ã§ã³ çäºé·ã®ã¾ã¤ãã¨ããã²ãæ°ãããã°ã©ãã³ã°è¨èªã®éå»ãæ´å²ããå¦ã¶æè¨ã«ã¤ãã¦çºè¡¨ãã¾ãããå ¨4åã3åç®ã¯ããSecond System Syndromeãã«ã¤ãã¦ãååã¯ãã¡ãã éå±ã¯æ大ã®æµ ã¾ã¤ãã¨ããã²ãæ°ï¼æ¬¡ã¯Perlã§ãããããã¾ã§ã§ãã§ã«4åãããPerlã®è©±é¡ãåºã¦ãã¦ãã¾ãããªããã¨ããã¨ãç§ã¯Perlã大好ããªãã§ãããå®ã¯ãPerlã大好ããªãã§ãããPerlã®ããã°ã©ãã³ã°ã¯å¤§å¥½ããããªããã§ããããã¨ãPerlã®ã½ã¼ã¹ã³ã¼ãã大好ããããªããã§ãã
(ã¤ã³ã¿ã¼ããããããã¸ã§ãã¬ã¼ã¿ã¼ã§ä½æ) Ruby on Railsçã¿ã®è¦ªã§ããæå¼·ã®éå¼µãããããã§ããã¨ããã®DHHãæ¨å¹´ããããããããã«è±ãããªãã¯ã¯ã©ã¦ãã®ä¸»å¼µããã¦ããã ããã¯å½¼ãã®ä¼ç¤¾ãéç¨ãã¦ããBasecampãHEYã®ã¤ã³ãã©ãAWSããèªç¤¾ä¿æã®ãã¢ã¡ã¿ã«ãµã¼ãã¼ã¸ç§»è¡ãããã¨ãã¦ããããã§ãå®éã«ç§»è¡ä½æ¥ã¯é²ãã§ãããä»å¾5å¹´éã§700ä¸ãã«ã®ãµã¼ãã¼è²»ç¨ãç¯ç´ã§ããã ããã¨ããè¦è¾¼ã¿ãããããã ã world.hey.com world.hey.com ãã¨ã¿ã¤ãã«ã«ããµã¼ãã¼ã¬ã¹ãããããã¨æ¸ãããã©DHHã®ãã¡ã³ãã§ããçè ã®èªå¼µè¡¨ç¾ã§ããããµã¼ãã¼ã¬ã¹ã¨ãããã¼ã¯ã¼ãã«é¢ãã¦ã®è¨åã¯æ£ç¢ºã«ã¯ä»¥ä¸ã®ãã¹ããèªãã§æ¬²ããã world.hey.com ãã®æç« ã«ããããthe computing cyclesãã¨ã¯ãä¸å°ã®ã³ã³ãã¥ã¼ã¿ãæã¤è¨ç®è½åå ¨ä½ã
ãSonny Boyãã¨ããã¢ãã¡ãæ¾éããã¦ãã¾ããå¦æ ¡ãç°æ¬¡å ã«æ¼æµãã¦ãã¾ããè¶ è½åã«ç®è¦ããçå¾ãã¡ããµãã¤ãã«ããªããããã¾ãã¾ãªå¥å¦ãªç¾è±¡ã®è£ã«ããã«ã¼ã«ã解ãæãããå ã®ä¸çã«å¤ããæ¹æ³ãæ¢ããã¨ããã¹ãã¼ãªã¼ã§ããã«ã¼ã«ãåãã£ããã¨ã§ä½åº¦ãè¦ç´ããããªãã¾ãã anime.shochiku.co.jp ãã¦ä»åããSonny Boyãã«ãããã°ã©ã ãå¯ç¨¿ãã¾ãããããã°ã©ã ã§ãããããCGãä½ã£ãã¨ãã§ã¯ãªããããã°ã©ã ã®å®è¡ã®æ§åãã®ãã®ããSonny Boyãã®5話ã®ä¸ã§æ¾éããã¾ããã ããããããã°ã©ã ã§ãã nankai.rb ãã®ããã°ã©ã ãã©ããããã®ã ã£ããã解説ãã¾ãã ã©ããªããã°ã©ã ï¼ å®è¡ããã¨ããé£è§£ãã¨ããæåãã»ã©ãã¦ãªããªãã¢ãã¡ã¼ã·ã§ã³ããã¾ãã èµ·åãããã¾ããããã°ã©ã èªèº«ãç»é¢ã«è¡¨ç¤ºããã¾ãã ãã°ããããããé£è§£ããå·¦ããå³ã¸ã»ã©
ã³ã³ãã¥ã¼ã¿ãæä½ããããã°ã©ãã³ã°è¨èªã§æ¥æ¬çã¾ãã®ãã®ããããRubyã ã1995å¹´ã«ä¸è¬å ¬éããããã¾ãªã人æ°ã©ã³ãã³ã°ã§ãããã¯ã©ã¹ã«ä½ç½®ãããéçºè ã¯ã¾ã¤ãã¨ããã²ãããï¼55ï¼ã ãç¡é§ãçããã¹ãã¬ã¹ããªãããã«è¨è¨ãããRubyã¯ããã°ã©ãã³ã°ã¨ããä½æ¥ã楽ããããã¨ãããªã·ã¼ã«æ²ãããã¦ãããä¸æ¹ã§ãRubyã®éçºã¯èªåã®å®å®ãã¤ããæè¦ã«ãè¿ãã¨ãããã¾ã¤ãã¨ããã«ä¸çã®è¨èªãæ§ç¯ããééå³ãèãããï¼ã¸ã£ã¼ããªã¹ãã»æ£®å¥ãåçï¼å¡©ç°äº®å¾ï¼Yahoo!ãã¥ã¼ã¹ ç¹éç·¨éé¨ï¼
2019/09/09å ç: 注æäºé å¤ãã®äººã«è¦ã¦ããã ãã¦ãã¾ããï¼ãã®è¨äºã¯2017å¹´12æå½æï¼Railsã®ææ°ãã¼ã¸ã§ã³ã4.2ãããï¼ã«æ¸ããããã®ã§ããï¼ç¾å¨ã¯å 容ãããªãå¤ããªã£ã¦ãã¾ã 2019å¹´9æç¾å¨ï¼çè ã¯Railsã©ãããwebã¢ããªã±ã¼ã·ã§ã³éçºãããé¢ãã¦ããããï¼ä»ã®æã¢ãããã¼ãããäºå®ã¯ããã¾ããï¼ã¨ãããã§ãã¾ããï¼ï¼ ãã®ããï¼æ¬è¨äºãåèã«ããå ´åã¯ä½¿ç¨ãã¦ããRailsã®ãã¼ã¸ã§ã³ã«åããã¦é©å®è³å è£å®ããªããèªãã§ããã ããã°å¹¸ãã§ãï¼ æ¬è¨äºã«æ¸ããã¦ãããããªãã¹ããã©ã¯ãã£ã¹ãæ¤è¨ããä¸ã§æåã®æ¹æ³ã¯ï¼Railsã®å ¬å¼ãªãã¡ã¬ã³ã¹ã¨Railsã®ã³ã¼ããã®ãã®ãèªãã§æåçã模索ãããã¨ã§ãï¼Rails5以ä¸ã使ã£ã¦ããå ´åã¯ï¼ãããªå¤ãè¨äºãèªã¾ãã«ï¼èªåã§æåã®æ¹æ³ã«ã¤ãã¦æ¤è¨ãããã¨ããããããã¾ãï¼ çè ã¯ï¼2014å¹´åã°ãã201
ãããã·ã¢ãã«ã®ãã¥ã¼ã¹ ï¼ è©±é¡ã·ã¢ãã«å¨ä½ã®ã¢ã¼ãã³ã»ãã¿ã¼ã½ã³ããããããã¹ã©ã³ã°ã®è§£èª¬ã§ä¸èºæå人㫠ãæ¥æ¬ã¨ã¢ã¡ãªã«ã®æ¶ãæ©ã«ãªãããã 9æ12æ¥ãã¨ããã¢ã¡ãªã«äººã®ãã¤ãã¿ã¼ã¦ã¼ã¶ãããç¬ãããæå³ããæ¥æ¬ã®ãããã¹ã©ã³ã°ãèçããããè±èªè©±è ã«åãã¦è§£èª¬ãã¾ãããä¸é£ã®ãã¤ã¼ãã¯ä¸çåå½ã§æ¡æ£ããã5ä¸ãªãã¤ã¼ããè¶ ããã¾ã§ã«ãæ¥æ¬ã®ãããæåãå ¨ä¸çã«ç¥ãããããã®ãã¤ã¼ããããã®ã¯ãã·ã¢ãã«å¨ä½ã®ã½ããã¦ã§ã¢ã¨ã³ã¸ãã¢ãã¢ã¼ãã³ã»ãã¿ã¼ã½ã³ããããã£ããä»åã®é¨åã«ã¤ãã¦ã話ã伺ãã¾ããã I learned a new slang in Japanese today: èçãã. I will now explain it â Aaron Patterson (@tenderlove) September 12, 2017 â ãªããèçãããããã¤ãã¿ã¼ã§åºãããã¨
ãã®è¨äºã¯ãæè¡ç³»å人èªã¨ãã¦ã¾ã¨ããã¯ãã ã£ãå稿ãã»ã¼ãã®ã¾ã¾è»¢è¼ãã¦ãã¾ãã諸äºæ ã«ããåããããªãé·ãéå人èªå³å£²ä¼ã«å£²ãæã¨ãã¦åå ãããã¨ãé£ãããªã£ãããã§ãã é·ãã§ãããã楽ãã¿ããã ããã°å¹¸ãã§ãã ã¾ããã ãã®æ¬ã¯ãRubyã³ããã¿ã§ããåé¨æå¹³ã«ããã®å¦»ã§ããç§ãåé¨ä¸æµãRubyã®trueã¨falseã«ã¤ãã¦çªã£è¾¼ãã§èãã¦ã¿ã話ã§ããæ¬æã¯ä¸¡è ã®å¯¾è©±å½¢å¼ã§é²ãã§ããã¾ãã ç§ã¯æå¹³ã¨åã大å¦åãç 究室ã«æå±ãã¦ããã®ã§ããã°ã©ãã³ã°ã«ã¤ãã¦ã®åºç¤ã¯ä¸å¿ããã¾ãããã¨ã³ã¸ãã¢ã¨ãã¦è·ãå¾ããã¨ã¯ããã¾ãããã¤ã¾ããããã°ã©ãã³ã°åç´è ã§ãããã®æ¬ã¯ãã®ãããã®ã¬ãã«æã®æ¬ã ã¨æãã¾ãã ç§èªèº«ãåç´è ãªãã«Rubyã使ã£ã¦ãã¦ãifæãæã£ãéãã«åããªãããããªã¨ãã«æ±ããçåãããã®æ¬ãçã¾ãã¾ããã åããããªçåãæ±ãã¦ããæ¹ã®ä¸å©ã«ãªãã°å¹¸ãã§ãã ã¯
ä¸çä¸ã§å©ç¨ããã¦ããå½ç£ããã°ã©ã è¨èªãRubyãããæ©æ¢°å¦ç¿ã人工ç¥è½ï¼AIï¼éçºã®çãä¸ãããåã«æ£å¿µå ´ãè¿ãã¦ãããç±³Googleãªã©ãå¾ãç¾ã«ãPythonããååéã§ã½ãããå å®ãããä¸æ¹ã§ãRubyã®åå¨æã¯èãã5æ19æ¥ã«éããããDataScience.rb ã¯ã¼ã¯ã·ã§ãã ãããã¾ã§ã§ãã Rubyã§ãã¼ã¿ãµã¤ã¨ã³ã¹ããã§ãRubyéçºè éã¯å±æ©æããããã«ããã ãRubyã¯ãã¼ã¿ãµã¤ã¨ã³ã¹ã®åéã§âæ¯æãã®ç¶æ âã ããçç©å¦é¢é£ã®ã½ããã¦ã§ã¢éçºã«æºãã西ç°åä¸æ°ã¯ãRubyã®ç¾ç¶ãããè©ããã西ç°æ°ã¯è¦ç°æµå¤§æ°ãä¸è»å®¶ä½å°æ°ã¨å ±åã§ã2016å¹´10æãã2017å¹´2æã¾ã§ã®2016年度Ruby Associationéçºå©æããã¸ã§ã¯ãã®ä¸ãRubyã®ãã¼ã¿å¦çã©ã¤ãã©ãªã®æ´åã«åãçµãã ã ç¹ã«ä¸è¶³ãã¦ããã®ãããã¼ã¿ã®åå¦çã«é¢ããã½ããã¦ã¨ã¢ã ããåå¦çã¯
All slide content and descriptions are owned by their creators.
ãã®è¨äºã¯CrowdWorks Advent Calendar 2016 ã®24æ¥ç®ã®è¨äºã§ããCrowdWorksã®ã¨ã³ã¸ãã¢ãæ¯æ¥ãªã«ããæ¸ãã¾ãã æ¨æ¥ã®è¨äºã¯ @suzan2go ã«ãããã©ã¼ã¡ã³å±ã§èããRailsã®ãã¼ã¿ã¢ããªã³ã°ãã§ããã ã¯ããã« CrowdWorksã¯ã2011å¹´ã®åµæ¥ä»¥æ¥ãç´5å¹´éã®éçºãç¶ãã¦ãã¾ããããµã¼ãã¹ã®ç«ã¡ä¸ãæã«ããã¦ã¯ããµã¼ãã¹ã®ç¶ç¶æ§ã»å¤æ´å®¹ææ§ãé«ãããã¨ãããããµã¼ãã¹ãæé·ãããåç¶ã«ç¹ãããã§ã¼ã¹ã¾ã§ç´ æ©ãç«ã¡ä¸ãããã¨ãæéè¦ãªè¦³ç¹ã§ãã ä¸æ¹ã§ããµã¼ãã¹æä¾ã5å¹´ãçµéããå¤ãã®æ¹ã«ãå©ç¨é ãã社ä¼ã¤ã³ãã©ãã«ä¸æ©ãã¤è¿ã¥ãã¦ãã¦ãã¾ãããããã£ãç°å¢ã®å¤åãããããæ¥ã æ¹åãç¶ããããæ¥ã å¤æ´ãç¶ããããã¨ã«éè¦è¦ãã観ç¹ã移ãå¤ãã£ã¦ãã¾ããããã®ãããªä¾¡å¤è¦³ã®å¤é·ã«åãçµãéç¨ã§èãã¦ããã大è¦æ¨¡ã§è¤éãªæ¥åè¦ä»¶ãæ ã
ããã«ã¡ã¯ãhachi8833ã§ãã å°ãåã«ãbabaãããããRubyã®å é¨æåã³ã¼ãã¯UTF-8ãããªãããã¨ããã³ããããã¾ããã ï¼è¿½è¨: ä¸ã¯ä¼è©±ã®éä¸ããåãåãã¾ããã®ã§ãäºæ¿ãã ããï¼ ãããªãã®å±éã«ãããããã¾ããããbabaããã¯ããã«ããã¿ããã¾ãã ãããããã¨ã¯ã¨ã£ãã«ãåãã®æ¹ãå¤ãã¨æãã¾ããããRubyã¨ããã°2.0以æ¥UTF-8å®å ¨å¯¾å¿ãªããããªãã®ãã¨åæã«æãè¾¼ãã§ãç§ã¯è³ã«æåºãé£ãã£ããããªæãã§ãããããã§ããããããã¨ãããããé¢ç½ãã â ããã°ã©ãã³ã°è¨èªã¨å é¨æåã³ã¼ãã®é¢ä¿ ã¾ãæåã«æ¼ããã¦ããããç¹ã§ããããã°ã©ãã³ã°è¨èªã§æåã³ã¼ãã«é¢é£ããé¨åã¯ããæååããæ£è¦è¡¨ç¾ããå ¥åºåããã³ã¼ãä¸ã®æåãªãã©ã«ï¼""ã®ä¸ãªã©ï¼ããã³ã¼ãä¸ã®æåãªãã©ã«ä»¥å¤ã®è¦ç´ ï¼å¤æ°åãªã©ï¼ãããã¡ã¤ã«åããªã©ãä¸å¿ã«ãªãã¾ããããã¦æååã«é¢é£ã
fluentdãªäººéã¨è©±ãã¦ããã¨å®æçã«Rubyã®ãªãã¸ã§ã¯ãçæãé ãã¨disããã¾ãã æ¬è³ªçã«ãããããªãé¨åããããã§ãããããã«ãã¦ãé ãé¨åãçµæ§ããã®ã§ãããããã«perf statã¨perf recordãåã£ã¦ã¿ã¾ãããã % sudo perf stat -d ./miniruby -e'GC.disable;i=1000000;while (i-=1)>0;Hash.new;end' Performance counter stats for './miniruby -eGC.disable;i=1000000;while (i-=1)>0;Hash.new;end': 467.629812 task-clock (msec) # 0.993 CPUs utilized 19 context-switches # 0.041 K/sec 2 cpu-migratio
3å¹´ã»ã©Railsãæ¸ãã¦ãã¦ããç¨åº¦ç¥è¦ãæºã¾ã£ã¦ããã®ã§ãå¿ããªãããã®ã¡ã¢ã¨ãã¦KPTã¨å°å ¥ä¾ã交ããªãããã©ãã©ã¨æ¸ãã¦ãã¾ãã è¦åºãã®å½åè¦å㯠ã¯ã©ã¹å/ãã£ã¬ã¯ããªåã®åæ°å½¢ãupper camel caseã«ãããã® + KPT ã§ãã Keepã¯ä»å¾ã使ããã®ãProblemã¯éçºè¦æ¨¡ã«ãã£ã¦ã¯åé¡ãçºçãã(ãã)ãã®ãTryã¯ç¾å¨ä½¿ç¨ãã¦ããªãã使ç¨ããã»ããè¯ãã¨æã£ã¦ãããã®ã§ãã ããããã¹ã¦ãå°å ¥ããã°ä¸æãããã¨ããããã§ããªãã®ã§ãéçºè¦æ¨¡ã«åããã¦é©åã«æ¡ç¨ãã¦ããã¨è¯ãã¨æãã¾ãã DDDããã¶ã¤ã³ãã¿ã¼ã³çè¦èãã¯ãã¦ãããã®ã®è©³ããããã§ã¯ãªãã®ã§ééã£ã¦ããé¨åçããã¨ã¯æãã®ã§ãã®è¾ºãã¯ã³ã¡ã³ãã§ãææãé¡ããã¾ãã ã¯ã¦ãã³ã¡ã³ãæ¬ã§é ããææå 容çã«ã¤ãã¦ã¯ã¾ã¨ãã®å¾ã§ã¾ã¨ãã¦è¿çãè¨è¼ãã¦ãã¾ãã Asset (Keep) app/as
ã¿ã¤ãã«ã¯é£ãã§ããRuby ã«ç²ç®çã«æãã¦ããè¿çã«ã¯ Ruby ã®ççï¼ãã°ãï¼ã¯ã¨ã¯ãã§ãã ããã¯ã¨ãããã ã¡ã½ããåã®å¥åããããã ãããªã㯠map æ´¾ï¼ãããã¨ã collect æ´¾ï¼ãã£ã¦ããåããã¾ãå«ãã ããï¼å¥åã«ãæ義ãããã¨ã¯æããã ãã©ï¼è¨æ¶ã®è² æ ã大ããã èªåã§ã¯ map ãã使ããªãã¦ãï¼ä»äººã®ã³ã¼ãèªããã ã£ãã collect ãç¥ã£ã¦ããªãã¡ããªããªãã ãã°ããåã« reduce ã£ã¦ããã¡ã½ããè¦ã¦ï¼ãããªã®ãã£ãã£ãï¼ã¨æã£ãã inject ã®å¥åã ã£ãã map/collect 㨠inject/reduce ã®ååã¨ãã®èæ¯ã«ããçºæ³ã«ã¤ãã¦ã¯ï¼Rubyist Magazine ã«è¯ãè¨äºãããï¼ ãããã¨æãã°ï¼Array#delete_if 㨠Array#reject! ã¿ããã«ï¼åãã¯åºæ¬çã«åãã ãã©ï¼åé¤ãè¡ãããªãã£
æè¿mrubyã«ã³ããããã¦ããã®ã§èªåã®æ´»åãã¾ã¨ãã¾ãã mrubyãå°ãããã話 mrubyã§ã¯ãæååã®æ±ãã¯ã·ã³ãã«ã«char*ãæ§é ä½ã§ã©ãããã¦ãã¾ããã struct RString { MRB_OBJECT_HEADER; mrb_int len; union { mrb_int capa; struct mrb_shared_string *shared; } aux; char *ptr; }; ãã®ãã1ã¤ã®æååæ¯ã«ãæ§é ä½åã¨æåååã®2åã®malloc/freeãçºçãã¦ãã¾ããã ããã§CRubyã®RStringãè¦ã¦ã¿ã¾ãã #define RSTRING_EMBED_LEN_MAX ((int)((sizeof(VALUE)*3)/sizeof(char)-1)) struct RString { struct RBasic basic; union {
ããã°ã©ã åå¿è ãªæ¹åãã«å§ããRailsãã¥ã¼ããªã¢ã«ã·ãªã¼ãºã§ããä»åã¯Rubyã§ã¹ã¯ã¬ã¤ãã³ã°ããããã¨ãã人åãã«ãNokogiriãã¨ããã©ã¤ãã©ãªã使ã£ãã¹ã¯ã¬ã¤ãã³ã°ã®ãã¥ã¼ããªã¢ã«ãä½ã£ã¦ã¿ã¾ããï¼ (05-02 08:10) è£è¶³ï¼ Windowsã§ã¯ããã¦ã®äººåãã®è¨äºã追å ð ç®æ¬¡(1) Webã¹ã¯ã¬ã¤ãã³ã°ã¨ã¯ï¼ (2) Nokogiriã¨ã¯ï¼ (3) æåã«èªãã§ããã¨æããããªè¨äº (4) Gem Nokogiriã®ã¤ã³ã¹ãã¼ã« (5) Yahoo!Japanã®ããããã¼ã¸ããtitleãåå¾ (6) Naverã¾ã¨ãTechãã¼ã¸ã®æ³¨ç®ä¸è¦§ã®ã¿ã¤ãã«ã»ç»åãåå¾ (7) å®éã«ã³ã¼ããæ¸ãã¨ãã«åèã«ãªããµã¤ã (8) Railsã¸ã®çµã¿è¾¼ã¿ ð (1) Webã¹ã¯ã¬ã¤ãã³ã°ã¨ã¯ï¼Webã¹ã¯ã¬ã¤ãã³ã°ã¨ã¯Webãµã¤ãã®HTMLãã¼ã¿ãåéãã¦ãç¹å®ã®ãã¼
ãã®ã¦ã§ããµã¤ãã¯è²©å£²ç¨ã§ãï¼ monoweb.info ã¯ãããªãããæ¢ãã®æ å ±ã®å ¨ã¦ã®ææ°ãã¤æé©ãªã½ã¼ã¹ã§ããä¸è¬ãããã¯ããããããæ¤ç´¢ã§ããå 容ã¯ãmonoweb.infoãå ¨ã¦ã¨ãªãã¾ããããªãããæ¢ãã®å 容ãè¦ã¤ãããã¨ãé¡ã£ã¦ãã¾ãï¼
ãªãªã¼ã¹ãé害æ å ±ãªã©ã®ãµã¼ãã¹ã®ãç¥ãã
ææ°ã®äººæ°ã¨ã³ããªã¼ã®é ä¿¡
å¦çãå®è¡ä¸ã§ã
j次ã®ããã¯ãã¼ã¯
kåã®ããã¯ãã¼ã¯
lãã¨ã§èªã
eã³ã¡ã³ãä¸è¦§ãéã
oãã¼ã¸ãéã
{{#tags}}- {{label}}
{{/tags}}