2018-10-07

プログラマーという職業はいらないのだよね、本来は

世のプログラマーの方々には申し訳ないけれど、本当はプログラマーなんていう職業はいらないんだと思う。

業務に精通している人が、自分たちのために自分たちでシステムを作るのが一番いい物ができるのだ。

特許について知らない人が特許庁のシステムを作ろうとするから、途中で投げ出してしまうようなことが起こるわけで、特許業務を良く知っている人が作れば、そんなことは普通は起こらない。 一番見通しが立つのは、業務をやっている人なのだ。

自分が社会保険の手続をまったくやらない人が作るから、「Javaをインストールして、ActiveXを使ってやってください」とかいう、何のためにネットでやっているのか理解不能な、20年前に戻ったような要求を突きつけて、いまだに平気でシステムを運用しているわけですよ (こちらは個人的な恨みが込められている文ですが...)

実際問題としては、セキュリティの話とかまで精通するにはそれなりの修行が必要だから、プログラマーという職業がなくなるわけではないのだけれど。

少なくとも、自社(自組織とか、政府とか)で開発部隊を抱えてるほうがいいに決まっている。 第三者に説明するだけで、すごく手間がかかるし、コストもかさむ。 自分たちの中で作るのが一番いいのだ。

だから、言語とか、開発環境とかを作る人は、できるだけ一般人でも作れるよう努力すべきだと思うのだ。 玄人受けする言語を設計するのも悪くはないけれど、プログラミングの基本を抑えている人ならば、小難しいことを知らなくても安全で、ある程度効率のよいアプリやシステムができるような言語や開発環境を作って欲しいと思う。

そんな流れのひとつが、DevOpsなのかな〜と、「まもなく校了」の『LeanとDevOpsの科学[Accelerate]』という本を訳していて思ったのだ。

Dev(開発)とOps(運用)が近ければ近いほど、使いやすいシステムができる。

翻訳者も似てる?

「翻訳者」という職業もいらないということになるかな〜。 みんな英語ができれば、翻訳者は不要なのだよ。

私は本来不要な仕事を2つやっているわけ?

でも、訳書並みに原著を読んで理解するのは、かなり〜大変だと思うよ。というか、そう思ってもらえるように、良い訳本を仕上げるのが我々の使命なのだ。

2018-08-25

種なしブドウを食べると種なしになる?

ブドウ(山梨産ピオーネ)を食べたら目の調子がいつになく良いような感じがしたので、しばらくコンスタントに食べてみようと思って八百屋に行った。

実家にいた頃は、ブドウを出荷するほど作っていたので、秋になるとほぼ毎日巨峰を食べていたのだけれど、今は自分たちで買うしかないので、大量には食べられない。 でも目にいいとなると話は別。多少出費がかさんでも、健康には代えられない。

巨峰を売っていたので買おうかと思ったら「種なし」と書いてある。 「今は巨峰も種なしなんですか?」と八百屋の叔父さんに聞いたら「そうだよ」とのお答え。 昔はデラウエアしか、種なしはなかったんだけどな〜。

それで思い出したのが先日NHKでやっていた日本人の「精子力」が低下中という話。

「種なしブドウ食べると種なしになる」なんて話はないんだろうな〜。 でも、30年後に「種なしブドウを作るジベレリンは人間には無害と思われてきたが、じつは影響を与えることが判明」なんてことにはならないんだろうか。

あまり、種なしブドウは食べたくないな〜。 少なくともイメージ的に良くないんじゃないだろうか(イメージの力を過小評価してはいけない)。

だいたい、「種を出すのが面倒」なんていう、ずぼらなヤツはろくな仕事もできんじゃろう(これは、暴言かな...)。

結局、昔から種なしがあるデラウェアを買って食べました。種ありブドウが食べたい。


ちょっと検索してみたら、種ありの巨峰のほうが美味しいという話もあるみたい。 まだ種ありブドウが食べられそうだ。よかった。

ブドウ(巨峰)の種は簡単に、しかもきれいに出せる

2018年10月8日追加

