

全球已經有2300家企業採用開發者平臺專案Backstage來打造內部開發者平臺,Spotify開始要認真經營這項平臺產品了。Google雲端、GitLab、JetBrains、 Atlassian紛紛推出不同類型的開發者AI助手,從程式碼生成,到DevOps流程輔助都有
Google雲端日前正式推出了開發者AI助理Duet AI,進軍AI開發者生產力工具的競爭,來與GitHub Copilot開發者AI競爭。目前開發者Duet AI可以在Cloud Shell Editor、Cloud Workstations、IntelliJ、PyCharm和VS Code等IDE中使用,支援C、C++、Go、Java、JavaScript和Python等20多種程式語言。另外也整合了GCP的Cloud Logging雲端維運服務,可用AI摘要日誌摘要和錯誤的解釋,來輔助故障排除。開發者Duet AI也內建了專用端點、VPC服務控制和精細IAM權限存取控制等安全功能。
不只如此,開發者Duet AI也聯手了不同的開發者工具鏈和生態圈,包括了知識型合作夥伴,可以提供各自名產品文件和知識庫,包括了Datadog、JetBrains、Langchain。可以回答常見產品問題、弱點修補、自動化測試等問題。另外也整合了開發類工具包括了Confluent、HashiCorp、MongoDB、Redis、Elastic、Grafana Labs等,可以協助產生這類開發工具鏈產品的程式碼、範例程式碼或除錯建議。
擁有IntelliJ IDEA、PyCharm等多款IDE產品的工具商JetBrains,最近也發表了自己的開發AI助理,不只可以解釋程式碼,回答程式碼相關問題,也能生成文件或是進行程式語言轉換等工作。JetBrains採用OpenAI的模型來打造這款人工智慧助理,不只可以根據專案上下文、插入符號位置以及提示詞產生程式碼。同時也可以生成說明文件,代勞這件普遍不受開發者歡迎的工作。開發者在AI Actions的選單選擇編寫文件選項,人工智慧助理便會根據所選函式和類別,產生豐富經格式化的文件。這款AI助理特色之一是可以提供潛在程式碼的重構建議,不只考慮程式脈絡,也會考量當前專案的限制,並且還能解釋重構建議的原因,也讓開發者接受建議後,直接將生成的程式碼插入專案中。
主攻Salesforce開發生態圈的DevOps平臺工具商Copado,最近發表了用ChatGPT打造的DevOps助手CopadoGPT測試版。這款DevOps助手使用了Copado累積十年的DevOps實務的資料來優化,可以自動生成機器人自渡化測試的測試腳本,也能用來強化用戶故事的細節,自動產生更容易理解的版本發布說明,也能用來提供Salesforce應用開發的最佳實知識。
Atlassian在四月發表的DevOps開發AI助手Atlassian Intelligence現在正式上線了,先支援Jira軟體、Confluence、Jira服務管理平臺,後續也會支援CI/CD平臺產品Bitbucket。這是一款使用Atlassian過去20年軟體開發知識所訓練的AI助手,主要用於開發流程的人機協作輔助。
在測試階段,已有26萬人試用,最常見的用法是從Jira軟體工單自動產生用戶故事,自動產生SQL指令,也會用來修正Jira服務管理平臺上對顧客的回應語氣,Confluence文件自動摘要、或是透過提示語快速建立工作流程或是建立新的測試計畫。另外Confluence先開始支援用自然語言搜尋企業內部自己獨特的縮寫、術語或簡稱,來加快新手上手的速度,Jira也很快會支援這項NLP搜尋功能。

