Dockerアレコレ2023

Resourcesの「File sharing」の初期設定 「Docker for Mac」が暴走しがちだったので、Resourcesの「File sharing」に登録されているディレクトリを消してみたりしたのだが、それが原因でローカルサーバが動かなくなってしまったので慌てて元に戻した。 (PCを…

計算の科学と手引き

講義 インターネット配信 第15回 第14回 タブロー(tableau):フランス語で「絵」のこと 第13回 命題:真偽が一意に決まる文 科学的命題 演繹的命題 量化 全称量化 ∀(forall) 存在量化 ∃(exists) 推論 前提が0個以上(結論のみでもOK) (例)三段論法等 演繹的推…

Rubyアレコレ2023

インストール Rubyって、もう3系になってるのね… # rbenv インストール ※ https://github.com/rbenv/rbenv#installation brew install rbenv ruby-build # Ruby インストール rbenv install 3.x.x # 反映(?) rbenv global 3.x.x # バージョン確認(上記が反…

M1 Mac でのC言語実行環境構築

Mac

ちょっと必要があって手元のM1 Macbook ProにC言語実行環境を整えたのだが、少々苦戦したので備忘録。 何度も「Command Line Tools」のインストールが求められていた件 既にインストールが完了しているにも関わらず、 gcc コマンドを叩く度にインストールを…

Go言語アレコレ2022

その他 現在のUnixタイムスタンプを文字列に変換する import "strconv" strconv.Itoa(int(time.Now().Unix())) A Tour of Go ちょっと戸惑った仕様 Named return values naked return:名前をつけた戻り値の変数を使うと、 return ステートメントに何も書か…

自然言語処理

講義 インターネット配信 第15回 第14回 第13回 第12回 情報検索 全文検索 サーチエンジン 基本的な仕組み 転置インデックス クエリ TF IDF 文書頻度 TF-IDF法(TF×IDF) ベクトル空間モデル 第11回 情報抽出 関係抽出 イベント情報抽出 MUC ブートストラップ …

情報学へのとびら

講義 インターネット配信 第15回 情報技術が変える社会※2021年8月時点 DX サイバーフィジカルシステム(CPS) 移動(モビリティ) 自動運転 テレマティクス保険 工場 スマート工場 CPSを支える情報通信技術 5G 高速大容量・低遅延・多接続 消費電力が多い→LPWAの…

mycliアレコレ2022

最近使い始めたが、便利なので気に入っている。 www.mycli.net SSHトンネル経由でMySQLに接続 一発で接続する方法は無さそうだったので、以下の2段階で接続。 ssh -Nf <SSHユーザー名>@<SSHホスト> -L 3306:<MySQLホスト>:3306 mycli -h localhost -P 3306 -u <MySQLユーザー> ⇒パスワードを訊かれるので、MySQLのパ</mysqlユーザー></mysqlホスト></sshホスト></sshユーザー名>…

Node.jsアレコレ

パスが通らない問題 Node.js をインストールした後、 % node -v zsh: command not found: node と表示されてしまった。 % nodebrew ls v1x.xx.0 // インストールしたバージョン current: none だったので、 % nodebrew use v1x.xx.0 を叩いて以下コマンドで…

Dockerアレコレ2022

MySQLのコンテナが突如起動できなくなった 以下のようなログが出ていた。MySQLの5.7系と8.0系が入り混じっていたのが原因だったようで、Docker DeskTopで全ての Images と Volumes を消してから 「docker-compose up -d」したら起動できるようになった。 [ER…

【IntelliJ IDEA】設定アレコレ2021

IDE

ファイル保存時にコードフォーマットとimport最適化が走るようにする 設定→Tools→Actions on Save 「Reformat code」「Optimize imports」にチェックを入れる

Scalaアレコレ2021

PlayFrameworkでログレベルに応じてログを出力する ログレベル”DEBUG”の場合 logback.xml <logger name="play" level="INFO" /> <logger name="application" level="DEBUG" /> <root level="WARN"> // ←このWARNをDEBUGに変える <appender-ref ref="CF_CONSOLE_OUT"/> <appender-ref ref="CF_CONSOLE_ERR"/> </root> Scala // ログ出力処理 logger.debug(s"ログの内容")</logger></logger>

PHP-CS-Fixerを取り入れてみた

既にCI上では導入されていて、書き方が悪いと差分付きで指摘してくれるのだが、 差分を見てもどこを直せば良いのか分かりづらかったので、重い腰を上げて ローカル環境にも入れてみた次第。 homebrewでcomposerをインストール $ brew search composer $ brew…

放送大学大学院に修士選科生として入学

放送大学大学院に決めるまでの経緯 「コンピュータ・サイエンスを体系的に学びたい」という気持ちがずっとあった 仕事上、特に困ったことは無いものの「CS系の大学を出ていない」というところに引け目を感じていた 以下、学習する方法を検討してみた 資格試…

買って良かったもの2020

STEADY item.rakuten.co.jp MADUREZが販売しているフィットネスバイク 新型コロナウイルスのせいで外出すらままならない状況になり、自宅でも運動できるようにということで購入 AirPods Pro hchuno.hatenablog.com 購入に至った経緯は以下 前から少し興味が…

jEnvでJavaの複数バージョンを管理する

環境設定 config.fishに以下を追加 set -x PATH $HOME/.jenv/bin:$PATH eval (jenv init - | source) 設定を反映 $ source ~/.config/fish/config.fish 管理方法 (主にScalaでしか使わないが)Java1.8を追加 $ jenv add (/usr/libexec/java_home -v 1.8) open…

【IntelliJ IDEA】ハマりポイント

コンパイルエラーが発生する件 RunやDebugを実行した際に、 object ○○ is not a member of package comcannot resolve symbol △△といったコンパイルエラーが発生して色々試したが、以下の方法で解決できた。 JDKの再インストール プロジェクトの都合でJDK8を…

DynamoDBにアクセスして書き込み等を行う

Perlからアクセスするのは面倒この上ない Perl5系でDynamoDBを良い感じに扱えるツールが無かったので、低レベルAPIを使ったアクセスを行った。 AWSのドキュメント API仕様 DynamoDB Low-Level API - Amazon DynamoDB Actions - Amazon DynamoDB エンドポイン…

【IntelliJ IDEA】ファイル保存時にPerlTidyが走るようにする

前提 当初はIntelliJのプラグイン「File Watchers」で以下のような設定をしていた。 ところが以下のような状況になったので、マクロを活用することにした。 意図しないコードフォーマットが行われる(for文の中のコメント行のインデントが消える等) 色々オプ…

サーバの日付を変更する

任意の日時に変更する $ sudo su - # date -s "06/26 21:52 2020" Fri Jun 26 21:52:00 JST 2020 時刻合わせをする(元の日時に戻す) # ntpdate ntp.nict.jp -bash: ntpdate: command not found ← ntpdateが使えなかった… # hwclock --hctosys # date Sat Jun…

タイムゾーンを変更する

前提 CentOSのバージョンは6.10 $ cat /etc/redhat-release CentOS release 6.10 (Final) 作業内容 なる早で変更 rootに変身 $ sudo su - 現在のタイムゾーンを確認 # date Fri Jun 19 02:39:43 UTC 2020 現在の設定をバックアップ # cp /etc/localtime /etc…

TTerseでのリストとハッシュの扱い

環境 Perlのフレームワーク「Amon2」標準のテンプレートエンジン「Xslate」のTTerseシンタックス版でのお話 リスト(配列) # サーバ側 my $list_hoge = ['mon', 'tue']; # テンプレート側 [% list_hoge.0 %] # mon が表示される ハッシュ # サーバ側 my $hash…

リスト内に任意の値が含まれているかどうかを確認する

anyを使う List::MoreUtils - Provide the stuff missing in List::Util - metacpan.org サンプル use List::MoreUtils qw/any/; my @list_target = ('my', 'chuno', 'blog'); if (any {$_ eq 'chuno'} @list_target) { # 何らかの処理を書く }

公開鍵によるSSH接続〜異なるユーザーで直接ログインする方法

前提 環境 やりたいこと 関連情報 作業手順 ローカル 公開鍵と秘密鍵の作成 SSHログイン リモート hchunoに変身 公開鍵の設定 SSH関連ファイルの権限を変更 SSH設定ファイルの確認と変更 デーモンをリスタート ローカル 新しい鍵でのSSHログイン 前提 頻繁に…

サーバサイドエンジニアからiOSエンジニアに転身する案

発端 第一の分岐 第二の分岐 第三の分岐 結論 発端 事あるごとにエンジニアのキャリアパスについて悩んではいるのだが、iOSアプリ開発エンジニアに転身するのはアリかもしれない…今は(というよりキャリアのほとんどが)サーバサイドエンジニアなのだが、さす…

AirPods Pro購入

特別定額給付金10万円が支給されたこともあり、遂にAirPods Proに手を出した。 MacBook Pro等でも使いたいので、コレを期にOSをCatalinaにすることに。AirPods Pro外箱AirPods ProケースとケーブルAirPods Pro本体iPhoneとの接続はびっくりするぐらい簡単で…

mapを使って配列をハッシュに変換する

# 以下のようなハッシュの配列(@hoge_list)があるとする [ { 'hoge_key' => 'hash1', 'hoge_id' => 2, 'hoge_name' => "hogehoge", }, { 'hoge_key' => 'hash2', 'hoge_id' => 3, 'hoge_name' => "gehogeho", }, ]; # mapを使ってハッシュのハッシュに変換 m…

Scalaハマりポイント2019

JavaのgetResource()だと「ファイルの」パスしか取得できない この書き方で取得したpathでは、ScalaのtoDirectory()でディレクトリ扱いしてくれない def resourcesDir :String = { val dirPath = getClass.getClassLoader.getResource("resources").toString…

Dockerアレコレwith fish shell

コンテナ一括削除 $ docker rm -f (docker ps -aq)

Scalaアレコレ2019

Option型の変数に任意の値が入っているかどうかで処理を分岐させる /* * 以下のようなcase classがあって、HogeがMasterHogeにOption型として格納される場合に、 * HogeのメンバフィールドであるOption型のisHoge(フラグ的なもの)の値をチェックする */ case…