神戸ITフェスティバル2014に行ってきた

[`evernote` not found]
[`livedoor` not found]
[`yahoo` not found]

去年行って面白かったので今年も有給とって行ってきました。
神戸ITフェスティバル2013に行ってきた(一日目) | while(isプログラマ)
神戸ITフェスティバル2013に行ってきた(二日目) | while(isプログラマ)

聴講したセミナーは以下のとおり。
1日目

2日目

今年はセミナーも展示も昨年とくらべてかなり増えていたように思います。ただ、昨年のいまいち萌えない娘を全面に押し出したサイトやKOBerrieSのライブなど、ITイベントらしくなく、それでいて面白い感じはあったのですが、今年は普通のITイベントという印象。しいていうなら、お子さんが多かったという点では他のITイベントとは違うかもしれません(自分には関係ないですが)。
でも、よくよく考えたら、攻殻機動隊 展示ブースというのがあったので、そこはちょっと雰囲気違ったかも? ただ、自分自身がこのアニメをよく知らない(オープニングはニコ動で見たことある程度)ので、特別何も思わなかった(好きな人は興奮したんだろうけど)。

それ以外の点でも、去年のほうが面白かったかな。まあ、何事も初めて行った時のほうが面白く感じるもんかもしれませんね。関西オープンソースのイベントも初めて行った時のほうが面白かったですし(ただ、自分が初めて関西オープンソースに行った時は、Google,Microsoft,Mozilla,Operaのブラウザベンダーの講演やセミナーがあったので、すごかったです)。

他にも今年はセキュリティやウェアラブルデバイスについてのセミナーや展示が多かった印象。そうそう、今回の初めて、OWASP Kansaiという団体を知りました。そもそも、OWASPという団体すら、知らなかったのですが、Webアプリケーションのセキュリティ改善に向けた啓発、研究活動を行う非営利団体だそうです。自分も最近セキュリティについて気になってきて、先日も情報セキュリティ入門 第3版という本を読んだところです(図書館で借りた本ですが)。うちの会社のサイトもこういう点は弱いので、改善していきたいです。

セキュリティといえば、1日目に開催された情報セキュリティForumがある意味すごかったです。近畿二府四県の警察局のゆるキャラが大集合で圧巻でした。もしかして、全国の都道府県の警察局にゆるキャラがいるのだろうか。はたして、必要なんだろうか。
近畿管区警察局のゆるキャラ達集合” width=”120″ height=”120″ class=”alignnone size-full wp-image-600″ />
自分はどのキャラも知らなかった(兵庫県のこうへい君・まもりちゃんなら見たはあるような気はした)のですが、滋賀県の『けいたくん』の落ち着きのなさに笑いました。滋賀県の取り組みを紹介してる人が途中で中断してけいたくんに注意するほど(それでも落ち着きなかったけど)。そっちが気になりすぎて、滋賀県の取り組みについては全く覚えてませんし、メモもとれませんでした。

そういや、このフォーラムの後半のパネルディスカッションで知ったのですが、現在の法体制は情報ではなく、物に価値を置いているようで、例えば情報を盗まれても不処罰だそう。そういう点でも企業がちゃんと対策しないといけないのかもしれませんね(法で処罰があるから対策しなくていいというわけではないですが)。

大学教授の金出武雄さんや松田卓也さんの話は研究発表みたいな講演でした。どちらも興味深かったのですが、金出さんの話は本当にすごかったです。自分が無知だっただけですが、1990年代にすでにそんなことができたのかと驚く話がいろいろありました(3次元復元とか自動運転とか)。
さらに、現在研究していることも衝撃でした。夜の雨の運転でヘッドライトにあたった雨が反射して白く見えてしまうため、周りが見えにくいため、雨の部分だけ光をあてないようにする技術。ある程度、実証実験で成功しているようなのですが、そんなことができるのかと驚きです(ヘッドライトにはプロジェクターを使うそうです)。

後、ウェブ制作を仕事にしている自分としてやっぱり気になったのが、HTML5の話。HTML5の現状と未来という話は、それなりに知ってる(ただし、やったことはない)話だったのですが、ものすごく面倒に感じました。本当にそこまでやらなきゃいけないのかと(JavaScriptフレームワークに、altJSに、CSS preprocessorに)・・・。こういう話聞くたびに思うのだけど、本当にそこまでやれてるのだろうか。YEAMONとGrunpでだいぶ効率化できるそうだけど、JavaScriptとCSS以外にaltJSとCSS preprocessorの書き方を覚えなきゃいけないというだけで大変(Coffee SCriptなんか、だいぶJavaScriptと書き方異なるし)。

