ドットインストール代表のライフハックブログ
みなさんこんにちは。 技術組織戦略G & 技術内閣の板敷です。 普段はAmebaのシステム障害の火消し → 障害対策ならびにエンジニアの育成評価等をしています。 今回は、先日終了したサイバーエージェント新卒エンジニア技術研修について紹介したいと思います。 研修概要従来の研修内容を一新、内製での技術研修に挑戦 これまでの新卒技術研修は委託先講師の話を新卒全員が聞くという、いわゆる「座学中心」の研修でしたが、ここ数年の技術的進歩、組織内でのエンジニアに対する期待の変化を反映するため、内製での研修へとゼロから再設計しました。 研修のコンセプトと概要 ベースとなる研修のコンセプトは以下2点からなります。 全体のアーキテクチャを俯瞰して設計、技術選定をする自分の頭で考え、動くこれらのコンセプトを実現するために今回の研修では、2つの某有名サービスを 自分たちで設計、実装するという形をとりました。 研修
この文章は、サーバサイドのウェブアプリケーション開発において、社内実績の少ない新しい言語を採用したときにインフラ面で考慮したことを社内向けにまとめたものです。 はてなでは、長らくPerlでウェブアプリケーション開発を続けてきた一方、ここ数年で社内でScalaまたはGoの採用事例も増えてきました。 今後開発が始まるプロダクトにおいても、Perl、Scala、Goもしくは他の言語を採用するかどうかを開発開始時に選ぶことになるでしょう。 新言語を採用するときに、考慮すべきことの一つとして、「インフラ」への影響があります。 新言語に関する雑談をしていると、ウェブアプリケーションエンジニアに「インフラ」への影響について聞かれます。 もしくは、ウェブオペレーションエンジニアから考慮するポイントを伝えることもあります。 ScalaやGo以外に、Node.jsやサーバサイドSwiftはどうかというのも雑談
AWSでは様々な便利なサービスが提供されています。中にはRDSやElasticCacheのように既存のミドルウェアに対するマネージドサービスを提供するものもあり、これらについては既存のミドルウェアを使って開発することができますが、AWS固有のサービスについてはアプリケーションを動作させるには実際にサービスに接続する必要があり、開発環境が制限されてしまいます。 もちろんソフトウェア側で抽象化しておき、DIなどの手法を用いてモックに差し替えるという方法も考えられますが、特にストレージとして利用するサービスなどの場合はインタラクションが必要になるのでモックでは再現しづらいですし、やはり実際に動作するサービスに接続して開発やテストを行うほうが効率的です。 そこで、AWSのサービスを擬似的にローカルで再現することのできるプロダクトを集めてみました。 S3 node.jsで動作するs3-proxyが使
こんにちは!ChatWork CTOの山本です。 ChatWorkでは一年前に、PHPの独自フレームワークでつくられた大規模システムを、Scalaを使ってゼロベースでつくりなおすという決断をしました。 Scala採用までの経緯を三行で: カウボーイ開発で約4年間積み上げてきたPHPのシステムがもはや限界ゼロベースでつくりなおそうと開発合宿を開催。満場一致でScalaに決定!しかし社内にScalaを書ける人は誰もいないのであった・・(どうすんの・・?)参考記事: チャットワークの新しい開発言語とフレームワークを決める開発合宿を開催!その全貌を丸公開します。 というわけで勢いのままScala採用を決めたはいいものの、ここからどうしよう・・・という状態でした。 そこから約一年。ChatWorkのScala開発はどうなってるの?とご質問いただく機会も増えましたので、現在の状況含め、Scalaってど
2. 自己紹介 l 水島 宏太 (株式会社ドワンゴ所属) l Scala関係のお仕事 l プログラミング言語好き l 自作言語を公開中(最近更新してない) http://github.com/onionlang/onion 3. 処理系 l Scala 2.11.6: 最新安定版 l バージョン l Scala 2.11.X: 主流 l Scala 2.10.X: l Scala 2.9.X: 一部プロジェクトが利用 ☆ 今から始めるならScala 2.11.X 4. IDE l 既存IDE のプラグインとして提供 l Eclipse (Scala IDE for Eclipse) l IntelliJ IDEA (+ Scala Plugin) ☆ IntelliJ IDEA + Scala Pluginがオススメ
約3カ月でScala率9割の動画広告配信プロダクト「LODEO」を開発 2014年の動画広告市場は前年比約2倍の300億円規模といわれ、その成長は破竹の勢いともいえる。サイバーエージェントでは「アドテクノロジーの開発」をキーワードに約200名のエンジニアを集め、2013年10月に「アドテクスタジオ」を設立。2014年10月よりアドテクスタジオにて動画広告配信プロダクト「LODEO」の開発を手がけ、2015年1月にリリースした。 その背景には、動画広告自体のニーズはもちろんのこと、スマートフォンの動画広告という新しい表現と、PCを使わない新たなユーザへリーチすることが可能なプロダクトが求められているという現状がある。「LODEO」の特徴は、1日に数十億リクエスト以上さばくという高いパフォーマンスに加え、個々のユーザに配信可能な配信ロジックを搭載し、データ分析や予測も行えるというもの。さらに、
2014年9月6日、オブジェクト指向の関数型プログラミング言語「Scala」に関する大規模カンファレンス「ScalaMatsuri 2014」が開催され、筆者も参加した(写真1)。当日の様子をレポートしたい。 Scalaについては、名前は聞いたことがある方も多いと思う。2003年に生まれたオープンソースのプログラミング言語で、コンパイル後はJava VM上で動作する。Javaの既存資産を引き継ぎつつ、Javaにはない新たな言語の特徴を生かせることから、今後が期待されている言語の一つである。 Scalaは海外では、米Twitterや米LinkedInなどが利用していることで知られ、ネット企業を中心に普及しつつあるが、今年の同カンファレンスでの発表を聞いて、国内のネット企業でも、もはや当たり前のように使われる状況になったのだと実感した。 国内でのScalaのユーザーとしては、ドワンゴ、エムスリ
GitHubを使ってプロジェクトのソースコードを管理しているというケースが多くなっていますが、それでもコードを外部サービスに配置してはいけないといった規定があるケースは多いです。そうなるとGitHubを使うことはできません(Enterprise版を買えばいけますが)。 しかしGitで管理し、さらにWebベースの使い勝手が良いUIが欲しい…なんてわがままを考えてしまう方に使ってみて欲しいのがGitBucketです。 GitBucketの使い方 GitBucketはScala製で、TomcatなどのWebアプリケーションサーバと連携できます。さらに単体でも動作が可能で、Mac OSXであればHomebrewでインストールできます。 $ brew install gitbucket インストールが終わって立ち上げると、 http://127.0.0.1:8080/ でサーバが立ち上がります。 な
タイトルで嫌な予感がしてる人もいるでしょうが、ScalaがJSに変換されて動きます。やったぜ。 Scala.js http://www.scala-js.org/ 試す このサンプルプロジェクトを git clone するのが良いです。 sjrd/scala-js-example-app https://github.com/sjrd/scala-js-example-app サンプルコードはこんな感じ package example import scala.scalajs.js import js.Dynamic.{ global => g } object ScalaJSExample { def main(): Unit = { val paragraph = g.document.createElement("p") paragraph.innerHTML = "<strong>
概要 JavaとScalaで書かれたアプリをiOSに移植してみました。 移植したのは私が開発しているMikuMikuStudioというゲームエンジンを使って作った、MMD(MikuMikuDance)プレーヤーです。 http://sourceforge.jp/projects/mikumikustudio/ Javaの実行にはRoboVMを使用しています。 OpenGLなどのライブラリとして、libGDXをカスタマイズして使用しています。 ソースはgithubにあります。 https://github.com/chototsu/mikumikustudio-gdx 動画 Javaをインストール 以下のURLからMac版のJavaをダウンロードします。 http://www.oracle.com/technetwork/java/javase/downloads/index.html イン
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く