未払金の結末

ソフトウェア開発委託基本契約書の不備により、未払い200万円の被害を受ける – Moonmile Solutions Blog
未払金の続きは内容証明で – Moonmile Solutions Blog

の続きです。

結論から言うと、未払い金250万円を全額返金…というか、即金で支払って貰いました。

先日の内容証明で、分割案がされていたので突っぱねました。これを突っぱねると、先方の会社が倒産するリスクがあるので、未払金が回収できなくなる恐れがあるのですが「200万円程度の金額で、倒産するぐらいであれば、分割にしても支払が滞る可能性が高い」と踏んだのと、「先方の会社が1億円以上の借金を抱えているので、メインバンクとしては、倒産させない方法を取り、200万程度の少額?であれば追加融資せざるを得ないだろう」という私の判断です。まあ、運が良かった(いやいや、未払いが発生する時点で運が悪い)のかもしれないし、なんらかの偶然的な要素があったのかもしれないのですが、ひとまず戦術的には勝利に至った、というところですね。戦略的には、今後の防御策を練ることができた、というのもありますが。弁護士費用分ぐらいの痛手と、去年からの未払いの痛みと、この件について押してしまった本プロジェクトの後始末(なので8月いっぱいが忙しい)に追われるという点で、やっぱり未払いのような経験はしたくないものです。

image

先の分割案から一変して、一括支払いの案が来ました。想像するに、メインバンクの借入が通ったと思われます(まあ、別途、個人的な借金かもしれませんが。あるいは、他の取引会社を未払いにするとか)。合計が150万円なのは、その前に100万円を支払って貰っているからです。

ちなみに駆け引き的な意味で、こちらとしては年末までの分割ならばOK、との回答を用意していました。が、それはこの時点で先方に伝えていません。情報を与える必要はないですからね。月20万円という支払にしたときに、支払能力があるかどうか?(個人としての支払能力を超える金額なので)というのが分岐点です。普通の会社ならば、借入をするハズ。

で、実際に来たのは一括支払案なので「支払う意思あり」と考えられ、これはこれでOKなのですが、もうひと押ししておきます。過怠約款(かたいやっかん)のところですね。過怠約款 とは – コトバンク を見ると「旧民法用語」ということで、単純にいえば遅延したときの賠償金の話です。今回の未払いの件は、そもそもがこの「過怠約款」のところが緩い(損害賠償の条件を請負金額とする、遅延金が書いてないなど)のが問題なので、ここを本来の契約のスタイルに戻します。和解案として遅延損害金が10%ということになっていますが、そもそもが貸し付ける金額ではないので、一般的な貸付の利率 18% にすることと、遅延したときの損害賠償の金額(今回は、「契約金額の半額」ということにしました)を明記します。

このあたり、当方の弁護士とも相談しました。「法的に正しいものになるかわからない」のではありますが、私としては後に契約書を作るときの前例として欲しかったので、和解案を修正して貰うように頼みました。

image

そんな訳で、上記のような合意書に変更して、振込みが完了しています。実際には弁護士の口座に一度振り込んで貰って、弁護士費用を差し引いたうえで、私の口座に振り込みなおして貰うという手順です。これは、私のほうでいちいち口座を確認しないといけないのは面倒/煩雑だからです。期日に支払ったかどうかのチェックは弁護士から直接できたほうがいいですからね。

そんな訳で、決着がついたので、次に感想戦をやります。私の今後のためと記録を残しておくという意味で。

カテゴリー: 仕事 | 未払金の結末 はコメントを受け付けていません

Surface RTでモバイルLinux環境を作る

モバイル環境を作るならば、ノートPCにLinuxを入れればいいじゃん(あるいは、Windows の VMWare 上に Linux を入れればOK)、ってことなのですが、

から、ふと思ったネタ企画です。うまく動けば、9月の.NETラボ勉強会のLTで話しましょう。手元にある、Surface RT と Raspberry PI というミニミニ linux を使います。Raspberry pi 自体は、Raspbarry PI が届いたよ – Moonmile Solutions Blog なところで買った「船便版」の初期購入品です。最近、日経Linuxあたり?で特集になったらしく、いくつかの解説本も出ています。今では、日本でも買いやすくなったので、お試し(3,000円ぐらい)としては面白いおもちゃです。

で、結論から言えば、こんな感じで、自給自足型のモバイル環境が作れました。

  • Raspberry PI に xrdp を入れて、リモートデスクトップ環境を作る。
  • Raspberry PI に USB 型の無線LANを差し込み、設定する。
  • Surface RT から Rassberry PI にリモートデスクトップする
  • Raspberry PI は、Surface RT の USB から給電する

ってことで「無線LANの環境があれば」、モバイル環境が構築できます。本当にモバイルにするには、Pockert WiFi などのルーター機能が必要になるのです(実際、これを使うし)、完全な独立型とは言えませんが、まあ、いいでしょう。それなりに持ち運びができるし。

■Raspberry PI の OS を最新にする

いろいろやって、結果的に OS を最新にしました。Raspberry Pi でOSのインストールと初期設定を行う | よもやま雑記帳

初期の Raspberry PI を買った時の Linux は、デスクトップの操作とが違うし、手元の無線LAN(GW-USMicroNのモジュールが動かなかったり)して、かなりはまりました。OS 自体は、Downloads | Raspberry Pi にある Raspbian “wheezy” を使っています。zip を解凍して、2GB 以上ある SD カードに焼き付けます。適当な SD micro に焼いてカードを差し込めば OK です。

私の環境では、先のURLにある DD for Windows がうまく動かかなかった(書き込み先のドライブが選択できない状態)ので、Win32 Disk Imager | Free Development software downloads at SourceForge.net を使いました。

■Raspberry PI 側の設定

Windows からの接続は、リモートデスクトップ xrdp をインストールします。VNC でもいいのですが Surface RT には VNC クライアントをインストールできないので、リモートデスクトップを使います。Raspberry Piで遊ぼう [No.26:リモートデスクトップ接続をやってみよう]:アシマネのIT奮闘日記:So-netブログ を参考にすると、あっという間に「リモートデスクトップ」を使って接続がでるようになります。最初は、有線LANで試してみてください。無線LAN だと、以下に記しますが結構不安定なので。