後、Google Material Designについて。てっきり、Googleが作ったWeb制作用のサービスかソフトだと思ったのですが、そうじゃなくて、ユーザーに分かりやすいデザインを実現する概念だそうです。
ただ、自分で一から実装しようとなるとかなり大変だそうで、現状はPolymerやMateliarizeといったJSライブラリやCSSフレームワークを使うことになるそうです(参考:Material Design対応の使えるCSS・JSフレームワーク集 | レンタルサーバーのCPIスタッフブログ)。これを見てると、CSSでの簡単なアニメーションの実装ぐらいできるようになっておいたほうがいいんだろなと思いました。

そして、今回、最も注目していたファーストサーバの『データ消失事故を振り返って』。聞いてるだけでドキドキしました。これは是非、映画化してほしいですね(無いだろけど)。どういった内容だったか書きたいのですが、講演者から誤解を与える可能性があるのでソーシャルでの共有はやめてくださいとのことなので書けません(あれ? ブログはいいのか? いや多分、そういうことじゃない)。自分も先日、サイトの大切なファイルを消して半日以上サイトが見れない状態になっていたので、他人事じゃないんですよね(半日以上気付かれないようなサイトという時点で、被害は大したことなかったのですが)。

なお、そのファーストサーバですが、展示会場でタブレットのくじを引くように言われて、当たりを引き、ファーストサーバオリジナルのKitKatやチロルチョコをもらいました。
ファーストサーバのオリジナルチョコ
今回得た戦利品では一番良い物だったかもしれません。

後、もらったものといえば、GMOの展示会場でカレンダーとステッカーをいただきました。
GMOでもらったカレンダーとステッカー
この品は、マジックテープのついた玉をダーツボードに投げて、ヮピコ(ワピコ)のコスプレをした人に勝ったらもらえるということだったのですが、自分の運動神経のなさを思い知らされました。なんと2回連続で的に当たらないというミス。的に当たる前に玉が下に落ちていく。当たるまでやらせてもらえ、3度めでようやく当てたものの、端っこの得点が低い場所。そうして次に、コスプレイヤーさんが玉を投げたのですが、的に当たらず。自分と違い、なぜか1度目で終了。自分の勝ちという結果に。なんだかすごい悲しかったです。普通にゲームなんかやらずに、物もらえるだけでいいんですけどね(うまい人は楽しいんでしょうけど)。まあ、ゲーミフィケーションという考え方でいうと、正しいのかもしれませんね。

他に展示会場では、Dmet ideaというクラウドソーシングについての展示がありました。まだサービス事態、始まったばかりだそうですが、アイデアのみで支援を受け付けることができるクラウドファンディングだそうです。クラウドファンディングというと、何か作れる人が、こういうのを作りたいから出資してくださいと募るイメージがあるのですが、そうではなく、何か作れない人でも、何かを作るアイデアさえ持っていたら出資を受付、デザイナーやエンジニアに協力をもとめて採用されることがあるそう。どれぐらいうまくいくかは未知数だと思いますが、ちょっと気になりました。

後、最近気になっているウェアラブルデバイスについて。話し聞いてて驚いたのですが、3Dプリンタで作ってるロリジナルのデバイスを作ってるという人が何人かいて驚きました。そういう世の中なんですね。3Dプリンタのほうの話も、面白かったです。3Dプリンタがもっと一般的になれば、B to C(Business to Consumer)ではなく、B to I(Business to Individual)、つまり、一般大衆ではなく、個人個人にあわせた一品物が簡単にできる時代になるだろうとのこと。オーダーメイド製品がコストを抑えてできるということですね。早くそういう時代になってほしいものです。

最後に聴講したのが、大阪イノベーションハブ(というより、ハッカソン)についての講演。先日話題になっていた、シャープの萌える掃除機もこの場所で行われたハッカソンがきっかけで製品化されたようで、展示もされていました(参考:「おはようダーリン、起きてー!」 シャープ、萌える掃除機“ツンデレ妹”「COCOROBO」発売決定 – ITmedia ニュース)。
萌える掃除機
ただ、この講演のメインはMBSハッカソンという、MBS(毎日放送)と提携して行われたハッカソンについての話。入賞した上位三団体が実際に作ったアプリを紹介していました。チーム共犯者という団体の作品は、いろいろとひどかったです(それは、夜中のサンテレビかテレビ東京でやる番組だろと)。

