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

  • DataCamp Light - 自分のサイトで使えるインタラクティブな学習プラットフォーム MOONGIFT

    プログラミングはコンピュータさえあればすぐにはじめられます。しかし、環境のセットアップであったり、チュートリアルなどもない状態では最初の一歩を踏み出すのがとても大変です。 そこで使ってみたいのがDataCamp Lightです。自分のWebサイトをインタラクティブな学習プラットフォームにできるソフトウェアです。 DataCamp Lightの使い方 DataCamp Lightはサイト上に埋め込んで使います。 今のところPythonまたはRに対応しているようです。実行すると右側に結果が表示されます。 期待した記述がされているかどうかのチェックもできます。 間違っている場合はどう書くべきかを指導してくれます。 DataCamp Lightを使えばWeb上でプログラミング言語を自己学習できるプラットフォームが作れるでしょう。書籍などを読むだけでない、より自分で書いて結果を実感できる学習環境にな

    DataCamp Light - 自分のサイトで使えるインタラクティブな学習プラットフォーム MOONGIFT
  • CodeWorld – ゲームやアニメーションを通じてHaskellを学ぼう

    一番最初に学んだプログラミング言語は何でしょうか。筆者は恐らくBASICだったように思います。最初は数行のコードを書いて実行して結果を見て…というのを繰り返していました。プログラミングはやはり何度も実行して繰り返して覚えるのが基です。 Googleの開発者がHaskellを学習するために用意した環境がCodeWorldです。特にゲーム、アニメーション、ドローなどを学習するためのソフトウェアとなっています。 CodeWorldの使い方 CodeWorldは良くあるオンラインプログラミング学習サービスのようにHaskellを実行してその結果をシェアできるようになっています。単純にHTMLや文字列を出すのではなく、ゲームやアニメーションに特化しているのが面白いですね。 CodeWorldはHaskell製のオープンソース・ソフトウェア(Apache License 2.0)です。 CodeWo

    CodeWorld – ゲームやアニメーションを通じてHaskellを学ぼう
  • ついにここまで。PHP製のWeb IDE·Codiad MOONGIFT

    CodiadはPHP製のWeb IDEです。 Webブラウザベースで開発を行う時代が格化しています。サーバのファイルを直接触るのではなく、ローカルの開発環境として考えてみると面白そうです。今回はCodiadを紹介します。 セットアップです。PHPファイルを配置するだけです。 先ほど決めたID/パスワードでログインします。 ログインしました。左上がファイルブラウザ、左下がプロジェクト一覧、そして右側がファイルのエディター部になります。 PHPのコードを編集しています。ハイライト処理も拡張子によって自動で適用されます。 HTMLは開くタグを書くと自動的に閉じタグが追加される便利機能もあります。 ファイルの拡張子によって自動的にアイコンが付加されます。 スプリットビュー。 設定は右側に隠れています。 設定項目。テーマ機能もあります。 対応拡張子一覧。結構多いです。 CodiadはPHPで作られ

    ついにここまで。PHP製のWeb IDE·Codiad MOONGIFT
  • ステップバイステップでより深いJavaScriptの学習ができる·new2JS MOONGIFT

    new2JSはWebベースのJavaScriptレクチャーソフトウェアです。 プログラミングは実際に手を動かしてみないと覚えられるものではありません。それをコードを使ってレクチャーしてくれるのがnew2JSです。JavaScriptを覚えたい方におすすめです。 最初のページです。まずRunボタンを押します。 説明文と、その下に実行結果が表示されます。後はnextボタンを押していきます。 数値の型が出ています。 文字列、真偽値の型など。 入力を行った判定もできます。 他にも色々なレクチャーが受けられます。 new2JSはJavaScriptを一歩一歩覚えていくというよりもある程度JavaScriptを把握しているユーザがより深くJavaScriptを習得していくのに便利なサービスと言えます。なぜこんな仕様なのか、そう思ってしまう所もきっとあるでしょう。 new2JSはJavaScript製の

    ステップバイステップでより深いJavaScriptの学習ができる·new2JS MOONGIFT
  • 元Google製。Webベースでローカルファイルを編集するコラボレーションIDE·Collide MOONGIFT

    CollideはWebベースのコラボレーションIDEです。 XPなどの開発プラクティスの一つにあるのがペアプログラミングです。二人が並ぶことでOJT的に指導したり、自分の知らなかった機能に出会えたりします。そんなプログラマー同士のコラボレーションをリモートでも可能にするのがCollideです。 最初にユーザ名を入力します。 メイン画面です。左にファイル一覧があります。collideを起動したときのパス以下にあるファイルが表示されます。 ファイルを開きました。右側がエディターエリアになります。編集はリアルタイムに反映されます。 ハイライター機能もあります。 検索やファイルの切り替えもできます。 検索するとハイライトされます。 Google Chromeを使うとデバッグもできるようです。 Collideは元々Google Collideという名称でしたが、現在はフォークして単にCollideと

  • 解析データの、グラフ化に。JavaScript製統計解析ライブラリ·jStat MOONGIFT

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

  • 勉強会やセミナーに。動画と別コンテンツを連携させるHTML5動画フレームワーク·Popcorn.js MOONGIFT

    Popcorn.jsは動画と別なコンテンツを連携させるHTML5ビデオフレームワーク。 Popcorn.jsはHTML5/JavaScript製のオープンソース・ソフトウェア。Webサービスの説明動画や、勉強会の内容など動画をWebサイトに掲載するケースが増えている。そんな時には動画以外の資料も一緒に掲載したいと思うはずだ。 デモ ニコニコ動画は動画とコメントと一緒に閲覧できるが、同じように動画と別なコンテンツを一緒に掲載したり連携させたいと思う事はないだろうか。それを実現するライブラリとしてPopcorn.jsを紹介しよう。 Popcorn.jsはHTML5動画フレームワークで、動画と任意のコンテンツを連携させるライブラリだ。例えば動画の横にスライドを載せ、指定時間になったら切り替えると言った具合だ。手で時間を進めたりした場合もコンテンツが切り替わってくれる。 外部の様々な情報を表示して

  • node.jsを勉強したい方。node.jsで作られたTwitterクローン·Nodrr MOONGIFT

    Nodrrはnode.jsで作られたTwitterクローン。フォロー/フォロワー等の機能はなくただツイートするのみ。 Nodrrはnode.js製のフリーウェア(ソースコードは公開されている)。かつてWikiクローンが多数開発された。ページがあれば表示する、なければ作成するといった分かりやすい仕様でかつ面白いコンセプトであったので皆こぞって作成した。 ツイート一覧 オープンソースのWikiエンジンはそのプログラミング言語を勉強する上で多いに役立ったはずだ。しかしそれも数年前のことで、今はトレンドが変わっている。それはマイクロブログでありTwitterクローンではないだろうか。node.jsで作られたNodrrを紹介しよう。 NodrrはTwitterクローンではあるが、認証はFacebookを使っている。その認証を経た後でユーザ名を設定する。フォロー/フォロワーという概念はなく、全員共通の

  • 作ってみる?多様なゲームジャンルに対応したJavaScript製ゲームエンジン·Crafty MOONGIFT

    Craftyは2Dアクション、落ちものゲームRPGに使えるJavaScriptゲームフレームワーク。 CraftyはJavaScript製のオープンソース・ソフトウェア。ソーシャルゲームの人気は相変わらず高い。ソーシャルではないがAngry Birdsのように各種スマートフォン向けに人気あるゲームを提供しているタイトルも存在する。 Connect 4 ちょっとした時間をつぶせるカジュアルなゲームが好まれる傾向にある。そしてそういうゲームはインストールの手間もなく使えるのが望ましい。つまりWebブラウザだけで遊べるのが良いのだ。そこで使ってみたいのがCraftyだ。 CraftyはJavaScript用のゲームエンジンだ。2Dのゲーム向けになっている。ジャンプや落ちものゲームのような重力の影響を受けるもの、アステロイドのようなシューティング、RPG、4つの玉を揃えると勝つパズルゲーム、2

  • 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をルーティングで定義し、アクションを受け取ることが

  • ユニーク。○日で作るWebシステムといった説明で使えそうな·Code-slide MOONGIFT

    Code-slideはGitを使って順番に進めるステップを一つずつ管理するソフトウェア。 Code-slideはRuby製のオープンソース・ソフトウェア。書籍などで、七日間で一つのシステムを組み上げると言った内容で書かれている時がある。一日目はセットアップ、二日目は最初の画面を作る所まで…といった具合だ。そして七日目で完成する。 オプション 同様にセミナー等でみんなと一緒にステップを踏みつつシステムを作ったりする。どちらも途中の状態が大事だ。そのためフォルダに分けて管理したりするケースが多い。だがCode-slideを使えば管理がとてもシンプルになるのだ。 Code-slideはプログラミングをステップを踏みつつ説明していく時に使えるソフトウェアだ。仕組みはとても簡単で、コードの管理にGitを使う。そして最初のスライド(一日目)のbranchを作り、コードを書いていく。同様に二日目、三日目

  • 必見!オープンソース・ソフトウェアの凄さを実感できるリポジトリビジュアライザ·code_swarm MOONGIFT

    code_swarmはオープンソース・ソフトウェアのリポジトリをビジュアル化するソフトウェア。 code_swarmはJava製のオープンソース・ソフトウェア。オープンソース・プロジェクトの面白い所は、そのソースコード自体がコンテンツになるということだ。コードのある行に対してコメントしたり、コーディング体系について疑問を呈したりする。そうしたコミュニティが面白い。 Rubyをビジュアル化 そうしたコミュニケーションの結果がリポジトリに詰まっている。10年以上も開発が続けられているプロジェクトは、その苦労も喜びも全てがリポジトリの中にある。そんなオープンソースのリポジトリを輝かせてくれるのがcode_swarmだ。 code_swarmはリポジトリビジュアル化ソフトウェアとでも言うべきソフトウェアだ。外部のリポジトリを取り込み、それを動画にするのだ。日ごとにデータが流れていき、コミットしたユ

  • コードを書く、それ自体をコンテンツにするライブコーディングを実現する·Live coder MOONGIFT

    Live coderはWebブラウザ上でコーディングし、それを他のユーザが閲覧、チャットできるソフトウェア。 Live coderはnode.js製のフリーウェア(ソースコードは公開されている)。優秀な人が書いているコードを後ろから見るのは面白い。みるみる間にシステムが作られていくのは痛快でもある。イベントや勉強会で実際にコードを書いて動きを見せつつステップアップしていくのは人気がある。 Web上でコーディング コードを書きつつ、そこに人のツッコミを受けたり、試行錯誤しながら作っていくのは創造的で面白いスタイルだ。それを実現するのがライブコーディングであり、そのためのシステムがLive coderになる。 Live coderはnode.jsとWebSocketを組み合わせてコーディングされていく様子がリアルタイムに見られるようになっている。コーダーは一人で、コードハイライト処理されたエリ

  • これは面白い。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で繋がって

  • スマートフォン向けサイトのデバッグに。JavaScriptを使ってiPhoneと対話する「iPhone JS Console」

    iPhone JS ConsoleはWebSocketを使って母艦とiPhone間でJavaScriptを対話的に利用するソフトウェア。 [/s2If] iPhone JS ConsoleはWebベース、iPhone用のフリーウェア(ソースコードは公開されている)。スマートフォン向けのサービス提供を考える上で、ネイティブアプリにするかWebベースにするかは重要な決断だ。もちろんどちらかに限る必要はないが、どちらかの開発が優先されるものだろう。 iPhone側 もしWebベースにするならばエミュレータを使って開発するだろうが、最終的には実機で確認する必要が出てくるだろう。その時に問題になるのがデバッグ用の機能が殆ど用意されていないことだ。そこで使えそうなのがiPhone JS Consoleになる。 iPhone JS ConsoleはiPhoneから実機に接続して、コンソールを利用するとい

  • JavaScriptによる開発が大規模化したらドキュメントを生成「Dox」 | MOONGIFT | オープンソース・ソフトウェア紹介を中心としたITエンジニア/Webデザイナー向けブログ

    DoxはJSDocに対応したソースファイルからドキュメントを生成するライブラリ。 DoxはJavaScript/node.js製のオープンソース・ソフトウェア。JavaScriptがWebアプリケーション構築の際のメイン言語として使われるようになっている。その結果起こっているのがJavaScriptのコードの大規模化だ。 トップページ 大規模になれば当然、複数人での開発体制になる。そうなれば情報の共有やコーディングスタイルの統一などが必須になる。その一端を担うのがAPIドキュメントだ。ソースコードからドキュメントを生成するソフトウェアがDoxだ。 DoxはJSDocもサポートしたソフトウェアで、コンソールからコマンドを実行するだけでHTMLベースのドキュメントを生成する。ドキュメントにはMarkdownの記法が利用できる。システムとしてはnode.jsを使っており、npmを使ってインストー

  • JavaScript製のOAuthライブラリ·jsOAuth MOONGIFT

    jsOAuthはJavaScript製のOAuthライブラリ。 [/s2If] jsOAuthはJavaScript製のオープンソース・ソフトウェア。今ではWeb APIを公開しているサービスは珍しくない。そして従来は配信系ばかりだったが、今ではWeb APIを通じたデータ登録や更新も可能になっている。そんな時の認証の仕組みに使われているのがOAuthだ。 テスト用コード(ここままでは動かないが…) OAuthはTwitterで最も知られるようになったが、元々はFlickrGoogle、Facebookなどでも使われている機能ベースの認証技術だ。そしてそれをJavaScriptベースで実現したのがjsOAuthになる。 jsOAuthはJavaScriptによる実装なので、ソースコードが見えてしまう。OAuthではシークレットキーを使うので、それが丸見えというのは考えものだ。だがWebブ

  • ソースコードを読む!·sc2epub MOONGIFT

    sc2epubはRuby製のフリーウェア(ソースコードは公開されている)。ソースコードとは何だろう。目的を実行するために書かれたものという人もいるだろう。だが、そこには書いた人の思想が反映されている。ペアプログラミングをしていると「ああ、こう考えているのか」と思わされることも多い。 コマンドで実行 そんな訳でソースコードは読んでみると実に面白い。それが有名なオープンソース・ソフトウェアであれば特にだ。空いた時間を使ってソースコードを読んでみたい、そう思う方にお勧めなのがsc2epubだ。 sc2epubはソースコードをPREタグで囲んでXHTMLに変換し、さらに目次などの項目を追加する。そしてMakefileを生成し、zipファイルやmobiファイル(Kindle用の電子書籍フォーマット)を作成するのを補助してくれる。特に言語は問わず、存在するファイル全体に適用されるようだ。 ソースコード

  • 飛べ、ペンギン!·The Flying Penguin MOONGIFT

    The Flying PenguinはWindows/Linux用のオープンソース・ソフトウェア。Linuxと言えばペンギン(タックス)だ。そのためペンギンをモチーフにしたゲームが数多い。The Flying Penguinもその一つになる。たまの時間つぶしにちょうどいいゲームだ。 ペンギンを餌を取りつつ飛ばし続ける ルールは簡単だ。スペースキーと左右キーしか使わない。クリアという概念はないようなので、最高記録を目指すのみだ。良い記録が出たらツイートしても良いだろう。ルールは簡単で、誰でもすぐに始められる。 The Flying Penguinがはじまるとペンギンが横たわっている。スペースを押すと加速していき、加速がじゅうぶんになると空を飛ぶ。後は左右キーを押して高度を調整する。ペンギンの前には矢印があるが、その先にはエネルギー源となる魚がいる。 記録は1,890m 常時加速しているとエネ

    飛べ、ペンギン!·The Flying Penguin MOONGIFT
  • iPhone向け最適化Webサイトを構築するjQueryライブラリ·jQuery iPhone UI MOONGIFT

    jQuery iPhone UIHTML/JavaScript製のオープンソース・ソフトウェア。iPhone用のWebサイトを構築するニーズが増えてきている。既に幾つかテンプレートもリリースされており、それらを使えば最適化されたインタフェースのサイトが作りやすくなる。 アイコンリスト そうしたライブラリを使う時に重要なのが、どれくらいの機能に対応しているかだ。単純なリストはもちろん、プロフィールページ、画像付きリスト、フォームなど多数のニーズがある。その一つ、JavaScriptを使ったパターンに適合できそうなのがjQuery iPhone UIだ。 jQuery iPhone UIの特徴は名前の通りjQueryを使っていることだろう。同種のライブラリとしてjQTouchがあるが、あちらはがちがちに固まっている雰囲気があるがjQuery iPhone UIは切り離して使えそうだ。HTML

    iPhone向け最適化Webサイトを構築するjQueryライブラリ·jQuery iPhone UI MOONGIFT