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-…