2020-01-01から1年間の記事一覧
複数のPCを使っていて、それぞれのPCに Visual Studio Code(VSCode)をインストールしているのですが、ブラウザ上でVSCodeが使えれば、セットアップ不要でいつでも同じ環境が使えて楽なのになぁと思うことがよくあります。 GitHub Codespacesが正にそういっ…
普段、プログラムを書くのにVisual Studio Code(VSCode)を使っているのですが、VSCodeを使わずブラウザだけで作業を完結させたくて、最近、ブラウザ上で動くエディタ・開発環境を試しています。 以前、Emacsというエディタを使っていて、そのショートカッ…
KubernetesのDashboardで「Not Found (404) the server could not find the requested resource」とエラーがでた時の対処方法
KubernetesのDashboardにログインしようとすると Not Found (404) the server could not find the requested resource とエラーが出た時の対処方法です。 原因 古いDashboardでは、「namespace」に「kube-system」が使われていましたが、最近のDashboardでは…
今までWSL1を使っていて、WSL2が安定してきたら、そのうちWSL2を使ってみようかと考えていたのですが、今回必要に迫られてWSL2に移行しました。 WSL1からWSL2への移行と、それにまつわるDockerやX Serverの設定について、徒然なるままに書こうと思います。 …
create-react-app app-name --template typescriptで、TypeScriptのReactアプリを作って、VSCodeで編集しようとすると Cannot use JSX unless the '--jsx' flag is provided. ts(17004) というエラーが。 調べたところ、Reactのバージョン17から、TypeScript…
思い立ったらサクッとSPAサイトが作れたらいいなぁと思っていたのですが、Reactはちょっとしたサイトを作るにも大掛かりになってしまうので諦めていました。 しかし、最近ReactのRecoilを触り始めたのですが、Recoilを使うと、Reactも随分シンプルに書けるよ…
以前、AWS CloudFormationテンプレートを手書きしようとして挫折しました…。 www.kwbtblog.com その時学んだのは、CloudFormationテンプレートは人の手で書く類のものではなく、何かしらのツールを使って生成するものだなと。 そして、そのためのツールが、A…
シェルスクリプトで、JSONからデータを取り出すのにjqコマンドを使っています。 使い方をよく忘れるので、自分用使い方メモです。 基本 基本動作「標準入力から入力を受け取り、フィルターをかけて、標準出力に出力する」 .は入力値を表す フィルターはパイ…
Reactの状態管理はReduxが有名で、大衆迎合主義の自分としては、ご多分に漏れずReduxを使っています。 ただ、Reduxを使っていてしんどいなぁと感じるところがいくつかあります。 1つは、とにかくボイラープレートが多いことです。 ちょっとしたステート(変…
現時点でまだ正式リリースされていない、ReactのConcurrent ModeをTypeScriptで試す方法のメモです。 型関連でエラーが出ることが多いので、その対処方法をメモ書きとして記載しました。 インストール create-react-appでTypeScriptのテンプレートを作成し、…
JavaScriptでSQLiteを使う方法メモです。 あまり凝ったことはせず、必要最低限の機能に絞ってまとめました。 SQLiteそのものの使い方は割愛しますが、こちらが詳しいのでご参照ください。 インストール パッケージ「sqlite3」を使いました。 npm install sql…
はてなブログで投稿する時にカテゴリーを設定できるのですが、カテゴリーは複数設定できるので、タグみたいなものかなと適当に設定していました。 過去記事を見ることもなさそうだし、であればカテゴリーを使うこともなく、特に困らないかと思っていたのです…
追記 今は下記のもっと良い別の方法があるので、こちらを参照ください。 www.kwbtblog.com 時系列グラフの表示範囲の指定UIに 「デフォルトは直近X日を表示し、必要な時にカレンダーで任意の日付を指定できる」 といったものをよく見かけます。 しかし、Tabl…
JavaScript(TypeScript)で書かれたプログラムを、Go言語で書き直しました。 その動機や、書き換えた結果などを書こうと思います。 また、今回Go言語が初めてだったので、Go言語とはどういったものかや、Go言語をやってみた感想なども合わせて書こうと思いま…
子供がラーメン屋の味玉が好きで、家でも食べたいというリクエストがありました。 スーパーで味玉を何種類か買ってきたのですが、そもそもラーメン屋の味ではなかったり、ラーメン屋の味だけど、黄身が固まっていて、あのドロッとした独特感じが再現されてい…
ゴルーチン リーク Go言語はめちゃめちゃ簡単にゴルーチン(スレッドのようなもの)を作れるのが魅力です。 あまりにも簡単なので、あまり深く考えずゴルーチンを生成していたのですが、ゴルーチンはメインフローとは別に切り離されて実行されるので、デッド…
GCPのKubernetes(GKE)で、プログラムでエラーが発生したら、Slackやメールなどの外部に通知する方法です。 自分でエラー検知の仕組みを実装しなくても、GCPの設定のみで可能です。 大まかな仕組み プログラムでエラーが発生した時に、プログラムから標準エ…
沢山のタスクがあって並行処理したいのですが、全てを並行実行させると重くなってしまうので、同時実行数を指定しつつ並行実行させたい時があります。 恥ずかしながらJavaScriptでそれをやる方法を知らず、代案として、処理したいタスクを同時実行数づつに分…
普段Webのクローリングにpuppeteerを使っていて、puppeteerの実行はDockerで行っています。 クロール項目を追加することがあって、プログラムを修正してDockerでビルドして実行したところ、下記のようなエラーが出て動きませんでした。 /node_modules/puppet…
データ処理を行う時、ついつい面倒くさくて、全てのデータをメモリに読み込んでから処理しがちです。 データサイズが小さい時は問題ないのですが、巨大なデータを扱う場合は、メモリを大量に消費しますし、1つのデータの読み込みや書き込みが完了するまで、…
Tableauは直感的に、マウスのドラッグアンドドロップでグラフが作れるのが魅力ですね。 しかし、エクセルのグラフをTableauに移植しようとした時に、マウス操作だけではうまくグラフが作れない時があります。 そういったグラフは、TableauのLOD(Level of De…
Go言語を始めました。 何か新しいことを学ぶ時には、ワンストップで体系立て全体像が把握できる、書籍を読むやり方が好きです。 今回「Go言語による並行処理」を読んだのですが、とても良かったので、ここに感想を書きました。 Go言語による並行処理 並行処…
Go言語は、シンプルな関数を組み合わせてプログラミングをすることが多く、また、関数毎にエラーチェックが発生するので、全般的にコードが長くなりがちです。 ちょっとした事をしたい時でも、コードをそれなりに書く必要があるのですが、毎回ゼロから書くの…
Go言語は、シンプルな関数を組み合わせてプログラミングをすることが多く、また、関数毎にエラーチェックが発生するので、全般的にコードが長くなりがちです。 ちょっとした事をしたい時でも、コードをそれなりに書く必要があるのですが、毎回ゼロから書くの…
SVNを使っているプロジェクトがあって、そこから最新のファイルをダウンロードすることがあります。 あくまで指定したファイルが欲しいだけで、そんな、ちょっとファイルを取得したい時に使う、必要最低限のSVNコマンドメモです。 svnインストール sudo apt-…
Go言語は、シンプルな関数を組み合わせてプログラミングをすることが多く、また、関数毎にエラーチェックが発生するので、全般的にコードが長くなりがちです。 ちょっとした事をしたい時でも、コードをそれなりに書く必要があるのですが、毎回ゼロから書くの…
Go言語は、シンプルな関数を組み合わせてプログラミングをすることが多く、また、関数毎にエラーチェックが発生するので、全般的にコードが長くなりがちです。 ちょっとした事をしたい時でも、コードをそれなりに書く必要があるのですが、毎回ゼロから書くの…
久しぶりにAWS CLIをインストールしました。バージョン2になっているんですね。 一度設定すると中々触れる機会がなくて忘れてしまうので、自分用設定方法メモです。 基本的な仕組み ~/.aws/config でプロファイルを設定する ~/.aws/credentials でユーザー…
Docker Composeのプロジェクト名は、docker-compose.yamlファイルが置かれているディレクトリの名前になります。 しかし、ディレクトリを別の名前にしたいことは多く、そんな時はdocker-composeコマンドを実行する度に-p <project_name>オプションでプロジェクト名を指定す</project_name>…
Golangでプログラムを書いていて、プログラムが長くなってきたので、パッケージに分けてみました。 構成 ディレクトリ構成は下記のような感じ。 . |-- a | `-- a.go |-- b | `-- b.go `-- main.go 手順 方針 Go Modules を使って、プログラムを1つのモジュ…