selmertsxの素振り日記

ひたすら日々の素振り内容を書き続けるだけの日記

自プロダクトのRailsコーディング規約

参考図書 みんなでコーディングする上で、共通知識とする書籍を決める。 リーダブルコード Object Oriented Programing in Ruby Perfect Ruby Effective Ruby Service Objectsは使わない 理由としては、チームみんなで理解してやってくには難易度が高すぎる…

GitHubで自分が作ったPRを追うためにTrailerが便利だった

モチベーション GitHub上で、自分が管理していないリポジトリにPR投げると、その後どうなってるのか追い忘れることがあった。相手にとっても迷惑かなって思ったので、なんとかしたい。 結果 自分が作ったPRが見れる。便利 設定方法 1. Download https://ptso…

Azure ADでDatadog(Connectorなし)のSSO設定を行う

最初に Azure ADに DatadogのSSOを設定をしたい。 けれども、Datadog公式のドキュメントは2016年製で、微妙に設定内容が異なる。 https://help.datadoghq.com/hc/en-us/articles/216980686-How-do-I-configure-Azure-AD-as-a-SAML-IdP- なので、他のドキュメ…

技術書展4に参加しました

技術書展にて、本を出す側で参加させていただきました。 techbookfest.org TypeScriptを使って、AWS Lambdaを書く際の注意点などを記載しています。 実は、個人的に作っていたAWS Lambda製のchatbotについて記載したかったのですが、プライベートの諸々の予…

普通のLinuxプログラミング勉強会 9章 Linuxのディレクトリ構造

