InfoQ ホームページ Source Code に関するすべてのコンテンツ
-
GitHubのインシデント分析がサービスの信頼性を改善する方法を示す
2018年10月21日、GitHubユーザは、日常のメンテナンス作業が原因のインシデントにより、24時間のサービス低下を経験した。古くて一貫性のない情報が表示され、24時間、ウェブフックと他の内部サービスが利用できなくなった。GitHubの事後インシデントレポートは、どこで問題が起きたかを示し、サイト信頼性を改善する解決策を述べている。
-
複数チームによるテスト自動化ソリューションを構築する
自動テストを備えた堅固なテストフレームワークは、リリースの信頼性向上を可能にする。フレームワークのクロスチームペアリングにより、リリース当初からの品質確保が可能になった。チームの結束力が向上し、テスト自動化に関する担当者のスキル向上も実現できた。
-
Michael Feathers氏の提唱する設計指針としてのエラー処理
Michael Feathers氏はエラーに関心を持っているが、ほとんどの開発者がエラーに多くの時間を割きたいとは思っていないことは理解している。氏はまた、大部分のエラー処理は一種のギブアップに過ぎない、と考えている。レガシコードでの開発作業に関する著書で知られる氏は、Explore DDD 2018で行った基調講演の中で、エラーを排除することが、いかにソフトウェアシステム設計のドライバになり得るかを論じた。
-
diff, branch、grepなどが改善されたgit 2.19
最新のgitリリースには、diff、branch、grep各コマンドの改善、コマンドライン補完の向上、range-diffコマンドの新設など、多数の新機能や内部処理の変更が行われている。
-
GitHubが開発者向けのワークフローツールをリリース:Actions、Suggested Changes、.NET/Java向けのSecurity Alerts
サンフランシスコで開催されたGitHub Universeで、GitHubは、開発者に対して、アクション、推奨される変更、.NETとJava向けのセキュリティアラートなどのワークフローをより効果的にするための、新しい多くのツールを発表した。
-
新たなGit Submoduleの脆弱性にパッチが当てられた
Gitコミュニティは、cloneおよびsubmoduleコマンドに影響を及ぼすセキュリティ脆弱性を公開した。これは、脆弱性のあるマシンが悪意のあるリポジトリにアクセスした時、リモートコードの実行を可能にするというものだ。この脆弱性はMitreによってCVE–2018–17456にアサインされ、Git 2.19.1で修正された。
-
なぜ、どのように、いつ読みやすいコードを書くか
ほとんどの開発者が読みやすいコードを欲している。開発チームは機能性より読みやすさを好ましいと思っ���いるかもしれない。しかし、読みやすさを定義しようとすると、意見が割れる。Explore DDD 2018でLaura Savino氏はなぜ読みやすいコードが良いのか、読みやすさとはどういうことなのか、他の考慮点よりも読みやすさが絶対的に優先度が高い場合はどんな場合か、について話をした。
-
アジャイルの世界におけるコンプライアンスとは
コンプライアンスとは、自分が正しいことをしていること、そして、それを証明できることだ。アジャイルの頻繁なデリバリでは、デリバリプロセス内にコンプライアンスを構築することが必要になる。コンプライアンス義務をDevOpsチームの責務の一部とすることで、その成功の可能性を高めることができる。
-
GitHubが学習コンテンツを拡大
GitHub Learning Labは、すべてのスキルレベルの人々がGitHubを使用できるように、今年初めに開始されたイニシアチブである。GitHubは4つの新しいコースをリリースした。新しいコースは、GitHubへのアップロード、GitHubへの移行、Community Starter Kit、HTMLの導入である。
-
Git 2.18がGitプロトコルバージョン2のサポートを追加
Gitクライアントの最新の公式バージョンであるGit 2.18でGitワイヤプロトコルのバージョン2が利用可能となった。また、パフォーマンスとUIの向上を目的としたその他の新機能も含まれている。
-
GithubエンジニアリングがMySQL高可用性のために新しいアーキテクチャを採用
Github.comは、API、認証、Github.comのウェブサイトなど多くの重要なサービスのバックボーンとしてMySQLを使用している。Githubのエンジニアリングチームは、以前のDNSとVIPベースの設定をOrchestrator、Consul、Github Load Balancerに基づく設定に置き換え、スプリットブレインとDNSキャッシュの問題を回避した。
-
MicrosoftがGitHubを75億ドルで買収
Microsoftは、ソフトウェア開発プラットフォームであり、バージョン管理にGitを使用したWebベースのホスティングサービスであるGitHubの買収で合意したことを発表した。契約は年内に締結される予定で、両社は共に、GitHubは今後もオープンなプラットフォームとして存続し、あらゆるツールの使用とあらゆるプラットフォームへのデプロイのサポートを約束すると述べている。
-
Gitの脆弱性により任意のコードが実行できる
Gitサブモジュール名の検証に対する脆弱性により、リモートの攻撃者が開発者マシン上で任意のコードを実行できる。さらに、攻撃者はシステムメモリの一部にアクセスできる。どちらの脆弱性もすでにGit 2.17.1、2.16.4、2.15.2、および他のバージョンでパッチが適用されている。
-
継続的デリバリの基礎としてのトランクベース開発
pivotalで継続的デリバリに関する書籍を著したDave Farley氏は先頃、トランクベース開発のプラクティスに対する異論について記事を書き、CIと優秀なチームで果している役割を証拠としてそれらの意見に反論した。共著者のJez Humble氏もTwitterのスレッドでこのプラクティスの文化的側面についてコメントし、プログラマ気質との関係について説明している。
-
GitHub Checks APIにより、アプリは高度な継続的インテグレーションが可能に
GitHub Checks APIは、コードチェックを継続的なインテグレーションワークフローに統合することを目的としている。たとえば、これはソースファイルを診断し、プルリクエストビューに直接結果を表示することを意味する。フィードバックは、問題の原因となるコード行を示すなど、必要に応じて詳細に記述することができるため、コミットの作成者は問題を修正してコードを改めてチェックすることができる。