タグ

scalaに関するji_kuのブックマーク (63)

  • RestyというScala用のREST APIフレームワークを作ってみました - たけぞう瀕死ブログ

    GitHubリポジトリはこちら。 github.com なぜ作ったのか? Scala業界のフレームワークは関数型的なアプローチのものが主流になっています。これらのフレームワークはノンブロッキングI/Oや並列処理をうまく扱うことができますが、質的な複雑さをもたらします。自分の経験では、特に企業システムなどの場合は従来の同期サーブレットでも十分というケースも多いのではないかと感じています。 また、既存のScala用のフレームワークはタイプセーフなDSLでルーティングや入出力パラメータなどを定義するものが多いのですが、この手のものはシンプルな静的解析でメタ情報を抽出することが難しいためSwaggerなどの外部ツールとの相性が悪いという欠点もあります。 Restyはこのようなケースにおいてもプログラミング言語としてのScalaのアドバンテージを活かすことのできるシンプルなフレームワークがあるとい

    RestyというScala用のREST APIフレームワークを作ってみました - たけぞう瀕死ブログ
    ji_ku
    ji_ku 2016/11/30
  • Scalaの学習コストを下げるための心得 - kmizuの日記

    追記:Twitterで、「それって、言語マニアにしかできない技のような気が」という指摘を受けました。自分としては一般的に適用可能な話だと思っていますが、あるいは自分の感性が著しくずれているのかもしれません。その辺承知の上でお読みください。 Scalaは習得が難しい言語だ、とよく言われます。また、実際問題として、Scalaの言語仕様の全体はそれなりに複雑でもあります。しかし、それはたとえばJavaでも言語仕様の全体像を把握するのは難しい話であり、Scalaに限った話ではありません。にも関わらず、Scalaの習得が難しいとよく言われるのはプログラミング言語の学習モデルが誤っているからではないかと最近思うようになりました。そこで、Scala(や他の言語も含めて)のコストを下げるために必要な心得についてちょっと書いてみます。 Scalaはオブジェクト指向言語である これは、Scalaは関数型プログ

    Scalaの学習コストを下げるための心得 - kmizuの日記
    ji_ku
    ji_ku 2016/10/15
  • はてなにおけるマイクロサービスとScala / Microservices and Scala at Hatena

    Scala関西Summit 2016 (http://summit.scala-kansai.org/) の発表資料です。

    はてなにおけるマイクロサービスとScala / Microservices and Scala at Hatena
  • 苦労して育てたPHPを捨てるメリットは? チャットワークに聞く(後編) | HRナビ by リクルート

    増井さんが「今、気になる人」に直撃する連載。前編では、PHPの独自フレームワークで開発したチャットワークをScalaで刷新すると宣言したChatWorkの山正喜CTOに、プロジェクトの進捗と、このプロジェクトがもたらした影響について聞きました。 後編では、チャットワークの未来像や、技術的負債を抱えないための方法論などについて、話を進めていきます。 苦労して育て上げたPHPを捨てるメリットとは? 増井:現行のシステムはまだPHPで動いてるんですよね? 山:そうです。 増井:10万4000社が使っている大規模サービスなのに、特に大きな問題はないんですか? 山:今は安定していますから問題はありません。でも3年ぐらい前までは、大きな障害を起こすことが度々あったので、正直、大丈夫とは言い切れない部分がありました。増井さんならよくご存じでしょうが、大規模なシステムでPHPを使う時には、気をつける

    苦労して育てたPHPを捨てるメリットは? チャットワークに聞く(後編) | HRナビ by リクルート
  • PHPからScalaに乗り換えたチャットワークさん、その後どうですか?(前編) | HRナビ by リクルート

    当にScala化できるんですか? 増井:今日は、チャットワークをPHPからScalaに切り替えるお話を伺うためにやって来ました。 山:はい。 増井:僕がこの話を知ったのは、ちょうど2年ぐらい前に読んだブログのエントリだったんです。いきなり失礼なんですが、僕はこの話を知って、ぶっちゃけアホじゃないかと思ったんですよ。 山:あはは(笑) 増井:基的に開発言語やフレームワーク、方法論を同時に変えるって結構大きな変更ですよね? 山:そう思います。 増井:それなのに、この決断を発表された当時、御社にはScalaエンジニアがいなかったそうじゃないですか。「当に大丈夫なのかな?」と思って、気になってたんです。昨年春には「Scala採用を決めて一年たった、CTOの雑感」というエントリをポストされていましたが、さらに1年経った今はどんな状況なんですか? 山:ひと言で申し上げると「絶賛移行中」と

    PHPからScalaに乗り換えたチャットワークさん、その後どうですか?(前編) | HRナビ by リクルート
  • https://dwango.github.io/scala_text/

    ji_ku
    ji_ku 2016/02/01
  • Scala使用歴5年のプログラマが、この言語とその環境に関する神話を解き明かす | POSTD

    (注:2016/1/21、頂いたフィードバックをもとに記事を修正いたしました。) 『 Programming in Scala (Scalaでプログラミング) 』の初版を読み始めた(でも読み終えていない)5年前からJavaの代わりにScalaを使うようになりました。最初はテストの時に使用していましたが、すぐにちょっとしたユーティリティクラスでも使用するようになり、気付いたらプロジェクト全てで使用するようになっていました。 Scalaに対する不満は多く存在しますが、この記事は違います。これは非難するものではなく、むしろ称賛するものです。 Scalaに興味ある開発者や聞いたことがあっても詳しく見たことがない人、「スムーズなプログラミングの妨げになる」と思い使用を先送りしていた人のために書きました。もちろんScalaファンに読んでもらうのも、他の人にも紹介してもらうのも大歓迎です。 この記事は3

    Scala使用歴5年のプログラマが、この言語とその環境に関する神話を解き明かす | POSTD
    ji_ku
    ji_ku 2015/12/22
  • Scala入門記 - $shibayu36->blog;

    僕はこれまでまともに学習したプログラミング言語がPerlJavaScriptしかなくて、静的言語的パラダイムや関数型パラダイムは概念は知っているものの、それがどう役に立つのか、逆にどういう面で課題がありどのように対処されているのか、などといったことを知らなかった。知らなくてもまあ仕事PerlとJSでやっているので問題ない。しかしすでにこれらの言語から得られる概念的な知識の吸収の速度が鈍化してきていて、このままではエンジニアとしてまずいのではないかという危惧感があった。 そこで静的言語であり、関数型言語であり、また社内でも使われ始めているためサンプルコードがあるScalaの学習をすることにした。 学習するにあたって困ったことは、どういうドキュメントを読み、どのように実践するとScalaの概観をつかめるか分からないということだった。そこで今回は自分の経験を踏まえて、このように入門していくと

    Scala入門記 - $shibayu36->blog;
    ji_ku
    ji_ku 2015/11/09
  • 初心者でもほぼ無料でScalaを勉強できるコンテンツ8選 - paiza times

    Photo by Luca Sartoni こんにちは。谷口がお送りします。 プログラミングをこれから学ぼうとしている方や、これから研修や実務に入る新人ITエンジニアの皆さんの中には「Scalaを学習したい」という方も多くいらっしゃるかと思います。 Scalaはオブジェクト指向言語と関数型言語の特徴を統合したマルチパラダイムのプログラミング言語です。 ScalaJavaの良さを継承し、かつスクリプト言語や関数型言語のメリットを吸収した言語で、Javaの後継を担うものとして注目されています。 Scalaの利点は、Javaの良さを継承しつつ、スクリプト言語や関数型言語の良いところも吸収し、先進的な機能や文法を取り入れている点にあります。また、簡易に並列処理プログラミングを行うことができるライブラリも付属しています。 Scalaは、海外ではTwitterやLinkedInなどが利用していること

    初心者でもほぼ無料でScalaを勉強できるコンテンツ8選 - paiza times
    ji_ku
    ji_ku 2015/05/08
  • Scala採用を決めて一年たった、CTOの雑感 | チャットワーククリエーターズブログ

    こんにちは!ChatWork CTOの山です。 ChatWorkでは一年前に、PHPの独自フレームワークでつくられた大規模システムを、Scalaを使ってゼロベースでつくりなおすという決断をしました。 Scala採用までの経緯を三行で: カウボーイ開発で約4年間積み上げてきたPHPのシステムがもはや限界ゼロベースでつくりなおそうと開発合宿を開催。満場一致でScalaに決定!しかし社内にScalaを書ける人は誰もいないのであった・・(どうすんの・・?)参考記事: チャットワークの新しい開発言語とフレームワークを決める開発合宿を開催!その全貌を丸公開します。 というわけで勢いのままScala採用を決めたはいいものの、ここからどうしよう・・・という状態でした。 そこから約一年。ChatWorkのScala開発はどうなってるの?とご質問いただく機会も増えましたので、現在の状況含め、Scalaってど

    Scala採用を決めて一年たった、CTOの雑感 | チャットワーククリエーターズブログ
    ji_ku
    ji_ku 2015/05/07
  • 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がオススメ

    Scalaの現状と今後
    ji_ku
    ji_ku 2015/04/23
  • 「実戦での Scala 〜 6つの事例から知る Scala の勘所〜」を開催しました! | 株式会社ヌーラボ(Nulab inc.)

    こんにちは、江口です。 2月21日(土)に「実戦での Scala 〜 6つの事例から知る Scala の勘所〜」をスマートニュース株式会社さんと共同で開催いたしましたので、その様子と発表内容を公開された資料とともに簡単に紹介します。 場所は渋谷にあるスマートニュースさんの新オフィスで行われました。Scalaへの注目度の高さもあってか、当日は広いスペースに用意された座席がほぼ満席という盛況具合でした。 ビズリーチの新サービスをScalaで作ってみた ~マイクロサービスの裏側 (株式会社ビズリーチ 竹添さん) 最初に、株式会社ビズリーチの竹添さんから、新サービスであるスタンバイという求人検索エンジンの開発についての発表が行われました。 サービス全体のアーキテクチャにマイクロサービスを採用し、各サービスの実装にはScalaを採用したというような内容でした。 Scalaを採用した理由として、並列処

    「実戦での Scala 〜 6つの事例から知る Scala の勘所〜」を開催しました! | 株式会社ヌーラボ(Nulab inc.)
    ji_ku
    ji_ku 2015/03/23
  • Mackerelで採用している技術一覧とその紹介 - Hatena Developer Blog

    こんにちは。Songmuです。 この記事ははてなエンジニアアドベントカレンダーの3日目です。 昨日、Hatena Engineer Seminar #3を開催いたしました。何より参加率が高かったことに感激したのですが、その分少し窮屈な思いをさせてしまったかもしれないのは申し訳なかったです。多数のご参加当にありがとうございました。 セミナーではMackerel overviewという話をさせてもらったのですが、そこでお話したMackerelで採用している技術について説明します。 Mackerelとは? 今年の9月17日にリリースしたはてな謹製のサーバー管理・監視ツールです。 数多くのサーバーを運用しているはてなは、これまでサーバー管理ツールを内製してきたのですが、そのノウハウを活かし、サービス用に新たに一から作ったサービスになります。 また、はてなの既存サービスとは性質が異なるため、技術

    Mackerelで採用している技術一覧とその紹介 - Hatena Developer Blog
  • Scalaを始めて早5年、今一度冷静にScalaと向き合ってみた - tehepero note(・ω<)

    2015-03-11 Scalaを始めて早5年、今一度冷静にScalaと向き合ってみた Scala 今年は2015年で、社会人になってプログラマとしてデビューしたのがディープインパクト*1がまだ現役だった2006年で早9年。そして自分がScalaという言語に出会ったのが2010年なので、なにげにキャリアの半分くらいをScalaを触って過ごしてるということになる(もちろん他の言語もやってるが)。 というわけでScalaを始めて5年ということで、今一度冷静にScalaと向き合ってみようというエントリでたいした内容ではありません。 (注:自分はたいしたScalaプログラマではありません) はじまり 過去を掘り起こせば、Scala始めた宣言をしたのはこのエントリらしい。たぶんtwitterでも宣言してる気がするけど、2011年くらいまでの発言までしか遡れなかった。 既にscala中毒患者になりかけ

    Scalaを始めて早5年、今一度冷静にScalaと向き合ってみた - tehepero note(・ω<)
    ji_ku
    ji_ku 2015/03/19
  • Scalaにおける細かい最適化のプラクティス - xuwei-k's blog

    列挙順自体はとくに意味ありません。あと「どの最適化がどのくらい速くなるのか?」を詳細に計ったことはないですし、「原理的にこうなってるから(ry」というのを説明するに過ぎません。中には「JITで無意味になるようなどうでもいい細かすぎること」も書いてありますし、最適化のトレードオフとして失うものもあるので、そのあたり自己責任でお願いします。当に最適化が必要とされる場合は、以下のものを無闇に実行するよりまず計測したほうがいいのは、言うまでもありません。*1 1. private[this]をつかえ scalaのvalやvarは、private[this]にしたときのみ、直接のフィールドアクセスになります(それ以外ではメソッド呼び出し)。シングルトンのobjectの場合も同様です。private[this]をつけられる場合はできるだけつけましょう 2. なんでもかんでもListをつかうな 最初の

    Scalaにおける細かい最適化のプラクティス - xuwei-k's blog
    ji_ku
    ji_ku 2015/03/13
  • Scala開発を始める人におすすめのScala関連情報サイトをまとめてみた - Lambdaカクテル

    id:masawadaにScala+Playのおすすめ情報サイトを聞かれたのでまとめてみる。随時追加の方針です。 @windymelt Scala+Playしたいのだけど、オススメの情報サイトとかありますか?なお、Scala未経験です。— Masayoshi Wada (@masawada) December 4, 2014 追記(12/5 16:56) id:nkgt_chkonkさんにコメントでご助言を頂きました。Akkaの項で紹介しているid:nkgt_chkonkさんの記事中で紹介されているIO周りのインターフェイスは既に古くなってしまい、Akka 2.3では削除されてしまっているとの事でしたので、その旨について該当の項に追記しました。 ご助言をくださったid:nkgt_chkonkさん、ありがとうございました。 訂正(12/5 01:00) id:xuweiさんにコメントでご指摘

    Scala開発を始める人におすすめのScala関連情報サイトをまとめてみた - Lambdaカクテル
    ji_ku
    ji_ku 2015/02/23
  • Java ラブなヌーラボにおける Scala + Playframework 体験記

    Presentation slides at https://jissenscala.doorkeeper.jp/events/19660

    Java ラブなヌーラボにおける Scala + Playframework 体験記
    ji_ku
    ji_ku 2015/02/23
  • Developers Summit 2014 で「Play2/Scalaでドメイン駆動設計を利用した大規模Webアプリケーションのスクラム開発の勘所」という内容で発表してきました - sifue's blog

    あまりにタイトルが長すぎるだろうと各所から突っ込まれ、あまりにも詰め込んだ内容で発表してしまったとちょっと反省しています。 お話としては、現在ニコニコ生放送の内部をPHPからScalaへ書きなおしているよ、というお話でした。 発表内容はこちら。 Developers Summit 2014 「Play2/Scalaでドメイン駆動設計を利用した大規模Webアプリケーションのスクラム開発の勘所」 from Yoshimura Soichiro これらの内容は、これからScalaを使ってWebサイトを構築、運営してみようとしているリーダーさん向けに書いたものとなっています。Play2/Scalaやドメイン駆動設計、またスクラム開発の導入への足がかりにの情報となっていれば幸いです。 こんな雪の中わざわざ聞きに来てくださった皆様、そしてこの書き直しを着想するにあたってお世話になった特にじゅんいちかと

    Developers Summit 2014 で「Play2/Scalaでドメイン駆動設計を利用した大規模Webアプリケーションのスクラム開発の勘所」という内容で発表してきました - sifue's blog
    ji_ku
    ji_ku 2014/02/16
  • バカ向け言語 Scala - だらだらしてたいなぁ

    なぜScalaがバカ向けなのか。 ぼくの経験を元に、バカ向け言語と非バカ向け言語を比較しながら見て行きましょう 非バカ向け言語 C プログラマーとして最初に携わったのがC言語です。 それは以下のようなものでした。 何十ものファイルにまたがるグローバル変数 緻密な制御が必要であるにも関わらず、無秩序に取得/開放が行われているメモリー管理 このような複雑な構造を、ぼくのようなポケコン並の処理能力しか持たないバカに把握可能でしょうか。もちろん不可能です そこで、次のようなコーディングを心がけました。 グローバル変数を使わず、関数に引数を定義して渡す メモリーの取得/解放を同一ファイル内に限定する これで、メモリーや変数参照の影響範囲を限定し、ぼくのようなバカでも理解できるようになります。 ですが、わざわざそんな事をやらなくても全てを理解できるエリート様達は、 「なぜ引数で渡すんだ。グローバル変数

    バカ向け言語 Scala - だらだらしてたいなぁ
    ji_ku
    ji_ku 2013/07/05
  • 命令プログラミングから関数プログラミングへ

    A slide for the hands-on session at Scala Kansai Summit 2018, originally presented by Kitora-san in 2017. 15.7.11 HiRoshima.R #4 Lightning Talks @imyuaotiの発表資料です。 ※注意※(2015.7.19追記) Rでは処理速度が遅いという理由で for関数の使用は避けるべきと考えられています。 来は,処理を高速化をしたい場合,以下をうまく活用してください。 ・apply関数 ・foreachパッケージ,pforeachパッケージ 【参考資料】 「勝手に添削:for関数を使った繰り返し処理によるヒストグラムの一括出力 #rstatsj」 http://qiita.com/hoxo_m/items/5127c31f3eafd6be7428 (h

    命令プログラミングから関数プログラミングへ
    ji_ku
    ji_ku 2013/07/05