So-net無料ブログ作成
検索選択
前の10件 | -

予約受付開始『プログラミング言語Go』(2) [golang]

プログラミング言語Go

プログラミング言語Go


上記のAmazon.co.jpだけでなく、以下のサイトでも予約注文可能になりました。



スポンサーリンク





予約受付開始『プログラミング言語Go』 [golang]

プログラミング言語Go

プログラミング言語Go


Alan DonovanとBrian Kernighanの共著である『The Go Programming Language』の日本語版である『プログラミング言語Go』の予約受付がAmazon.co.jpで開始されました。

2015年4月15日に米国Pearson社の編集担当のGreg Doench氏に依頼して、著者の二人に翻訳者として紹介してもらい、草稿のレビューをさせてもらうことになりました。それから、都度更新されている草稿を二回読み返しフィードバックを行い、2015年9月末には原著が完成して11月には英語版が出版されました。したがって、翻訳に着手したのは2015年10月からであり、すべての翻訳作業(索引作り、組版作業も含めて)は5月上旬には終了して、お届できる予定です。また、社内研修では一足先に翻訳原稿による研修を始めています(「社内Go言語研修を開講します」)。

この本は、私にとっては15冊目の翻訳本となり、Go言語としては2冊目です。また、原著の草稿をレビューして、その後翻訳する本としては、5冊目となります(他は、『プログラミング言語Java第4版』、『Java Puzzlers』、『Effective Java 第2版』、『プログラミング言語Goフレーズブック』です)。



スポンサーリンク





第24期Java研修を開講 [プログラミング言語Java教育]

私にとって、通算第24期になるJava研修を今日から開講します。もともと開講するつもりはなかったのですが、強い要望があり開講することにして定員10名で募集しました。しかし、第22期と同じで受講生はわずか6名です。

今回もテキストは、従来通りです。『プログラミング言語Java第4版』『Effective Java第2版』、それに、拙著『Java 2 Standard Edition Tiger』です。内容としては、Java 5.0ベースとなります。

なお、このJava研修の修了生を対象として「Java 8」のコースも同時に募集したのですが、応募がゼロだったので開講しません。


スポンサーリンク





社内Go言語研修を開講します [プログラミング言語Go研修]

The Go Programming Language (Addison-Wesley Professional Computing)

The Go Programming Language (Addison-Wesley Professional Computing)


社内の研修ですが、Go言語研修を今日から開講します。今回は、予定していた定員よりも申し込みが多かったので、二つのコースに分けて開催します。

研修の正式な社内の名称は「プログラミング言語Go基本技術習得」コースです。Go言語でプログラミングするのであれば最低限これだけは学んでおいてもらいたいという意味で「基本技術習得」です。Java研修も同じですが、「基本技術習得」となっているので初心者向けと勘違いする人が多いですが、初心者向けではありません。

テキストは、Alan DonovanとBrian Kernighanによる『The Go Programming Language』です。日本語版はまだ出版されていませんので英語版で読まれている人も多いかと思います。

Java研修と同様に、私的な時間にテキストの予習して内容に関する質問をまとめることと、練習問題をすべて解いてくるということになります。研修は月に1日だけのペースで進めます。研修の1日は、質問に関するQ&Aと練習問題の確認という形式で進めます。

業務で多少なりともJavaを使用している人がJava研修を受講することが多いのですが、今回のGo研修は業務でGo言語を使用していない人を対象としています。また、「今年度の新卒新人」から「Java研修とJava8研修を修了した人」までと、受講生のプログラミング経験のレベルもバラバラなので、研修スケジュールは立ててはいますが、実際に何回で終了するかはやってみないと分からないです。

さすがに、英語のテキストで予習をきちんとできる人は少ないので、日本語版が出版されるまでは「翻訳原稿」を使用します。

言語研修と練習問題 [プログラマー現役続行]

長年『プログラミング言語Java第4版』をテキストの一部としてJava研修を実施しています。また、『Javaプログラマーなら習得しておきたい Java SE 8 実践プログラミング』を用いたJava8研修も三回実施しました。

どちらの書籍にも練習問題がそれぞれ100問以上あります。研修の受講生は、それらの練習問題全部に取り組みプログラミングしてくることが求められています。来年2月から開講予定のGo言語研修ではテキストとして『The Go Programming Language』を使用します(実際には翻訳原稿)。そして、この本にも練習問題が100問以上あり、すべてプログラミングしてもらうことになります。

