たにしきんぐダム

プログラミングやったりゲームしてます

tech

Twitter上でのプログラミングに関する論争から距離を置いている

xkcd: Duty Calls Twitter(X)では日夜ソフトウェアエンジニアたちが活発に最強のプログラミング言語や設計やコーディングスタイルなど、答えのないなにかについて意見を交わしている。こういう話が好きな人はやると良いし、自分の著作などに対して間違った意…

todo.紙

todo.紙 これまでいろんなTODOリストを試してきたけど、最近紙で仕事やソフトウェア関係の直近やることリストをまとめている。 これまで5年くらいは Todoist、TickTick、Todo.txt、Google Todo リストを使っていたのだが、どれもいまいちしっくり来なかった。…

4年ぶりのScala国際カンファレンス、Scala Days Madrid 2023 に参加しました!

画像元: https://twitter.com/scaladays/status/1701616520546206039 Scala の世界最大のオフラインカンファレンス、Scala Days Madrid 2023 に参加してきました。Scala Days は例年に2回、アメリカとヨーロッパで開催されており、今年は Madrid での開催で…

(メモ)複数のオブジェクトファイルが同じ compilation unit DIE を持っていてmtimeが同じだと、Darwin linkerが重複したオブジェクトファイルのデバッグ情報を無視する?

zenn.dev に移しました github.com Darwin linker はデバッグ情報を最終成果物のバイナリにリンクしない。その代わりに、リンクされたオブジェクトファイルへの絶対パスとタイムスタンプを含む N_OSO タイプの symbol を出力バイナリのシンボルテーブルに出…

Bazel 入門 (for Scala developers)

Scala Advent Calendar 2022 14日目の記事です。今日は Bazel について書きます。 (ちょっと自動翻訳っぽい日本語ですが、実際そうで、よそで英語で(自分で)書いた文章を日本語に適当に訳して投稿しています) プロジェクトのビルド時間は、チームの開発効率…

Tests as Documentation

production code の設計についてはよく議論される一方、ユニットテストをどう書くべきかについてはあまり議論されることが少なく。とにかくカバレッジが高ければヨシみたいな感じで軽く扱われていることが多い気がする。 その結果、テストを書くときやとりわ…

GSoC 2021 に参加して Scala3 の開発環境を改善させてもらった

2021/06 から参加していた Google Summer of Code 無事修了しました。 GSoC では Add synthetics and symbol information for semanticdb in Scala 3 という題目で Scala3 の IDE や Linter のための基盤となる機能の開発をしていました。 今回の成果により …

Scala3 Interactive Compiler API で遊んでみる

この記事は Scala Advent Calendar 2020 - Qiita 18日目の記事です。 完全に自分用のメモなのですが、コンパイラ周辺ツールの Scala3 対応に備えて、dotty の interactive compiler API の使い方を一部学んでみたのでその学習メモを残しておく。 今回試した…

Scala の開発環境構築 2021

特に意味はないけどおしゃれかなと思って貼ったスクショ Scala Advent Calendar 2020 - Qiita 3日目です ここ2,3年の間にScalaの開発ツールチェーンは進化を続けていて、Scalaの開発体験はめちゃくちゃ良くなってきています。例えば、数年前だと IDEは基本的…

Coursera / Sequence Models (week2) 受講メモ (Natural Language Processing & Word Embeddings)

Deep Learning Specialization 5つ目のコース www.coursera.org Coursera / Neural Networks and Deep Learning 受講メモ - たにしきんぐダム Coursera / Improving Deep Neural Networks: Hyperparameter tuning, Regularization and Optimization 受講メモ…

Coursera / Sequential Model (week1) 受講メモ (RNN/LSTM/GRU/BiRNN/DeepRNN)

Deep Learning Specialization 5つ目のコース www.coursera.org Coursera / Neural Networks and Deep Learning 受講メモ - たにしきんぐダム Coursera / Improving Deep Neural Networks: Hyperparameter tuning, Regularization and Optimization 受講メモ…

Coursera / Structuring Machine Learning Projects 受講メモ

Deep Learning Specialization 3つ目のコース www.coursera.org Coursera / Neural Networks and Deep Learning 受講メモ - たにしきんぐダム Coursera / Improving Deep Neural Networks: Hyperparameter tuning, Regularization and Optimization 受講メモ…

Coursera / Improving Deep Neural Networks: Hyperparameter tuning, Regularization and Optimization 受講メモ

データの正規化、様々な正則化手法、gradient descent with momentum や Adam などによる学習の高速化、batch-normalization、gradient checking、ハイパーパラメータチューニングの基本的な手法など。振り返ってみるとかなり盛り沢山な内容だった。jupyter …

Things happening before start coding with Metals ~behind the curtain of daily coding~ #ScalaTokyo でLTしました

Scala Tokyo 2020/09/25 開催の scala.tokyo で Things happening before start coding with Metals ~behind the curtain of daily coding~ という気取ったタイトルのLT(10分)をしました。 イベント主催の皆さん、21時を回っていたのに僕の発表を最後まで聞…

Coursera / Neural Networks and Deep Learning 受講メモ

Deep Learning を勉強しようと思い、Coursera の Deep Learning Specialization を受講し始めた。 ある手法がうまくいく/うまくいかないことのイメージを説明してくれたり、実装に際してのtips and tricksも教えてくれるのが良い。 解析や線形代数を知らない…

