勉強した内容をMermaid.jsでマインドマップ形式でまとめる

はじめに この記事を読まれているエンジニアの皆様は日々多くの本やネットの記事をお読みになり、自己研鑽に励んでいることと思います。 テキストに限らず学習した内容を何らかの形でまとめることは記憶に定着させたり、理解を整理したり、思い出しやすくしたりとたくさんの意味があると自分は考えています。恐らく同じ様な考えを持つ方は少なくないかと思います。 そこで今回はMermaid.jsを使いマインドマップ形式で保存することで、見やすく手軽に管理する方法を紹介したいと思います。 準備 今回はMermaid.jsを使用するので予めインストールしておいて下さい。以前Mermaid.jsをインストールする方法や、ガントチャートを作成する方法をこちらで紹介しているので必要に応じて参考にして下さい。 マインドマップとは マインドマップとは下図の様なものです。思考を整理する時などに便利です。 これは「SQLアンチパターン」という本にある、「ジェイウォーク」についてまとめたものです。 この画像は元々テキストで書いているだけです。先程インストールしてもらったMermaid.jsを使うことでマークダウン記法のように書くだけで簡単にマインドマップを作成することが出来ます。 ちなみに「SQLアンチパターン」はとても良い本なので読んでいない方は絶対に読むべきお勧めな本です。 マインドマップを書いてみる 実は解説する程のことはほとんどなく、最初のノードをroot()で囲むだけで、あとは階層毎にインデントを深くしていけば自然とマインドマップが作られます。 mindmap ... 御覧になる | 御シェアする

zshでiTerm2の単語移動を設定する