技術書を一人で黙々と学習する場合と、研修で学習する場合の大きな違いの一つは、全部の練習問題のプログラミングに取り組み続けられるということです。私もそうですが、一人で技術書を学習している時は、技術書に練習問題があっても、それをプログラミングして解くことは少ないです。

一人で学習する場合とは異なり、研修受講生は全員が同じ練習問題に取り組んでいるという状況が、結果として個々の受講生がプライベートの時間(休日など)に取り組み続けられるモチベーションになっているのだと思います。研修日には、全員の解答のコードを確認することはできませんが、他の受講生の解答を見ることで得ることも多いと思います。

副業 [プログラマー現役続行]

私自身は、1984年4月に就職してからずっと会社勤めをしています。会社は4回変わりましたし、これからも変わらないとは言い切れません。一方で、会社以外から給与以外の収入(雑所得)を得るようになったのは2000年からです。

主な収入は、「原稿料」、「印税」、それと「組版料」です。雑誌の原稿を書いていたのは2006年までなので、それ以降は「印税」と「組版料」のみです。一部の本を除いて、基本的に自分が翻訳した本を自分で組版して納品してきました。残念ながらこれらの収入で暮らせるほどには、日本では技術書は売れません。

安達 裕哉さんが”「副業すると、本業の成績も上がる」と語る経営者の話”と題したブログ記事で、副業をしている人の特徴として以下の三つが書かれています。
  • 人脈が多い
  • 収入の口が他にもあるので、評価に拘泥(こうでい)しなくなる
  • 経営者視点が持てる
人脈ですが、確かに多少は広くなっているかもしれません。出版社と著者達との人脈は普通のソフトウェアエンジニアよりもあります。原著の草稿のレビューをするというのも、そのような人脈のおかげだったりします。今回の『The Go Programming Language』の英語草稿のレビューも、担当している米国の出版社の(知り合いである)編集者へ直接自分でお願いして、著者のAlan DonovanとBrian Kernighanに紹介してもらいました。

ソフトウェアエンジニアとしては、翻訳を通して多くの知識を学ぶと同時に、著者達と多くのメール(質問や間違いの指摘)のやり取りをすることで、実際に会ったことはない人が多いですが人脈は広がっていると思います。

二つの目の「会社での評価にこだわらなくなる」というのは、ある程度そうかもしれません。そのため、ソフトウェア開発に関しては社内で褒めるところが見あたらないことが多く、問題点を指摘することが多いため評価が下がったりするのですが、あまり気にしていません。あるいは自分が重要だと思う活動が評価されなくてもそほど気にしないようになってきています。

三つ目の「経営者視点が持てる」ですが、何かを作って売るという副業ではないので、それほど持てるようになっているとは思えません。ただ、翻訳は膨大な時間を費やす必要があるので、それが結果的にどのくらいの時給になるのかは最近は気にして、すべての作業時間を記録しています。ちなみに昨年出版した『APIデザインの極意』は「今日までの収入」を「翻訳に費やした時間」で割ると時給1,722円です。

副業により給与以外の収入はありますが、それに加えて上記の最初の二つの項目は大きなメリットだと思っています。

専門書には間違いもある [プログラマー現役続行]

一冊の専門書を仕上げるというのは大変な作業であり、出版時に誤りが残っているのは普通です。たとえば、『The Go Programming Language』のErrata(正誤表)を見てみるとすでに20項目弱の訂正が掲載されています。

技術書の誤りに関しては、拙著『プログラマー”まだまだ”現役続行』に「専門書には間違いもある」として書いているものを引用しておきます。

