2018-01-01から1年間の記事一覧

C#のライブラリ vs-streamjsonrpc とGoの標準添付パッケージ jsonrpc を通信させる方法

前回 Go と C# を名前付きパイプでつなぐ - bamch0h’s diary という記事を書いた。 その記事のまとめにも書いたように、RPCで通信できるのか興味があったので調べてみた 意外と大変だったのでブログに残しておくことにする。 TL;DR C#側のライブラリとして M…

Go と C# を名前付きパイプでつなぐ

昨日、UNIXドメインソケットをGoで使うサンプルを作成したがその際にパフォーマンス比較用に作成した名前付きパイプを使ってC#と通信する。 サーバーサイド(Go言語) 特筆するところはない。 package main import ( "log" winio "github.com/Microsoft/go-win…

go 1.12 では Windows にも Unix ドメインソケットが入るので簡単に使ってみた。

参考 qiita.com go 1.12 beta1 のインストール ここ(Google グループ) に書いてある通りにダウンロード。 > go get golang.org/dl/go1.12beta1 > go1.12beta1 download 簡単にインストールできるし、Windows でもコマンドが同じなのが便利。 ベンチマーク 単…

コンテナに入るのに docker ps してから docker start して docker exec するのめんどくさいから一度にできるコマンド作った

結論 作った。Goで。 github.com 経緯 パソコン起動してから、dockerのコンテナに入るのにコマンドをいくつも叩かないといけないのがめんどくさかったから。 叩くコマンドは以下の3つ * docker ps -a * docker start <コンテナ名> * docker exec -it -e <デ…

JavascriptでDateのインスタンスを作成するときにタイムゾーンを指定しなかった場合の時刻のパースのされ方がiPhoneとWindowsと異なる件

ちょっと躓いたのでメモ 以下のコードがあったとして alert(new Date("2018-12-12T23:59")); Windows上の Chrome で実行すると Thu Dec 13 2018 23:59:00 GMT+900 (日本標準時) と表示される iPhone上の Safari だと Fri Dec 14 2018 08:59:00 GMT+0900 (JST…

:terminal で開いたコマンドプロンプトからvimを起動してカレントディレクトリを表示させる

ユースケースとしては、vimを起動して、:terminal でコマンドプロンプトを起動したとき、カレントディレクトリが操作したいディレクトリじゃなくて、操作したいディレクトリまで移動して、移動先でvimで編集したいファイルが出てきたときに、vimに戻ると、カ…

ラズパイの/boot/cmdline.txt に記述できるオプションの一覧

linux/kernel-parameters.txt at rpi-4.0.y · raspberrypi/linux · GitHub よさそうなのがあったのでメモ

ラズパイ2 の有線LANを固定IPにする

kinakomochi-tank.hatenablog.com この通りにすればイける。 が、結果確認の項目はすっ飛ばして、リブートした。なぜなら、ifconfig down でeth0 がないと言われるため。

CoDeSys V3 には Pythonスクリプトを実行する機能がついている

CoDeSys っていう会社がありまして、FA業界ではまぁ有名なほうなんですが https://www.codesys.com/ 例えば、Raspberry PI を使って 簡単に UI やらをサクッと作ってスマートホームをチャラっと実現することも 夢じゃないとかなんとか。(※ だいぶ大げさに言…

Arduino でパリティエラーチェックを実装する

私が使ったのは Arduino MEGA 2560 R3 の互換機。 Aruduino IDE には Aruduino 本体のソースコードも含まれており、本体のソースコードを編集すると、スケッチをコンパイルする時に本体が修正されていることを検知し、同時にコンパイルしてくれる。私の環境…

Progate で Ruby 履修してみた

当方、Ruby Association Certified Ruby Programmer "Silver" (Ver 2.1ではない) を持っているのですが、業務で使うこともなく、趣味でダラダラ Ruby コードを書く日々であります。ひょんなことから、Progate を知り、Ruby 再入門でもしてみるかという気持ち…

シリアル通信で受信完了をできるだけ早く検知する方法 [Raspberry pi]

最近、ラズパイでシリアル通信をするプログラムを書いてる。いくつか詰まったところがあったので備忘録的に残しておこうと思う。 作成したプログラムは以下のリンクにある GitHub - bamchoh/rpi-serialport-test TERMIOS 構造体 Linux で シリアル通信をする…

ラズパイ2のシリアル回りを調べる

ラズパイ3でベアメタル - QEMUでUART(PL011) - へにゃぺんて@日々勉強のまとめ PL011 の PDF http://infocenter.arm.com/help/topic/com.arm.doc.ddi0183g/DDI0183G_uart_pl011_r1p5_trm.pdf カノニカルモードとは 端末のカノニカルモード - 技術メモ帳 FIL…

Vimを毎日自分用にビルドするようにした

github.com モチベ さきっちょ追いかけてるおれかっこいいがしたかった。 何ができるか github に上がってる vim をビルドして、kaoriya-vimのexeと差し替えます 何が必要か kaoriya-vim msys2 64 bit ruby 2.5 python 3.7 (embedded) lua 5.1 どうしたらで…

Windowsのシリアル通信でBREAK信号を送受信する

https://msdn.microsoft.com/ja-jp/library/cc429842.aspx https://github.com/bamchoh/go-serial/commit/f74298f65a6834a06357510f1d208ff8df764c11 SetCommMask で EV_BREAK を設定しておくこと。そうしないと、エラーになる。 あと、立ち上がりは検出でき…

【ブロク読書感想文】→ テスト自動化の理論と技術と戦略:LINE Developer Meetup Tokyo #39 - Testing & Engineering

読書したブログ engineering.linecorp.com これを読んでてよくわからない単語があったので、調べてメモ。 後で考えるときの参考にできればいいなという感じ。 違和感のアンドン化 アンドン - Wikipedia 違和感を見える場所に書き出して、リスク的なものをみ…

友達同士でもくもく会した

要約 友達同士でもくもく会して、意外と捗って良かった もくもく会とは? 自宅には誘惑がいっぱいあるので、プログラミングとかやろうと思ってもなかなか捗りませんよね。でも周りに人が居るとよく見られようという意識が高まって誘惑に負けずに作業に集中で…

JWTを生成/解析するときのsecret keyの生成方法

JWTについて調べてる。golangでちょっと使いたい用途があったので。 golang には JWT生成/解析するライブラリが結構あって、jwt-goってのが有名みたい。 github.com func createTokenString(data *User, secretkey string) (string,error) { token := jwt.Ne…

heroku の golang で http から https へリダイレクト

お名前.comで取得した カスタムドメインを使ってhttps化しようと思ったけど、なんか難しかったので、カスタムドメインはあきらめた。んで、herokuapp.com のサブドメインでSSL化してhttps化完了とす。 でも、httpのほうもアクセスできちゃうので、そっちをど…

heroku にデプロイ時に goose up を動かす

Procfile に release: goose up を足すだけ。

govendor と heroku

govendor は goパッケージをバージョン管理できるツール プロジェクトのvendor以下をローカルパッケージとして管理できるgoの機能を拡張することで機能する。 github.com govendor fetch <package name> とすると、vendor/vendor.json の下に管理用のjsonファイルが作成さ</package>…