ç§ã¯ããŸã Visual Studio OnlineãšåŒã°ããŠããåæã®é ãããAzure DevOpsãµãŒãã¹ã®å€§ãã¡ã³ã§ãã ç§ã¯ãããå°éçããã³å人çãªç®çã§äœ¿çšããŸããã
ã³ã³ãµã«ãã£ã³ã°ã¯ã©ã€ã¢ã³ãã«æšå¥šããŸãã
ãã ãããã®ãã©ãããã©ãŒã ãã©ãã»ã©é«ãè©äŸ¡ããŠããAzure DevOpsã.NETã®å Žåãããæªããªãã®ã§ãAzure DevOpsããããžã§ã¯ãã§åé¡ãªãåäœããããšãNodeãŸãã¯Javaéçºè ã«çŽåŸãããããšã¯ãã°ãã°å°é£ã§ãã åèŠã«åè«ãããã¢ããã¬ãŒã³ããŒã·ã§ã³ã®æ°ã«é¢ä¿ãªããã©ã®ã°ã«ãŒãã«ããADO㯠"Microsoftã®ããŒã«"ã§ãããããADOã¯ãããã«é©ããªããšåºãä¿¡ãã人ã ãããŸãã
å²åŠçãªè°è«ã¯ããŠãããAzure DevOpsããã®å身ã§ããTeam Foundation ServicesïŒTFSïŒããã©ã®ããã«é²åããããç解ããŠããªãããšã§ãã»ãšãã©ã®æµæã説æã§ããŸãããã©ãããã©ãŒã ãã åé¡ã¯ãã©ãããã°ãããæçµçã«èšŒæã§ããã®ã§ããããïŒ
ç§ã¯ãã®ã¢ã€ãã¢ãå°ãè©ŠããŠã¿ãŠãããããç§ã¯æãã€ããŸããã AWSäžã®Kubernetesã«ãããã€ãããSpringBootãã€ã¯ããµãŒãã¹çšã«å¥ã®CI / CDãã¢ãäœæããã«ã蚌æãè¡ãå¿ èŠããããŸã-ãããšãã»ã³ããªãã¯ãªã¢ãããŒãã§è¡ãå¿ èŠããããŸãã
ä»ãå®å šã«ç°ãªããã®
çŸä»£ã®èšèªãšãã©ãããã©ãŒã ã«çŠç¹ãåœãŠãã®ããããŠã30幎åã«é²ãã§ãçŸä»£ã®ããŒã«ãšADOã䜿çšããŠãã¢ãžã¥ãŒã«ã«éçºãæ§ç¯ãå解ãã8ãããã³ã³ãã¥ãŒã¿ãŒãã©ãããã©ãŒã çšã«äœæãããããã°ã©ã ãå®è£ ã§ãããã©ããã確èªãããã©ãã§ããããïŒ
éå»ã«äœæããADOã®ä»ã®ãã¢ã®å Žåãšåæ§ã«ãã³ãŒãã®ç·šéãããã§ãã¯ãªã©ãå€æŽãç£èŠã§ããã©ã€ãç°å¢ãŸã§ãå®å šã«å®æãã補åã衚瀺ãããã£ãã®ã§ãã
çè«çã«ã¯ãããã¯ãã¹ãŠè¯ãããã«èŠããŸããããæ¬åœã®çåã¯-ã©ãããå§ããã°ããã®ãããšããããšã§ããã ããã¯ãæããã«ãåã®äŸãæ¢ããŠStackOverflowãå®è¡ã§ããç¶æ³ã§ã¯ãããŸããã§ããã ããããå人ãååïŒå šå¡ãç§ãåãããšå€æããïŒãšã¢ã€ãã¢ã«ã€ããŠè©±ãåã£ãåŸãã¢ã€ãã¢ãç·Žãå§ããŸããã
ãã¢ããã°ã©ã ã¯ãVS Codeãšãã£ã¿ãŒã䜿çšããŠCommodore 64ã®8ããããã·ã³ã³ãŒãã§äœæããããšã«ããŸããã ãœãŒã¹ã¯ADOã®Gitãªããžããªã«ãã£ãŠåŠçãããCI / CDãã€ãã©ã€ã³ãAzureã®ãã«ããã¢ãžã¥ãŒã«ãå®è£ ãæ åœããŸãã ç§ã¯ãã§ã«å人ãæ£ãããšçãå§ããç§ã®å±æ ¹ã¯ãã§ã«ãªããªã£ãŠããŸããããããã§ããã®ã¢ã€ãã¢ã¯èå³æ·±ãææŠã«æããŸããã
ç·šéè ã®éžæ
ç¹å®ã®ä»äºã«é©ããããŒã«ãéžæããããšã«ã€ããŠã¯èª°ããç¥ã£ãŠããŸãã ããã¯ã家äºãè»ã®ä¿®çãã³ãŒãã®äœæã«é©çšãããŸãã
.NETéçºè ãšããŠãç§ã¯ã»ãšãã©ã®æéãVisual Studio 2017ã§éãããŸããJavaãããžã§ã¯ãã«åãæ¿ãããããã€ãã£ãAndroidããã°ã©ã ãäœæããå¿ èŠãããå Žåã¯ãããããIntelliJãŸãã¯Android Studioãèµ·åããŸãã C64ãã·ã³ã³ãŒãã«ã¯ã©ã®ãšãã£ã¿ãŒã䜿çšããå¿ èŠããããŸããïŒ
ããªãããããããš-ä¿¡ãããã©ãã-ããããä»æ¥ã¯CBMãæžãã®ã«é©ããããã€ãã®åªãããšãã£ã¿ããããŸãã ãããã®ããã€ãã§éãã§ã¿ãŸããããå®éã«ã¯Visual Studio Codeã䜿çšãããã£ãã®ã§ãã ç§ã¯ä»ã®ãããžã§ã¯ãã«VS Codeã䜿çšããŸããããéåžžã«æè»ã§å¿«é©ã§ãããgitãšã®çµã¿èŸŒã¿ã®çµ±åã®ååšã¯çŽ æŽãããè¿œå ã§ããã
ãã®ãœãªã¥ãŒã·ã§ã³ã®æ¬ ç¹ã¯ãã¢ã»ã³ãã©ãŒ6510ã§æ§æã®åŒ·èª¿è¡šç€ºãç ç²ã«ããªããã°ãªãããçœãèæ¯ã®é»ãããã¹ããèŠã€ããããšã§ããã ãã®ç¶æ³ã¯ããæ£ããããŒã«ãã«é¢ããç§ã®å£°æã«ã¯å¯Ÿå¿ããŠããŸããã
çªç¶ãVisual Studio Marketplaceã«ã¢ã¯ã»ã¹ããŠãåé¡ã解決ããã®ã«é©ããVS Codeã®æ¡åŒµæ©èœãæ¢ã«ãããã©ããã確èªããããšã«ããŸããã ã¢ã»ã³ãã©ãŒã§åäœããããã«èšèšãããããã€ãã®æ¡åŒµæ©èœãããããšãå¬ããæããŸããã æ®å¿µãªãããç§ããããžã§ã¯ãã®ããã«éžãã ACMEã¯ãã¹ã¢ã»ã³ãã©ãŒã®ããã«æçããã人ã¯ããŸããã§ããã
ããã¯ç§ãæ¢ãããã®ã§ã¯ãªãã80幎代ã®éçºã®ã¢ãã¯ãã®åŽé¢ãè¿œäœéšããããªãã®ã§ãVS Codeã®æ¡åŒµæ©èœã®äœæã«é¢ããããã¥ã¡ã³ãã«æ²¡é ããŸããã æ°æ¥åŸãç§ã¯åãã§Visual Studio Marketplaceã®æ¡åŒµæ©èœã®æåã®ããŒãžã§ã³ããªãªãŒã¹ããŸããã
ãããŠããã®æŒç¿ã¯åœåèããããŠãããããæçšã§ããããšãå€æããŸããã
ãã€ãŠã¯ãã¢ã»ã³ãã©ãŒã§ããã°ã©ã ãæžãããšã«éäžããŠããŸããã§ããã äœåãå匷ããããšããŸãããããããŠãéå±ãããã€ã©ã€ã©ãããããŠãä»ã®ããšã«ç§»ããŸããã ãã©ã°ã€ã³ãäœæããåŸãVS Codeã®æ¡åŒµæ©èœãäœæããã¡ã«ããºã ã«ã€ããŠåŠç¿ããã ãã§ãªãããããŸããªæ§æãšæäœã³ãŒããååã«ç解ããŸããã
é©åãªãšãã£ã¿ãŒãš80幎代ã®å€ãããã°ã©ãã³ã°æ¬ãããã€ãçšæããŠãã³ãŒããæžãå§ããŸããã éåžžã«è¿ éã«ãSID圢åŒã®é³æ¥œãã¡ã€ã«ãã€ã³ããŒããã64æ³ã®ãšãã«ããŒãã«ãºã®8ãããããŒãžã§ã³ãåçããäœæ¥ããã°ã©ã ãååŸããŸããïŒããã¯CommodoreãŠãŒã¶ãŒã®å€ããžã§ãŒã¯ã§ããããã®ãããžã§ã¯ãã«é©ããŠããããã§ãïŒã
ãããŸã§ãã©ãããããã§ããã°ã©ã ãã³ã³ãã€ã«ããŠãã¹ãããŸããã ãœãŒã¹ã³ãŒãã¯gitãªããžããªã«ã³ããããããããã次ã®ã¹ãããã¯ç¶ç¶çã€ã³ãã°ã¬ãŒã·ã§ã³ã®ãã«ããäœæããå¿ èŠããããŸããã
ADOã®åªããæ©èœã®1ã€ã¯ãã»ãŒãã¹ãŠã®CI / CDã®ç¶æ³ãåŠçã§ããããšã§ãã ããã«äœ¿çšã§ãããµãŒãã¹ã«ã¯ãæ°åã¯ãªãã¯ããã ãã§ææ°ã®ã»ãšãã©ã®ãããžã§ã¯ãã®CI / CDãã§ãŒã³ããã°ããäœæã§ããå€ãã®å®çŸ©æžã¿ã¿ã¹ã¯ãçšæãããŠããŸãã
ããŒãºãåºæ¬ãµãŒãã¹ã®äžéšã§ã¯ãªãå ŽåãããŒã±ãããã¬ã€ã¹ã¯éåžžãå€ãã®ç°ãªãé©åãªããŒã«ãæäŸããŸãã ãããæ©èœããªãå Žåã¯ãå¿ èŠãªäœæ¥ãå®è¡ããPowerShellã¹ã¯ãªãããã¹ã±ããã§ããŸãã
ãã®ãããžã§ã¯ãã®æãããªåé¡ã¯ãå¹ åºããµãŒãã¹æ©èœã«ãããããããã³ã¢ããŒã«64ã®ã¯ãã¹ã¢ã»ã³ãã©ãšãã£ã¹ã¯ã€ã¡ãŒãžã³ã°ãåã«ååšããªãã£ãããšã§ããã ãã¡ãããå¿ èŠãªããŒã«ã䜿çšããŠAzureã§ç¹å¥ãªä»®æ³ãã·ã³ãäœæããããšããPowerShellãã¹ã«åŸãããšãã§ããŸãããããã¯èå³æ·±ãã§ããããïŒ
ã¯ã©ãŠãå ã®ä»®æ³ãã·ã³ã奜ãã§ã¯ãªãã®ã§ããã®æŒç¿ã§ã¯Hosted Agentã䜿çšãããã£ãã®ã§ãéžæè¢ã¯1ã€ã ãã§ããã æŒç¿å šäœã®ç®çã蚌æããããã«ãããããã¹ãŠã®ã¿ã¹ã¯ãåŠçããç¬èªã®æ¡åŒµæ©èœãäœæããã®ãæåã ãšå€æããŸããã
ACMEã¯ãã¹ã¢ã»ã³ãã©æ¡åŒµ
CIãã§ãŒã³ã«å¿ èŠãªæåã®æ¡åŒµã¯ãã¢ã»ã³ãã©ãŒã³ãŒããC64ãã·ã³ã³ãŒãã«ã³ã³ãã€ã«ããããšã§ããã ãããè¡ãã«ã¯ããã¹ããããŠãããã«ããšãŒãžã§ã³ãã®1ã€ã«ã¯ãã¹ã¢ã»ã³ãã©ãŒãã€ã³ã¹ããŒã«ããå¿ èŠããããŸããã
ã¢ã»ã³ãã©ãŒã¯ã人éãèªããã¢ã»ã³ãã©ãŒèšèªãç¹å®ã®ãã€ããªãã³ãã©ãŒçšã«èšèšãããå®éã®ãã·ã³ã³ãŒãã«å€æããããã°ã©ã ã§ãã éåžžããã·ã³ã³ãŒãã¯ãå®è¡ããããã·ã³ã§äœ¿çšãããããã»ããµçšã«çæãããŸãã ã¯ãã¹ã¢ã»ã³ãã©ã¯ã³ãŒãå€æã®æ¬¡ã®ã¹ããããå®è¡ããå¥ã®ããã»ããµçšã®ãã·ã³ã³ãŒããçæã§ããããã«ããŸãã
åè¿°ããããã«ãç§ã®ãããžã§ã¯ãã§ã¯ACME Cross-AssemblerãéžæããŸãããããã¯Commodoreã®éçºã«æšå¥šãããŠããããã§ãã ãŸãã任倩å ãšã³ã¿ãŒãã€ã³ã¡ã³ãã·ã¹ãã ã65xxããã»ããµã䜿çšããAtariãã¡ããªãªã©ãä»ã®ããŸããŸãª8ããããããžã§ã¯ãããµããŒãããŠããŸãã
ãã€ã¯ããœããããã®ä»ã®ãœãŒã¹ããæäŸãããããã¥ã¡ã³ããšäŸã«åºã¥ããŠãæ¡åŒµæ©èœã®äœæ¥ããŒãžã§ã³ãäœæããæ€èšŒããMarketplaceã§å ¬éããã®ã«ã1æ¥ã®å€§åãè²»ãããŸããã
ã¿ã¹ã¯ãèµ·åãããšãACME Cross-Assemblerã®ææ°ããŒãžã§ã³ãèªåçã«ããŠã³ããŒããããã¿ãŒã²ãããã©ãããã©ãŒã çšã®æçµãã¡ã€ã«ãäœæã§ãããªãã·ã§ã³ã§èµ·åãããŸãã ACMEã®éžæã«é¢é£ããå©ç¹ã®1ã€ã¯ãããã°ã©ã ãæ§ç¯ããããã®ãã©ã¡ãŒã¿ãŒã®ã»ãšãã©ããœãŒã¹ã³ãŒãã«çµã¿èŸŒãŸããŠããããšã§ããããã«ãããæ¡åŒµæ©èœã§å®çŸ©ããå¿ èŠãããå ¥åã®éãæå°éã«æããããŸãã
誰ãããã£ã¹ã±ããã貞ãåºããŠããŸããïŒ
ãã§ãŒã³ã®æ¬¡ã®ã¹ãããã¯ãCommodore 64ãšäºææ§ã®ããã¡ãã£ã¢åœ¢åŒã«ããã°ã©ã ã転éããããšã§ããã€ãŸãããããããŒãã£ã¹ã¯ã«é 眮ããŸãã éçºè ãæ¥åžžç掻ã§ãã®ãããªåé¡ã«ééããããšã¯ãããŸããã 幞ããªããšã«ããã®ã¿ã¹ã¯ã«ã¯åå¥ã®ã¢ããªã±ãŒã·ã§ã³ãååšããŸãã
VICEã¯Commodoreã§æã人æ°ã®ãããšãã¥ã¬ãŒã¿ãŒã§ãã ããŸããŸãªCommodoreã¢ãã«ããšã«å€ãã®ãšãã¥ã¬ãŒã¿ãŒãããã ãã§ãªããc1541ä»®æ³ãã£ã¹ã¯ãããŒãžã£ãŒãå«ãããã€ãã®äŸ¿å©ãªããŒã«ããããŸãã ããã§äœæããããã£ã¹ã¯ã€ã¡ãŒãžã¯ããšãã¥ã¬ãŒã¿ã§äœ¿çšããããç©çã¡ãã£ã¢ã«ã³ããŒãããïŒ5ÂŒ "äœå¯åºŠãããããŒãã£ã¹ã¯ïŒããŸãã¯microSDã«ããŠã³ããŒãããŠSD2IECãã©ã€ããšãã¥ã¬ãŒã¿ã§äœ¿çšã§ããŸãã
ãœãŒã¹ãã¡ã€ã«ã®ããããŒãããã¹ãŠã®èšå®ãååŸããACMEã¿ã¹ã¯ãšã¯ç°ãªããc1541ãã£ã¹ã¯ãŠãŒãã£ãªãã£ã¯CLIã«äŸåããŠããããŠãŒã¶ãŒã¯ãã£ã¹ã¯ã管çããããã®å€ãã®ãªãã·ã§ã³ããããŸãã æ¡åŒµã®ããã«ãç§ã¯èªåã®ã¿ã¹ã¯ã«å¿ èŠãªããããã£ã®ã¿ã«å°å¿µããããšã決ããŸããããããã§ãç§ã¯ãããäœãããã«ã©ãã ã培åºããå¿ èŠãããããšããéžæã«çŽé¢ããŸããã
Commodoreã¯ããã©ãŒããããšã¡ãã£ã¢ã¿ã€ãã«åºã¥ããŠãã£ã¹ã¯ããªã¥ãŒã ãåŠçããæ¹æ³ãç°ãªã3ã€ã®ç°ãªããã©ã€ãã¢ãã«ããªãªãŒã¹ããŸããã ã»ãšãã©ã®ãŠãŒã¶ãŒã«ãªãã¿ã®ããåºæ¬ã¢ãã«ã¯ã容éã170 KBïŒã¯ãããããã€ãã䞡芪ã«å°ããŠãã ããïŒã®çé¢ãã©ã€ãã§ããåäœããŸããã Commodore 128ã§äœ¿çšãããåŸã®ã¢ãã«ã§ãã1571ã¯ãäž¡é¢ãã£ã¹ã¯ã§åäœãããã®å®¹éã¯340 Kbã«å¢å ããŸããã æ¡åŒµæ©èœã«æè»æ§ãè¿œå ããããšã«ããã®ã§ãããããããŠã³ã¡ãã¥ãŒããã€ã³ã¿ãŒãã§ã€ã¹ã§éžæã§ããèšå®ã®åœ¢åŒã§ãããŸããŸãªãã£ã¹ã¯åœ¢åŒã®ãµããŒããè¿œå ããŸããã
ç§ã¯ãã§ã«å®çšçãªäŸãæã£ãŠããã®ã§ããã®æ¡åŒµæ©èœã®äœæã¯ãã£ãšéããªããŸããã ACMEæ¡åŒµæ©èœã®ã³ãŒããæ¹åã§ããæ°ããããšãåŠã³ãŸããã
ã¯ãã¹ã¢ã»ã³ãã©ã®å Žåãšåæ§ã«ãå¿ èŠãªãœãããŠã§ã¢ã¯ãªãŒãã³ãœãŒã¹ãããžã§ã¯ããªããžããªããããŠã³ããŒãããããã«ããšãŒãžã§ã³ãã«ã€ã³ã¹ããŒã«ãããŸãã ã¿ã¹ã¯ã¯ç®çã®åœ¢åŒã§ãã£ã¹ã¯ã€ã¡ãŒãžãäœæãããã«ãã¿ã¹ã¯ã®ãã¡ã€ã«ãããã«ã³ããŒãããŸãã çµæã®ãã¡ã€ã«ã¯Build Artifactsãã£ã¬ã¯ããªã«ç§»åãããããã§ããŠã³ããŒãã§ããŸãã
äœãå€æããã®ã§ãã-éåžžã«å€ãã®äœæ¥ãããããã®çµæããã¡ã€ã«ãããŠã³ããŒãããå¿ èŠããããŸããïŒ ããã¯CI / CDãã¬ãŒãã³ã°è³æã§ããå¿ èŠããããŸãã èªåã®ç«å Žã蚌æããå¿ èŠãããå Žåã¯ããã¢ãšããŠäœ¿çšã§ããããã«ãããã°ã©ã ããã·ã³ã«å±éããå¿ èŠããããŸãã
ããããããããç¡å¹
å®éã®Commodore 64ã³ã³ãã¥ãŒã¿ãŒãš1541ãã©ã€ãã®ããŒãžã§ã³ãå®è¡ããããšã¯ã倧èŠæš¡ã§éãããšã¯èšããŸã§ããããŸããã ããã«ãç¹æ®ãªã¢ããã¿ãŒãªãã§ã¯ææ°ã®ã¢ãã¿ãŒã«ç»åã衚瀺ã§ãããããã«ãããã¢ã®æå¹æ§ãå€§å¹ ã«å¶éãããŸãã
Commodore SX-64ïŒå€§èŠæš¡ãªãããã§çç£ãããæåã®ãããŒã¿ãã«ãã«ã©ãŒã³ã³ãã¥ãŒã¿ãŒïŒã«ã¯ã¢ãã¿ãŒãçµã¿èŸŒãŸããŠããŸããããããã¯ç§ã®æã¡èŸŒã¿ã¹ãŒãã±ãŒã¹ãšã»ãŒåããµã€ãºã§ãééã¯çŽ10 kgã§ããã ãã®ãããªã¢ã³ã¹ã¿ãŒãšç©ºæž¯ã®ã»ãã¥ãªãã£ãµãŒãã¹ãééããã®ãã©ãã»ã©é£ãããæ³åããŠã¿ãŠãã ããã
æè¿ãªãªãŒã¹ãããC64 Miniã¯ãUSBãHDMIåºåããããã°ã©ã ãããŠã³ããŒãããæ©èœãåããŠããã æã¡éã³ã«ååãªãµã€ãºã§ãã å Žåã«ãã£ãŠã¯ãããã¯1ã€ã®ãªãã·ã§ã³ã«ãªããŸãã ãããã圌ã¯ãŸã ç®æšãéæããŠããŸããã
æ¬åœã®åé¡ã¯ãã¢ã€ãã³ã®æºåž¯æ§ã§ã¯ãªããèªååã®æ¬ åŠã§ãã ãã©ãã·ã¥ãã©ã€ãã䜿çšããŠã©ãããããããããã°ã©ã ãè»ã«è»¢éããå¿ èŠæ§ã¯ããã¬ãŒã³ããŒã·ã§ã³ã®ADOã®æ©èœãå®å šã«ã¯æããã«ããŸããã
ãµãŒããŒãªãã®ãªãã·ã§ã³
åè¿°ããããã«ãVICEã¯Commodoreã§æã人æ°ã®ãããšãã¥ã¬ãŒã¿ãŒã§ãã WindowsãLinuxãMac OS XãMS-DOSãããã³ä»ã®å€ãã®OSã«ç§»æ€ãããŸããã ãã ããã¯ã©ãŠãéçºã®å Žåããã®ãªãã·ã§ã³ã§ã¯VMããã¹ããšããŠæ§æããå¿ èŠãããããµãŒããŒãå¿ èŠãšããªããœãªã¥ãŒã·ã§ã³ã§å¯ŸåŠãããã£ãã®ã§ãã
äžèšã®ããŒãžã§ã³ã«å ããŠãVICEã«ã¯JavaScriptã®ãªãã·ã§ã³ããããã»ãšãã©ã®ãã©ãŠã¶ãŒã§æ£åžžã«åäœããŸãã ããã³ããšã³ãéçºã¯ç§ã®èŠçŽ ã§ã¯ãããŸããããé©åãªã¬ã¹ãã³ã·ãããŒãžããŸãšããããšãã§ããŸããã
ãªãªãŒã¹ãã§ãŒã³ãæŽçããããã«ããã£ã¹ã¯ã€ã¡ãŒãžãå«ããã¡ã€ã«ãåããªããžããªå ã®ãã£ã¬ã¯ããªã«ã¢ããããŒãããŸãã ããããå©çšå¯èœãªãã£ã¹ã¯ã€ã¡ãŒãžã®ãªã¹ããè¿ãAzure Function Appã®åŒã³åºãã«é¢é£ä»ããŸããã ããããããŠã³ã¡ãã¥ãŒãããããã®ãããããéžæãããšãJavaScriptãšãã¥ã¬ãŒã¿ãŒã§èªåçã«ããŒãããã³èµ·åãããŸãã
ã·ã¹ãã ã¯ç§ã®ããã°ã©ã ã ãã§ãªããCommodore 64 BASICã§ããã°ã©ã ãå±éããã³å®è¡ããããã®ãã§ãŒã³ãäœæããããšãã§ããŸããã
10 PRINT "HELLO WORLD"
20 GOTO 10
çµãããŸã
Commodore 64ã®DevOpsïŒ èããããªãïŒ
ãã®æŒç¿ã®æå³ã¯ãAzure DevOpsã«ã€ããŠãä»»æã®èšèªãšãã©ãããã©ãŒã ãããµããŒãããŠãããšèšãã ãã§ãªããMicrosoftã«é¢é£ãããã¹ãŠãæå³ããã ãã§ã¯ãããŸããïŒãã ããCommodoreã®BASICããŒãžã§ã³ã¯MicrosoftïŒã ããã¯ãæè¡çãªåŽé¢ã«éäžããããšããç§ãã¡ããããã人ã ã圌ããèªåèªèº«ã®ããã«ä»»åœãã人工çãªæ çµã¿ãè¶ ããŠè¡ãããã«ããŸãã
èšãèš³ã«é¢ä¿ãªãããããã¯ããã§ã¯æ©èœããŸãããã®ãããªã¹ããŒãã¡ã³ãã¯ããç§ãã¡ã¯åžžã«ãã®ããã«ããã®ã«ããªãäœããå€ããã®ãããšããã¹ããŒãã¡ã³ããšåãã§ãã äž¡æ¹ã®ãã¬ãŒãºã¯ãæé·ãšçºå±ã絶ããå€åããæè¡ç°å¢ãžã®é©å¿ãããã³ãããã®è¿ éãã€ç©æ¥µçãªå€åã«ãã£ãŠãããããã課é¡ã®å æã«æ¶æ¥µçã§ããããšã瀺ããŠããŸãã
DevOpsã¯ããŒã«ã§ã¯ãããŸããã æçµçã«ããŒã«ã¯ã誰ãããããå ¬éãããã«é¢ä¿ãªããç®çãéæããããã®æ段ã«ãããŸããã
DevOpsãçµç¹ã§æåããããã«ã¯ãèãæ¹ãå€ããäŒæ¥æåãçºå±ãããå¿ èŠããããŸãã ããããã®æ°ããã¢ã€ãã¢ãåãå ¥ããç§ãã¡ãç¥ã£ãŠãããšæãããšãåèãããããã¯ããã§ã¯æ©èœããŸãããã®ãããªèãããé¢ããå¿ èŠããããŸãã
30幎åã®ã³ã³ãã¥ãŒã¿ãŒçšã«CI / CDãã§ãŒã³ãäœæããããšã¯ããã®èŠ³ç¹ãæ確ã«ç€ºãããšãé€ããŠãããžãã¹ã«ãšã£ãŠäŸ¡å€ããããŸããã