[3682] エンジニアリングから遠ざかる技術者たち

投稿:  著者:  読了時間:25分(本文:約12,000文字)


《Mac OS 9をインストールするという仕事が!》

■データ・デザインの地平[40]
 エンジニアリングから遠ざかる技術者たち
 薬師寺 聖

■クリエイター手抜きプロジェクト[386]Adobe Photoshop CS3〜CC編
 画像を左上と右下の相対座標を指定して切り抜く
 古籏一浩

--PR------------------------------------------------------------------
★DTP・印刷専門のデジタルコンテンツ販売サイト「印刷の泉」
 ≫≫≫ https://www.ddc.co.jp/estore/ ≪≪≪
 ●セミナー・勉強会を撮影した動画・スライドも好評販売中!
 ●“無料”のPhotoshopアクション・Acrobat用プリフライトもあります!
 ●編集作業の味方! PDFの違いを発見してくれるソフトを販売(体験版あり)

★電子書籍 PDF フォント 素材 スクリプト 動画を販売したい方を募集中!
-----------------------------------------------------------------PR---


━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
■データ・デザインの地平[40]
エンジニアリングから遠ざかる技術者たち

薬師寺 聖
< http://bn.dgcr.com/archives/20140421140200.html >
───────────────────────────────────

●仕事の精度に影響する倫理観

今では迅速に編集・公開可能な電子マニュアルも、その昔は手作業で作られる印刷物でした。PCのスペックが向上し、CADが広く使われ、インターネット網が張り巡らされて、SGMLを母胎とするXMLが誕生するまで、設計データをドキュメントに利用することは困難でした。

昭和の時代、我が国の製品を海外で販売するにあたっては、紙媒体のマニュアルを国内で準備して輸送していました(★1)。

当時はまだ交通網が整備されておらず、輸送技術も発達していませんでした。印刷の後に修正するなど論外ですから、ドキュメント類の原稿は、もちろん完璧でなければなりませんでした。

電子部品の型番や定数の1文字は、たかが1文字ではありません。回路図の交点の1個も、たかがひとつの点ではありません(★2)。

印刷物の1文字は、デジタルデータの1ビットよりも、重さを感じさせるものでした(★3)。

ひとつのミスもないドキュメントの背景には、技術者たちの「高い倫理観」にもとづく使命感と責任感があったのです。

手作業時代には、国内で流通する技術書や記事についても、その精度には高いものがありました。

筆者が精度を強く記憶しているものに、PC普及期の雑誌に掲載されていたインベーダーゲームのコードがあります。まだDTPのなかった当時、出版社がどのようなチェック体制を敷いていたのかは知りません。ただ、テクニカルプルーフの担当者たちが16進数に赤ペンを走らせて、完全を期していたのでしょう。その職務意識の高さには。今でも驚きを禁じえません。

●1文字が「たかが1文字」ではない重さ

ドキュメントの品質は直接コストに影響します。とりわけ、受け渡しに特殊な輸送技術と専用の運搬車両を必要とするような製品の場合は、その影響には大きいものがあります。

たとえば、海外に建設される巨大なプラントをイメージしてください(★4)。

その製造のために手配する部品のドキュメント(部材集計表)に過不足があってはなりません。

かつて、そういった部材集計は手作業で行われていました。配管図面上のフランジやエルボなどの部材別に(種類やサイズなどによって。さらに細かく分類される)色鉛筆でチェックを付けながらカウントし、集計していたのです。

なにしろ作る物が巨大ですから、部材ひとつとっても輸送コストは巨額です。また、強度計算された設計通りの部材を使わなければ、人命が失われる事故につながる可能性があります。不足する部材を省略したり、異なる種類で代替してよいものでもありません(★5)。

さらにいうなら、怖さを強調するまでもなく、図面には、当たり前のように、(たとえば児童が理科の授業で習って恐さを知るような)硫酸や硝酸などの化学式が並んでいます。

想像してみてください。たとえば、あなたが赤信号の前で停車しているとき、目の前を通り過ぎるタンクローリーに、硫酸や硝酸が積載されている様子を。

