2014年7月30日

操作マニュアルいらないから安くしてと言われたから

 今作ってるシステムは結構大きめのシステムなんです。
機能もいろいろあるし(いや、そうでもないかな?)。

 で、受注する時に少しでも安く済ませたいから操作マニュアルとかは必要ありません。って言われたので作ってません。
 (多分、エンドユーザの人は、操作マニュアルと運用マニュアルを混同しているんだと思います。または、なんとなく使っていればわかるものだと思ってるのかも)

 
 エンドユーザと自分の間にコンサル的な人(残念ながらあまり有効に動いてない…)が入ってるんですが、この人も必要ないっていってるいうんですよ。
 でも、作った機能をエンドユーザに説明する人はこのコンサル的な人なんですよ。

 でも、作られている機能が何をすればどういう動作するとかをどうやって説明するんでしょうかねー?って感じなんです。
 自分の首を絞めるのに気づいてないんだろうか?とちょっと心配になります。
そのことを言っても、自分でやりますと引かないんですよね。もし、やっぱり、操作マニュアルを作ってくださいと言ってきたら当然有料になりますけどね。時間もかかりますし。

 何が心配かというと、間違った説明をした時に、それはそういうことではないいのですよといちいち説明しないとになるんですよね。
 この前なんて、画面項目の意味もわからないのにユーザが不要と言ったのかどうかわからないけど、「◯◯項目は不要」という指摘をしてきました。
 で、そのことを指摘するとちょっと逆切れ気味に「全ての指摘を修正してくれなんて言って無いじゃないですか!!」と言ってくるんですよねー。
 自分がちょー無駄なことをしてることに気づいて欲しいんだけどダメだね。
また、説教しないとかもしれません。ははは。


 みなさんも気をつけてください。
操作マニュアルは不要なんてことはありえないので。
道具の使い方を知らないで道具を使うと本業で大混乱を起こします。挙句の果てには、このシステム使えねーとかになります。

 システムも日常生活でつかってるものもも変わらないんですけどね。所詮は道具なので正しい使い方をしないと意味がないんです。

2014年7月29日

Webページが切り替わるときに全体をブロックする方法

 ページが切り替わる時にボタンを連打したりされると困ることはけっこうあると思います。
よくある回避方法としては、押したボタンをdisable状態にしてしまうことでしょうか?
しかし、その場合でも、他のボタンやリンクをクリックすると新しいリクエストがサーバーに送信されてしまいます。

システムを使っている人は、サーバーからのレスポンスが遅いため、今ボタンを押したのかどうかを忘れてしまって再度押してしまっていたり、レスポンスが遅いからカチカチしてしまうのかもしれません。
 それならば、「今サーバーに送信中なのでちょっとまってねん。」な感じのメッセージを出しながら保険で、画面全体を触れないようにすれば良いのでは無いかと考えました。

 で、それを回避する方法としてちょっと調べました。
blockUIというJQueryのプラグインを紹介している方がいましたので、それを調べてみました。
ページ全体をブロックしながら、メッセージを表示するというものです(詳しい使い方は参考サイトを見てください)。


ポイントは、beforeunloadイベントに仕掛けることです(これが一番簡単。でも、イベントが起きないことがたまにありました原因は何でしょうか?)。
こうすることでページが切り替わる時に必ず画面全体がブロックされます。

$(window).bind("beforeunload",
    function(e) {
        $.blockUI({overlayCSS: { backgroundColor: '#555555' },
            message: "<h1> style="font-size: 20px;"<お待ちください…。</h1>",
            css: {
                border: 'none',
                padding: '15px',
                backgroundColor: '#000',
                '-webkit-border-radius': '10px',
                '-moz-border-radius': '10px',
                opacity: '.5',
                color: '#fff'
                },
            fadeIn: 000,
            fadeOut: 000
        }); 
    }
);


これで、イライラを少しは解消できるのでは無いでしょうか?

参考サイト

http://www.malsup.com/jquery/block/(プレグイン作者のサイト)
http://h2ham.seesaa.net/article/108389263.html(プラグインを紹介している方のサイト)

2014年7月19日

マウスの勝手にダブルクリックするご動作(チャタリング)を解除する

 LogicoolのM705というマウスを2年くらい使っています。
で、先日辺りからウィンドウやマウスをドラックしていると突然、ダブルクリックしたことになってしまいいろんなことがおきてしまうようになりました(結構頻繁)。
 マウスのボタンを強めに押しておくと発生しにくかったのですが、そんなのいちいち気にしていたくないのです。

 で、ちょっと調べたら、ワイアレスマイクでよくある現象(チャタリングというらしい)のようです。
マウスの中に静電気が溜まり、それが原因でマウスボタンをダブルクリックしたことになってしまうそうです。

 ロジクールのサイトでは、電池を外して、マウスボタンを10秒程度(だったかな)押しっぱなしにすれば解消するという手順が紹介されていました。
 ですが、やはり治らないので対策を探してたら、ソフトウェアでなんとかするという記事がありました。
 マウスチャタリングキャンセラというソフトがありました。