9.1 基本的な構造 ディレクトリツリーの標準規格であるFHS(The Filesystem Hierarchy Standard)に基づいて説明する /: ルートディレクトリ /bin: ブートするときに必要なコマンド (bash, ps, cp) /sbin: ブート時に必要な管理者用コマンド (mount, reboot, i…

「クラウドセキュリティ & プライバシー」読書メモ

目的 クラウド時代におけるIAMについて考える。 1章 クラウドコンピューティングの進化 産業時代、組織は電力を自給する必要があった。 電化によって、組織は電力を自給する必要がなくなり、 必要なエネルギーを必要なときに、必要な分だけ調達することが可…

JSとかRailsのログをWebPに変換してみた

概要 第4回SpeeeKaigiで、発表した資料です。 JSコードをWebPに変換してみました。 発表資料 speakerdeck.com コード github.com 参考資料 WebPの圧縮アルゴリズム Compression Techniques | WebP | Google Developers

「成長する企業はなぜSSOを導入するのか」を読んだ

所感 SSOについて、必要性と実現方法の概要を説明している本です。SSOって何?って人がいたら、エンジニア・ディレクター問わず読んでおくと良さそうです。 Single Sign-Onとは 各種サービスへのアクセスを一つにとりまとめるもの。 before 社内で利用される…

AWS Startup Daysでちょっとお話ししてきました

3/12 日のAWS Startup Daysというイベントでちょっとお話しさせていただきました。 aws.amazon.com お話しさせて頂いた内容は Serverlessで作るchatbot。 弊社SpeeeにおけるServerlessの事例と一緒にお話しさせていただきました。 github.com 発表資料はこち…

LocalでDynamoDBを起動する

モチベーション aws lambdaの開発において、開発効率の向上のためにlocalで動作が確認できるようにしたい。 そのためには、localでDynamoDBが動くようにしたい。ここでは、そのために必要な方法について記述する。 DynamoDBの起動 DynamoDB ローカル (ダウン…

mongoDBでテーブル作成、アイテム作成、アイテム取得をやってみる

モチベーション GitHub - selmertsx/serverless-prpolice 自分が作っているサービスでmongoDBを触ることになったので、下記の項目を理解したい。 mongoDBの概要 mongoDBにおける基本的な操作の把握 Tableの作成 Itemの作成 Itemの取得 mongoDBの概要 Table、…

ふつうのLinuxプログラミング(4章)

学べること パーミッション 端末 ディレクトリのパーミッションの挙動は下記の通り。 read => ファイル一覧が取れる write => ディレクトリの中にファイルを作れる execute => そもそもファイルにアクセスできない 僕達がコマンドラインとして認識しているの…

TypeScript 2.7での esModuleInteropをつけたコンパイルの挙動

モチベーション GitHub - selmertsx/serverless-prpolice 個人プロダクトの開発中に、TypeScriptのコードが buildすると実行できるのに、Jestのテストだけコケるという問題が発生した。その原因を調査したかった。 前提条件 "typescript": "^2.7.1" 問題の内…

20180208の学び

最初に これは個人プロダクトで学んだ内容をまとめたもの。 GitHub - selmertsx/serverless-prpolice 忘れる前に書いておくけれども、後でちゃんと整理する 学んだ内容 AWS cloudformation でlambdaをdeployする前に、awsのs3にbucketを作っておかなければな…

一からtslintの設定をする方法

モチベーション tslintについては、これまで誰かが作ってくれた設定ファイルを使ってきました。 しかし、そろそろちゃんと理解したいと思い、諸々調べてみました。 この資料に tslint を一から設定する方法を記載し、自分の理解を整理しようとおもいます。 ※…

ふつうのLinuxプログラミング読書 (3章)

ファイルとは 何らかのデータを保持し 何らかのデータとは、テキスト、画像、 パーミッションや更新時間などの付帯情報を保持しており 名前で指定して閲覧・実行ができるものである ファイルの種類 Regular File 画像。動画。テキストなど。 Directory この…

JavaScriptで正規表現(入門レベル)

モチベーション 現在、iioptという画像圧縮ツールを作成しています。このツールの一つの機能として、git pre-commit にhookしてcommit対象の画像を抽出し、圧縮が必要であれば圧縮するという機能を開発中です。 本記事は、そこで学んだ正規表現の書き方につ…

ふつうのLinuxプログラミング読書会 (第2章)

2章: Linuxカーネルの世界 最初に 本資料は、学習者が本を元にサマリーを書いたものです。 分量はものすごく減っていますし、間違ったことを書いている可能性もあります。なので、気になった人は直接本を読んで頂けると幸いです!! 知識として学べること OS…

nodejsでdebuggerを動かす

モチベーション typescript & vscode & jest環境でdebugするにあたって、debuggerを使っていたが、そもそもdebuggerって何よ。ってくらいの理解だったので、この機会に色々確認したかった。 debuggerの実行方法 https://nodejs.org/dist/latest-v6.x/docs/ap…

ふつうのLinuxプログラミング読書 (1章)

第1章は下記のような構成になっています この本で学ぶことができること C言語開発の一通りの手順 情報の探し方と基礎知識について それぞれについて、簡単にまとめます この本で学べる内容 Linuxを構成するものやその世界を見て、Linuxに関する常識を身につ…

自作ライブラリのバージョンの上げ方

OSS

モチベーション github.com iioptのupdateをしたい updateに際して必要な対応を理解し、まとめたい ※ 自作ライブラリの管理は初めてなので、おかしい点があればコメント頂けるとうれしいです! libraryのupdateで必要なこと Libraryのバージョンを上げるとき…

TypeScript & Jest & VSCode環境でDebuggerを動かす

モチベーション TypeScript & Jest & VSCode環境でDebuggerを動かしたい。 ちゃんと設定ファイルを見れていなかったので、これを期に一通り確認したい 動作内容 test以外のコードでも、debuggerは効きます。 設定ファイル一覧 vscodeの設定 { "version": "0.…

Serverless Architecture を翻訳しようとしてFAQを読んだ

Frequently Asked Questions モチベーション serverlessに関して、体系的な知識を身につけたかったので、下記ページの読んで、自分のブログに理解した内容を掲載したかった。 martinfowler.com FAQの内容 Frequently Asked Questions Can I translate one of…

TypeScriptで書いたcliのnpm packageをリリースする方法

背景 人生初のnpm packageをリリースしました。 https://github.com/speee/iiopt 画像を所定のフォーマットで圧縮してくれるCLIです。現在はシンプルに画像を圧縮するだけですが、おいおい未圧縮の画像を検知する機能であったり、gitのpre-commitにhookして…

2018年の抱負 (4月まで)

2017年は、ふわっと目標を定めたので、ふわっと終わってしまいました。2018年は、もう少し具体的に目標を定めて、言語化し、達成してきたいと思っています。 目標のざっくり全体像 2018年は、一言で言うとエンジニアとしての基礎力を上げるということをテー…

2017年棚卸し

今の会社のエンジニアの人と、2017年の棚卸しをしようじゃないかという話しになりまして、この記事にまとめました。 2017年の目標 2017年は、下記3点の目標を持って仕事していました。 Ruby以外の言語でもサービスを作れるようにする 2016年当時は、Ruby以外…

JestにおけるbeforeAllの実行タイミングについて

TL:DR Jestにおいて、describe内外にbeforeAllを複数用意した場合の評価タイミングを確認した。その結果、beforeAllは上から順番に実行されていることが分かった。 モチベーション beforeAllを上書き指定できれば、綺麗に書けるテストを書いていた。 そのた…

parameter storeで環境変数管理したら便利だった

モチベーション GitHubで管理できないパラメータの管理。めんどうですよね。昔は.envrc.localで管理していたんですけれども、チームで開発するときは、ちょっといじると周りに共有しなければならなくて手間でした。そうしなくて済む方法をawsのparameter sto…

おひとりさま開発基盤グループでの業務の進め方

はじめに この記事は Speee Advent Calender の23日目の記事です。 こんにちは!ロボット大好き系エンジニア、開発基盤グループ所属の森岡です。 ガンダムはF91とクロスボーン以外はほぼ全て視聴済み、フロントミッションも携帯ゲーム以外は全てコンプリート…

parcelでd3jsを扱うことが出来ない (v1.2.1 で解決済み)

エラー内容 ➜ image-guideline git:(d3js) ✗ yarn parcel jpg_report.html yarn run v1.3.2 $ /Users/shuhei_morioka/project/dev_opt/design-guideline/image-guideline/node_modules/.bin/parcel jpg_report.html ⏳ Building... Server running at http://…