Heppoko Binbo Yarou no Newbie Nikki

旧題: へっぽこびんぼう野郎のnewbie日記 #vZkt8fc6J

WTH is the complexity of trains in Tokyo? -- How to ride on a train 'fluently' in Tokyo.

I give you introductions to ride on a train in Tokyo. These tips aim to people who wants to live in Tokyo or some places in Japan. Maybe it's overkill if you just come to Japan for sightseeing.

Since I'm a native Japanese speaker and as it is said that many Japanese people are not quite good at speaking in English, my explanation is not so good, either. So if you feel some sentences, phrases, and paragraphs are odd, I would appreciate if you contact me on twitter or comment it in the last section.

Here is my twitter account! -> haᵲuʞaͣeͤͣͤͣru #vZkt8fc6J (@d24d30033e5c469) | Twitter

The Japanese version is here -> わらうなんてぜったいにゆるさないぞ電車ネイティブ(田舎から出てきた人への都内での電車の乗り方Tips) - Heppoko Binbo Yarou no Newbie Nikki (It's not the exactly same version, though.)

Anyway, let's get started to explain.

Tokyo

I don't know your background. So, I'd like to start to explain about trains in Tokyo from basics.

Tokyo has 30 million population, and population density of the central Tokyo is 15,000 people/km2. It means each person can use only 66.6m2(about 8m x 8m area). This is insane, isn't it? We are being jammed into such a narrow spaces whenever we work, study and play. (Actually Tokyo prefecture is not exactly Tokyo itself. When non-Japanese people refer to Tokyo, it's a metropolitan region near Tokyo prefecture. However I use Tokyo as the region in this whole article.)

Japan's economics is basically depended on Tokyo, the most biggest metropolis in Japan. One third of Japan's GDP is yielded by Tokyo, though other 46 prefectures are there. So is the population. Tokyo has one fourth of Japan's population.

Because of such a density, we use not cars, but trains. Cars are not efficient for abnormally many people to move from A to B. Cars are still main transportation means even in Tokyo, but we mainly use trains. 99% of people in Tokyo are forced to use trains. And, sadly, so do you.

How to get on a train is a hard task!

Even native Japanese people can get lost easily, especially in Tokyo. So basically it's difficult to be achieved that without a problem. Keep in mind that it's not appropriate to despise of yourself simply because you failed to ride on quickly. It's not an easy task.

Trains and Train Companies

We ordinarily use trains as commute methods. So basically trains are crowded in the morning and evening on weekdays, especially around 7:00 or 8:00 is the most crowded time, because a lot of companies start to work at 8:00 or 9:00. I highly recommend that you avoid this time unless you must do it. All of the times are of course Japanese Standard Time(JST, UTC+09:00)

Trains are run by varied companies. For examples, JR is the most dominant company in transporting system fields, and other companies cannot be ignored, which names are like Seibu Railway(西武鉄道), Tokyo Metro(東京メトロ), Tokyo Kyuko(東京急行), and so on.

You don't need to memorize these AT FIRST. Unless you plan to live in Tokyo, no need to know. Just note that there are a lot of train companies.

Basically, if you transfer from a train to another train which doesn't belong to the same company, you must buy another ticket to ride on.

Examples:

You want to go from Shinjuku(新宿) station to Haneda Airport(羽田空港) station.

This is you.
-> 😆

At first, you buy a ticket to ride on a train at a ticket counter in Shinjuku station. It has English instructions, so firstly, choose a button to switch languages. You may find "English" or "Language" as a switch in the screen of the ticketing machine.
-> 😆🎫