USB 型の無線 LAN はできるだけ新しいもののほうがよさそうです。手元にあった昔の PLANEX GW-USMicroN を使ったのですが、結構手間がかかりました。更に 802.11n でつながるはずなのですが、なぜか 802.11g のほうしか認識できません。無線ルーターのほうがおかしいのかもしれないのですが…こっちは、Surface RT とか他のノートPCも繋がっているので。まあ、当時は Draft の規格だったから仕方がないのです。

RaspberryPiでコンパイルとかせずにWifiドングルを使う(US-GWMicroNとか、ralinkの) – midohajiフォト
RaspberryPi奮闘列伝:無線LANアダプタ

あたりを参考にして、rt2800usb のモジュールを手作業で入れていきます。バッファローあたりの無線LANを使うとすんなりと入るらしいので、それを使った方がよいでしょう。どっちにせよ、他の方が「実績」をアップしているので、それを参考にしたほうが早いです。

■Surface RT 側の設定

ストアアプリのリモートデスクトップアプリをインストールします。Windows ストア の Windows 用 リモート デスクトップ アプリ からインストールします。手元の Surface RT は、Windows 8 なのですが、多分 8.1 preview でも使えます。raspberry pi の IP を DHCP にしてしまうと、IP が変わってややこしいので、固定IPがお勧めなのですが、設定がややこしいので現状 DHCP を使っています。個人で遊ぶ分には、大抵は同じ IP に振られるので、それはそれで良いかなと。ただし、raspberry pi にLAN接続しないと(有線、無線を問わず)IPが分からないとジレンマに陥るので、運用的には固定IPが望ましいですね。基本、ディスプレイとキーボードが使わない体制にしたいものですから。

■動いたか?

ええと、動いたかどうかというと、冒頭の写真のように無事に動きました。Surface RT から無線LANを通じてリモートデスクトップ接続ができます。が、運用上、いくつか問題があってですね…というか、致命的な問題があります(苦笑)。

  • Raspberry PI 側で、ソフトウェアキーボードが出せないので、キーが打てない。
    → 何かインストールすればいいんでしょうが、現状、キーが打てません。
  • 無線LANだと帯域が足りないらしく、まともに画面が動きません。
    → かろうじて、ダブルクリックができるぐらいです。
  • USB給電の電圧か電流が落ちると、Raspberry PI のLANがつながらなくなる。
    → なので、一切接続ができなくなります。

この給電の電圧には悩まされました。普通に使っていると、いきなりリモートデスクトップやtera term(これはデスクトップPCから接続)が、切断されます。デスクトップ PC につながっている、ハブ USB につないでも、Raspberry PI は普通に動くので大丈夫かと思っていたのですが、無線LAN は電圧の変化に敏感らしく早めに落ちてしまうようです。これが Linux の仕様なのか、Raspberry PI の制限なのかは分かりません。ためしに、AC電源から直接USB経由で給電をしてやると、無線LANは切れませんでした。最初、ドライバーが壊れたのか?SDカードが壊れたのか?と、再度 OS のインストールからやり直して、2時間ほどつぶしてしまったのですが、どうもUSB給電の電圧っぽいです。

なので、Surface RT のバッテリーが少ない状態になると、この現象に陥ってしまいかなと。Surface RTに電源をつなぎながら使うと「モバイル」とは言えないし、うーむ、ここは悩みどころですね。まあ、PLANEX の古い製品を使っているので最近のだともう少し必要な消費電力は低いかもしれません。

ソフトウェアキーボードの件は、どうしようかな、と悩み中です。リモートデスクトップの帯域と合わせて、ちょっと思案中。

カテゴリー: windows 8 | Surface RTでモバイルLinux環境を作る はコメントを受け付けていません

7/27(土)に.NETラボ勉強会で発表します

荒削りなところもありますが、「バウハウスとフラットデザイン」というタイトルで、.NETラボ勉強会で発表します。Windows 8 はモダンデザインになって、8.1 も同じ、さらに iOS 7 がフラットデザインで、さまざまな WEB サイトがフラットデザインになってしまう中で、どのように「フラットデザイン」を捉えるか?って話ですね。

 

最初は、Microsoft のおひざ元で dis ろうか、という主旨だったのですが(苦笑)、意外とまともなプレゼンになる予定です。場所とか時間とかは、.NETラボ 勉強会 2013年07月 : .NET Lab を参照してください。

カテゴリー: 勉強会 | 7/27(土)に.NETラボ勉強会で発表します はコメントを受け付けていません

未払金の続きは内容証明で

ソフトウェア開発委託基本契約書の不備により、未払い200万円の被害を受ける – Moonmile Solutions Blog の続きです。

弁護士を通じて内容証明を送る、という段階になっています。3週間前に100万円を持ってきましたが半分に足りません(実は全体で250万円なのですよ)。ゼロよりはマシなのですが、それはマシなだけで、半分にも足りません。なので、残金150万円を請求します。

image

という回答が来ていますが、

  • 支払の遅延自体は、先方の一方的な都合であること(貸付にする意思はない)
  • 商習慣の遅延損害金6%では金利として低すぎ、実際の損害に全然足りないこと

を理由に突っぱねます。さて、どうなることやら。

カテゴリー: 仕事 | 未払金の続きは内容証明で はコメントを受け付けていません

小学三年生の夏休みの宿題を10日間で終わらせる計画

「夏休み 宿題」あたりで、小学1年生でもわかる7月中に夏休みの宿題を終わらせる方法 – Moonmile Solutions Blog にたどり着く方が多いみたいなので、今年の夏休みの計画編を書いておきます。

image

娘も小学三年生になったので、宿題も多くなっています。うちは共働きなので夏休みも学童に行くことになるのですが、せっかくの「夏休み」なのだから、他の子の夏休みと同じように勉強時間と遊びの時間を分けておきたい、と思ったのが目的です。まあ、プロジェクト管理(プロダクト管理じゃないよ)の基本でもありますが。

例によって、東京の小学校では夏休みが8月末ではありません。日数にして約30日、土日を除くと約20日になるので、丁度、会社務めの8時間×20日間=160時間勤務と同じになります。ええ、基本は「160時間勤務」ですからねッ!!!

■計画を立てる

さて、今回の夏休みの宿題は主に4種類あります。

  • 漢字スキル/ドリル を16ページ(160熟語)
  • 計算ドリルを40ページ(問題写し、答え合わせ込み)
  • 夏休みの生活表で、一言日記
  • 1行の読書感想を5冊以上

