タグ

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

  • a2hs.js - iOSでもAdd to Home Screen MOONGIFT

    PWAに注目が集まっていますが、Androidに比べてiOSの対応は今なお微妙です。アプリケーションのようにインストールできるのですが、その手順も分かりづらく、インストールを促すバナーも出せません。これではiOS向けにはなかなか普及しないでしょう。 それを若干でも改善できるのがa2hs.jsです。iOS向けにユーザビリティを改善してくれるライブラリです。 a2hs.jsの使い方 下に専用のバナーが表示されます。 後の手順はPWAとしてインストールするのと同じです。 a2hs.jsは昔あったホーム画面に追加するのと同じような役割を担います。ただ、PWAとして若干スタイリッシュになっています。現在は一度でもタップしてしまうとlocalStorageに記録されて、二度と表示されません。そこをカスタマイズすれば、AndroidのA2HS(Add to Home Screen)の代わりに使えそうです

    a2hs.js - iOSでもAdd to Home Screen MOONGIFT
  • EarlGrey - Google製のUIテスト自動化フレームワーク

    iOSのテスト、ちゃんと行っているでしょうか。もちろん人力ではなく、自動化のテストです。ユニットテストは書きやすいですが、UIが絡んでくるとなかなかテストが難しいケースもあり、十分に行われていない婆もあるようです。 そこで使ってみたいのがEarlGrey、Google製のiOS自動テストフレームワークです。 EarlGreyの使い方 EarlGreyの特徴はネットワークや操作を伴う中での同期した動作です。 EarlGreyのテストを実行したところです。スクロールなどをしつつ、テストが行われています。 デフォルトでは自動的に同期をはかってくれるとのことですが、自分のタイミングにカスタムすることもできるとのことです。XCTestと連携できるので、これまでのテストコードと一緒に活用できるでしょう。 EarlGreyはiOS用、Apache License 2.0のオープンソース・ソフトウェアです

    EarlGrey - Google製のUIテスト自動化フレームワーク
  • Centrifugo - Go製のリアルタイムメッセージングサーバ

    MOONGIFTはオープンソース・ソフトウェアを紹介するブログです。2021年07月16日で更新停止しました チャットや通知など、Webブラウザなどとリアルタイムでコミュニケーションしたいと考える場面はたくさんあります。しかし多くのクライアントとリアルタイム通信するための基盤を作るのはとても大変です。 そこで使ってみたいのがCentrifugoです。Goで作られたWebSocketを使ったリアルタイムタイムメッセージングサーバです。 Centrifugoの使い方 まずシステムにログインします。 ダッシュボードです。ノードは一つ動作しています。 メッセージを飛ばします。メッセージはJSON形式で送信します。 受信側ではJSONフォーマットで受け取ります。 元々はCentrifugeという名前で、それをGoで書き換えることでCentrifugoとなったようです。ライブラリはPython/PHP

    Centrifugo - Go製のリアルタイムメッセージングサーバ
  • StubOnWeb - 自由に設計できるWeb APIスタブサーバ

    最近はAPIファーストと言われる言葉が聞かれるようになっています。スマートフォンアプリが隆盛になり、それに合わせてまずWeb APIを優先して開発していこうという考え方です。 しかしWeb APIがすぐに開発できるわけでもありません。そこで使ってみたいのが仮の値を返してくれるサーバです。今回はその一つ、StubOnWebを紹介します。 StubOnWebの使い方 StubOnWebのデモサイトです。 レスポンスに関する設計を行います。遅延する秒数も設定できます。 そしてアクセスすると設計した通りの値が返ってきます。 StubOnWebはURLが自動生成になるので決め打ちでクライアントを作るのを防げるかも知れません。自然と使っているWeb API一覧もできます。ローカルで立てればオフラインでも使えるのでサーバへ負荷を考えずに済みますし、テストもしやすくなるでしょう。 StubOnWebはEl

    StubOnWeb - 自由に設計できるWeb APIスタブサーバ
  • Facebook製。プログラマー向けのプロジェクト管理·Phabricator MOONGIFT

    PhabricatorはFacebookが開発しているプロジェクト管理です。ソースコードレビュー、バグトラッキングなど開発者フレンドリーな機能が数多くあります。 企業においてGitHubをソースコードリポジトリ/プロジェクト管理に使っているケースも増えてきていますが、大規模な企業では難しいケースも多いでしょう。そこで紹介したいのがFacebookで開発されているPhabricatorです。 最初にログインを求められます。 ついでユーザ名を入力します。 ダッシュボードです。 チケットの詳細画面です。 ソースコードレビュー。 もちろんコードハイライター付き。 リポジトリビューワー。 コミットログ。 画像付きでディスカッションもできます。 Wiki。 IRCのチャンネルリスト。 PhabricatorではGit/Subversion/Mercurialをサポートしています。また、OSはWindo

    Facebook製。プログラマー向けのプロジェクト管理·Phabricator MOONGIFT
  • GithubScouter·あなたのGitHub戦闘力は? MOONGIFT

    ソーシャルの活動はその蓄積をビジュアル化することによって精神的な報酬を得られます。金銭的な報酬ではない分、より高いエンゲージメントが実現できるようになります。 GitHubで積極的に活動している方に使ってみて欲しいのがGithubScouterです。GitHubでの活動を戦闘力という形にしてくれるスカウターです。 GithubScouterの使い方 インストールはRubygemsで簡単です。 $ gem install github_scouter 後はGitHubのユーザ名を指定するだけです。 $ github_scouter moongift 戦闘力: 156 攻撃力: 112 知力: 42 すばやさ: 2 # repositories (50) 1. Ruby 13 2. JavaScript 13 3. Python 4 4. CoffeeScript 2 5. Objective

    GithubScouter·あなたのGitHub戦闘力は? MOONGIFT
  • Python向けスクレイピングライブラリ·Scrapy MOONGIFT

    ScrapyPython製のオープンソース・ソフトウェア。Webサービスから必要な情報を抜き出したり、自動操作をしたりと未だに利用されているのがスクレイピングと呼ばれる技術だ。求人、不動産、Eコマース…様々なサイトの情報を機械的に収集し、データベースに蓄積している。 Pythonで外部サイトからデータを収集する際に RubyでWebシステムを開発している場合、HpricotやNokogiriを使っていたが、Pythonによる開発の場合はどうしたら良いだろう。そこで使えるのがScrapyだ。ScrapyPythonで開発されたスクレイピングとクローリング用フレームワークだ。 ScrapyではWebサイトにアクセスしてデータを取得し、そのデータからXPathを使ってコンテンツにアクセスできる。オブジェクト指向に従って、柔軟に操作ができるのが便利だ。スクレイピングしたデータを使ってWebサイ

    Python向けスクレイピングライブラリ·Scrapy MOONGIFT
  • Webアプリケーションの画面をさくさく作ろう。UIフレームワーク特集 MOONGIFT

    今回はWebアプリケーションの画面作成に関する話です。かつて業務システムというのはエンジニア自身が画面を作ってロジックを実装して提供していました。UIがただコンポーネントを貼付ける程度だったからです。 しかしWebアプリケーションの時代になって、UIの制作が難しくなってきています。デザインの自由度が高いためです。しかし今後さらにWebアプリケーションが活用されていく中ではエンジニアもそれなりの画面を素早く開発できるようになっていかないといけない時代になっています。 そこで今回はUIフレームワーク、多彩なコンポーネントを備えたデザインフレームワークをまとめて紹介します。 iPhone/Android/Windows Phone対応のモバイルWebアプリフレームワーク「ChocolateChip」 モバイルWebサイトをネイティブ風にするUIライブラリは昔から多数存在しますが、今回はその最新版

    Webアプリケーションの画面をさくさく作ろう。UIフレームワーク特集 MOONGIFT
  • Zabbix Japanに聞いたオープンソース×ビジネスを成功させるための3つの基本 MOONGIFT

    オープンソースとビジネス、この二つのキーワードは非常に相性が悪いイメージがあります。オープンソース・ソフトウェアを使ってクライアント企業向けにソフトウェアを開発したり、自社の運用を手助けしているケースはありますが、自社でオープンソース・ソフトウェアを開発し、それを収益源としているケースは稀ではないでしょうか。 しかしもしそれが実現できたとすれば、これほどまでプログラマーにとって幸せなことはないでしょう。今回、その好例となりえるZabbix(オープンソースの統合監視ソフトウェア)を開発、提供しているZabbix Japan代表の寺島氏にその秘訣を伺いました。 Zabbix Japan代表 寺島氏 趣味からはじまってビジネス化するまでに7年! — オープンソース×ビジネスが成り立つためには? Zabbixの開発は98年くらいから個人プロジェクトして開始されています。そこから7年以上かけて継続的

    Zabbix Japanに聞いたオープンソース×ビジネスを成功させるための3つの基本 MOONGIFT
  • ownCloud·クラウドが使えない職場、なら自前で立てるのはいかが? MOONGIFT

    うお、もの凄い勢いで進化しています! 今はクラウド全盛の時代です。Dropboxでローカルデータをクラウド上に保存し、Google Appsでメールやスケジュールを管理し、さらにiCloudでスマートフォンやタブレットのデータをバックアップする。そんな中心配になるのは自分のデータがちゃんとセキュアに保存されているのかということでしょう。 企業においてはセキュリティ基準からクラウドサービスを安易に導入できないケースもあります。そこで使ってみたいのが自前で立てられるクラウドサーバ、ownCloudです。 元々ファイルストレージがメイン機能だった覚えがあるのですがバージョン6になって実に多彩な機能を備えるようになっています。順番に見ていきましょう。 ファイル管理 まずはファイル管理。ここではローカルのファイルを同期してクラウド上からの閲覧、ダウンロードできるようになっています。 写真はownCl

    ownCloud·クラウドが使えない職場、なら自前で立てるのはいかが? MOONGIFT
  • GitHubでの開発をもっと便利にしてくれるコマンド·Node GH MOONGIFT

    Node GHはnode.js/JavaScript製、BSD Licenseのオープンソース・ソフトウェアです。 オープンソースをよく使うプログラマーであればGitHubを便利に使っているのではないでしょうか。そんな方にお勧めしたいのがNode GHです。GitHubAPIを使ってより便利なコマンドを提供してくれるソフトウェアです。 インストールします。npmを使ってできるので簡単です。 最初に認証が求められます。IDとパスワードを入力します。 GitHubのリポジトリに移動して操作します。isコマンドは課題をリストアップする機能です。 isの後に文字をつけることで新しい課題を登録できます。 そして課題を一覧で確認します。この時の番号がコメントの時に使います。 さらにその課題番号に対して--commentを付ければコメントもできます。 ntでアクティビティを取れます。 その他、Node

    GitHubでの開発をもっと便利にしてくれるコマンド·Node GH MOONGIFT
  • iOSの開発効率化に。高機能デバッガー·SuperDB MOONGIFT

    SuperDBはiOS/Mac OSX用のオープンソース・ソフトウェア(BSD License)です。 iOSのデバッグや、ちょっとした調整をしてはコンパイルし直して確認する…といった開発で苦労した覚えはないでしょうか。そこで今回はiOSアプリのインタラクティブなデバッガーSuperDBを紹介します。 Mac OSXアプリをコンパイルすると、iOSシミュレータで立ち上がっているアプリ名が表示されます。ダブルクリックして接続します。 そうするとコンソールが開くので、例えばselfと打ちます。 こちらはiOSアプリの画面です。 角に丸みをつけました。これはコンソールから実行するのみで、iOSアプリは立ち上げたままになっています。 この44という部分が丸み指定場所で、マウスでドラッグして数値を変更できるのがユニークです。 SuperDBはiOSアプリの操作をF-Scriptのようなシンタックスで

    iOSの開発効率化に。高機能デバッガー·SuperDB MOONGIFT
  • Google App Engine上でサーバサイドJavaScript·App Engine JavaScript SDK MOONGIFT

    App Engine JavaScript SDKはGoogle App Engine用のオープンソース・ソフトウェア。サーバサイドで動作させるプログラミング言語は多数あるが、最近注目を集めているのがサーバサイドjavaScriptだ。クライアントとサーバの両方を同じ言語で作れるのが利点だ。 デモのブログアプリ だが注目は集めつつも、実際に利用しているケースはまだ多くない。サーバ側の設定も必要なので、手間に感じられてしまうのだろう。そこでサーバの用意がいらない、Google App Engine上で動作させるのがApp Engine JavaScript SDKだ。 App Engine JavaScript SDKはその名の通り、Google App Engine上でサーバサイドJavaScriptを実現するSDKだ。ブログシステムのサンプルもあるので、その面白さがうかがえるはずだ。Da

    Google App Engine上でサーバサイドJavaScript·App Engine JavaScript SDK MOONGIFT
  • 社内で立てられるGistサーバ·Gistub MOONGIFT

    GistubはGitHubの提供するGistのクローンです。 GitHubの提供するスニペットサービスのGist。便利に使っている人も多いと思いますが、何となく会社で使うのは控えてしまっている…そんな人も多いでしょう。そこで社内で立てられるGistクローンGistubを使ってみましょう。 パブリックなGist一覧。 ソースコードハイライト付きです。 編集画面です。 編集すると履歴がつきます。 新しいGistの追加画面。 プライベートなGistも作成できます。 Gistubはエディター画面こそ単純なテキストボックスで、ハイライトする言語指定ができないものの他はGistと変わらず普通に使えるようになっています。社内で立ててチームで使ったりするのに良いのではないでしょうか。 GistubはRuby/Ruby on Rails製、MIT Licenseのオープンソース・ソフトウェアです。 MOON

    社内で立てられるGistサーバ·Gistub MOONGIFT
  • プログラマーなら黙ってこれ。ターミナルベースのスライド·TermNote MOONGIFT

    TermNoteはターミナルで動作するスライドソフトウェアです。 プログラマーであればみんな使うターミナル。ということでプレゼンテーションを行うためのスライドまでターミナル上で実行してしまうTermNoteを紹介します。 立ち上げました。 スライドはj/kキーで切り替えます。 リスト表示。 コード表示にも対応。 スライドの内容はこんな感じです。 TermNoteRubyのコードでスライドを作るか、YAMLで作成できます。YAML上でテキストやリストといった指定をしてスライドのテンプレートを切り替えたり、コンソールを指定してirbを起動することもできます。まさにプログラマーのためのスライドと言えるのではないでしょうか。 TermNoteRuby製のオープンソース・ソフトウェア(MIT License)です。 MOONGIFTはこう見る 最近のスライド作成ソフトウェアは見た目の派手なスライ

    プログラマーなら黙ってこれ。ターミナルベースのスライド·TermNote MOONGIFT
  • ここまでリアルに。HTML5製のビリヤードゲーム·Agent 008 Ball MOONGIFT

    Agent 008 BallはHTML5製の8ボールソフトウェアです。 HTML5でどこまでのゲームが作れるか、それを知りたい人はAgent 008 Ballを触ってみましょう。ついにここまできたか…と思ってしまうレベルのビリヤードゲームです。 トップページです。 ゲームはエイトボールです。 サポートのラインが表示されるので誰でもすぐに打てるようになります。 時間制限もあります。 終わるとスコアが表示されます。 Agent 008 Ballではマウスの動きでキューの向きを変更し、ドラッグで打ち出す強さを設定します。使い方はシンプルながら、見た目がさながら物のビリヤードのようでついつい熱中してしまうゲームです。 Agent 008 BallはHTML5/JavaScript製のオープンソース・ソフトウェア(MIT License)です。 MOONGIFTはこう見る HTML5でゲームが作れ

    ここまでリアルに。HTML5製のビリヤードゲーム·Agent 008 Ball MOONGIFT
  • Postfixの管理に使える仮想メールアドレス管理ソフトウェア·ViMbAdmin MOONGIFT

    ViMbAdminはメールアドレス管理ソフトウェアです。複数ドメインに対応しています。 メールアドレスの管理というのは意外と煩雑になりがちです。特に転送メールなどで入れ子になっていたりすると非常に面倒な管理になるでしょう。そこでWebブラウザ上で分かりやすい管理ができるViMbAdminを使ってみましょう。 ログインします。 ドメイン一覧です。 メールボックス一覧です。 パスワードの変更もできます。 エイリアスの一覧です。 作業したログです。 管理者アカウント一覧。 ViMbAdminは複数ドメインのメールアドレスを一元管理できます。PostfixやSendmailに対応しており、設定ファイルを使った煩雑な管理から解放されるはずです。サーバのセットアップさえしてしまえば、運用は楽になるのではないでしょうか。 ViMbAdminはPHP製、GPL v3のオープンソース・ソフトウェアです。 M

  • ターミナルの画面を使ったライブコーディング·ScreenX MOONGIFT

    ScreenXはターミナルの画面を多数のクライアントに配信するライブコーディングサポートソフトウェアです。 勉強会やセミナーなどで実際の画面をデモする時があります。大きなモニターに映すのも良いですが、各個人のPCに表示するのも便利です。リモートデスクトップのような仕組みはGUI向けにはあるものの、CUI向けにはなかったように思います。それを可能にするのがScreenXです。 接続しました。Webブラウザのウィンドウですが、ターミナルのようです。 チャットの画面。薄くフローティング表示されます。 ターミナルから打ったコマンドがそのまま再現されています。 Emacsだって立ち上がります。 日語も扱えます。Emacsを閉じた後の表示がちょっと違うかも? ScreenXはscreenを使ってWebブラウザからターミナルの出力内容を確認できるようにします。そしてその場でチャットをしながら意見を交わ

  • Webブラウザ上でreStructuredText記法で文書作成·Online reStructuredText editor MOONGIFT

    Online reStructuredText editorはWebブラウザ上でreStructuredTextを記述できるソフトウェアです。 最近は様々なテキスト記法がありますが、その一つがreStructuredTextです。記法にまだあまり慣れていない、そんな方でも気軽に記述できるようになるのがOnline reStructuredText editorです。 メイン画面です。左がエディター、右が変換された後の文書が表示されます。 サンプルの記述です。ツールバー部分のボタンを使うと記法が自動で挿入されます。 リアルタイムのコードチェックも入っています。 日語も問題なく扱えます。 リストを使ってみました。リストの自動挿入などはありません。 Natureに切り替えるとCSSを当てた見栄えになります。 対応しているマークアップは見出しや文字装飾、リスト、画像やリンクの挿入など多数あります

    Webブラウザ上でreStructuredText記法で文書作成·Online reStructuredText editor MOONGIFT
  • 国際化対応のWebベースの会計システム·phpRechnung MOONGIFT

    phpRechnungはWebベースの請求書出力、入金チェックが可能な会計システム。 [/s2If] phpRechnungはPHP製のオープンソース・ソフトウェア。月に数百枚の帳票を出力するならばシステムを構築しようと言う気にもなるが、数枚程度の場合は何となくシステム化が遅れてしまう。システム開発はそれが顕著で、システム開発会社の基幹システムが手作業だったなんて珍しいものでもない。 請求書リスト 一から開発をしなくとも、既にあるソフトウェアを導入すれば自社システムの構築が進むのではないだろうか。日語圏に対応している訳ではないが、多少手直しすれば使えそうなのがphpRechnungだ。 phpRechnungは会計システムとなっているが、そこまで大型のものではなく請求書の出力や請求先の管理、入金チェック、レポート出力といった機能が備わっている程度だ。とは言えその後の流れは一般的な会計シス