はじめに 今回はiTerm2にて「左Option」+「←」「→」で単語移動を可能にする設定を行いたいと思います。 そもそも何故このキーマッピングが良いのかという話ですが、Macが標準ではiTerm2以外の操作で単語移動を「Option」+「←」「→」に割り当てているケースが多く汎用性が高いからです。 前提 ここでは下記のツールを使用しているものとして話します。 シェルzsh仮想端末iTerm2 iTerm2で設定すると失敗した ググるとよく出てくるのがiTerm2の設定から「左Option」+「←」「→」を、iTerm2の単語移動の標準ショートカットキーである「Escape」+「f」「b」にリマップするという方法です。 自分はこの設定では上手くいきませんでした。恐らくこの記事を読んでいる皆様も同じ結果だったのではないでしょうか。 具体的なエラー内容としては[Cとか[Dが標準出力に表示されるだけで単語移動が行われなかったのです。 .zshrcでキーバインドする そこで今回はiTerm2からリマップするのを諦めて、zshにキーバインドを設定する方法をとったところ動作しました。 下記の設定を.zshrcに追記して下さい。 bindkey... 御覧になる | 御シェアする

Macのミュージックでフォルダに保存したらライブラリに自動で反映されるやつ

はじめに 表題の通り、Macに標準でインストールされている「ミュージック」アプリの設定について話したいと思います。 長いことMacで音楽を聞くには、次の2つの工程が必須なものと思い込んでいました。 楽曲ファイルを用意するミュージックアプリで楽曲ファイルを取り込む 上の何が嫌かと言いますとやはり2つ目の工程が面倒で、出来ることなら楽曲ファイルを用意したら特定のフォルダに置くだけでミュージックアプリでそのままライブラリに取り組まれてほしいと思っていました。 でもどうせ無理なんだろうなと最近まで決めつけていたのですが、少し調べてみたら2秒で設定出来たので、備忘録としてまとめて置きたいと思います。 ミュージックアプリでフォルダを指定する 「環境設定」→「ファイル」→「ミュージックのメディアフォルダの場所」に任意のフォルダを指定します。 すると各種フォルダが自動生成されます。例えばFinder上では「”ミュージック”に自動的に追加」という名前で、ターミナル上では「Automatically... 御覧になる | 御シェアする

w3mというテキストベースブラウザでターミナル上でブラウジング

はじめに w3mとはページャ兼テキストベースのブラウザです。w3mを使うとアプリを切り替えることなく、ターミナル上で検索が可能になります。下図はw3mで「hoge... 御覧になる | 御シェアする

iPhoneとMacBookで本当に無限タップをする方法(タップ装置なし)

使うもの iPhoneMacBook 上記の2つがあれば無限タップが可能です。タップ操作をするiPhoneと、無限にタップを制御するためにMacBookを使います。 ※無限タップをする外部装置は必要ありません。 手順 iPhoneでレシピを作成 レシピを作成するに当たりスイッチが必要になります。「アクセシビリティ」→「スイッチコントロール」→「スイッチ」と移動します。更に「新しいスイッチを追加」を押して下さい。 このスイッチに関しては一旦適当で構わないので下表のような内容で作成します。 ソース画面画面フルスクリーンアクションタップ 次に「レシピ」へ移動します。「新規レシピを作成」を押してレシピを作成します。先程のスイッチを指定して下さい。名前・アクション・タイムアウトはここでは何でも良いです。 そして「レシピを起動」に今作成したレシピを指定します。 MacBookからiPhoneにスイッチを追加する 「システム環境設定」→「アクセシビリティ」→「スイッチコントロール」に移動します。「スイッチコントロールを有効にする」を有効にします。すると下図のようなスイッチコントロールパネルが表示されます。 「デバイス」をクリックすると同じネットワークに存在しているデバイスが表示されるのでご自分のiPhoneを選択して接続して下さい。※Bluetoothのペアリングなのか、iCloudへのサインインなのか、この「デバイス」の検索結果に表示される明確な条件は分かりません。申し訳ございません。 接続するとiPhoneをスイッチコントロールによる制御が出来る状態になります。この状態になったらMacBookとiPhoneの連携は成功です。 また下図のように新しくスイッチが追加されている筈です。 スイッチが追加されたら、先程のレシピに紐付けたスイッチをMacBookによるものに置き換えます。このスイッチの「アクション」を「カスタムジェスチャ」にして出来る限りの連続タップを登録しておきます。 これでもう一度MacBookのスイッチコントロールからiPhoneに接続して、その状態でスペースキーを押すとiPhoneでは登録されたレシピ(連打なら連打)が実行されるようになったかと思います。 Automatorでスペースキーを無限に押す ここまででスイッチコントロールでのMacBookからiPhoneの制御が可能になりました。正確にはMacBookのスペースキーを押すとiPhoneの画面タップスイッチが実行されるようになっています。 つまりMacBookでスペースキーを自動で無限に押し続けてくれれば良いということになります。今回はAutomatorというアプリを使用します。 「AppleScriptを実行」を追加して、下記のコードを記述します。 tell... 御覧になる | 御シェアする

ラズパイでトラフィックエクスチェンジする

はじめに 頂戴したものの使っていないラズパイをどう使うか悩んでいて、先日マイニングを試みたのですが何時まで経っても0コインのままだったので辞めました。 そこで今度はトラフィックエクスチェンジを行うことにしました。トラフィックエクスチェンジとはトラフィックエクスチェンジサイトに登録されているサイトをアクセスすることでそのサイトのPV数を上げる協力をする代わりに、報酬としてお金がもらえる仕組みのことです。 ラズパイでトラフィックエクスチェンジをするに当たり色々な調整を行いましたので、備忘録としてまとめました。 アカウント登録 まずはアカウントを作成します。 現時点だと「白熊」というトラフィックエクスチェンジサイトが最も効率が高いです。メールアドレスとパスワードを設定するとアカウント登録が出来ます。 下記バナーから登録するとお互いに特典ポイントが付与されますので是非宜しくお願いします。 準備が出来たらホームの「サーフ... 御覧になる | 御シェアする

/dev/urandomを活用する

/dev/urandomとは /dev/urandomとはランダムな文字列を出力する疑似デバイスファイルです。同様なデバイスファイルに/dev/randomもありますが、前者の方が推奨されています。 理由は/dev/randomのエントロピープールが有限なのに対して、/dev/urandomの方は再利用が発生するため無限だかららしいです。詳しいことは分かりません。 使ってみた 下記のコマンドを入力してみます。 $... 御覧になる | 御シェアする

スプレッドシートからGoogleDrive間の移動を完全理解

フォルダ構成がイメージし辛い 「リンク貼っておくから確認しといて」と言われてスプレッドシートやGoogleスライドの大量のリンクを渡されることがあります。それが溜まっていくとどこに何があるか分からなくなってしまう状況って結構あるあるじゃないでしょうか? 元来Google... 御覧になる | 御シェアする