カミさんも知らなかったし、どうも多くの人がご存じでないようなので、ブドウの種の出し方講座です。 私は実家にいた頃、秋になると毎日2房、3房と食べていたので、独自開発したワザです(今、毎日3房も食べたら糖尿病になりそうですが、当時の運動量は半端なかったので全然平気。18歳の秋、「来年からはこんなに食えないから今のうちに」と思って、1日5房ぐらい食べたことがありました)。

  1. 一粒手に取ったら、穴を口のほうに向けて、中身をギュギュッと押し出します。同時に、唇を丸めて少し吸い込んだほうがスムーズにいくでしょう。これで、中身全体が口の中に入ります。まだ、皮はに手に持ったままにしてください
  2. 粒の中央を歯で噛み、ブドウの種をゼリー状の部分から分離します。歯の唇側に種を置いて、中に強く吸い込んで中身を喉の方向に移動させたり、舌で種を歯の外側に移動したりしてください。最終的には、種を唇と歯の間に残します
  3. 手に残っている皮を唇に軽く付けて種を穴の中に入れます。中に入らなくても構いません。種を皮で包み込むようにすればOKです。
  4. お皿とかゴミ箱とかに一体化した皮と種を捨てると同時に、ブドウの中身を良く味わいながら、ゴックンします。「ああ、美味しい。日本人に生まれて良かった。ブドウをいっぱい作っているうちに生まれて良かった」
  5. 上記をすべての粒に関して繰り返します

一緒に食べている人にもこの秘法を伝授してください。外国人の方がいたら、「お国に帰っても広めてね」とお伝えください (Corpyright Hiroyuki MUSHA (^_^))

2018-08-16

今日の朝焼けは怖いような色だった

今朝の朝焼けはすごかった。ちょっと見ると恐ろしくなるような色だった。

まあ、何が起ころうと、地球上のほとんどの生物は淡々と生きていくしか仕方がないのだけれどね。

2018-08-02

レビューの裏側

本を書いたり翻訳して出版したり、自分のプログラミング講座やストレッチ講座をやったりしていると、レビューとはどうしても付き合わなければなりません。

きちんとしたレビューを書いてくださる方も多いのですが、「ちょっと困る」というレビューもけっこうあります。

私のこれまでの経験から感じている、レビューアの「裏の事情」を書いてみようと思います。

人の意見に耳を傾けるのはもちろん大事ですが、最後はご自分で、公開されている様々な情報によって判断していただけたらと思います。

★ひとつのレビューがいくつかあったからといって、その本や講座が、「本当に★ひとつの価値しかない」とは限らないことを知っていただけたらと思うのです。 ★の数だけを見ずに、その意味合いも吟味していただきたいと思うのです。

表面的な知識しかもっていない人のほうが声が大きい

本当に豊富な知識をもっている人は慎重になります。 自分が「よく知らないことがある」ことをよく知っているからです。

それに対して、数年(場合によっては数ヵ月)、ある程度一所懸命何かに打ち込んだというような人が、「もうこの分野で知らないことはない」と思い込んでしまうことが時々あります。

そこで、自分のもつ(狭い)知識で賛成できないことに出会うと、それをネタに攻撃を仕掛けます。

「自分の知識が狭いのかもしれない」「ほかの視点で考えればこの人の書いていることにも一理あるのかもしれない」と考えたりはしない。

昔、サッカー選手のドゥンガ(ジュビロ磐田)が若手選手に「勘違いするなよ」とよく言っていたそうです。まだまだ、おまえはひよっこだよ、ちょっとちやほやされたからって勘違いしちゃいけないよ。難しいのはこれからだよ。本当の一流になる修行はこれから始まるんだぞ。

「痛いところを突かれる」ことももちろんありますから、批判するのはダメというわけではありません。 本当に批判に値することか吟味していただきたいのです。

「妨害電波」の発信

一番困る、というか頭に来るのがこれであります。

競合書の執筆(翻訳)者や競合講座の運営者が、悪口を書き綴る。 自分の本や講座のレビューを相対的によく見せるために★ひとつを付ける方がいらっしゃるように感じています。

これと反対に、競合講座を運営していらっしゃる方が、「偵察」にいらして、★★★★★を付けてくださったことがありました(Oさん、ありがとうございます。涙が出るほどうれしかったです。お互い頑張りましょう!)

しかし、さすがに★ひとつは売れ行きに響きます。ほかにあまた選択肢がある中で、★1個の本、★1個の講座にあえて手を出す勇気のある人はあまりいません。

