M3 DigiKar Rails5への道 - エムスリーテックブログ
エンジニアリンググループの@suusan2goです。現在は所属としてはAIチームで、機械学習以外のことを色々やっています。が、諸事情により少し暇になったので、弊社のクラウド電子カルテ「M3 DigiKar」チームに入ってRailsアップグレードをやっています。 今回の記事ではM3 DigiKar(以下デジカル)のRailsアップグレード(4.2...
いかにして我々は10年もののPerlプロダクトをScalaでリプレースしたか - ScalaMatsuri 2019
いかにして我々は10年もののPerlプロダクトをScalaでリプレースしたか はてなブックマークはサービス開始から10年以上が経ち、Perlで書かれたコードベースの肥大化・複雑化、アーキテクチャの老朽化によるメンテナンスコスト増大という課題を抱えていました。これらの課題への対処のため2015年にいちからシステムを作り...
Spark Streaming と Kryo シリアライザーの話 - MicroAd Developers Blog
マイクロアドでアプリケーションエンジニアをしている「G」です。日々、バッチを作ったり WEB アプリケーションを作ったりしています。 今回はライトに Spark Streaming でカスタム Kryo (クライオ)シリアライザーが必要になってしまったお話を書いていきたいと思います。 Spark Streaming とは Spark Streaming とは ...
リクルートマーケティングパートナーズに入社しました - xuwei-k's blog
前回↓ "2月になったくらいのタイミングでまた別途書きます" と言っていたやつです。 xuwei-k.hatenablog.com 今日、2019年2月1日が初出社でした。 Scalaをやってる企業としての知名度だと、おそらく前職に比べたらそこまで有名ではないかもしれませんが、それなりにやってるらしいです。 もちろん(?)、全部の部署がScala...
実践 Clean Architecture - Speaker Deck
All slide content and descriptions are owned by their creators.
FOLIOからfreeeに転職します - itohiro73’s blog
2019年1月20日付で株式会社FOLIOを退職し、2019年1月21日付で株式会社freeeに入社します。 FOLIOで何をしてきたか FOLIOでは2017年4月にテックリードとしてジョインし、その後Head of Engineeringへと名称が変わり、その後病気による休職を経て復職し、シニアソリューションアーキテクトとして働いてきました。 たった1...
Scalaコードとともに考えるドメインモデリング - Speaker Deck
DDDコミュニティでは、なぜドメイン駆動設計をやるのかという必要性の議論ではなく、何をどのように実践するのかという議題に変わっています。Scalaコミュニティにおいても、DDDの実践方法に強い関心があることはいうまでもありません。 長大な設計哲学を説くDDDは、読み難く理解し難い、実践までの道のりが遠いという定...
「実践Scala入門」読んだ - $shibayu36->blog;
実践Scala入門 作者: 瀬良和弘,水島宏太,河内崇,麻植泰輔,青山直紀出版社/メーカー: 技術評論社発売日: 2018/10/27メディア: 単行本(ソフトカバー)この商品を含むブログを見る 読んだ。この本は「コンパクトなコップ本」を目指したと最初に書かれているとおり、この本を読めばひとまずScalaを書けるようになるなと思っ...
4年11ヶ月勤めたドワンゴを退職しました。2019年1月17日が最終出社日で、1月中は有給休暇消化期間で、2月から新しいところで働きます。 4年11ヶ月と書きましたが、半年間育児休暇をとっていたので、その期間を引くと実際働いたのは4年5ヶ月です。 4年制の大学(の文学部書道学科)を卒業して、新卒でとある会社に就職して...
イマドキと言われる言語機能について | κeenのHappy Hacκing Blog
産業界で比較的最近導入されるようになった言語や言語機能は学術界では古くから研究されていたものも多くあるようです。 例えばRustやScalaにあるトレイト、Swiftにあるプロトコル、Goのgoroutineやチャネルなどは遡ると1970年代、80年代頃に提案された機能にあたります。 本発表では産業界でイマドキと言われる言語機能...
新卒が初めてScalaを触って詰まったところと解決方法 - MicroAd Developers Blog
18新卒でマイクロアドに入社した山城です。 今回はScalaを一切触ったことのない僕が、いきなりScalaで開発を初めて困ったところと、どうやって解決していったのかをセットにして紹介したいと思います。 初心者がどこで詰まるのかというところ、どのようにして解決したのかを見ていただいて、新人にScalaを教える際の参考...
Scalaで論理体系を作る話 - 1. 命題論理その1 - Qiita
Scalaの型システムには興味深い型が存在します。Scalaの型で述語論理を表現できないか、表現できるとしたら集合論をScalaで書けてしまわないだろうか、という興味から、Scala-proofsというプロジェクトを立ち上げて実験をしています。この記事は、Scala-proofsの中で使用する論理体系の表現手法について解説します。 Sca...
Java/Scala用機械学習ライブラリ「Smile」を使ってみる - たけぞう瀕死ブログ
手軽に使える機械学習ライブラリというとPythonのscikit-learnが有名ですが、Java/ScalaでもSmileというライブラリがあったので軽く試してみました。 github.com まずはリリースページからzipファイルをダウンロードして適当な場所に展開します。bin/smileで対話シェルが起動します。 サンプルデータがついているのでこ...
Scala + CleanArchitecture に Eff を組み込んでみた – PSYENCE:MEDIA
この記事は RECRUIT MARKETING PARTNERS Advent Calendar 2018 の投稿記事です。 こんにちは。スタディサプリENGLSHでサーバーサイドとインフラを担当している松川です。 CleanArchitectureにEffを組み込むことによって、これまでモナドトランスフォーマーでは辛かった数種類以上のモナドを取り扱う処理をフラットに書け...
JJUG CCC 2018 Fallのいくつかのセッションで型についての話があったので書きたくなった。 この話はJavaやScalaみたいな静的型の世界の思想で、多分Rubyとかでは違う思想だとおもう。 Javaを書いてるときのおれきゅーの脳内 型を定義して取りうる値を狭めることで 間違った使い方ができないようにする ことを最初に考え...
ScalaをGraalVMでネイティブイメージにコンパイルしてAWS Lambdaでサクサク動かす - だがそれがいけなかった
このエントリは ただの集団 Advent Calendar 2018 の18日目です。昨日は ugdark さんの 職種としてのスクラムマスターを調べてみた でした。 普段はScalaアプリケーションをECSやEC2で動かすことが多いのですが、ものによってはPythonやnode.jsでAWS Lambdaの関数ハンドラを書くこともあります。脳内コンテキストスイッ...
18分59秒をめぐって日本標準時の歴史をひもとくことに - エムスリーテックブログ
この記事は エムスリー Advent Calendar 2018 12日目の記事です。 こんにちは。エムスリー エンジニアリンググループの三浦です。基盤開発チームというところで各サービスチーム共用のシステムの開発保守に携わっており、そこで見つけた面白い動作を掘っていったら意外な知識にたどり着いたという話をいたします。 化け...
お題:最近のHaskell事情 Haskell のお仕事って言うても少ないよ。どこにあるの? Haskellのお仕事がなんで少ないねん問題 1.Haskellできる人がすくないよ 2.学習コスト(お勉強する時間と労力、本等)が高いよ 3.アルゴリズムや自然言語処理、数学をある程度知らないとできないよ 4.ライブラリーが偏ってるから手薄な分野...
「Apache Spark」×「Scala」で分散処理入門 : エキサイト公式 エンジニアブログ
皆さん、こんにちは。 ニュースチームの新卒1年目の永野です。 新卒と言いつつ、もう早いこと3月で入社して約1年が経ちました。 毎日新しいことに遭遇しては、挑戦する日々を過ごしてます。 WEBエンジニア大募集!エキサイトではWEBエンジニアを中途採用で募集しています。 ☆キャリアチェンジも大歓迎☆ 充実した研修...
Scalaを例に「仕様」パターンを実装する - yoskhdia’s diary
この記事はFOLIO Advent Calendar 2018の6日目です。 FOLIOでも使っている「仕様」パターンをScalaで実装する方法について紹介します。 「仕様」パターンとは Eric Evans氏とMartin Fowler氏による仕様パターンに関する論文があります。 https://martinfowler.com/apsupp/spec.pdf ※PDFです また、DDD本では次のように紹...
ScalaをGraalVMで動かす&ネイティブイメージ化する - Qiita
Scalaプログラマの観点からGraalVMを紹介、使ってみる。 GraalVM? GraalVMは、思い切り雑に紹介するとScala(Java)プログラムを高速化することが出来る(ことがある)らしい。 このあたりを読むともう少し詳しく書いてある。 https://www.graalvm.org/docs/why-graal/#for-java-programs 簡単にまとめておくと、特徴として...
サービスメッシュを実現するLinkerdの将来を、開発元のBuoyantが語る | Think IT(シンクイット)
サービスメッシュのLinkerdを開発するBuoyantのCEOにインタビューを実施。LinkerdとConduitとのマージなどについて語ってもらった。 サービスメッシュを実現するためのProxyであるLinkerdを開発するBuoyantのサンフランシスコのヘッドクォーターを訪問。Co-FounderでCEOであるWilliam Morgan氏にインタビューを行った。 ...
Scala関西Summit 2018に参加したので感想を書きます - MicroAd Developers Blog
マイクロアドのサーバサイドエンジニアの松宮です。少し時間が経ってしまったんですが、今年もScala関西Summitに参加してきましたのでマイクロアドと絡めながらつらつらと感想を書きたいと思います。 ちなみに今年はマイクロアドからも初めてスポンサードさせて頂きました! 今までもマイクロアドではScalaを採用したプ...
Scalaでの並行・並列処理戦略/strategy-for-concurrency-and-parallel-by-scala - Speaker Deck
Scalaでの並行・並列処理戦略/strategy-for-concurrency-and-parallel-by-scala
Scala でつくる証券会社とスタートアップ / Securities and Startup with Scala - Speaker Deck
All slide content and descriptions are owned by their creators.
実践GraphQL on Scala/Real world GraphQL on Scala - Speaker Deck
All slide content and descriptions are owned by their creators.
Scala でつくる証券会社とスタートアップ / Securities and Startup with Scala - Speaker Deck
All slide content and descriptions are owned by their creators.
class: center, middle # 明日から使える実践エラーハンドリング Scala関西Summit 2018 11/10 --- class: left, middle ## 自己紹介 * 中村 学(Nakamura Manabu) * [@gakuzzzz](https://twitter.com/gakuzzzz) * Tech to Value 代表取締役 * Opt Technologies 技術顧問
実践Scala入門を書いた (共著) - Septeni Engineer's Blog
こんにちは。Scalaのプログラミングができる河内です。 共著という形で取り組んでいた実践Scala入門が、先日、技術評論社から発売されました。 なお、同僚の青山さん、技術顧問の麻植さんも共著者として名を連ねています。 gihyo.jp 私が執筆に関わろうと思ったのは、大げさな表現になりますが、幸せなエンジニア生活を...
Scalaでのドメインモデリングのやりかた - Speaker Deck
All slide content and descriptions are owned by their creators.
Python標準実装より速い!?Oracleが作ったGraalPythonをJython・CPythonとベンチマークしてみた!! - Qiita
Python標準実装より速い!?Oracleが作ったGraalPythonをJython・CPythonとベンチマークしてみた!! GraalVM・GraalPythonとは GraalVMは2018年4月27日にOracleから公開された仮想マシンです. GraalVM is a universal virtual machine for running applications written in JavaScript, Python, Ruby, R, JVM-based la...
Ruby->Go->Scalaという習得順序がエンジニアの爆速の成長に最適である理由 - Qiita
先日、全ての開発者が学ぶべき5つの言語という翻訳記事を投稿させて頂いたのですが、「プログラミング力を伸ばす」という観点においては記事主の方のご意見に大きな異論はないものの、これからエンジニアを目指す初学者の方や経験の浅い方が「日本のWeb業界でキャリアを爆速で成長させるための最適な習得順序」としては...
「どの言語を学ぶべきか」という議論はエンジニア向け記事の定番ネタですが、HackerNoonに投稿された5 Programming Languages Every Master Developer Should Learnという記事がなかなか興味深かったので翻訳してみました。 (2018/11/04追記) こちらの記事に関する「別視点からの意見」として下記のような記事を追加いた...
2018年版: Jupyter Notebook で Scala を動かす
Jupyter Notebook 便利ですよね! REPL感覚で使えるけれど、REPLより使い勝手良いし、セルごとに何度もやり直しできるし、リンクを共有すればコードもさくっと共有できます。 Scala にも spark-notebook や Apache Zeppelin などの ノートブック形式Webアプリケーションがいくつかありますが、いつも使っている Jupyter ...
Scalaで作るPureでFunctionalなレイヤードアーキテクチャ - Fringe81 enginner blog
こんにちは、エンジニアの小紫です。 今携わっているプロジェクトで採用しているScalaでの実装テクニックを紹介します。 これはなに レイヤードアーキテクチャにおけるドメイン層の実装から、関数型プログラミングの力を使って実装の都合を取り除いてピュアなドメイン実装を目指します。 そのリファクタリングの過程を解...
Scala x Ruby x Node.jsで作るサーバーサイド 「クラウド電子カルテ」開発における光と闇 - ログミーTech
Scala x Ruby x Node.jsで作るサーバーサイド 「クラウド電子カルテ」開発における光と闇 クラウド電子カルテを支えるテクノロジーの光と闇 2018年10月5日、エンジニア向けの勉強会に特化した書き起こしメディア「ログミーTech」が主催するイベント「ログミーTech Live」が開催されました。第1回となる今回のテーマは「...
ドメイン、ドメインモデル、ドメインオブジェクトという概念が登場する書籍一覧です。 書籍名 著者 初版 発行 ページ数 ドメインモデルの表記 備考
sbtサーバとRustで書かれたsbtクライアント - たけぞう瀕死ブログ
Scalaのビルドツールsbtには1.xからLanguage Server Protocol 3.0に対応したサーバモードが実装されており、常駐させたサーバに別プロセスから接続してコマンドを実行することができます。サーバモードはIDEやエディタプラグインのために実装されたものだと思いますが、sbtにはクライアントモードも実装されており、コマ...
AirframeによるScalaプログラミング:「何ができるか」から「何を効果的に忘れられるか」を考える
要点その1: MessagePackを活用すると汎用的なデータ変換が実現でき、データフォーマットごとにオブジェクトマッパーを実装する手間が省けること。スライド中に紹介していますが、応用範囲はデータの変換、保存、転送だけでなくHTTPサーバーの実装と非常に広いです。 、MessagePackを使う利点は、以下の3つ: 様々なデ...
プログラマのためのモナド(圏論) / #cat4pg - Speaker Deck
プログラマのための圏論勉強会 - connpass #cat4pg (Oct 16, 2018) https://cat4pg.connpass.com/event/100728/ ---------------------------------------------------------------------------------- ■ 前回 圏論とSwiftへの応用 / iOSDC Japan 2018 - Speaker Deck https://speakerdeck.com/inamiy/iosdc-japan-1 iOS...