最初のほうで、去年より面白くなかったみたいなこと書きましたが、今年も面白かったです。多分、来年も行きます。それよりもう少し、こういうイベントに行く頻度、増やそうかな。名刺もってないのに、名刺交換を求められるけど。

1024個の箱からサンタクロースの汚れた靴下を見つけるための比較回数は7回

[`evernote` not found]
[`livedoor` not found]
[`yahoo` not found]

先日、チューリングの計算理論入門という本を読んでいたら、『サンタクロースの汚れた靴下』という話が書かれていました。

どういう話かというと、1024個のプレゼントの箱のうち、間違えて一つだけサンタクロースの汚れた靴下をいれてしまったのでその箱を探さなければいけないというもの。どうやらその汚れた靴下は他のプレゼントと比べて重いらしく、ちゃんとしたプレゼントは全て同じ重さらしい。なので、天秤が下がれば汚れた靴下が入っている箱がわかるということだ。

ただし、1個ずつ比較していくと最大512回かかってしまいます。そこで、ある子どもの妖精が1024個を2つに分けて512個ずつを天秤にかけたらいいとのこと。そしたら、重いほうのグループに汚れた靴下が入ってると分かるため、さらにそれを2つに分けて、256個の2つのグループに、それを繰り返して、128→64→32→16→8→4→2→1というグループで比較していけば、10回の比較で終わるとのことだ。

でもこれ、比較回数だけを考えれば、2等分ではなく、3等分にすればもう少し少ない比較回数で見つけることができます。

つまり、1024個を3等分して、a.341個、b.341個、c.342個のグループに分ける。この時、数が同じ341個のグループのaとbを比較して、aが重ければaに、bが重ければbに、吊り合っていればcに汚い靴下があるということが分かりります。ここで、cにあると分かったとして、さらにそれを3等分してd.114個、e.114個、f.114個として先ほどと同じ要領でdとeを比較、dにあると分かったとして、g.38個、h.38個、i.38個に分け、gとhを比較してgにあると分かったとして、j.12個、k.13個、l.13個に分け、同じ個数のkとlを比較し、kにあると分かったとしてm.4個、n.4個、o.5個にわけmとnを比較、oにあると分かったとしてp.2個、q.2個、r.1個に分け、pとqを比較。pにあるとわかればその2つを比較して重いほうに汚い靴下が入っているということが分かる。

というわけで汚い靴下が入っていたグループは342→114→38→13→5→2→1と減っていくので、最大でも7回の比較回数ですむことが分かる。

ただ、これは飽くまで比較回数の話であって、3等分するという点は少し効率が悪いかもしれませんね。後、もしもう少し比較回数が少なくなるような方法があれば教えて下さい。

jQueryのstopメソッドについて調べてみた

[`evernote` not found]
[`livedoor` not found]
[`yahoo` not found]

jQueryでアニメーションを行う可能性のある要素にたいして、アニメーションしていない時のみアニメーションさせるという指定をしたいがために、『$ele.not(‘:animated’).animate()』なんてやり方をしていたのですが、どうにも動きがおかしく感じ、もう少し調べてみるとアニメーションを停止するstopというメソッドがあることを知りました(参考:.stop() | jQuery 1.9 日本語リファレンス | js STUDIO)。

ただ、指定の要素はコールバックを指定している要素だったこともあり、アニメーションをストップするだけでは駄目だったのですが、もう少し調べてみると、第二引数にtrueを指定することにより、アニメーションの最後まで移動してコールバックまで実行してくれるということが分かりました(参考:jQuery.stopのjumpToEnd引数が便利すぎてやばい(JavaScript Advent Calendar 2010 5日目) | tech.kayac.com – KAYAC engineers’ blog)。

じゃあ、第一引数は? というと、連続でアニメーションの指定をしている時、第一引数がfalseであれば、次のアニメーションを実行し、trueであれば次のアニメーションも実行しないという指定だそうです。

というわけで、分かりやすいようにテストページを作ってみました:jQueryのstopメソッドのテスト

JavaScriptの箇所のコードは下記のとおりです。

スタートボタンを押すと右側の赤い四角が右端までゆっくり移動し、右端までたどり着くと青色になって今度は逆に左端までゆっくり移動するようなアニメーションです。

スタートボタンを押すと、ストップボタンが出現します。そのストップボタンを押すと、stopメソッドを実行します。引数は囲いの上の見出しに書いてあります(clearQuereが第一引数で、jumpToEndが第二引数)。

