ï¼ã¿ã¤ãã«ã¯AIã«èãã¦ãããã¾ããã確ãã«ããã ãªï¼ï¼ã¨æã£ãã®ã§æ¡ç¨ãã¾ããï¼
æ²ç¸éå¬
å æ¥åºä¸ç²¾ã§ã¨ã«ãã家ã«å± ãããã¼ã½ã³ãªã®ã§ããããªãã¨ãä¸å¿µçºèµ·ãã¦æ²ç¸ã«è¡ããã¨ã«ãã¾ãã
ããã¦ããã£ããè¡ãã®ã§ããã°ããç¨åº¦è¦³å ããã¨ãããã¨ã§å¦»ã¨ä¸ç·ã«åä¹ããã¦5/11-5/13ã¯å®¶ææ è¡ã5/14-5/18(day0ããday3ã®ç¿æ¥ã¾ã§)ã¯RubyKaigiã¨ããã¹ã±ã¸ã¥ã¼ã«ã«ãã¾ãã
RubyKaigi - ã¯ãã¾ãã¯ãã¾ã
ããæ°å¹´ã¯ä¼ç¤¾ã®ãéã§åå ããã¦ããã ãã¦ãããä»å¹´ã¯ããªã³ã¯ã¢ããã¹ãã³ãµã¼
SmartHR Drink Up at RubyKaigi 2024 Day2 (5/16) - connpass
ããã£ããè²¢ç®ã§ããå¹ ãå¢ãã¦ãã¦ããã®ã¯å¬ããã§ã
ããã¯åãªã社å äºæ ã§ãããDevRelã®ç«ã¡ä¸ããèµ·ç¹ã¨ãã¦ç¤¾å ã§ã®ã¹ãã³ãµã¼æã®ä½å¶ããã£ãããããã®ã«ãªã£ã¦ãã¦ã社å ã§ã®ã¢ããã¼ã·ã§ã³ãç±éããã¾ãä¼ç»ã«æè¯ããããããã¨ã«ããäºååå¼·ä¼ã»äºå¾åå¼·ä¼ã»ããªã³ã¯ã¢ããã®å®æ½ãªã©ããæãã«ä¼ç»ã»éå¶ãã§ãã¦ãã¦çµç¹åã®é«ã¾ããæãã¾ã
day0 - ãã§ã«ç²å´
åä¹ãã®æ è¡ã§ãã§ã«ç²å¼ãã¦ããã®ã§ãday2ã«è¡ãããããªã³ã¯ã¢ããã®ä¸è¦ã§å°ã飲ãã§çµäº
ã¡ãªã¿ã«ããã±ããããã¨ã¯ãå風ããæ²ç¸ã®æ¹è¨ã§èªãè¨èã ããã§ããåå¼·ã«ãªãã¾ãã
day1 - åæãããããã
Writing Weird Code
PEN sanã®ãã¼ãã¼ãã¯æ¬å½ã«ãããããããªãï¼è¤ãè¨èã§ãï¼ããç¡éã«æµ´ã³ãã¦ããã®ã§ãããã®ä¸ã§ä»ã®ã»ãã·ã§ã³ãç´¹ä»ãã¦ããæµããç¾ãããã¦æ¬å½ã«ç·´åº¦ã®é«ããã¼ã¯ã§ãããTRICKã¨ãå ¨ãã§ããæ°ã¯ããªããã®ã®ãã ãã ãèå³ã湧ãã¦ãã¾ããâ¦â¦
The grand strategy of Ruby Parser
å®è³ªparserã®ãã¼ãã¼ãã ãªã¨æãã¾ãããparser.yã«ã¤ãã¦ã¯éå»ã®RubyKaigiãªã©ãéãã¦ãªãã¨ãªãç¥ã£ã¦ãããã®ã®ãåãå·»ãç°å¢ãªã©ã¯ã¾ã£ããããã£ã¦ããªãã£ãã®ã§ãé¢é£æè¡è¦ç´ ããããã³ã°ããã¦èª¬æããã¦FF3ã®é£ç©ºèãæã«å ¥ãã¦ããã®ãããªæè¦*1*2ãå¾ã¾ãã
ããã¯ããã¨ãã¦è©±ãã¦ããkaneko sanãã¨ã¦ã楽ãããã ã£ãã®ãå°è±¡çã§ã
Namespace, What and Why
Namespaceãããããå®ç¾ã§ããã¤ã¡ã¼ã¸ã湧ãã¦ãªãã£ãã®ã§ããæ¬å½ã«åãã¦ãâ¦â¦!!ã¨ããæåãããã¾ãã
Namespaceã§è§£æ±ºãã話ã§ã¯ãªããããªæ°ããããã©Rubyã§ã¯ require ããã¿ã¤ãã³ã°ã§requireå ã®å®æ°ãªã©ãã°ãã¼ãã«ã«å±éããã¦ãã¾ãã®ã¯å¶å¾¡ã§ãããªãã·ã§ã³ãããã¨å¬ãããªãã¨ããã®ã¯ãã£ã¨æã£ã¦ãã¾ã
Ruby 3.1ãã load
ã®ç¬¬äºå¼æ°ã«ã¢ã¸ã¥ã¼ã«ã渡ããããã«ãªã£ããã¤ãrequire ã§ãã§ãããäºåã«ã¢ã¸ã¥ã¼ã«ãå®ç¾©ããã®ã§ã¯ãªãä½ããã®ã·ã³ã¿ãã¯ã¹ã·ã¥ã¬ã¼ã§ã·ã¥ãã¨ãããã¨å¬ããã¨è¨ãã¾ããâ¦â¦
update: âã§æ¸ããå 容ã¯Matzã®è©±ãã¦ããpackageã«ç¸å½ããã¨ã®ãã¨ã§ã
ãããMatzã®ãã¼ãã¼ãã§è¨ããã¦ããPackageç¸å½ã®ãã®ã ã¨æãã¾ã âäºåã«ã¢ã¸ã¥ã¼ã«ãå®ç¾©ããã®ã§ã¯ãªãä½ããã®ã·ã³ã¿ãã¯ã¹ã·ã¥ã¬ã¼ã§ã·ã¥ãã¨ãããã¨å¬ããã¨è¨ãã¾ããâ¦â¦â / https://t.co/8U4xN9GjQT
— tagomoris (@tagomoris) 2024å¹´5æ22æ¥
å¤ã®é¨
å¤ã¯RubyKaigi 2024 Official Partyã¸è¡ããBBQã楽ãã¿ãªããæ¬å½ã«ãã¾ãã¾ãªãä¹ ãã¶ãã®äººã¨è©±ãã¦ããã£ãããäºãã®è¿æ³ã§ããã¨ããè¥è ã«ããªã¼ã ãã£ã¹ãã£ã¦ãªãã§ããï¼ã¨èããããªã©æéãæããä¸æ¥ã§ãããð
day2 - 話ãèãã¨è奮ãã¦ãã
Leveraging Falcon and Rails for Real-Time Interactivity
ãªã¢ã«ã¿ã¤ã éä¿¡ï¼ã¨ããã®ãï¼ï¼ã®æ´å²ã¨Falconã§Flappy Birdãä½ããã¢
ãµã¼ãã¼ãµã¤ãã§è¨ç®ãã¦ããã®çµæãæç»ãã¦ãããã ã¨æããã©ãããªã«æ»ããã«åããããã®ãªãã ãªããã¨ããã®ã¨ããããã¤ã³ã¿ã©ã¯ãã£ããªæä½ã¨ãã¯æã«Flashã§ãã£ã¦ããã®ãæãèµ·ãããã
Embedding it into Ruby code
soutaro sanã®RBSãã³ã¡ã³ãã«åãè¾¼ããããã«ãã話ãç¾å¨ã®IDEãGitHubãªã©ã®ç¶æ³ã ã¨ãã¯ãrbsãã¡ã¤ã«ãå¥ã«ããç¶æ ã§ã®ã¡ã³ããã³ã¹ãé£ããã®ã¯ãããªã®ã§ãã³ã¡ã³ãã«åãè¾¼ãã¨ããã®ã¯è¯ãããããããã¨æãã¾ãã
Reducing Implicit Allocations During Method Calling
ã¡ã½ããå¼ã³åºãæã«ä½è¨ãªãªãã¸ã§ã¯ããçæããªãããã«ãã¦ãã話ãã¡ã¢ãªã®ã¢ãã±ã¼ãç¶æ³ãè¦ãªãããã¥ã¼ãã³ã°ãã¦ããæµãã¯åèï¼ä½ã®ã ããï¼ã«ãªãã¾ãã
ãã®ã»ãã·ã§ã³ãè¦ã¦ããªãã£ãååã«è©±ãã¨ãããç é½Rubyã«æ¸ãã¦ããå 容ãè¿ãã£ã½ãã§ãããç é½Rubyãç©èªãã¦ããã®ããã¬ã¦ãã¾ã£ãâ¦â¦
Good first issues of TypeProf
æ¯å¹´ãTypeProfã®ãã¼ã¯ã¯æ¥½ãã¿ã«ãã¦ããã®ã§ãããä»å¹´ã¯ã³ã³ããªãã¥ã¼ãããããããããã®ãã¥ã¼ããªã¢ã«çãªè©±ã§ãã
TypeProfã¯æ¯å¹´ãæå¾ ãã¦ãã¾ãï¼ãã¨ããæ°æã¡ãæã£ã¦ããã®ã§ãããä»åã®ãã¼ã¯ã§ã1人ã§éçºãã¦ãã®å¤§å¤ã¹ãã¨ãã話ãèãã¦èªåãä½ããã®ãæä¼ããã§ããã°ããã¨ããæ°æã¡ã«ãªã£ã¦ãã¾ãï¼ãªã£ã¦ããã ããããã¡ãªã®æãåããã¾ãããï¼
å¤ã®é¨
day 2ã¯ä¼ç¤¾ã®ããªã³ã¯ã¢ããæºåã®ããLTã®éä¸ã§æãã¦äºåæºåã¸
ããªã³ã¯ã¢ããã§ã¯å ¥å£ã®æ¡å ãã¼ã½ã³ã¨ãã¦é段ãä¸ãã£ãã¨ããã§ãåºè¿ãããå½¹ãããã¾ãããæ¥å ´ãã¦ããã ããã¿ãªããæ¬å½ã«ãããã¨ããããã¾ã
ããªã³ã¯ã¢ããå¾ã¯é©å½ãªãåºã§ä¼ç¤¾ã®äººã¨é£²ã¿ã¤ã¤ã@kwappa san / @tagomoris san / @tompng san / @gachacomplete san ã¸è¿æ³ããã¼ã¯ã®ææ³ãªã©ãä¼ãã§ãã¦ããã£ãã§ããã¬ãã£ãã³å çã¯mallocåç»ã®ããããã®ãã¡ã³ã ã£ãã®ã§ã¡ããã¨ã話ã§ããã®ããã¡ããã¡ãå¬ããã£ãã§ãð
æ²ç¸ã®ç· ãã¯ã¹ãã¼ããã¨èãã¦ããã®ã§ä¸æ¥ã®æå¾ã«ã¹ãã¼ããé£ã¹ã«è¡ã£ãã®ãè¯ãçµé¨ã§ããããããã«40æ³éã & 24æéãã«ã¹ãã¼ããé£ã¹ãã®ã¯ããããããã£ãã®ã§ããã赤身ã®ã¹ãã¼ãã ã¨æå¤ã¨ã·ã¥ãã¨è¡ãã¦æ°ããæ¦å¿µãç²å¾ãã¦ãã¾ãã¾ããâ¦â¦
ç· ãã®ã¹ãã¼ãã赤ã¿ã®èã ã¨ã¤ã±ãã¨ãããã¨ãç¥ã£ã¦ãã¾ã£ã #rubykaigi pic.twitter.com/g1Lw80cSdW
— sugamasao (@sugamasao) 2024å¹´5æ16æ¥
day3 - æ¥å¹´ã®RubyKaigiã楽ãã¿ããã
åæ¥ãIVRy社ããããããã£ãé 豪ä¼èª¬ã飲ãã§ãããããããããã¨å æ°ã«èµ·åºãé 豪ä¼èª¬ãã ããâ¦â¦
Ruby Committers and the World
ä¾å¹´ãè±èªã§ã®ããªã¼ãã¼ã¯ã«ãªãã¨20%ãããããç解ã§ããªãã¦ã楽ãããã©ãããããããã¨ããæãã«ãªããã¡ã ã£ãã®ã§ãããä»å¹´ã¯ãã¼ã¯ãã¼ããªã©ãããæãã«æ´çãã¦ããããããããã ãã¶ç解ã§ããæ°ããã¾ããã³ããã¿ã¼é£ã®ä¸ã§ãæè¦ãåãããããã¦ããã®ã¯å´ããèãã¦ãã¦é¢ç½ãã£ãã§ã
soutaro sanãã³ã¡ã³ãã«è¨è¼ããRBSã®è¨æ³ã«ã¤ãã¦æ¥å ´è ã«èãã¦ãã¦ãèªåãæãæããã»ãããã¡ãå°æ°æ´¾ã ã£ãããã¦ãããããã¨ãªã£ãããã¾ãã
ããã¯ã³ã¡ã³ãã«è¨è¼ããäºã ã¨ãã話ã§ã¯ãªãã¨æããã§ãããåã«ãããµãã¼ããå¼·ããªãã°ãªãã»ã©ãclassï¼ãããã¯Dataãªã©ï¼ã§ã®ãªãã¸ã§ã¯ãã®å®ç¾©ãéè¦ã«ãªã£ã¦ããããªãã¨æã£ãããã¦ãã¾ããä¾ãã° Integer ã§ããã ãã§ã¯ãªããã1ã10ã¾ã§ã®Integerã§ããããªã©ã表ç¾ã§ãã¦åæ å ±ã§äºåæ¡ä»¶ï¼ã¨è¡¨ç¾ããã®ãæ£ãããããããªããã©ï¼ãæ示ã§ããããã«ãªãã¨å¬ããâ¦â¦ãã¨ãããããã¯åã«unionã§åãå®ç¾©ãããã¨ãã話ãªæ°ããã¦ãã¾ãããå¿ãã¦ãã ããâ¦â¦ï¼ï¼ï¼
Speeding up Instance Variables with Red-Black Trees
ã¡ãã£ã¨äºæ ããã£ã¦ãã¼ã¯ã«é ãã¦ãã¾ã£ãã®ã§ããã赤é»æ¨ã®èª¬æããã¤ã¤ãããRubyã§æ´»ç¨ãã¦ããå®ä¾ã«å±éããæµãã¯ãã¡ããã¡ãé¢ç½ãã£ãã§ããObject Shapesãæ¯å¹´è©±ãèãã¦ãã¦ã¡ãã£ã¨ãã¤ãããå ·åãé«ããªã£ã¦ããæ°ããã¾ã
ERB, ancient and future
é¢ãããã¡ã³ãªã®ã§ä»å¹´ãè´ãã¾ãããERBã®è©±ãèãã¦ãã¦ãããã¯CGI!!ãã¨è奮ãã¦ããããCGIã ããã¨ããå±éã«ãªã£ã¦æ¥½ããã£ãã§ã
èªåãæ¬å½ã«æåéãé§ãåºãã¨ã³ã¸ãã¢ã ã£ãé 㯠print ã§ãããããã®ãåºåãã¦ãããã®ã§ããããã®æ代ã«ERBã®ã¢ã¼ããã¯ãã£ãæ¤è¨ã§ããã®ã£ã¦æ¬å½ã«ããããªããä»è¦ãã¨ãããã¯ãããã¨ãªããããããªãã§ããâ¦â¦
Matz Keynote
Ruby2ï¼2.0ã§ã¯ãªãï¼ã®æ§æ³ã¨ç¾å¨å®ç¾ããã¦ããæ©è½ã®è©±ããNamespaceãå ¥ã£ã¦Ruby2æ代ã®æ§æ³ãä¸éãå®è£ ã§ãããRuby 4ã«ãããããªã¨ããå 容
Namespaceã®ä»æ§ãªã©ã¯ããããããè©°ãã¦ãã段éã ã¨æãã¾ããããã¡ããã¡ã夢ã®ãã話ã§ããã£ããæ¯å¹´ãRubyKaigiã§Matzã®è©±ãèãã¨æªæ¥ã«å¯¾ãã¦ã¯ã¯ã¯ã¯ããããã¦ããããªãã¨æãã¾ãï¼å°ä¸¦æï¼
å¤ã®é¨
RubyKaigiã®æå¾ã¯mov社ããã®After Partyã¸
@kamipo sanã¨äººçã«ã¤ãã¦è©±ãããã@masaya_dev san ã¨ä¹ ãã¶ãã«ã話ããããLeSS ã«ã¤ãã¦è©±ãããã¨ãããããªè©±ãã§ãã¦æºè¶³ã§ããä¼å ´ã®å°ç·ãªã©ãªãã¬ã¼ã·ã§ã³ããã£ãããã¦ãã¦ã¨ã¦ãéããããã空éã§ãã
day4 - ã¾ãæ¥å¹´
é£è¡æ©ã®æä¹æéã¾ã§æéããã£ãã®ã§ããããã®åæ¥ã§ãããããé£ã¹ãããæ³¢ã®ä¸ãã¼ãã§æµ·ãæããããã¦è§£æ£
RubyKaigi Day 4ãã£ã¦ãããhttps://t.co/ov3aiPF4HT pic.twitter.com/JKjMWZMT1N
— sugamasao (@sugamasao) 2024å¹´5æ18æ¥
#rubykaigi ãã£ã¦ãããï¼ pic.twitter.com/Wq2BMYdHGN
— sugamasao (@sugamasao) 2024å¹´5æ18æ¥
ãã ï½ç²ãã¾ããw ããã«ã¦ã¯ã¤ã® #rubykaigi ã¯å®çµã§ãï¼ pic.twitter.com/JVxiiBZ0Cr
— sugamasao (@sugamasao) 2024å¹´5æ18æ¥
ãã¯ãæ¹ã ã§è¨ããã¦ããã®ã§è¨èªåããã¤ã¤ãã話ã§ã¯ããã¾ãããRubyKaigiã£ã¦ãææ¥ä½¿ãã便å©ãã¯ããã¯ãå¾ã¾ããï¼ãã¨ãã§ã¯ãªãããªãã»ã©ããããããç©ã¿éãã¦åãã¼ã¯ã®é¢é£ãRubyã¨ããè¨èªã®ã¢ã¬ã³ã¬*3ãç¥ã£ã¦ãããã¨ã§ç¹ãããçã¾ãã¦ããå¿«æãé«æãããããã§ãããï¼(èªåã®æ§æ ¼ã¨ãã¦"ç©äºãç¥ã"ã¨ãããã¨ã好ãã£ã½ã)ï¼ãããã¦ã¾ãããããªããã¨ãå¢ãã¦ãããç¡éãï¼
ããã«ããã«ããããä½ã£ã¦ããã»ãã¼ã¯ãã¦ãã人ãç®ã®åã«ããããªããªãé£ã§é ã飲ãã§ãçãªãã¨ãæ®éã«çºçããã
ãã®"è¯ã"ãæªçµé¨ã®äººã«ä¼ããã®ã¯é£ããã®ã§ãããç§ã¯ä»å¹´ãRubyKaigiãåäºåã«æ¥½ããã¾ããï¼RubyKaigiã®Speakerã®ã¿ãªãããRubyKaigiã¹ã¿ããã®ã¿ãªãããã¹ãã³ãµã¼ãã¼ã¹ã®çããããä¹ ãã¶ãã«/ã¯ããã¾ãã¦ã§ã話ã§ããã¿ãªããããããã人ã®ãé°ã§ä»å¹´ãç´ æ´ãããä½é¨ããããã¨ãã§ãã¾ããï¼
ã¾ãæ¥å¹´ãæ¾å±±ã§ä¼ãã¾ããããããâºï¸
*1:ä¾ããå¤ã
*2:ä»ãªãæé»å¤§é¸ã¨è¨ã£ãã»ããè¯ãã§ããï¼ï¼ï¼
*3:ãã¼ãµã¼ã®æ¦å¿µã¨ãã¡ã¢ãªã®èãæ¹ãæ¼ããã¦ããã¦ä»ã®è¨èªã触ãã¨ããç¹è²ãç解ãããããªã£ã¦ã¨ã¦ããå¾ãªãã§ãããããããæ¥æ¬èªã§èãã¡ããã®ä¾¿å©ãããã