その変数名だけはやめろ:頼むから analysis を anal と略さないでください
下ネタ系
使用者の意図 | 変数名 | 脳内解釈 | 読み方 |
---|---|---|---|
temporary, temperature | tmp |
timpo | チンポ |
cumulative | cum |
cum | カム(英: 精子) |
count, client | cnt |
cunt | カント(英: 女性器) |
assign, assembly | ass |
ass | アス(英: ケツ) |
client | clit |
clit | クリトリス(英: 陰核) |
analyze, analysis | anal |
anal | アナル(英: 肛門) |
unknown | unk |
unko | ウンコ |
Linux には /tmp
という一時ファイル用のディレクトリがあるので tmp
は許容範囲ではある。cnt
は英語圏でも普通に使われる変数名のようで、ass
や anal
ほどの忌避感はないようである。
最悪な変数名は anal_check
や anal_insert
である。
叩いた回数の累積などを cumshot
(「射精」のスラング)にするのも割と最悪みがあるようだが、日本人にはあまり伝わらないという意味でそこまででもない。
以下、改善案。
変数名 | 改善案 | 理由 | |
---|---|---|---|
tmp |
→ | temp |
だいぶチンポみが薄れる |
cum |
→ | cumul |
精子臭さは取れた |
cnt |
→ |
c , t , count
|
どうせ略すならこうしろ/いまどき数文字くらい略すな |
ass |
→ |
asn , asm , assign , assembly
|
同上 |
clit |
→ | client |
いまどき数文字くらい略すな |
anal |
→ |
analyze , analysis
|
同上 |
unk |
→ | unknown |
同上 |
そこまで気にしなくていいと思う単語
使用者の意図 | 変数名 | 意味 |
---|---|---|
sexuality | sex |
性別 |
英語圏では普通に性別を指す言葉なので、データベースの性別カラムの名前が sex
になっていても別に構わないと思う。あえて gender
などとすると意味合いが変わってしまう。
ただし、変数 sex
の周りでバグが起きると職場や客先で「セックス」と連呼することになる。
確率の低い下ネタ
いままで遭遇したことがないが、ごく低い確率で生じるかもしれない下ネタ。4文字程度のタグを自動生成する際に確率的に発生してしまうこともあるらしい。
以下の表で、[x]
は先頭が x
で始まる単語を指す。
変数名 | 脳内解釈 | 意味 | 発生状況 |
---|---|---|---|
sperm |
sperm | 精子 | [s] + permutation / [s] + permission |
tit |
tit | 乳首 | [t] + iterator |
boob |
boob | おっぱい | byte + [o] + object |
porn |
porn | ポルノ | "positive or negative" |
bich , bitch
|
bitch | ビッチ | bit + check / bit + change |
乳首とおっぱいはシモじゃねぇ、上だろというご意見は慎んで受け流します。
案外ダメな下ネタ
変数名 | 意味 |
---|---|
xxx |
ドエロいコンテンツ |
X
に「キス」や「X-指定(ポルノコンテンツのレーティング)」の意味があり、それを3つ重ねた XXX
はドエロいコンテンツを指すようになった[1]。
ダミーの IP アドレスとして XXX.XXX.XXX.XXX
と書く人がいるが、これもいけない。トップレベルドメイン .xxx
は正式に認可されたドメインで、ポルノサイトを区別するために使われていたりする。実際に https://XXX.XXX にアクセスすると以下のようなポルノサイトのハブサイトに繋がる。(職場でクリックしちゃダメ!!)
すべてのポルノサイトをすぐに見つけられます!
例示やテストに用いるダミーの IP アドレスは、RFC 5737 において Documentation Address Blocks として以下の3つのアドレスブロックが割り当てられているので、こちらを使うこと。
名称 | アドレスブロック |
---|---|
TEST-NET-1 | 192.0.2.0/24 |
TEST-NET-2 | 198.51.100.0/24 |
TEST-NET-3 | 203.0.113.0/24 |
Fワード系
fuck
と faggot
。その他、shit
のような単に汚い言葉を集めると無限にあるので紹介はしない。
黒歴史系
日本人が思ってるより英語圏ではセンシティブなワードたち。
変数名 | 意味 | 発生状況 |
---|---|---|
nazi |
ナチス | 自動生成の4文字タグ |
kkk |
クー・クラックス・クラン | ループ変数など |
commie |
コミー(共産主義者の侮蔑用語) | "commit" の typo |
nigger |
黒人の差別用語 | 万が一にも発生してはダメ[2] |
slave |
奴隷 | ノードの役割 |
master [3]
|
奴隷の主人 | ノードの役割、ブランチ名、原本 |
genocide |
虐殺 | コンテナやプロセスをすべてキルする |
nigger
には派生系が多く、Nワードと呼ばれているので注意する。
宗教系
変数名 | 意味 | 発生状況 |
---|---|---|
voodoo |
ブードゥー | 日本語の「黒魔術」を翻訳するとき |
ブードゥー教は実際に存在する宗教で、アメリカ人のステレオタイプにより実際の宗教とは関係のない「黒魔術」としての意味で用いられる。日本語のプログラミングにおける「黒魔術」の意味合いで "voodoo" という単語が用いられることがあり、ブードゥー教に対して大変失礼なので使ってはならない。
その他
上記の錚々たるメンツと比べれば、その他は圧倒的にどうとでもしてくれていい。
文字が紛らわしい系
パッと見よく分からない文字や省略は比較的嫌われる。以下の文字で1文字変数を作ると簡単に同僚から嫌われることができる。
-
o
,O
,0
-
l
,I
,1
最悪の使用例は以下。
意図 | 変数名 | |
---|---|---|
first | → | 1st |
last | → | lst |
lst
は list
の省略形としても書きがち[4]。
SmallIllustration
などもかなり最悪みがある。
名前が紛らわしい系
圧倒的に頻出かつ紛らわしいのはぶっちぎりで id
である。id
という変数名は識別情報(ID: identification)とインデックス(index)に使われることがあり、これらはループの中で同時に出現することもある。
個人的には id
は識別情報(ID: identification)にのみ用いるべきだと思う。なぜならば本来 I.D. と略すところを ID と書くほうが自然になるほど定着した identification の省略形だからである。
index に対しては i
, idx
, index
などを状況に応じて使えばよいと思う。
ちなみに index の複数形は indices
と indexes
の両方のケースがある。index_list
とでもしておけばケンカにはならない。
頼んだぞ。
別にいいんじゃないのと思う変数名
x
, y
, z
, i
, j
, k
などの1文字変数。言語ごとの文化に依存する話ではあると思いつつも、一般論として。
処理対象のデータ型が具体的に決まっていない汎用的な関数であるならば、その引数や引数の処理結果に対して x
や y
のような抽象的な変数名をつけることには問題がないと思う。その複数形である xs
や ys
についても普通に便利だと思う。100行も200行もある関数でやられると困るが、3行の汎用関数であれば別に気にしない。
ループ変数の i
, j
, k
なども、下手に長くして要素指定が異常に見にくくなるよりは 100% マシである。私は地獄のような数値演算を自前で書いたときにそう思った。
行列を X
, Y
、ベクトルを v
で表すなど、数学的な文脈でも他に名付けようがない場合があるので許されるべきだと思う。
推奨される命名
10,000 Like 超えの圧倒的鉄板記事があるのだから、それを見ればよいんじゃないかな。
おしまい
本記事の対象読者は小学生である。
Discussion