SSブログ
前の10件 | -

翻訳する技術書の選択 [プログラマー現役続行]

以前から聞かれる質問に、「翻訳する技術書はどのように決まるのですか」というのがあります。どのように決まるかは、次の二つのパターンに分かれます(一度翻訳した本の改訂版は別として、新たな技術書の翻訳の場合です)。
  • 出版社が翻訳する技術書を選定して、その翻訳を依頼される
  • 私が翻訳したいと思う技術書を、出版社へ打診する
今まで19冊を出版していますが、一度翻訳した本の改訂版を除くと、出版社からの依頼が7冊、私から出版社に打診して翻訳したのが9冊です。

私から打診した本がすべて採用される訳ではなく、以下の理由でダメな場合があります。
  • 翻訳しても売れそうにないと判断される
  • 実はすでに翻訳が進行中である
  • (まれですが)翻訳されることを、著者が許可していない
ちなみに、19冊目の『Linuxシステムの仕組み』は、私から出版社へ打診した本です。そして、今年の夏に出版予定の20冊目は、出版社から依頼された本です。
コメント(0) 

最近、予約注文した専門書 [プログラマー現役続行]

読みかけの専門書もまだ多くあるのです、新たに以下の3冊を予約注文しました。

Code: The Hidden Language of Computer Hardware and Software

Code: The Hidden Language of Computer Hardware and Software

  • 作者: Petzold, Charles
  • 出版社/メーカー: Microsoft Press
  • 発売日: 2022/08/19
  • メディア: ペーパーバック

第2版ということで、どのような内容になっているのか楽しみ。

API Design Patterns: Simplify Your Remote Service Interface (Addison-Wesley Signature Series (Vernon))

API Design Patterns: Simplify Your Remote Service Interface (Addison-Wesley Signature Series (Vernon))

  • 出版社/メーカー: Addison-Wesley Professional
  • 発売日: 2022/09/16
  • メディア: ペーパーバック

API Design Patternsというタイトルに惹かれて。

A Tour of C++ (C++ In-depth)

A Tour of C++ (C++ In-depth)

  • 作者: Stroustrup, Bjarne
  • 出版社/メーカー: Addison-Wesley Professional
  • 発売日: 2022/09/30
  • メディア: ペーパーバック

私のC++に関する知識は2009年で止まっているので、C++を学び直したいと思い。

コメント(0) 

『Effective Java 第3版』オンライン読書会を終了します [Effective Java 第3版]

Effective Java 第3版

Effective Java 第3版

  • 出版社/メーカー: 丸善出版
  • 発売日: 2021/07/13
  • メディア: Kindle版

2020年6月から月に1回、土曜日の午後(13:00〜17:00)に開催してきました『Effective Java 第3版』オンライン読書会は、第2サイクルの途中でしたが、参加者が少ないため終了することにしました。

読みながら、難しい箇所を説明しながらの読書会でしたが、第2サイクルは参加者が当初から少なく、第1サイクルを参加した人で、第2サイクルにも参加している人だけがいつも参加される読書会になってしまいました。したがって、終了することにしました。

『Effective Java 第3版』をきちんと理解するには、Javaに関する多くの基礎知識を必要とします。また、本文中にコードを示しての説明もありますが、コードだけでは理解するのが難しい場合、簡単な図を書いて説明することも必要です。また、文章による説明が多いため、図を書いたり、簡単なサンプルコードを示したりもしました。

オンライン開催なので、日本のどこからも参加可能でしたが、残念ながら私が主催している他のオンライン読書会と比較すると、参加者が少なかったのは残念です。

今のところ、第3サイクルは予定していません。
コメント(0) 

正誤表『Linuxシステムの仕組み』 [正誤表]

スーパーユーザーなら知っておくべきLinuxシステムの仕組み

スーパーユーザーなら知っておくべきLinuxシステムの仕組み

  • 出版社/メーカー: インプレス
  • 発売日: 2022/03/08
  • メディア: 単行本(ソフトカバー)

『Linuxシステムの仕組み』の正誤表のページを追加しました。


「正誤表」のタブから参照してください。

コメント(0) 

訳者あとがき『Linuxシステムの仕組み』 [訳者まえがき・あとがき]

スーパーユーザーなら知っておくべきLinuxシステムの仕組み

スーパーユーザーなら知っておくべきLinuxシステムの仕組み

  • 出版社/メーカー: インプレス
  • 発売日: 2022/03/08
  • メディア: 単行本(ソフトカバー)