ささいな1文字のミスが、(他者の)人命を損ねたり、その家族を悲しませる可能性があることを、昭和の時代の重厚長大系技術者たちは理解していました。その「怖さ」のうえに、責任感を重ねていました。

ですから、上司の指示などなくとも、自ら三重チェックを行い、重要な個所は示唆呼称しつつ最終確認を行ったものです。

ヒトはミスをする生き物です。100%の安全など誰も保証できません。だからこそ技術者たちには、高い倫理観がもとめられるのです。限りなく100%に近づけるために、おのれに対して厳しく、完全を期す姿勢を持たなければならないのです。

●見て触れて取得する「モノのたしかさ」

高い倫理観を獲得するには、仕事の社会的影響をありありと思い浮かべられる推察力が必要です。その推察力は、直にモノを見て、手で触れる、体験によって、強化されていきます。

現在、データ設計者が定義しているデータの多くは、ヒトや機器といったモノに従属する情報と、その性質を表現するメタ情報です(★6)。モノとデータとメタデータは、本来、密接に結びついています。

ところが、計算機とITの進化は、モノからデータを切り離してしまいました。モノは製造業者や輸送業者が扱い、IT技術者たちは四六時中画面に向かってデータを扱っており、モノに触れる機会を奪われています。

技術者たちは、データだけでなく、モノに向き合う機会を取り戻さなければなりません。モノに向き合ってこそ分かる「たしかさ」があります。

たとえば、画面上で売上金額を入力する作業と、顧客からその金額分の現金を受け取る作業を想像してみてください。両者では、脳の働きかたが異なるでしょう。紙幣やコインという物質を、目で見て手に触れることによる「たしかさ」は、我々の脳に痕跡を残します。かたや、データだけならば、定着することなく通り過ぎてしまうことも少なくないでしょう。

扱うものが機器のデータなら、機器の操作方法を学び、使ってみましょう。それが医療用データなら、患者に向き合い、その苦闘に耳を傾けてみましょう。それが製造データなら、町工場に行って、鋼材の山を眺めてみましょう。

小さな部材の一つを持ちあげて、その重さに驚き、冷たくざらざらした手触りを記憶しましょう。真夏の工場の暑さに汗をぬぐい、棒心の技能と熱意に感嘆しましょう。

我々の生活は、データさえあれば成立するというものではありません。五感から取得される情報を蓄積することこそが、怖さを知らない技術者たちへの処方箋になることでしょう(★7)。

また、次世代の技術者育成のためには、乳幼児の置かれている環境を見直す必要があるかもしれません。

いまや、少なくない乳幼児が、TVやゲームやビデオに囲まれて育っています。それらは、他の誰かが考えた音や映像を伝えるものであり、本のように、言葉から音や映像を自ら想像するものではありません。

子供たちをビットの海に閉じ込めてしまうと、将来的に、五感を軽視した、データしか見ない技術者が増えやしないでしょうか。我々は「あえて効率や利便性を追求しないこと」がもたらすメリットについて、もっと考えたほうがよさそうです。

●エンジニアリングを知る技術者たれ

いまや計算機の圧倒的な進化は、効率化に拍車をかけ、「手をとめて考える」時間は奪われています。

頭の中でシミュレーションを行う必要性がなくなると、考えてからコードを入力するのではなく、先にキーを叩いてから考えるという人が現れても不思議ではありません。

それがプログラミングであれば、バグの原因をじっくり考えるよりも、少し修正してはデバッグを繰り返す人が増えてしまいそうです。

「プログラムは動いてなんぼ」ではありますが、それは本来、理論だけで形になっていなければユーザーに対する説得力に欠ける、という意味です。動きさえすればロジックへの理解は不要というわけではありません。理解なく書かれたコードは、テストした条件以外で、不具合の生じる可能性が否定できません。

さらに、優れた開発ツールと豊富なリソースは、未経験者を簡単に技術者に仕立てます。技術倫理について考える機会を与えられないまま、技術に関わる仕事に就く者が増えていきます。

そのうえ、ことさらに独創性が叫ばれ、独創性と社会性を天秤にかけては、前者が優先される時代です。独創性と社会性は両立できるにもかかわらず、独創性があれば社会性に欠けてもやむをえない、といわんばかりに。