他に自由研究、自主課題の漢字200文字があるわけですが、最初はこの4つに焦点を絞ります。「全体のボリュームを把握する」のが大切です。

ざっと手順を書き下すと、

  1. 全体のボリュームを把握する。
  2. 幾日で夏休みの宿題を終えるのか決める。
  3. 全体のボリュームを、日数で単純に割る。
  4. 1日の宿題の量が、妥当かどうかを検討する。
  5. 難しい場合は、作業日数を増やす。

この手順は、子供単独では無理なので親が手伝います。特に「全体のボリュームを把握する」、「幾日で終えたいか決める」、「1日の宿題の量が可能かどうかを検討する」は、重要です。今回は、夏休みを有意義に過ごしたい(他の日は遊びに行くという意味で)ということで、10日間で終わらせる目標を立てました。これを20日間にしてもよいし、土日なしの30日間に分割しても構いません。要は、「夏休みの宿題を終える」という目標が達成できればよいのです。

この10日間の目標を達成するためには、次の日程が決まります。

  • 漢字スキルを1日16行(16熟語)やる
  • 計算ドリルを1日4ページやる
  • 一言日記は、土曜日にまとめてやる(まとめてもOK)
  • 読書感想文は、先に本を読んでから後で書く

ということにしました。

これを学童に行っている午前中にやります。時々、サマースクール(補修)やプールがあるので、前後することはあるのですが、1日のうちに済ませます。日中にできなかった場合は、家に帰ったときに残りをやります。

■実施する

実践のほうは、小学1年生でもわかる7月中に夏休みの宿題を終わらせる方法 – Moonmile Solutions Blog にもあるのですが、

  • 最低限のノルマを守る(この場合は、漢字スキル16熟語、計算ドリル4ページ)
  • ノルマを超えて、先に進めるのは構わない。ただし、先に進めた分は、次の日のノルマに入れない。

という作業の仕方を守ります。CCPM の基本で「先に進めることによる、作業量の前倒しを許容する」ことになります。そうしないと、実際、(やむなく)ノルマがこなせなかったときの作業量減のところがリカバリーできませんからね。

今回は、作業の10日間を夏休みの最初にとりましたが、夏休みの最後の10日間でも構いません。当然、夏休みの宿題が終わらないリスクは高まりますが、先のような計画をきっちりと立てておくと、日のノルマが明確になるのと、ノルマの前倒しが可能になるので、さほど後ろにずれなくなります。子供によって(≒プロジェクトメンバーによって)遅れる実績がある場合には、適当なバッファ(土日とか、親が介入するとか)を取っておけばよいでしょう。

■漢字200字はどうするのか?

ってなわけで、漢字スキルと計算ドリルの量が多そうなので、漢字200字は保留です。前半の10日間で学校の夏休みの宿題が終われば、漢字200字の先取りをやってみましょう。

カテゴリー: プロジェクト管理, 雑談 | 小学三年生の夏休みの宿題を10日間で終わらせる計画 はコメントを受け付けていません

[WinRT] 独自プロトコルを使ってストアアプリ間で通信する

ってことで、ストアアプリ間で通信を行います。共有コントラクトを使うと相手先を選択しないといけないし、デスクトップアプリ経由(WCFサーバー経由)だとアプリのインストールが必要だし、というわけで、ひとまず、手軽なアプリ間通信は「プロトコル」を使えます。まあ、ワンクッションだけなんですけどね。双方向にプロトコルを設定しておけば、それなりに通信はできるかと。

■送信先のアプリ

ターゲットアプリでは、App.xaml.cs でプロトコルを受けます。OnActivated をオーバーライドして、種別がプロトコル ActivationKind.Protocol の時に処理をするという感じです。
ここでは、画面に表示させるために new Frame をしていますが、アプリ内部で処理する場合は、クラス変数にするのがよいかと。

protected override void OnActivated(IActivatedEventArgs args)
{
    if (args.Kind == ActivationKind.Protocol)
    {
        var ar = args as ProtocolActivatedEventArgs;
        var rootFrame = new Frame();
        rootFrame.Navigate(typeof(BasicPage));
        Window.Current.Content = rootFrame;
        BasicPage p = rootFrame.Content as BasicPage;
        p.UpdateMsg(ar.Uri);
    }
    Window.Current.Activate();
}

プロトコル自体は、マニフェストで設定します。

■送信元のアプリ

private void Button_Click(object sender, RoutedEventArgs e)
{
    string text = this.text1.Text;
    var ret = Windows.System.Launcher.LaunchUriAsync(new Uri(
        "mm-message://" + text));
}

独自に作った「mm-message://」プロトコルを使って、LaunchUriAsync メソッドで呼び出します。ここではテキストしか送っていませんが、ファイル名を送って受信側で処理すれば、ファイルや画像などを送ることも可能です。ファイルに関しては、マイドキュメントを使うとかマイピクチャを使うとかがあるので、まあ、ちょっと細工が必要ですが。

■試してみる

プロトコルなのでURLエンコードをしないと駄目なんですが、通常のアルファベットならばそのまま送ることもできます。

サンプルはこちら
http://sdrv.ms/15cIv1G

カテゴリー: C#, WinRT | [WinRT] 独自プロトコルを使ってストアアプリ間で通信する はコメントを受け付けていません

小学三年生の漢字を夏休み中に一気に覚える

小3の娘のために、三年生で習う漢字(200字)のための熟語一覧を作りました。これをひと夏で覚えてしまいます。つまりは、2,3学期の先取りですね。

■三年生で習う漢字

小学三年生で習う漢字一覧 を参考にして、ひとつずつ熟語に直します。

悪 安 暗 医 委 意 育 員 院 飲
運 泳 駅 央 横 屋 温 化 荷 開
界 階 寒 感 漢 館 岸 起 期 客
究 急 級 宮 球 去 橋 業 曲 局
銀 区 苦 具 君 係 軽 血 決 研
県 庫 湖 向 幸 港 号 根 祭 皿
仕 死 使 始 指 歯 詩 次 事 持
式 実 写 者 主 守 取 酒 受 州
拾 終 習 集 住 重 宿 所 暑 助
昭 消 商 章 勝 乗 植 申 身 神
真 深 進 世 整 昔 全 相 送 想
息 速 族 他 打 対 待 代 第 題
炭 短 談 着 注 柱 丁 帳 調 追
定 庭 笛 鉄 転 都 度 投 豆 島
湯 登 等 動 童 農 波 配 倍 箱
畑 発 反 坂 板 皮 悲 美 鼻 筆
氷 表 秒 病 品 負 部 服 福 物
平 返 勉 放 味 命 面 問 役 薬
由 油 有 遊 予 羊 洋 葉 陽 様
落 流 旅 両 緑 礼 列 練 路 和

