shonen.hateblo.jp

やったこと,しらべたことを書く.

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

公開鍵SSHが Permission denied で落とされると思ったらホームディレクトリの権限が原因

note: 本記事は 2019/12/25 に執筆されたまま下書きに眠っていました 現象 さくらVPSに公開鍵認証を使って SSH で接続しようとしたところ、 $ ssh example.com -l hoge hoge@example.com: Permission denied (publickey). というありがちなエラーが返ってき…

Siv3D で自動操縦AIを作成してみた

はじめに 本記事は、Siv3D Advent Calendar 2019 の 15 日目です。 Siv3D を触ってみたので、感想とか、こう実装してみた、という話を書きます。 本当は機械学習導入したかったんですけどね… もの pic.twitter.com/iUP5wfWHwk— shonen (@shonen9th) 2019年12…

RaspberryPi zero のMACアドレスがランダムになっていたので戻した

現象 リブートする度に、MACアドレスが変わってしまう。 これでは、ラズパイ先生に固定IPを供給出来ない。 原因 network-manager をインストールした。(元からインストールされていたかもしれないけれど。) NetworkManager には MAC アドレスのランダム化…

Linux版OpenSiv3dプロジェクト作成メモ

環境 Ubuntu 19.04 でもArchLinuxの方が導入楽そうな気がしました。 前提 リポジトリはclone済み。 公式のreadme.mdを読んで、一通りビルドして、OpenSiv3D/Linux/Release/libSiv3D.a がある。 やりかた(事前準備なしで) カレントディレクトリは、今から作業…

Github Actions を nodejs(npm) の repository で試してみた。

CI

Github Actions とは? ソフトウェアの品質を担保するために、定期的にビルドを行ったり、git push する前に自動的に単体テストを実行したりする 環境を整えている開発チームは少なくないと思います。 こういう環境はローカルに構築することは出来なくは無い…

文字列・シンボルからクラスインスタンスを取得する

こういうコードがあるとする。 class Hoge def initialize puts 'init Hoge' end end c = Hoge c.new c = Hoge しているんだけれども、Hogeというのをコードに直接書くのではなく、 Hogeという文字列やシンボルからHogeクラスのインスタンスを取りたい。 eva…

Procを受けるところにメソッドを与える

やりたいこと def f(x) x+2 end p [1,2,4,8].map{|e| f(e)} を効率よく書きたい。 Object#method を使う Object#method を使うことでmethodのオブジェクトが取れる。 def f(x) x+2 end p [1,2,4,8].map(&method(:f)) モジュールの場合 モジュールをmethodメ…

jenkinsのghithub連携

CI

仕組みを理解せず説明文眺めながら適当に触ったらやっぱり動かなかったので、メモ。 目標 こんな感じのジョブを作る。 masterにpushされたら npm run build して commitしてpushする

android端末を無くして焦った(Googleデバイスを探す)

最近あんまりコードが書けてない辛みと、新しいなにかを勉強しないといけないという焦りと、結局何も出来ていないという事実が炎上気味 概要 盗まれたと思ったら盗まれてなかった android端末を探す 「android 探す」でGoogle検索を掛けると端末のGPSがONに…

まつもとゆきひろさんの特別講演まとめ(2019/07 若手エンジニアの生存戦略 )

イベント概要 supporterzcolab.com 動機 実は去年?も視聴しようとしていたのですが、ゆるっと見逃してしまった。 今年は手の届く場所に住んでいたので、動画配信ではなく、直接参加することに。

nodejsをインストールしようとしたら壊れてしまったので無理やり直した

ローコスト記事。ごめんなさい。 環境 ubuntu 16.04

Rubyでstdinもstdoutもstderrもtimeoutも出来る万能exec

勢いで記事を生やした。 環境 $ ruby -v ruby 2.5.5p157 (2019-03-15 revision 67260) [x86_64-linux-gnu] 何を作るか 別のプログラムを引数付きで起動したり、標準入力を与えたり、標準出力や標準エラーを取得したりしたい。 なぜ作ったか 毎回書いているよ…

Windows10をサブドライブに移動させてメインドライブにUbuntuを入れた

タイトルをしました。 背景 最近思うけど、Windowsを使う理由がゲーム以外に無いな…— 舞葉(㋿) (@m_buyoh) June 27, 2019 無いと思いました。 Ubuntuは仕事でもよく使う、ゲームの時間を減らしたかった等、色々思うところがあったので、Ubuntuに乗り換えるこ…