試しにスタートボタンを押して赤い四角が右端にたどり着くまでにストップボタンを押してみてください。
上から1番目は途中でストップボタンを押すと、ストップボタンを押した位置から赤色のまま左端にゆっくり移動するようになります。
上から2番目は途中でストップボタンを押すと、瞬時に右端まで移動して青色になり、左端にゆっくり移動するようになります。
上から3番目は途中でストップボタンを押すと、そのストップボタンを押した時の位置で停止します。
上から4番目は途中でストップボタンを押すと、瞬時に右端まで移動して青色になり、その場所で停止します。

これはすごい便利ですね。

Altキーを押しながらテンキーを押してみよう

[`evernote` not found]
[`livedoor` not found]
[`yahoo` not found]

現場のプロが教えるWebデザイン&レイアウトの最新常識 知らないと困るWebデザインの新ルール3で知ったのですが、Altキーを押しながらテンキーを押すという文字入力方法があるようです。

例えば、Altキーを押しながらテンキーで145という順番に押してAltキーを離すと、『‘』(シングルクォート左)と入力できます。同じように、Altキーを押しながらテンキーで146という順番に押してAltキーを離すと、『’』(シングルクォート右)と入力できます。
参考:ALTキーとテンキーで文字入力をしよう | 気ままな宇宙人

上記の参考リンク先にも有りますが、変換対応シフトJISコード表を見るとどういう順番でテンキーを押した時にどういう文字を入力できるかが分かります。16進数表記で書かれてるので分かりにくいという方は、ブラウザのコンソールを開いて(F12キーを押してコンソールタブをクリック、もしくはCtrl+Shift+Jキーを押す)、下記コードを実行してみれください。

すると16進数で書かれていた箇所が10進数表記に変わり、下記のようになると思います。
シフトJISコード表
元々が16進数表記なので少しわかりづらいかもしれませんが、ある文字のセルの左端のセルの数値と上端のセルの数値を足した値をAltキーを押しながらテンキーで押すとその文字を入力することができます。
例えば、二重丸記号は33168+13=33181なので、試しにAltキーを押しながらテンキーの33181を押してAltキーを押すと、確かに『◎』と入力されました。

こんな入力方法、今後滅多にやらないとは思いますが、今までWindowsパソコンを十数年使ってきて初めてしったので、思わずブログに書きました。

なお、なぜWebデザイン&レイアウトの本にこんなテクニックが書いてあったかというと、欧文サイトを作る時の記号の使い方について書かれてあったためです。

文中の引用符に使うダブルクォーテーションやシングルクォーテーションはShift+2キーの『”』やShit+7キーの『’』で囲むのではなく、『“”』や『‘’』で囲みましょうとのことです。『”Hello”』や『’Hello’』ではなく、『“Hello”』や『‘Hello’』と書きましょうと。なお、『“』(ダブルクォーテーション左)はAltキーを押しながら147、『”』(ダブルクォーテーション右)はAltキーを押しながら148、『‘』(シングルクォーテーション左)はAltキーを押しながら145、『’』(シングルクォーテーション右)はAltキーを押しながら146です。

後、『I’m a student.』ではなく、『I’m a student.』と書いたほうがいいとのこと。欧文サイトを作る時はこういうところも気にしたほうがいいのかもしれませんね。うちの会社で運用しているWebサービスも英語版がありますが、全くもって守れてません。

ファイルサーバーの大事なファイルを消してしまった時のために使っておきたいフリーソフト

[`evernote` not found]
[`livedoor` not found]
[`yahoo` not found]

今回のエントリーは半分、自分の失敗談です。

うちの会社では、とある会員制サイトを運営しているのですが、そのサイトのファイルは自社のファイルサーバーに入っており、開発者のPCからはネットワークドライブとしてアクセスし、ファイルを更新するようになっています。サイトは本番環境の他にテスト環境として一般に後悔していないサイトも用意しており、まずはテスト用のファイルを変更してから本番用のほうにアップするという流れをとっています。なお、テスト環境のファイルは本番環境と同じサーバーに入っており、ディレクトリが違っているだけです。