熟語は、三年生までに習う漢字(1,2年生も含む)かつ、三年生でわかる単語にしてます。ただし、意図的に、物理や数学、文学で使う用語を混ぜています。漫画とか本とか出てきそうな単語を入れておくとベターですね。いくつか重複がありますが「漢字を覚える」ことが目的なので(熟語は二の次)これはこれで良しとします。

以下、200熟語あります。

  • 悪者 わるもの
  • 安全 あんぜん
  • 明暗 めいあん
  • 医学 いがく
  • 委員 いいん
  • 意見 いけん
  • 体育 たいいく
  • 全員 ぜんいん
  • 学院 がくいん
  • 飲食 いんしょく
  • 運命 うんめい
  • 水泳 すいえい
  • 駅員 えきいん
  • 中央 ちゅうおう
  • 横道 よこみち
  • 屋内 おくない
  • 温度 おんど
  • 化物 ばけもの
  • 荷物 にもつ
  • 開店 かいてん
  • 世界 せかい
  • 一階 いっかい
  • 寒波 かんぱ
  • 感心 かんしん
  • 漢字 かんじ
  • 本館 ほんかん
  • 海岸 かいがん
  • 発起 ほっき
  • 期日 きじつ
  • 主客 しゅきゃく
  • 研究 けんきゅう
  • 急行 きゅうこう
  • 一級 いっきゅう
  • 宮古 みやこ
  • 野球 やきゅう
  • 去来 きょらい
  • 橋本 はしもと
  • 学業 がくぎょう
  • 楽曲 がっきょく
  • 局面 きょくめん
  • 金銀 きんぎん
  • 北区 きたく
  • 苦楽 くらく
  • 道具 どうぐ
  • 主君 しゅくん
  • 係数 けいすう
  • 軽石 かるいし
  • 心血 しんけつ
  • 決心 けっしん
  • 研究 けんきゅう
  • 県道 けんどう
  • 車庫 しゃこ
  • 湖面 こめん
  • 一向 いっこう
  • 幸運 こううん
  • 南港 なんこう
  • 号令 ごうれい
  • 根本 こんぽん
  • 祭事 さいじ
  • 一皿 ひとさら
  • 仕事 しごと
  • 生死 せいし
  • 使用 しよう
  • 開始 かいし
  • 親指 おやゆび
  • 虫歯 むしば
  • 詩歌 しいか
  • 次手 じて
  • 仕事 しごと
  • 持手 もちて
  • 式場 しきじょう
  • 実用 じつよう
  • 写真 しゃしん
  • 三者 さんしゃ
  • 主人 しゅじん
  • 子守 こもり
  • 取手 とって
  • 酒母 しゅぼ
  • 待受 まちうけ
  • 九州 きゅうしゅう
  • 拾円 じゅうえん
  • 終始 しゅうし
  • 習字 しゅうじ
  • 集会 しゅうかい
  • 住家 じゅうか
  • 軽重 けいじゅう
  • 宿屋 やどや
  • 場所 ばしょ
  • 寒暑 かんしょ
  • 助言 じょげん
  • 昭和 しょうわ
  • 消化 しょうか
  • 商業 しょうぎょう
  • 一章 いっしょう
  • 勝負 しょうぶ
  • 乗客 じょうきゃく
  • 植木 うえき
  • 上申 じょうしん
  • 全身 ぜんしん
  • 多神 たしん
  • 写真 しゃしん
  • 深海 しんかい
  • 進行 しんこう
  • 世界 せかい
  • 整理 せいり
  • 今昔 こんじゃく
  • 全体 ぜんたい
  • 相手 あいて
  • 送風 そうふう
  • 感想 かんそう
  • 休息 きゅうそく
  • 速度 そくど
  • 族長 ぞくちょう
  • 他人 たにん
  • 打者 だしゃ
  • 対話 たいわ
  • 待受 まちうけ
  • 代理 だいり
  • 第一 だいいち
  • 題名 だいめい
  • 炭火 すみび
  • 長短 ちょうたん
  • 相談 そうだん
  • 着物 きもの
  • 注意 ちゅうい
  • 人柱 ひとばしら
  • 丁度 ちょうど
  • 投手 とうしゅ
  • 豆本 まめほん
  • 島国 しまぐに
  • 湯船 ゆぶね
  • 登山 とざん
  • 平等 びょうどう
  • 自動 じどう
  • 童子 どうじ
  • 農業 のうぎょう
  • 波面 はめん
  • 配車 はいしゃ
  • 二倍 にばい
  • 帳面 ちょうめん
  • 調子 ちょうし
  • 追放 ついほう
  • 定食 ていしょく
  • 庭球 ていきゅう
  • 口笛 くちぶえ
  • 鉄火 てっか
  • 回転 かいてん
  • 首都 しゅと
  • 温度 おんど
  • 箱庭 はこにわ
  • 田畑 たはた
  • 発進 はっしん
  • 反動 はんどう
  • 坂道 さかみち
  • 板場 いたば
  • 一皮 ひとかわ
  • 悲話 ひわ
  • 美人 びじん
  • 目鼻 めはな
  • 筆箱 ふでばこ
  • 流氷 りゅうひょう
  • 表面 ひょうめん
  • 分秒 ふんびょう
  • 病気 びょうき
  • 品物 しなもの
  • 勝負 しょうぶ
  • 部分 ぶぶん
  • 一服 いっぷく
  • 幸福 こうふく
  • 動物 どうぶつ
  • 平面 へいめん
  • 返事 へんじ
  • 勉強 べんきょう
  • 開放 かいほう
  • 味見 あじみ
  • 命運 めいうん
  • 表面 ひょうめん
  • 問題 もんだい
  • 役目 やくめ
  • 投薬 とうやく
  • 理由 りゆう
  • 重油 じゅうゆ
  • 有言 ゆうげん
  • 遊具 ゆうぐ
  • 予定 よてい
  • 子羊 こひつじ
  • 洋上 ようじょう
  • 一葉 いちよう
  • 太陽 たいよう
  • 様子 ようす
  • 落葉 おちば
  • 流氷 りゅうひょう
  • 旅行 りょこう
  • 両手 りょうて
  • 青緑 あおみどり
  • 朝礼 ちょうれい
  • 前列 ぜんれつ
  • 練習 れんしゅう
  • 線路 せんろ
  • 平和 へいわ