倫理観を問うことなく成果のみを問う傾向が強まるほど、技術倫理は置き去りにされるでしょう(★8)。

こういった傾向は、旧来の技術者の姿とは、ずいぶん異なるものです。

先達の働き方や生き方を見て、倫理観を身に付け、技術を学び、吸収し、少しだけ創造性を発揮して技術革新の歩を進め、確実に後進へ引き継いでいく。そういった、社会基盤を支える裏方作業をコツコツと真面目に丁寧にこなし、淡々と生きることに満足感をおぼえる技術者の姿は、もはや過去の遺物なのかもしれません。

しかし、そうであったとしても、(趣味や個人公開のアプリ開発ではなく)社会基盤整備のための受託開発や、一大プロジェクトに参加することは、高い倫理観を持ち合わせた技術者の特権であってほしいものです。

現在では、センサーの進化などにより、ハードウェア開発とソフトウェア開発の境界は曖昧になりつつあります。さらに、UXが重視されるようになり、デザイナーと技術者の境界も徐々に壊れつつあります。

技術に関わる仕事に就くならば、企画・設計者であれ、データ入力者であれ、技術広告デザイナーであれ、ドキュメント制作者であれ、Web/UXデザイナーであれ、コーダーであれ、プログラマであれ、はたまたスーツであれ、それぞれの職業人であるまえに、高い倫理観を持つ技術者であるべき、ではないでしょうか。

★1 マニュアルは大まかに分けると3種類あります。取扱説明書、操作説明書、サービスマニュアルです。前ふたつは主にエンドユーザー向けの公開ドキュメントであり、サービスマニュアルは機器のメンテナンスや修理を行うサービスマン向けの内部ドキュメントです。

機器の分解・組立方法を表現したテクニカルイラスト、部品の仕様詳細を記載したパーツリスト、不具合の箇所を特定したり修理方法を判断するための回路図や実体配線図などから構成されます。

★2 抵抗やコンデンサの部品定数は、カラーコードで示されます。マスプロ(マスプロダクト=最終製品)用の部品の仕様や配置は、回路図・実体配線図・パーツリストなどに記載された情報と、完全に整合性を保っていなければなりません(カラーコードの読みかたに興味のある人は「抵抗 定数」で、bingってください)。

★3 本連載のテーマはデータ・デザインであるため、ドキュメント制作を取り上げていますが、ドキュメントの元情報を提供する設計者ともなると、その責任は何万倍も重大であり、さらに高い倫理観がもとめられます。

かつて、設計者は、頭の中でシミュレーションして、電卓を叩き、フリーハンドで図面を引き、製図技師が清書していました。彼らは、一文字の重圧と責任をよく理解していました。

★4 輸送するモノのサイズをイメージしにくい場合は、「重量品輸送」で画像検索してください。人間に比べて輸送するモノがいかに大きいか一目瞭然です。

★5 もっとも、昭和の時代にも、高い倫理観を維持することの困難なことはあったようです。

〜壁が近くにあって、天井の梁と配管や機器がぶつかっているはずの図面には、都合のいいように壁や梁の形が変えてある。この手の図面を信用して、新しく改造図を作成するととんでもないことになる。〜「ぼくが原発に反対する理由 海を見た原発技師」西岡孝彦著、1989年初版、徳間書店。

★6 たとえば、「H型鋼」というモノに、「高さ」「幅」「厚み」といったメタデータがあり、さまざまなサイズのデータがある、という関係です。

★7 工場の夜景は愛でるべき美しいものではなく、ヒトが一人の力で制御できる範囲をはるかに超えたものを作りだしたことへの恐怖心を湧き立たせるものでしょう。

設計や製造や運転に関わったことのある中の人なら、単純な称賛ではなく、ヒトの想像力に対する畏怖の念と、留まることを知らない技術進化への不安を感じているはずです。

★8 社会性と倫理学の関係については、社会脳(social brain)、社会神経科学(social neuroscience)などで、bingってください。

----------------------------------------------------------------------

■de:code

マイクロソフト テクノロジの方向性と最新情報が分かる、今年度最大のテク
ニカル イベント。
< http://www.microsoft.com/ja-jp/events/developer/default.aspx >

