at backyard

Color my life with the chaos of trouble.

Entries from 2021-01-01 to 1 year

goenvをやめて直接Goをインストールするように切り替えた(M1 MacでのGoの環境構築)

目次 目次 初心者はgoenvは使わないほうが良いかもしれない? goenvをuninstallする goenvの遺産をすべて削除する Goをインストールする M1 MacにGoをインストールするときの注意点 [余談] go fmtの挙動が変わった!? 初心者はgoenvは使わないほうが良いか…

どのデバイスでもMac OSが動かせる時代がやってきた(Webで動くMac OSのご紹介)

Mac OS for the WEB! DEVを開いたらバズっている記事が目を引いたので読んでみた。 dev.to この方はWeb上のMac OSエミュレータを作成したと書いており、実際にこちらにアクセスすると、HTML, CSS, JSで構成されたウェブページのMac OSを操作できる。 表示さ…

コスパ抜群なトップバリュの、グアテマラブレンドのコーヒー豆(フェアトレード)

最近、新しいコーヒー豆を試してみた。 それが下記の オーガニック & フェアトレード グアテマラブレンドレギュラーコーヒー 粉 というやつである。 www.topvalu.net これ、トップバリュならではの安さを維持しつつも、味はしっかりグアテマラ感が感じられて…

2年以上ぶりにサウナに行ってきた

先日、子供が生まれてから全く行っていなかったサウナに久しぶりに行った。2年以上ぶりだ。 最近疲れが蓄積されてきている感もあり久しぶりに行くかと思い立った当日、仕事も早めに切り上げ、夕暮れにまだ染まりきっていない街を通り抜けて、近場のスーパー…

M1 Macでgoenvを用いてGo環境を構築した

M1 MacにGo言語の環境が入っていなかったので環境構築した備忘録。 先に書いておくと、様々なサイトやブログで紹介されている方法に倣っているので、新しいことは何も書いていません。 goenvを用いてGoの1.17.3をM1 Macにインストールしました。 [追記] 初心…

deno runコマンドが構文エラーのあるファイルを読み込んでいるときに、エラーを検出しないパターンがある

現在ちょっとしたCLIツールをDenoで開発していたときに起こっていた問題について書いていく。 問題の概要と原因 内容としては deno run コマンドで構文エラーのあるファイルを読み込んでいるときに、エラーを検出しないパターンがあるというものである。 本…

Deno 1.16のリリースノートを見ながら、いくつか少しだけ試してみる(備忘録)