順調に売れていた本が、★ひとつのレビューが入った途端に、ぱたっと売れなくなることもあります。既に30も40もレビューが書かれているところに、ひとつそういったレビューが入ってもあまり影響はありません。しかし、発売直後にいきなり★ひとつのレビュー、これは効きます。効果抜群です。

サイトによっては、時系列で表示されるので、一番最後に★ひとつのレビューが入ると、しばらく売れなくなるといった事態も生じます。Amazonの場合、標準では「参考になった」が多いレビューが一番上に表示されるので、あえて時系列表示にしない限りそういったレビューは先頭には表示されません。これは、ある意味公平かもしれません。

翻訳者(執筆者、講師)側からすると、よいレビューから表示してくれるとうれしいのですがね〜。

「自分が『人生の総決算』と思って書いた本が全然売れない」。それに対して、「同じ分野の本なのに、軽いノリで書かれた自分はたいして内容がないと思う本がベストセラーになっている」。

これは実に悲しき事態です。 1冊の本を書くというのは、かなりの労力が必要な仕事です。適当に書けばまあ、それほどのことはないかもしれませんが、普通の人は適当には300ページもの本を書けません。

場合よっては、10年以上かけてようやく完成にこぎつけたというケースもあるでしょう。

しかし、現実は受け止めるしかありません。 それに、ある日突然話題になって、ベストセラーになるかもしれないのですから。

長い目で見ることが肝腎です(はい、私が自分で書いたプログラミングの本もほとんど売れませんでした。今では「市場のニーズにマッチしていなかった」ことがはっきりと理解できます。そのうち「リベンジ」をしようと思っております)。

よいレビューを仲間にお願いする人々がいる

翻訳のネタ本を探すときは英語のレビューを参考にします。 最近、けっこう出会うのが、著者(あるいはその周辺)が何十人もの知り合いにレビューを書いてもらっているとしか思えない本です。

ある本のレビューがとてもよかったし、売れ行きも良かったので、翻訳候補にしたけれど、「読んでみたらメタメタだった」というパターンです。

レビューに頼らず、自分で読んでみるしか本当には確かめられません。

日本語の本でも、基本は同じですね。本当のことは自分手に取って内容を確認しないとわかりません。

50も100もレビューがあって、総じて評価が高ければ、大丈夫な可能性は高いでしょうが(技術書ではそんなにレビューが入ることは(まれ)ですが)、5個や10個のレビューでは、レビューの良し悪しだけで判定するのは危険です。

時間をかけられるのなら、複数のレビューサイトをあたったり、ブログのレビュー記事を探したりしていただいて、情報を集めていただけたら少し確実さが増すでしょう。

単に「有名なAさんが推薦していたから」ではなく、「有名なAさんが推薦していたから、本屋で見てみたら(「なか見検索」で見てみたら、ネットで公開されているプログラムを実行してみたら)よさそうなので」といったように少し手をかけていただけると確実性が増すのかなと思います。

(たで)食う虫も好き好き」。Aさんが「いい」と思ってもあなたが「いい」と思うとは限りません。 同様にAさんが★ひとつを付けたとしても、それがその本がダメなことの証明にはなりません。

2018-07-24

ケーブルテレビ や〜めた。コマーシャルひどすぎ〜

ケーブルテレビに入っていた。野球とか、サッカーとか、ミステリーとか、歌とか、ニュースとか、少しマニアックなものものもやっているので選択肢が広くなってよかった。

そう言えば、昔、管理組合の理事長に(くじ引きで)なってしまったのをチャンスとばかりに、マンションにケーブルテレビを導入してしまったこともあったっけ(今はそのマンションには住んでいない)。 当時は「お天気チャンネル」とかあったな〜。ネット時代になって消えてしまったけれど。

でも止めることにした。何と言ってもコマーシャルがひどい。 健康食品とか、自動車保険とかばっかりなんだもの。

「何度も、何度も夜中に、目が覚めて」とか、「オルニチン...」「DHAが...」なんていうコマーシャルを、攻守入れ替わるたびに見せられる。昔よく出ていた俳優やタレントがやっていて、ちょっと懐かしかったり、「年取ったな〜」と、自分のことは棚にあげて思ったりもしなくはないけれど...。

