タグ

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

  • Scalaの開発が加熱する

    2015年、Scala周辺は比較的静かだった。 これに対し、Scalaの父、Martin Odersky氏は、2016年5月9日のScala Days New York基調講演にて、 今年はScalaの開発が“加熱する”と述べた。 Odersky氏(現在École Polytechnique Fédérale de Lausanne(EPFL)のプログラミング研究グループ教授、 かつLightbend社の会長兼共同創設者)は、“ここ最近起こったことと直近に起こること”をまとめた。 The Scala Center Scala 2.12 Scalaライブラリ再検討計画 新ターゲットプラットフォームの開発 DOTおよびDotty Scala Center Odersky氏は新たにScala Centerを紹介した。 これは “すべてのScalaコミュニティにとって利益をもたらす責任あるプロジェ

    Scalaの開発が加熱する
    Dryad
    Dryad 2016/08/27
    id:nekora それはDottyという研究用に一から書き直した奴の話で、まだ3.0になるかも分からないすよ。削除した理由は論文を読みましょう。
  • Machine Learning for Programming

    InfoQ Software Architects' Newsletter A monthly overview of things you need to know as an architect or aspiring architect. View an example

    Machine Learning for Programming
  • アジャイルチームの技術的リーダーシップ

    開発者がチームをリードするポジションに昇進する場合、新たなスキルセットが必要だ。Talking with Tech Leadsの著者によればPatrick Kua氏によれば、技術的リーダーは共通の技術的なビジョンに向けてチームを動かすため、権限を委譲し、ファシリテーション、コミュニケーションをし、リスクを管理しなければならない。 Patrick Kua氏はOOP 2015カンファレンスでThe Geek‘s Guide to Leading Teamsと題した講演を行う予定だ。カンファレンスの模様はInfoQでも取り上げる。 InfoQは氏にインタビューを行い、技術的リーダーの必要性、スクラムマスタと技術的リードの役割の違い、リーダーシップのスキル、能力やスキルを磨くのを支援するために技術的リーダーがするべきことについて話を聞いた。 InfoQ: なぜ技術的リーダーが必要なのでしょうか。

    アジャイルチームの技術的リーダーシップ
  • Aerospike, Cassandra, Couchbase、MongoDBを比較したNoSQLベンチマーク

    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が最近リリースされ、重要な変...

    Aerospike, Cassandra, Couchbase、MongoDBを比較したNoSQLベンチマーク
  • TeXのアルゴリズムの再実装 - プログラミングの30年間を振り返る

    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が最近リリースされ、重要な変...

    TeXのアルゴリズムの再実装 - プログラミングの30年間を振り返る
  • ドメイン駆動設計のコンテキスト境界間でデータを共有する

    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が最近リリースされ、重要な変...

    ドメイン駆動設計のコンテキスト境界間でデータを共有する
  • Pragmatic Daveに質問: アジャイルよりも敏捷性

    今月前半、アジャイル宣言の共著者であるDave Thomas と Martin Fowlerの2人が GOTOデンマークの一連の会議でパネルディスカッションに参加した。パネルは“アジャイル宣言のやり直し”を中心としていた。これはDaveの最近のブログ記事、『アジャイルは死んだ (敏捷性万歳)』から着想を得たものである。この記事は3月に公開されて以来、興味深いディベートやディスカッションを生み出してきた。 Q&A は、Pragmatic Daveとして広く知られているDaveが自身の考えを説明するものである。テーマは、当パネルディスカッション、彼のブログ記事、そして、アジャイルについてあまり重点を置かず、敏捷性の実際的な適用に重点を置くべき時だと彼が信じるようになった理由についてである。 InfoQ: ごく最近までアジャイル関連のイベントに参加してこなかったのはなぜでしょうか? それは元

    Pragmatic Daveに質問: アジャイルよりも敏捷性
    Dryad
    Dryad 2014/11/18
    「アジャイルはもっとシンプルで個人的なものだったのに、コンサルどもに歪められてしまった」みたいな気持ちがあるのかなぁ。
  • 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氏の語る“犠牲的アーキテクチャ"
    Dryad
    Dryad 2014/11/14
    『適切なモジュール性は,優れたコードベースのための重要な部分であると同時に,一般論としてはシステムのリプレースにも非常に有効です。』
  • 新鋭の言語: この5年を振り返る

    最近の記事でEmerging Languages CampのオーガナイザであるAlex Payne氏がこの5年でプログラミング言語の世界がどのように変わったか、これからどのように変わっていくのかについて考えを披瀝している。InfoQは氏に話を聞いた。 氏は最近の言語の進化の物語とその未来を語る上で手助けになる3つの条件を挙げる。 ツールの重要性 "実装戦略"として仮想マシンを使う 他言語化 氏が言うように、Goの作者であるRob Pike氏が2010年に言語について振り返ったとき、氏はなぜ"30年以上の蓄積があるプログラミング言語理論の研究を無視しているように思われる"言語を開発したのか、質問された。もちろん、Goの保守的な特性は普及を妨げるものではないと氏は言う。一方で、Scalaは"当初からツーリングに苦労してきた"。その結果、多くのScala開発者は"なじみのJavaの世界"へ戻って

    新鋭の言語: この5年を振り返る
    Dryad
    Dryad 2014/10/22
    Scala→Javaの移行事例がまさに何年も前のYammerの話以外に挙げられてないし、全体としては逆だと思うけどなぁ。とはいえ、sbt回りは早急になんとかした方が良いのは確か。
  • Scalaの今後

    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が最近リリースされ、重要な変...

    Scalaの今後
  • The Future of Docker

    InfoQ Software Architects' Newsletter A monthly overview of things you need to know as an architect or aspiring architect. View an example

    The Future of Docker
    Dryad
    Dryad 2014/08/21
    サービス発見、コンテナ間通信、設定ファイルのAPI化
  • bitlyでの分散システム構築から学んだこと

    5月に開催されたBacon Conferenceで,bitlyのアプリケーション開発リーダのSean O’Connor氏は,毎月600億クリックを処理する分散システムの開発を通じてbitlyの開発者たちが学んだ,最も価値ある教訓について説明した。 分散システムとは何か? 分散システムを定義する3大特性は,氏によれば,Wikipediaで簡単に見付けることができる。 コンポーネントノードの真の並行性。これによってノード間の同調に関連するコストと複雑性が発生する。 共通クロックの不在。このため,異なるノードで発生したイベントを時間順に並べることは不可能になる。 障害の独立性。これはノード障害がシステム内の他のノードに影響を与えない,という能力として理解されるべきだ。 従って分散システムの構築では,これらの特性を扱うことを目標にする必要がある。 ただし氏の意見として,システムの分散的特性に起因す

    bitlyでの分散システム構築から学んだこと
  • Promises: ブラウザーJavaScriptの新しい非同期標準になるか?

    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が最近リリースされ、重要な変...

    Promises: ブラウザーJavaScriptの新しい非同期標準になるか?
  • 関数型言語を使ったドメイン駆動設計

    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が最近リリースされ、重要な変...

    関数型言語を使ったドメイン駆動設計
  • オブジェクト指向設計の原則と関数型プログラミング

    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が最近リリースされ、重要な変...

    オブジェクト指向設計の原則と関数型プログラミング
  • Etsyはいかにして1日に50回ものデプロイをしているのか

    Daniel Schauenberg氏は先日のQCon Londonで、DevOpsや継続的インテグレーションを実践していることで有名なEtsyが、いかにして1日に50回ものデプロイをしているのかについて語った。リスクを最小限に抑えながらこのペースの変更を実現するためには、完全に自動化されたデプロイメントパイプライン、徹底的なアプリケーションのモニタリング、IRCベースの共同作業、これらすべてが重要なのだ。 Etsyの開発への取り組みは、いくつもの小さくて途切れることのない変更を中心に回っている。直接影響するのは、一日に何度もデプロイする必要性だ。Daniel Schauenberg氏の言葉を借りれば、Etsyの開発者はいつどんなときでも「今すぐこの変更をデプロイするゆとりが自分にはあるか?」という質問の答えを知っていなければいけない。常にゆとりを持てるように、Etsyはさまざまなツールや

    Etsyはいかにして1日に50回ものデプロイをしているのか
  • アジャイル時代のモデリング: アジャイルチーム拡大のためにはコードの次に何を保つべきなのか

    図1.シンプルなスクラム構成 この最小限のフレームワークの中で、チームのインプットとなるのが”ユーザ要求”としての”プロダクトバックログ”です。そして、アウ トプットは”動くソフト ウェア”としてのコード(”製品コード”と”テストコード”)です。 そこには他の設計要素が明示的に現れてはいません。スプリントの中で作られたすべての意図的な設計はチームの財産として実行コートの中に組み込まれるのが 望ましいですが、そこには直接コード化されない情報もあります。スクラムは開発プロセスであり、設計に関しては敢えて何も言及していませんが、設計と設 計活動はチーム内部であいかわらず行われています。 Grady Booch氏は”コー ドは真実ではあるが、すべての事実ではない” と語っています。だから、もしそこにコードで表現又は伝われない情報が残されるとしたら、私達はその情報をどこに格納できるでしょうか?その質

    アジャイル時代のモデリング: アジャイルチーム拡大のためにはコードの次に何を保つべきなのか
  • 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コンテナを使ってアプリケーションの配置を支援する
  • バーチャルパネル: 低レイテンシ環境でJavaを使う

    Todd L. Montgomery氏。Informatica Ultra Messagingのアーキテクチャ担当副社長で29Westの低遅延メッセージング製品の主任設計者および実装者。 Dr Andy Piper氏。最近、OracleからPush TechnologyにCTOとしてジョイン。 質問: 低レイテンシとは何を意味するのですか? リアルタイムと同じ意味でしょうか? 一般的に、高パフォーマンスなコードにどう関係しているのですか? Javaを使う利点として、豊富なライブラリ、フレームワーク、アプリケーションサーバなどへのアクセスや、使えるプログラマが多いことが挙げられます。こうした利点は低レイテンシコードにも当てはまるのでしょうか? もし当てはまらないなら、C++よりも何か利点はあるのでしょうか? JVMは並行プログラムをどのようにサポートしていますか? ガベージコレクションは少し

    バーチャルパネル: 低レイテンシ環境でJavaを使う
  • Twitterのスケーリング,新たなピークへ

    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のスケーリング,新たなピークへ