月別アーカイブ: 2013年8月

ライブラリはアプリケーションの延長では開発できない。

アプリケーションの開発者というのはよく見かけますが、分野を問わず、ライブラリの開発者というのを見かけることはあまりありません。ライブラリを専門的に開発しているのではなくても、アプリケーションだけではなく本格的なライブラリを開発できるというプログラマーが少ないのです。

アプリケーションばかり開発しているプログラマーはこのようにいいます。「アプリ開発の過程で生まれたクラスやモジュールなどを再利用できるようにとっておきます」と。けれども、アプリケーション開発の副産物として生まれたコード群と、はじめからライブラリにすることを目的に作られたコード群では明らかな違いがあります。

はじめからライブラリにすることを目的に作られたコードは、汎用性や移植性、サイズ効率や速度効率などに相応の配慮が行われているものです。特定のアプリケーションで使うことに特化すれば、その目的に合致する限りは、もっと使いやすく、もっと効率的なものができるかもしれませんが、通常ライブラリはそのような選択はせず、もっと応用範囲を広げる努力をするものです。

きれいごとをいうのはやめて、もっと現実に目を向けるならば、アプリケーションの副産物として生まれたコードは細かいところまで作り込まれていないケースがほとんどです。

具体的にいうと、Java のクラスであれば、hashCode や toString といったメソッドを、それが生まれたアプリケーションで実際に必要となる場合以外にきちんと実装されているケースが果たしてどれだけあるでしょうか?

C++ であれば、アプリケーション独自のコンテナを作ったとして、それが本当に標準規格で定められたコンテナの要件を完全に満たしていることがどれだけあるでしょうか?

一点一点を指摘されれば、アプリケーション・プログラマーであってもそれらに対応できる可能性は十分あります。けれども、指摘される前から網羅的に必要なことに配慮することはまずできないのではないかと思います。

日本のプログラマーは、もっとライブラリを書く力を身につけてもよいのではないかと感じています。細かいところまで配慮したライブラリを書くのは、特定の目的だけを達成できればよいアプリケーション視点からは無駄のように見えることもあるかもしれません。しかし、一見遠回りのようであっても、実は近道だということはあるのです。

Android アプリに挑戦

私は Java のこともあまり知らなければ Android についても素人と変わらなかったので、これまで Android のアプリ開発の仕事があったも別の担当者にまかせてきました。

ところが最近になって、そうもいってられない状況になってきました。そこで、いよいよ重い腰を上げて Android のアプリ開発に挑戦することになりました。といっても、ほとんどが OpenGL ES を使った開発になるので、典型的な Android アプリとはかなり異なるのですが、これが何とかなればあとは応用が効くはずです。

不慣れな Java についてもある程度知識を深めるとともに、いろいろな実験を行いながら、極めていけたらと考えています。やがては、Android のお仕事も安心して自分で担当できるようになることでしょう。

お電話でのお問い合わせはご遠慮ください。

弊社の場合、わずかな人数で運営している関係上、事務所に誰もいない状況が多々あります。そのため、電話は通常転送になっています。

出先では、電話に応対できないことや、仮に応対できても満足な対応ができないことが多々あります。申し訳ありませんが、お電話によるお問い合わせは可能な限り避けていただき、メールでのご連絡をお願いいたします。

お電話をいただいた場合でも、メールでご連絡いただくようお願いさせていただくだけに留まるケースが少なくありませんので、なるべくご協力お願いいたします。

実はパソコンは苦手

こういう仕事(プログラマーとか…)をしていると、よく他人から勘違いされることがあります。それは、「きっとパソコンが得意なんだろう」ということです。

残念ながらそんなことは決してなく、むしろ苦手なくらいです。おそらくは、私より事務を生業にされている方のほうがずっとパソコンのスキルは上だと思います。

だから、私に動画の編集とか、チラシやポスター作りとか、そういったものをお願いしようという考えにはそもそも無理があるのです。

