タグ

ブックマーク / www.moongift.jp (543)

  • 難読化された読みづらいコードも一発で整形·JSBeautify For Chrome MOONGIFT

    JSBeautify For ChromeはWebブラウザ上でJavaScriptを整形して表示するGoogle Chrome拡張。 JSBeautify For ChromeGoogle Chrome用のフリーウェア(ライセンスはWTFPL)。格的なWebアプリケーションが普及するにつれて、JavaScriptの利用範囲が拡大している。そんな中ではJavaScriptのファイル自体もサイズが大きくなっている。 Clippyあり版(整形前) そのためJavaScriptを多用するサイトでは余計なスペースや改行を消すなどしてサイズを減らすのが一般的になっている。しかしそれはコードが全て1行で書かれる、とても見づらいものになる。そこでJavaScriptの表示に際して使ってみたいのがJSBeautify For Chromeだ。 JSBeautify For ChromeGoogle C

  • WindowsのJSONを使った開発のお供に。JSONをツリービューに展開する·JSON Viewer, MOONGIFT

    JSON ViewerはVisual Studioとの連携も可能なJSONビューワー。 JSON ViewerはWindows用のオープンソース・ソフトウェア。XMLを面倒なものに感じていたのはタグの仕組みによって記述が冗長的になってしまうからだった。ライブラリがあるので利用はさほど難しくないが、自分で作成するのは面倒だった。 貼付け そこで登場したのがJSONだ。XMLほど複雑な表記に対応できる訳ではないが、その代わりにとてもシンプルに記述できる。また、大抵の場合はそこまで複雑な定義は必要としないだろう。JSONは元々Web向けの技術だったが、最近は変わってきている。そこで登場したのがJSON Viewerだ。 JSON ViewerはWindows用のソフトウェアで、JSONフォーマットの文書を貼付けると、ツリー状に展開してくれるソフトウェアだ。JSONは改行などをなくして送受信される

  • 業務システムで使える。PDFファイルからテキストや画像を抜き出せる·PDF::Reader MOONGIFT

    PDF::ReaderはPDFファイルの操作を行うRubyライブラリ。 PDF::ReaderはRuby製のオープンソース・ソフトウェア。PDFというドキュメントフォーマットはビジネスの場において数多く使われている。WebサービスPDFによる帳票出力やエクスポートをサポートしているものが多い。 画像の抜き出し処理 閲覧や印刷する分には申し分ないフォーマットなのだが、システムに取り込んで加工しようと思うととたんに面倒なフォーマットになる。そのためのライブラリ(PDFtoHTMLなど)もあるが、もっとシステムから扱いやすくしてくれそうなのがPDF::Readerだ。 PDF::ReaderはRubygemsを使ってインストールするライブラリだ。機能は数多くあるが、例えばメタデータを抜き出したり、テキスト情報を取り出す、画像だけを取り出す、ページを数えるといったPDF操作を行えるライブラリにな

  • JavaScriptのコードを解析して型を明示する·Doctor JS MOONGIFT

    Doctor JSはJavaScriptコードを解析して返却値の型を特定するソフトウェア。 Doctor JSはJavaScript/node.js製のオープンソース・ソフトウェア。勘違いもあるかも知れないが、一般的にコンパイル系言語では変数の型をきちんと定義した上で利用する。対してスクリプト系言語では変数の型をいちいち定義したりせずに利用できるものが多い。 トップ画面 JavaScriptでもそれは同様だ。型を定義せずに使える分、柔軟に煩わしさを感じずに使えるというメリットがある一方、想定外の変数が入ってきて処理がおかしくなる場合もある。それを事前にチェックしてコーディングに役立てられるのがDoctor JSだ。 Doctor JSはJavaScriptのソースコードを静的に解析し、関数の返却値の型を表示する。全てのコードを解析できるという訳ではないが、functionが順番に定義されて

  • 操作されたい方がサーバに接続する。リバースVNCサーバ/クライアント·Gitso MOONGIFT

    GitsoはマルチプラットフォームのリバースVNCサーバ/クライアント。操作されたい側がサーバに接続する。 GitsoはWindows/Mac OSX/Linux用のオープンソース・ソフトウェア。PC操作に不慣れな人は、普段の使い方の中でも分からない状態に陥ってしまうことがある。そんなときにリモートコントロールできるソフトウェアは便利だが、そもそもリモート操作させるためのステップが面倒くさい。 サーバ兼クライアント VNCなどがそうだが、操作されたい側(つまり困っている人)でサーバをたてる必要がある。そのためにはソフトウェアのダウンロードや設定などややこしいステップが多い。そうした面倒さを逆転してしまうのがGitsoだ。 GitsoはリバースVNCと呼ばれるソフトウェアだ。これはサーバとクライアントの立場が逆転していると考えれば良い。つまり操作したい側でGitsoをサーバとして立てる。そし

  • 複数プロジェクトに対応したWebベースの課題管理·Elastik MOONGIFT

    ElastikはWebベースの課題管理システム。バグ管理やタスク管理に利用できる。 ElastikはPHP製のオープンソース・ソフトウェア。プロジェクト管理は様々な機能を必要としているが、質でない部分を切り出していくと最終的に残るのは課題管理と言えるかもしれない。バグや機能追加の管理を行うのがプロジェクト管理の質と言えるだろう。 チケット詳細 チケットを発行して機能を実装し、その機能をテストしてバグ管理としてチケットを発行する。その繰り返しによってサービス、ソフトウェアが作られていくのではないだろうか。課題管理システムとしてElastikを紹介したい。 Elastikは複数のプロジェクトに対応した課題管理システムになっている。チケットを作成し、内容を登録すれば完了だ。チケットにはアサインする人を定義したり、期限やステータス、プライオリティを設けることができる。さらにウォッチや添付ファイ

  • HTML5対応のjQuery UI向けウィジェット集·Aristo jQuery UI Theme, MOONGIFT

    Aristo jQuery UI ThemeはjQueryを使ったHTML5対応ブラウザ向けのウィジェット集。 Aristo jQuery UI ThemeはWebベース、JavaScript/jQuery製のオープンソース・ソフトウェア。iOSやAndroidといったスマートフォンに対してアプローチする方法としては二種類ある。一つはネイティブアプリを開発する、もう一つはWebベースでの提供だ。 デモ1 ネイティブアプリに比べるとWebサイトでは可能なことは限られるが、情報発信系サイトではネイティブアプリを用意してもダウンロードされる率はあまり高くなく、むしろWebサイトで定期的に見てもらう方が多かったりもする。そこで使えるのがAristo jQuery UI Themeだ。 jQueryではjQuery Mobileのようなスマートフォン向けライブラリが用意されている。だがこれを使うとW

  • 仕事で便利。CSVファイルを読み込んでソース/検索可能なHTMLに変換·Latimes Table Stacker MOONGIFT

    Latimes Table StackerはCSVファイルを設置し、ソート/検索可能なHTMLで表示するソフトウェア。 Latimes Table StackerはPython/DjangoGoogle App Engine用のフリーウェア(ソースコードは公開されている)。高度なWebアプリケーション、システムが開発され個人のIT利用度はどんどん高くなっている。対してビジネスの場ではあまり大きな変化は起きていない。 CSV一覧 未だにAccessのようなデータベースが使われ、Excelベースのデータ集計がされている。それは決して悪いことではないが、ソフトウェアの依存や再利用性を高めるのには不向きだ。そこで使ってみたいのがLatimes Table Stackerだ。 Latimes Table StackerはCSVファイルを読み込み、テーブル上に表示するソフトウェアだ。一行目がカラムに

    仕事で便利。CSVファイルを読み込んでソース/検索可能なHTMLに変換·Latimes Table Stacker MOONGIFT
  • 解析データの、グラフ化に。JavaScript製統計解析ライブラリ·jStat MOONGIFT

    jStatはJavaScriptで作られた統計解析ライブラリ。Canvasタグにデータをプロットする。 jStatはJavaScript/jQuery製のオープンソース・ソフトウェア。単純に一覧化された数値では分からない情報も、データをビジュアル化すると見えているものがある。トレンドや偏差が見えると、次の手や分析する上でのきっかけが掴めるようになる。 二つのデータを描画 統計のビジュアル化をする解析言語としてはMATLABやRが有名だ。しかしそうした言語を覚えないとデータのビジュアル化ができないのは面倒だ。Webブラウザ上でもっと手軽にグラフを描くソフトウェアとしてjStatを紹介しよう。 jStatでは多様な統計解析を行うライブラリだ。描画にCanvasを使っているのでHTML5をサポートしたモダンなWebブラウザがサポート対象になっている。またjQueryを使っている。線で描画すること

  • PDFだけじゃない。ドキュメントを画像にも変換できる仮想プリンタ·Virtual Image Printer driver MOONGIFT

    Virtual Image Printer driverは仮想プリンタとして動作し、各種画像/PDFを出力する。 Virtual Image Printer driverはWindows用のオープンソース・ソフトウェア。最近ではさすがにPDFを作成するのに手間取ることはなくなってきた。Mac OSXではデフォルトで、Windowsでも仮想プリンタ機能でPDFを作成できるものがたくさん揃っている。 PDF出力 目の前の文書を印刷するようにPDF化できればレイアウトの崩れもなく、見た目にも奇麗に仕上がってくれる。しかし必要な形式はPDFだけとは限らない。それ以外のフォーマットにも対応したVirtual Image Printer driverを紹介しよう。 Virtual Image Printer driverは他のPDF作成ソフトウェアと同じく、仮想プリンタとして動作する。PDF以外のBM

  • ビューワーを使わずにSubvesionリポジトリをグラフィカルにする·Repos Style MOONGIFT

    Repos StyleはSubversionのHTTP表示画面をXSLTを使ってグラフィカルにする。 Repos StyleはCSS/XSLTのオープンソース・ソフトウェア。Subversionは通常、独自のプロトコルを使って動作する。通常の運用であればそれでも良いが、インターネット上に配置したり利便性を高める上でHTTPで公開したいと思うはずだ。それを可能にするのがApacheのSubversionモジュールだ。 リスト これを使えばHTTPでもSubversionリポジトリにアクセスできる。クライアントアプリケーションからでは十分だが、Webブラウザからアクセスした時の表示は決して奇麗ではない。Directory Index並みだ。そこで使ってみたいのがRepos Styleだ。 Repos StyleはXSLTで作られたソフトウェアだ。そしてApacheの設定で、Subversion

  • JavaScriptでSinatra風?RESTfulをサポートしたフレームワーク·Sammy.js MOONGIFT

    Sammy.jsはJavaScriptによるRESTfulをサポートしたWebフレームワーク。 Sammy.jsはJavaScript製のオープンソース・ソフトウェア。Webアプリケーションを開発する際には、サーバサイドとクライアントサイドの二つを開発する必要がある。クライアントサイドにはJavaScriptやFlash、HTMLなどが使われているだろう。 フォームのハンドリングも可 しかしJavaScriptはどんどん高度化し、機能が増している。JavaScriptだけで解決できることは日々増えているのだ。もはやサーバサイドを必要とせず、Webアプリケーションを構築できてしまう。そのためのフレームワークがSammy.jsだ。 Sammy.jsはごく小さなWebフレームワークで、ルーティングを備えている。クライアントサイド内でRESTfulをルーティングで定義し、アクションを受け取ることが

  • この表現は凄い。ダイナミックに変化するテキストイフェクト·gui-dat MOONGIFT

    gui-datは流体のようなイフェクトを文字に対して行うJavaScriptライブラリ。 gui-datはHTML5/JavaScript製のフリーウェア(ソースコードは公開されている)。Flashや画像を使えばできることをテキストベースでやることに意義がある。テキストであれば検索もできるし、システム連動もしやすい。サイズも軽く済む場合が多い。 左上の文字がアニメーションする テキストであってもイフェクトを加えれば画像のロゴに負けないくらいのインパクトは生み出せる。むしろダイナミックにイフェクトできる分、画像よりも有利な場合だってあるはずだ。そんな可能性を感じさせるソフトウェアがgui-datだ。 gui-datは実物を見てもらえれば何がすごいのかすぐに分かるはずだ。テキストの中を丸が通り抜けていくような、水が流れているようなイフェクトがJavaScriptによって実現している。文字を変え

  • 実用的。jQuery/Flash製のマルチファイルアップローダー·Transmit MOONGIFT

    TransmitはjQuery製のFlashベースのマルチファイルアップローダー。 TransmitはjQuery/JavaScript製のオープンソース・ソフトウェア。HTML5では複数ファイルを一括アップロードすることができる。だがそのために既存サイトをHTML5に移行させるのは現実的ではないだろう。そこでよく使われるのがFlashによるマルチファイルアップローダーだ。 ファイルを指定した後の表示 最も有名なライブラリはSWFUploadではないだろうか。だが実際に使う上では色々とコツがいる。もっと手軽に実現するためのライブラリはないだろうかと考えていた所で見つけたのがTransmitになる。何と言ってもjQueryベースなのが良い。 使い方は簡単で、transmitというメソッドとアップロード先のURLを指定するだけで良い。オプションとしてクロスドメインの可否、ファイルタイプの指定、

  • テキストファイルからHTML5のプレゼンテーションを生成する·KeyDown MOONGIFT

    KeyDownはMarkdown記法を使ってテキストファイルからHTML5のプレゼンテーションを生成する。 KeyDownはRuby製のオープンソース・ソフトウェア。個人のエンジニア、デザイナーが集まる勉強会ではあまり凝ったプレゼンを見る事が少ない。むしろHTMLやKeyNoteなどを使ってカジュアルに作られる方が多いのではないだろうか。 スライド テキストファイルで作成したプレゼンテーションは検索も容易でWebとの親和性も高い。配布して見てもらうのに特別なソフトウェアも無用と言う事なしだ。とは言え作成にHTMLを使ったりしたくない、という人はKeyDownを使ってみよう。 KeyDownはプレゼンテーションファイルの記法にMarkdownを使えるソフトウェアだ。keydownコマンドを使って(オプションはgenerate)プレゼンテーションのベースを作成する。!SLIDEというのがスライ

  • ボトルネックになりやすいデータベースを高速化するキャッシュシステム·CSQL Cache MOONGIFT

    CSQL Cacheは複数のデータベースに対応したキャッシュシステム。 CSQL CacheはRDBMS用のオープンソース・ソフトウェア。Webシステムを構築する上で欠かせない存在になっているのがデータベースだ。オープンソースであればMySQLやPostgreSQL、エンタープライズであればOracleDB2などが有名だ。 データベースを使えばデータの蓄積はもちろん、詳細な条件を指定したデータの取得や更新、集計等が容易にできる。だが高性能故にアクセス頻度が多くなってボトルネックになることも多い。そんな時に考えたいのがCSQL Cacheだ。 CSQL Cacheは実際には試せていないのだが、興味深いソフトウェアなので紹介したい。CSQL Cacheはいわゆるデータベースアクセスをキャッシュするソフトウェアだ。データベースとプログラムの間に立ち、メモリ上にキャッシュするシステムだ。 JDB

    ボトルネックになりやすいデータベースを高速化するキャッシュシステム·CSQL Cache MOONGIFT
  • WebSocketを使っていない、サーバ無用なリアルタイム通信ライブラリ·Easy WebSocket MOONGIFT

    Easy WebSocketはWebSocketではなくリアルタイム通信を行うJavaScriptライブラリ。 Easy WebSocketはnode.js製のオープンソース・ソフトウェア。HTML5界隈が賑わっているが、なかなか実用的なものは出てきていない。動画共有サイトのスマートフォン向けインタフェースやWebブラウザ用のゲームがせいぜいではないだろうか。 チャット画面 やはりデスクトップ向けのブラウザで一部のブラウザしか対応していないのが問題なのだろう。HTML5に関連した技術、WebSocketは特にサーバ側の準備も必要で扱いづらいイメージがある。そんな常識を覆すソフトウェアがEeasy WebSocketだ。 Easy WebSocketは正しくはHTML5の仕様ではないがWebSocketを擬似的に再現する。まるでWebSocketではないかと思えるほど、リアルタイムで更新され

  • 全ては1枚のスライドで。聴衆を魅了するダイナミックなプレゼンテーション·DaruZen MOONGIFT

    DaruZenは一枚の台紙から枠を切り出してスライドショーを作成するソフトウェア。 DaruZenはAdobe AIR製(現状はWindows向け)のフリーウェア。ビジネスではプレゼンテーションと言えばMicrosoftPowerPointを利用する人が多い。プライベートではHTMLを使ったり、KeyNoteGoogleドキュメントを使う人も増えている。 作成画面 だがスライドを切り替えてプレゼンテーションを行う時点で印象に残りづらい。そもそも見飽きてしまっている。作り手としても、ぱらぱらめくる感覚のスライドではページごとに密度が変わってちぐはぐなものになってしまう。そこで使ってみたいのがDaruZenだ。 DaruZenは簡単に言えば巨大な一枚の紙にプレゼンテーションを作成するソフトウェアだ。文字、画像、動画を一枚の画面中に貼り込んで作成していく。そして最後に枠を当てはめてスライドを

  • データ解析のエキスパートに。データマイニングをビジュアル的に行う「Orange」 - MOONGIFT|オープンソース・ソフトウェア紹介を軸としたITエンジニア、Webデザイナー向けブログ

    Orangeは統計の設計をビジュアル的に行うことが出来るソフトウェア。 OrangeはWindows/Mac OSX/Linux用のオープンソース・ソフトウェア。マーケティングやシステムの解析を行う際にはデータを並べ替えたりグルーピングしたりしてそこから何らかの法則を見いだしていく。その結果は表であったりグラフとして現される。 設計画面 数字を眺めているだけでは分からなかった法則がビジュアル化することによって見いだせる可能性がある。そのためには様々な角度から抽出したデータを組み合わせなければならない。その補助となるソフトウェアがOrangeだ。 Orangeはデータを様々な統計的手法および解析を通じて分析し、グラフに表示するソフトウェアだ。面白いのは各解析機能がコンポーネント化されており、ドラッグアンドドロップとインプットとアウトプットを結びつけることで関連性を定義できる点だろう。 コンポ

    データ解析のエキスパートに。データマイニングをビジュアル的に行う「Orange」 - MOONGIFT|オープンソース・ソフトウェア紹介を軸としたITエンジニア、Webデザイナー向けブログ
  • これは面白い。WebSocketを使ったWebベースのターミナル·ws-io MOONGIFT

    ws-ioはWebSocketとI/Oを組み合わせることでWebベースのターミナルを実現する。 ws-ioはRuby製のオープンソース・ソフトウェア。HTML5で新しく登場した機能は幾つもあるが、その中でも特殊な位置にあるのがWebSocketではないだろうか(仕様からは切り離されているが)。これまでになかったソケット通信をどう活かすかが問題だ。 Web上でirb そのため、出ているものもチャットくらいがメインで、まだまだ模索している段階だ。そのような時期にはとにかく色々なものを作り、その中で最もマッチしていると思われるものを見極めなければならない。今回はその一つ、ws-ioを紹介しよう。 ws-ioはWebSocketとサーバのI/Oをつなげてしまうソフトウェアだ。例えばShellとつなげてしまうことで、Webブラウザ上にターミナルが立ち上がると言った具合だ。WebSocketで繋がって