ã¯ããã«
å»å¹´æ¸ããè¨äºãä»å¹´çã¨ãã¦æ¸ãç´ãã¾ããã
Software Design輪èªä¼ã¸ã¯ç¬¬33åãããéªéããã¦ããã£ã¦ãã¾ããããã®è¼ªèªä¼ãèµ·ç¹ã«ãããæãã«èªããªãºã ãå»ãã§ããã¾ãåã£ã¦ããã®ã§ããããç´¹ä»ãããã¨æãã¾ãã
ã²ã¨ãã¨ã§è¨ã£ã¦ãã¾ãã°ãã²ã¨ãã§èªãã§æã£ããã¨ãã¡ã¢ã«ã¾ã¨ãã¦è¼ªèªä¼ã®æºåã¨ãã輪èªä¼ã§ä»ã®æ¹ã®æã£ããã¨ãè´ããã話ããããã¦ãææ³ã«ã¾ã¨ãã¦ããã ãã§ã¯ããã¾ããâ¦ã
å°ãã ãæ°ãã¤ãã¦ããã¨ãã¾ã¨ãã¾ãã®ã§ããããããã°ã©ããâ¦ã
flowchart LR
SD[Software Design]--èªã-->memo[ã¡ã¢];
memo--輪èªä¼-->輪èªä¼ã®ææ³;
ã¡ã¢
ãã¹ã¦ã®èµ·ç¹ã¨ãªã£ã¦ãã¡ã¢ã§ããâ¦ã
ãã£ã¦ãããã¨ã¯ãè¨äºã®ã¿ã¤ãã«ãæºåãã¦ãèªã¿ãªããããããè¨ã£ã¦ãå
容ãã»ã¼ãã®ã¾ã¾æ¸ãã¦ãã¾ãã
輪èªä¼ã§ãä»ç¤¾ã§ã®äºä¾ã¨ããããªããã¨ã¨ããè¨ãã¦ã¿ãããã¨ãæ¸ãã¦ããã¨ããã§ãã
ken1flan.hatenablog.com
è¦ç´ãã¤ããã¨ãã¯ä¸åãã¾ããã大ä½è¦ç´ã¯è¨äºã®ã¿ã¤ãã«ã«ã¾ã¨ã¾ã£ã¦ã¦ããã¾ãã
ãªã®ã§ãæã£ããã¨ãã調ã¹ããã¨ã®ãªã³ã¯ãã¤ããã ãã«ãã¦ãã¾ãã
ãªããã®ã¹ã¿ã¤ã«ã«ãªã£ãã®ãã¨ããã¨â¦èªåã誰ãã«è¨äºã«ã¤ãã¦è©±ããã£ããã ããä½ããã°ããã¨æã£ãããã§ããã
ããã¯ã輪èªä¼ã§ã¡ãã£ã¨ãã£ãããçºè¨ããã¨ãã«åå´ãããä»ã®çµé¨è±ããªåå è
ãã¡ã®è¶
å¯ãåã«ããããå
·åã«å±éãããçãä¸ããã«ãªã£ã¦ãã£ãçµé¨ãä½åº¦ããã£ãããã§ããã
輪èªä¼ã§ãªãã¦ãããã£ã±ãåãããã«è©±ãç¸æãä¸æã«åãåã£ã¦ãããããã«è©±ã転ãã£ã¦ãããã ãããã¨ãæ³åã§ããã®ã§ããã®å½¢ã«è½ã¡çãã¾ããã
è¨äºã¿ã¤ãã«ãæ¸ãã®ã大å¤ãããªãï¼
é¢åãªãã¨ãå§ããããã«ã¯ãå¦ä½ã«æ¥½ã«æ¸ãå§ããç°å¢ãæ´ããããæã大äºã ã¨æã£ã¦ãã¾ãããã®ä½æ¥æé ãã³ã³ãæéè¦ã§ããï¼
â¦ã¨ç
½ã£ã¦ãããªãããããããé¢åãªä½æ¥ã¯ãChatGPTã«ãé¡ãããã®ãããã¨æãã¾ãã
èªåã¯ãããªãµãã«é ¼ã¿ã¾ããã
YYYYå¹´MMæå·ã®Software Designã®ã¡ã¢ããã¼ã¯ãã¦ã³å½¢å¼ã§æ¸ããã¨æã£ã¦ãã¾ãã
åè¨äºã®ã¿ã¤ãã«ããµãã¿ã¤ãã«ãèè
ãã¾ã¨ãã¦ã»ã¯ã·ã§ã³åã«ãã¦ãã ããã
âã¯YYYYå¹´MMæå·ã®ç®æ¬¡ã§ãããä¾ã®ããã«æ´å½¢ãã¦ãã ããã
ï¼Software Designã®å¯¾è±¡å·ã®ãã¼ã¸ããã³ãã¼ããç®æ¬¡ããã®ã¾ã¾è²¼ãä»ãï¼
ï¼ä¾ï¼ 2024å¹´11æå·ï¼
ï¼ãã®åã«æ¸ãããã®ãè²¼ãä»ãï¼
å®éã®ã¯é·ãã®ã§æãããã¿ã¾ããã
2024å¹´12æå·ã®Software Designã®ã¡ã¢ããã¼ã¯ãã¦ã³å½¢å¼ã§æ¸ããã¨æã£ã¦ãã¾ãã
åè¨äºã®ã¿ã¤ãã«ããµãã¿ã¤ãã«ãèè
ãã¾ã¨ãã¦ã»ã¯ã·ã§ã³åã«ãã¦ãã ããã
âã¯2024å¹´12æå·ã®ç®æ¬¡ã§ãããä¾ã®ããã«æ´å½¢ãã¦ãã ããã
第1ç¹é
è½ãç©´ã«ãããåã«ï¼
ã·ã§ã«ã¹ã¯ãªããã®åºæ¬ã¨ç½
ã³ã³ããï¼ã¯ã©ã¦ãï¼Webéçºï¼ãªã«ãã¨ä½¿ããåºç¤æè¡
第1ç« ï¼ã·ã§ã«ã¹ã¯ãªããã®åºç¤
å©ç¹ã»æ¬ ç¹ã»ä½¿ãã©ãããèªèããã
â¦â¦ æ»æ¾¤ éå²
第2ç« ï¼ã·ã§ã«ã¹ã¯ãªããã®åºæ¬ææ³
å®åã§é »åºã®æ©è½ãè¦é ããå¦ã¼ã
â¦â¦ æ»æ¾¤ éå²
第3ç« ï¼ã·ã§ã«ã¹ã¯ãªããã®ä½¿ãã©ãã
CLIã³ãã³ãã®æ´»ç¨ãæ¥åå¹çåã®ã«ã®
â¦â¦ å±±ç° æ³°å®
第4ç« ï¼è½ãç©´ã«è½ã¡ãªãã·ã§ã«ã¹ã¯ãªããéçºã®ã¹ã¹ã¡
ShellCheckã¨ShellSpecã§å®å
¨ãªã·ã§ã«ã¹ã¯ãªãããä½ã
â¦â¦ è¿æ¾ ç´å¼
第2ç¹é
10å¨å¹´ç¹å¥
ï¼»ææ°ï¼½Swiftã®ç¾å ´
ããã¾ã§ã®é²åã®è»è·¡ï¼Swift 6ã¬ãã¼ã
â¦â¦ ç°ä¸ 涼è³
第1ç« ï¼10å¨å¹´ãè¿ããSwiftã®ããã¾ã§
Apple謹製è¨èªã®æ©ã¿ãæ¯ãè¿ã
第2ç« ï¼Swift 6ã¸ã®ç§»è¡
æ±ããããæ¢åã³ã¼ãå¤æ´ã¸ã®ãã³ã
çæé£è¼
ï¼»éç¿ï¼½PHPã¢ããªéçºã®ç¾å¨å°
ã2ãPHPUnitã®assertSameã¨assertEqualsã®å®è£
ã£ã¦ã©ãéãã®ï¼
â¦â¦asumikam
é£è¼
ITã¨ã³ã¸ãã¢å¿
é ã®ææ°ç¨èªè§£èª¬
ã192ãValkey 8.0â¦â¦æå±± è²´ç«
ä¸è½ITæè¡ç 究æ
ã31ãçµå©å¼ãè¬å¼ã決ããããªã!? æ§æ¦2033å¹´åé¡ââ150å¹´åã«å»ããã天ä¿æ¦ã«ä»è¾¼ã¾ããæéçå¼¾â¦â¦ä¸è½ITæè¡ç 究æ
FE/AP試é¨åé¡ã«ææ¦
ã2ãæ
å ±ã»ãã¥ãªãã£ï¼æè¡ï¼â¦â¦ç³ç° å®å®
ãã¡ã¤ã³è§£ä½æ°æ¸
ã11ãã»ãã¥ãªãã£ã¨ããã©ã¼ãã³ã¹ãåä¸ããHTTPSã¬ã³ã¼ãâ¦â¦è°·å£ å
ç´
ãããã¹ãã¼ã ãã«ãã£ã³ã°
ã33ãå°ããªã·ã§ã¢ããªã¼ãã¼ã·ããã®çºæ®ãè¦ããåãããâ¦â¦å°å³¶ åªä»
Cloudflare Workersã¸ã®æå¾
ã13ãCloudflare Queuesã使ã£ã¦ããã¯ã°ã©ã¦ã³ãã§å¦çãã¦ã¿ããâ¦â¦Aiji Uejima
ã½ããã¦ã§ã¢ãã¹ãæ¢æ¤é
ã3ãã·ããã¬ãããã¹ãã£ã³ã°ã®æ義ã¨æ¦ç¥â¦â¦Kuniwak
å®è·µãã¼ã¿ãã¼ã¹ãªãã¡ã¯ã¿ãªã³ã°
ã11ãã«ã¼ããããã¯ã¨ãªã®åãæ¹â¦â¦æ½æ ¹ 壮大
ãæçµåãã¬ã¬ã·ã¼ã·ã¹ãã æ»ç¥ã®ããã»ã¹
ã8ãããã³ãã¨ã³ãã¨ã³ã¸ãã¢ããè¦ãZOZOTOWNãªãã¬ã¤ã¹ã¨ã¾ã¨ãã»ä»å¾ã®å±æâ¦â¦æ°å®¶ å¼ä¹
ï¼æ£® 泰樹ï¼é«æ© æºä¹ï¼ç¬å°¾ ç´å©
ã¼ããã®ãéçºè
ä½é¨ãæ¹åã¯ã¨ã¹ã
ã12ããã¹ãä½é¨ã®æ¹åã§ï¼éçºè
ä½é¨ãæ¹åâ¦â¦è¥¿è åå¸
ãæçµåãDatabricksã§åã¤ãã¼ã¿æ´»ç¨
ã9ãDatabricksã§å§ãããã¼ã¿ã¡ãã·ã¥ã¢ã¼ããã¯ãã£â¦â¦å岡 æ©ç´ï¼æ¡é ç« å¼
å®è·µLLMã¢ããªã±ã¼ã·ã§ã³éçº
ã15ãHuman-in-the-loopã§AIã¨ã¼ã¸ã§ã³ãã®åãã«ãã£ã¼ãããã¯ãå ããï¼å¾ç·¨ï¼â¦â¦è¥¿è¦ å
¬å®
AWSæ´»ç¨ã¸ã£ã¼ãã¼
ã27ãAWS WAFâ¦â¦æé æ
ã¤ã³ã¿ã¼ãããã®å§¿ãã¨ããã
ã4ãISPã¨ã¯ä½è
ãâ¦â¦åå± å¤ªäº
åºç¤ãããããDetection Engineering
ã5ãæ¤ç¥ã«ã¼ã«ã®è©ä¾¡ã¨Detection Engineering Programâ â¦â¦ç³å· æä¹
é
æã®èªä½ã·ã§ã«ã®ä¸ç
ã25ãå¼æ°ã®ã·ã³ã°ã«ã¯ã©ã¼ãã®å®è£
ã¨ãã©ã¡ã¼ã¿å±éã®æºåâ¦â¦ä¸ç° éä¸
ããªãã®ã¹ãã«ã¯ç¤¾ä¼ã«å½¹ç«ã¤ï½ã¨ã³ã¸ãã¢ã ããã§ãã社ä¼è²¢ç®ï½
ã155ãããªã¢ããªã¼ã«é¢ããæ
å ±ã誰ãã®ãä¸æ©ãã«ï½ã¿ããªã®ãã¤ã¬ãããããã¸ã§ã¯ãããè¦ãã¦ãããã¨â¦â¦è
å æ´ä»ï¼Penï¼
ï¼ä¾ï¼ 2024å¹´11æå·ï¼
## 第1ç¹éãæ°ä¸ä»£ã®éçºã¹ã¿ã¤ã« ã¯ããã¦ã®AIé§åéçº
### 第1ç« ãGitHub Copilotã§ã©ã¯ã©ã¯ã³ã¼ãã£ã³ã° åç´ä½æ¥ã¯AIã«ãµã¯ãã¨ãã£ã¦ãããã â¦â¦ æ£®ä¸ ç¯¤
### 第2ç« ãAIãã£ãããããã¨ãã¢ããã°ã©ãã³ã° 質ã¨é度ã両ç«ãã次ä¸ä»£ã®éçºææ³ãä½é¨ããã â¦â¦ ãµããããã
### 第3ç« ãChatGPTã§ãããã¿ã¤ãããµã¯ãµã¯çæ AIãã¼ã«ãªãUIããã³ã¼ãã¾ã§èªåã§ä½ãã â¦â¦ é´æ¨ ç« å¤ªé
### 第4ç« ãInfrastructure as Codeã§çæAIãæ´»ç¨ãã ã¢ã¼ããã¯ãã£å³âIaCã³ã¼ãã®å¤æãèªç±èªå¨ â¦â¦ åæ³¢ æµ·æï¼ã¤ãã¼ãï¼
### 第5ç« ãAIé§åéçºã®å°æ¥ AIã«ããä»å¾ã®éçºã¹ã¿ã¤ã«ã¨æ±ããããã¹ãã«ã¨ã¯ï¼ â¦â¦ èäº åº·å®
## 第2ç¹éãã©ã³ãµã ã¦ã§ã¢å¯¾çã®ã¢ããã¼ã EDRã¨ãã¤ã¯ãã»ã°ã¡ã³ãã¼ã·ã§ã³
### 第1ç« ãã©ã³ãµã ã¦ã§ã¢ã®ç¾ç¶ æ¥æ¬ã§ã®è¢«å®³ç¶æ³ã¨ææ°ã®æå£ â¦â¦ æ¦ç° è²´å¯
### 第2ç« ãã¨ã³ããã¤ã³ãã»ãã¥ãªã㣠EPPã¨EDRã§äºé²ã¨å¾©æ§ã両ç«ãã â¦â¦ ç¦ç° ä¿ä»
### 第3ç« ããã¤ã¯ãã»ã°ã¡ã³ãã¼ã·ã§ã³ å
é¨ã«ä¾µå
¥ãã¦ããæ»æããå®ã â¦â¦ é¿é¨ ä¹
ç 幸ï¼éå æ¥ä¿¡
## çæé£è¼
### ï¼»éç¿ï¼½PHPã¢ããªéçºã®ç¾å¨å° ã1ãPHPè¶
å
¥é â¦â¦ã³ããã
## é£è¼
### ITã¨ã³ã¸ãã¢å¿
é ã®ææ°ç¨èªè§£èª¬ ã191ãPGlite â¦â¦æå±± è²´ç«
### ä¸è½ITæè¡ç 究æ ã30ããé°å²æ°ãåãåçããããã¬ã¹é¯è¦ãã®è¬ã解ããââè¦è¦ã¢ãã«ã§ãè²ã®è¦ãããã·ãã¥ã¬ã¼ã·ã§ã³ï¼ â¦â¦ä¸è½ITæè¡ç 究æ
### ãæ°é£è¼ãFE/AP試é¨åé¡ã«ææ¦ ã1ãæ
å ±ã»ãã¥ãªãã£ï¼ããã¸ã¡ã³ãç³»ï¼ â¦â¦ç³ç° å®å®
### ãã¡ã¤ã³è§£ä½æ°æ¸ ã10ãWHOISã®é義ååããã²ã解ãç»é²è
æ
å ±å
¬éã®ããã¿ â¦â¦è°·å£ å
ç´
### ãããã¹ãã¼ã ãã«ãã£ã³ã° ã32ããã¼ã¿ãåºã«åèªã§æ¹åç¹ãèãããï¼å¾ç·¨ï¼ â¦â¦å°å³¶ åªä»
### Databricksã§åã¤ãã¼ã¿æ´»ç¨ ã8ããã¼ã¿ã¤ã³ããªã¸ã§ã³ã¹ã«ãããAI/BIããã·ã¥ãã¼ã â¦â¦æ°äº 康平
### ã½ããã¦ã§ã¢ãã¹ãæ¢æ¤é ã2ãã½ããã¦ã§ã¢ãã¹ãã¨è«çå¼ â¦â¦Kuniwak
### ã¬ã¬ã·ã¼ã·ã¹ãã æ»ç¥ã®ããã»ã¹ ã7ãæ¤ç´¢æ©è½ãªãã¬ã¤ã¹ã®è£å´ â¦â¦å¯å
åè£ï¼æ¸¡ éä¸éï¼å¡©å´ å¥å¼
### ã¼ããã®ãéçºè
ä½é¨ãæ¹åã¯ã¨ã¹ã ã11ãã¨ã³ã¸ãã¢ã®åãæ大éå¼ãåºãããã«ãããã¯ãããã¼ã¸ã£ã¼ããã¹ã3ã¤ã®ã㨠â¦â¦é«æ© èç±å®
### Cloudflare Workersã¸ã®æå¾
ã12ãCloudflare Accessã§Webãµã¤ãã¸ã¢ã¯ã»ã¹å¶éã追å ããã â¦â¦ç¦å²¡ ç§ä¸é
### ãæçµåãããªãã®ç¥ããªãChromeã®ä¸ç ã10ãPrivacy Sandboxãå·¡ãWebã®ä»å¾ â¦â¦å°æ²³ 亮
### å®è·µLLMã¢ããªã±ã¼ã·ã§ã³éçº ã14ãHuman-in-the-loopã§AIã¨ã¼ã¸ã§ã³ãã®åãã«ãã£ã¼ãããã¯ãå ããï¼åç·¨ï¼ â¦â¦è¥¿è¦ å
¬å®
### AWSæ´»ç¨ã¸ã£ã¼ãã¼ ã26ãAWS Backup â¦â¦æé æ
### åºç¤ãããããDetection Engineering ã4ãDetection as CodeââSIGMA â¦â¦ç³å· æä¹
### ã¤ã³ã¿ã¼ãããã®å§¿ãã¨ããã ã3ãã¤ã³ã¿ã¼ããããæ¯ããç©çåç·ã®ä¸ç â¦â¦åå± å¤ªäº
### é
æã®èªä½ã·ã§ã«ã®ä¸ç ã24ããã¬ã¼ã¹å±éã®ä¾å¤çå¦çã¨ã¨ã¹ã±ã¼ãã®å®è£
â¦â¦ä¸ç° éä¸
ãããªãµãã«è¿ãã¦ãããã®ã§ãã³ãã¼ãã¦ä½¿ãã¾ãã
ï¼åèï¼ä»¥åã®æé
å
¨é¨ééããªãæºåããã®ã¯æ¬å½ã«å¤§å¤ã§ããâ¦ããªãã¨ãã©ã¯ãã§ããªããã¨ãã¡ããã¡ãæ¢ãåãã¾ããã
ãããããå¯å£«å±±ãã¬ã¸ã³ãµã¼ãã¹ã®Software Designå®æè³¼èªãã¼ã¸ã«å å·¥ããããç®æ¬¡ãããã¾ããã
èªåã¯æ£è¦è¡¨ç¾ã§h2ãh3ã«ç½®ãæãã¦ä½¿ããã¦ããã ãã¦ãã¾ãâ¦ã
s/^â /## /g
s/^ã»/### /g
èªè
ã¢ã³ã±ã¼ããæ¸ã
ããã²ã¨ã¤å¤§äºãªãã¨ãâ¦ã
èªã¿çµãã£ãããã¢ã³ã±ã¼ãã«çããã¨ããã¨æãã¾ãã
çµæ§ã¬ãããªèªã¾ãªãã¨åçã§ããªããããªè³ªåå
容ã§ããâ¦ãã§ã«ã¡ããã¨èªãã§ã¡ã¢ãã¦ãã®ã§ã5åãããã§çããããã¨æãã¾ãã
ãããããã¨Reader's Linkã«æ¡ç¨ããã¡ããããããã¾ããã
softwaredesign.connpass.com
ã¡ã¢ã®ã¨ããã§æ¸ãããè¨ãã¦ã¿ãããã¨ããããã話ãã¨çãä¸ãã£ã¦ããã£ã¨æ¥½ããéãããã®ã§ãªã¹ã¹ã¡ã§ãâ¦ï¼
輪èªä¼ã®ææ³
ken1flan.hatenablog.com
輪èªä¼ã«åºããããã«ãææ³ãæ¸ãããã«ãã¦ã¾ãã
ããã¾ãç´°ãããã¨ã¯èããã«ãæ¸ãã¦ãããã®ã¨ãã«è¦ãã¦ãããã¨ããµãã¨æ¸ãã ãã«ãã¦ã¾ãã
誰ãã«èªã¾ãããã¨ãããããèªåã®è¨æ¶å®çã®ããã®åºæ¿ã¨ãã¦ä½¿ã£ã¦ããã¤ã¡ã¼ã¸ã§ãã
èªåã®ä»ã®äºä¾ï¼ ãããªã³ã·ãã« ãªã ããã°ã©ãã³ã°ãèªæ¸ä¼
ä¼ç¤¾ã®ã¡ã³ãã¼ã¨èªèº«ã®ã¹ãã«ã¢ããã®ããã«ãè¯ãã³ã¼ãï¼æªãã³ã¼ãã§å¦ã¶è¨è¨å
¥éãèªæ¸ä¼ããã£ã¦ãã¾ãã
ãããSoftware Design輪èªä¼ ã¨åãããã«ãäºåäºç¿ã®ããã®ã¡ã¢ãèªæ¸ä¼ãèªæ¸ä¼ã®ææ³ãæ¸ããã¨ãããªãºã ãç¹°ãè¿ãã¦ãã¾ãã
ä¸äººã§èªãããå¦ã³ãå¤ãã¦æ¥½ããæ°ããã¦ãã¾ãã
ken1flan.hatenablog.com
academist-reading.connpass.com
ken1flan.hatenablog.com
çµããã«
å人çã«ããã£ã¦ãããSoftware Design輪èªä¼ããªãã³èªæ¸ã®ç´¹ä»ã§ããã
ã¹ãã¼ãã¯åºã¾ããããèªã楽ããã¯ä»ã¾ã§ã«ãªããããããã¾ããããªãã¨ãªãçµãã£ããã¨ã«ææç©ãã§ãã¦ããã®ããã£ãæ°ã«ãªãã¦ããããã
ããã§ã¯ã¿ãªãããSoftware Design輪èªä¼ã¨Reader's Linkã§ä¼ãã¾ãããã