PCのキーボードを買った
以前のキーボード
今まで使っていたキーボードはELECOMの3000~4000円くらいのやつでした。 JIS配列で、メンブレンな感じです。打鍵音が静かなのが良くて使えないことはなかったですが、打ち心地が悪かったり、右Shiftが小さかったりと使いづらさを感じていました。自分はテンキーを使わないのでスペースの無駄にもなっていました。もっと考えて買えよ!と言われそうですが、高校3年生の自分は「使えればいいや」というのりで買ったみたいで利便性とか頭になかったみたいです。まあ実際に使えないことはなかったので全くだめというわけではないですが。
HHKBを沢山の人から勧められた
キーボードの購入をするにあたって人から話を聞いていると、HHKBを勧められることが多かったです。 試打もさせてもらって、静電容量無接点方式のスコスコ感すげぇ~ってなりました(静電容量無接点方式無駄に言いたい病)。 長く作業する際、打ち心地はとても大事だと思うのですが、HHKBはそのあたりの性能が抜群に良さそうでした。 シンプルなデザインも気に入って、最初にほしいなと思ったのはHHKBです。
最終的に買ったのはKeychron K6
最終的に買ったのはHHKBでなく、 KeychronのK6でした。 シンプルで少しレトロを感じる見た目に惹かれて、自分が求めている性能も満たしていたので購入しました。 なぜHHKBを買わなかったかというと、単純に予算オーバーだったからです。HHKBはもっとお金があるときに買うことにします。
使ってみて
K6はメカニカルキーボードで自分が選んだのは赤軸というやつでした。 最初打ったときは打鍵感が軽すぎて打ちづらい気もしましたが、慣れてくると全然問題なく、むしろ以前よりタイプスピードが速くなりました。 寿司打換算ですが平均キータイプ数が4.5回/sから5.0回/sになりました。 打ってて楽しいのでそのおかげもあると思います。 JIS配列からUS配列に乗り換えたので、記号系を含めるとまだ以前のJIS配列のキーボードを使ったほうが速く打てそうですが、慣れの問題です。 あと、キーボードのサイズが以前より小さくなって机のスペースが広くなったのと、小さいかばんでも持ち運びができるようになったのが嬉しかったです。 大きさを比較してみるとこんな感じです。まあ、これに関しては最初からもっと小さいの買っとけよという感じですけどね。
対応OSはmacOS,Windows,iOS,Androidとなっていて、実用は別としてiOSに接続して使うのが結構楽しかったです。 PCがなくてもスマホとキーボード持っていけば文字を打つぐらいの作業はできるかも?と思いました。 Linuxに対応しているわけではないですが、Keychron Linux User Groupというのがあって、 そこに転がってる記事を参考にすると色々設定ができるとおもいます。
チルダとバッククオートがescと一緒になってる!
使っていて最初に困ったのがこれです。 まさかescとチルダ、バッククオートが一緒になっているなんて思わなかったです。 これも慣れの問題かもしれないですが、まだチルダを打とうとするたびに指の動きが一旦停止します。 割と使う記号なのでさっさと慣れたいところです。 (Karabinerとか使ってチルダの場所を変える手もあるか...?)
結構高さがある
買う前から少し気にしていたのですが、K6は高さが結構あります。 比較するとこんな感じです。一番下からMacbook Pro 2017, ELECOM, K6です。 今まで極薄のキーボードを使っていたので、この高さは結構心配していました。 なのでダメそうだったらリストレストを買おうと思っていました。しかし、今の所打っていて手首が痛くなったり異常に疲れたりしていないので良かったです。 この高さは人によって合う合わないがありそうです。(リストレストを使えば改善できると思います。)
今の所、打つのが楽しくて気に入っています。買ってよかった。
車は大事にしよう
学校もバイト先もそこそこ遠く,この時節ながら車を割と頻繁に使うのですが,昨日トランスミッション警告灯がついてしまったので今日点検に出しました. 結果は走行機能に特に問題は見受けられないとのことでひとまず安心しました.原因はセンサー系の誤動作だったようです. トランスミッション系は取り換えになると20万以上は飛ぶと思うので,点検結果を聞くまでドキドキしていましたし,最悪今まで乗ってきた車を手放さなければいけなところまで考えてしまい辛かったです. 最近車のメンテに気が回っていなかった矢先の出来事で罪悪感もありました.少なくともあと3~4年は乗っていたいので,改心してメンテを怠らないようにします. 洗車もしっかりしてあげます.
自分のSwiftは.アクセルのレスポンスはあまり良いとは言えないし,Stop & Goを繰り返すと機嫌が悪くなってレスポンスを返してくれない時もあります(それは故障では...?).妹の車を借りた時は運転の快適さに毎回感動し,自分の車に戻ると重い鉄の塊を操作している気分になります.でも車高が低めなので高速ではとても安定しているし,機嫌が悪くなることもありません.気をつけるところを気をつければ見た目がかっこよく運転していて楽しい車です.
沖縄で車を買うなら軽自動車が最有力候補です.道や駐車場は狭く,駐車場の数が少ないためです.なので自分が最初に考えたのは軽自動車の購入だったのですが,祖母に乗用車を勧められお金も出してもらったので乗用車を買うことにしました.また,自分は実用性を考えて車内スペースが広かったり,荷物をたくさん載せられたりするるような車を検討したのですが,その時父がSwiftを見つけてきて,実用性よりカッコ良いのに乗った方が良いとのことで最終的にSwiftを中古で購入することになった感じです.何一つ自分の思い通りではなくなりましたが,今はSwiftでよかったと思っています.こんな成り行きで買うのも悪くはないですね.
Swiftのおかげか分かりませんが,自分の思考パターンが高校生の時からすこし変化しました.高校生の時は真面目で堅実!という感じでしたが,今はまあ楽しくやっていきましょ〜というのが追加された感じです.真面目だから実力があるというわけではないので,多少不真面目でも何かに楽しく取り組み続けられる方が良いと思います.気分も良いですし.
いつの間に2月
時間過ぎるの早いですね.
最近は期末レポート系が結構大変でしたが, 昨日で授業も全部終わって,課題も残すところあと1講義分です.
シス管の方は最近はLDAPと縁があって,どのタスクをやってもLDAPに遭遇します. (年度末だからかな) ちょっと前までとても苦手意識を持っていたLDAPですが,おかげさまでだいぶ仲良くなれた気がします.
あいかわらず苦手なのがcronですね. コマンドをフルパスで指定してあげないといけないのは承知しているのですが,どうしても毎回罠に引っかかります. cronで設定をする時にフルパスにするのは忘れないですが,そこで設定したスクリプトやコードの中身でフルパスにするのを忘れます. 一発でcronを通せた試しがないです.
この頃やっとシステムの大まかな構成が掴めてきて,割と楽しいです. まだまだわからないことは多いですが,とりあえず無事に年度を越せるように準備をしていきたいと思います.
1月10日くらいにTOEICを受けていました. L300, R235の535点でした.どうせなら600点台に乗りたいので600点以上を目標に勉強を続けているところです. 次は3月21日の午後を受けようと思っています.Readingの方に伸び代がありそうですね.
英語力だけでなく日本語力も鍛えないといけないと最近よく思います. 特に説明力はいろいろ役に立つと思うのでどうにか身につけていきたいです.
なんか頭がこんがらがっていたのでとりあえず書きました.おやすみ.
win10とUbuntu20.04のdual bootした
家のwin10 pcにUbuntuを入れてみました。
理由
- 自分のMacBook Proの容量が圧倒的に足りないから。
インストールや設定中のメモ書き
とりあえずMacBook Proと同じように作業ができるようにするのを目標に。
これから
作業はできる状態になったので使っていきたいと思います。 あとやることとしては、バックアップのとり方とか有線接続たまに切れる問題とかを解決していこうかなと思います。 また、使っていくうちに問題が発覚していくと思うのでその都度解決していこうと思います。 家での作業スペースは確保できたので良かったです。 でもやっぱりMacBookは使うので、どうにか容量を開けたいですね。
新しいPC買った気分!!
Google Cloud PlatformのService account
google adminで新規のgoogle accountを作成するAPIを叩くには,いくつか方法があるのですが,今回はservice accountを利用した方法をやってみました. 実際に叩いたAPIはこれです.
Guidesの
Prerequisites
-> Authorize Requests
-> Perform Google Workspace Domain-Wide Delegation of Authority
の順にひとつずつやっていけば,google developer consoleでアプリケーションを作成したり,service accountを作成したり,google adminの方でservice accountを登録したりできます. (変に手順飛ばすと詰まるよ)
コードをみる
今回は具体的なコードをみて使い方を確かめたいと思います.if err != nil {}
的なのとコメントは省略してます.
package main import ( "encoding/json" "fmt" "io/ioutil" "golang.org/x/net/context" "golang.org/x/oauth2/google" admin "google.golang.org/api/admin/directory/v1" "google.golang.org/api/option" ) var ServiceAccountFilePath = "private_key_file.json" var UsersJson = "./users.json" var AdminUser = "example@aaa.com" func CreateDirectoryService() (*admin.Service, error) { ctx := context.Background() jsonCredentials, _ := ioutil.ReadFile(ServiceAccountFilePath) config, _ := google.JWTConfigFromJSON(jsonCredentials, admin.AdminDirectoryUserScope) config.Subject = AdminUser ts := config.TokenSource(ctx) srv, _ := admin.NewService(ctx, option.WithTokenSource(ts)) return srv, nil } func main() { service, _ := CreateDirectoryService() file, _ := ioutil.ReadFile("./users.json") var users []admin.User json.Unmarshal(file, &users) for _, user := range users { service.Users.Insert(&user).Do() } }
importするやつと,CreateDirectoryService()
はここから丸コピです.
ServiceAccountFilePath
サービスアカウントを作成後,それに割り当てる鍵を作成する手順があると思います. そのときに生成された秘密鍵ファイルをここで指定しています. 秘密鍵ファイルには鍵以外にも認証に必要な情報がまとめて入っています. このファイルが流出するとサービスアカウントがほぼ自由に使えてしまうので取り扱いには注意する必要があります. (具体的にはこのファイルとadminのアカウント名がセットになると使えてしまいます.そのはずです.)
UsersJson
下記のような,作成したいgoogleアカウントの情報が入ったJsonを指定します.
[ { "name": { "familyName": "test", "givenName": "matac" }, "password": "hogehoge", "primaryEmail": "matactest@example.com" }, { "name": { "familyName": "test2", "givenName": "matac" }, "password": "hogehoge", "primaryEmail": "matactest2@example.com" } ]
APIリファレンスを参照して生成するなり手書きするなり?します.
AdminUser
developer consoleで指定したユーザーをここで指定してあげます.(基本的には自分のアカウント) consoleで何も指定していなくても,google adminのsuper admin accountは使えるみたいです. (それ以下の権限の場合は未検証)
CreateDirectoryService()
鍵ファイルを利用して,APIのメソッドをたくさん抱えた*admin.Service
型を返します.
APIを叩くにはこいつを使います.
関数の処理としては,鍵ファイルのJsonからJWTという証明書付きの改竄不可能なJsonを生成し,設定を入力してServiceを生成している感じです.
JWTを生成するときに,admin.AdminDirectoryUserScope
スコープを指定していますが,
サービスアカウントを使用する時は,ここでの指定とgoogle admin consoleでのスコープの追加が必要になります.(Guidesの手順にあります.)
main()
admin.Service
のインスタンスを生成し,作成したいaccountの情報が記述されたJsonを開いて[]admin.User
のusersを作成しています.
実際にAPIを叩いている部分はservice.Users.Insert(&user).Do()
で,Insertメソッドを使用して新規アカウントを作成しています.
リファレンスを見れば他にどんなメソッドがあるかわかります.
利点
GuidesのQuickstartsをやるとわかりますが,途中で認証windowが出てくると思います. それが出てくると自動化する場合などに困ります. そこで鍵ファイルを使用して認証するservice accountを使うことで,認証windowを出さずに処理を完了することができるようになります. また,引き継ぎの際にもservice accountに処理を任せていれば属人化が軽減されるとかなんとか.
あとがき
なんか間違ってたら,遠慮なくコメントに書いてもらえると喜びます. Golangはこんな書き方しない!とかでも.
最近macbookの調子が悪い
大学入学時に購入したMacBook Pro (13-inch, 2017, Two Thunderbolt 3 ports)
の調子が最近悪くなってきました.
バッテリーの持ちが悪くなってきて,Service Recommendedの表示が出てきたのと,restartが絶対に失敗するようになった感じです.
まあ,それだけといえばそれだけなんですが,
以前windows pcのSSDが故障した時も「ちょっと挙動がおかしいかな?」くらいだったところからいきなり故障して0GB表示になってしまったことがあったので,早めに修理に出したいですね.
大学の生協で買ったmacbookなのでそこで修理できるかな.
修理はするとしてもやはり寿命は近いと思うし,必要なものなので,新しいmacbookを買うために今お金を貯めています.
2台体制にしておくといろいろ安心になると思います.SSDの容量不足からも開放されます.
初TOEIC
今日は人生で初めてTOEICを受験しました.L&Rの方です.手応えはまあよくわからなかったです. 1ヶ月ちょい前から勉強をはじめたのですが(遅い),少しの単語力の増強とTOEICがどんなテストなのかくらいの知識しかつけられずに今日に至ってしまいました. わからない問題はしっかり飛ばして,時間内に一応全部解けたので時間配分だけはうまくいったってかんじです... あんまり良い結果は期待できないですね. これからについてですが,英語の勉強は単語力は力技であげられると思うのでそこは続けていきたいと思います.文法は気が向いたらやります. またTOEIC受けようかな.
余談
TOEICは沖縄産業支援センターが会場で,母に送り迎えをお願いしました(弟もついてきた). まえから欲しいなぁみたいなことを言っていたのですが,私がTOEICを受けている間になんと七輪を購入していました(¥1,900). 寒い日が続いているのでここで暖かい七輪の画像をお送りします.