Deno 1.16がリリース Denoの1.16がリリースされた。 deno.com 最近Denoを触っているということもあって、1.16の変更点などを実際に試してみながらまとめてみようと思い書き始めたのだが、結局途中で体力が尽きてすべての変更は試していない。 (ちなみにまだ…

Denoの標準入力で1文字ずつの入力に対して処理を動かしたい

昨日Node.jsでキーボードで一文字打つたびに処理を実行するための備忘録を書いた。 shinshin86.hateblo.jp 今回これのDeno版を書いてみた。 といっても、Node.jsとは少々コードが変わっている。 (実際、手探り手探りの実装という形である) Denoでキーストロ…

Node.jsの標準入力で1文字ずつの入力に対して処理を発行したいとき

Node.jsの標準入力で1文字ずつの入力に対して処理を発行したいケースがある場合のメモ。 stdin.setRawMode(true) にすることでキー入力に対してイベントを発行できるようになる。 (これをつけない場合、Enterキーが押された場合のみ on('data', () => ... …

PythonでlocalStorageのmockを作ってみた。Fizz BuzzとToDoアプリの間に作るもの。

PythonでlocalStorageのmockを作ってみた 作ってみたものはこちら github.com 作った理由は特になく、以前こちらの投稿で書いたlocalStorageのmockを作った際に、同じような実装をPythonで作れないものかと思い、作ってみたというだけになる。 shinshin86.ha…

子育て日記、2021年秋

娘も生まれてもうすぐに2歳になる。 最近はコミュニケーションが良く取れるようになってきた。 こちらが何かを話すとすぐにそれを真似して喋ろうとするし、私や妻以外の人間とも率先してコミュニケーションを取ろうとしている。 保育園でも先生やクラスの友…

小さなテストライブラリをNode.jsで作ってみる(テストライブラリの自作)

以前から気になっていたことの一つに、mochaやjestなどのテストライブラリはどういう動きをしているのだろうか?というのがあった。 describe や it や expect などなど、独自の関数をテストコード内に書いてテストを実行していくが、別にこれらのコードは直…

target="_blank"のリンクを踏んだのにwindow.openerにnullが入ることについて

目次 目次 target="_blank"の危険な理由 “target=_blank”のリンクは“rel=noopener”が付いているものとして扱われることになった window.open関数を使えばwindow.openerにはアクセスできる onclickイベントの最後に "return false;"を付ける理由 window.opene…

”が"と見た目は似ていて紛らわしい(全角のダブルクオーテーションについて)

突然だが、ブラウザの開発者ツールを開き、下記のコードを入力すると構文エラーとなる。 console.log(”Hello World”); // => Uncaught SyntaxError: Invalid or unexpected token 原因は単純で上で使われている ” の文字にある。 一見すると、上の Hello Wor…

DenoでHTMLを用いたGUIアプリが作れるCarolを試してみたのと、ゆっくり吹き替え on Macについて

目次 目次 Carolについて Carolを起動させてみる Carolで作成したGUIアプリをシングルバイナリにコンパイルする deno compileコマンドでシングルバイナリを生成(失敗) deno compileコマンドでシングルバイナリを生成(成功) Carolをなぜ試そうと思ったか? Ca…

scoped modulesを用いたパッケージをnpmで公開したときに得た知見

目次 目次 scoped modulesについて npmモジュールでscoped modulesを用いるとき 1. パッケージ名は@ユーザ名/パッケージ名とする 2. publishConfigの設定を行う scoped modulesでnpmにリリースを行ったときに気をつけること scoped modulesをインストールし…

localStorage.key関数では引数に文字列やfalseやundefinedやnullを渡すとlocalStorage.key(0)と同じ結果が返ってくる

たまたま気づいたのでメモしておく。 なお、環境はChromeの 94.0.4606.81 (Official Build) (arm64)で、他のブラウザでは試していないので、もしかしたらブラウザが異なれば挙動は異なるかもしれない。 気づいたのでメモした、ぐらいの軽い備忘録なのでそ…

JestでConsider using the "jsdom" test environment.というエラーが出たので対応した

少し古くなっていたパッケージのバージョンを上げた際にJestのテストで以下のようなエラーが発生した。 The error below may be caused by using the wrong test environment, see https://jestjs.io/docs/configuration#testenvironment-string. Consider u…

Denoで利用されるimport.meta.main や import.meta.url、Deno.mainModuleについて

Deno関連のコードを読んでいたときに出てきた import.meta.main が気になったので、import.meta.url、Deno.mainModule含め調べてみた。 目次 目次 そもそもimport.metaとは? Denoで利用されるimport.metaについて import.meta.mainの挙動を調べる import .m…

Denoのcompileコマンドやクロスコンパイルについて調べた

目次 目次 このポストにおけるDenoのversion Denoで実行ファイルのバイナリを生成する方法 バイナリファイルのサイズと、deno compile --lite オプションがなくなっていたことについて Denoでのクロスコンパイルについて linux用のバイナリを生成する Window…

DeepLで誤ってパスワードを翻訳してしまったが大丈夫!?

最初に この記事はDeepLに機密情報を載せても大丈夫というような内容ではありません。 少なくともDeepLの無料版では、機密情報は入力しないでください、とDeepL側でも明示していますので、機密情報は決して入力しないでください。 これらの内容に関する日本…

RustのプロジェクトでGitHub Actionsを使う

RustのリポジトリでGItHub Actionsを使うための yml ファイルを下記にメモする。 name: Rust CI on: [push, pull_request] jobs: check: name: Check runs-on: ubuntu-latest steps: - name: Checkout sources uses: actions/checkout@v2 - name: Install st…

DenoのプロジェクトでGitHub Actionsを使う

DenoのプロジェクトでGitHub Actionsを使うために設定ファイルを書いてみたので、備忘録として残しておきます。 deno fmt と deno lint、それから deno test をGitHub Actionsで行うための設定ファイルです。 name: Deno CI on: [push, pull_request] jobs: …

iCloudの写真と動画のバックアップを停止して、iCloudの容量を確保するために調べたこと

子供が生まれてからというもの、写真や動画を取る頻度が大幅に増え、iCloudのバックアップ容量は既にいっぱいいっぱいになっている。 容量が足らなくてバックアップに失敗しました的な通知が常にiPhoneに表示されていたはずだが、いつの間にかそんな通知も出…

【クラウドストレージ vs 外付けHDD】iPhoneで撮りまくった動画はどこにバックアップするのが良いか?

結論:iPhoneで撮った写真や動画は外付けHDDにバックアップするのが一番コスパ良い! 最初に この文章を公開したのは2021年だが、2022年になった今でも時折更新している。 やはりバックアップに関する悩みはいつになっても尽きないが、結論にも書いたように…

webpack5を用いてReactでTop level awaitを有効にした環境を作成する

目次 目次 最初に ライブラリのインストール 必要なファイルの作成 webpack.config.jsの記述 アプリケーションコードの記述 index.html index.js App.js ソースコード 最初に create-react-appは用いず、自身でwebpackをインストールしてReact環境を作成する…

Top level awaitについて整理した

トップレベルawait(Top level await)について改めて自分の中で整理することにした。 これはその際の備忘録的なものとなる。 目次 目次 Top level awaitとは? Top level awaitをブラウザで試すシンプルな方法 実際に読み込まれたJSファイル上でTop level awa…

JavaScriptのimport時のファイル読み込み時、複数から呼ばれたJSファイルの挙動について

JavaScriptを書いていて、挙動を理解していない箇所があるので今日はそのメモを書く。 例えば下記のような3つのファイルがある。 // sample1.js import { userList } from "./sample2"; import sample3 from "./sample3"; console.log('===> call sample1.j…

今年もHacktoberfestの季節

Hacktoberfest 2021について 暑い夏も終わり、用がなくとも外を散歩したくなるような季節。また、この時期はHacktoberfestが開催される時期でもある Hacktoberfest 2021 わたしは去年初参加して無我夢中で頑張ってみた結果、なんとかTシャツをもらえた。 今…

mac上でダブルクリックでPySimpleGUIを用いたGUIアプリケーションを起動する方法

下記のポストに引き続き、PySimpleGUIに関するポスト。 shinshin86.hateblo.jp macでは .command という形式で .sh ファイルを作成することで、ダブルクリックでそのシェルスクリプトファイルを実行することができる。 この仕組を応用して、ファイルをダブル…