田舎で並行処理の夢を見る

試したこと、需要がないかもしれないけど細々とアウトプットしてます

【並行処理vs逐次処理】プロセスを事前に立ち上げることによって高速化されるのか【めちゃ速】

前回の話 「並行コンピューティング技法」を読み進める中で「並行和」の実装をElixirを用いて行なった。何とか実装が完了した並行和の処理を複数プロセスを立ち上げてチャンクを分割して実行する並行処理(parallel)と、チャンクを分割せずにメインの1つのプ…

【並行処理vs逐次処理】Elixirで実装した並行和と逐次和をベンチマーク測定をして比較した結果【完全敗北】

前回までのお話 「並行コンピューティング技法」という書籍を読み進める中で「並行和」という並行処理にてデータの要素の合計値を求めるアルゴリズムをElixirを用いて実装してみた。何とか動くところまで作れたものの、実行速度がどれだけ逐次処理と異なるか…

【第1回: データ分析xブログ】データ分析の力でPV数は増やせるのか。現状を分析して目標を立てるまで

この記事を書いた理由 GoogleアナリティクスやGoogleサーチコンソールといった優秀なツールがあり、使い方を解説する記事が多数ある一方で どう使えばPV数が増えるのか 収益を生み出すには何に注目するのか といったテーマの記事が非常に少ないことに気づい…

【第17回清流elixir勉強会】Elixirを用いた並行和アルゴリズムの実装

トピック あけましておめでとうございます。1月2月は色々と忙しくて、全く清流elixirにて勉強会を開催できず... 2ヶ月ぶりの開催となりましたが常連の方、新規の方、リモートでの接続、多くの方に参加して頂けました。ありがとうございました。ハッピーター…

【並行コンピューティング技法】第3章のまとめ

前回までのあらすじ 実際に並行処理を記述する際にどのように手法を決めて実装していくのかという話が第2章のメインであった。 並行処理の方針を決める手法は以下の2通りで、第2章ではそれぞれの特徴やマナー、サンプルに触れながら内容が進んでいく。 タス…

【並行コンピューティング技法】第2章のまとめ

前回までのあらすじ 以前から気になっていた「並行コンピューティング技法」を衝動買い。全体の構造を読み解き、どんな知識がこの本から得られるかを考察した。合わせて、第1章を読み、内容を簡潔にまとめた。第1章は大きく以下のような内容を扱っている 並…

【並行コンピューティング技法】全体の構成と得られる知識 & 第1章のまとめ

今回の購入物 前から買おうとは思っていたが、読む時間ないなぁと手を出さずにいた「並行コンピューティング技法」をたまたま立ち寄った本屋にて発見し、思い切って購入。最近、学習に対するモチベーションが下がっているので気持ち新たにスタートするために…

ElixirのString.contains?で第1引数にbinaryを第2引数に日本語ひらがなを与えるとfalseになる理由についての調査報告

事の発端 たまたまElixirでhttp responseのbinary情報に対して、特定の日本語が含まれているかという判定式を記述していたところで、この現象に遭遇した。 iex> body = <<201, 202, 197, ...>> iex> String.contains?(body, "いちご") false 間違いなくbinar…

【紅茶初心者がゆく】紅茶を上手く淹れる方法を再び検証してみた

前回までのあらすじ 良い機会だったので紅茶を茶葉から淹れることに初めて挑戦した。結果は惨敗。お世辞にも美味しいと言える紅茶を淹れることは出来なかった。それから、筋トレや四大行にひたすらに取り組んだわけではないが、様々な淹れ方を試して、「美味…

【擬似実装コード有り】Pythonでswitch構文っぽいものを表現する方法について

かゆい所に手が届くswitch構文 別にswitch構文がなくても、おそらくその処理は工夫次第で記述することが可能だろう。しかし、golangやjavascriptに見られるswitch構文を用いることで少なくとも可読性は上がるし、拡張性もif elseの組み合わせよりは良いはず…