そうして、11月13日木曜日の夜、営業から依頼を受けて更新を頼まれていることもあり、まずはテスト環境のほうを変更することにした。ただし、少し問題があり、数カ月前にテスト版のほうで更新したものの、今回の更新ではまだ更新してはいけない箇所があった。そのため、その更新してはいけないファイルのみを本番環境からテスト環境のほうにもってくることにした。そしてあろうことかそのファイルを本番環境からテスト環境にもってくるのに、ドラッグアンドドロップでもってきてしまいました。普段、ファイルサーバーからローカル環境にファイルをコピーするのにドラッグアンドドロップでもってくるようにしているので思わずそうしてしまいました。そうして、テスト環境が本番環境のファイルでもちゃんと動いていることを確認し、一旦そのファイルは削除して、もともとテスト環境で使っていたファイルに戻しました。

結果、どうなったか。本番環境からテスト環境に持ってきたファイルを消してしまい、さらにそのファイルはほぼ全てのページに共通のヘッダー部分についての記述について書いてあるファイルだったため、見れない状態となっていました。いつまでか。11月14日金曜日の12時までです。お客さんの電話で見れないことが発覚しました。

幸い自分のローカルPCにバックアップをとっていたのですぐに復旧することができ、被害もたいしたことなかったものの、1日ずれていれば大変なことになっていました。実は、このサイトは木曜日によく使われるサイトなのです。なので、木曜日にサイトが止まってしまうとかなり大変なことになり、被害も莫大です。さらにいうと、木曜日は自分は昼からの出勤だったため(ただし夜遅くまで働くことになる。だから、夜に作業していた)、復旧に時間がかかった可能性もあります(バックアップはあると思いますし、そんなことはないと信じたいのですが、そうやって注意されました)。よくよく考えたら、木曜日以外でも月曜日から水曜日はよく使われるので、ある意味で金曜日にトラブルが発生したのはラッキーでした(あくまで、他の曜日だった場合と比較しての話。トラブル自体はもちろんかなりアンラッキーです)。

正直、今考えただけでゾッとします。自分の性格なら、また似たような過ちを犯してしまうんじゃないかと不安です。

そこで、今回は今後もこんなことが起こらないよう、再発防止のために自分が使っている(もしくは、使い始めた)フリーソフトを紹介します。何をやっているかを簡単に説明すると、バックアップとフォルダ監視です。

バックアップ

まずは何よりもバックアップです。今回もバックアップをとっていたからすぐに復旧することができました。特に自分がオススメしたいのがBunBackup。このソフトを使えば全てのファイルではなく、更新があったファイルのみのバックアップをとることできます。さらに、特にすばらしいと思う機能が、世代管理機能があるということ。なんと、変更があったファイルについては、変更前のファイルを指定のフォルダフォーマットのフォルダに入れて保存されます。

ただし、初期状態では世代管理機能が設定できないようになっています。世代管理を有効にするには、ツールバーの[設定]から[機能表示設定]を選択し、開いた『機能表示設定』というダイアログの『世代管理』のチェックボックスをつけなければいけません。
bunbackup1
その後、バックアップフォルダの設定にて世代管理を有効にする必要があります。

ここで例えば、”C:\test”以下のフォルダを”D:\backup\test”に世代管理機能を有効にしてバックアップを行う例を説明します。

例えば、下記のように”C:\test”に”test.txt”というファイルがあるとします。
bunbackup2

続いて、このフォルダをBunBackupでバックアップするように設定するようにします。まず、BunBackupの画面内のツールバーの+ボタンか、適当な場所で右クリックしてでてきたメニューから『追加』を選びます。
bunbackup3

そうして表示された『バックアップ設定』というダイアログの『タイトル』に適当な名前、『バックアップ元フォルダ』にバックアップ元のパス(今回の場合は”C:\test”)、『バックアップ先フォルダ』にバックアップ先のパス(今回の場合は”D:\backup\test”)を入力して、『OK』ボタンではなく、『詳細』ボタンを押します。ここで『OK』ボタンを押してしまった場合は、BunBackupの画面のリストに先ほど入力した内容が追加されるので、その箇所を右クリックしてメニューから『変更』を選び、でてきた『バックアップ設定』ダイアログの『詳細』ボタンを押します。
バックアップ設定
OKボタンを押してしまった場合

すると、『バックアップ詳細設定』というダイアログが開くので、そこの『世代管理』タブを選択します。なお、この最初に表示される『バックアップ方法』の画面でサブフォルダもバックアップするか、更新があったファイルとはどういうファイルなのかを指定できます。後、自分は使ってませんが、更新対象ファイルや除外ファイルもここで設定できます(参考:バックアップ容量を少なくする)。
バックアップ詳細設定

