Parsec で宅内リモート環境を構築する

仕事部屋にある Gaming PC を子どもにリビングから使えるようにできないかなと考えていたら、Parsec というイケてるリモートデスクトップソフトウェアがあるらしい。(ちなみに Windows 標準のリモートデスクトップでマイクラ起動したら重くてまったく使い物…

Ubuntu 20.04.3 LTS(64bit) on Raspberry Pi 4 Model B(8GB) で 空冷ファンの制御をする

背景 とりあえずトランジスタを手に入れて試しにつなげて動作確認してみる トランジスタを手に入れる 取り付ける ラズパイの設定 いくつか謎が残る点とわかったこと gpio readallで BCM 18ピンが出力High(1)になるのかなと思ったら変わらない件 トランジスタ…

Ubuntu 20.04.3 LTS(64bit) on Raspberry Pi 4 Model B(8GB) でオンボードbluetoothを使う

結論 bluetoothまわりのパッケージが linux-firmware-raspi2 とコンフリクトして手動でパッチを当てないと動かない 対策 素直に市販のUSBドングルをぶっ刺せばマウスもスピーカーも問題なく利用できた 原因 どうやら linux-firmware-raspi2 が依存している b…

Ubuntu 20.04.3 LTS(64bit) on Raspberry Pi 4 Model B(8GB) で普段使いのPC環境を整える

ラズパイが Arm アーキテクチャであることに加えて、Raspbian OS の 64bit 版の正式版が出ていないこともありラズパイで 64bit 化があまり進んでいないのか Armアーキテクチャ + 64bit を現段階での最新である Raspberry Pi 4 MNodel B で使うのはかなりツラ…

Ubuntu 20.04.3 LTS(64bit) on Raspberry Pi 4 Model B(8GB) の環境構築

ネットワーク設定 waysakuユーザーの追加とubuntuユーザーをsudo不可にする パッケージ更新と各種パッケージのインストール vcgencmd をインストールしてCPU温度をmackerelで監視設定 Raspberry PiのGPIOを操作する gpio コマンドのインストール raspi-confi…

Chrome (Chromium) for iOSのビルド

Chrome for iOSをビルドしてみる 前回の調査の流れでChrome (Chromium) の指定のバージョンをビルドしてみたメモを残しておく。 Chromiumのビルド 基本 [iOS] Chromium for iOS がオープンソース化されたのでビルドしてみた Checking out and building Chrom…

iOS14におけるSafari以外のブラウザへのITP (Intelligent Tracking Prevention) 適用についての調査

iOS14におけるITPの影響の調査 結論 (推測含む) これまでの経緯 2019/12/23 2020/6/22 2020/9/17 動作確認 影響範囲 影響する条件 想定影響数 そもそも はっきりしない点 iOS14におけるITPの影響の調査 結論 (推測含む) iOS14のリリースの タイミングで Safa…

Raspberry Pi 3 Model BとMH-Z19でCO2測定

きっかけ ほぼ自宅勤務になったので部屋の換気が気になり始める そんな中で CO2 計測してみたいが、市販の計測器高いと感じていたがふとラズパイ (Raspberry Pi 3 Model B) が転がってることを思い出す。 センサーとかないのかなと調べてみたら、MH-Z19 とい…

プライバシーポリシー

広告の配信について 当サイトは第三者配信の広告サービス「Googleアドセンス」を利用しています。 広告配信事業者は、ユーザーの興味に応じた広告を表示するために「Cookie(クッキー)」を使用することがあります。Cookieを無効にする設定およびGoogleアド…

RSSの <content:encoded> の文字列が数値文字参照になっているので読める文字列に変換する

こんなやつ www.vogue.co.jp 大昔にRSSでシステム間連携を実装したときにハマった気がしたけど一切覚えてない。 content:encoded にある &#x30E1;&#x30FC;&#x30AC;&#x30F3;&#x5983; のような文字列はどうやら 符号化文字集合の一つである Unicode におけるそ…

Raspberry Piでmdadmを使ったraid1ディスクでTimeMachineサーバ構築のメモ

Raspberry Pi OSをインストールした後の作業メモ GUIでの設定 ネットワーク設定 とりあえずwifiつなげる その他 GUIから - sshの有効化 - CUIでのデフォルト起動に変更 - current user(piユーザー)でのデフォルトログインを無効化 - キーボード設定を日本語…

Google Cloud SpannerでFORMAT_TIMESTAMP関数使うと時間がずれる

SpannerにUTCでTIMESTAMP型で保存されてるデータをJSTに戻そうとしたときにはまった。 SELECT TIMESTAMP "2017-08-20 20:00:00 UTC" AS ORIGIN_UTC, TIMESTAMP_ADD(TIMESTAMP "2017-08-20 20:00:00 UTC", INTERVAL 9 HOUR) AS DateTime_9_Plus, FORMAT_TIMES…

さくらVPSにSoftEtherサーバ構築

基本的にはラズパイに構築したときと同じ waysaku.hatenablog.com ただ、すっかり忘れていたのでメモ 基本的にはここの通りにセットアップすればOKだが、vpnserverとvpnclientの両方セットアップが必要 linuxconfig.orgあと、さくらのVPSはiptableが /etc/ip…

golangでbyte配列から整数型への変換メモ

メモ package main import ( "fmt" "golang.org/x/crypto/scrypt" "encoding/hex" "encoding/binary" "bytes" ) func main() { b := []byte{0x00, 0x00, 0x00, 0xFF} fmt.Println(b) fmt.Println(hex.EncodeToString(b)) var i int32 buf := bytes.NewReader…

package.jsonのpeerDependenciesについての理解

依存の解決の違い(dependencies, devDependencies, peerDependencies) 「親アプリで利用されるためのnpmモジュールを開発している時に、このモジュールをインストールするときはmoduleA:0.5.0と一緒にインストールする必要がある」 というケースを考える 親…

家のRaspberry Pi 2 Model BにSoftetherでVPNを構築

海外に来てから家のNASにアクセスしたりするためにVPN環境を構築した。 自宅には家族しかいないので、万が一ネットワーク設定ミスったりしたらサーバーにアクセスできなくなってしまうので慎重に作業した いくつか日本語の記事を読んだが、最終的にサーバー…

Goにおけるreflectまわり調べた

javaとScalaとGoでそれぞれclass、型、インターフェース、メソッドの用語の意味が微妙に違うから混乱する なんなら型クラスとかある なぜ遅いか 静的な型付けがされていたり、コンパイルされていたりする言語でもリフレクションアクセスの場合は interpretiv…

goroutineを調べたときに深掘りしたときに調べたまとめ

並行処理プログラミングのモデル Shared memory いわゆるプログラミング言語のランタイムによるアプリケーションスレッド(グリーンスレッド)である 同じプロセス(LWP)内でランタイムによりスイッチされながら実行される並行化の仕組みなので、マルチコア…

Linuxにおけるプロセス/スレッドの調査とか学習とか

概念的・理論的な意味におけるプロセスとスレッド プロセスとはプログラムコードやメモリ空間などを含めた実行処理のインスタンスである スレッドとはプロセス内でメモリを共有し、並行化するためのより細かい単位である Linuxにおけるプロセスとスレッド プ…

JavaにおけるOS上のスレッドの取り扱い

Threadのメモリモデルを色々調べていくうちにJavaのスレッドでOSスレッドとどうやって紐付いてるんだろうと思って調べた。 JavaにおけるTheradスケジューラはOSに依存するみたいな説明がされているが、要はJVMプロセス内でOSスレッドを生成してそれをwrapし…

マネジメントの秘伝のタレ

今回は私が今までチームマネジメントやヒューマンマネジメントを通して学んだTIPSを整理してみたいと思います。 マネジメント(≒コミュニケーション)を支える技術について都度メモして、自分への戒めとして利用していたものを箇条書きにまとめました。 ある特…

wordpressのdockerコンテナからRDSに接続する

waysaku.hatenablog.com の続き今度はRDSに接続してみる。 RDSはとりあえずdevでぽちぽち立ち上げ。 mysql -h ${RDS ENDPOINT} -P 3306 -u ${RDS USER} -pで接続できることを確認。 接続できない時は立ち上げたVPC上のSecurity Groupの設定で接続元(この時は…

同一dockerホスト上でwordpressとmysqlをそれぞれのdockerコンテナで起動して接続してみるメモ

※環境はMacOS ※virtualBoxとdocker-machineはセットアップ済み #docker-machineでwordpress起動用のdockerHostを起動 $ docker-machine create --driver virtualbox wordpress# 環境変数を設定 $ eval "$(docker-machine env wordpress)"#mysqlのdockerコン…

Raspberry Pi2 Model Bでmdadmを使ったraid1構築

apt-get install mdadm でmdadmをインストール sdaとsdbをfdiskで初期化してから、それぞれsda1とsdb1のパーテーションを作成 mdadm --create /dev/md0 --level=raid1 --raid-devices=2 missing /dev/sda1 でまずはsda1だけの片肺状態で/dev/md0を作成 mkfs …

Macで画像のexifを編集する

exiftoolをインストールする www.sno.phy.queensu.ca 対象のディレクトリで以下を実行 cd target_dir exiftool -alldates='2016:2:04 00:00:00' -overwrite_original *

haskellでなぜfoldrだと無限リストが扱えてfoldlだと扱えないのか

畳込関数fold:foldrとfoldlの違い (あるいはfold_right, fold_left) - 一歩前進 無限リストをfoldrで扱う(foldlでは扱えない) haskellは遅延評価が特徴。 式の評価は外側から行う。 つまり外側の評価をするその時に内側の結果が必要なら計算する。算数で例…

Java Flight RecorderとMission Controlのまとめ

Java Flight Recorder(以下JFR)はいわゆるJavaプロセスのプロファイラ。 Java Mission Control(以下JMC)はJFRで取得したプロファイリングデータをGUIで見る事ができるビューア。 もともとはJRockitで搭載されていたのが, Java 7 Update 40以降で搭載されるよ…

IntelliJ Ideaでgradleのサブブロジェクト構成をビルドするとエラーになる問題

Error:scalac: Error: object scala.runtime in compiler mirror not found. scala.reflect.internal.MissingRequirementError: object scala.runtime in compiler mirror not found. at scala.reflect.internal.MissingRequirementError$.signal(MissingReq…

IntelliJ IDEA13 CEのコード実行(Run)の種類

ささっと書いて実行するときにどのショートカットキー(keymap)を使っていいのかわからなかったので。 ※MacOSです コンフィグレーションを選択して実行 Option + Shift + F10 (前回と同じものを)実行 Shift + F10 現在の状況を実行 ※現在の状況 = アクティブ…

IntelliJ 13 CE + Scala + Gradleでのプロジェクト作成

こんなクールな操作で開発ができるようになりたい intellij CEをダウンロード コミュニティエディションをダウンロードしてきます http://www.jetbrains.com/idea/download/index.html vimプラグインとScalaプラグインを追加 ググると出てくるのでその通りに…