戯れは終わりだ

戯れ言です

新プログラミング言語「REIWA」

プログラミング言語「REIWA」を考えよう

# ./reiwa hello.reiwa

Hello world.

みたいなのだろう。

そして

m
  s Hello world."
  p
}

最近はこれくらいのコード量じゃないと許容してもらえないからこれくらいで。

  • セミコロンは平成の異物なので絶対だめ。
  • class とか package とかもダサいっていわれそう。(イメージ)
  • main はしょうがないだろうけど、m くらい短くしないと
  • print とか p にしないと ruby 好きに刺さらない
  • end end end になるのは ruby 嫌いに刺さらない
  • インデントでスコープ作ると python 嫌いに刺さらない
  • だから { } だけど、みんな省略したいだろうから 閉じブレースだけでよしとしよう
  • include stdio とか論外
  • use strict とかデフォでしょ
  • static void とかもコンパイラが勝手に決めていい
  • 型はあるけど型推論で(よくわかってないが)
  • " も閉じだけあればいいだろう
  • = もいらないだろう、コンパイラが、「あ、空白あいてるけど、ここ = だろう」って
  • p の対象も、s しかないんだからかかなくていい

令和はどんどん省略していこう

令和

元号、令和ですかー。

令和、よみかたは「れいわ」

令は、①いいつける。命じる。いいつけ。「令状」「命令」 ②のり。きまり。おきて。「訓令」「法令」 ③おさ。長官。「県令」 ④よい。りっぱな。「令色」「令名」 ⑤他人の親族に対する敬称。「令室」「令嬢」

和は、①やわらぐ。おだやか。のどか。「和気」「温和」「柔和」 ②なかよくする。争いをおさめる。「和解」「和議」「平和」 ③合わせる。合う。ととのう。「和音」「唱和」「調和」 ④あえる。まぜる。「混和」「中和」 ⑤二つ以上の数を加えたもの。「総和」 ⑥日本。日本語。「和服」「和文」「和洋」類倭(ワ) ⑦「大和(やまと)の国」の略。「和州」

の意味だそうだ

漢字ペディアより

レイワ、レイワ、レイワ・・・れいわ・・・どうすかねー。ま、「しょうわ」っぽくて慣れるかな。

令和もよろしくおねがいします。

元号 全247総覧

元号 全247総覧

幼女戦記の映画みた

幼女戦記劇場版みたよ。

幼女戦記 1 Deus lo vult

幼女戦記 1 Deus lo vult

なるほど面白い。

音響もいいぞ

声優さんすげーな

バトルシーン楽しいぞ

え?!

安定のエンディング

エンディング後の○○

面白かった。二期はよ

幼女戦記 (1) (角川コミックス・エース)

幼女戦記 (1) (角川コミックス・エース)

幼女戦記みたので映画も見に行くか

幼女戦記見た。

クソ面白かった。深いとかそういうのではなく、ただただ絵が良い。やっぱCGと電子轟音の組み合わせはいいのう。転すらとかも電子音多くて気持ちいいしな。

映画やってるらしいので見に行こうと思う。が、あまりハコ多くないな。新宿行くかー

エンジニアの「できる」からディレクターの「できた」の間にどれだけ長い道があるか

エンジニアの「できる」からディレクターの思う「できた☆」の間にどれだけ長い道があるか考えてみた

  • できるとは言ったけどやるとは言ってない
  • やるとは言ったがすぐ出来るとは言ってない
  • なんとか出来たが、ろくな動作確認はしてない
  • 最低限の確認はしたが、全部のパターンでバグが無いとは言ってない
  • 時間かけてテストしたのでだいたいのバグはなくなったが、リリースするとは言ってない
  • リリースするとは言ったがリリース環境など無い
  • リリース環境はつくったが無停止リリースなど考えておらん
  • blue green deploy できるようになったが、誰も確認してない
  • 無停止リリース成功したが、リリースして負荷的に耐えるかは知らん
  • 最低限の負荷対策はしたが巨大なスパイクに耐えれるかは知らん
  • auto scale で巨大なスパイクに耐えるようにしたがコストのことは知らん
  • コストも抑えて負荷にも耐えるが落ちても誰も気づかない
  • 監視いれたけど誰が対応するか知らん
  • 対応者はオレだけど、休日捕まるかは運
  • 休日の連絡さきも抑えられたがネットワークにつながるとこにいるかは知らん

  • あ、巨大なスパイク。db で詰まった。キャッシュいれるかシャーディングしないとだめだ

  • その開発?めっちゃ時間かかるよ
  • キャンペーン?なにそれ。めっちゃ時間かかるよ
  • 数字取りたい?いまからじゃ過去のは無理だよ
  • EFO ? なにそれ SEO ? いまさら?
  • セキュリティ?まぁ最低限は・・・