Then you insert it into a ticket gate machine(改札, かいさつ, a Kaisatsu, a turnstile, a ticket barrier, and so on. Sometimes it's referred as "wicket", heh.)
-> 😆<Inserting! 三🎫 [Machine]

After you insert a ticket into the machine, don't forget to pull your ticket from the machine. The machine emits the ticket after examining whether it's valid or not. The ticket will be used when you get down from the train.
-> [Machine]三🎫 😆<Catching!

[Note] If it's invalid, you will hear some error sounds. Don't be panic of that. It has some problems on your ticket. Be sure of the ticket, or ask a station worker.
-> 😢 🎫<Backing三 [Machine]<Error!!!

If your ticket doesn't have any problems, you go on a platform(Japanese people refer as ホーム, which sounds "Home") and then find the proper train on which you ride.
In this case, you may ride on Yamanote line towards Shibuya(Yamanote Sen Shibuya Iki, やまのてせんしぶやいき, 山手線渋谷行き) which is run by JR.
([Note] Shinjuku station run by JR has 16 platforms to ride on, and there are two Yamanote lines. Be careful that both directions are different. So the two Yamanote lines exist. Shinjuku station run by JR means there are other Shinjuku stations run by other companies. Wow.)
-> 🚉[Yamanote Line Train towards Shibuya(渋谷)😆< I rode on!]

You get off at Shinagawa(品川) station to transfer another train. To change the direction, you should go Keikyu line Towards Haneda-Airport(京急線羽田空港行き) which is run by Keihin Kyuko(京浜急行). So you go to a ticket gate machine, and insert your ticket into it, and pull out the ticket again.
-> 😆<Inserting once again! 三🎫 [Machine]

After you get off at Haneda-Aiport station..., you already arrived there!
-> 😆[Haneda-Airport]

I didn't intend that the explanation is so long... but anyway, don't miss the point that you should insert a ticket into the machine several times if you change the lines of the transporting company. Annoying? Me, too.

That is why the followings are very important.

Go buy a Suica or PASMO, alternatives of obsolete paper tickets

No Tokyo-nian buy a ticket in a ticket counter in Tokyo.

We use Suica or PASMO, which are electronic money cards, like these images.

https://www.japan-rail-pass.com/public/files/service-jrp/pasmo_suica-2.jpg

(I cited it from here. https://www.japan-rail-pass.com/common-questions/difference-Pasmo-Suica)

Using Suica or PASMO, you don't have to buy tickets. All you have to do is buy the card and put your money into the card.(Japanese people call "put money" as チャージ(charge); we consider the behavior as well as to charge a car battery.)

Still, you have to top-up(put your money into) the card in a ticketing machine, but you won't be bothered by "Where is my destination in this map!?" or "Which coins are how much!?"

"This map" which I mentioned here is the following map. If you're going to do by a paper ticket, you have to look up a destination out of the following map. Isn't it somewhat crazy job?

f:id:haruharu1:20190511185832p:plain

To buy the cards, you need some money(1,000 yen[nearly equals to 10USD]), but it's quite useful. I assure that.

If you have an iPhone, you have possibility to get Suica app freely. I recommend you check it. If you have an Android, I'm not sure...

Go get an app which explains how to transfer

All Tokyo-nian uses an app to get on a train. You easily get lost if you don't use it, surely.

I found a nice app in App Store and Google Play.

[iPhone] ‎Japan Transit Planner on the App Store

[Android] https://play.google.com/store/apps/details?id=jp.co.jorudan.japantransit&hl=en

Using this app, you don't have to think how you go. Obey the instruction of the app, so the way will be shown up in front of you. It shows up like this. (This is the iPhone version.)

So the internet connection is very important to search for anythings.

Yes, certainly it's so expensive to surf on the internet in foreign countries, but it's worth using in other countries, because you can google anytime.

In Tokyo, some places implement Free Wi-Fi, but not always! Rather, there are almost no-internet places if you do not pay!

Conclusion

So, that's all!

Once you get the app and a card, you won't get lost, ... maybe.

The app is like a consultant. If you get confused, just input the current time, the current station, and the destination. Magically, answers will be displayed. What a kind era today is.

I want to conclude as the followings.

  • There are a lot of train companies, and ticket counters are prepared by each companies. Don't panic.
  • Get Suica or PASMO, then you won't be worried about tickets.
  • Get the App, then you can get a route easily.

Thank you for reading! 😆🍙

Resolving "OSError: cannot write mode P as JPEG" Completely.

In this article, I'm going to talk about the following error. I assume this error is mainly related to Python but maybe it can be applied to other cases.

OSError: cannot write mode P as JPEG

This error originally comes from Pillow, a python package and PIL fork. In my case, this error was reported on Sentry, an error monitoring and reporting tool.

Reproduction

I could replay causing the error according to the following step.

1. You should prepare an 8-bit PNG file. I think it's not in trouble if you download from a website, unless you make it public.
2. Just change the extension name of the filename. It means if you download the PNG file, possibly it has ".png" So you should change the extension to ".jpg" intentionally.
3. Execute im.save() using this file.
4. "OSError: cannot write mode P as JPEG" happened.

Causation

An 8-bit PNG file is referred as P mode in Concepts — Pillow (PIL Fork) 3.1.2 documentation

However, JPEG format doesn't support this P mode, using 256 color palette. Neither Pillow nor PIL does. This is probably a specification of JPEG (I didn't search this in detail.)

That is why, the error occurred.

So I think the main reason this happened is a lack of some implementation which checks incoming data is valid or not. (Technically, it's just our case.)

Resolution

You can find codes easily and apply it if you only want to avoid this error.

python - Getting "cannot write mode P as JPEG" while operating on JPG image - Stack Overflow

OR

Caught IOError while rendering: cannot write mode P as JPEG · Issue #95 · SmileyChris/easy-thumbnails · GitHub

are convenient references.

This might work. However this way causes another trouble such as all files become RGB formatted files.

I belive the Image.format in the reference satisfies for this problem. Once you get an Image instance by doing Image.open() or whatever, you easily get the format.

Image Module — Pillow (PIL Fork) 3.1.2 documentation

This is like the following.

>> im.format
"PNG"

In my case, I thought this is the best solution, though it still has a problem that its format and extension don't match.

def im_save_cleanly(im, filepath):
    if im.format == 'PNG':
        im.save(filepath, 'PNG')
    else:
        im.save(filepath)

im_save_cleanly(im, 'foo/bar.jpg')

Now, that's all!!

Twitterから日本語を排除し英語だけを使うようにして2年が経ったので効果とかを書いてみる

f:id:haruharu1:20190406061357p:plain

契機

2017/03頃から、Twitterをほぼ英語だけでつぶやくことにしました。(たまにリプライなどで日本語を使うことや、日本語のツイートをリツイートすることはあります。最近ではルーンファクトリー5の情報とか)

英語圏の情報だけに集中したかったからです。

それとTwitterを特に目的意識無くずっと眺めていたので、英語にすれば英語を読むんじゃね?と思って日本語を排除することにしました。これはそこそこ機能しました。

ちなみにそれ以前も実は完全に日本語だったわけではなくて、日本語でつぶやきつつ英語でもつぶやくという共存状態でした。

それで、2017/03に日本語をタイムラインに流してくる人(主に日本人全員)をリムりました。有名人だからとか知り合いだからとか関係なくリムりました。200人ぐらいフォロー数を減らしたと思います。フォロワー数もとても減りました。

ただゼロになったかというとそうではなくて、一応今もタイムラインに日本語が極稀に流れてくることがあります。日本語の底力を感じます。

ちなみに日本人だけじゃなくて、やたらスペイン語を使う人、やたらアラビア語を押してくる人とかもその都度リムりました。数回ぐらいならいいですが、頻繁にやられるとリムってました。

方針として、たまに人からフォローされるんですが、そのときにプロフィールを見て、ほとんど英語ばかり使う人だったらフォロー返しするという戦略をとっています。一度フォローして日本語など英語以外が頻繁に(1ヶ月に何度も)流れてきたらリムるようにしています。

失礼を承知でいうと、感覚的に日本語をタイムラインに流す人は「よくTwitterで何かの宣伝ばかりしている人」というような感じです。

負の効果

日本のプログラマ文化に疎くなります。今日本で何が流行ってて、何が主流とか、そういう情報が一切入ってきません。なのでときどきはてブを覗きに行ってました。

また、日本のコミュニティと断絶を感じるようになりました。かといって別に英語圏のコミュニティに入るわけでもなく、単にアウトサイダーみたいな感じになってました。わろた。

こうして海外の情報にも日本の情報にもそれほど詳しくない人になりました。

フォロワーさんからリツイートやいいねされるぐらいと、外国人の人とたまに会話するしかTwitter上でコミュニケーションがないので、ときどき日本語でツイートしては削除していました(意思の弱さよ)

正の効果

ちょっとだけ英語が上手になりました。ただそれはTwitterだけの効果だったわけではないと思っています。

タイムラインに流れてくる英語を自然と読んだり、記事へ飛んでたりするので、英文に慣れたというのはちょっとだけあります。

でも相変わらず読めないものも多いです。特に文化に密接に絡んでいるものは、背景が全然わからないので文は読みとれていても「ハァ?」となることが多いです。アメリカの有名人について知ってないと笑えないツイートとかがあるのでそういうのは最近「何言ってんだコイツ」とスルーしています。あと見たことのない単語が毎日出てくるので、割と辞書を引いています。

あとは海外でフォローした方がいい人というのがなんとなくわかるようになりました。

正直英語はそこまで効果を実感してないですが、なんとなく綺麗に英語を書けるようになったのかなという印象はあります。

それから日本でぎゃーぎゃー言われていても英語圏の方では話題にもされてないとか、海外のテロ情報が日本では話題にされてないとかあるので、比較的どちらの文化も冷静に見ることができるような気がしています。

感想

あんまり人にはオススメしたくないです。

日本人をリムったのは失策でした(そしてフォロワーの人ごめんなさい)

誰をフォローしていたのか全然覚えてないし、日本人コミュニティでの立ち位置を失った感じがします。日本の情報が入ってこないので、どこで何のカンファレンスが開かれているとかそういう情報は会社の人経由でしか知れません。情弱になってしまいました。

その代わりシドニーシリコンバレーで開催される勉強会やカンファレンスの情報は入ってきます。わろた。

やるべきだったのはリムるのではなく、単にアカウントを分けることだったと思います。一応去年日本語専用アカウントを作って分けたんですが、長年にわたって英語アカウントを使っていたので、日本語でつぶやくという習慣が損なわれていました。だから日本語アカウントの方はほぼ使ってなくて、だいたい月に1回ツイートするペースです(直近は3ヶ月使ってない)

言語を混ぜないというのは正解で、混ぜると機能しないと思います。複数の言語を使う人はアカウントはわけたほうがいいと思います(GitHubのように、活動する場所によって言語が違うのならわけなくてもいいけど)

自分の中では、日本語へ後戻りできなくするためにリムったので、日本人コミュニティからちょっと離れてしまったのは痛手だったけど、一応英語だけにしたのは最善手ではなくても好手だったのかなと思っています。

そんな感じでした。

電車での席確保で必死になってしまう理由について、知らない人にもわかりやすいように解説してみた

ラッシュの間立ち続けるのと座れるのでは疲労度が根本的に全く違う ―― 都市圏電車通勤の人の声

ラッシュ時に立ち続けるのはしんどい

電車の車両の定員は、あの狭い空間でだいたい140人程度となっている。ラッシュ時にはそこに300人以上が乗る。それが15両ほどあるので、1つの電車に4500人程度が乗っている計算になる。

↓簡単にいうとここに300人が乗る(厳密には違うけど)

http://www.uraken.net/rail/chiho/chihoku/cr75f.JPG

日本を走る鉄道車両図鑑 - 日本の旅・鉄道見聞録 から引用

300人という人数は多いので、人間の頭では微妙に想像しにくい。

中学校や高校でいうなら、最近は30人クラスなので10個のクラス分の人数であることを想像すると、わかりやすくなると思う。

1学年5学級程度の規模の学校の2学年分の人数が押し込められていることになる。

卒業式の在校生練習などを思い出してほしい。あの人数が、この車両1つに入るのだ。狂気としか形容しようがない。

ともかく、狭い車両に300人が乗るということはつらいことだ。まず人間と人間がギュウギュウ詰めで体が痛い。衛生的にヤバそうな人とも接触しなければならない。

そういう状況に300人がなっている。

なのでみんなストレスが異常なことになっている。

こうしたストレスをみんな理性ギリギリのところで抑えている。だから、みんな人を思いやる余裕などない。

そういう状況で、ドカドカ入ってこられたり、ぎゃあぎゃあ騒がれたり、喧嘩が勃発したり、イヤフォンから音漏れがあったり、電話しているやつがいたりして、ストレスはさらに強化される。そういう状況が、1時間、2時間と続く。さらに帰りの電車もある。

これが毎日続くのだ。20日×12でだいたい240日続くのだ。

そしてこう思う。「もうダメだ」と。

しかし人間は、そんな絶望的な状況で活路を見出す。

席に座ることができるエリート

電車には座席が多くある。多くと言っても、だいたい36人程度分しかないが、ともかく座ることができる。300人中36人だけが、座ることを許される。

座れることはそんなに嬉しいのか?もちろん嬉しいにきまっている。

ひとたび座れると、その恩恵は凄まじいものだ。第一に、まず人と接触しなくてもよい。全く見知ってもいないし、わけのわからない、人生において少しも関わらないであろう謎の人たちとの接触を、しなくてもよいのである。

また、座れることによって自分のスペースを確保できる。そのスペースは立っている人の3倍ほどになる。本も気にせず読めるし、スマホを触っていても「迷惑だな。殺すぞ!」と思われない。立っていて死にそうになっている人を横目に、自分は優雅に通勤・通学できるのである。

「席に座れる」ということは、立つことに比べてそれだけ価値が高いのである。

だから必死になる。

「席に座れる」ような場所に住むためには、家賃をたくさん払え

席を確保するための仁義なき戦いは、実は住む家を決める前から決まっている。混雑率が異常な路線周辺の家々は、全然混雑していない家々の家賃と比べて圧倒的に安いのである。

もちろん会社の出社時刻にもよるので、10時に出勤していいようなところだと、混雑する路線でもそうした仁義なき戦いとは無縁でいられる(ただし帰りは除く)

基本的に「ラッシュ時に席確保に必死になるなんてあさましい」という人は、そうした混雑とは無縁でいる。

そういう人は、席に座れるという価値を低く見積もっている。「全く座れない×長時間×毎日」を解消するために、生活レベルが下がってもいいから家賃の高い場所に住んだり、給料は下がってでもいいから東京を出て地方都市に住む人々もいる。

だから、根本的に電車の混雑というのは社会問題である。個人の力で脱出できるとはいえ、それには金がかかる。

言い方は悪いがラッシュが「現代の奴隷船」というのは本当にその通りだとしか言いようがないのである。

それでも席取りの必死さは確かに気持ち悪い

もちろん、席の確保に必死になる様子は見ていて気持ちのいいものではない。

「人間あそこまで落ちたら終わりだ」というような奪い方もある。「妊婦?乗るな!邪魔だ!死ね!」「犬を乗せるな!邪魔だ!帰れ!(盲導犬)」と言う人は犯罪的なレベルで下劣だ。

こういう人たちを擁護する気持ちは一切ない。ただし「妊婦が邪魔」「犬が邪魔」と心の隅でふと思ってしまう気持ちはわからなくもない。

解決方法?

会社にわざわざ通わずに仕事ができるリモートワーク(テレワークともいうらしい)や、出社時間をフレックスタイム制にする方法がある。政府は推進しているけど、そこまで機能しているとは思えない。

学校にしたって何も絶対8時からやらなければいけないわけではない。

もちろん解決するためにはいろいろな問題が山積みだったりする。「うちの会社でそういうのは原理的に絶対無理!」ということもある。

とにかく「席取りごときに必死」という、貴族的立ち位置から単に罵倒するのでは、「自分はそれとは無関係だとする優位性」を示しているだけに過ぎない。

そうではなく、「席取りに必死にならなければいけない都市社会」という問題がただ目の前に堂々と立っており、日本の社会を蹂躙しているだけであるという認識が、ぼくたちには必要なのだと思う。

Macで最近取ったスクショをHTMLimgタグとかにして使う簡単なスクリプト

ぼくはデスクトップに出力されるのでこんなかんじ。 scsho.sh とかいう名前は適当。Macのデフォルトで screencapture というコマンドがあるのでそれだけ注意する。

scsho.sh

f=$(ls ~/Desktop/ | grep "Screen Shot" | tail -n 1)
echo $f
echo "<img src=\"$f\">" | pbcopy
$ sh scsho.sh

これでペタペタできるので便利

「プログラマの三大美徳」とかいうのは基本的に時代遅れで、間違っていて、おかしい

プログラマの三大美徳というのは次の3つだと、Perlを作った人が言ったけど、これを言葉そのままに捉えると全然違うことになる。

・怠惰(Laziness)
・短気(Impatience)
・傲慢(Hubris)

ぼくはこれは間違っていて、次の3つの方がより正しいと思う。

・勤勉
・根気
・責任感

☓怠惰 ○勤勉

ここで言う怠惰というのは「効率をよくするために努力することをいとわない」ということらしいけど、そういうのは「怠惰」という言葉から読み取れない。実際プログラミングでも Lazy は遅延評価の場合に使われる英単語なので、 Laziness がいい場面もあれば良くない場面もある。だいたい「効率をよくするために努力すること」は「怠惰」ではないし、「効率が悪いまま思考せずに続けること」が「努力」でもない。むしろ後者のほうがよほど怠惰であると思う。

こういった考え方はたぶん昔にはそんなにありふれていなかったからだろうけど、今この時代に「怠惰」が大切だと言われてもピンとこない。

昔は「横着すること」と「工夫すること」と「発明すること」と「効率化すること」についてそれほど分別がついていなかったのだと思う。「やりたくないからそういうことするんでしょ」という発想が多くを占めていたと思う。それがいつ頃からか「効率的にできるのにそれを避けて愚鈍な"努力"を続けるのはダメ」というような思想が世の中にだいぶ根付いてきた。それを逆に利用されて「努力なんてバカバカしい」というような風潮もあるけど、怠惰という言葉は、どちらかというとこの風潮に似合う。

昔の話はともかく、勤勉さが重要なのはプログラマでも変わらず、たとえばバグ1つ取るにしても正確に調べてから直すのと「なんとなくここを直せば直るかも」という予測のままに直すのでは全然違う。ここでは前者が「勤勉」で、後者の方が「怠惰」だと思う。

また、良いプログラマになるには仕事以外でも何かしらにコミットすることは不可欠だと思う。それはたとえ楽しみながらやっていても絶対に「怠惰」ではない。

この「怠惰」というのは「ただ勤勉でありさえすればよい」に対して警鐘を鳴らしたものであると思う。なので怠惰という言葉に惑わされるべきではないはずだ。

もちろん「ただ長い間働くこと」は「勤勉」ではないと思う。

☓短気 ○根気

プログラマは短気ではいけない。基本的に根気が要求される。

根気というと「つらいことをじっと耐え忍ぶ」という意味に聞こえてしまうけど、耐えるのではなく、前進しながらあるいは戦いながらやり続けることであって、「つらいことを耐えてさえいればよい・無抵抗であればよい」という意味ではない。

この言葉があげられたときは「処理速度やリソースが余っているのにそのまま放置することへの怒り」というふうに説明されていたらしいけど、それはどちらかというとMOTTAINAIの精神であり、勤勉の範疇に入るように思う。

ただ「短気」と言っただけでは「怒りっぽい人がプログラマに向いている」のように誤解されかねない。別に短気だからプログラマの美徳を備えているとは思わない。どちらかというと根気の方がよほど大切である。

実際「根本的に複雑な問題」を解く場合、根気(それとリソース)が無ければ解くことはできない。短気と根気は両立することもあるけど、間違いなく根気の方が的確な判断をするのに貢献すると思う。

☓傲慢 ○責任感

傲慢とは、ここでは品質にかける自尊心を言うようだが、それは傲慢ではなくて「プライドをかけて責任を持つ」ということに近い。傲慢という言葉によって「実力もないのに驕り高ぶること」が良いように見えてしまう。

実力に見合った自信は別に傲慢ではない。むしろ傲慢による弊害の方が大きい。プライドばかり持っていても困る。いわゆるそれは責任感というやつで、絶対にバグを出さないという精神だと思う。

おわりに

三大美徳の、コアな精神については特に否定しようと思わないけど、それぞれの命名に以前から不満を持っていた。

どうもその中身よりも、目を引く3つのフレーズが独り歩きしていて、

あたかも本当に「怠惰で短気で傲慢であること」が正当化されているように聞こえるからだ。「プログラマだから怠惰なのは仕方ない」とか「プログラマだから短気なのは仕方ない」とか、そういうふうに持っていかれかねない。それは全然、コアな精神とはかけ離れている。実際、リーナスさんも最近普通の意味での短気さと傲慢さを反省したらしく、時代が変わったことを感じる。

3つのフレーズは、たとえば「人生には次の3つが大切だ」と言っておいて

・アイス
・クッキー
・ケーキ
・氷は大切だ。
・優しい心を持った人(クッキー)は大切だ。
・ときどき人生にケーキのような楽しみを取り入れることは大切だ。

のようにするのと同じで、ただキャッチーなだけで、ニュース記事なんかによくある釣りタイトルとも同じだと思う。

ラリーさんはたぶんここまで世界的にこの発言が広まると思ってなかっただろうし、あくまで7つの大罪からとった3つを使った世間に対する皮肉のつもりだったのだろう(憶測)

ただぼくとしては「プログラマの三大美徳である怠惰と短気と傲慢を持った人」というのは、全然怠惰でも短気でも傲慢でもないと思う。だいたいなんでも「この3つが大事」とか言ってアナロジーしようと思えばできる。

偉そうなこと言ってぼくは全然美徳とかないけど、とりあえず不満があったのでこんな記事を書いてみた。

まあ「勤勉!根気!責任感!」と言っても流行らないんだろうけど……

追記(2019/03/13)

なんかご本人も「努力、忍耐、謙遜」と表裏一体だよ!みたいなことを言ってたようだ。わろた。

https://www.oreilly.co.jp/BOOK/osp/OpenSource_Web_Version/chapter10/chapter10.html

新宿駅のわかりやすい説明をしようと試みてみた 〜新宿駅はダンジョンなんかじゃないんだ〜

序文

ネット上では「新宿駅はダンジョン」のように必要以上に恐れられてネタ化されていますが、実際のところ新宿駅でうろちょろするのはそこまで難しくありません。コツさえつかめばそうそう迷子になることはないはずです。

新宿駅は、 JR新宿駅 を中心に衛星写真を使って見ていき、最後に別の会社の路線について学習すると効率的だと思います。

また、そもそも電車の乗り方がよくわからない人は↓の記事もご覧ください。

わらうなんてぜったいにゆるさないぞ電車ネイティブ(田舎から出てきた人への都内での電車の乗り方Tips) - へっぽこびんぼう野郎のnewbie日記

構成

この記事の構成は次のようになっています。

Lv1 東京における新宿の位置からJR新宿駅を把握する
Lv2 JR新宿駅を上から見てJR新宿駅のホームを把握する
Lv3 JR新宿駅から方角を把握する
Lv4 JR新宿駅を上から見て新宿駅周辺のエリアを把握する
Lv5 高低差でみるJR新宿駅
Lv6 JR新宿駅以外の駅を把握する
まとめ

Lv1 東京における新宿の位置からJR新宿駅を把握する

まずはこちらの山手線概略図をご覧ください。

f:id:haruharu1:20190223200525p:plain

新宿駅は、概略図の左側(つまり西側)にあります。山手線は、東京23区を大きく一周する路線です。

実際には山手線はもっと縦に細長いのですが、今回はあまり気にしなくてもいいです。「左にあるぞ」ということだけ知ってください。

そして次に実際のJR新宿駅衛星写真をご覧ください。

f:id:haruharu1:20190223200659p:plain

衛星写真を見ると、JR新宿駅の線路が南北に貫いている(この図では上下に貫いています)ことがわかります。JR新宿駅には、東西(左右)に貫いている線路はありません。南北だけです。また、JR新宿駅は一般的な駅と比べてかなり大きいです。

次に、

f:id:haruharu1:20190223202705p:plain

このオレンジ色のものが甲州街道(こうしゅうかいどう)と呼ばれる道路です。昔からある道で、東京都中央区日本橋(銀座の近く)から山梨県を横断して長野県まで到達する道路です。いろいろ歴史があるみたいですが、とりあえず今回は「JR新宿駅の南側に甲州街道と呼ばれるデカい道路がある」ということを覚えればよいです。

「JR新宿はデカイ・線路が南北を貫いている・南側に甲州街道がある」の3つが今後の説明の基礎になります。

Lv2 JR新宿駅を上から見てJR新宿駅のホームを把握する

JR新宿駅を拡大していくとおもしろいことがわかります。

f:id:haruharu1:20190223203048p:plain

もうちょっと拡大してみます。

f:id:haruharu1:20190223203107p:plain

何がおもしろいかというと、「線路と同様にホームもすべて南北に貫いている」ということです。

当たり前のようですが、これを頭に入れておくと

・渋谷駅から山手線で新宿駅についたのなら、電車の進行方向の左側が西
・池袋駅から埼京線で新宿駅についたのなら、電車の進行方向の左側は東

とかそういったことが把握できるということです。

f:id:haruharu1:20190223203533p:plain

f:id:haruharu1:20190223204136p:plain

これがわからないと方角がわからなくてJR新宿駅に着いた瞬間に迷います。わかっていると特に迷うことなく方角を意識して行動可能です。

Lv3 JR新宿駅から方角を把握する

方角がわかることのメリットはそれだけではありません。JR新宿駅のホームが南北になっていることがわかるとエリアもおのずとわかってきます。

JR新宿駅の構内を表しているこの地図を見てください。ごちゃごちゃしていますが、文字は気にしないでください。この地図は上側を北にするために回転させています。

注目してほしいのは、青色で描かれているホームの部分です(水色ではなくて青色)

このホームというのは、さっき衛星写真で見たホームと同じです。

f:id:haruharu1:20190223204922p:plain

上側(北側)に水色の2本の通路(北通路・中央通路)があり、下側(南側)に赤色の通路が2本あります。4本の通路は、どれも東西に貫いています。(ちなみにこういった広い通路のことを コンコース と言ったりします。豆知識!)

これがわかると、JR新宿駅に着きさえすれば、東とか西とかそういうのは思いのままに移動することができます。

つまり、渋谷駅から山手線で新宿駅についたら、地図を意識しつつ左側に行けば西口に出ることができます。これだけでJR新宿駅で迷う確率はほとんど0になります。

Lv4 JR新宿駅を上から見て新宿駅周辺のエリアを把握する

JR新宿駅を上から見てエリアに分けるとこんな感じになります。 (繁華街) とか書いてあるのは完全にぼくの偏見で、だいたいのイメージです。なので西側にも繁華街はあったりしますが、そういう感じです。北側はないです。

f:id:haruharu1:20190223211058p:plain

詳しく分けるとこんなかんじです。新宿駅についてちょっと詳しい人は、こんな感じで理解していることが多いと思います。ぼくの偏見なので「ちょっと違うんじゃない?」ってこともあると思います。

f:id:haruharu1:20190223212343p:plain

JR新宿駅の出口は↓のような感じになっているので、行きたい場所に応じて移動するといい感じに目的地にたどりつけます。北口はありません。カタカナの出口というのは「サザンテラス口」とかそういうのです。

f:id:haruharu1:20190223230854p:plain

Lv5 高低差でみるJR新宿駅

JR新宿駅の高低差が、新宿をわかりにくくしているひとつの原因ではないかと思っています。

東と西とで、なんとなく雰囲気が違うので、今どこにいるのかわかりにくくなってしまいます。これは高低差があることを知ると混乱しなくなると思います。

JR新宿駅は、南側に行くほど高くなり、北側や東側は低いです。なので、東側の繁華街からJR新宿駅東南口に移動しようとすると階段をのぼることになります。

f:id:haruharu1:20190223232239p:plain

f:id:haruharu1:20190223231706p:plain

また、この高低差から、西側は地上と地下が明確に別れています。JR新宿駅の西側の改札を出ると、地上ではなく地下に出ます。

Lv6 JR新宿駅以外の駅を把握する

今までJR新宿駅をみてきましたが、JR新宿駅の支配している範囲が相当広いので、他の駅に関しては意図的に省いて説明してきました。

なので他の駅の位置を説明します。

まずわかりやすいものから。これらは全部、新宿が終点です。路線たちが新宿に集まっている様子が窺えます。全部ほぼ地上を走っているので、比較的わかりやすいです。

f:id:haruharu1:20190223234613p:plain

東京メトロや都営、それと京王新線のものがこれです。正直こっちはよく乗る人しか把握できてないんじゃないかと思います。きっとこれがダンジョンと言われる多くの原因を作っているはずです。

f:id:haruharu1:20190224000127p:plain

まとめ

基本的にどこにいても方角さえ意識することができれば怖いものはあまりないです。あとは抜け道(というか最短経路)があったりとかいろいろあるんですが、そういうの言っていくとキリがないので省きます。

ただし新宿駅のどこどこのお店に行きたいとかは、スマホなどでどのへんにあるか調べてから行かないとたどり着けないので、どこの方角のどこの階層にあるかを立体的に把握する必要があります。

そんな感じです。初心者向けの説明なので、地下の説明がないのとかはご愛嬌ということで。

とりあえず方角さえわかればなんとかなります。方角がわからなくなると迷います。