----------------------------------------------------------------------

【薬師寺聖/個人事業所 セイザインデザイン】
個人事業所 < http://www.seindesign.net/ >
< infosei@seindesign.net >

絵・音・詩・文・コードを扱うフリーのクリエーター、思索家。
エンジニアリング会社を経てデザイン事務所に勤務後、XML1.0勧告翌月に退職して開業。科学論文や電子カルテを扱うXML案件を手がける傍ら、XMLやRIAに関する書籍や連載を多数執筆(主にPROJECT KySS名義)。
現在は、受託業務から独自開発にシフト中。
Microsoft MVP for Client Development (Oct 2003-Sep 2014)


━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
■クリエイター手抜きプロジェクト[386]Adobe Photoshop CS3〜CC編
画像を左上と右下の相対座標を指定して切り抜く

古籏一浩
< http://bn.dgcr.com/archives/20140421140100.html >
───────────────────────────────────
今回は、Photoshopで画像を左上と右下の相対座標を指定して切り抜くスクリプトです。Photoshopには選択した範囲を切り抜く機能がありますが、アクションで登録してしまうと、固定された座標と幅になってしまいます。左上からの位置と右下からの位置を設定して切り抜きたい場合には困ります。

もともとの用途は、DTP処理でMac OS X(OS X)でキャプチャーされたウィンドウの影をなくしたい(切り抜きたい)というものです。

新しいOS Xだと影なしでキャプチャーできますが、それ以前は設定が必要だったり、また場合によっては白地や背景画像が含まれた状態になっていることがあります。そんなとき、今回のスクリプトを使うと簡単に切り抜き&保存ができます。


(function cutTransparent(){
// GUI部分
var winObj = new Window("dialog", "透明部分切り抜き", [0,0,320,270]);
var cropSize1 = winObj.add("radiobutton", [20, 10, 300, 25], "左上(40,25)から右下(-40, -55)で切り抜く");
var cropSize2 = winObj.add("radiobutton", [20, 30, 300, 45], "左上(5,2)から右下(-5, -7)で切り抜く");
var cropSize3 = winObj.add("radiobutton", [20, 50, 300, 65], "左上(57,35)から右下(-57, -79)で切り抜く");
var cropSize4 = winObj.add("radiobutton", [20, 70, 300, 85], "以下の座標で切り抜く");
winObj.add("statictext", [40, 100, 60, 120], "左");
winObj.add("statictext", [140, 100, 160, 120], "上");
winObj.add("statictext", [40, 130, 60, 150], "右");
winObj.add("statictext", [140, 130, 160, 150], "下");
var x1 = winObj.add("edittext", [60, 100, 100, 120], "67");
var y1 = winObj.add("edittext", [160, 100, 200, 120], "40");
var x2 = winObj.add("edittext", [60, 130, 100, 150], "67");
var y2 = winObj.add("edittext", [160, 130, 200, 150], "89");
var btnCrop = winObj.add("button", [20, 180, 300, 205], "切り抜く");
var btnSaveClose = winObj.add("button", [20, 210, 300, 235], "保存して閉じる");
var btnUndo = winObj.add("button", [20, 240, 300, 265], "切り抜きを取り消し");
// ボタンにイベントを割り当てる
btnCrop.onClick = function(){
var docW = activeDocument.width.value; // 横幅
var docH = activeDocument.height.value; // 縦幅
var cTop = null;
if(cropSize1.value== true){
var cTop = 25;
var cLeft = 40;
var cRight = docW - 40;
var cBottom = docH - 55;
}
if(cropSize2.value== true){
var cTop = 2;
var cLeft = 5;
var cRight = docW - 5;
var cBottom = docH - 7;
}
if(cropSize3.value== true){
var cTop = 35;
var cLeft = 57;
var cRight = docW - 57;
var cBottom = docH - 79;
}
if(cropSize4.value== true){
var cTop = parseInt(y1.text);
var cLeft = parseInt(x1.text);
var cRight = docW - parseInt(x2.text);
var cBottom = docH - parseInt(y2.text);
}
if (cTop != null){
activeDocument.crop([cLeft, cTop, cRight, cBottom]);
app.refresh();
}else{
alert("切り抜く種類を指定してください");
}
}
// 切り抜き後に保存して閉じる
btnSaveClose.onClick = function(){
activeDocument.close(SaveOptions.SAVECHANGES);
}
// 失敗したら元に戻せるようにするボタン
btnUndo.onClick = function(){
var idslct = charIDToTypeID( "slct" );
var desc7 = new ActionDescriptor();
var idnull = charIDToTypeID( "null" );
var ref3 = new ActionReference();
var idHstS = charIDToTypeID( "HstS" );
var idOrdn = charIDToTypeID( "Ordn" );
var idPrvs = charIDToTypeID( "Prvs" );
ref3.putEnumerated( idHstS, idOrdn, idPrvs );
desc7.putReference( idnull, ref3 );
executeAction( idslct, desc7, DialogModes.NO );
app.refresh();
}
winObj.center();
winObj.show();
})();