世代管理設定の画面から『世代管理する』のチェックボックスにチェックをつけます。こうすることで、世代管理ができるようになります。必要であれば、フォルダフォーマットを変更しておきましょう。初期値では、『’世代’ yyyy-mm-dd』となっていると思いますが、今回は『’世代’ yyyy-mm-dd-hh-nn-ss』としておきます。
世代管理設定

では、バックアップを実行します。リストから先ほど登録したバックアップタイトルを選択して、右から二番目のボタンを押すか、F11キーを押します(右から4番目の『バックアップ開始』ボタンを押すと、登録しているすべてのバックアップが実行されます)。
bunbackup8

すると、バックアップ結果が表示され、”D:\backup\test”のフォルダにtest.txtがバックアップされました。
bunbackup9

続いて、test.txtを適当に編集して更新します。
bunbackup10

そうしてもう一度BunBackupにてバックアップボタンを押すと、”D:\backup\test”のフォルダに新しく『世代』とついたフォルダが追加され、test.txtは新しいファイルに更新されました。
bunbackup11

中を見てみると、更新前(最初にバックアップを取った時)のtest.txtと『BunBackup世代管理フォルダ』というログファイルが入っているのが分かります。無事、世代管理できたようです。
bunbackup12

さて、ここまで読んで、「何でバックアップを前から取っていたのに、バックアップ環境ではなく本番環境からファイルを持ってくるという危険な行為をしたんだ?」と疑問に思う人もいると思います。まさにそのとおりで、今後はそうしようと考えています。いや本当、なんでバックアップ環境からもってこなかったのかと・・・。あたしって、ほんとバカ(冗談を言っている場合ではありません)。

フォルダ監視

さて、バックアップをとっていたとしても、今回の自分の例のように、変更したことに気づかなければ意味がありません。そこで、今回導入したのがフォルダ監視ソフトです。
ネットワーク監視 フリーソフト [フォルダ監視]

上記のソフトでは最大255か所まで監視フォルダ(とそのサブフォルダ)を監視対象として登録することができ、登録したフォルダ以下のファイルにて、追加・変更・削除があった場合に通知する機能があります。これで、本番環境のフォルダを登録しておけば、間違えてファイルを消してしまっても通知してくれるのですぐに気づくことができ、今回のように次の日の昼まで気づかないという事態になりません。

ここで、先ほども利用した”C:\test”を登録した例を説明します。まず、上記ソフトを開くと左下に『追加』ボタンがあるのでそれをクリックします。
folders1

そうして開いたダイアログにて監視したいフォルダを選択し、『OK』ボタンを押します。もしくは、先ほどの画面で『直接入力して追加』ボタンを押して開いたダイアログのテキストボックスにファイルパスを記入してもOKです。
folders2

そうすると設定画面のリストに指定したフォルダが追加されるので、右上の監視する間隔を設定し、サブフォルダも監視したい場合はそこにチェックし、『監視開始』ボタンをクリックします。
folders3

では、試しに”C:\test”内に”hoge”というフォルダを作成し、そこにtest.txtを移動します(ファイルをドラッグしてたら間違えて下位フォルダのうえで離してマウスを離してしまったという設定)。
folders4
folders6

しばらくすると、フォルダ監視ソフトが下記のような通知をだしてきます。この通知を見ると、監視対象のフォルダからtest.txtがなくなり、その下のhogeフォルダにtest.txtが追加されているということが分かります。
folders5
こんな感じで、本番環境のフォルダを監視フォルダに設定することにしました。

本当ならチームでGitなどのソースコード管理ツールを使って徹底しておくのがいいんでしょうけどね。上司もソースコード管理ツールの重要性は分かっているようなのですが、なかなか利用にまでは至っていません。

でも本当、なんでこんな失敗をやってしまったのかと反省してもしきれません。こういう時は自分以上にひどい失敗した人の話を聞いて、「自分はまだマシだった」と安心したいものです(下衆の考えです)。
というわけで、今度、神戸ITフェスティバルにて、ファーストサーバ株式会社のデータ消失事故について話すようなので聴きに行こうと思います。
「データ消失事故を振り返って~あの時、社内で何が起こっていたか~」村竹 昌人(ファーストサーバ株式会社) | 講演・セミナー | 神戸ITフェスティバル2014
どういう再発防止策を行っているかとか参考になるかもしれませんしね。多分、下記連載と似たような話だとは思うのですが、実際に話を聴いたらまた違うと思うので(記事に書いてないことも話すかもしれませんしね。最後の質問タイムなどで)。
ASCII.jp:データ消失事故から2年!ファーストサーバ、再生への第一歩