Linuxは、組み込みシステムからウェブサービスまで多くのシステムで使われています。そのため、ソフトウェア開発では、避けて通れないオペレーティングシステムになっています。今日では、ウェブサービスの多くがLinuxに基づくコンテナ技術に依存しており、開発マシンとして使っていなくても、間接的にLinuxを使っていることになります。

この本は、Linuxを使う上で知っておくべき知識を説明しています。この本で説明されている以上の詳細を知りたい場合、各章で紹介されている書籍やマニュアルページでさらに学ばれるとよいかと思います。Linuxカーネル内の仕組みについては、それだけで一冊の本になってしまうので、詳細には説明されていません。カーネルの仕組みに興味があれば、カーネルを解説した書籍を読まれることをお勧めします。

私自身は、1984年に社会人として働き始めてから、BSD 4.2/4.3、Idris、System V、SunOS、SolarisとさまざまなUnixを開発用としてだけではなく、製品のオペレーティングシステムとして使いました。Linuxも二つの組み込みシステムの開発で使いました。今日では、ソフトウェア開発にはUnixの系統の一つであるmacOSを使ってウェブサービスを開発しています。そのウェブサービスもクラウドのプラットフォーム上のKubernetes(17.2.4節)を使っています。また、Windowsであっても、WSL(Windows Subsystem for Linux)を使うことができます。その結果として、今日では、さまざまなプラットフォーム上で、Linuxを含むUnix系統のオペレーティングシステムやコマンドを使うことができます。

私がUnixを使い始めた頃は、Unixの機能は限られていました。たとえば、スレッド、共有ライブラリ、mmapシステムコール、TCP/IPのプロトコルスタックといったものはなく、プロセス間通信はfork/execした親プロセスと子プロセス間でのパイプだけでした。その後、さまざまな機能が追加されて、Linuxにも引き継がれています。一方で、30年以上慣れ親しんだUnixのコマンドは、現在でもその多くがソフトウェア開発で役立っています。Linuxの機能は拡張され続けていきますが、この本で説明されている基本的な事柄は、その多くが陳腐化することはないと思います。そして、皆さんのソフトウェア開発で役立ち続けると思います。

多くのソフトウェアエンジニアにとって、この翻訳本が日々のソフトウェア開発を支える知識の獲得に役立てば幸いです。

コメント(0) 

FORTRANから始まって41年(まとめ) [プログラマー現役続行]

3年前に「FORTRANから始まって41年」と題した一連のブログを書いたのですが、再度まとめを掲載します。各ブログのタイトルは全部「FORTRANから始まって41年」となっているのですが、それでは分かりにくいので、各テーマを代わりに列挙しています。

コメント(0) 

第11期Go研修が終了しました [プログラミング言語Go研修]

2021年9月から開講した、私にとっては通算第11期となるGo研修が、2月18日(金)に終了しました。リクルート社向けとしては第6期となります(研修内容の概要はこちら)。今期もオンラインの開催でした。

Go研修.png

コメント(0) 

二年間の在宅勤務 [プログラマー現役続行]

2020年2月18日から在宅勤務(WFH:Work From Home)を始めて、ちょうど二年が経過しました。一年前は、「一年間の在宅勤務」を書きました。

この一年間を振り返ってみると、通勤時間がないので、「複業を20年」で書いている三つの活動がバランスよく行えていると思います。この一年間に限っていえば、次の三つになります。
  • 会社での開発業務
  • 技術教育やオンライン読書会
  • 技術書の翻訳
オンライン読書会は土曜日の午後1時から5時(雑談を入れると6時前)で、一月に3回は行っていますので、15時間ほど費やしていることになります。技術書の翻訳に費やす時間も月平均すると60時間は超えています。通勤時間がないことは、とても大きいです。

2021年9月に「YOUR CHOICE」という名のものとに会社の勤務制度も変更になりました。コロナ前は原則出社でしたが、コロナで在宅勤務が長期化し、勤務制度が変更されました。私自身は、この二年間で一度も出社していません。

今後も、退職するまでは基本的に在宅勤務です。コロナが収束したら、たまに出社することはあるかと思いますし、ときには旅行を兼ねたワーケーションもやってみたいと思っています。

主な私的な活動

この一年間で主な出来事は、次の通りです。
  • 外来で通院しながらの心臓リハビリテーションが終了(2021年4月23日)
  • 『Linuxシステムの仕組み』の翻訳を開始(2021年4月23日)
  • メルペイ勤務が3年(2021年6月1日)
  • 20冊目となる技術書の翻訳を開始(2021年12月26日)
  • 『Linuxシステムの仕組み』の翻訳が終了(2022年2月5日)