もし、切り抜きパターンをキーボードで手軽にやりたいのであれば、以下のスクリプトを作成し、PhotoshopのアプリケーションがあるフォルダのPresetsフォルダのScriptsフォルダに入れます。入れたらPhotoshopを起動します。

すると、ファイルメニューのスクリプトの一覧に作成したスクリプトが表示されます。あとは、アクションに設定すればできあがりです。

var docW = activeDocument.width.value; // 横幅
var docH = activeDocument.height.value; // 縦幅
var cTop = 25;
var cLeft = 40;
var cRight = docW - 40;
var cBottom = docH - 55;
activeDocument.crop([cLeft,cTop,cRight,cBottom]);


【古籏一浩】openspc@alpha.ocn.ne.jp
< http://www.openspc2.org/ >

Windows XPのサポートが終わったみたいですが、先週 Mac OS 9をインストールするという仕事(正確には仕事ではないけど)がありました。

今更 MacOS 9というのは事情があって、過去のデータ(15年ほど前のもの)を利用するため。PageMakerで作成したデータがあるため、MacOS 9が必要ということですが、結局 PageMakerが Mac OS Xのクラシック環境で動かず。もっと古いマシンを使わないと駄目だったのかも。IllustratorやPhotoshopは未だに現役だけど、PageMakerははるか昔に引退。都合によりInDesignへの移行も難しい。

別件で回収してきたデータはフロッピーディスク。さすがに、ドライブも売っているけど扱いが難しいメディアに。HTMLが一番残っていそうだけど、サーバー全滅したらほとんどのデータが消滅するというオチになりそう。集合知が突然消えたら、何もできずに無能になってしまうのか?

・4K/ハイビジョン映像素材集
< http://www.openspc2.org/HDTV/ >

・JavaScript逆引きハンドブック
< http://www.amazon.co.jp/dp/4863541082 >

・D3.js例文辞典
< http://www.openspc2.org/reibun/D3.js/ >

・Dart例文辞典
< http://www.openspc2.org/reibun/Dart/ver1.1/ >

・Adobe CS2〜CS6,CC JavaScriptリファレンス&ライブラリ
< http://www.openspc2.org/reibun/AdobeJS/index.html >

・Adobe JavaScriptリファレンス(検索できないのはKindleのバグらしい)
< http://www.amazon.co.jp/dp/4844395955 >

・Nexus 7(アンドロイドタブレット)使い方辞典
< http://www.openspc2.org/reibun/Android/Nexus7/ >

・クリエイター手抜きプロジェクト
< http://www.openspc2.org/projectX/ >

・Adobe Illustrator CS3 + JavaScript 自動化サンプル集
< https://www.ddc.co.jp/estore/cgi/item/start.cgi?m=DetailViewer&record_id=243 >
吉田印刷所の「印刷の泉」でも購入できるようになりました。


━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
編集後記(04/21)

●レンタルショップの黒澤明コーナーで「日露戦争勝利の秘史 敵中横断三百里」を見つけた。黒澤明と小国英雄の共同脚本、監督は森一生、1957年公開だった。この映画は幼い頃の記憶に残っている。文部省選定映画だったのだろうか。小学校時代に教師に引率されて隣町の映画館に見に行った。もちろん、意味のよく分からない映画だった。話している言葉が戦争にかかわる術語だったからだ。とにかく日本兵が敵に追われて騎馬で逃げていたこと、雪の中ですごく寒そうだったことくらいしか覚えていない。しかし、感心なことに、鐵嶺と奉天という地名は漢字で覚えた。