設定した時間(40msとか)以内のクリックは無かったことにするというものです。

 ちょっとテストしてみましたが、上手くいっているようなのでマウスを買い直すのはやめておこうかと思います。

 ロジクールに交換してもらおうかと思ったのですが、保証書をなくしてしまったので、無理です(取っておいたと思ったのですが…)。
 ちなみに、今のマウスは、3年保証とかになったいるので発売から3年以内だったら、保証書なしでも交換してくれるという記事も発見しました。
 (M705は、2009年頃発売なのできません…、M705tとかは、去年頃発売なので問題ないでしょう)


今は、マウスもキーボードも無線のロジクール製品です。
線が無いのはとっても便利ですよね。

2014年7月18日

CSSの代わりのに使うLessはこう使おう


 以前、Lessについての記事を書いたと思います。 CSSを便利に解りやすく記述できる言語(?)です。 何が便利か簡単に説明すると、スタイルの記述を入れ子にできたり、簡単な計算や変数が使えます。関数的な使い方もできます。

 これが一番いいと思ったのは、lessのファイルをCSSのようにHTMLに読み込ませて、lessをコンパイルするためのJavaScriptも読み込ませると、less手動でコンパイルしなくても、自動的にコンパイルしてくれます。

 他にも、SCSSなどCompass等というのがあります。 ですが、コンパイルするのに、Rubyの環境を準備するなど、しなければならないことが沢山あります。

 このJavaScriptで自動的にコンパイルしてくれるのは便利なのですが、やはり、マシンスペックに依存して遅く感じていました。 やはり、CSSにコンパイルしてからやったほうが良いです。コメントや余分な改行や、スペースを削除したほうが読み込み時間も短くなります。
でも、lessを変更するたびに毎回手動でコンパイルするのも、面倒臭かったり、忘れて新しいスタイルが適用されなかったりします。

 そ・こ・で、WinLess(http://winless.org/)というツールに出会いました。
GUIでファイルをしてすることで、簡単にコンパイルをしてくれるのですが、秀逸なのがフォルダを指定しておくことで、そのフォルダ内のlessファイルが変更されると自動的にコンパイルしてくれます。
 このファイルを保存すると自動的にコンパイルしてくれるというのはとても便利です。
言う事無しです。

 ですが、ですがっ!
現在のlessのバージョンは、1.7.3であり、WinLessは、1.6です。
 WinLessは、ちゃんとlessのバージョンを確認して、新しいlessがリリースされていると「バージョンアップする?」って聞いてきます。
 「するっ!」って思って、バージョンアップすると、ちゃんと1.7.3にバージョンアップ(WinLessを管理者モードで起動しておく必要があります)してくれます。

 ですが、ですがっ!
lessを1.7.3にバージョンアップすると、コンパイルしてくれなくなってしまいます。
何が問題わかりませんが、正常動作していません…。
ちょっと調査が必要です。

 なので、今のところ、バージョン1.6で運用しています。

誰が、答え持ってる人いましたら、ご連絡お願います。


気になること

冒頭で、毎回コンパイルされるから遅いと書きましたが、もしかすると、コンパイルした結果は、ブラウザのlocalStrageに保管されてるかもしれません(ブラウザの開発ツールを見たら、沢山残っていたので…)。
 で、なぜ、遅いと感じた(毎回コンパイルされている)かというと、lessファイルや、JavaScriptの読み込みでキャッシュを使わないようにするために、ファイル名の後ろに「?201407181030」などと文字列を付けていたので毎回コンパイルが発生していた可能性があります。
 本番環境では、ファイル名の後ろに付ける文字列は、リリースバージョン等になるので、毎回コンパイルされることはないかもしれません。
 これも、調査が必要です。

2014年7月3日

今朝、閉口した話。

 今朝の話ですが、ある取引先の人と早朝から打ち合わせをしていました。

日頃から動きが悪いことを指摘していまして、そのことについて話がでました。
何を言い出すかと思ったら、「他社に常駐があるので連絡は取れにくくなります。」と…。

 いやいや、他社に常駐するのはいいと思います。当然、自分で売上をあげなければ会社と成立しないので大いに結構なことだと思います(一人社長の女性です)。

 しかしですよ、今手掛けている仕事もままならないのに他にも仕事があるからますます連絡は取れにくくなるとか言われてもこちらが困ってしまいます。

 ビジネスマンとして大失格です。自分のスケジュールもコントロールできないんだったら、別の会社の従業員になって、行動をコントロールしてもらったら?って感じです。

 自分の仕事もまともにコントロールできないのに、独立してる人は迷惑以外のなにものでも無いです。
 (余談ですが、この人を慕っている人もいるのには驚きです。まぁ、お互いに利害関係のあることをしていないだけだと思いますが…)

 このプロジェクトは結構大きめなのにどうするつもりなんでしょうか?
 そのクライアントもシステム開発に不慣れなので教育(システム開発は、こうしないと上手くいかない等)しながら進めないとだめなのに。

 そのクライアントものんびりで、自分たちの業務が忙しいからシステム開発の打ち合わせは後回してきな動きをしてるんですよね。
 自分たちの業務が忙しいのはわかります(とても良いことだと思います。)。でも、システム開発で手抜きをすると運用が始まった時に大事件が勃発するのをわかっているのでしょうか?
 (だから、知ってる人の教育が必要なのです)


 みなさんも、口が上手なコンサルには気をつけてください。