投稿

10月, 2020の投稿を表示しています

ミニマリストの僕がComplyのAirPods Pro用のイヤーピースを買ってみたら神だった件。Ver2.0

イメージ
事の発端  ミニマリストの僕がComplyのAirPods Pro用のイヤーピースを買ってみたら神だった件。 からの、 そういやcomplyのAirPodsPro用のイヤーピースすごい良かったんだけど、割とすぐボロボロになって純正に逆戻りした。 品質的には微妙だから輸入してまで、というほどではなかった 正直期待外れだった — Kuehar (@KueharX) September 16, 2020 ということがあり、ここしばらく純正のイヤーピースを使っていました。 しかし、やはり純正のものは外れやすく、少し激しい運動をするとそちらの方に気が散ってしまうということで代替案を探していた。 するとComplyのホームページにこんなページができていた。 ん...?? 2.0...?? バージョンアップしてる...? ってことで買ってみました。 商品の外箱とかは前回と一緒だったので紹介はありませんが、実際に付けてみた感想としては前回より本体との装着部分が良くなっていて、今のところ外れる気配がないところがとても良い。 なお、値段としては以下の通りで、34.98ドル。 もし純正のイヤーピースが合わない方がいらっしゃるなら試してみる価値があると思います。 ただ、ComplyはAirPodsPro用のイヤーピースを日本のサイトでも販売するみたいですし、急がない方ならばそれ待ちでも良いかも。

BloggerにGoogle Domainsで取得したドメインを登録した話。

イメージ
独自ドメイン、良くない? ユーザー名.blogspot.comでもいいかもしれないがよくよく考えたら独自ドメインって選べば年数千円で取得できるしまぁ悪くないかも?と思ったので取得。 ちなみに取得自体は Google Domains で取りたいドメイン名を検索し、クレジットカードで支払うだけ。超簡単!! しかもそこからの手順も全部 ここ に書いてあってものの数分で作業が終了。 その後適用されるまで少し時間がかかったが無事エラーもなく完了した。 かなり進歩を感じてうおーすげーってなった。 でも考えてみれば非ITエンジニアとかDNSとか何やねんってなると思うし、こういう形で進歩するのは手間が減るので大歓迎かなぁ。 何にせよ、これからこのブログのアドレスは https://www.kueharx.com/ になりました。改めてよろしくお願いします。

Zennという新しめのITエンジニア向け情報共有サービスに記事を投稿してみた

Zenn、面白いかもしれない 何だか巷の情報共有に積極的な方々がこちらに投稿し始めていたので僕も便乗してみた。 Zenn 記事としてはこれ Zennに投稿してみました! いいサービスだと思うので広まって欲しいなぁ 「Unixコマンドにおける正規表現を使ったテキストファイルの検索方法を学ぶ」 https://t.co/0zrJrEJwrq — Kuehar (@KueharX) October 24, 2020 で、最近勉強しているLPIC関連の記事を書いてみました。 ここで感じたのは、技術的な文章が多めだなぁ、ということ。 読んでいて、おおそういうことなのね。というような記事が目立っているため、読んでいて楽しい。 作者様のTwitterでみる限り現段階では赤字、そして黒字にもっていくにはユーザの数を増やすのが手取り早いらしいので、無名な僕でも投稿したよ!というような記事を投稿してみることで敷居を下げていくぅ!という話でした。 気になるサービスなので今後ももしかしたらこちらに投稿し続けるかも。

LPICの勉強中に知った事 Day4