ここまで、作って気づいたのですが、三年生で習う漢字は、そのときに習う漢字と組み合わせて熟語になるものが多いです。このあたり、漢字を習う順番がうまく構成されているな、と改めて感心しています。この順序って、いつごろ決まったんですかね?先人の知恵は受け継がないと。

漢字なんて、その時に読む本や漫画、テレビに組み合わせたほうが覚えやすいし忘れません。たとえば、「ちょうだのれつ」の「れつ」を書くときに、「前列」の「列」とピンポイントで覚えるわけです。あとは本を読んで熟語を頼りに少しずつ広げていけばOKです。

カテゴリー: 雑談 | 小学三年生の漢字を夏休み中に一気に覚える はコメントを受け付けていません

Windows 8 Media Center Pack を2台目に入れるときの注意点

うちには、業務上(自営上)Windows PC がたくさんあって、あれこれとライセンス認証でややこしいことになっています。「ライセンス上」ややこしいことをしているのではなくて、まあ、MSDNの開発ライセンスと、購入したライセンスを組み合わせながら、Windows 7 Home, Windows 7 Pro, Windows 8, Windows 8 Pro を使い分けているわけですね。ライセンスがダブらないように。

で、結論から言うと、Windows 8 のライセンスは、基本 PC 1台につき1つ Windows をライセンス認証できない理由 – Microsoft Windows ヘルプ となっているので、Windows 8 Media Center Pack も PC1台につき1つ購入しないとダメ、ってことです。ちなみに Windows 8 Media Center Pack ってのは、Winodws 7 Pro にはふつうについていた、DVD やテレビを表示するアプリのことです。どうして、これが Windows 8 Pro から外れてしまったのかわからないのですが、Microsoft のサイトから 800 円で購入しないといけません。中身は Winodws 7 の頃と同じものなので、Winodws 8 についてくる「ビデオ」アプリで十分ならば(これは DVD を再生できません)、購入する必要はないのですが…、まあ、なんかダウングレードって感じがしています。まあ、800円ならばいいですけどね、ってことで、2台のPCならば、2つ購入します。

■再現手順

再現手順…というか、どうやってトラブルが発生したのか?ってところです。

  1. Windows 7 Pro で動作している PC-A がある。
  2. Windows 8 Pro にアップデートする。
  3. このとき、既存の Windows 8 Pro の PC-B の「ライセンスキー」を入れてしまった模様。
  4. PC-A は無事 Windows 8 Pro にアップデートできた(ライセンス認証されていない状態)
  5. PC-A に Windows 8 Media Center Pack を入れようとして、PC-B の「ライセンスキー」を入れる。
  6. Media Center Pack のアップデートは終了。DVD や TV が視聴できる状態になる。
  7. Windows Update をかける。
  8. 再起動に失敗して、Windows 自体が立ち上がらなくなる。構成を Windows Update 前に戻すと、かろうじて Windows 8 Pro が立ち上がる。

という状態です。Windows 8 Pro の重複は後からライセンスを変えることができるので、ひとまずインストールを進めるための手段です。Media Center Pack は、PC 1台につき1つとは思わなかったので(ストアアプリのように Microsft アカウントに紐づいているものかと勘違いした)、PC-B のライセンスをそのまま入れました。不正利用しようとした訳ではありません。まあ、トリッキーな使い方をしているのは認めますが(苦笑)

■不具合の現象

直接的な現象としては「Windows Update に失敗する」ってことなので、最初はこれを解決しようとしたのですが、ちょっと考えた後、「ライセンス認証をしていないPCに対しては、Windows Updateができない」というのを思い出して(例の中国Windows Updateサーバーの件ですね)、これって、そもそも Windows Update できないはずでは?、と思って、ひょっとすると、Media Center Pack のライセンスを再購入すればよいでは?と思ったわけです。

ですが、この PC-A の状態が、

  • 新しい Windows 8 Pro のライセンス認証を受け付けない。
  • Media Center Pack の新しい購入ができない(なぜか、この国では購入できません)。

という感じになってしまって、万事休す、になってしまいました。いやいや、変なところにはまったことはわかるのですが、対処方法がないというのがなんとも。

■Microsoft サポートに電話する

Microsoft のサポートセンターにはいろいろな窓口があるのですが、この件は「ラインセンス認証」が怪しいことが分かったので、「素人」っぽく相談してみました。まあ、MS ライセンスに関しては、素人なのは確かなのですが。

  1. ライセンス認証ができない、Windows Updateに失敗することを、ライセンス認証のサポートセンターに伝える。
    → Windows 8 専門の電話番号を教えられる
  2. Windows 8 専門のところで、Media Center Pack がダブっていることを教えられる。
    解決方法として、2つの方法を教えられる。
    → Windows 7 にダウングレードした後、Windows 8 Pro に戻す…のはつらい。
    → 別 PC で Media Center Pack を購入して、その PC はつぶす。
  3. VMWare で Windows 8 Pro を作って、Media Center Pack を購入する。
    → VMWare のほうはつぶす。
  4. PC-A に追加購入した Media Center Pack のキーを入れようとするが、入れられないので、再び Windows 8 窓口へ
    → エラーコードから、ライセンス台数の制限に引っかかっているので、制限解除の電話番号を教えられる。
  5. 制限解除の電話番号で、長い長い8桁x9の数字を、iPhone で入れた後(いやあ、これは固定電話のほうがいいです)、解除できませんとのメッセージが。
  6. 制限解除のオペレータに繋ぐと、MSDN のライセンス制限にひっかっているとのこと(確かに、MSDN の Windows 8 Pro ライセンスを使っているので)。MSDN のサポートセンターの電話番号を教えられる。
  7. MSDN サポートに「Media Center Pack」のライセンス制限が MSDN 関係でダメっぽいのだが…とMSのサポートから言われた、と伝えると、MSDN サポートの方が「Media Center Pack って何処で購入されましたか?」、「Media Center Pack という製品は MSDN に入っていないので、どういう製品なのですか?」ということを言うので、Bing, Google で検索して貰ったがが解決せず。まあ、自社製品はたくさんあるから「知らなくても」問題はないのですが、クレーマー扱いされるのは本意ではないので、仕方がないので「クレーマーモード」に変更…「君の名前は?」と行聞く。ちなみに、名前は忘れました。
    → すったもんだの挙句、やっぱりライセンス認証らしいので、最初のライセンス認証とは違う電場番号を教えてもらう。
  8. ライセンス認証の電話に掛けるが「ただいま、大変回線が込み合っており…」のメッセージが。ええと、すでに2時間近く問い合わせにかかっているので、ちょっとキレそう。
  9. 仕方がないので、Windows 8 専門の電話番号にかけて(ここは問い合わせ番号を貰えるので、担当者が違っても前後の話が続いていて楽)、事情を話す。
  10. 「電話のたらいまわし」を了解してもらったようで、ライセンス認証の代行をサポートセンターの A さんに代行して貰う。
    → あの8桁x9の長い数字を電話で伝える。
  11. 10分後、折り返し電話がかかってきて、制限が解除されたことを伝えられる。
    → あの6桁x? の長い数字を電話で伝えられる。いやいや、ちょっと大変ですがな。
  12. 無事、Windows 8 Pro, Media Center Pack がライセンス認証された状態になる。