何がイヤだと言って、"after"のすっきりとした体型の前に見せられる、"before"のたるんだ身体はたまらない。そんなもの誰も見たくはない!

手が空いていれば、速攻、別のチャンネルに切り替えて、コマーシャルが終わる頃に前のチャンネルに戻すのだが、手が空いていないときは流しっぱなしにするしかない。

ネットでも同じような番組は見られる

横浜DeNA戦(プロ野球)が今の(安めの)契約ではケーブルで見られなくなってしまったのを機にちょっと探してみたら、なんとAbemaTVで、ただで見られるではないか。ついでにAbemaTVの番組表を見てみたら、けっこういろいろやっている。

マージャンや将棋を眺めていても、「頭の体操」兼「暇つぶし」になるし。

そして何より、「気分が悪くなるコマーシャル」が流れないのがいい。

プロ野球もDAZNのお試しで見てみたら、コマーシャルは流れないし、ちょっと前に戻ってみることもできて、超便利。時々、止まってしまうのが難点ではあるが、あのコマーシャルよりは百倍ましだ。

ケーブルテレビよ、サヨ〜ナラ〜。お金払って、あんなCM見たくはないわい。

2018-07-20

おいおい、自民党いくら何でも、むちゃくちゃじゃないかい?

民主党だか、民進党だか、何とか民主党だか、わけのわからない党ばかり作っている人々が、政権を取ったときの行動に愛想を尽かして、ここ何回かの選挙では多くの人は自民党に入れてきた(んじゃないかと私は想像している)。

しかし、今回の選挙区の話はひどすぎないかい? いくら何でも選挙民をバカにしすぎだと思うよ。

自分たちの候補者があぶれないように、参議院で6つ議席を増やすって、こんなバカにした話ありますかい? しかし公明党は反対しないんかい? そんなに与党にいるのが居心地がいいわけ?

さすがに次回の選挙はお灸を据えたくなる人が多いんじゃないでしょうか。

最初「反対する」みたいなことを言っていた小泉氏もあっさり賛成票投じちゃったし、お父さんのほうが、自分の考えを貫ける人なのかな〜。

自民党で唯一人造反した、「船田元」という名前はしっかり覚えておこう。もう大昔に起こった江川問題の首謀者の一人(だと私は思っている)船田中さんのお孫さんとのことだけど、まあ、おじいちゃんとは別人格だから、そのこととやかく言ってもしょうがないわな。

しかし、党で決めればどんなことでも反対はしないっていうのは、おかしいよね。

何から何まで一緒じゃなくちゃ同じ党にいられないなんていう、そんな考え方はさっさと止めるべきだと思うんだけれど。

というか、そもそも考え方で集まったわけじゃなくて、「当選できそうか」という視点で集まっているだけだから、考え方なんてどうでもいいんだね。きっと。

2018-07-16

日本語の変数名や関数名はレビューの評判が悪いけど... (JavaScript)

拙訳書『JavaScript 第3版』で、付録に日本語の識別子(変数、定数、関数の名前)を使ってみたのだけれど、Amazonに悪いレビューがけっこうある

しかも全面的に日本語にしたわけではなくて、自分が書き下ろした付録でそうしてみただけなのに、そんなことはまったく書かずに鬼の首でも取ったみたいに攻撃をする方が何人かいらっしゃる。

変数名や関数名に自信をもって英語を使える人、手をあげてくださ〜い

かれこれ○十年英語を学習し、TOEICのスコアは895点(ぐらい)だった私ですが、私は手をあげられません。

英語ができる人が読めば、理解はしてもらえそうな名前を付けることはできます。 しかし、自信があるかと言われれば、「ない」。

「ある」と答えられる人は、ネイティブ並みの(あるいはそれに近い)英語力を持っている人か、自分の英語の実力を知らないかのどちらかでしょう。私は簡潔に正しく表現できているか、いつも自信がありません。

就職したての頃、上司のソースに「xxxCount」という変数がいくつか並んでいて、「こういうときcountって言うのかな〜。numberOfxxxとかのほうがいいんじゃないかな〜」とけっこう悩みました(最近はネイティブスピーカーのソースを簡単に見られるので、まあ、頻繁に出てくる表現は身につけようと思えばさほど難しくは何のかもしれませんが)。