副業としての技術研修は、次の通りです。すべて、オンラインでの研修になってしまいました。
  • 第10期Go言語研修が終了(2021年2月19日)
  • 2019年9月から始まった第26期Java研修が終了2021年5月21日)
  • 第11期Go言語研修を開始(2021年9月17日)
オンライン読書会は、次の通りです。
  • 『ベタープログラマ』オンライン読書会を開始(2021年2月20日)
  • 『プログラミング言語Go』オンラン読書会の第1サイクルが終了(2021年6月5日)
  • 『プログラミング言語Go』オンラン読書会の第2サイクルを開始(2021年7月3日)
  • 『Effective Java 第3版』オンライン読書会の第1サイクルが終了(2021年7月10日)
  • 『Effective Java 第3版』オンライン読書会の第2サイクルを開始(2021年8月14日)
  • 『ベタープログラマ』オンライン読書会が終了(2021年9月18日)
  • 『達人プログラマー』オンライン読書会を開始(2021年10月16日)
  • 「横浜Go読書会」の第37回から第39回をオンラインで開催

生活パターン

心臓リハビリテーションがなくなったので、金曜日を除く平日は次のような感じです。
  • 3時20分前後:起床、ストレッチ、ラジオ体操、血圧測定、体重測定
  • 4時20前後〜6時:翻訳作業
  • 6時:仕事始め
  • 7時30分〜8時15分:朝食休憩
  • 8時40分〜9時50分:エアロバイク(30分)、シャワー休憩
  • 11時30分〜12時30分:昼食、昼寝休憩
  • 17時30分頃:仕事終わり
  • 20時過ぎ:血圧測定、就寝

コメント(0) 

メモ:macOSのターミナルが起動できなくなった [その他]

通常、ターミナルがクラッシュした後に、再度起動すると今までは普通に起動されて、クラッシュする前のターミナル内のログが表示されているのが普通だったのですが、今朝は違っていました。

まず、突然クラッシュしてしまい、再度起動するとターミナルが開く前にクラッシュするという現象になり、全く使えない状態になりました。クラッシュログのスタックの部分が次のようになっていました。
Thread 0 Crashed::  Dispatch queue: com.apple.main-thread
0   libsystem_platform.dylib      0x19cd442cc _platform_memmove + 444
1   Terminal                      0x1040fc4e4 0x1040c8000 + 214244
2   Terminal                      0x104157874 0x1040c8000 + 587892

どうも_platform_memmoveで落ちているようなのですが、(ログの他の部分から推測するに)0番地へ操作してSegmentation faultになっています。ターミナルが使えないと何もできないので、今まで使ったことがないiTerm2をインストールしました。

ネットで同じようなクラッシュの報告はないかと検索したのですが、何も見つかりませんでした。そこで、よく考えたら、今までクラッシュ後に再起動するとクラッシュ前のウィンドウを復元していることを思い出して、どこかにクラッシュ前のデータが保存されていて、それを復元しようとして再びクラッシュしているのではないかと推測しました。保存場所をネットで検索したら以下の場所であることが分かりました。
~Library/Saved Application State/com.apple.Terminal.savedState
このディレクトリの下にあったファイルを全部消してからターミナルを起動したら、うまく起動できました。

この後、同じ状態にならないように、ターミナルの「環境設定...」メニュー →「プロファイル」→「ウィンドウ」タブ →「再開」の項目にある「ウィンドウを再度開くときにテキストを復元」のチェックを外しました。
コメント(0) 

予約受付中です:『スーパーユーザーなら知っておくべきLinuxシステムの仕組み』 [本]

私にとって19冊目の技術書の翻訳本になる『スーパーユーザーなら知っておくべきLinuxシステムの仕組み』がAmazon.co.jpで予約受付中です。

スーパーユーザーなら知っておくべきLinuxシステムの仕組み

スーパーユーザーなら知っておくべきLinuxシステムの仕組み

  • 出版社/メーカー: インプレス
  • 発売日: 2022/03/08
  • メディア: 単行本(ソフトカバー)


昨年の5月から翻訳作業を始めました。発売日は、3月8日となっています(遅れることないと思います)。

原著は、こちらです。

How Linux Works, 3rd Edition: What Every Superuser Should Know

How Linux Works, 3rd Edition: What Every Superuser Should Know

  • 作者: Ward, Brian
  • 出版社/メーカー: No Starch Press
  • 発売日: 2021/04/19
  • メディア: ペーパーバック



コメント(0) 
前の10件 | -