で、解決したのは「ライセンス認証」なので、Windows Update の件は、まだ確かめていません。力尽きました。

まあ、時々答えてネットあたりで「Microsoft のサポートが悪い」との書き込みがあるのですが、ちょっと横の連携がつながっていないところが多いみたいです。Windows 7 から Windows 8 へのアップグレードトラブルと、それに伴うライセンス認証に関しては一本化してほしいところですね。数字の羅列は自動応答しやすいってのもあるけど(コストが安い)、あれこれと手間が掛かる場合はオペレーターに繋いでもらったほうがよさそうです。

■Media Center Pack のライセンスを追加購入する

たぶん、はまりどころなので、記録を書いておきます。Microsoft 推奨の方法ではないけれど、こうしないと追加購入ができないので。

先のように Media Center Pack を2台目のPCに入れてしまうと、どうしようもない状態になります。Media Center Pack を入れた Windows 8 は、それを外すことができない(アンインストールできない)ので「前に進むしかない」状態です。ひとつの方法としては、Windows 7 に一度戻して再び Windows 8 を入れなおせばいいのですが、アプリが既に入っていたり、そもそも Windows 8 からクリーンインストールした場合には、Windows 7 には戻せません。

なので、VMWare などの仮想環境を利用して、一時的に Media Center Pack を購入し、そのライセンスをトラぶった PC に入れるのがベターなようです。

  1. VMWare で Windows 8 Pro を新規作成する(たぶん、お試し版でもOKと思う)
  2. Windows 8 Pro から、Media Center Pack を購入する。
  3. Media Center Pack のライセンスを控えて、インストールはしない。
    → 先の例では、インストールしてしまったのですが、インストールしないほうが安全かと。
  4. VMWare 内の Windows 8 Pro は消し去る。
  5. トラブルのある PC で、購入した Media Center Pack のライセンス番号を入れる。

ってな手順です。ひょっとすると、素直にインストールできるかもしれないし、ライセンス制限のエラー(「0xC004…」だったかな?)が出るはずです。この場合は、ダイアログに出てくる問い合わせの電話番号にかけて、長い長い8桁x9 の文字を電話で(スマートフォンだと苦労します)入力してください。8桁ごとにチェックをしてくれるので、途中で番号を間違えても大丈夫です。私自身、5,6回間違えましたが、認証の番号が貰えるまでいきました(まあ、制限エラーだったわけですが)。認証番号を聞き取れなかった場合は、たぶん繰り返し再生できるかと。

■その他

そういえば、コントロールパネル→システムの出し方は、「左下のWindows キーと Xを同時に押して」で統一されているみたいですね。まあ、チャームから「設定」→「コントロールパネル」では難しいですから。

ちなみに、システムを開くのであれば、エクスプローラーで「コンピューター」(8.1では「PC」でっせ、「PC」ッ)を右クリックして、「プロパティ」を選択すると早いです。まあ「右クリック」ってのが素人的には難しいので、キーボードと「右クリック」の組み合わせで説明するのがベターです。注意したいのは、ThinkPad の古いノートPCとかでは、Windows キーがなかったりするので注意が必要ですが。↓は Media Center Pack をインストールしていない PC です。

image

追記 2013/07/21

Windows Update を試すと相変わらず、起動時にカーネルエラーでこける。どうやら、再起動のかかる Windows Update が全滅の模様。面倒なので、Windows Update をしない設定にして、正式版の 8.1 がでたら、それにアップグレードする予定。

 

カテゴリー: windows 8 | Windows 8 Media Center Pack を2台目に入れるときの注意点 はコメントを受け付けていません

[win8] Win+Alt+PrtScr でアクティブウィンドウを画面キャプチャする

というのを見つけて、「えーえー、知らないですともッ!!!」ってことで、試してみるとWin8ではマイピクチャ(8.1の場合は「画像」)にスクリーンショット(screenshots)というフォルダに「スクリーンショット (1).png」な感じで画像ファイルが保存されます。

そうなると、Alt+PrtScr と同じように、Win+Alt+PrtScr としたときにアクティブなウィンドウをキャプチャして保存してくれると便利ですよね。実際、手元で似たツールは作っていたのですが、Shift+PrtScr にしていたので、Win+Alt+PrtScr に変えてみます。Shift にしているのは、Visual Studio などの画面キャプチャをするときにメニューが閉じられないので書籍用のキャプチャがしやすい、ってのもあります。Alt を押すとメニューが閉じられてしまうので。

あと、Win+PrtScr の場合は、デュアルディスプレイの場合はすべての画面を一遍にキャプチャしてしまうので、モニタ毎のキャプチャ機能を追加してみます。Win+テンキーの1 にしておきます。本当は「Win+1+PrtScr」にしたかったのですが、「Win+1」のキーはタスクバーの最初のアイコンに割り当てられているので、これは使えません(なんじゃ、こんな機能があったのか、ってな具合ですが)。ちなみに「Win+2」は2番目のアイコンです。あと、「Win+Shift+1」の場合は新しくアプリを立ち上げます。なるほど。

