Apple Silicon Mac æä»£ã® PHP éçºç°å¢æ§ç¯ 2021 / php-dev-env-on-m1-mac-era

ããã«ã¡ã¯ãæ¬è¨äºã¯ä¸éã«ããJapan APN Ambassador Advent Calendar 2021ã®21æ¥ç®ã®è¨äºã¨ãªãã¾ãã AWSã¢ã«ã¦ã³ããè¤æ°ä½¿ç¨ãã¦ãã¾ããï¼ ã¿ãªãããç¨éãã¨ã«AWSã¢ã«ã¦ã³ãã¯åãã¦ãã¾ãã§ãããããæè¿ã¯ä¸è¬çã«ãªã£ã¦ãããã«ãã¢ã«ã¦ã³ãæ§æã§ããããããããªãã¢ã«ã¦ã³ããåããã®ã§ãããããç¹ã«åå¿è ã®æ¹ã¯ããªãã¢ã«ã¦ã³ããåããã®ãæåã¯ããããªããã¨ãå¤ãã¨æãã¾ããæ¬è¨äºã§ã¢ã«ã¦ã³ããåããçç±ã«ã¤ãã¦æ·±æãããªãããã¢ã«ã¦ã³ããã©ãåãããè¯ããèãã¦ããããã¨æãã¾ãã ã·ã³ã°ã«ã¢ã«ã¦ã³ãã®èª²é¡ 次ã®ä¾ãè¦ã¦ã¿ã¾ããããè¤æ°ã®EC2ã1ã¤ã®ã¢ã«ã¦ã³ãä¸ã§ç¨¼åãã¦ãã¾ããã©ããã£ã課é¡ãçºçããã®ãèãã¦ã¿ã¾ãã 誤æä½ã«ãããªã½ã¼ã¹åæ¢ãåé¤ éçºç°å¢ã®ãµã¼ãã¯24æéèµ·åããå¿ è¦ã¯ãªããã³ã¹ããæããããã«åæ¢ãããã¨ãã¾ããæ¬
æ¬è¨äºã¯ã形弿¤è¨¼ / å½¢å¼ææ³ Advent Calendar 2021 ã® 19 æ¥ç®ã®è¨äºã§ãã Amazon S3ã形弿æ³ãæ¡ç¨ããè«æ "Using Lightweight Formal Methods to Validate a Key-Value Storage Node in Amazon S3" ãèªã¿ã¾ããã è«æå ¨ä½ã«ã¤ãã¦ã¯ãyohei-aãããããã°è¨äºã§ä¸»è¦ãªé¨åã訳ãã¦ããã¦ãã¾ããæ¬è¨äºã§ã¯èªåãªãã®ã¾ã¨ãã«å ãã¦ãèªåã®å½¢å¼ææ³å°å ¥ã®çµé¨ããæãã¨ããã«ã¤ãã¦ãæ¸ãã¦ã¿ã¾ãã è«æã¯ãAmazon S3ã®æ°ããKey Valueã¹ãã¬ã¼ã¸ã®ShardStoreã®æ£å½æ§ã軽é形弿æ³ã§æ¤è¨¼ãã話ã§ããè«æã®ä¸»å¼µãã¾ã¨ããã¨ã å®è£ ã«ä½¿ç¨ããè¨èªï¼Rustï¼ã¨åãè¨èªã§ä»æ§ã¨ãªããªãã¡ã¬ã³ã¹ã¢ãã«ãè¨è¿°ããã æ¤è¨¼ãããæ§è³ªã«ãã£ã¦ãã¼ã«ã使ãåãããæ©è½ç
Webç¨èªã100ç§ã§è§£èª¬ãããã£ã³ãã«ãä½ãã¾ããï¼ ããã£ãããã§ãã¯ãã¦ã¿ã¦ãã ããï¼ ã¯ããã« ãã®è¨äºã¯ãGoè¨èªãå¦ã³å§ããã°ããã®äººãããã¥ã¼ããªã¢ã«ãèªãã§éä¸ã§æ«æãã¦ãã¾ã£ãã¨ãã人ã«åãã¦ãGoè¨èªã®åºç¤çãªææ³ã解説ããè¨äºã§ããã¨ãã£ã¦ãå ¨ã¦ãã«ãã¼ããã®ã¯å¤§å¤ã ã¨æã£ãã®ã§ãç§èªèº«ã A Tour of Go ãèªãã§é£ããã¨æããç¹ãããã¤ãããã¯ã¢ãããã¦æ¸ãã¾ãããä»åã®è¨äºã§ã¯ããã¤ã³ã¿ã»æ§é ä½ã»ã¡ã½ããã»ã¤ã³ã¿ã¼ãã§ã¼ã¹ã«ã¤ãã¦è§£èª¬ãã¦ãããã¨æãã¾ãã ãã¤ã³ã¿ A Tour of Go ã§ã¯ããã¤ã³ã¿ã«ã¤ãã¦æ¬¡ã®ãããªèª¬æããã¦ãã¾ãã Go has pointers. A pointer holds the memory address of a value. (訳) Goã¯ãã¤ã³ã¿ãæ±ãã¾ãã ãã¤ã³ã¿ã¯å¤ã®ã¡ã¢ãªã¢ãã¬ã¹ãæãã¾ãã ãã®ãã¡
ãã®ãã¼ã¸ã¯ECMAScript® 2020 Language SpecificationãJavaScriptã®å¦ç¿ç®çã§ç§çã«æ¥æ¬èªè¨³ãããã®ã§ãããç´è¨³ã¨æè¨³ããã³æ¨æ¸¬ãæ··å¨ãã¦ãã¾ãããã®ããå 容ã«ã¤ãã¦ã¯æ£ç¢ºã§ãªãå¯è½æ§ãããã¾ããæ£ç¢ºãªæ å ±ãç¥ãããå ´åã¯ãåæãã覧ãã ãããã¾ãä¸é¨è¨³è ã«ããã³ã¡ã³ããå«ã¾ãã¦ãããã¨ãããã¾ããâ»ãã®ãµã¤ãã®å å®¹ã§æå®³ãä¸å©çãåããã¨ãã¦ã彿¹ã¯ä¸åã®è²¬ä»»ãè² ãã¾ããã
ãã®è¨äºã¯ techtekt ã¢ããã³ãã«ã¬ã³ãã¼2021 ã® 12æ¥ç®ã®è¨äºã§ãã ããã«ã¡ã¯ï¼ ãã¯ããã¸ã¼æ¬é¨ ã¨ã³ã¸ãã¢ãªã³ã°çµ±æ¬é¨ ãµã¼ãã¹éçºé¨ã§ã¨ã³ã¸ãã¢ããã¦ãã Yuto SAGAWA ã§ãã*1 çæ§ä»å¹´ãReactã©ã¤ããæºå«ã§ãã¦ãã¾ãã§ããããï¼ å人çã«ã¯ããããReactã«è§¦ããæ©ä¼ããããéå¸¸ã«æºå«ãããã¨ãã§ãã¾ããï¼ ãããª2021å¹´ã®å人çã«ãä¸è©±ã«ãªã£ãReacté¢é£ã®ã©ã¤ãã©ãªããã¬ã¼ã ã¯ã¼ã¯ããã¼ã«ãªã©ã®ç´¹ä»ããããã¨æãã¾ãã next nextjs.org Next.jsã¯Reactã®ãã¬ã¼ã ã¯ã¼ã¯ã§ãæ¨ä»ã§ã¯ä½¿ç¨ä¾ãå¤ã人æ°ã®ãã¬ã¼ã ã¯ã¼ã¯ã§ãããã¨ã伺ãã¾ãã SSR / SSG ã ãã§ã¯ãªããISRï¼Incremental Static Regenerationï¼ãªã©ã Webã¢ããªã±ã¼ã·ã§ã³ã®ããã©ã¼ãã³ã¹æ¹åã®æå©ãã¨ãªããã¨ãæå¾
ãã®è¨äºã¯ãNTT Communications Advent Calendar 2021 21æ¥ç®ã®è¨äºã§ãã ã¯ããã« ããã«ã¡ã¯ãã¤ããã¼ã·ã§ã³ã»ã³ã¿ã¼ã®é´ã¶å¶º(@suzu_3_14159265)ã§ããæ®æ®µã¯ãã¯ã©ã¦ãã»ãã¤ããªããã¯ã©ã¦ãã»ã¨ãã¸ããã¤ã¹ãªã©ãå©ç¨ããAI/MLã·ã¹ãã ã«é¢ããæ¥åã«å¾äºãã¦ãã¾ããæ¬æ¥ã¯ãRustã§åçã¡ã¢ãªç¢ºä¿(dynamic memory allocation)ã®mallocãå®è£ ãã¦Pythonãvimãåããã¦ã¿ããã¨ããå 容ããå±ããã¾ãã ã¾ããå»å¹´ãRustãã¿ã®ã¢ããã³ãã«ã¬ã³ãã¼ãæ¸ãã¦ããã®ã§ãã²è¦ã¦ããã ããã¨å¬ããã§ãï¼ NTTã³ãã¥ãã±ã¼ã·ã§ã³ãº Advent Calendar 2020 Rustã§å®è£ ããNetflow Collector å®è£ ããmallocã®ã¢ã«ã´ãªãºã ä»åå®è£ ããmallocã®ã¢ã«ã´ãªãºã ã¯å°ããª
ãã¶ã¤ã³ã¯ã¡ãã£ã¨ãã䏿éãå ããã ãã§ããã£ã¨ãããªãã¾ãã ããã®UIãã¶ã¤ãã¼ã«ããWebãã¼ã¸ãã¹ããã¢ããªã®UIã¨UXãæ¹åãããã¶ã¤ã³ã®ç¥èã¨ãã¯ããã¯ãç´¹ä»ãã¾ãã ä»å¹´å ¬éããä¸ã§æã注ç®ãããUIãã¶ã¤ã³ã®ãã¯ããã¯ãã¾ã¨ãã¾ããã UI & UX Micro-Tips: Best of 2021 by Marc Andrew ä¸è¨ã¯åãã¤ã³ããæè¨³ãããã®ã§ãã â»å½ããã°ã§ã®ç¿»è¨³è¨äºã¯ãå ãµã¤ãæ§ã«ã©ã¤ã»ã³ã¹ãå¾ã¦ç¿»è¨³ãã¦ãã¾ãã ã¯ããã« 1. ã¦ã¼ã¶ã¼ã®æ··ä¹±ãé¿ããããã«ãUIã§ç¢ºç«ãããã¢ã¤ã³ã³ã使ç¨ãã 2. 4ptãã¼ã¹ã©ã¤ã³ï¼8ptã°ãªããï¼èª¿åã®ã¨ãã縦ã®ãªãºã 3. ãã©ã³ãã§é層ã示ãã«ã¯ã¦ã§ã¤ãããµã¤ãºãã«ã©ã¼ã使ç¨ãã 4. ãã¯ã¤ãã¹ãã¼ã¹ã¯ãã£ã·ã使ç¨ãã¦ãã ãã 5. ã¢ã¤ã³ã³ãã°ãªããã·ã¹ãã ã§ä½¿ç¨ããéã®æ³¨æç¹ 6. ã¢ã¯ã·ã§ã³ãå®è¡
Mercari advent calender ã®21æ¥ç®ãæ å½ãã¾ã@sanposhihoã§ããç¾å¨å¤§å¦ã®å¦é¨4åçã§ãã¡ã«ã«ãªã§ã¯å å®è ã¤ã³ã¿ã¼ã³ã¨ãã¦ãã¡ã«ã«ãªã®ãã¼ã ç»é¢ãªã©ã®ããã¯ã¨ã³ããæ å½ãããã¼ã ã«æå±ãã¦ãã¾ãã ã¾ããæè¿ã¯å人çã«Kubernetesããã®å¨è¾ºã®OSSã«ã³ã³ããªãã¥ã¼ãããã¦ãã¦ãç¹ã«Kubernetesã®ã³ã³ããã¼ã«ãã¬ã¼ã³ã®ã³ã³ãã¼ãã³ãã®ãã¡ã®ä¸ã¤ã§ããkube-schedulerå¨ãã触ã£ã¦ããã¨ãå¤ãã§ãã å¾ã§è©³ãã説æãã¾ãããkube-schedulerã¯Podãã©ã®Nodeã§å®è¡ããããæ±ºå®ãã¦ããã³ã³ãã¼ãã³ãã§ããNodeAffinityãæ¯è¼çæ°ãããã®ã ã¨Pod Topology Spread Constraintsãªã©ãPodã®ã¹ã±ã¸ã¥ã¼ã«ã®å¶ç´ãæå®ã§ããæ©è½ãåºæ¬çã«ãã®kube-schedulerã«å®è£ ããã¦ãã¾ãã
ãã®è¨äºã§ã¯ã2021å¹´ã«å ¬éããã便å©ãªWebãªã³ã©ã¤ã³ãã¼ã«ã»ãã¹ã100å+ãã¾ã¨ãã¦ãç´¹ä»ãã¾ãã 宿çã«ãªã¹ãã¢ãããã¦ããææ°ãªã³ã©ã¤ã³ãã¼ã«ã¾ã¨ãè¨äºã§ã¯ã2021å¹´ã«ããã¦åè¨338åã®æ°ãããã¼ã«ããµã¼ãã¹ãç´¹ä»ãã¦ãã¾ããã ãã®ä¸ã§ããç¹ã«Webãã¶ã¤ã³å¶ä½ã«ä¾¿å©ãªãã¼ã«ãé¸ãããã£ãã³ã¬ã¯ã·ã§ã³ã§ããç¡æã§å©ç¨ã§ãããã¼ã«ããæãã¦ãã¾ãã ãããã®ãã¼ã«ããµã¼ãã¹ãæ´»ç¨ããã°ãWebãã¶ã¤ã³å¶ä½ãããå¿«é©ã«é²ãããã¨ãã§ããã§ãããã ã«ãã´ãªãã¨ã«æ´çãã¦ããã®ã§ãç®çã«ãã£ããæ°ã«å ¥ããã¼ã«ãæ¢ãã¦ã¿ã¾ãããã ã³ã³ãã³ãç®æ¬¡ 1. CSSãã¼ã«ï¼11åï¼ 2. ãã¿ã¼ã³ãã¼ã«ï¼3åï¼ 3. ã¤ã©ã¹ãç³»ãã¼ã«ï¼9åï¼ 4. ãã¶ã¤ã³ãã¼ã«ï¼17åï¼ 5. é è²ãã¼ã«ï¼7åï¼ 6. ã°ã©ãã¼ã·ã§ã³ãã¼ã«ï¼12åï¼ 7. SVGãã¼ã«ï¼9åï¼ 8. ã¹ã¯ãªã¼ã³ã·
ã¯ããã« ããã«ã¡ã¯ãGoogle Cloudã§ãªãã¶ã¼ãããªãã£ãæ å½ãã¦ãããã®ã§ããCloud Operations suiteããããããããããã¾ããï¼å®£ä¼çµããï¼ ãã®è¨äºã¯Go Advent Calendar 2021 ãã®1ã®22æ¥ç®ã®è¨äºã§ããæ¨æ¥ã¯ @sago35tk ããã®ãESP32 åãã« TinyGo ãã»ããã¢ãããããã§ãããTinyGoã®ã³ã¢ãªæ å ±ãæ¥æ¬èªã§æãã¦ãããtakasagoããã«ã¯æ¬å½ã«ãã¤ãæè¬ãã¦ãã¾ãã ãã¦ã仿¥ã¯Go製ã®ã¢ããªã±ã¼ã·ã§ã³ãdockerlessã§ã³ã³ããåã§ããkoã®ç´¹ä»ããã¾ããkoã¯æ¬å½ã«ã¤ããªã·ã®ãã¼ã«ã§ãã¿ããªã«ä½¿ã£ã¦ãããããã®ã§ãã²ä½¿ã£ã¦ãã ããã github.com Dockerã«ããGo製ã¢ããªã®ã³ã³ããå ã¾ãæãããã¥ã©ã¼ã¨æãããDockerãç¨ããå ´åã®Go製ã¢ããªã±ã¼ã·ã§ã³ã®ã³ã³ããåã®æ¹æ³ã«
ã¯ããã« â»ãã®è¨äºã¯Engineering Manager Advent Calendar ã®22æ¥ç®ã®è¨äºã«ãªãã¾ãã忥ã¯mtx2sããã®æè¡çè² åµã«å¯¾ããããã¸ã¡ã³ãã®è¨äºã§ãããå人çã«ã¯ãè² åµä¸éããè² åµãã¼ã¹ã©ã¤ã³ãã®èãæ¹è¯ãã£ãã§ãã ããã«ã¡ã¯ãã¢ãã¿ãã¦ã§ã¨ã³ã¸ãã¢çµç¹ã®ããã¼ã¸ã£ã¼ããã¦ããã¾ãæ®å·(@taipuka0)ã§ãã èªåã¯åè·ããéç®10年以ä¸ãã¦ã¨ã³ã¸ãã¢ãªã³ã°ããã¼ã¸ã£ã¼ãç¶ããå¾ãç¾å¨ã¢ãã¿ãã¦ã§ã¯8人ã®EMã®ã¿ãªããã¨æ¥ã ã½ããã¦ã§ã¢ã»ã¨ã³ã¸ãã¢ãªã³ã°ã®ç¾å ´ã§ããã¼ã¸ã£ã¼ã¨ãã¦èª²é¡è§£æ±ºã«åãåã£ã¦ãã¾ããããã¾ã§è²ã ãªå£ã«ãããã試è¡é¯èª¤ãç¹°ãè¿ãã¦æ¥ã¾ãããEMã®é£ãããçæãããã¨ãå¤ã ããã¾ããã ãªãEMãé£ããã®ãï¼ãã®ä¸ã¤ã¨ãã¦ãã¨ã³ã¸ãã¢ããEMã«ã¸ã§ããã§ã³ã¸ããéã®ã®ã£ããã¨ããã®ãããã¨æãã¾ããåããã¼ã ãç¾å ´ã«ããã¨ãã¦ã
Mirrativããã¯ã¨ã³ãã®ã¨ã³ã¸ã㢠@stakme ã§ãï¼ ã¿ãªããMacã§Dockerãã¦ã¾ããï¼ä»åã¯ç§ãããMac+Dockeréçºã«ã¤ãã¦ã®æç« ããå±ããã¾ããDocker Desktop for Macã®ææåãªã©ãæè¿è©±é¡ã®å¤ãã¨ããã§ãããã ãã ãæ³çåé¡ãå«ã¿ã¾ãã®ã§ãè¨äºã®æ£ç¢ºæ§ã«é æ ®ãã¦ãã¾ãããå 容ã¯ä¿è¨¼ãã¾ãããæ³çåé¡ã¯å¼è·å£«ã«ç¸è«ãã¾ãããã tl;dr ã¾ãã¯ç¾ç¶èªè å¿ è¦ãªã®ã¯dockerd å°ããã¡ãªãã¤ã³ã Lima Linux ãã¤ã³ããã¦ã³ã ãã¼ããã©ã¯ã¼ã çµå±ã©ãããã ãã¨6é±é We are hiring! tl;dr 大åæã¨ãã¦ãGUIã使ãããã°MacçDocker Desktopã¯ç¡æãã§ã¯ãªã Docker Desktop for Macã¯ä¾¿å©ã ãããã¦ã³ãèµ·å ã§ããã©ã¼ãã³ã¹ã«å½±é¿ãåããã±ã¼ã¹ãåå¨ãã ãè²·ããªããªã
2021å¹´ãæ°å¤ãã®ããã°ã©ãã³ã°ãPythonãæ±ã£ãç´ æ´ãããæ¸ç±ã¨ããããåºä¼ãã¾ãã. ç§ã¯ãªã¢ã«ã®æ¬å±ããã«è¡ãã®ãã¨ã¦ã好ãã§ï¼ECã®æ¬å±ããã好ãã§ããï¼, æè¡æ¸ã®ã³ã¼ãã¼ã«ã¯å¿ ãã¨è¨ã£ã¦ããã»ã©è¶³ãéã¶ã®ã§ãã, å¹´ã ãPythonãã¨ããã©ãã«ãä»ããæ£ã®é åãåºãã£ã¦ããæ°ããã¾ã. ããã°ã©ãã³ã°åå¿è ã§Pythonãããããããã©ä½ããèªãã°ããã®ãð¤ å®åã«å½¹ç«ã¤ãããªåèæ¸ç±ã£ã¦ã©ããã£ã¦ã¿ã¤ããã°ãããããããªãð ãããã¸ãã¹ã«å½¹ç«ã¤, å®è·µçãªäºä¾ãããããðªð» ã¨ãã, å²ã¨ãããããªãã¼ãºã«ãå¿ããã¹ã, 2022å¹´ãã, ä»ãã®ç¬éã«èªãã§ããããã»æãã¦ããããPythoné¢é£æ¸ç±ãã¾ã¨ãã¾ããï¼ 2011å¹´é ããPythonã使ã£ã¦ä»äºããå§ã, ä»ãã¨ã³ã¸ãã¢ãªã³ã°ããã³ã³ãµã«ãã£ã³ã°, ããã¸ã¡ã³ãããã£ã¦ããç§ç¬èªã®è¦ç¹ã§, ãªã¹
ãªãªã¼ã¹ãé害æ å ±ãªã©ã®ãµã¼ãã¹ã®ãç¥ãã
ææ°ã®äººæ°ã¨ã³ããªã¼ã®é ä¿¡
j次ã®ããã¯ãã¼ã¯
kåã®ããã¯ãã¼ã¯
lãã¨ã§èªã
eã³ã¡ã³ãä¸è¦§ãéã
oãã¼ã¸ãéã
{{#tags}}- {{label}}
{{/tags}}