手っ取り早くredmineのREST APIを叩く

redmineがAPIを提供していることを知った。外から叩けるので、その気になればSlackと連携させることも出来る。 情報 これを読めば良いです。 www.redmine.org

virtualbox とホストPCを仮想イーサネットアダプタで接続する`

注意 メモ書きです。 色々試しすぎたので、ここに書いた方法だけでは上手くいかないかもしれません。 やりたいこと host は windows 10 virtualbox 上に ubuntu 18.04 が居る ubuntu は 2 つのアダプタを持つ。NATとHostOnly。 参考URL qiita.com qiita.com

ubuntuのキーボード配列を日本語・英語に変更する

背景 最近英語配列のキーボードを買ったので、英語配列に戻そうとしたところ、意外と日本語から英語配列に戻す記事がなく辛かった。 環境 ubuntu18,04.2 LTS 操作 sudo dpkg-reconfigure keyboard-configuration を打つと画面が出るので、いい感じに選択する…

M5Stack grayの libraries を眺める

きっかけ m5stack 無線通信関係のモジュールの使い方が公式サイトのdocumentから探しても中々見つからない。 そこで、ArduinoData/packages/esp32/hardware/esp32/1.0.2/libraries の中身を読み漁って、雑にまとめることにする。 m5stackが出来ることの整理…

M5Stack grayを眺める

m5stackという面白そうな製品を見かけたので、勢いで買いました。 m5stackとは? m5stack.com 雑に表現すると、ボタンやディスプレイ・バッテリー・TFカードリーダ*1等が載ったArduino(ハードウェアはArduinoとは異なる)。 Arduino IDEを経由して、プログラ…

0桁埋めした文字列を返す関数

/** * 0埋めしたdigit桁の文字列を返す。 * @param {number} n 非負整数 * @param {number} digit 正整数 */ function zeroPadding(n, digit) { return "0".repeat(digit).concat(n).slice(-digit); } 他に無いらしい。時刻を指定したフォーマットで文字列に…

N 秒間だけ処理を実行する c++ のコード

処理を実行するのは、メインスレッドでない別のスレッド。 メインスレッドは、sleep_forで待機して、時間になったら atomic_bool で通知する。 #include "bits/stdc++.h" using namespace std; int main(){ atomic_bool halt(false); long long counter = 0;…

nodejs サーバのWebサイトに Google IDによる 認証機能を実装する

参考 developers.google.com developers.google.com やること Googleアカウントを使って、Webアプリにログインしたりログアウトしたり出来るようにしたい。

CUDA で HelloWorld

gpu

環境 Windows10 Visual Studio 2017 + Visual Studio 2019 NVIDIA のグラフィックボードが刺さっている(geforce gtx 1050ti) CUDA Toolkit v10.1.105 が公開されている やる CUDA Toolkit のインストール developer.nvidia.com 上のリンクから、ツールキット…

自作PCを組み立てました

動機 普段メインで使っていたノートPCが7年目ぐらいになったので、PCを買い換えることに。 BTOも検討しましたが、3万ぐらいの開きがある・ゲームより開発がしたいなどなど。せっかくなので作ってみた。 経験 自作PC1度目

Hugoを導入してみた

Hugoとは? gohugo.io 静的なwebサイトを作ることができる markdownで書ける syntax highlightも豊富(もちろんjsなしの静的生成)

htmlの要素の変化を検知する

脱jQuery中. 個人的な事情で必要になったので,簡単に調べた. やりたいこと javascriptによって,htmlのdomの構造が書き換えられたとき,それを検知したい. 結論 MutationObserverというものがあるので,これを使う. developer.mozilla.org (new Mutatio…

標準入力からスペース区切りで値を拾うEnumerableな何か

競技プログラミングで与えられる入力は半角スペース・改行の両方で区切られることが多い. そこで,半角スペース・改行で区切って値を拾ってくるEnumerableなクラスを書いた. class In include Enumerable def initialize(io) @io = io @buff = [] self end…

エンジニア・プログラミング本まとめ

個人メモです.あまり読めてない本があるので,その反省として. index センス 技術者のためのテクニカルライティング ノンデザイナーズ・デザインブック リーダブル・コード プリンシプル・プログラミング 言語 プログラミングRust メタプログラミングRuby …