LPIC勉強中… 4日目。 睡眠時間削るのってコスパ悪くない? LPIC勉強中… 4日目。 深夜に少し解きながら書いています。 効率的に考えるならはよ寝るべきなんだろうけどね。 睡眠時間削るのってコスパ悪くない? ソートされているファイルにある連続して重複した行を1行にまとめて表示するコマンドは uniq 。 Linuxのコマンドとかオプションってよくよく考えてみると意味的に英語で考えたら当たることが結構ある気が。 カレントディレクトリとそのサブディレクトリが占めている容量をキロバイト単位で表示したいときに使うコマンドは du -k 。 ファイルやディレクトリが占めている容量はduコマンドで確認することが出来て、そのオプションとしてキロバイト単位ってことで -k を使うんだってさ。 ちなみにメガバイト単位なら -m 。 fsck コマンドでファイルシステムの整合性をチェックする時に、障害箇所を対話的に修復したい場合はオプションで -r をオプションで使う。 自動的に修復して欲しい時は -a 。自動的がautomaticallyなのは分かるけど対話的って英語でなんだ…?? ちなみに fcsk コマンドはファイルシステムのチェック、および問題を修復することが出来るというもの。 ddコマンドのオプションのうち、入力ファイルから出力ファイルへブロックをコピーする回数を指定するオプションは count 。 ちなみに bs ならば入出力のブロックを指定し、 if なら入力側のファイルを指定、 of なら出力側のファイルを指定するというもの。 inodeの数が制限されるファイルシステムは etc2 , etc3 , etc4 。 JFS と XFS は動的inodeの機能がある。 MBR方式のハードディスク「/dev/sda」デバイスのパーティションテーブルを確認したい時に使うコマンドは fdisk -l /dev/sda 。 ちなみにMBRは「マスターブートレコード」の略で、MBRの特徴としては、「HDDの容量が2TBまでしか認識できない」、「パーティションを4つまで作れる」というもの。 反対にGPTというものも存在する。 標準入力元をキーボードからファイルに切り替えるリダイレクト演算子は &

LPICの勉強中に知った事 Day3

LPIC勉強中… 3日目。 問題を解きまくっていくぅ!! LPIC勉強中… 3日目。 仕事の合間に楽しくやっております。 問題解くのが苦じゃなくなってきた。 問題を解きまくっていくぅ!! D-busとはLinuxで使われるプロセス間通信機構 シングルユーザーモードに対応するランレベルは1で、 systemd での rescue.target の起動に相当。ランレベルは頻出っぽいし丸暗記で良さそう。 ddコマンドはデータをコピーするコマンド。 ddコマンドのbs(ブロックサイズ)オプションは一度に書き込むサイズを指定するというもの。 「<<」はヒアドキュメントといい、シェルスクリプトの中で使用される。 指定した文字列が現れるまでの内容はコマンドへの標準出力として扱う。 /dev/null は特殊なデバイスファイルで、何を書いても全て消去され、読み取ろうとするとEOFが表示される。 今日はこんな感じ。 時間がないのであまり書けなかったのが残念。 寝て明日も頑張ろ〜。

LPICの勉強中に知った事 Day2

