タグ

ブックマーク / dev.ariel-networks.com (40)

  • Sencha Touch 2 Recipes #5: Sublime Text を使って開発する

    開発部 川野です。今回は少し趣旨を変えて、開発の Tips ではなく、Sencha Touch アプリの開発に適したエディタをご紹介させて頂こうと思います。 Sencha Touch のアプリは、規定の MVC(Model View Controller)構成でプロジェクトを作ることが想定されています。また、JavaScript ファイルを動的に読み込む機能や、Sass のコンパイルでも、規定のディレクトリ構成に従ってファイルが配置されていることを前提にしています。 こういった構成を強制されることでファイルが適切に分割されてメンテナンスし易くなるのですが、その分、ファイルの数が増えることになります。私が普段使っているエディタはバッファ間の移動が苦手なので、プロジェクトのファイルが増えてきた場合の移動が煩わしく、何かよい解決策がないか考えていました。 Sencha 社が提供しているスクリーン

  • Sublime Text 2 のプラグインを作る

    開発部 川野です。最近、Sublime Text が流行っていますよね。私の周りでも、Sublime Text を使っている、というエンジニアが増えてきたように思います。 パワフルでモダンなエディタを探している方は、ぜひ一度試してみてはいかがでしょうか。 そんな Sublime Text ですが、魅力のひとつに便利なプラグインの存在があります。記事では、Sublime Text のプラグイン開発について取り上げてみようと思います。 Hello, World! Sublime Text のプラグイン開発を始めるのは、とっても簡単です。メニューバーの Tools > New Plugin.. を選択して下さい。雛形となるプラグインのコードが記述されたバッファを作ってくれます。Sublime Text のプラグインは、Python を使って書いていきます。 このプラグインは、バッファの一番最初

  • 「Emacsのトラノマキ」連載第17回「怠惰なプログラマのためのドキュメント作成実践」(佐藤寛之) | ありえるえりあ

    ■■■怠惰なプログラマのためのドキュメント作成実践 ■■はじめに ソフトウェア開発においてドキュメントは欠くことのできない重要なものです。ドキュメントと聞くと、キングファイルに綴じられた分厚い紙束を連想してうんざりする方も多いかと思います(筆者もそうです)。一口にドキュメントと言っても多種多様ですが、その質は書き手と読み手のコミュニケーションの手段です。したがって、読む気の起きないドキュメントや誰も読まないドキュメントは来の目的を達していないことになります。 ■ドキュメントのあり方の変遷 ドキュメントのあり方は、技術の進歩や文化の変遷によって変わり続けています。身近な例として、携帯電話のマニュアルがあります。 筆者が携帯電話を使い始めたのは十数年前になりますが、機能やサービスの増加に伴ってマニュアルは年々分厚くなってきました。もちろん必要性があってのことですが、読む気が失せるのも正直な

    aki77
    aki77 2012/05/07
    org-mode
  • Sencha Touch 2 Pros and Cons

    今週、Sencha Touch 2 が正式リリースされました。公式ページもすっかり Version 2 仕様に変わっています。 昨年10月にプレビュー版がリリースされて以来、アップデートを追いかけてきたので、個人的には目新しさよりは、なにやら安堵感(?)の方が大きい印象です。。大胆な仕様変更やデグレードに泣かされたこともありましたが、これからは安心して使えますね ;) 実際のところ、Sencha Touch は非常によくできたフレームワークだと思います。正式リリースで導入に関心を持った方もいらっしゃると思うので、半年間使ってみた感想を徒然にまとめてみました。 # 内容は、個人の見解に基づくものです。 # この記事はステマではないです。私は Sencha 社との関わりは全くありません。 初めて Sencha Touch を見た時、綺麗な UI が非常に印象的で、なにやら未来の WEB を予感

  • XMPP(Jabberのプロトコル)技術メモ — ありえるえりあ

    XMPP(Jabberのプロトコル)技術メモ XMPPの一般的な説明は、IDGの記事(http://www.idg.co.jp/headline/focus20030425a.html)でも見てください。 技術的には、あのlirisさんがいくつか記事を書いています。 - その1 - じじいになった、その2 rfc3920をざっと眺めてみました。 次のような観点で読んだので、XMPPの全てを網羅しているわけではありません。 - ネットワーク的な動作イメージはどんなものか? - 構成要素技術はどんなものか? 感想 読んだ第一の感想(驚き)は、「メールと変わらない」です。 「1.セッションを張りっぱなし(注1)で、2.転送メッセージのフォーマットがXML、のメールシステム」をイメージすると、XMPPの動作イメージの70%は掴めていると思います。 もうひとつの感想は、実装先行の泥臭さを感じさせる部

    aki77
    aki77 2012/02/29
  • 「Emacsのトラノマキ」連載第16回「元Vimmerが考えるEmacsの再設計」(深町英太郎) | ありえるえりあ

    ## はじめに ### VimEmacs プログラミングを始めてからずっとVimというエディタを使っていましたが、今年の2月からEmacsを使うようになりました。 プログラマには妙なこだわりを持っている人が多いです。とくに使用エディタは論争の種になり、この2つのエディタはよく比較して語られます。 どちらの世界も体験した僕にとってこの2つのエディタは次元の異なるもののように見えます。Vimはエディタとしての機能と効率を突き詰めたものであり、一方でEmacsは拡張性豊かなLispでさまざな機能を取り込んでいこうとします。どちらが優れているというわけではありません。何しろ次元が違っているのです。二次元が三次元より劣っている、なんてことはないように、どちらを選ぶも好き好きでしょう。 しかし、この不毛な議論を価値観の違いという一般論で片付けてしまうのは少し勿体無い気がします。そこでVimmerが言

  • Apache2.4そろそろリリース...かもしれないので非同期I/Oのevent mpmの紹介

    自信のないタイトルは1年前に「2011年には流石にリリースされると思います」と書いてしまった反省からです。 リリースに関わっているわけでもないのに根拠のない予言をするものではありません。更にさかのぼること3年前には、Apache2.4カウントダウン?のタイトルで記事を書いています。もはや狼少年状態です。 Apache2.4の新機能の中で意外にフィーチャーされていませんが、個人的な注目はevent MPM(とAsynchronous support)です。いわゆる非同期I/O動作のイベントドリブンなmpmです。非同期I/Oのイベントドリブンと聞くと、nginxと同じ動作?と思う人もいるかもしれませんが、動作モデルは異なります。 Apacheを知っている人は、event mpmがバージョン2.2から存在するのを知っているかもしれません。バージョン2.2では実験的(experimental)mp

    aki77
    aki77 2012/01/13
  • クロスオリジンなXMLHttpRequest2(XHR2)と独自ヘッダの落とし穴?

    2011/5/10 以下の訂正をしました。 s/prefetch/preflight/g JavaScriptのクロスドメイン通信で微妙な話があったので書いてみます。ちなみにクライアントサイドJavaScriptの話です。下記仕様に敬意を表して以下ではクロスオリジンと書きます。一般にクロスドメイン通信と呼ばれているものと同じ意味で使います。 Cross-Origin Resource Sharing XMLHttpRequest2(XHR2) WebブラウザからXMLHttpRequest(XHR)で外部のWeb APIを直接叩こうとするとクロスオリジンの制限に当たります。制限の必要性は次の説明がわかりやすいのでリンクを張っておきます。 Same-Originポリシーの必要性 クロスオリジン制限がある中でWebブラウザから直接Web APIを叩こうと先人は知恵を絞ってきました。iframe

  • 「実践JS サーバサイドJavaScript 入門」発売

    実践JS サーバサイド JavaScript 入門 「パーフェクトJava」発売の時に章ごとの自己評価を書きました。 同じことを「実践JS サーバサイド JavaScript 入門」で書こうと思います。ただ「パーフェクトJava」の時と少し事情が異なります。「実践JS サーバサイドJavaScript 入門」は冒頭の「書の読み方」でパートごとの簡単な紹介を書いています。要は、既に公式には自己評価に近い内容をの中に吐露済みです。そんなわけでこれから書くのは裏バージョンです。 1章 サーバサイドJavaScriptの動向 なぜサーバサイドJavaScriptなのかを可能な限り客観的に書いたつもりです。もちろん、サーバサイドJavaScriptなので、なぜサーバサイドJavaScriptかの論旨に強引さがあるのは否定しません。そもそも結論ありきの話です。 を書いたことを差し引いても、J

  • 「Emacsのトラノマキ」連載第10回「auto-completeを拡張しよう」(松山智大) | ありえるえりあ

    auto-completeの基的な使い方については前回説明しました。今回はさらに踏み込んたauto-completeの拡張方法について説明したのちに、auto-completeの将来やその周辺について説明したいと思います。 auto-completeの拡張方法 ======================= 情報源の基 ———— 拡張可能と称しているソフトウェアの多くがプラグイン手法を採用しているように、auto-completeも一種のプラグイン手法によって拡張可能性を実現しています。それが情報源と呼ばれるauto-completeを拡張するためのコアの概念になります。情報源という表現はもともとanythingという拡張で使用されていたものですが(*1)、拡張性に富む形式であること、概念の再利用によって学習コストを低く保てることから、auto-completeでも同様の形式を採用しま

  • 「Emacsのトラノマキ」連載第09回「auto-completeを使おう」(松山智大) | ありえるえりあ

    auto-completeを使おう ==================== auto-completeとは —————– 今回は手前味噌ながら拙作のauto-completeという補完パッケージの紹介と使い方の説明をしたいと思います。auto-completeはEmacsの貧弱な補完インターフェースを補完する目的で2008年に開発されました。従来のEmacsの補完インターフェースというのは良くも悪くもEmacs流でした。例えばカーソル直下のLispシンボルを補完するlisp-complete-symbol(M-TAB)を実行すると、現在のウィンドウが分割されて新しいウィンドウに補完候補が一覧されます。そして、最新のEmacsでもそうなのですが、その新しいウィンドウは自分で閉じない限り永遠に存在しつづけるのです。 長年Emacsを使っている人にとってはこの挙動はむしろ自然なのかもしれません

  • 「EmacsでChangeSetベースのVCSと仲良くする」(菅原泰樹) — ありえるえりあ

    EmacsでChangeSetベースのVCSと仲良くする」(菅原泰樹) 「Emacsのトラノマキ」連載第八回「EmacsでChangeSetベースのVCSと仲良くする」 今回は前回の予告通りChangeSetベースのVCSを扱うためのあれこれを書いていきます.GitやMercurialなどの分散型VCSだけではなく,現場で使うことの多いSubversionの話もあるのでご安心を. 今回の記事にあるelispのカスタイマイズ例は筆者の会社のブログにも載せるつもりです.書き写すのが面倒な人はそちらを見るようにしてください. VCで仲良くする Emacs23からは標準で付いているVCにもいくつかChangeSet向けの機能が追加されました.diffのChangeSet対応とvc-dirです.VCを使うメリットは各種のVCSで全て同じ操作ができることと,標準で使えることです.ファイル単位での操作

    aki77
    aki77 2010/11/23
  • リージョン選択(松山智大) — ありえるえりあ

    aki77
    aki77 2010/10/23
  • Emacsの検索機能を使いこなす(菅原泰樹) — ありえるえりあ

    Emacsの検索機能を使いこなす(菅原泰樹) 「Emacsのトラノマキ」 連載第一回 「Emacsの検索機能を使いこなす」 ■■■100年のエディタの世界へようこそ(脚注) 今月からEmacsの話を中心にした連載を始めることになりました.連載は,Emacsを使って最高のエンジニアになりたいと願う読者のために書きます.Emacsやその周辺のツールを使いこなすと,日々使うコンピュータ環境を便利に拡張できます.連載は回ごとのテーマを決めて,Emacsの便利な使い方や設定方法を紹介します.Emacsは環境そのものです.そして,Emacs Lispにより拡張可能な環境です.Emacs Lispを覚えるとEmacsの可能性は更に広がります.残念ながら他のプログラミング言語に比べてEmacs Lispを敬遠する人は多いようです.ひとつの要因が,Emacs Lispのイディオムや簡易なノウハウを紹介する

    aki77
    aki77 2010/08/03
  • sqliteがバックエンドの時のTracReportを書くtips — ありえるえりあ

    sqliteがバックエンドの時のTracReportを書くtips sqliteがバックエンドの時のTracReportのSQLを書くtipsです。 主なテーブル構造(ticket) CREATE TABLE ticket ( id integer PRIMARY KEY, type text, time integer, changetime integer, component text, severity text, priority text, owner text, reporter text, cc text, version text, milestone text, status text, resolution text, summary text, description text, keywords text ); CREATE TABLE ticket_custom

    aki77
    aki77 2010/07/03
  • lispを(なるべく)書かないコマンド作成講座(菅原泰樹) — ありえるえりあ

    lispを(なるべく)書かないコマンド作成講座(菅原泰樹) 「Emacsのトラノマキ」連載第三回「lispを(なるべく)書かないコマンド作成講座」 * はじめに 今回は今までと趣向を変えて自分用のコマンドの作り方を紹介しようと思います.elispをごりごり書かないとコマンドを作れないと思っている人も多いかと思いますが,そんなことはないです.書かなくてもなんとかなるもんです.そんな訳でなるべくelispを書かずにコマンドを定義する方法を紹介していきます. elispを書かずにコマンドを定義するには以下の方法があります. - キーボードマクロを活用する - 外部プログラムを使う - Emacsに手を入れる Emacsに手を入れるのは最後の手段なので,キーボードマクロと外部プログラムを使う方法を見ていきましょう. * キーボードマクロ Emacsにはキーボードマクロというものがあります.Exce

  • Software Design連載記事「Emacsのトラノマキ」の原稿 — ありえるえりあ

    技術評論社「Software Design」の2009年5月号から連載している「Emacsのトラノマキ」の原稿を随時公開します。 Emacsの検索機能を使いこなす(菅原泰樹) 「Emacsのトラノマキ」 連載第一回 「Emacsの検索機能を使いこなす」 Emacsの検索機能を使いこなす(2)(菅原泰樹) 「Emacsのトラノマキ」 連載第二回 「Emacsの検索機能を使いこなす(2)」 第一回目の原稿(http://dev.ariel-networks.com/articles/emacs/part1)と重複があります。第一回目の原稿が長すぎて分割したためです。 lispを(なるべく)書かないコマンド作成講座(菅原泰樹) 「Emacsのトラノマキ」連載第三回「lispを(なるべく)書かないコマンド作成講座」 コピーアンドペーストを使いこなす(松山智大) 「Emacsのトラノマキ」連載第四回

    aki77
    aki77 2010/02/23
  • tcpstat: netstatより細かくネットワーク統計量を見るツール — ありえるえりあ

    Recent entries Apache2.4のリリース予定は来年(2011年)初め(あくまで予定) inoue 2010-12-23 Herokuの発音 inoue 2010-12-20 雑誌記事「ソフトウェア・テストPRESS Vol.9」の原稿公開 inoue 2010-12-18 IPA未踏のニュース inoue 2010-12-15 労基法とチキンゲーム inoue 2010-12-06 フロントエンドエンジニア inoue 2010-12-03 ASCII.technologies誌にMapReduceの記事を書きました inoue 2010-11-25 技術評論社パーフェクトシリーズ絶賛発売中 inoue 2010-11-24 雑誌連載「Emacsのトラノマキ」の原稿(part8)公開 inoue 2010-11-22 RESTの当惑 inoue 2010-11-22 「プ

  • HTTPのリダイレクトとPOSTメソッドの話 — ありえるえりあ

    Recent entries Apache2.4のリリース予定は来年(2011年)初め(あくまで予定) inoue 2010-12-23 Herokuの発音 inoue 2010-12-20 雑誌記事「ソフトウェア・テストPRESS Vol.9」の原稿公開 inoue 2010-12-18 IPA未踏のニュース inoue 2010-12-15 労基法とチキンゲーム inoue 2010-12-06 フロントエンドエンジニア inoue 2010-12-03 ASCII.technologies誌にMapReduceの記事を書きました inoue 2010-11-25 技術評論社パーフェクトシリーズ絶賛発売中 inoue 2010-11-24 雑誌連載「Emacsのトラノマキ」の原稿(part8)公開 inoue 2010-11-22 RESTの当惑 inoue 2010-11-22 「プ

    aki77
    aki77 2009/12/27
  • Emacs Lisp デバッグ — ありえるえりあ

    elisp のデバッグ方法について以下の3つの方法を説明します. - printf デバッグ - backtrace - edebug ■■■ printf デバッグ elisp で printf デバッグを行なうには message 関数を使います.message 関数の結果は *Messages* バッファに出力されます. 例えば以下の<リスト1>のように使います. ---------------- <リスト1> message 関数を使った printf デバッグ (defun message-sample () (let (list) (dotimes (i 10) (push i list) (message "%s" list)))) ---------------- 実行中に目視したい場合は sit-for と message の組み合わせか y-or-n-p を使うのが良い