ホットキーの設定あたりは、

Ctrl+PrintScreen でアクティブなウィンドウをキャプチャする – Moonmile Solutions Blog
http://www.moonmile.net/blog/archives/2344

を参考にして、そのまま写し。

あとはついでだけど、リモートコンピュータに対しての画面キャプチャも

リモートコンピュータの画面をキャプチャする – Moonmile Solutions Blog
http://www.moonmile.net/blog/archives/3352

まあ、リモートコンピュータ(タブレットPC)の場合は、Mouse without Borders を入れておけば良いのですが。

複数モニタに対応する部分だけコードを示しておきます。
プライマリモニタ(最初のモニタ)は、Screen.PrimaryScreen で取得できるので、これから Bounds を使ってサイズを取得。CopyFromScreen で全体の画面キャプチャから切り出しをすれば ok です。
サブモニタや3枚目のモニタの場合は、Screen.AllScreens で取ればいいですね。モニタ位置は Bounds の Left と Top で撮れるので切り出しをします。

/// <summary>
/// 指定モニタをキャプチャ
/// </summary>
/// <param name="num"></param>
/// <returns></returns>
private Bitmap ScreenCapture(int num)
{
    if (0 < num &&  num - 1 < Screen.AllScreens.Count())
    {
        Screen sc = Screen.AllScreens[num - 1];
        int width = sc.Bounds.Width;
        int height = sc.Bounds.Height;
        Bitmap bmp = new Bitmap(width, height);
        Graphics g = Graphics.FromImage(bmp);
        // モニタ位置を考慮する。
        g.CopyFromScreen( sc.Bounds.Left, sc.Bounds.Top, 0, 0, bmp.Size);
        return bmp;
    }
    else
    {
        // 最初の画面をキャプチャ
        int width = Screen.PrimaryScreen.Bounds.Width;
        int height = Screen.PrimaryScreen.Bounds.Height;
        Bitmap bmp = new Bitmap(width, height);
        Graphics g = Graphics.FromImage(bmp);
        g.CopyFromScreen(0, 0, 0, 0, bmp.Size);
        return bmp;
    }
}

あとは、かなりダサい方法ですが、マイピクチャに連番で保存すればOKです。正規表現を使ってもいいのですが、まあ、これで用途は足りているので。

/// <summary>
/// マイピクチャへ保存
/// </summary>
/// <param name="bmp"></param>
void SaveToMyPictures(Bitmap bmp)
{
    string folder = System.Environment.GetFolderPath(Environment.SpecialFolder.MyPictures);
    folder += @"Screenshots";
    // マッチする一覧を取得
    int num = 0;
    var files = System.IO.Directory.GetFiles(folder, "スクリーンショット (*");
    if (files.Count() == 0)
    {
        num = 1;
    }
    else
    {
        var nums = files.Select(f =>
            int.Parse(
            f.Replace( folder, "" )
                .Replace("スクリーンショット (", "")
                .Replace(").png", "")));
        num = nums.Max();
        num++;
    }
    string path = string.Format("{0}スクリーンショット ({1}).png", folder, num);
    bmp.Save(path);
}

実験用なのでホットキーを設定するボタンがありますが、起動時に自動的に登録すれば ok です。

サンプルはこちらに。
http://sdrv.ms/15kdFTs

# ああ、Windows 7 の場合でも使えるようにバージョンチェックしてフォルダ作って、というのも考えていたのですが、作るの忘れていました。それは別の機会に。

カテゴリー: C# | [win8] Win+Alt+PrtScr でアクティブウィンドウを画面キャプチャする はコメントを受け付けていません

ソフトウェア開発委託基本契約書の不備により、未払い200万円の被害を受ける

フリーで作業をしたり小さな会社で請け負い作業をするときには「ソフトウェア開発委託基本契約書」を結ぶことになると思うのだが、これを結んでしまった後、トラブルが発生したときに「請負側」が被害を蒙っている、という現状です。

本日、弁護士に相談したところ「ソフトウェア開発~」の条項から、「違約金などは取れない」旨の通知を受けたのですが、かなり納得がいかないので、ここにフリーランスという立場の防御のために事案を晒しておきます。

image

# 上の図は「給与」って書いてあるけど、実際は報酬/委託金です。

今回のソフトウェア開発は、発注元Lから元請けGに製品開発を依頼しています。この中で株式会社Eの仲介があって個人事業主のM(=私)にところに話が来ている状態です。それぞれの契約は、

  • 発注元Lと元請けGの間の契約
  • 元請けLと株式会社Eの間の契約
  • 株式会社Eと個人事業主Mとの契約

に分かれます。どれも請負契約で、最終的に検収があり、検収のチェックがあった上で入金が発生するという状態になっています。それぞれ4社は、同じ場所で働くこともあり、同じ会議をしている状態で、それぞれは顔見知りの状態です。

さて、去年からこのプロジェクトを続けていた訳ですが、夏ごろに中間検収として発注元Lから元請けGへの入金がありました。元請けGはその中から株式会社Eに入金を済ませました。しかし、株式会社Eは、個人事業主Mへの支払を「意図的に」遅らせています。個人事業主は、入金なりの連絡がこないためにその夏は無給で働くことになっています。

その後、再び、発注元Lから元請けGへの入金がありました。元請けGはその中から株式会社Eに入金を済ませました。しかし、同じく株式会社Eは、個人事業主Mへの支払をしていません。連絡しないので、個人事業主Mとしてはおかしいと思い、10月頃に株式会社Eに「入金があったかどうか?」を尋ねたものの、株式会社Eは「入金はありませんでした」と嘘をつきました。

その後、年末から4月までに何回かの入金が、発注元Lから元請けG、株式会社Eにあったものの、株式会社Eから個人事業主Mへの入金の連絡はまったくなく、0円で仕事をさせられていることになっています。

今回、6月末にプロジェクトを終了するにあたり、個人事業主Mが元請けGに問い合わせをしたところ、既に入金は済ませてあるとの旨の連絡がありました。個人事業主Mは、株式会社Eに問い合わせをしたところ、「手元に資金がないために、個人事業主Mには払えない」という不払いの通知を受けました。

そこで個人事業主Mは、「ソフトウェア開発委託基本契約書」に基づき、株式会社Eに支払いかつ賠償を求めるために、弁護士に相談し、発注元Gと株式会社Eとを交えて、協議の場を設けました。