ダンまち ソード・オラトリア

はい、最近ダンまち(アニメ)見ました。遅いですが!!

面白かったので、ソード・オラトリア(外伝)もみたんですよね。最初はなんだかちょっとたるいなって思ってたんですが、最終話ですよ。

精霊が出てくるんですがこの戦闘面白かったー。netflix でみたんですが、無限ループで見てましたね。深夜ずっと。ああいうのいいなって思います。敵がめちゃくちゃ強く、めちゃくちゃ強い仲間がぶっ飛ばされるやつ。表現がアホみたいですいません・・・。

で、ああいうの探してるんですけど、まぁまぁなかなか見つからなくて困ってます。

そのあと、ファミリアクロニクル(外伝)のコミカライズをちょっと読みました。おもしろそうだなぁ。

ダンまちは映画化もするみたいなので、見に行こうかなぁ

プログラミングを学ぼうとする若い人へ

まず、こういうことについて人の解釈は人それぞれ、人の数だけ常識があり、正解はなく、最適もなく、あるのは多様性とちょっとの偏り。

そして、このブログはまるで人気がないので、この記事を読む人はおそらく片手で数える人数くらいだろう。

まぁいいじゃないか。

ということで急ではあるが、私個人の解釈として、これからプログラミングを学ぶ若い人、主に高校生から大学生くらいをターゲットとして何を学べばあとあと役に立つか、について書きたいと思う。

さて、プログラミングを学ぶときにやりがちな勘違いは、「プログラミング言語を選ばないといけない」と思ってしまうことだ。

これは良いこともあれば悪いこともある。実際に書いて動くところを見て楽しみ、それをモチベーションとして学習を続けるというのはとても効果的に学習を持続させる効果があると思う。好きこそものの上手なれ、というやつだな。

でも、もう自我も確立し、自身を律することができる年齢のひとたちであれば、そんな楽しみなどなくとも学習することができるはずだ。大学受験は楽しくないだろう?

なので、ruby だ kotlin だなんだ、あーだこーだと具体的なプログラミング言語はもういいじゃないか。君たちは若い。

若い=頭がやわらかい=難しいことでも今なら理解可能

逆に

トシヨリ=頭が硬い=難しいことが頭に入ってこない=若いときにやっておけばよかった

だ。

なので、とりあえずこの本をおすすめしたい

やさしいコンピュータ科学 (Ascii books)

やさしいコンピュータ科学 (Ascii books)

やさしいコンピュータ科学。これはすごくいい本で、まずはわからなくとも一回全部読んでみて、あとからまたもう一度読んで見る、そしてまたもう一度、みたいに読めると思う。これを若い内に読んでた人と読んでなかった人では年収にして最低でも100万くらいは違うだろう

つまり、特定のプログラミング言語などあとでいいのでその背景にあるテクノロジーをまずがっちり抑え込んで理解するのが絶対役に立つ。というか、それが正道だと私は考える。わたしはその正道をちゃんとは歩いてないが。歩きたかった・・・。

なぜなら scalagolang は、ふむふむなるほど確かに覚えることで web サイトをつくれたり、android アプリなどをつくれて楽しい。もしかしたらお小遣い稼ぎになるかもしれない。いいね。でもそれだけだ。pythonjava をただずっと書き続けても上記の書籍に書いてあるようなことは下手したら一生理解出来ない。アプリをいくつつくっても売上を上げる知恵はつくがプログラミング技術の向上は頭打ちになる。間違いない。

面接のときに見る履歴書に「java 歴 10年」みたいな人をよく見るのだが、話を聞いてみるとデザインパターンも知らず、DI もよくわからず、ただただ Struts で業務アプリを直したり壊したりしてただけの人だったりしてガッカリすることがある。

もちろん、最初に perl や swift を書き続けることから始めた人でも、本人が望めばソフトウェア工学の勉強はできるし、実際そういう人もだいぶ居る。

でも、そういう人たちに話を聞いてみると、おそらく「もっと早く基盤の技術を勉強しておけば良かった」という趣旨のことを言うと思う。

基礎をつくらず家を立てても、あとから結局壊して基礎からやりなおさないと駄目なように、プログラミングというものにもそういう側面がある。

TCP/IP のことを知らずに Web アプリを書いていても、根本の理解がないと、つまづいたときにただググるだけのロボットになってしまうという現象を、私自身も体現している。

ということで、今からプログラミングを学ぼうという気骨ある若い人はまず基盤を勉強するべきだ。unix、network、データ構造、アルゴリズム、CPUとメモリはどういう関係なのか、パソコンはなぜ起動できるのか、C をコンパイルするコンパイラコンパイルするのは誰なのか。

わたしもやさしいコンピュータ科学をまた読もうと思う。