みーのぺーじ

みーが趣味でやっているPCやソフトウェアについて.Python, Javascript, Processing, Unityなど.

PyO3でRustのメモリが開放されるのを確認する

Rustで作成したPython用のクラスがPythonのタイミングで自動的にメモリ開放されるかを確認してみました. 環境 Windows 10 Pro 64bit CPU : Core i3-7100U CPU @ 2.40GHz Memory : 12.0 GB rustc 1.42.0-nightly (2020-01-17) cargo 1.42.0-nightly (2020-01…

RustとPythonの連携

PythonからRustを呼び出すために,PyO3を使用します. 環境 RustでPython用のClassを作成 Cargo.toml lib.rs Pythonのlistを扱う lib.rs tuple を含む list を扱う lib.rs exceptionを使う lib.rs 環境 Windows 10 Pro 64bit CPU : Core i3-7100U CPU @ 2.40…

Rustでx86_64-unknown-linux-musl向けにビルドができない

GitLab CIで,Rustで作ったプログラムを動かすときにハマったのでまとめます. GitLab CIで,docker image rust:alpine3.10 を使ってビルドしようとしたら, error: cannot produce proc-macro for `serde_derive v1.0.104` as the target `x86_64-unknown-l…

RustとPythonのベンチマーク比較

計算速度が重要なソフトウェア開発のために,Rustを勉強しています.Pythonと比較し速度を体感するために,簡単にベンチマークしてみました. 環境 CPU 3.2GHz Core i5 Memory 24GBytes macOS Mojave rustc 1.42.0-nightly Python 3.7.4 64bit 素数判定 Carg…

コピーするときの動作

変数aに文字列「これはテストです.」があり,これを変数bにコピーする,という動作には3つの選択肢があります. aとbが同じオブジェクトを参照する そんなややこしいことはするなとエラーにする オブジェクトを複製する aとbが同じオブジェクトを参照する …

USBデバイスを繋げすぎるとMacのマウスがうまく動かなくなる

みーのiMacで最近マウスの調子が悪く,次第にディスク速度が低下してiTunesの音楽再生がまともにできなくなったので,原因を調べて解決しました. 環境 iMac (Retina 5K, 27-inch, Late 2015) インテル® Core™ i5-6500 プロセッサー macOS 10.14.6 現象 マウ…

GitLab private repositoryにある自作Pythonパッケージをpipでインストールする

自分で作成したPythonパッケージをGitLab上のプロジェクトで管理していて,これを別のプロジェクトで使用する方法を紹介します. 環境 MacOS 10.14.6 Python 3.8 GitLab 前提条件 trieという名前のプロジェクトが,private repositoryとしてGitLabに存在する…

gitlab-runnerの設定メモ

みーがGitLab CIを利用する時の自宅gitlab-runnerの設定メモ. 詳細はこちらを参照ください. concurrent = 8 check_interval = 0 [session_server] session_timeout = 1800 [[runners]] name = "mate" url = "https://gitlab.com" token = "Xxxxx-Xxxxx_xx"…

そのままなCSS

とあるサイトのCSSで, .Text-fontWeight--500 { font-weight: 500; } .Text-fontSize--11 { font-size: 11px; } というclassが定義されていました.これは, <div style="font-weight: 500;"></div> <div style="font-size: 11px;"></div> と記載するのと全く変わらないような気がします. .Text-error { font-weight: 500; font-size:…

ネストされた括弧と正規表現

ネストされた括弧を扱おうと正規表現を調べましたが,Pythonの標準のreには,(?R)など再帰が扱えないことが分かり,代わりにregexを使えばよさそう*1ということは分かりましたが,わざわざ正規表現を使わなくてもよいのではと思い,シンプルに書いてみました…

cp -R コマンドがMacOSとLinuxで動作が異なる

開発環境はMacOSで,ファイルをコピーするシェルスクリプトをDockerで動かしたときに,ファイル構造が異なるためにエラーとなった際のメモ. 以下のような構造のディレクトリがあるとして, a/ 1.txt 2.txt b/ このコマンドを実行すると, cp -r a/ b/ MacOS…

Hyper-Vのためにメルカリで中古PCを購入した

Windowsで仮想OSを使用する場合はVMware などいろいろな仮想化技術がありますが,Windows 10にはHyper-Vが標準搭載されているので,使ってみようと思ったら,みーのPCのWindows10がHomeなのでHyper-Vが有効にできない*1ために,一旦はHyper-Vを諦めて,Docke…

DockerでOWASP ZAPを使う

Webサービスの開発において,ペネトレーションテスト*1はセキュリティ対策上重要です.しかしながら,開発環境に脆弱性を伴ったウェブサイトを実行するサーバーをインストールするのはセキュリティ上不都合です.最近はDockerによる仮想環境が普及しており,…

LG gram のメモリーを増設した

以前に購入したLG gramのメモリーを増設しました. スペック 13Z980-MR33J 13.3インチ重量965g Windows 10 Home インテル® Core™ i3-7100U プロセッサー 4GB DDR4 2133メモリ 128GB SATA3.0 SSD 4GBのメモリーではVSCodeであれこれしているとすぐにスワップ…

サーバーとクライアントで使用する言語の選択

この記事は,みーの個人的な意見であり,各言語には一長一短あることをご理解頂いた上でお読みください. みーが今まで扱った言語は,Java, Python, C, JavaScript, ActionScript, HSP, UnityScriptなどがありますが.現在はPythonとJavaScriptを多用してい…

疫学研究の統計に関するunittest

最近,疫学研究の勉強をしています.疫学研究はR言語で解説されていることが多い印象ですが,Python好きのみーとしては,Pythonで統計処理したいので,Pythonで疫学研究を行うことにしました. 代表的な統計計算をPythonで行えるかをUnittestにしました.問…

LG gram でelementary OS がビープする

みーのLG gram (13Z980-MR33J) にUbuntuベースのelementary OS をインストールしたのですが,起動時に時々謎のビープ音を出すようになりました. 5回に1回ぐらいの再現性なので,検証が難しかったのですが,いくつか同様の報告がありました. Bug #1763994 “…

ffmpegで音楽ファイルを一括で変換する

ffmpegを使えば,複数のファイルを一括で変換することができます. macOSのターミナルで動作確認しました. oggファイルをmp3に変換 for f in *.ogg ; do ffmpeg -i $f $f.mp3; done aacファイルをmp3に変換 for f in *.aac ; do ffmpeg -i $f $f.mp3; done …

DropboxからGoogle Driveに乗り換えた

みーはDropboxを使っていたが,今月(2019年3月)になってから職場のパソコンのDropboxにログインできなくなり,調べてみるとBasic ユーザーがリンクできるデバイスは 3 台までという制限が追加されたのが影響しているらしいことが分かった. アカウントにリン…

Vue.jsのv-modelでmutableな変数の扱い方

Vue.jsでコンポーネントの親子間のデータの受け渡しは,親→子でpropsを,子→親でeventを使うことが推奨されています.そして,データは親が持つべきとされています*1.このように実装することで,親のデータが意図せずに子に変更されることがなくなり便利で…

npmのpackage.jsonでソートする

npmをつかってWebサービスのフロントエンドの開発をしていると,いろいろなパッケージをインストール・アンインストールすることがありますが,次第に順番がぐちゃぐちゃになって,だんだんカオスになっていきます.それを簡単になんとかするには, > npm re…

レーザープリンター導入の話 (名刺を手作りする)

みーのインクジェットプリンターが給紙しなくなったので,思い切ってレーザープリンターに買い替えてみました.自宅にカラーレーザープリンターが来たおかげでかなり捗るようになりました. カラーレーザープリンター ブラザーのHL-L3230CDW を23000円で購入…

npmでnode-sassがpermission deniedとなる問題

npmでnode-sassをインストールしようとしたら,permission deniedとエラーになりました. 環境 macOS 10.14.3 node-sass@4.11.0 詳細 > node-sass@4.11.0 install /Users/xxx/node_modules/node-sass > Unable to save binary /Users/xxx/node_modules/node-…

ベクター画像を描くソフトウェア

ベクター画像を描くにはAdobe Illustratorがよく使われますが,とても費用かかかるので,安いソフトウェアはないかと探してみました. https://affinity.serif.com/ja-jp/designer/ MacOS用で有名なのがAffinity Designerですが,6000円します.Adobe Illust…

風当たりが強いWindows Defender ATP

みーのぺーじではいくつかのソフトウェアを公開していますが,Windows smart screenによって実行が阻害されることがあります. これに対する,マイクロソフトの解説が最近公開されたようです. cloudblogs.microsoft.com デジタル署名,Microsoft Storeで公…

josler-sync

josler-syncは,日本内科学会が運営している研修システムであるJ-OSLERの入力を,退院サマリーのデータをもとに自動で行うソフトウェアです. 患者IDや性別,年齢などの事務的なデータをJ-OSLERに手入力するのが非常に面倒なので作成しました.内科専門研修…

webpack 4, vue.js, vue-routerを用いたSPAの開発環境

自分用メモも兼ねて,シングルページアプリケーション(SPA)基本となるプロジェクトの構成を紹介します. webpack 4ではconfig.jsを省略できるようになったようですが,少しは設定が必要なようです. ディレクトリ構成 index.html node_modules/ package.js…

Unicode normalizeのメモ

Unicode 正規化形式を示す "NFC","NFD","NFKC","NFKD" の違いをよく忘れるので,メモします. import unicodedata >>> unicodedata.normalize("NFD",",") ',' >>> unicodedata.normalize("NFC",",") ',' >>> unicodedata.normalize("NFKD",",") ',' …

WebpackでHot Module Replacementを使用する時のCPU使用率を改善する

Webpackを使ったウェブサイトの作成時にHot Module Replacementを使用するとnodeのCPU利用率が異常に高いので,原因を調べてみました. 環境 iMac late 2015 macOS High Sierra node v9.2.0 webpack 3.8.1 watchするファイルが多すぎるのが原因 webpackを起…

ビエラで再生できません(2063)に対応する

Panasonicのビエラ(VIERA TH-49EX750)を購入した. 外付けHDDを接続して,録画をしようとしたが上手くいかなかったのでメモ. 録画を試してみたが,いざ再生すると, 再生できません(2063) とエラーになる. どうやらハードディスクが対応していなかったのが…