旅順要塞が落ちた後に、日本とロシアは奉天で会戦に至る。ネットの辞書で「会戦」をひいたら「両国が奉天に会戦する」と例文が出たくらい、世界戦史空前の大会戦である。映画は、その少し前、ロシアが決戦地として大兵力を集中しているのは、鐵嶺か奉天か判然としなかったため、秋山騎兵団騎兵第九連隊の建川中尉以下5名の斥候隊が派遣される。彼らは敵中深く潜入し鐵嶺に至る。市街を偵察し、ロシア兵の大群が列車で奉天に南下するのを見きわめ、追いすがるコサック騎兵隊を振り切って生還する。軍司令部にもたらされたこの情報が、奉天大会戦で日本を勝利に導いた。という素晴らしい話なのだが、実話だろうか。原作は山中峯太郎が「少年倶楽部」に連載した小説だ。

「坂の上の雲」ではこの「プロジェクトX」をどう描いているかというと、「建川美次中尉以下六騎の将校斥候は行動二十三日、行程千二百キロ、三百里におよんだ。(以下略)」と簡単に片づけている。騎兵の長距離捜索と後方攪乱作戦の一例に挙げただけだ。実際に三百里の斥候はしたものの「鐵嶺か奉天かという偵察」は山中峯太郎の創作のようだ。ロシアも日本も奉天会戦に向けて着々と準備していたのが事実だ。建川中尉を捜して「坂の上の雲」の第四部から第五部を読みふけってしまった。それにしても、日露戦争とはこれ以上ない幸運に何度も恵まれて、どうにか勝利をおさめたものだったのだ。

この映画の舞台となる満州の雄大な風景、大量な人馬の動員などはスケールが大きい。モノクロとはいえ、60年近く前にこれほどのビジュアルをつくるとはすごいことだ。ロケは北海道上富良野町、陸上自衛隊上富良野演習場などをつかって行われたという。はでな戦闘や絶体絶命のシーンはなく、せいぜいロシア兵に銃撃されたり、追いかけられたりする程度で、ピンチを脱するところなど、いま見るとご都合主義な部分もあるが、少年のわたしはどう感じていたのだろうか。最近、いきなり思いもかけぬ昔のことが心に浮かんで来て、嗚呼、やり直したいと思うことが度々。しみじみ歳取ったんだと感じる。(柴田)

< http://www.amazon.co.jp/exec/obidos/ASIN/B0014IMRRQ/dgcrcom-22/ >
「日露戦争勝利の秘史 敵中横断三百里」


●続き。宅配遅延から連想。増税前に買った方がいいもの、後で買った方がいいものという話があった。以前エコポイントでテレビを買ったが、締切後の大幅値下げを見た身としては、気になったよ。まぁ、結局買えたのは防災グッズとカーテン、フライパン、本類ぐらいなんだけどね。年度末にあちこち買いにいけないわよ。

日用品、薬なんかも買い込みたかったものの、単価の低いものは後回しになりがち(いや高いものも結局後回し)。増税後の冷え込みに望みをかける。

4月2日にスーパーへ買い出し。棚に空洞がちらほら。駆け込み需要によって、メーカーや問屋に在庫がなかったり、配送遅れなんかが原因だろう。価格を見ると、以前は98円(税込102.9円)だったものが115円(税込124.2円)に。3%どころじゃないですがな。これって問屋を通るたびに3%ついてるってこと? 

じゃあ消費者の負担は3%以上ってことよね。スーパーのプライベートブランドが有利ね。いまは在庫が少ないから高めに売ってるってこと? 続く。/5%の時は知らないけれど、コンビニだと141円(税込152.2円)だったわ。(hammer.mule)

< http://kokucheese.com/event/index/160368/ >
『Webディクレターのい・ろ・は - Webディレクション経験15年、現役ディレクターの現場から』
ノウハウを一挙公開。直球アドバイスのコーナーも