これは私に限った話ではありません。私を含めたコンピュータの技術者は、必ずしも世間一般でいうパソコンの達人ではないのです。もちろん、趣味でいろいろやっている方であれば別ですが、多くの場合はそうではないでしょう。

もちろん、お仕事として依頼されれば可能な限り対応しますが、その場合は、そういったことが得意な人を担当にあてるようにしています。

 

Windows XPと.NET Framework 1.1について

Windows XP は大変優れた OS でした。まもなくマイクロソフト社のサポートが終了しますが、まだ利用されているお客様も少なからずいらっしゃるかと思います。

しかしながら、弊社としましては、新しい OS への対応に注力する上で、旧 OS のための開発環境や動作確認環境の維持が困難になってきております。

そこで、申し訳ありませんが、今後の新規開発におきましては、Windows XP およびそれ以前の Windows や .NET Framework 1.0 および 1.1 への対応を原則取りやめることにしました。

もし、やむを得ない事情があり、古い環境への対応をご希望の方は、必ず事前にその旨を申し出てください。その場合でも、.NET Framework 1.1 以下への対応は行うことができませんのでご了承ください。

Arduinoを用いた開発も承ります。

弊社では、Arduino などのマイコン基板を用いた回路設計からプログラミングまでをワンストップでお引き受けいたします。

試作はもちろん、1~数台程度の装置を低コストで早く製作することができます。もちろん、ハードウェアはご自身で設計されるのでプログラミングだけを任せたいという場合も大歓迎です(弊社は本来ソフトウェア会社ですので)。

まずはお気軽にメールでお問い合わせください。

なつかしい感覚

弊社サイトのリニューアルに向けて、現在こうしてコンテンツを増やしているところです。その過程で、なつかしい感覚があざやかによみがえってきます。

従来のウェブサイトを Drupal で構築したときも、実は今のようなシンプルなところからスタートしたのです。それが、年月をへるとともに、どんどん肥大化していきました。あまり肥大化しすぎると動きが非常に取りづらくなっていきます。

これを機会に、初心にかえってウェブサイトの運営に取り組んでいきたいものです。

「技術情報」のあり方

従来のサイトには「技術情報」として雑多な内容を掲載していました。おかげさまで閲覧してくださる方も多く、それなりに盛況だったと理解しています。

今回のリニューアルにともない、その「技術情報」がいったん失われてしまうことが管理者としては残念でもあり、また訪問してくださる方々にもご迷惑をおかけすることにもなることでしょう。これまでなかなかリニューアルに踏み切れなかったのもそれが原因です。

もちろん、リニューアル後のサイトでも「技術情報」は掲載していく予定です。しかしながら、従来のサイトはあまりにも雑多な状態であり、継続的に更新できなかったテーマも少なくなかった反省があり、ある程度厳選した情報を提供していきたいと考えています。また、情報の中心となるのは、入門者から中級者向けの情報になるべく特化するようにするつもりです。

従来の情報をリニューアル後のサイトでも掲載していく可能性は十分ありますが、すべてではありませんし、以降の時期についても未定です。また、そのままの状態で掲載するか、内容を改善した上で掲載するかについても今のところ未定です。

サイトリニューアルに向けての準備中

これまでの弊社サイトは Drupal を使って構築していました。ところが、長い間使っているといろいろ問題も積み重なってくるもので、いずれ作り直さざるを得ないと感じていました。そのような事情もあり、このたび WordPress を使って再構築することにしました。

従来のサイトのコンテンツは膨大で、これを移行するのは大変です。ただ、従来のコンテンツはすで古くなった情報も多く、どんどん陳腐化していっています。それであれば、思い切ってゼロベースで新規作成した方がよいだろうという考えにいたりました。

もちろん、従来のコンテンツの中には多少なりとも訪問者さまのお役に立てるものもあるでしょうから、必要に応じて随時リニューアル後のサイトにも反映して行けたらと考えています。

現在はリニューアルに向けての準備中で、この記事もローカル環境で編集を行っています。ある程度公開のめどがたった段階で、既存サイトとの入れ替えを行う予定です。