プレーンな Aho-Corasick を実装したけどそんなに早くなかった

TL;DR TypeScript で Aho-Corasick を実装しました https://github.com/tanishiking/aho-corasick-js ベンチマークとってみたところだいたいのケースで普通のTrieで複数パターンマッチするほうが早かった https://github.com/tanishiking/aho-corasick-bench…

2019年12月と2020年1月のOSS活動記

レビュー結構やってました 英会話とか仕事がちょっと忙しかった metals結構わかってきた。 scalameta/metals #1174 Sort auto-completed exhaustive match'es by declaration order sealed abstract class Test case object Foo extends Test case object Ba…

良い感じに詰めて整形してくれる JSON pretty-printer「jpp」を作りました

jpp というJSON Pretty-Printer を作りました。 github.com このコマンドはJSONを要素ごとに1つ1つ改行するのではなく、画面内(もしくは指定した幅)に収まる限りできるだけ改行を挟まずに要素を表示します。 そのため、例えばarrayの中身に大量の要素が入っ…

Instant scalafmt startup using SubstrateVM

github.com scalafmtはscalametaを利用したscalaのコードフォーマッタです。intellij plugin・sbt plugin・cli・mavenやgradle plugin といった様々な形で提供されており vim-autoformatなどを用いてvimからフォーマットを実行したり https://scalameta.org/…

ScalaMatsuri 2018 / OSS Hackathon に参加しました

ScalaMatsuri 2018|日本最大級の Scala のカンファレンス 2018年3月16日(金)の Scala OSS ハッカソン / 2018年3月17日~18日の Scalamatsuri2018 に参加しました。楽しかった! OSS ハッカソン blog.scalamatsuri.org ソイヤッて申し込んで良かった。scalike…

Bitcoin SPV Wallet を Golang で実装してみた

Golang と Blockchain 技術の勉強に、こちら の記事を参考にして Bitcoin の SPV Wallet を Golang で実装してみました。 github.com 結構雑ですが、とりあえず以下のことができます。 Bitcoin Address の生成 UTXOをかき集めて残高を計算 UTXOをかき集めて…

Golangで簡易的ワーカー/ジョブキュー

goroutineの数を制限しつつ並列にジョブを実行したい ジョブは定期的に投入できたい ジョブが空っぽになっても終了しないで欲しい SIGTERMとか送ったら実行中のジョブが完了するまで待ってから終了してほしい というようなものが欲しくなることが最近よくあ…

JavaScript とクロスブラウザでの IME event handling (2017年)

この記事は CAMPHOR Advent Calendar 2017 22日目の記事です。 昨日は @ryota-ka による Type-level TypeScript - ryota-ka's blog でした。 CompositionEvent が多くの主要ブラウザでサポートされた2017年冬なら、JavaScriptで日本語入力に対応したちょっと…

Python機械学習プログラミング を読んだ

機械学習に入門しようと思い、重い腰をあげて実践的な入門書として評判が良さそうだった「Python機械学習プログラミング」を読みました。 この本を読んでやっと機械学習分野の全体像がうっすら見えてきて、やっと入り口に立てたなと思います。読んで本当に良…

ISUCON7予選敗退した

ISUCON7 開催&日程決定! #isucon : ISUCON公式Blog (開催から2週間も経ってしまった...!)(ポエミーな感じです) ISUCON7予選に id:astjとid:aereal と id:tanishiking24 との3人で「秒速5000兆クエリ」というチームを組んで参加しました。最終スコアは 9203…

トランザクション技術とリカバリとInnoDBパラメータを調べた

トランザクションはACID特性を満たすと言われている。 そのうちA(Atomicity)はトランザクション内の操作をAll or Nothingとなるよう保証し、トランザクションが中途半端に実行されて(アプリケーションレベルから見た)データの整合性が失われることを防ぐ特性…

Pythonでの文字コードの取り扱い

定期的にこの手の記事が上がってる気がするけどあげていく。 unicode型とかstr型とかいう言い方するとわかりにくいけど、データの実体がどういうものかわかってれば理解しやすいよね。 参考 Python - ドキュメント - Unicode HOWTO プログラマのための文字コ…

Scala関西Summit2017に参加/LTしました #scala_ks

参加しました!今年は4トラックもあってScalaコミュニティの盛り上がりを感じる良いイベントでした。 https://skug.connpass.com/event/62304/ ついでにScala製インタプリタをブラウザで動かす3分クッキングというタイトルでLTもしてきました。 今年のトーク…

JSで CodePoint 数えたい

ここで一句 JSで文字列を16bit単位ではなくUnicode Code Point単位で数える方法はいくつかあるが、結局2017年5月時点で(IE11のようなブラウザも含めて)ほとんどの環境で動作する方法はどれなんだろう。調べたのでまとめておきます、ご指摘あればどしどし(ง ‘…

Coursera の Algorithms on Strings 受けました

Cousera の Algorithms on Strings を受講していて、平日にお昼ご飯食べながらビデオを見たり休日とかに課題をやったりしていたのですが先日完走しました!(講義は4週分なのですが忙しかったり難しかったりで2ヶ月くらいかかってしまった) お金を払うと課題…