専門書には間違いもある

 専門書を読む際に注意しなければならないのは、たとえ専門家が書いていたとしても、誤植などの誤りがあるということです。そう思って読む必要があります。一冊の本を仕上げるという作業は、膨大な時間を要する作業であり、どうしても完全に仕上げることは不可能である場合が多いからです。つまり、説明が間違っている場合もあるということです。
 さらに、たとえばサンプルコードなども、必ずしも適切でない場合もあると思って読むことです。よく、そのような間違った記述や不適切なコードが書かれている本を根拠に、論理的に矛盾していても「本に書いてある」と主張するエンジニアがいたりします。みなさんは、くれぐれもこのようなエンジニアにならないように心がけてください。
 そして、間違いかなと思ったら、正誤表(英語ではErrata)が公開されていないかを探して、公開されていればすでに掲載されているかを確認します。公開されている正誤表に掲載されていなかったり、正誤表が見つからなかったりした場合には、著者や翻訳者へメールなどで連絡してください。本の間違いであれば、著者や翻訳者によっては、正誤表の謝辞の欄に名前を掲載してくれたりします。
 私の場合、最近では、誤りだと思われる箇所については躊躇なく著者へメールで問い合わせるようになりましたが、記憶にある最初のメールはスレッドプログラミングに関する記述の間違いの指摘でした。
 1993年に、あるプロジェクトでマルチスレッドプログラミングをするようになったのですが、当時はマルチスレッドプログラミングに関する書籍はほとんどない状態でした。しかし、プロジェクトが終わりかけた1995年頃、いくつかの書籍が出版されて、その中の一冊を読んでいました。自分の知識を復習する意味で読んでいたのですが、今まで行ってきたマルチスレッドプログラミングの前提を覆すような記 述があり、その記述は間違いではないかと指摘するメールを送ったのです。著者からは、記述が誤りであるという返信が返ってきたのですが、その誤りを指摘したのは私が最初だったようです。そのときの返信を印刷したものを、今でもその書籍に挿んであります。
 たとえつたない英語であっても、間違いを連絡してもらえれば、著者にとっては助かりますし、正誤表の謝辞欄に掲載されている自分の名前を見るのは嬉しいものです。
 誤りの指摘をするには、単なる誤字脱字ならば簡単なことですが、技術的内容であれば、自分でもサンプルプログラムを書いて確認したり、ソースコードを調べたりする必要があります。そのような調査を行うことも、技術者としてのレベル向上に役立ちます。そして、いくつもの指摘を実際にすることで、技術者としての信頼を著者から得ることもできたりします。
 そのためには、業務で使用している技術に関しては、きちんと学習することです。おそらく、業務ではその技術のすべてを使用していないかもしれませんが、使用していない部分に関しても学習することが重要です。
 時には、誤りだと思った事柄が実は正しくて、自分自身が誤解して技術を理解している場合もあります。その場合であっても、著者へメールで誤りではないかと知らせることで、実は、あなたの勘違いですよと説明してもらえたりします。その場合でも、自分の不正確な理解を正す良い機会となりますので、積極的に著者へ問い合わせることをお勧めします。
プログラマー”まだまだ”現役続行』(p.108)

プログラマー”まだまだ”現役続行 (技評SE選書)

プログラマー”まだまだ”現役続行 (技評SE選書)

  • 作者: 柴田 芳樹
  • 出版社/メーカー: 技術評論社
  • 発売日: 2010/09/04
  • メディア: 単行本(ソフトカバー)


Go言語研修 [プログラミング言語Go研修]


社内の教育コースですが、2016年2月よりプログラミング言語Go研修を始めます。Java研修と同様に、テキストの予習と練習問題を全部解くプログラミングを、私的な時間に行ってもらいます。業務扱いは、月に1日だけの研修の日だけです。研修の日は、事前予習で疑問に思った点をまとめた質問表に対する回答・議論、そして、練習問題の解答の確認です。

テキストは、やはりバイブル本である上記の本です。日本語版はまだ出版されていませんが、出版されるまでは翻訳原稿で予習をしてもらいます。2000年に始めたJava研修も実は翻訳原稿を使っています(研修実績はこちら)。

書籍『The Go Programming Language』(10) [golang]


紙の本での別のIndex(索引)の話題です。整数のオーバーフロー(integer overflow)として索引に次のように書かれています。
integer
    literal 55
    overflow 53, 113

overflow, integer 53, 113
p.113に関しては、そのページを見ても「integer overflow」という言葉は見当たりません。これは間違いかと思ったのですが、そうではありませんでした。

この索引は、練習問題 4.12に付けられているものです。そこでは、https://xkcd.com/571へ言及しており、そこを開いてみると・・・・確かに「integer overflow」していました。

『Javaパフォーマンス』読書会 終了 [読書会]

Javaパフォーマンス

Javaパフォーマンス


2015年4月27日(火)から始めた社内の『Javaパフォーマンス』読書会ですが、開催しない週があり進捗が悪かったのですが、今日終わりました。5名で始めた読書会でしたが、途中1名が転職したので4名で終了しました。

2月に大森事業所から海老名へ転勤後の勉強会でしたが、なんとか終わらせることができました。12月7日からは新横浜事業所勤務になります。

前の10件 | -