イメージ
LPIC勉強中… 早くもサボっちゃいましてね… 反復は大事。 LPIC勉強中… 早くもサボっちゃいましてね… 更新二日目にしてサボる暴挙。 そこまで日程がないのでしっかり勉強する必要があるのにサボってしまうとは情けない。 反復は大事。 このレベルだと雰囲気をつかめるまで問題を解くことが大事かと思ったので、問題を解くことを日常的に取り入れてみる。 以下復習。 rm -ir [ディレクトリ名とrm -iR [ディレクトリ名]はイコール オプションr[R]は再起的に削除すること。 manページのセクション番号は丸暗記で viエディタで5行目に飛びたいとしたら、 5G(「G」は「Goto」を意味し、n行目へ移動。) :5 のどちらかを入力すればOK viエディタのタブ幅の設定方法は仮に幅を10にしたいなら set ts=10 :set tabstop=10 pgrepコマンドで実行中のプロセスから特定の名前を持つプロセスIDを検索することができる -uオプションにユーザー名をつけるとそのユーザーの権限で動いているプロセスを検索できる プロセス→システム上で動いているプログラムの最小範囲。 プロセスIDとプロセス名はpsコマンドで。 pgrepでは実行中のプロセスを検索できる メタキャラクタの種類は覚えよう gzipのオプション。 ファイルや標準入力の内容を編集して表示するにはsedコマンドを利用する。 プロセスのnice値を表示するコマンドはtop、ps1がteeコマンドは標準入力の内容を、まさにTの字のように、標準出力先(デフォルトはディスプレイ)とファイルの双方に出力するコマンド。 systemdが稼働するシステムにおいて、次回起動時のターゲットを設定するためのsystemctlのサブコマンドは set-default モデム、TA(ターミナルアダプタ)などが属しているUSBのデバイスクラスは ACM Communication Device Class DMAとは、CPUを介することなくメインメモリと周辺機器の間で直接的に情報転送を行う方式。 Linuxがハードディスクから正常に起動できなくなった場合、インストールD

レアジョブ英会話を始めて2ヶ月経った話

イメージ
所感 続けるための工夫 オンライン英会話を始めて1ヶ月と少し経った ↑前回 はい。 記録が1ヶ月伸びました。 2ヶ月同じことをほとんど毎日続けるのって凄いんじゃないか?って思って、嬉しくなったので書いちゃいました。 所感 流石に英会話を受けることへの抵抗はかなり少なくなってきたので、聞く力を高めて言葉が少なくても正確に相手の質問を返せるようになれれば英会話がもっと楽しくなると思う。 話す方は全体的に語彙力不足な気がする。 ネイティブクラスにはなれるとも思っていないし、なろうともしていないけど、せめてコミュニケーションを滞り無く出来るようになりたいよね、っていう。 続けるための工夫 続けるために心掛けている最近のブームは朝の目覚まし代わりに受講する、というもの。 最近、朝がめっきり寒くなってきて、僕のような自己管理が出来ない大人は早起きを習慣にしようとして目覚ましを早くセットしても、いざ寒いと目覚ましを止めてギリギリまで寝てしまう。 その対策として朝に受講する。 朝一番とはいえ、25分も話せば目が覚めるし、夜の予定に左右されなくなるので続ける、という観点から考えると非常に効率的。 他にも勉強したいことはあるのでそこまで時間を割けるかというと微妙だけど1日1時間くらいは英語に触れる生活を続けていきたいなぁ、と思う今日この頃。 風邪ひかないように体調に気をつけまっしょい。

LPICの勉強中に知った事 Day1

イメージ
LPIC勉強中… 実は申し込んじゃいましてね… 基本的なコマンドは意外と難しい ひとまず解いて解説を読み、自分の言葉にして見直す。 LPIC勉強中… 実は申し込んじゃいましてね… Level1の101だけですが、近い時期にとりあえず受験しよ〜ってことで。 勉強するなら自分の役に立ちそうなことをまとめていこう、ということで記事を書いてます。 あと単純に見直しやすいんですよね。 見て読んでって勉強法で行ける人もいるとは思うんですけど正直そこまで脳のスペック高くないので自分なりに書いて覚えるのもありかなと。 もっと言えば他の人の刺激になればなと。 嘘ですごめんなさい。とにかく自分が受かりたいだけでした。 基本的なコマンドは意外と難しい というのが今日問題を解いていて感じたこと。 あ、ちなみに問題集は以下のもの。 Linux教科書 LPIC レベル1 スピードマスター問題集 Version5.0対応 普段意識してないだけなんだろうけど、オプションとか本当使ってなかった。 シェル変数は set で、環境変数は env 。実は覚えるのが面倒臭くてググって出してたなんて言えない。 現在のディレクトリを出すコマンド→ pwd なのは知っていたけど、 echo${PWD} でも出せるのは知らんかった。大文字小文字を区別するからきちんと大文字で記述しましょう。 シェルオプションを有効にするのは set -o ,逆に無効にするのは set +o 上書きを禁止するにはoの後に noclobber 。ちなみにこれは set -c とイコール。 bash の中ではシェル変数 PS1 →「コマンドプロンプト」、 PS2 →「2次プロンプト」。2じプロンプトっていうのはコマンドプロンプトが完了せずに継続中なこと。続けて記述が出来る。すげー。 cd ~[ユーザ名] は無条件でユーザ名のディレクトリに飛ぶ。 man コマンドで表示されるマニュアルのディレクトリは 元からあるやつ→ /usr/share/man ダウンロードしたやつ→ /usr/local/share/man history コマンドの実行履歴の保存場所は ~/.bash_history su - コマンドでrootユーザなどから元のユーザに復帰

MacでのPlantUMLを使ったアクティビティ図の書き方あれこれ①

イメージ
アクティビティ図について アクティビティ図とは何ぞや? それでそれで?どうやって記述するの? 導入 実行環境 導入要素 JDK graphviz PlantUML VSCode 実例 アクティビティ図について UMLでアクティビティ図を書く機会があったので復習がてら基本的な流れをメモしておこうと思い、例で考えながら各構成要素について書き残しておこうと思います。 アクティビティ図とは何ぞや? 処理と処理の順番を表現するために作られた表記法で、具体的な業務の流れを各人で共有し、足りないものはないか、もしくは余分な構成要素が存在しないかをお互いに認知するきっかけともなりうるので多くの開発現場で導入されています。 アルゴリズムなどの考え方もこのアクティビティ図で表現されることが多く、抽象的な流れを具体的なものに落とし込むことはITエンジニアとして重要な能力の一つでしょう。 それでそれで?どうやって記述するの? 今回は PlantUML を使って記述します。 公式サイトに記述がある通り、 PlantUML は、以下のようなダイアグラムを素早く作成するためのコンポーネントです。 シーケンス図 ユースケース図 クラス図 アクティビティ図 ( 古い文法はこちら ) コンポーネント図 状態遷移図(ステートマシン図) オブジェクト図 配置図 タイミング図 以下のような、UML以外の図もサポートしてます。 ワイヤーフレーム アーキテクチャ図 仕様及び記述言語 (SDL) Ditaa ガントチャート マインドマップ WBS図(作業分解図) AsciiMath や JLaTeXMath による、数学的記法 ER図 引用: https://plantuml.com/ja/ とある通り、様々な設計図やフロー図を素早く書けることから多くの人に使われています。 コードっぽく書けるというのが非常にありがたい点で、最初は特有の文法に慣れるのに時間がかかるかもしれませんが、慣れてしまえば非常に手早く書くことができるようになります。 導入 今回はVSCodeで使います。 環境的には以下を導入しましょう。 実行環境 OSX Catalina 10.15.7 Homebrew 2

LPIC Level1のためにVagrant+VirtualboxでUbuntuを仮想環境として構築した手順。

イメージ
今更ながら そもそもこれらは何? Virtualbox Virtualboxって何? 使うメリットはあるの? Vagrant Vagrantって何? それは分かった。何のメリットがあるの?Virtualboxだけで良くない? 環境構築 環境 VirtualBox Vagrant 今更ながら LPIC面白そうだし受けてみるか!ということでひとまず、 1週間でLPICの基礎が学べる本 第3版 徹底攻略シリーズ を読んで、 Linux教科書 LPICレベル1 Version5.0対応 で出題範囲のインプットをしながら ping-t の問題を解いている最中です。 まぁ問題を暗記して解けるようにはなりそうだけど、少し問題の構造を変えられたら解けなくなりそうだし、動かさずに覚えるのは難しそうだと感じたので動かそう!という目的で構築しました。 何かしら前例があるだろうと思って検索してみると、以下のような動画で実際に同じような環境でCentOSを動かしていたので、Ubuntuを動かす場合の環境構築をしてみました。 新入社員研修のプロが伝授!LPIC-1学習ポイント そもそもこれらは何? Virtualbox Virtualboxって何? Oracleが管理しているOSSの仮想環境を構築するためのソフトです。 使うメリットはあるの? じゃあ仮想環境を作ると何が嬉しいの?という疑問が生まれると思いますが、一つのOSの上で複数のOSを取り扱うことができるようになる、というものが一般的でしょう。 例えば、多くの場合、本番環境と開発環境は異なります。 必要なパッケージやOSによる差異など異なる要素は様々ですが、これらを実際にローカルの開発環境で動かしたい、となった時に使うものです。 また、仮想環境で何か致命的なミスを起こしたとしても、その環境が元のOSに影響を及ぼしたりすることはありません。 これらのメリットを享受するために仮想化が使われています。 Vagrant Vagrantって何? VMWareやVirtualboxとかの仮想化ソフトの操作を、代行してくれるソフトです。 今回はこれを使って構築することで本来必要なOS(Ubuntuのイメージのダウンロードなど)の操作をVagrantを通し

「Elements of Programming Interviews in Python」を買ってパラパラっと読んだ話

イメージ
Elements of Programming Interviews in Python C++とかJavaとかで解説をしている本はあったけどPythonで解説している本はなかったので5000円ちょい出して本を買ってみた。 この本は以下の記事でたまたま知ったのだが、 【21新卒SWE】 私はこうしてGoogleに落ちた ~Googleに挑んだ120日~ 個人的にPythonを使ってLeetCodeを解いていた時期があったので読んでおいて損はないのだろうと思い、本にしては高いが楽しく時間が潰せそうだったので海外から取り寄せた。(上の記事の人のスペックが高すぎて初めて読んだ時に驚いた) もちろん英語なのでパラパラっと読むのにも時間はかかったけども、ざっと読んで見た感じアルゴリズムとデータ構造だけではなくてPythonの言語的な仕様について触れていたり、オブジェクト指向はなんぞやとかシステムデザインについてだったりとかこれ一冊を読んで場数を踏めば面接の通過率がかなり上がりそうな感じ。 今の所そういう面接とかを受けたりする予定はないけど、将来どうなるかなんて分からないし、何より面接で必要とされるということはITエンジニアとして知っておいておかないとまずいということだから格闘しながら詳細まで読んでいくべきなのかなー、と思いました。 それにしても、今の段階でもあー、Pythonでコーディング面接受けるならこれ読んどけば大丈夫そうだなって感じがするくらいデカくて分厚い。 もちろん面接に臨む以上、問題との相性の運とか募集しているポジションに合う人材とかその他諸々の要素はあるんだろうけども、僕はその場の機転が効くタイプではないのでコツコツ勉強して地道に実力を伸ばしていくしかない。 コツコツ読んでハマりそうな部分をメモって直前に思い出すだけでも全然違うし、何より業務、もしくは趣味で触ったことがあっても僕の劇弱記憶装置では覚えていても正確に説明できるか分からないので、そう言った所で自信を持って臨めるようにするためにも頑張ろ〜って感じで! あ、ちなみにPythonを書いて競技プログラミングとかやられてる人にも良い本だとは思うのですが、英語の壁、そして日本語の本( Pythonで学ぶアルゴリズムとデータ構造 (データサイエンス入門シリーズ )  )とかで十分だと思うのでそういった所に不安を感

Udemyの「React - The Complete Guide (incl Hooks, React Router, Redux)」に入門した話。

Reactがやりたい・・・ということでええ感じに解説してくれそうな本をパラパラ読んでいたけどやはり目に見えて動くものが作りたいなぁということでUdemyの React - The Complete Guide (incl Hooks, React Router, Redux) に入門した。 海外の講義の方がレビューが多くて競争率高くなってよりいい講座が多いと聞いているし、こういう所で英語を聴きならしておくとより良さげだったのでとりあえずReactで検索に引っかかったええ感じのコースをチョイスした、というのが大体の流れです。 テンション高くてええ感じなのでなかなかに楽しく続けられそう(今は1章が終わったところなので何とも言えないが。) 動画形式とは言えきっちり手を動かせるのは嬉しい。 フロントエンドの知識弱弱マンなのでこういう形式でキャッチアップできると楽しい仕事も増えそうではあるので頑張りたいなぁ。

Courseraの「Object Oriented Programming in Java」を修了した話。

イメージ
移動時間とか有給取得とかで時間ができたので一気に終わらせました。 個人的に気になる部分についてはまぁまぁ触れられた感じで、Javaの知識がない人でも基本的な参照渡しやスコープから教えてくれるし、オブジェクト指向の大切な要素(ポリモーフィズムとか)をしっかりコードを書いたりして弄くり回す、という自分にとってはそこそこ有意義な講義だった。 あとアルゴリズムとデータ構造、ソートあたりも最後の方で触れたり。 ただ、Javaアプレットを使って試さなければならないので、Javaのバージョンを合わせたりしなければならないことはそこに関しては正直どうなんだ、という感じはしました。 あとEclipseを入れたけどやっぱりそこまで好きではない、VSCodeの方が好き。 知識レベルも少しはあったし、一応時間もお金もかかるものなので、もし同じ状況になったとして、もう一回受けるかというと微妙・・・ではあるが、オブジェクト指向ってなんやねん、全然分からん、という基礎を固めたい人には時間を取って学ぶ価値はアリかと。 この手の講義はどうしても受け始めてから終わるまで出来が難しいので、むやみやたらに取るのはいかがなものかと感じた。本みたいに最初からパラっと読んであ、良さそうとかって感じにはならないし。 次に勉強したい要素としては、 Linux(LPICあたりを目処に勉強) React(ナウでヤングなの勉強したい) アルゴリズムとデータ構造( Elements of Programming Interviews in Python: The Insiders' Guide を買ったので届き次第読んだり書いたり) オンライン英会話(3ヶ月続いたら何か自分にプレゼントしよう) といった所で、まだまだ興味が尽きなくてモチベが高いのでサクサクっと趣味で本を読んだり、作っていければなぁと思っている今日この頃。

オンライン英会話を始めて1ヶ月と少し経った

イメージ
はい。 レアジョブを始めて1日を除いて毎日、それを1ヶ月と少し続けられているので、ちゃんと続いていることを実感するためにもしっかりとアウトプットしておきます。 これだけ見るとすごい時間になってそうですけど、時間に換算するとたったの20時間。1回25分というのはやりやすさもあるが、同時にそこまで学習時間が伸びないという弊害もあるんだなぁということを実感しました。 最近のマイルールで必ず1時間/日は英語に触れる時間を作るために試行錯誤していて、主な教材はレアジョブ、Coursera、Amazonプライム、 英会話1000本ノック(ビジネス編) Kindle版 って感じでローテションしていて、AmazonプライムビデオはSUITS、シリコンバレー、アップロードとかを何回も見返して聞き取れるように頑張っている感じ。 SUITSは大人の英語、シリコンバレーは大人になりきれないITエンジニアの日常、アップロードはその中間、みたいな感じで気軽に触れられる、楽しい教材なのが良い。 気の向いた時に気軽に見れるようにiPhoneにダウンロードしていて、移動時間とかにスパッと1話分見るだけでも30分近く英語に触れていることに換算できるのでかなり楽な反面、実際にはそこまで考えなくても進むし、英語を正しく聴けているかをチェックしようと思うとなかなかに集中力がいるのが難点。 英会話1000本ノック(ビジネス編) Kindle版 は便利なフレーズを丸暗記してそのフレーズを使い倒そうという感じでとにかく楽をしたい僕にはとても合っている。 いい感じに細かくセクションに切って気が向いた時にチェックしたりしているが、最近少しサボり気味なのでどこかでしっかりやりこみたいが・・・ うーん、なかなかむずかしい。 オンライン英会話は基本的な日常英会話を勉強できていいなぁ、と思いつつも、会社の補助とかを使えば対面でのビジネス英会話を安く済ませられるらしい。 が、調べてみたけどそれでも高くてなかなか躊躇する金額だったのでひとまず保留中。 流石にオンライン英会話が安すぎる弊害なのかな、感覚が麻痺している気が。 基本的なレベルを上げてどこかで切り替えるのが良いのかも。 ひとまず3ヶ月はレアジョブ続けてまたその時考える感じで継続していこうかな。