チームに日本語ができない人がいる場合、これは仕方ない。下手な英語でも日本語よりは理解してもらえる。

しかし、たとえば自分が練習するのに、日本語の識別子を使っても回りの人に不都合もありません。

「変数が日本語だと、読みにくい」という方がいらっしゃいますが、多分「慣れ」です。慣れれば日本語のほうがパッと見て意味がわかります。試してみてください。3日もすれば慣れてしまう人がけっこういると思います。

 
  • 説明するときは、日本語のほうがはるかに理解度が高い —— 英語ができない人は世の中にけっこう多いのです。プログラミング講座を運営していて身にしみているのですが、つまずく方の3割から5割ぐらいは、英語が原因です。docmentとかMath.randamとか綴って、「動かない」ということがけっこうあります。そういった方が、変数名を自分で英語で考えるというのは、かなり難しいでしょう(逆に言えば、英語ができればプログラミングには有利だということでもありますが)
  • 自信を持って変数名や関数名を書けるし、日本語で考えたほうがはるかに楽
  • 長いプログラムになればなるほど変数名は長くなる。そうすると自分の英語が正しいのかますます自信がなくなる

英語で書きたい方が書くのは一向にかまいません。ただし、やってもみないで「読みにくい」と断言するのは止めていただきたいのです。

ご自分で何日間か試して、回りに方にも何日間か試してもらって、それでも「全員一致して読みにくい」という結論になったら、具体的に「合計○人が△日間試してみたが、読みにくいということで一致した」とご批判をどうぞ。

ただし、一人でも「日本語のほうがわかりやすい」という方がいらしたら、それでも頭ごなしに「読みにくい」と断言できますか?

2018-07-02

新聞は「過去の」メディア?

昨日のこと。「(プロ野球の)ヤクルト戦は何時からだろう?」と思ってブラウザに目を移した。日曜日なので、デーゲームなのか、ナイターなのか、ナイターだとしても少し早く始まるのかわからない。

いつもなら「トップサイト」を表示して「Yahoo! プロ野球」のサムネール(アイコン)をクリックするところだけれど、いつもと違うパソコンを使っていたのでトップサイトには見あたらない。そしたら、偶然少し前に表示したのだろう、Yomiuri Onlineのサムネールが目に入った。

「ちょうどいいや」と思ってそのアイコンをクリックすると、最新ニュースのページが表示された。「プロ野球はどこかな?」と思って左上のメニューのボタンをクリックして、表示された[スポーツ]→[プロ野球]と選択する。

「今日の試合はどこかな?」と思って探したのだけれど見あたらない。 トップ、試合結果、順位表、「セ・打撃成績」、「パ・打撃成績」...とメニューが並ぶのだけれど、今日の試合予定が見あたらないのだ。

「トップ」は昨日の試合関連のニュース。「試合結果」をクリックしたら昨日のスコアが表示される。

今日の試合開始時刻がわかるページが見あたらない。

(紙の)新聞ならば、スポーツ欄の左下にいつも(小さく)今日のいろいろなスポーツの予定が表示されていたものだけれど...。

試しに、朝日新聞と毎日新聞のサイトを見てみたのだけれど、どのサイトでも今日の試合開始時間が簡単には見つからな〜い(というか、1、2分探してみたのだけれど、見つからなかった)。

自分が作ったサイト、自分で使ってる?

新聞って、「過去のメディア」になっちゃったんじゃない?

後日談

今日(2018年7月20日)もう一度、見てみたら、「試合結果」の所に、先発予定とか開始時刻とか書いてあるのを見つけた。試合開始何時間か前からは、「試合結果」に今日の試合の状況が表示されるようだ。

まだ始まっていない試合って、「試合結果」なの?

それから、チケット買うときには先の予定を見たいのだけれど、見つからないんですけど〜。

やっぱり「過去」のためのメディアであることを貫いていらっしゃるように思える...。

Yahoo!のページのほうがはるかに役に立つ。

2018-06-02

Let’s Encrypt がインストールできなくて、ちょっと時間を取られた...

少し前にプロバイダを変えることで、運営中のサーバをhttpsに対応させたのだけれど、やっぱり前のプロバイダのほうがいいということがいくつかあって、前のサーバで(無料で!)httpsに対応しようとちょっと頑張ってみた(まだ解約はしてなかった)。

