RIA用JavaScriptフレームワーク×12

MOONGIFTでは技術コンサルティング、Webサイトプロデュース、テクニカルアドバイザリー、ITレポートサービスを承っております。ご用命、ご質問などはinfo@moongift.jpまでお気軽にどうぞ!

2000年当時のJavaScriptと言えば、文字を動かしたり簡単な入力チェックを行う程度のあくまでも補助的な代物に過ぎませんでした。その状況を一変したのがGmailであり、Web2.0と言われるWebアプリケーション群の登場です。WebアプリケーションはJavaScriptを多用し、Ajaxのような技術を組み合わせることでWebブラウザ上でローカルアプリケーションのような操作を可能にしました。さらにそうしたJavaScriptライブラリはJavaScriptにおける最大の問題であったWebブラウザごとに異なる動作を吸収し、開発者が容易に多数のブラウザに対応したWebアプリケーションを開発できるようにしました。最近のWebサイト開発でJavaScriptを使っていないサイトを探す方が難しいくらいです。

各種イフェクトやブラウザ間の誤差を吸収するライブラリは多数存在しますが、今回は特にWebアプリケーションを開発するためのライブラリをリストアップしてみます。Webアプリケーションを開発する上でAjaxやイフェクトを容易に開発できるのはもちろん大事ですが、それ以上にUI(ユーザインタフェース)がリッチである必要があります。それにより利用者が単なるWebサイトとは違う印象を受け、情報を発信するだけのWebサイトからツールとしてのWebアプリケーションへと進化することができるはずです。

Read the rest of this entry »

Web屋の目指すもの、サービス屋の目指すもの

大切なのは数秒のスピードアップ?それとも?より

でもね、よく考えよう。100万回ループさせたら9秒の差が出ました、って、、、 100万回とか1000万回ループするfor文なんてものを書くのは実際の開発現場においてよくあることなんだろうか?(いやもちろん、実験だからそういう数値を使ってることは承知のうえで)

恐らくWeb屋(いわゆる人のためにサービスを開発を行う方々)はこう思うだろうな、と。言わば納品先はシステムの素人な場合が多い訳で、優先順位的にも納期や安定動作の方が重要で、システムの速度はその次でしょう。

でも自社のWebサービスとして開発する場合は全く異なってくるでしょう。数ミリ秒単位で速度を磨き上げていくことは、ユーザビリティの向上につながります。特に最近のWebサービスでは数秒のもたつきでユーザが逃げてしまう、なんてことは良くあること。こうした小さな改善を積み重ねていけば、結果として大きなシステム改善につながり、ハードウェアに頼らないチューンナップが可能になります。

元ネタの「@」でエラー抑制すると PHP が遅くなるという噂について [ a++ My RSS 管理人ブログ ]にしてみれば@がないことで1000万回実行した結果による8秒改善が重要なのではなく、そもそも自社システムをより良いものにしていくという姿勢の現れだということです。

個人的にはできれば良いじゃない的な論理ではなく、やるからには徹底的に突き詰めて改善していくという考えがWebの技術者には必要だと思います。そうした小さいこだわりは意外なほど、使っているユーザに伝わるものです。

仕様書は後ろから

開発会社の方であれば、仕様書は作成すると思います。受託開発のころ、元請けの会社の方が仕様書をきり、それに沿って開発をしたりしていたのですが、開発を進めていくうちに徐々に問題が出てきます。

76209257_6fdb46d302.jpg

via A pile of paper on Flickr - Photo Sharing!

 

よくありがちなのが、納品物に対する仕様書を盾にして意見が押し付けられることです。読み違いや勘違い、前提知識など様々な要因があるのですが、仕様書は絶対と言わんばかりの態度をとられます。

そして、さらによくありがちなのが仕様書の間違いです。しかしこれは前者の逆でありながら、スルーされることが多いようです。絶対なのか、または逆なのか…勝手に解釈を加えて欲しいのか否か、よく分かりません。

後、もう一つありがちなのが、最初の方の仕様こそきちんとしているのですが、後の方(システム的には重要視される部分)になるとドキュメントが希薄になっていくという現象です。開発のスケジューリングの問題なのかも知れませんが、差別化要因を生む箇所にこそ、力を注がないといけないのですが、そうでないことが多いようです。

ということで、解決策は以下に。

Read the rest of this entry »

ユニットテストを減らしつつバグを減らす方法

極力ユニットテストを書かずに品質を確保する方法 - ひがやすを blogを読んで、ちょうど先日同じ話をしていたので。

93395542_2ef47df38a.jpg

via Cocoa Code - 1 on Flickr - Photo Sharing!

 

テストファーストで書かないと、と思いつつも工数や納期に押されて書けずにいる人は多いと思います。プログラマにとってみれば、自分の書いたところにバグはないと信じる気持ちもあるので、あまり気が進まないということもあります。

そこで、書くべき場所と書かない場所を決めてしまうのが大事かな、と。

Read the rest of this entry »

情報を集めるコツ

538400926_a869f4ae15.jpg

Ethereality of Eternity on Flickr - Photo Sharing!

はじめて人にお会いする度に「どうやってソフトウェアの情報を集めているのか?」と聞かれます。いい加減聞かれ飽きてきて、適当にお茶を濁すことが増えてきたのですが、一度書いておこうと思います。

概念としては、砂地に穴を掘るイメージです。穴を掘ると、風が吹いてまた穴が塞がります。それをかき出すと、また溜まる、またかき出す…を繰り返しているといつしか大きな穴ができて、多少の砂では埋まらなくなります。

情報を発信する(穴を掘る)ことが、情報収集の第一歩です。ただ一時やってもあまり意味はありません(他の情報の中に埋まってしまうので)。ただ、継続して淡々と続けていくと、いつしか大きな穴(情報源)になって、皆に気付いてもらえるくらいの穴になります。

なので、情報を集めようと思ったらまず発信してみるのがコツです。詳細は以下。

Read the rest of this entry »

Skimを使ってPDFを簡易編集

skimIcon.png

Skim | Home
http://skim-app.sourceforge.net/index.html

とある所からの依頼で、帳票の文字を修正することになりました。が、帳票はすでにPDFで生成しており、元のソフトウェアを見ても該当する文字を修正することができません。
帳票や、生成したPDFを修正する必要がある場合は多々あると思いますが、そうした時に役立つのがSkimというソフトウェアです。今回はSkimを使った簡易PDF修正の方法をご紹介します。

Read the rest of this entry »

MOONGIFTネットワーク。こちらもぜひご覧ください。
MOONGIFT
Open Service
Rails 2.0
Residenton.net
Cool Coding
Producing Web