総じて言語化が苦手だなと思う。なんかもうちょっとうまく言えるでしょって思ってもなかなかうまく言えなくて苦しむことになる。
■
疲れた!!!!!
— うたがわきき (@utgwkk) 2020年1月7日
疲れた!!!
— うたがわきき (@utgwkk) 2020年1月11日
このところ毎日疲れている気がする
— うたがわきき (@utgwkk) 2020年1月14日
全角スペースはHTMLのclass名の一部になるのか
なります
<span class="こちらは 全角スペースの クラスです こちらは違うクラスです">なります</span>
根拠
HTML5 W3C Working Draft 25 May 2011 より
2.5.1 Common parser idioms The space characters, for the purposes of this specification, are U+0020 SPACE, U+0009 CHARACTER TABULATION (tab), U+000A LINE FEED (LF), U+000C FORM FEED (FF), and U+000D CARRIAGE RETURN (CR).
https://www.w3.org/TR/2011/WD-html5-20110525/common-microsyntaxes.html#space-character
scape characterといったときは上記の5文字のことを指す*1。 したがって全角スペースはspace charactersに含まれない。
2.5.7 Space-separated tokens A set of space-separated tokens is a string containing zero or more words (known as tokens) separated by one or more space characters, where words consist of any string of one or more characters, none of which are space characters.
https://www.w3.org/TR/2011/WD-html5-20110525/common-microsyntaxes.html#set-of-space-separated-tokens
space-separated tokenとはspace charactersによって区切られた、space characterを含まないトークンである。したがって全角スペースはspace-separated tokenの要素に含まれうる。
3.2.3.6 The class attribute Every HTML element may have a class attribute specified.
The attribute, if specified, must have a value that is a set of space-separated tokens representing the various classes that the element belongs to.
https://www.w3.org/TR/2011/WD-html5-20110525/elements.html#classes
class属性の値はspace-separated tokenによって構成される。したがって全角スペースはclass名に含まれうる。
VSCode Live Shareを快適に使うコツ
リモートでもペアプロ・モブプロしたい。VSCodeにはLive Shareという便利グッズがあります。こうするとうまく使えそうという使い方をいくつかシェアーします。
(業務利用の場合) 使ってよいか確認する
後述するように、仕組みを見るとwebサービスであるといえるので、業務利用してよいかは事前に確認しておきましょう。 業務利用でない場合はよしなにやりましょう。
Live Shareへの参加を承認必須とする
デフォルトでは、Live Shareを開始したときに払い出されるURLを踏んでもらうだけで、他の人にLive Shareにジョインしてもらうことができます。 これを、
- URLを踏んでもらう
- Live Shareのオーナーが承認する
という流れになるように設定することができます。 settings.jsonに
"liveshare.guestApprovalRequired": true,
を追記すればよいです。 招待URLの推測は困難なのでまあ勝手に入られることはないでしょうとは思いつつも設定しておくに越したことはないです。業務利用の場合は設定することを推奨します。
招待リンクを踏まれた通知を見逃さないように気をつけましょう*1。
通話や画面共有をする
Slack callやGoogleハングアウトなどで音声を共有したり、エディタの画面を共有しておくと、今どこのコードの話をしているのかがスムーズに分かります。
ちなみに、Live Share Audioという、VSCodeで音声を共有する拡張機能もあります。私は使ったことありません。
コードを書く人のカーソルについて行くようにする
特定の人のカーソルをフォローする設定があります。これを設定しておくとカーソルを見失いづらくなるでしょう。
ノートを取るペインがあるとよさそう
実際に編集するファイルの他に、ノートを取る用のペインを分けておくとよいかもしれません。 とりあえずコメントとしてどんどん編集してるファイルに追記してあとで消すという手もあります。
Live Shareのドキュメントを一読する・ペアプロ以外の使い方も模索してみる
とりあえず読んでおくとよいです。意外とできることがいっぱいあっておもしろい。 たとえばターミナルを共有することもできるので、VSCode上でペアオペもできます。
何度か使う練習をする
初めのうちは、ちゃんと繋げるか、使い心地はどうか、といったことが分からないと思うので、何度か使って雰囲気をつかむとよいです。まずは遊びのコードをみんなでわいわい編集するところから始めるとよさそう。
*1:1敗
野生の勘だけでコードを書いているのではないかという念
自分は体系化された知識を持っておらず、全てを野生の勘だけで実装しているのではないか、という念が払えないまま幾年が過ぎた。 情報系の大学を出てみたところで、手を動かしていない領域については全くベストプラクティスを知らず、野生を生き延びるためにやってきたことを不器用に組み合わせて乗り切ろうとしてしまう。 ベストプラクティスは最初からあるのではなく経験や知識の積み重ねによって体系化されていくので知らないのは当然とも言える。 ともかくそういう体系化された知識がないという焦りがあった。
今日はいわゆるGang of Fourデザインパターンのカタログを全て眺める活動をした。 その中には、普段からやっているようなことにも名前が付いてわざわざ分類されているのか、と感じるものから、現時点では事例を読んでもありがたみがよく分からなかったものまで様々ある。 こういうのは名前を付けて分類をすることで議論がやりやすくなるので、名前が付いていることが尊いのだろうと思う。 知らなかった、ありがたみの分からなかったパターンについてのありがたみを分かるようになるには、事例をもっとちゃんと読み解くとか、素朴な方法で実装してみてこれではあまりにつらすぎる!!! という経験をしてみるのが大事なのだろう。
ほんとうは帰省しているときに読もうと思っていたけど、実家でのびのびと読書できるような状態じゃなかったので今になってしまった。
- 作者:エリック ガンマ,ラルフ ジョンソン,リチャード ヘルム,ジョン ブリシディース
- 出版社/メーカー: ソフトバンククリエイティブ
- 発売日: 1999/10
- メディア: 単行本