DevOps工具商CircleCI最近宣布將自家CI/CD平臺延伸到AI應用的開發流程,可以存取AWS上的GPU實例、透過內建Webhook機制快速連結到Hugging Face上的AI模型服務,也能整合LangChain團隊所開發的生成式AI應用除錯工具LangSmith,以及整合到AWS的SageMaker,讓DevOps流程更容易套用到AI應用的開發,減少開發人員設定外部第三方AI開發工具的麻煩。
大型主機商軟公司BMC最近推出一款新的大型主機現代化工具AMI DevX Code Insights,可以利用機器學習演算法,繪製出大型主機的龐大單體式應用架構圖,可以用來分析資料和協助百萬行等級大型主機程式碼的除錯,也能透過runtime模擬器來了解COBOL程式如何運作,方便移除老舊用不到的死亡程式碼,或者用來協助分析COBOL程式碼的邏輯,拆解出不同功能的小型程式碼,來進行程式碼重構。
Python網頁應用框架Django這次改版主要聚焦在資料庫功能強化,像是支援資料庫運算預設值,以及資料庫生成模型欄位,讓資料庫自動處理資料欄的內容,並且還在模板系統加入欄位群組的概念,簡化表單欄位渲染等。5.0版開始支援資料庫生成資料的欄位,可以用由其他欄位計算出來的結果,來建立一個新欄位的值。這個功能能在資料庫層級自動計算並儲存結果,不只提高資料處理效率,也減少網頁端程式的計算負擔。隨著5.0的發布,Django 4.2也結束主流支援,後續只提供安全性和資料丟失的修補。
在12月時,VS Code有不少更新,先是發布了1.85新版,增加了多項實用的新功能,例如浮動編輯器視窗,開發者現在可以將編輯器拖曳到桌面,方便將編輯器視窗分散到不同的顯示器或是桌面空間,來提高開發效率。JavaScript除錯器則加入視覺化V8堆快照(Heap Snapshot)功能,開發者可以更直覺地理解和分析JavaScript程式的記憶體使用情況。還提供更精細的擴充套件自動更新控制,允許用戶選擇想要進行自動更新的擴充套件。
12月底時,更小幅更新Java擴充套件,也改善多項開發者體驗,例如Java擴充套件繁多的設定,現在會按類別和用途分類,方便開發者尋找。創建Java檔案的流程也更直覺,新增時會列出包含各種Java檔案類型列表,方便開發者選擇。在測試功能改善上,這次改版增加了新的測試覆蓋率API,當開發者在VS Code Insiders中執行Java測試時,能夠直接查看覆蓋率結果。Spring Boot擴充套件也有不少新功能和效能提升更新,例如採用了開源自動化重構工具OpenRewrite,可將現有Spring專案自動升級至Spring Boot 3.2。
微軟在12月也小幅更新Visual Studio 2022,主要針對C++開發體驗的優化。C++開發者現在可以更有效率地檢視資料結構的記憶體占用量,以及記憶體的對齊方式。滑鼠移到識別碼(Identifier)上,就能查看快速資訊工具提示,即時檢查類別、結構和聯合的大小和對齊狀況,來了解複雜程式中的記憶體布局。另外也增加了記憶體布局檢視圖,可以用視覺化的方式來呈現類別、結構和聯合的記憶體排列方式,對於最佳化記憶體布局工作特別有用。開發者現在可以更直覺地查看類別中所有資料成員的填充、偏移和大小。另外,Visual Studio 2022從17.9版本也會開始直接支援Unreal Engine專案,可以直接在Visual Studio開啟來開發相關遊戲程式。

Asahi Linux與Fedora合作,終於在年底釋出了第一個支援Apple Silicon的Linux版本Fedora Asahi Remix,比原定8月釋出晚了4個月。該版本支援M1和M2系列的MacBook、Mac Mini、Mac Studio和iMac裝置,Mac Pro則還需要再等等。這個版本提供KDE Plasma以及GNOME桌面環境,操作體驗可以達到如同macOS般的流暢,不會有任何撕裂感或是故障。KDE Plasma還支援HiDPI,甚至可同時跨多個不同比例的螢幕顯示。
程式碼品管工具商Sonar最近宣布旗下產品開始支援機密內容的偵測能力,包括SonarLint、SonarQube和SonarCloud都支援。這項功能可以用來偵測不小心遺留在程式碼中的機密資訊,避免系統遭駭時或而外流了這些機敏資料,常見不小心忘記移除的機密資訊類型包括了密碼、API金鑰、加密金鑰、權杖或是資料庫憑證等。這項工具透過語意分析和複雜規則來對程式碼儲存庫進行掃描,可以整合到DevOps流程中,而SonarLint則是可以更提前一步整合到企業所用的IDE開發工具中,來避免這類機密資料外流到合作廠商。
隨著平臺工程越來越火紅,也開始出現專門鎖定企業內部開發者平臺的工具商,Massdriver就是其中一家。最近他們釋出了一個可以用來追蹤雲端成本的工具,能夠產生雲端基礎架構的成分分析表,稱為Cloud IBOM(Cloud Infrastructure bill of materials),並且能整合到企業內部的開發者平臺,在平臺工程的工作流程中提供成本分析的參考。
使用者可以快速點選幾個按鈕,就可以產生一份雲端架構成分表,可以畫製出不同類型雲端資源的架構圖,也能涵蓋到資料庫、機器學習工作流程、無伺服器運算框架的架構。在這個架構圖上,除了呈現出不同雲端資源之間的關係,也會一一標記出每一項雲端資源的啟動時間,上個月的費用總額,相關通知警報(例如上個月超過設定的預算額度),讓平臺工程團隊更清楚地從工作流程來檢視,可以找出最花錢的流程和工具。

@:iThome整理,2023年12月
:王宏仁