クラウド
[AWS(14)]
- AWS Amplify + React で必要最小限の認証サイトを作る方法メモ
- AWS Amplify のLambda FunctionをTypeScriptで書く方法
- Google Firebase と AWS Amplify の両方を使ってみた感想
- CloudFormationは、AWS CDKから使うのが正解な気がしてきた
- AWS CLI設定方法メモ
- AWS Glueを使った感想
- 結局 AWS Lambda と API Gateway の管理は Serverless にした話
- ServerlessでAPI GatewayのオーソライザーをCORS対応する方法
- Serverlessでオーソライザーを複数のLambdaから使うための設定方法
- AWS Redshift Spectrum / Athena を使った感想
- AWS CloudFormation を使ってみたが、人が扱える限界を超えていた話
- AWS アカウントをまたいでS3ファイルにアクセスできるようにする方法
- AWS S3でディレクトリ一覧をJSONで取得する方法
- AWSでサーバーレスな開発用シングルページアプリケーションを立ち上げる方法
[GCP(9)]
- Google Kubernetes Engine(GKE)で、コンテナでエラーが発生したらSlackやメールに通知する方法
- Google Cloud SDK(gcloud)で複数アカウント・プロジェクトを切り替える方法
- Google BigQueryのNode.js SDKで、Cloud Storageの複数のファイルをまとめてロードする方法
- Google Cloud Storageでファイルとディレクトリを区別する方法
- Google Cloud Storageのサブディレクトリ一覧をNode.jsで取得する方法
- MySQLのデータベースを、スキーマレスでパーティショニングしながらBigQueryにロードしてみる
- Google Cloud Storageのサブディレクトリ一覧をPythonで取得する方法
- Kubernetes(GKE)でHTTPS通信する方法(Ingress編)
- Google Cloud Platform でサービスアカウントをプロジェクトをまたいで使う方法
[Azure(4)]
- SQL Server(Azure SQL Database)に読み取り専用ユーザーを追加する方法
- Azure SQL Databaseで、データベースをまたいだクエリは書かない方がいい
- Azure Functions の初回起動が遅すぎて何だかなぁという話
- Azure Data Factory のパイプラインにAzure Node SDKからパラメータを渡す方法
- Microsoft Graph (Office365) API の、管理者アクセスできる、ユーザーなしトークンを取得して使用する方法
- Azure Active Directoryのシングルサインオン(SSO)で、アプリにログインできない時の対処方法
- Microsoft Graph (Office365) API のトークンを取得して更新する方法
- Microsoft(Office365)Flowから、Slackにファイルをアップロードする方法
- Microsoft (Office365) PowerAppsからFlowに、マップデータを渡して、配列データを受け取る方法
- Microsoft (Office365) Flow のデータの参照方法について整理する
- Microsoft (Office365) PowerApps 使い方メモ (その他)
- Microsoft (Office365) PowerApps 使い方メモ (データソース・コレクション編)
- Microsoft (Office365) PowerApps 使い方メモ
- Dropbox から OneDrive に乗り換えようと試してみたけどイマイチだった話
- Dropbox料金をケチろうとして、ビジネス向けOffice365のOneDriveに手を出して失敗した話
- Microsoft (Office365) Flow でエラーをキャッチする方法
- Office365にアクセスできる、なんちゃってAPIをノンコーディングで作ってみる
[Slack(4)]
- Slackで強制実名登録にしてよかったが、最初からプロビジョニングしておけばもっとよかった話
- AWS Lambda + Serverless Framework でサクッと Slack Bot (ボット)を作る方法
- Slack Bot(ボット)の作り方メモ
- Slack APIの使い方メモ
[クラウド(5)]
- TwitterのSearch APIの使い方で混乱したのでまとめてみる
- Twitter APIでデータ収集してみる
- クラウドを利用するということは、常時メンテコストが発生するということ
- SSO(シングルサインオン)サービスを色々試してみる
- 日本の祝日データを取得するのに苦労した話
電子工作
- ラズベリーパイをマウス・キーボード・モニターなしでPCだけで使えるようにする
- ラズベリーパイでUSB接続のPC音量調整ボタンを作る方法
- RaspberryPiでPuppeteerを動かす方法
- ラズベリーパイでDockerを使うのをやめた話
[電子工作(4)]
- Amazon Dash Buttonが販売終了になった
- ESP8266でAmazon Dash Buttonのボタンプッシュを検知する方法
- ESP8266の動作を安定させる方法
- PCからESP8266にプログラムを書き込む方法
プログラム言語
- JavaScriptでSQLiteを使う方法メモ
- JavaScriptで同時実行数を指定しつつ並行実行させる方法
- Node.jsのstream(ストリーム)の使い方メモ
- JavaScriptで、Excelで出力した、改行・カンマ付きCSVファイルを読み込む方法
- JavaScriptの日付演算ライブラリMoment.jsの使い方メモ
- JavaScriptでExcelファイルを、SheetJS(xlsx)を使って読み込む方法メモ
- PHPのmcryptで暗号化されたデータをNode.jsで復号化する方法
- Node.jsでAES暗号化・復号化してみる
- Puppeteerのクローリングで、Tableタグの表のデータをCSV出力する方法
- Passport.js の使い方メモ
- Node.jsを初めて学ぶにあたってハマったことや勘違いしていたことなど
- JavaScriptのArray.reduce()をもう少しちゃんと理解する
- JavaScriptのasync/awaitをもう少しちゃんと理解する
- TypeScriptのススメ
[Go言語(14)]
- JavaScriptからGo言語に乗り換えた感想
- GCPを使って、できるだけ楽してGo言語のgoroutineのリークを監視する
- 本「Go言語による並行処理」で非同期処理が楽しくなった
- Go言語の時刻演算パッケージ「time」の使い方メモ
- Go言語の正規表現・文字列操作方法メモ
- Go言語でJSONを読み書きする方法メモ
- Go言語でファイル・IO・ストリームを使った読み書き方法のメモ
- Go言語でローカルパッケージを使う方法(Go Moludes)
- Go言語でハマったことメモ(インターフェース)
- Go言語でハマったことメモ(値渡し・ポインター渡し)
- Go言語でハマったことメモ(slice・map・string)
- Go言語でハマったことメモ(マップに構造体を入れると「cannot assign to struct field ...」のエラーになる)
- Go言語でハマったことメモ(クラス・継承)
- Go言語でハマったことメモ(ポインターのアロー演算子がない)
コンピューターOS
- jqの使い方メモ
- SVNでちょっとファイルをダウンロードをしたい時のコマンドメモ
- Linuxでディレクトリ毎に環境変数を自動で変える方法
- Linuxでアンダーバーが入力できなくなった
- LDAPの使い方&Ubuntu18にインストール方法メモ
- LinuxのシェルをChromeみたいにタブで切り替えられるようにしてみる
- peco・fzfを使うとLinuxのシェルでの選択作業が劇的に楽になった
- UbuntuでOneDriveを使ってみる
- WSLのWindowsのフォルダの色が見づらいのを直す
- WSL に nvm で Node.js 環境を構築する
- Jenkins のバックアップ方法
- WSLにpyenvでPython3+Jupyter Notebook環境を構築する
- WSL(Windows Subsystem for Linux)のEmacsのカーソル表示がおかしいのは、もう少し待てば直るということ?
- テキストだけで図が描けるGraph::Easyの使い方メモ
- シェルスクリプトでコマンドを並列実行する方法
- クラウドのUbuntuに軽量GUI環境(Chrome・日本語入力表示・リモートデスクトップ)をセットアップする
[WSL(1)]
データ分析
[SQL(4)]
- SQL Server で月・週ごとに集計する方法
- SQLでグループの最後のレコードを取得する方法
- SQL Server でカレンダーテーブルを作る方法
- Google BigQueryでカレンダーテーブルを作る方法
- Tableauで「相対日付」と「日付の範囲」を同時に使う方法
- TableauのLOD(Level of Detail)の使い方メモ
- Tableauの書式設定について、Excelっぽいグラフ・表が描ける程度に整理する
- Tableau のダッシュボードで、簡単にグラフをグリッド配置する方法
- Tableauの棒グラフを日付の中心に表示する方法
- 手軽にクラスター分析するならPythonよりTableauがオススメ
[Spark(4)]
- Sparkのよく使うコードメモ
- Spark(Google Dataproc)からAWS S3にアクセスする方法
- Spark(Google Dataproc)からMicrosoft SQL Server(Azure SQL Database)にアクセスする方法
- Spark(Google Dataproc)からMySQLにアクセスする方法
[データ分析(1)]
- Googleアナリティクスをもう少しちゃんと使ってみる(Googleデータポータル Data Studio)
- Googleアナリティクスをもう少しちゃんと使ってみる(ディメンション・指標)
- Googleアナリティクスをもう少しちゃんと使ってみる(ユーザー・セッション・閲覧開始・ページビュー)
- Googleアナリティクスをもう少しちゃんと使ってみる
コンピューター技術
- Dockerのpuppeteerが突然動かなくなった
- Docker Composeで、コンテナ毎にログをタブに分けて表示する方法
- Jenkinsのdockerイメージは、Docker公式とJenkins公式の2つあるのか…
- Dockerfileのタグでlatestは使っちゃいけないなぁと思った
- Docker ComposeでNginx+PHP+MySQL環境構築メモ
- WindowsのDockerで複数のDocker Serverを運用する方法
- Dockerで無名のイメージをまとめて削除する方法
- KubernetesのDashboardで「Not Found (404) the server could not find the requested resource」とエラーがでた時の対処方法
- kubectlで複数のクラスターを切り替える方法
- Kubernetesパッケージマネージャー、Helmの使い方メモ
- Kubernetes(GKE)でLet's Encryptを自動更新する方法(ワイルドカード証明書)
- Kubernetes(GKE)でLet's Encryptを自動更新する方法
- ブラウザだけでVisual Studio Codeを動かしたくて、VSCodeもどきのTheiaを使って、ブラウザ上でコーディング・ターミナルできる環境を構築してみる
- VSCodeのTypeScriptのバージョンを変更する
- VisualStudioCodeでsettings.jsonを開く方法
[React(4)]
- Chakra UIでゆるくサイトを作ってみる
- Facebook公式のReactの状態管理ライブラリRecoilは、Reduxの代わりになりそう
- ReactのConcurrent Mode(並列モード)をTypeScriptで使う方法
- React Hooksが正式リリースされたので公式マニュアルを読んでみた
- GraphQLの使い方メモ
- 理屈で覚えて楽をする。Gitの使い方メモ
- クッキー・セッションの仕組みメモ
- YAML嫌いを克服する
- Chromeの印刷がおかしいのを直す方法
- Webサーバの設定だけでBasic認証の代わりにGoogle認証を使う方法
雑記
[ガジェット(1)]
[雑記(8)]