タグ

programmingとProgrammingに関するwindishのブックマーク (698)

  • 次世代JavaScriptでデータバインディング: Object.observe() を試す - ぼちぼち日記

    1. はじめに、 記事は、HTML5 Advent Calendar 2012の参加(6日目)エントリーです。 当初は昨年のアドベントカレンダーでテーマにしたマイナーAPIをネタにして書こうかと考えていたのですが、探してもあまりピンとくるものがなく、いつものごとく新技術ネタに飛びついてしまう習性がでてしまったので今回次世代JavaScript(ES.harmony)ネタ(Object.observe)を書かせていただきます。 現時点では直接HTML5とは関係ありませんが、標準で利用できるようになったら皆さんがお世話になる機会が必ず増えると予感しています。今の時点で知っておいてもらっても絶対損はないと思いますのでどうかご了承ください。 (_O_) 2. Object.observe() とは何か? 先日のHTML5勉強会でも取り上げられましたが、最近 JavaScript の MVC フレ

    次世代JavaScriptでデータバインディング: Object.observe() を試す - ぼちぼち日記
    windish
    windish 2012/12/07
    なんかすごい。
  • 連載記事 「いまさら聞けないVim」

    インストール、そしてはじめの一歩 連載:いまさら聞けないVim(1) プログラマに高い人気を誇るエディタの1つ「Vim」。その導入から基の操作、設定に至るまでを紹介します

    windish
    windish 2012/11/15
    こっそり
  • HaskellでJSON Web APIを作ると幸せになれるかもよ - Fujimura

    先日Yesod勉強会第2回でHaskellでJSON Web APIを作る話しをしました。 内容的には下記のような感じです。 Web開発はクライアントサイドの技術が発達して、Web APIを作る機会が多くなった最近のフロントエンドは難しいし、分業したほうがいいっぽいYesodは独自技術&フルスタックすぎて分業辛いではscotty + persistent + aesonでJSON Web API作ろうぞなんか想像以上の相性の良さ。幸せになれそうなイキフンがビシビシ来てる発表資料はこちら。 ちなみにscottyはsinatraみたいな奴、aesonはJSONライブラリ、persistentはORマッパーです。 何しろaeson + persistentの相性がバッチリでした。発表後に@thimuraさんが見つけた じつは persistent のスキーマ定義で、テーブル名の横に js

    HaskellでJSON Web APIを作ると幸せになれるかもよ - Fujimura
  • Applicativeのススメ - あどけない話

    この記事の目的は、Applicative 信者による Applicative スタイルの布教です。 簡潔に結論を述べると、 foo = do a <- m1 b <- m2 return (f a b) のようなコードを書きたくなったら foo = f <$> m1 <*> m2 と書きましょうということ。 合い言葉は、「do と return をなくせ!」です。 FunctorとMonadの間 Functor を特殊化した型クラスがMonadで、Monadの方が強力です。なぜなら、メソッドが増えるからです。 Functorのメソッドはfmapです。fmapの別名を (<$>) といいます。(この記事では、(<$>) と liftM を同一視します。) そして、Monadのメソッドは、ご存知の通り (>>=) と return です。 FunctorとMonadの間にApplicative

    Applicativeのススメ - あどけない話
  • プログラマの実力は経験だけであがらないことがレベル格差につながる - きしだのはてな

    プログラマというのは、道具に慣れることが、実力があがることにならないのですよね。だから、勉強せず業務経験だけだとレベルが低いままということになってしまう。 Javaを10年さわり続けて、Strutsを5年さわり続けても、それだけでは、与えられた画面を手際よく作成できるようになるだけで、たとえばStrutsすらよりよく使えるようになるわけではなかったりする。 Javaにしても、「volatileってなんですか?」という問いに、まあ知らないのはしかたないとしても、解説を見ながらですら答えられない可能性がある。 プログラムの反復生産は、プログラミング能力の向上にあまりつながらない。設定や記述に慣れるだけだ。そして、この「慣れ」というのには「難しいからそもそも実装を回避する」というようなものも含まれる。実力の向上は、作業ができるレベルで止まってしまう。 プログラマとしての実力をあげるための勉強が自

    プログラマの実力は経験だけであがらないことがレベル格差につながる - きしだのはてな
    windish
    windish 2012/10/12
    参考になる
  • Online JavaScript beautifier

    End script and style with newline? Support e4x/jsx syntax Use comma-first list style? Detect packers and obfuscators? (unsafe) Preserve inline braces/code blocks? Keep array indentation? Break lines on chained methods? Space before conditional: "if(x)" / "if (x)" Unescape printable chars encoded as \xNN or \uNNNN? Use JSLint-happy formatting tweaks? Indent <head> and <body> sections? Keep indentat

    windish
    windish 2012/10/07
    これは便利
  • ウェブサイト高速化勉強会に参加してきた #tnmk0929 - Diary of absj31

    ウェブサイト高速化勉強会 : ATND 2012/09/29 ウェブサイト高速化勉強会 #tnmk0929 - Togetter さくらのVPSにてサーバ&ドメイン取得を行った流れもあり、個人用鯖にも何らかのWebコンテンツを配備・公開して行く事になるだろう(てかそういう風にして行きたい)と言うのもあり、ちょうど目にしたこちらの勉強会に目が留まり、参加して来ました。 なので現状のWebサイトを高速化させるために、ってのではなくて今後のために、という意味合いが強いですね。 会場は横浜タネマキ。最近は個人的にはYokohama.groovy等で2週間に一遍は使ってる感じですね。 タネマキ 【コワーキング & シェアオフィススペース】 開始間際、ディスプレイ接続で調整が上手く行かず10分程押した後スタート。 Web Site Optimization for Beginners こもり まさあき

    ウェブサイト高速化勉強会に参加してきた #tnmk0929 - Diary of absj31
    windish
    windish 2012/10/01
    ツールが興味深い。/ ホッテントリ入りおめでとうございます!
  • やはりお前らのMVCは間違っている

    PHPカンファレンス2012 & WordCampTokyo2012 LT発表資料です。 タイトルの元ネタ: http://www.amazon.co.jp/dp/4094512624

    やはりお前らのMVCは間違っている
    windish
    windish 2012/09/27
    ともかく、肥大化はいくない。と解釈した
  • 自動改札機の運賃計算プログラムはいかにデバッグされているのか? 10の40乗という運賃パターンのテスト方法を開発者が解説(前編)

    自動改札機の運賃計算プログラムはいかにデバッグされているのか? 10の40乗という運賃パターンのテスト方法を開発者が解説(前編) ふだん何気なく使っている鉄道。改札を降りるときにICカードを自動改札にかざすと、「ピッ」という音と共に一瞬のうちに運賃を計算してくれます。けれど、複数の路線を乗り継いだり、途中で定期券区間が挟まっていたりと、想像しただけでもそこには膨大な組み合わせがあります。それでも運賃計算プログラムはわずか一瞬で正しい運賃計算が求められ、バグがあったら社会的な一大事にもつながりかねません。 爆発的な計算結果の組み合わせがあるはずの運賃計算プログラムは、どうやってデバッグされ、品質を維持しているのでしょうか? 9月12日から14日のあいだ、東洋大学 白山キャンパスで開催された日科学技術連盟主催の「ソフトウェア品質シンポジウム 2012」。オムロンソーシアルソリューションズ 幡

    自動改札機の運賃計算プログラムはいかにデバッグされているのか? 10の40乗という運賃パターンのテスト方法を開発者が解説(前編)
    windish
    windish 2012/09/24
    圧巻。こういう話いいな。
  • JavaのソースでClass.forNameというのを見たことがあるのですが、どう使うのですか|д・)? - Class... - Yahoo!知恵袋

    Class.forName(String)は引数にクラス名の文字列をとってClassクラスのインスタンスを返します。 (もしそのクラスが仮想マシンによってロード済みでなければロードされ、staticイニシャライザが実行されます。これを利用してJavaでデータベースを扱う際の「お約束」「おまじない」となっています。これの検索ワードは「JDBC」で) 来の(?)機能は「クラス名(文字列)からクラス(を表すクラスのインスタンス)を得る」ことです。 Classクラスはクラスを表します。このインスタンスからは(特定の名前をもつ/すべての)コンストラクタ・フィールド・メソッド・アノテーション・内部クラスなど(を表すクラスのインスタンス)を取得できるメソッドが提供されています。 これらを用いてインスタンスの作成・フィールドの取得/設定・メソッドの呼び出しなどが行えます。 このような機能をリフレクション

    JavaのソースでClass.forNameというのを見たことがあるのですが、どう使うのですか|д・)? - Class... - Yahoo!知恵袋
  • Let's take tea break | Code Puzzle

    from second_code import SimpleBars import re bs = SimpleBars(' '*78) pos = 0; acc = 1; accx = 1; output = "" commands = "1(///(1iTiTiTi|||[(1 ])1( [L|[L|[L|[(] |1//)/)1i||1)///)1i||||1(///)1i\ (/////)1iTiTi[L!])|])[L!])])l|])1/( [(1/ ]L!l|[(1 ])1( //(1 ]L[L!|" for c in commands: if c == "1": acc = 1 elif c == "/": acc = acc * 2 elif c == ")": pos += acc; pos %= len(bs) elif c == "(": pos -= acc; p

    windish
    windish 2012/09/17
    左下にヒントがついてる。
  • HTML5カンファレンス2012の資料まとめ

    HTML5カンファレンス2012の講演資料のまとめです。 HTML5カンファレンスは非常に有意義なものでした。講演頂いた方、スタッフの皆様ありがとうございます。 HTMLとかCSSとかAPIとか -2012秋編-(矢倉眞隆さん) HTML5 や CSS3 の新しいタグやプロパティについての解説。 でもその前に、W3C と WHATWG についての話。 一部のメディアで、W3C と WHATWG が決裂したかのような報道がされたが、実際は問題ないとのこと。 W3C と WHATWG の Editor を務めていた Ian Hickson氏は WHATWG の HTML に集中し、バグ修正が加速しそうです。 セッションでは紹介されていませんでしたが、こちらの記事に Ian Hickson氏からのメールの邦訳など載っています。 HTML5仕様をめぐるW3CとWHATWGについて、Ian Hick

    HTML5カンファレンス2012の資料まとめ
    windish
    windish 2012/09/10
    よいまとめ
  • Javaプログラマになってしまった:アジアのソフトウェア開発現場にて:エンジニアライフ

    シンガポールでアジアのエンジニアと一緒にソフトウエア開発をして日々感じること、アジャイル開発、.NET、SaaS、 Cloud computing について書きます。 小生、プログラムに使った最初の言語は、BASIC。そう、あの有名なBASIC。Visual Basicではない。Bill Gatesが、ハーバードの学生だったころ、Microsoftか、それともその前身の名前の会社だったのだか定かではないが、自分たちで作って、それをまんまと、当時の米国のホビーストのマシンだったAlltairに売り、さらにIBMにまで使わせることに成功した、あのinterpreter言語だ。 BASICを使って、私も、学生のころ、当時日で売られていたSharpの『マイコン』で、色々とゲームを作った。ASICだと言ってもバカにしてはいけない、学生時代はゲームだったが、それなりに物理や数学を駆使したアプリだった

    Javaプログラマになってしまった:アジアのソフトウェア開発現場にて:エンジニアライフ
    windish
    windish 2012/09/10
    たしかに.netのがコードを書くのは楽な気がする
  • ツン期からデレ期に移行したPython 3を学ぶなら「みんなのPython 第三版」がいいよという話 | TRIVIAL TECHNOLOGIES @ats のイクメン日記

    みんなのIoT/みんなのPythonの著者。二子玉近く160平米の庭付き一戸建てに嫁/息子/娘/わんこと暮らしてます。月間1000万PV/150万UUのWebサービス運営中。 免責事項 プライバシーポリシー Python 2の妹,Python 3があんま流行ってないのは率直に言ってツン過ぎるからですね。どの程度ツンかは妹の発言を見れば分かります。 「 パパに言ってモラトリアム宣言してもらったから。私の言語仕様はもう完璧なの。もうあんた達にself無くせみたいなバカな提案させないからねっ」 「サードパーティモジュールとかフレームワークとかキモい。完璧な私を素で使いなさいよっ」 「ネットとかファイルから拾ってきたデータなんてただのバイト列よ。文字列にしたかったらエンコードを指定しなさいよねっ」 「Djangoとかキモい…。私にはNumPyさんがいるからいいの。でも最近Pyramidがすり寄って

  • うぶ毛プリン: rvmからrbenvに移行した

    2011-08-17 rvmからrbenvに移行した rbenvとは何か Rubyバージョン管理ツール。Sam Stephenson(37signals)が作った。 そもそもrvmという便利なツールがあるが、rbenvはより少ない機能でより軽く動く。 覚え書きです 競合するといけないので、まずrvmを削除する $ rvm implode .bash_profile等の記述を消しておく。 rbenvをインストールする $ cd $ git clone git://github.com/sstephenson/rbenv.git .rbenv ↑homebrewを導入している人は「brew install rbenv」でもいいかも。homebrewの導入の仕方は前の記事で書いた。 .bash_profile等に追記 $ echo 'export PATH="$HOME/.rb

  • RubyのMechanizeを解説 for 1.0.0 - きたももんががきたん。

    未知チャレンジ(2025年上半期) 昨年1月に意気揚々と旗揚げした、未知なるを月に1冊読もうという試み、その名も「未知チャレンジ」。細々しすぎていつ息が途絶えるやら…という感じだが、なんとか2025年も続けているうえに、年初にはわたしの生活を少なからず変えた出会いもあった。月日が経つのが…

    RubyのMechanizeを解説 for 1.0.0 - きたももんががきたん。
    windish
    windish 2012/09/04
    助かります
  • RubyのMechanizeがSSLエラーになる。 - それマグで!

    とりあえず、以下を最初にやってからMechanize.newすると大丈夫っぽい*1 require 'openssl' OpenSSL::SSL::VERIFY_PEER = OpenSSL::SSL::VERIFY_NONE エラーになったやつ。 sora_h のniconico モジュールを使ったらエラーだった ?> require 'niconico' #=> true >> a=Niconico.new 'takuya***@gmail.com' , ‘****' #=> #<Niconico: takuy****@gmail.com (not logined) ?> >> a.login OpenSSL::SSL::SSLError: SSL_connect returned=1 errno=0 state=SSLv3 read server certificate B: cer

    RubyのMechanizeがSSLエラーになる。 - それマグで!
  • 米国人からコーディングについての怒りのメールを頂戴した - その手の平は尻もつかめるさ

    "米国人からコーディングについての怒りのメールを頂戴した" の補足 - その手の平は尻もつかめるさ ↑の方で補足いたしました。(2012.09.04 追記) 最近、英語のメールでよく怒られます。moznion です。 海を隔てて共同作業しているアメリカ人から、僕のコーディングについてお叱りのメールを頂いたので、 自戒の念を込めて邦訳して記します。 書いてあることは「当然」とも言うべき内容ですが、僕はその「当然」も守れていなかったのかぁ〜と反省。 以下、邦訳(意訳)です。 1. 郷に入っては郷に従え 既にソースコードが存在しているって事は、そこには同時にコーディングスタイルも存在しているってことだ。 その既存のソースコードに手を加える場合、別のコーディングスタイルを導入してはならない。 もし君がバックエンドのソースコードを弄っているなら、バックエンドのコーディングスタイルで記述するんだ。 フ

    米国人からコーディングについての怒りのメールを頂戴した - その手の平は尻もつかめるさ
    windish
    windish 2012/09/04
    うおお…
  • Javaを抜いた!? C言語人気の理由を考える

    Javaを抜いた!? C言語人気の理由を考える:OSS界のちょっと気になる話(6)(1/2 ページ) TIOBE Programming Community Indexのデータを基に、今後Web上での露出が増えるであろうプログラミング言語を予想してから半年が経った。その後、どんな変化が生じただろうか。 半年で変化したプログラミング言語の話題動向 連載第2回目において「『次に来る』プログラミング言語を占ってみる」というタイトルでTIOBE Programming Community Indexに掲載されているデータを紹介した。これはオランダのTIOBE Softwareが毎月公開しているデータをベースに、今後Web上で露出が増えるであろうプログラミング言語を予想するという内容だった。 TIOBE Softwareは、世界中のブログや技術ドキュメントなどのデータを分析し、インターネット上のド

    Javaを抜いた!? C言語人気の理由を考える
  • JDK7正式版の新機能一覧(Java言語仕様に関して) - R42日記

    2011-08-02追記 JDK7に致命的なバグ 重要なので先頭に追記しておきますが、JDK7のホットスポットコンパイラに致命的なバグが存在するそうです。 詳しくはコチラ。 http://d.hatena.ne.jp/takahashikzn/20110802 JDK7を使用する際はご注意下さい。 (Javadocのスタイルもガラっと変わりました!!) http://www.oracle.com/technetwork/java/javase/jdk7-relnotes-418459.html JDK7の正式版がリリースされています。 興味深い機能やAPIなどが追加されているわけですが、 その中でもみんな一番気になるところである、Java言語仕様の変更についてご紹介。 あとは、個人的にjava.lang.invokeなんてアヤシゲなパッケージが気になっているのですが… APIを見る限り、動

    JDK7正式版の新機能一覧(Java言語仕様に関して) - R42日記