私としては、下記の「契約の解除」と「損害賠償」に従って、賠償請求あるいは慰謝料請求をするつもりでした。

(契約の解除)

第23条 甲および乙は、相手方が次の各号のいずれかに該当した場合、何らの催告なしに直ちに本契約および個別契約の全部または一部を解除できるものとする。

(1)支払の停止があったとき、または破産、民事再生、会社更生、会社整理、特別清算等の申立てを受けもしくは自ら申立てたとき。

(2)仮差押、差押、仮処分もしくは競売の申立てまたは滞納の処分を受けたとき。

(3)合併、解散または営業の全部もしくは重要な一部の譲渡、廃止を決議したとき。

(4)甲の信用、営業を毀損する行為または活動を行ったとき。

(5)不正行為または甲の業務遂行の妨害行為を行ったとき。

(6)支払能力に支障が生じたとき、またはその恐れがあると認められる相当の事由があるとき。

(7)直接、間接を問わず、反社会的勢力と関与していることが判明したとき。

(8)本契約または個別契約に著しく違反したとき。

(9)本契約または個別契約に違反し、相当期間を定めとした催告後も是正されないとき。

(損害賠償)

第24条 甲および乙は、本業務履行に関し、相手方の責に帰すべき事由により被った損害の賠償を請求できるものとする。

2 前項に定める損害賠償額は、個別契約にて定める本業務の対価としての委託料の総額を上限とする。

ですが、この「ソフトウェア開発委託基本契約書」には、非常に発注側に有利に作られており、支払が遅延しても賠償金を払わなくてよい、という仕組みが入っているのです。

全文は、http://sdrv.ms/1aVTotF です。

現状、ソフトウェア開発自体は終了かつ発注元Lの開発サーバーに納入済みのために、個人事業主Mは全工程を終えています。このために、発注された金額を「すべて」貰わない限り、利益としてペイできません。ですが、先の条項により、賠償金額の上限は「本業務の対価として委託料の総額を上限」としているために、ソフトウエア開発の完了後(プロジェクト完了後)に入金の遅延が発生したとしても、遅延料金(商習慣、年6%)しか上乗せされないとのことです。

個人事業主M=私としては、発注元からの入金が6月であるので、遅延は6月からであること。中間検収による入金がなく、個人事業主Mは、夏、秋、正月、6月直前まで、入金が全くなく運転資金に苦しんだこと。株式会社Eは、個人事業主Mに支払うべき「入金」を、株式会社Eの別の運転資金に割り当て、意図的に遅延させていることは明らかであること。

これを主張したのですが、先の「本業務の対価としての委託料の総額を上限とする」ということから、上限が委託金であること。このために、損害賠償を契約上、これ以上うわのせできないこと。また、検収後の支払の「遅延」だけであるので、先の法定金利の6%しか適用されないこと、を主張されている状態です。当方の弁護士も、その点には同意らしいのですが、私としては納得がいきません。

もし、これが「正しい」のであれば、プロジェクト終了後、検収後に、意図的に支払を遅らせて法定金利6%という安い金利(銀行で借りると15%ぐらいになります)で借りれることになります。この場合、個人事業主M=請負側の意図とは関係なく発生しているため(遅延について、個人事業主は事前に相談などを受けていません)、勝手かつ悪質な行為ではないでしょうか?

当方の弁護士の相談したところ、この場合には、

  • 特約として、遅延が発生した場合は、金利15%を明記する(銀行の金利以上にする)。
  • 違反が発生した場合は、委託金とは別に違約金○○万円を支払う。

などの項目を明記すると良いそうです。フリーランスの方や、零細企業のソフトウェア会社の方は、速攻「ソフトウェア開発委託基本契約書」を見直してください。この条項が入っている、契約書はほとんど存在しないことが分かります。もし、存在しないならば、契約を更新する形で、追加しておきましょう。

私としては、これが普通の「ソフトウェア開発委託基本契約書」だと思っていた(実際、私自身が作るものもこれなので)ので、これは明らかに「罠」です。意図的に請負側を不利にさせる契約書となります。もちろん、普通にプロジェクトが進んでいる場合にはよいのですが、いったん、トラブルが発生すると、その「不備」を盾にして、賠償金等の支払を拒否するのはビジネス上、かなり悪質だと思われます(勿論、「契約書」であることもも十分心得ています)

実は賠償金額の上限については、経験上、これがないと無限責任となってしまうために、私から株式会社Eに助言をしたものです。この助言に従って入れて貰ったものなのですが、それが自分の首を絞める、さらに言えば、それを盾にとって支払を遅らせるとは思いもよりませんでした。

この点、確かに法律上、契約上がそうなのですが、途中の入金の遅延や「入金は発生していません」の嘘が気になるので、別途、中小企業庁あたりに相談を考えています。当方の弁護士との相談は進めておりますが、「納得がいかない」部分を解決できればと、別な方法も模索していますので、似た事例の経験のある方、知識のある方はご連絡ください。

ひとつの方法として、違反なので「ソフトウェア自体を渡さない」という方法もあるのですが、発注元Lや元請けGのことを考えると、そうもいきません。今回のソフトウェア自体は、製品開発の中核であるために、それがなくなると発注元Lの製品が発売できなくなってしまうのです。また、個人事業主M=私にとって、プロジェクト自体が終わってしまっている=必要な作業量/金額を使ってしまっている状態なので、契約金の満額を貰ったところで、作成したソフトウェアの製作費になるだけで、違約金/慰謝料になりません。なので、かなりひどい状態。これを我慢する必要があるのでしょうか? ってのが問いです。

2013/07/10 追記
下請かけこみ寺に連絡したところ、下請法の対象は「資本金 1千万1円」以上の場合に適用されるそうです。なので、本件の株式会社E の場合は「資本金 1千万円」なので対象外とのこと。下請法に「資本金 1千万円を超える」と書かれているのは、そういう意味らしい。ひどい。なので、下請として取引をする場合には、「資本金 1千万1円以上の会社」とやりましょう。たいていの会社は、資本金1千万円なんだけどね…

2013/08/10 追記
決着がついたので、ソフトウェア開発委託基本契約書の不備の感想戦 – Moonmile Solutions Blog にまとめを書いておきます。

カテゴリー: 仕事 | 31件のコメント