ZIO 2.0について

この記事はScala Advent Calendar 2021の17日目の記事です。 qiita.com 参考 この記事では下記のサイトから説明、コード、画像を引用しています。 ZIO 2.x Migration Guide | ZIO Advances In The ZIO 2.0 Scheduler ZIOとは ZIOは純粋な関数型プログラミン…

ZIOのZLayerについて

この記事はただの集団 Advent Calendar 2020の23日目の記事です。 adventar.org 本記事では、ZIOのDI機能であるZLayerの使い方を説明します。 対象読者はZIOをある程度知っている方を想定しています。 ZIOについて詳しく知らない方はまず公式ページのドキュ…

PlayFramework+GuiceでDIしているときに型クラスインスタンスでインジェクションされたクラスを使用する

PlayFrameworkでGuiceを使ってDIしているときに、 型クラスインスタンスでインジェクションされたクラスを使う方法を調べました。 以下のようなコードがあるとします。 // Factory.scala trait Factory[T] { def create: T } case class Type1() object Type…

社内の検索技術勉強会ふりかえり

これはただの集団 Advent Calendar 2019の16日目の記事です。 adventar.org 昨日はTapanさんのMonixの話でした。 medium.com 最初はZIOについて書こうと思っていたのですが、 TapanさんのMonixの話と内容がほとんどおなじになってしまったので 社内で行って…

Go言語でフレーズ検索を実装してみる

この記事はただの集団 AdventCalendar PtW.2019の6日目の記事です。 昨日はumeneriさんのGKE上にElasticsearchとcerebro環境を構築するでした。 本記事では、Golangを使って検索エンジンのフレーズ検索機能を実装してみます。 フレーズ検索とは 文章の集合か…

Godogの実装を見てみる

Go

この記事はただの集団 Advent Calendar 2018の23日目の記事です。 昨日は hajimeniさんのプログラム上で時間を扱う際に気をつけることでした。 Advent Calendarもいよいよ終りが見えてきました。 本記事では、GolangでATTDを実践するためのツールであるGodog…

TDDをやっていて学んだこと

TDD

最近、TDDを会社でやっているので、学んだことをまとめておく。 学んだこと TDDでは、まずテストを書き実行する。するとエラーになるので、すぐさまテストを通るようにコードを実装する。 テストが通るようになったら、リファクタリングをする。そしてまたテ…

「エンジニアリング組織論への招待」を読んだ

7月に転職して規模の大きいチームで働くことになった。 今まではスタートアップなどほとんど一人や数人で開発することが多く、 チームでの開発を行った経験が少ないため、勉強のためにエンジニアリング組織論への招待という本を読んでみた。 gihyo.jp 感想 …

ElastiCacheRedisのCloudFormationで混乱したところを整理した

祝!はてなブログhttps化!httpsになったのでブログを書いていこうと思います! CloudFormationでElastiCache Redisクラスターを構築した時に混乱したことを整理してみました。長くなってしまったのでまとめだけ見れば問題ないと思います。 はじめに CloudFo…

今週勉強したことまとめ(2017/12/11 ~ 2017/12/17)

Docker 祝k8s on AWS!ということで一番基本的なDockerネットワークについて調べてみた AWS EC2 SpotInstance AWSで使用されていないリソースを対象に、需要と供給にあわせて、価格が変動するインスタンス 通常のインスタンスより安く購入できる 価格は常に…

今週勉強したことまとめ(2017/12/04 ~ 2017/12/10)

今週はECSの使い方を手を動かしながら学んだ。 細かいドキュメントは読み込めていないので今後読んでいく必要があるが、 最終的にCircleCIでDockerイメージをビルドしECRにpush後、ecs-deployコマンドで開発環境にデプロイするという流れを自動化するまでで…

今週勉強したことまとめ(2017/11/27 ~ 2017/12/03)

今週はAWS re:Inventが開催され様々な新サービスが発表された。 サービス数が多すぎて全部を追うことができていないが、 今回特に気になったのはコンテナ周りのサービスで Managed KubernetesのEKSとFargeteという二つのサービスが発表された。 アプリケーシ…

今週勉強したことまとめ(2017/11/11 ~ 2017/11/26)

勉強したことについてメモしたものを一週間ごとにまとめてみることにした。 ブログのネタになりそうなものがあれば、ここから記事にまとめるところまでいけると良い。 初回は2週間分になってしまっている。まとめ方が難しい。 Java Arrays.asListは固定長の…

Spring Boot開発時に見ると良い記事まとめ

Spring Boot開発時に参考になるドキュメントのまとめです。 general 公式 SPRING INITIALIZR Spring Bootのはじめの雛形を作る トランザクションマネージャ そんなトランザクションマネージャで大丈夫か? Bean Beanとは一体何者なのか? Docker Spring Boot…

DockerでNginxをシュッと構築する

フロントエンドでちょっとした作業があった際に、ぱっと確認するためにWebサーバが必要だったのですが、 そこでDockerを利用したところ大変便利だったのでメモを残したいと思います。 やりたいこと ローカルにコマンド一発でWebサーバーを構築したい 手元の…

Firebaseでチャットアプリのサンプルを作った

TL;DR チャット機能があるアプリをAWSで作ろうとしたが意外と難しそうだったのでFirebaseを試してみた モチベーション AWSの導入事例では ALBの下にEC2やコンテナを並べてRedisのpub/subで…みたいなことをしていて結構大掛かりになりそうでした。 これは大規…

Amazon Cognitoの認証フローを調べた

Amazon Cognitoを使う機会があったので調べたことをまとめました。 Amazon Cognitoとは Amazon Cognitoはユーザの認証やデータ同期を提供するサービスです。 以下の3つの機能があります。 Cognito User Pool AWSが提供する認証システム Cognito Federated I…

2016年振り返り

大晦日なので2016年を振り返りたいと思います。 仕事 2016年で一番大きいかったのはやはり社会人になって東京に移動したことです。 以下仕事内容を時系列に従って振り返ってみます。 4月に入社すると二週間研修が行われ、その後すぐに案件に配属されました。…

crateをcrates.ioに公開してみる

これはRust その2 Advent Calendar 2016 - Qiita11日目の記事です。 このエントリではcrateをcrates.ioに公開する方法を紹介します。 crates.ioとは Cargo用のセントラルパッケージリポジトリです。 https://crates.io/ Cargoはこちらから依存するcrateを取…

Rustの勉強をはじめました

最近よく聞くようになったプログラミング言語Rustの勉強をはじめました。 Rustとは Mozillaが開発しているプログラミング言語 システムプログラミング向け なぜRust? システムプログラミングを勉強したかったので 関数型っぽくもかけそう 勉強題材 プログラ…

Go言語初心者向けハンズオンに参加してきました

Go

Go言語初心者向けハンズオンに参加してきたので内容と感想を書きます。 概要 tenntennさんが主催でteratailさんが会場・サポートを提供してくださいました。 connpass.com 対象は主にA Tour of Goを終えたようなGoに少し触ったことのある人で、 Go言語自体の…