タグ

ブックマーク / www.infoq.com (31)

  • ConcouseCIによるテスト駆動コンテナ化ビルドパイプライン

    ThoughtWorksの主任開発者のひとりが、同社のあるクライアントでビルドパイプラインを書き換えた際の、自身のチームの経験談を公開している。チームは、コンフィギュレーション・アズ・コード、パイプライン駆動デリバリ、コンテナのサポート、システムの可視性といった点を重視して、JenkinsからConcourseCIへのスイッチを行った。 既存のシステムは中央にJenkinsを配置し、複雑に構成されていた。パイプラインは内部のDSLで記述されていたが、所有権がチーム全体に分散しており、実際の所有者は存在しなかった。セットアップ変更は大変な作業で、作り直すことはほぼ不可能に見えた。 チームはまず、新たなシステムに望むものをリストアップした。インフラストラクチャ・アズ・コードの考え方を導入するためには、構成情報をバージョン管理の下に置く必要がある。新たなシステムは、ビルディングブロックとしてパイ

    ConcouseCIによるテスト駆動コンテナ化ビルドパイプライン
    Kiske
    Kiske 2019/01/10
  • マイクロサービスの人間的側面

    マクロサービスアーキテクチャは、純粋に技術的なソリューションではなく、チームのコミュニケーションにとってのゲームチェンジャーだ。チーム間に安定した直接的なコミュニケーションチャンネルがない場合、彼らが作るソフトウェアはひどいものになるだろう。マイクロサービス実装を成功させるのに不可欠な5つの重要な特性は、ゼロコンフィグレーション、オートディスカバリ、高い冗長性、自己修復、フォールトトレランスだ。 Codemotion Berlin 2018で、unu GmbHでソフトウェアエンジニアリングの責任者Armağan Amcalar氏は、マイクロサービスの人間的側面について語った。InfoQではこのカンファレンスを、Q&A、サマリー、記事で紹介する。 今日の分散コンピューティングとマイクロサービスの世界では、多数の可動部品を制御し続けるために、クリーンなソフトウェアアーキテクチャが不可欠だ。エコ

    マイクロサービスの人間的側面
    Kiske
    Kiske 2018/12/10
  • Googleの新マネージャ育成方法

    Spring BootによるAPIバックエンド構築実践ガイド 第2版 何千人もの開発者が、InfoQのミニブック「Practical Guide to Building an API Back End with Spring Boot」から、Spring Bootを使ったREST API構築の基礎を学んだ。このでは、出版時に新しくリリースされたバージョンである Spring Boot 2 を使用している。しかし、Spring Boot3が最近リリースされ、重要な変...

    Googleの新マネージャ育成方法
    Kiske
    Kiske 2017/12/22
  • Shark(iOSのためのオープンソースORM)はハイパフォーマンスとマルチスレッド対応を強みとし、Core Dataの置き換えを目指す

    Spring BootによるAPIバックエンド構築実践ガイド 第2版 何千人もの開発者が、InfoQのミニブック「Practical Guide to Building an API Back End with Spring Boot」から、Spring Bootを使ったREST API構築の基礎を学んだ。このでは、出版時に新しくリリースされたバージョンである Spring Boot 2 を使用している。しかし、Spring Boot3が最近リリースされ、重要な変...

    Shark(iOSのためのオープンソースORM)はハイパフォーマンスとマルチスレッド対応を強みとし、Core Dataの置き換えを目指す
    Kiske
    Kiske 2016/08/17
  • より良いチームを作るためのエクササイズ

    働く組織の概念は毎年進化してきました。自己組織化されたチームが高い成果を生み出すことを見つけたのはアジャイルの実践家だけではありません。強いマネージャは高い成果を生み出すチームの必須要件ではありません。しかし、それは自己組織化されたチームにはリーダーシップがないということではありません。そのようなチームはたくさんのリーダーシップがあります。ひとりに集まるのではなく、チームのメンバ全員に分散されているのです。 分散されたリーダーシップはBlake氏とMoulton氏の論文を無効にするものではありません。人と成果に焦点を当てバランスを取ることはチームにとって大事です。そのようなバランスを存続させるためAlexis Phillips氏とPhillip Sandahl氏はBlake氏のリーダーシップ格子をベースにしたチーム診断モデルを提案しました。ふたりはマネジメント側の“人に対する関心”を、チー

    より良いチームを作るためのエクササイズ
    Kiske
    Kiske 2016/08/10
  • Apple、Messagesフレームワークを開発者に公開

    Spring BootによるAPIバックエンド構築実践ガイド 第2版 何千人もの開発者が、InfoQのミニブック「Practical Guide to Building an API Back End with Spring Boot」から、Spring Bootを使ったREST API構築の基礎を学んだ。このでは、出版時に新しくリリースされたバージョンである Spring Boot 2 を使用している。しかし、Spring Boot3が最近リリースされ、重要な変...

    Apple、Messagesフレームワークを開発者に公開
    Kiske
    Kiske 2016/07/29
  • Swiftでネイティブなリアクティブ関数型プログラミングを実現するRxSwift

    RxSwiftは,RxプログラミングモデルをSwiftに移植することを目的としたプロジェクトで,その抽象化を可能な限り取り入れている。メンテナのKrunoslav Zaher氏に話を聞いた。 RxSwiftでは,Observable<Element>をベースとすることによって,非同期処理やイベントストリームを容易に構成することができる。Observerは,RxSwiftではシーケンスと等価であるため,データやイベントのストリームなどのシーケンスの要素に対する高レベルな操作を,Observableインターフェースのオペレーションを通じてモデル化することが可能だ。 RxSwiftのフレキシブルなプログラミングモデルは,UIを含むバインディングやリトライ,デリゲート,KVO, 通知など,さまざまなユースケースに対応する。 次のプログラム例は,rx_text演算子を使用して2つのテキストフィールド

    Swiftでネイティブなリアクティブ関数型プログラミングを実現するRxSwift
    Kiske
    Kiske 2016/04/12
  • ParseがRubyからGoへ移行,信頼性が大きく向上

    Spring BootによるAPIバックエンド構築実践ガイド 第2版 何千人もの開発者が、InfoQのミニブック「Practical Guide to Building an API Back End with Spring Boot」から、Spring Bootを使ったREST API構築の基礎を学んだ。このでは、出版時に新しくリリースされたバージョンである Spring Boot 2 を使用している。しかし、Spring Boot3が最近リリースされ、重要な変...

    ParseがRubyからGoへ移行,信頼性が大きく向上
    Kiske
    Kiske 2015/07/10
  • Swiftにおけるプロトコル指向プログラミング

    WWDCにて、C++/Boostで知られ、現在はAppleSwift Standard Libraryグループのリーダを務めるDave Abrahams氏が、Swiftをプロトコル指向言語として紹介し、プロトコルがコード改善にどう使えるのか説明した。 プロトコル指向プログラミングというのは、OOP(オブジェクト指向プログラミング)のパラダイムの一つで(注:Abrahams氏はそうは言っていないとのこと)、クラスよりもプロトコル(インターフェイスに相当)と構造体の利用を好んでいる。 クラスは素晴らしい? OOPで知られているように、クラスは以下を提供するのに使われる。 カプセル化 アクセス制御 抽象化 名前空間 表現力 拡張性 実のところ、これらはすべて型の特性であり、クラスは型を実装する一つの方法にすぎないとAbrahams氏は言う。だが、クラスはプログラマに多大な犠牲を強い、次のような

    Swiftにおけるプロトコル指向プログラミング
    Kiske
    Kiske 2015/06/25
  • GoogleはJsonnetでJSONの拡張を提案する

    Spring BootによるAPIバックエンド構築実践ガイド 第2版 何千人もの開発者が、InfoQのミニブック「Practical Guide to Building an API Back End with Spring Boot」から、Spring Bootを使ったREST API構築の基礎を学んだ。このでは、出版時に新しくリリースされたバージョンである Spring Boot 2 を使用している。しかし、Spring Boot3が最近リリースされ、重要な変...

    GoogleはJsonnetでJSONの拡張を提案する
    Kiske
    Kiske 2015/05/08
  • AppleのResearchKitがGithubで利用可能に

    Spring BootによるAPIバックエンド構築実践ガイド 第2版 何千人もの開発者が、InfoQのミニブック「Practical Guide to Building an API Back End with Spring Boot」から、Spring Bootを使ったREST API構築の基礎を学んだ。このでは、出版時に新しくリリースされたバージョンである Spring Boot 2 を使用している。しかし、Spring Boot3が最近リリースされ、重要な変...

    AppleのResearchKitがGithubで利用可能に
    Kiske
    Kiske 2015/04/28
  • TwitterがDigitsとDigits Login for Webを公開

    Spring BootによるAPIバックエンド構築実践ガイド 第2版 何千人もの開発者が、InfoQのミニブック「Practical Guide to Building an API Back End with Spring Boot」から、Spring Bootを使ったREST API構築の基礎を学んだ。このでは、出版時に新しくリリースされたバージョンである Spring Boot 2 を使用している。しかし、Spring Boot3が最近リリースされ、重要な変...

    TwitterがDigitsとDigits Login for Webを公開
  • Androidアプリ開発のためのGoogleのガイダンス

    Spring BootによるAPIバックエンド構築実践ガイド 第2版 何千人もの開発者が、InfoQのミニブック「Practical Guide to Building an API Back End with Spring Boot」から、Spring Bootを使ったREST API構築の基礎を学んだ。このでは、出版時に新しくリリースされたバージョンである Spring Boot 2 を使用している。しかし、Spring Boot3が最近リリースされ、重要な変...

    Androidアプリ開発のためのGoogleのガイダンス
  • Martin Fowler氏の語る“犠牲的アーキテクチャ"

    Spring BootによるAPIバックエンド構築実践ガイド 第2版 何千人もの開発者が、InfoQのミニブック「Practical Guide to Building an API Back End with Spring Boot」から、Spring Bootを使ったREST API構築の基礎を学んだ。このでは、出版時に新しくリリースされたバージョンである Spring Boot 2 を使用している。しかし、Spring Boot3が最近リリースされ、重要な変...

    Martin Fowler氏の語る“犠牲的アーキテクチャ"
    Kiske
    Kiske 2014/11/20
    ふむ
  • Docker: Linuxコンテナを使ってアプリケーションの配置を支援する

    サーバアプリケーションの配置はますます複雑になっています。いくつかのPerlスクリプトをコピーするだけでインストールが完了する時代は終わりました。今日、ソフトウエアは多くの種類の要求を抱えています。 インストールするソフトウエアやライブラリの依存物("Python >= 2.6.3とDjango 1.2に依存する") 実行するサービスへの依存("MySQL 5.5とRabbitMQのキュー"が必要) 特定のOSに対する依存("64-bit Ubuntu Linux 12.04でビルドとテストをした") リソースの要件: 利用可能なメモリの最少量("1GBのメモリが必要") 特定のポートへのバインド("80と443を使う") 例えば、比較的シンプルなアプリケーションの配置を考えてみましょう。Wordpressです。典型的なWordpressのインストールでは、 Apache 2 PHP 5

    Docker: Linuxコンテナを使ってアプリケーションの配置を支援する
    Kiske
    Kiske 2013/11/12
  • Ruby 2.1がガベージコレクションを変更,大規模システムでの批判に対処

    Spring BootによるAPIバックエンド構築実践ガイド 第2版 何千人もの開発者が、InfoQのミニブック「Practical Guide to Building an API Back End with Spring Boot」から、Spring Bootを使ったREST API構築の基礎を学んだ。このでは、出版時に新しくリリースされたバージョンである Spring Boot 2 を使用している。しかし、Spring Boot3が最近リリースされ、重要な変...

    Ruby 2.1がガベージコレクションを変更,大規模システムでの批判に対処
    Kiske
    Kiske 2013/09/25
  • Twemproxy - MemCachedとRedis用のプロキシ

    Spring BootによるAPIバックエンド構築実践ガイド 第2版 何千人もの開発者が、InfoQのミニブック「Practical Guide to Building an API Back End with Spring Boot」から、Spring Bootを使ったREST API構築の基礎を学んだ。このでは、出版時に新しくリリースされたバージョンである Spring Boot 2 を使用している。しかし、Spring Boot3が最近リリースされ、重要な変...

    Twemproxy - MemCachedとRedis用のプロキシ
  • NGINX 1.4 の新機能: SPDYとPageSpeed

    Spring BootによるAPIバックエンド構築実践ガイド 第2版 何千人もの開発者が、InfoQのミニブック「Practical Guide to Building an API Back End with Spring Boot」から、Spring Bootを使ったREST API構築の基礎を学んだ。このでは、出版時に新しくリリースされたバージョンである Spring Boot 2 を使用している。しかし、Spring Boot3が最近リリースされ、重要な変...

    NGINX 1.4 の新機能: SPDYとPageSpeed
    Kiske
    Kiske 2013/05/21
  • メトリクス駆動開発

    メトリクス駆動開発の主な原則は、 メトリクスをメトリクスのオーナに割り当てる レイヤ化されたメトリクスを作成し、傾向の相関を探る 意思決定する時にメトリクスを利用する 各メトリクスはオーナを持ちます。オーナはそのメトリクスを実装しメンテナンスするために必要な知識と方法を持っています。メトリクスのオーナはアプリケーションやサービス、そしてサーバについて責任を持ち、正しく監視されデータが集められていることを保証します。さらに、既存のメトリクスを最新状態に維持し、新しいアプリケーションや機能のためのメトリクスを作成します。 また、メトリクスを構造化するのも重要です。ある条件でグループ化されたりレイヤ化されたメトリクスはビジネスサイドの人から開発者まで誰でも理解できます。さらに、関連性を見つけたり、傾向を見つけたりするのも簡単になり、問題の発見から解決まで素早くできるようになります。 MDDを実践

    メトリクス駆動開発
    Kiske
    Kiske 2013/01/29
  • LinkedIn での Ruby on Rails 対 Node.js

    Spring BootによるAPIバックエンド構築実践ガイド 第2版 何千人もの開発者が、InfoQのミニブック「Practical Guide to Building an API Back End with Spring Boot」から、Spring Bootを使ったREST API構築の基礎を学んだ。このでは、出版時に新しくリリースされたバージョンである Spring Boot 2 を使用している。しかし、Spring Boot3が最近リリースされ、重要な変...

    LinkedIn での Ruby on Rails 対 Node.js