Production (セキュリティ編)ということで疎かになりがちなセキュリティの話
![Node.js のセキュリティの話](https://cdn-ak-scissors.b.st-hatena.com/image/square/88809bc0fa8a92779a5f483994bac0de108cf7e4/height=288;version=1;width=512/https%3A%2F%2Ffiles.speakerdeck.com%2Fpresentations%2Fae0d43b0d5c30131b4660e28adc77557%2Fslide_0.jpg%3F3153517)
Springy.js A force directed graph layout algorithm in JavaScript. What is Springy? Springy is a force directed graph layout algorithm. So what does this “force directed” stuff mean anyway? Excellent question! It means that springy uses some real world physics to try and figure out how to show a network graph in a way that looks good. Here's an example: Getting started Springy.js is designed to be
概要 今年からフロントエンドエンジニアにシフトチェンジして5ヶ月がたち、これがないと仕事にならんわレベルのツールを整理がてらに晒していこうと思う。 スペック的にはJava歴が10年くらい。 割とツール好きで、できればキーボード(カーソルキー以外)だけですべての操作を完結したいと思っている。 そんなおっさんがお送りします。 5ヶ月間のお仕事内容 PC/タブレット向けのAngularJSを使ったフロントエンド開発 HTML/CSS(SASS)/Javascript PCはIE8~、Chrome。モバイル端末はiPad、Nexus7 職場での開発環境 mac mini (2011) 19インチのシングルモニタ GUI系ツール Sublime Text 2 プログラマ向けのテキストエディタ。 これがないと仕事にならない。 以下、必須なPackage。 Vintage vimっぽいキーバインドにする
Scale: x.5 x1 x1.5 x2 | Toggle Lines
Roguelike(Rogue, NetHack,トルネコ,etc)のダンジョンを自動生成するプログラムです。 javascriptにもだいぶ慣れてきたので、やってみました。 http://eva-lu-ator.net/~gemma/geocities/jscont/dungeon.html 昔に書いた解説はこちら。 http://racanhack.sourceforge.jp/rhdoc/index.html Gauche で書いた例はこちら。 id:Gemma:20070617 以下、解説。 まずは、[40][80]の2次元配列を用意して、初期化して、表示してみましょう。 実例: http://eva-lu-ator.net/~gemma/geocities/jscont/dungeon_a.html <html xmlns="http://www.w3.org/1999/xhtm
数年前にも同じことかいた気がするけど、最近の状況にあわせてかいてみる。 途中で面倒になってきて説明が雑になっている点をご容赦ください。 言いたいことは「結局、昔はサーバサイドで懇切丁寧なエラーメッセージを出すためにModelではなくControllerでバリデーションに関する知識が必要だったけど 今はJavaScriptでやるから不要だよね111」ってことです。 この表題は、よく話題にあがるところなのだが、理想論としては Model, Controller, Client side のいずれにおいてもきっちりと validation を行うことがのぞましい。 しかし、実際にはなかなか面倒である。ということで、どこをはぶくかというと Controller における Validation であろう。 ユーザーに対する親切なメッセージは JS の側でだすのが理想的。model の validat
はじめに Twitter で利用者の声を見ていたところ、Timeline に uLipSync の BakedData を配置した際に Unity が重くなったりフリーズしたりする、というものをちらほら見かけました。こちらはおそらく内部的にテクスチャ生成処理を走らせたりしている波形描画のところと思われるため、これをオフにするオプションを今回追加しました。 ダウンロード github.com 使い方 Unity > Settings... から Preference を開くと、uLipSync の項目が追加されています。 ここで Display Waveform On Timeline をオフにすると、Timeline 上で波形描画がスキップされて表示されなくなります。 おわりに 現状は今回の項目しかありませんが、適宜エディタの設定などはここに追加していこうと思います。
はじめに 先月、友人の結婚式の二次会でタイピング対決をしたいとの企画を、幹事の友人から受けました。面白かった要件としては、 二人の顔を 2 台のカメラで映したい タイピングしてる様子をリアルタイムで見たい というものです。これをサーバは Node.js で、クライアントはブラウザで作成しました。エントリ書いてもいいよ、と許可を頂いたので、今後似たような依頼を受けた方のご参考になるように、エッセンス部分をご紹介します。 (追記:2013/11/20) 幹事さんも記事を公開されました: http://tjun.org/blog/2013/11/wedding-typing/ やったこと ホスト PC 側で新郎新婦それぞれの PC からのログインを待ち受けします。イイ感じに○で切り抜いてくれるような PNG をイラレで作っておきました。 それぞれの PC からログインしてもらいます。 ログインし
JSONPath というのがあって、いわゆる XPath の JSON 版です。 仕様は以下 JSONPath - XPath for JSON XPath すべての機能が使えるわけではありませんが、巨大な JSON から目的の key を探す場合にはなかなか便利です。 たとえば、Dailymotion の JSON なんかはダンプすると 900行ぐらいあったりして、しかも超絶階層が深い。更にいうと配列が多くて、順番が変わる可能性も高い (というか実際に昔作ったスクリプトがうごかなくなっていた)。 そういう場合にサクッと指定してモリっと取ってきてくれると便利ですね。 例えば Dailymotion の動画のタイトルが欲しい場合は、JSONPath を使わないと以下のようになります。 my $title = $json->{sequence}[0]{layerList}[0]{sequenc
JavaScriptなどのスクリプト言語は動作が遅く、最適なパフォーマンスを得るにはC/C++で実装しなければならないという常識に挑んだ先進的な講演が話題になっています。この話題の発端は2012年10月7日から10月8日までベルリンで開催されたJSConf.euでFelix Geisendörfer氏が行った講演です。 彼の講演の題材はnode.jsからMySQLに接続する為のバインディングのパフォーマンスに着目しています。2010年当時、node.jsにはMySQLのバインディングが存在しておらず、増井さん作のnode-mysqlモジュールが開発中の状態でした。このモジュールはJavaScriptでバイナリを解析しておりJavaScriptのみで開発されていました。この状況を受けてFelix氏が新たにnode-mysqlモジュールを新規に開発を始めました。このモジュールもJavaScri
無償のWebサイト構築ツール「WebMatrix 2」、新版はiPhone/iPadエミュレータ、Node.js、CoffeeScriptなど対応 先週末に行われたWindows Azureの新機能を紹介するイベント「Go Azure」の基調講演の中で、Azure以外に興味を引かれたソフトウェアがありました。マイクロソフトが無償で公開しているWebサイト構築ツール「WebMatrix」の新版、「WebMatrix 2」です。 WebMatrixは、HTML/CSS/JavaScript/PHP/ASP.NETなどに対応したエディタ機能を備え、コード補完機能も搭載。ローカルにデータベースやWebサーバを用意してPHPの動作をそのまま確認したり、WordPressやDrupalなどのWebアプリケーションをローカルで試すこともできました。 下記はその画面(参考:マイクロソフト、無償のWeb開発
はてなグループの終了日を2020年1月31日(金)に決定しました 以下のエントリの通り、今年末を目処にはてなグループを終了予定である旨をお知らせしておりました。 2019年末を目処に、はてなグループの提供を終了する予定です - はてなグループ日記 このたび、正式に終了日を決定いたしましたので、以下の通りご確認ください。 終了日: 2020年1月31日(金) エクスポート希望申請期限:2020年1月31日(金) 終了日以降は、はてなグループの閲覧および投稿は行えません。日記のエクスポートが必要な方は以下の記事にしたがって手続きをしてください。 はてなグループに投稿された日記データのエクスポートについて - はてなグループ日記 ご利用のみなさまにはご迷惑をおかけいたしますが、どうぞよろしくお願いいたします。 2020-06-25 追記 はてなグループ日記のエクスポートデータは2020年2月28
連載目次へ 以下のJavaScriptコードが意図した動作をしないのは,なぜですか。(制限時間1分) やりたい事: tenki.htmlの中に,天気が書かれている。 index.htmlのインラインフレーム内に tenki.html を表示して,その内容を解析する。 ※2つのHTMLは,同じフォルダ上にある。 index.html <input type="button" value="クリックして天気を表示" onClick="f()"> <br> <!-- ここに tenki.html を表示します。 --> <iframe id="ifr"></iframe> <script language="JavaScript"> function f() { // iframeを取得 var e_ifr = document.getElementById( "ifr" ); // ifram
JavaScript のコードをデバッグ中、突然出現する null や undefined に苦しめられている方も多いのではないでしょうか。haXe と JSX の一番大きな差は、個人的には、その null (と undefined) の扱いにあると考えています。 haXe の JavaScript 実装では、全ての基本型が nullable とされています*1。つまり、たとえば haXe の Bool 型は true, false, null の3つの値を取りうることになります*2。null が入っているかどうかはプログラマがいちいち確認する必要があります。 // haXe class Test { static function f(b : Bool) : Void { if (b == true) { // b is true } else if (b == false) { //
jQueryでスマホサイト向けに画像サイズを縮小する方法を紹介します。 1.サンプル 次のようなPCサイト用のページがあります。この場合、Movable Typeでページを出力しています。ページで使っている記事内の画像サイズは幅470pxです。 このページをスマホサイト向けに別のページを作り、画像サイズを縮小して表示します。画像サイズは幅280pxに縮小しています。 2.カスタマイズ サイズを変更するには、下記のスクリプトをページ内にあるhead終了タグの直前に追加します。 <script src="http://ajax.googleapis.com/ajax/libs/jquery/1.6.3/jquery.min.js"></script> <script type="text/javascript"> jQuery(function(){ $('img').each(functio
注意!このエントリは既に古いので、JSX の進化速度が半端ない - ぐるぐる〜もあわせて読んでください。最新のコードを参照するのが手っ取り早いです。 JSX なる言語がリリースされました。 この言語が謳っているのが、 高速 安全 簡単(生産性が高い、とも) という 3 点です。 高速と安全はまぁいいでしょう*1。 問題は、はたしてこの言語は簡単なのか?という点です。 簡単かどうかは人によるのでアレなのですが、まぁ一部の人にとっては簡単とは言えない (というか書く気がしない) 書き方を強制されるのです。 関数型 数値を受け取って文字列を返す関数を表す型は、JSX では以下のように書きます。 function(:number):string これ単体で見ると分かりやすそうな気配はします。 では、これ読めますか? function f(g: function(:number):number):
Javascriptを生成できる言語『JSX』がリリースされました。めでたいですねー。 ただ同じくJavascriptを生成きるHaXeのことが忘れられている気がするので、宣伝します。 ステマじゃないよ! 型推論がイケてる 現時点でJSXには型推論が実装されてないので、関数を定義するには全ての型を書く必要があります。 // JSXだよ! function add(x : number, y : number) : number { return x + y; } これだけなら特に問題ないように見えますが、これが高階関数を定義しようとするとどんどん複雑になっていきます。 // JSXだよ! function f(g: function(:number):number): function(:number):number { return function(x: number): number
この記事は、@astronaughtsさん企画の「Titanium Advent Calendar 2011」向けに書いています。 12月1日~24日まで毎日誰かがTitaniumについての記事を書いていくというイベントです。 先日、面白い本を探すためのiPhoneアプリ「ブクたん」をリリースしました。 書評ブログの最新記事を表示したり、はてブの人気記事を表示する機能があるのですが、そこで活用したYQLについて説明したいと思います。 YQLとはYahoo! Query Languageの略で、SQLに似た構文でWeb上から様々なデータを抽出することができる仕組みです。 例えば私のブログのRSSフィードを取得するには、下記のような構文を書きます。 SELECT * FROM xml WHERE url= "http://io-diary.com/mt/atom.xml" YQL
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く