タグ

ブックマーク / pg-kura.hatenablog.com (6)

  • ArangoDB ってのが面白いと思うんだ - 偏見プログラマの語り!

    最近 Graph database が盛り上がってるように感じる。 さて ArangoDB という DB を知っているだろうか。 MySQL とか MongoDB とかと比べると知名度は低いものの、NoSQL、とりわけ Graph database 界隈では名が知られている。Graph database 界隈と書いたが、さしずめこの領域では Neo4j が幅を利かせている。Neo4j なら聞いたことあるって人はたくさんいると思う。 Graph databases ・Neo4j Neo4j の強みとしては、そのクエリ言語である Cypher の読みやすさが一つ挙げられる。Cypher の紹介ページ に書かれている最初のサンプルを引用すると、こうだ。 MATCH(:Person{ name:"Ann"})-[:MARRIED_TO]->(spouse) このクエリは「name が "Ann"

    ArangoDB ってのが面白いと思うんだ - 偏見プログラマの語り!
    tofu-kun
    tofu-kun 2018/04/24
    お、使ってみたい
  • C 言語にポインタがある理由は省メモリ化・高速化・開発作業の省力化です - 偏見プログラマの語り!

    前回の記事『プログラム初心者にC言語のポインタを不意ながら教える羽目になったなら、こう教えると良いよ』でポインタの教え方を書きました。ソレに対して「そもそもどうしてポインタっていう仕組みがあるの?」という質問をもらったので、つらつらと書こうと思います。稿は「ポインタがある理由の教え方」ではなく「ポインタがある理由」です。分かっている人には相当に退屈な文章ですのでそういう人は読まずにお帰りください。 で、えーと、結論だけ先に言うと省メモリ化のため、次に速度アップのため、そして生産性アップのためです。 1. メモリは有限である。 マシンに搭載されているメモリには限りがあります。メモリ空間は広大ですが、無限ではないのです。 好き放題にどんどんメモリを使ってデータを格納するわけにはいかないというわけです。しかしプログラムは計算のためにメモリ空間を占有します。仮に↓こんな感じに、わずかな有限メモ

  • Web プログラミングってこんな感じじゃなかろうか - 偏見プログラマの語り!

    この歳になって初めて Web プログラミングの現場を見て、刺激的な毎日を送らせていただいています。さて、仕事をしていて一番強く感じるのは前職での開発(スタンドアロンパッケージソフト開発をしていた会社の文化)との違いです。で、Web 開発とは何たるかを表現したくて悶々としていたのですが、ある程度整理ができてきたので文章にしてみようと思います。僕はアカデミックな話よりも現場の話をしたいので、いくつもレイヤをまたいだ文章になります。そのため稿では具体的な技術の詳説とかアジャイル的な用語が飛び交う説明とかはありません。そういうのを期待している人は読まないでください。 ・Web に限らず、お仕事プログラミング全般で共通のこと プログラムを知らない人がイメージする開発というものは、粘度をこねたりくっつけたりするような作業じゃないでしょうか。つまりそれは、知識さえあれば難しいものではなく、モチベーショ

    Web プログラミングってこんな感じじゃなかろうか - 偏見プログラマの語り!
  • Rails の高速化についてググったり - 偏見プログラマの語り!

    Rails の練習ってことでちまちまとアプリを作ってました。作ってたのはまぁ Twitter と連携するちょっとしたアプリ。しかしどうも、作れば作るほどアプリケーションの遅さが気になってきました。で、ぐぐってみると Rails の高速化テクがいくつもヒットしました。 いくつかピックアップして紹介します。(Rails 2 系など古い記事も含まれてます) 1. 『Ruby on Rails を高速化する』IBM DeveloperWorks N+1 クエリー問題 の解決アプローチです。これは Rails のしくみを使って db へのクエリ回数を減らすテクニックですね。Rails で何も考えずにコーディングするよりもある程度知識をもってコード書くだけでクエリを劇的に減らせるってことがわかります。RDB の遅さを緩和することによる高速化ですね。 2. 『現実の世界の Rails、第 2 回:高度な

  • テスト駆動開発について僕は誤解していた - 偏見プログラマの語り!

    ここ数日 ruby をやってるんですけど、ruby といえばテストらしいので Test::Unit やら RSpec やらを調べてました。しかし僕はこれまでまともな TDD をやってこなかったので、先にテストとは何ぞや?TDD とは何ぞや?ってのを調べたりしていました。 この記事は、ずぶの TDD 素人がテストについて知り始めたまとめです。 1. きっかけは RSpec のドキュメント そもそも RSpec の↓紹介文の冒頭から意味不明に感じたんです。 FAQ:「RSpec って、要は Test::Unit でやっていることを別の書き方にしただけでは?」 この FAQ への短い答えはイエスです。 『スはスペックのス 【第 1 回】 RSpec の概要と、RSpec on Rails (モデル編)』 Rubyist Magazine えっ... じゃあ要らんやろソレ。いちいち手作業でチェック

    テスト駆動開発について僕は誤解していた - 偏見プログラマの語り!
  • 関数型言語が普及しない理由 - 偏見プログラマの語り!

    えーとですね...。 関数型言語が普及しない理由:俺が分からないから 2011-11-12 13:04:14 via Tween 関数型言語が普及しない理由:「関数型言語が普及しない理由」という記事をみんなが書くから 2011-11-12 13:04:43 via TweetDeck ようし僕も「関数型言語が普及しない理由」という記事を書こうか。 2011-11-12 13:05:22 via Krile2 期待age RT @PG_kura: ようし僕も「関数型言語が普及しない理由」という記事を書こうか。 2011-11-12 13:07:55 via web 犬ェ... 2011-11-12 13:10:18 via Krile2 というわけで稿を書くわけですが(ヤメテ!そんな冷たい目で僕を見ないで!)、関数型言語*1についてはよく知りませんので、決して真に受ける事無く、オブジェクト

  • 1