Let’s Encryptをインストールしようとしてみたのだけれど、途中でエラーになってしまう。

Error: Command '['/opt/eff.org/certbot/venv/bin/python3', '-Im', 'ensurepip', '--upgrade', '--default-pip']' returned non-zero exit status 1

このメッセージをググってみたら、どうやらpython3の問題らしい(なのかな〜?)。ともかく次のページの下のほうに書いてあるように lib/python3.4/shutil.py というファイルを修正したら無事できた(日本語のページがヒットしなかったので、ここに書いておくことにします)。

https://community.letsencrypt.org/t/failed-to-run-certbot-auto-successfully-on-centos-6-5/51376/2

実行前に次も必要かも。

export LC_ALL=C  

その他、参考になったページ

  • https://jonkara.net/2017/10/12/ssl_lets_encrypt/ —— わかりやすく書かれていて助かりました。感謝
  • https://www.ssllabs.com/ssltest/analyze.html?d=www.●●●.com —— 最後に確認。www.●●●.comを自分のサイトに変更してください。

更新で、また、エラーになってしまった

なんか、自動更新がかかってまたエラーになってしまった。 同じ、箇所が動かなくなってしまったので、具体的に何をすればよいか、書いておきます。

直すファイルは /usr/lib/python3.4/shutil.py の 387行目。
try:
    names = os.listdir(topfd)
except OSError as err:

↓

try:
    names = os.listdir(path)
except OSError as err:


topfd を path に直して、再度実行すれば無事動いた!

2018-01-24

JavaScriptのアロー関数( =>)は初心者にとってはバグの元かも

JavaScript講座をやっているのだけれど、受講生の方に例題を解いてもらうと、「何でこれで動かないのだろう?」と考え込んでしまうケースが時々ある。だいたいは長くても5分ぐらい試行錯誤すると「ああ、これが原因か!」とわかるのだけれど、講師の実力が疑われる場面だけに、かなりあせる(笑)。

ところが先日、「なぜこれがエラーにならないのだろう?」というケースがあった。ひとまず動き出すのだが、なぜか途中で止まってしまう。でもコンソールにはエラーメッセージが表示されない。

止まっている(止めている)箇所を探ってみたら、問題のコードは次のものだということがわかった。

if (picnum => 5) {
  clearInterval(timerID)
}

タイトル読んだ人は分かったと思うけど「=>」は「以下」の意味には使えないので、「>=」が正しい。 でも「=>」か「>=」なんてあまり意識しないよな〜。

「何で構文エラーにならないんだろう?」と少し考え、自分のパソコンでも似たようなコードを動かしてみたが、自分のパソコンではエラーになるようだ。あまり時間を割くわけにも行かず、結局その日はわからずじまい(今考えると自分のパソコンでは「=<」を試していたんじゃないかな。こちらはエラーになる)。

今日受講生の方からソースを送っていただいて眺めていたら、「なんだアロー関数ジャン」。

ifの条件でいつも5を返す関数を定義していたのだ。「->」はポインタっぽいから「=>」にしたのかもしれないけど、ちょっと紛らわしいかな〜。間違える初心者、結構いそうだな〜。

自分が無意識にやっていることを意識させされる

このケースもそうだけど、初心者の人といろいろやっていると、自分が無意識にやっていることを意識させられることが多い。 「以上」は「>=」とほとんど無意識に打ってる。だから「=>」と書かれていても最初は気が付かなかった。

ちなみに私が「>=」と打つケースはまずないのも気が付かなかった原因のひとつかもしれない。「a >= b」とは書かずに「b <= a」と書く。数直線は左から右に大きくなるからね。こう決めておけば、迷わずに済む。これは誰に教わったのか忘れけれど、まだ学生だったような気がするから、○十年前の話。本で読んだんだっけかな。

英語の語順が反映されている

考えてみれば英語では、"greater than or equal to" とか "less than or equal to" だから、順番どおり打つと「>=」とか「<=」になる(「>」は "greater than" で「<」は "less than")。だから、「=>」とか「=<」にはならない。

こんな所にも、英語が影響しているのだ。英語がよくできたほうが、プログラミングの習得には有利なのだ。

日本語では「以上」とか「以下」というのが普通だから、本当は「≧」とか「≦」とか書きたいところだけれどね。