タグ

Programmingに関するmanatenのブックマーク (382)

  • コードを改悪されて本気でプログラマ辞めようかって脳裏をよぎった - (define -ayalog '())

    2013-12-04 コードレイプされて気でプログラマ辞めようかって脳裏をよぎった Java 開発 つらい現実。 「だから言ったのに」事案2013-12-04 11:05:15 via web 自分の書いたプログラムが大陸人の手によって改悪されまくってて涙で前が見えない。2013-12-04 11:16:49 via web あのね。。拡張for文で書いてたのにfor(int i=0; i<items.length; i++)って書きなおされてたんだ…。2013-12-04 11:18:41 via web てか、嘘でしょ。なんでSetをtoStringして文字列表現にして「,」でsplitするとか考えるの…。意味分かんないんだけど…。2013-12-04 11:19:51 via web こう、胸の奥がキューッてなってる。苦しい。2013-12-04 11:21:11 via web

    manaten
    manaten 2013/12/12
    "自分たちが理解できるように変える」のが正義"はある意味では合理的であると思う(賛同するわけではない)。ので、相容れない文化だと思って諦めるしか無い・・・
  • YBlog - Haskell web programming

    update: updated for Yesod 1.2 tl;dr: A simple Yesod tutorial. Yesod is a Haskell web framework. You shouldn’t need to know Haskell. Its efficiency (see Snap Benchmark & Warp Benchmark1). Haskell is an order of magnitude faster than interpreted languages like Ruby and Python2. Haskell is a high level language that makes it harder to shoot yourself in the foot than C, C++ or Java, for example. One o

  • ソースコード上の主語は誰か、という話 - mizchi's blog

    ふとTwitterで投げたらリプライたくさんきた これ素朴な質問なんだけど、ソースコードで英語でコメント書くとき、守護はIなのかWeなのかコードそのもので受動態で書くのか、どっちなの— 性格は糞 (@mizchi) 2013, 9月 23 @mizchi 一行目は主語無し(命令形)、長い説明をつける場合は 1.言い訳がましいコメントは I を主語に 2. 誰かと合意済みの事柄は We を主語に 3. 仕様に沿う振る舞いに変更する場合は It should be ~ などコード自体が主語であるように、と書いてる— Kensuke Nagae (@kyanny) 2013, 9月 23 @mizchi "add …": このコードは…を足します、"added …" このコードは…で足されました、"adding …" このコードは…を足しています— 中村氏 (@r7kamura) 2013, 9

    ソースコード上の主語は誰か、という話 - mizchi's blog
    manaten
    manaten 2013/09/24
    インタフェース=メソッドやクラスの外向けコメントはYouで、コード本文の中作ってる人向けのコメントはWeかな・・・?
  • Ruby on Railsで可愛い子が集まるエロサイトを公開するまでの24H

  • 関数プログラミングのボトルネックとしてのRDBMS

    プログラム開発は、多くの人々が目的達成のため、もがき苦闘するタールの沼である – Frederic P. Brroks, Jr., 人月の神話 モジュール性はプログラミング成功の鍵である – John Hughes, 関数プログラミングはなぜ重要か タールの沼の底から タールの沼と聞いて連想するのは大規模なSIである。業務アプリケーションやWebアプリケーションは規模が大きくなればなるほど、複雑さが増し収拾がつかなくっていく。そしてそのようなアプリケーションを大きな単位で上手くモジュール化し、さらには再利用することは不可能に近い。 その技術的な原因の一端、そして問題を解く鍵は、そのようなアプリケーションが常に携えているRDBMSの周辺にあり、さらに言えばおそらくRDBMSとアプリケーションロジックの組み合わせにあると考えている。 ここでは、アプリケーションロジックの実装に関数プログラミング

  • Functional JavaScript/TypeScript

    j5ik2oにふられたのでやった

    Functional JavaScript/TypeScript
  • WiiU開発ツールの無償配布が話題 - ライブドアニュース

    by ライブドアニュース編集部 ざっくり言うと 任天堂が「WiiU」向けゲーム開発ツールの無償配布を始めたことが分かった 販売低迷の主因となったソフト不足を解消する考えである 既存のアイデアに縛られない斬新なゲームの誕生を期待する声が上がっている 提供社の都合により、削除されました。 概要のみ掲載しております。 関連ニュース ランキング 総合 国内 政治 海外 経済 IT スポーツ 芸能 女子

    WiiU開発ツールの無償配布が話題 - ライブドアニュース
    manaten
    manaten 2013/07/15
    「ジャバスクリプト」が比較的簡易とな / 記事内のプログラミング用語に突っ込みどころが多すぎて本題がかすれている感じがする
  • clang+llvmでさりげなくすごいコードが生成されていた話。 - 組み込みの人。

    先日llvm 3.3がリリースされました。aarch64(arm 64bit)のコードが生成できるようになったということなので、ソースからビルドして遊んでいたのですが、さりげなく凄く最適化されたコードが生成されているのに気がつきました。aarch64だと今は実行して確認できる環境が手元に無いので、普通のarmv7-aで同じことを試しました。 ここで使ったコードとその結果はgistに貼りました。 https://gist.github.com/tetsu-koba/5835724 ソースコード int sum(int x) { int sum = 0; int i; for (i = 1; i <= x; i++) { sum += i; } return sum; } 1からnまでの総和を求める関数です。1から100までの総和が5050なのはガウス少年の逸話で有名ですね。 gcc 4.8.

    clang+llvmでさりげなくすごいコードが生成されていた話。 - 組み込みの人。
    manaten
    manaten 2013/06/23
    ループがなくなるどころか定数になってしまうのは凄いな。最適化には謎のロマンがある。
  • Rubyのcaseを〇〇(言語名)のswitch文だと思っている人たちにぼくから一言ガツンと申し上げたい

    Rubyのcase」を一瞥し「あー要は〇〇(言語名)のswitchね」などと早合点し、その後もその真の価値を知ることなく一生を終えるプログラマが近年跡を絶たない。加えて、「今更条件分岐?RubyはOOPなんだからポリモフィズムじゃね?」とか「HashにProc突っ込んでcallするのがオレ流。」とかうそぶく人たちもまた増加の一途を辿っている。 そんな世の中にあって、ぼくは一言、できればガツンと一言申し上げたい。生まれも育ちもRubyなぼくから、是非ともそんな人たちに「Rubyのcase」について一言申し上げておきたい。 ─ 問題1 ─ 名前name、レベルlevel、ポイントpointの各属性を持った複数のCharacterオブジェクトcharlie, liz, benがある。 class Character < Struct.new(:name, :level, :point) def

  • そろそろGoについて一言いっておくか - kuenishi's blog

    昨日、GoCon(ごうこん)なるイベントに参加してきた。以下に続く話は5割以上がフィクションなので虚実織り混ざっている様を楽しみながらお読みいただけたらと思う。 最初に発表されたニュースを聞いたときは、Goはよい車輪のよい再発明で、結局GoogleC++Javaを使い続けるだろうし、世間はGoogle独自言語としてみなすのだろうなという予感はあったし、2010年だから2011年ころはそういう見方をされていたように記憶されている。私もそういうものだと思っていたし、特に関心を持つこともしなかった。いま思えば正常性バイアスだったのだろう。 実際に昨日のカンファレンスで一番興味深かったのは鵜飼さんによるGoの解説だった。比較対象がC++, Python, Javaだったことが最も印象的で、普段からErlangやOCamlといった関数型言語に接していた身として新鮮だった。話を聞くうちにGoogl

    そろそろGoについて一言いっておくか - kuenishi's blog
  • プログラミングは一朝一夕に達成できるものじゃない - カレーなる辛口Javaな加齢日記

    http://anond.hatelabo.jp/20130322031333 プログラミング出来る方法教える。 書いた人に悪意があったかどうかは知らないが,予想通り結果的に初心者を惑わせるだけの悪質な記事. まあこの手の奴は99%デマと考えてよい.このくらいの文章量では,プログラミングができるようになる方法を記述するには全然足りない. 一応ツッコミは入れておく. 世の中「プログラミング言語」を説くはごまんとあれど「プログラミング」を説くやブログはあまりない。 ほとんどのプログラミング言語は,多かれ少なかれプログラミングのやり方も含めて説明している. C実践プログラミング 第3版 作者: Steve Oualline,望月康司(監訳),谷口功出版社/メーカー: オライリー・ジャパン発売日: 1998/06/15メディア: 大型購入: 7人 クリック: 158回この商品を含むブログ

    プログラミングは一朝一夕に達成できるものじゃない - カレーなる辛口Javaな加齢日記
    manaten
    manaten 2013/03/24
    軽々しく自分のことを「○○言語ができる」とかいう人には常日頃から注意するようにしている
  • プログラミング言語を彼女に例えた文が的確すぎると話題に:ハムスター速報

    プログラミング言語を彼女に例えた文が的確すぎると話題に Tweet カテゴリ☆☆☆☆☆ 0 :ハムスター2ちゃんねる 2013年3月14日 15:00 ID:hamusoku 質問:メジャーなプログラミング言語とそれらの役割を、素人でも分かるように教えてください。 PHP は、あなたが高校時代のある夏、不器用ながらも付き合った初めての彼女です。もっと真剣な関係を築こうとしてはいけません。この子は複雑な問題を抱えています。 PerlPHPのお姉さんです。あなたからしたらちょっと年上かもしれませんが、90年代は人気者として鳴らしていました。Larry Wall と長い間付き合っているので、今は理想も低くなったし、かなりのブッサイクになりました。彼は「お前らが何を言おうと知らん、俺は彼女を愛している!」と言います。そんな人は彼だけです。 Ruby はスクリプティングファミリーの中でも

  • Rails で、Controller に定義されている action を一度に取得する方法はありますか? - QA@IT

    平素よりQA@ITをご利用いただき、誠にありがとうございます。 QA@ITは「質問や回答を『共有』し『編集』していくことでベストなQAを蓄積できる、ITエンジニアのための問題解決コミュニティー」として約7年間運営をしてきました。これまでサービスを続けることができたのは、QA@ITのコンセプトに共感をいただき、適切な質問や回答をお寄せいただいた皆さまのご支援があったからこそと考えております。重ねて御礼申し上げます。 しかしながら、エンジニアの情報入手方法の多様化やQAサービス市場の状況、@ITの今後のメディア運営方針などを検討した結果、2020年2月28日(金)15:00をもちましてQA@ITのサービスを終了することにしました。 これまでご利用をいただきました皆さまには残念なお知らせとなり、誠に心苦しく思っております。何とぞ、ご理解をいただけますと幸いです。 QA@ITの7年間で皆さまの知識

    Rails で、Controller に定義されている action を一度に取得する方法はありますか? - QA@IT
    manaten
    manaten 2013/03/14
    テストって仕様書みたいなものだから、仕様外、実装の詳細であるprivate methodはテストしなくていいよね。逆にどうしてもprivate methodのテストが必要(=仕様の一部と捉えられる)なら、設計を疑う必要もあると思う
  • 知って得する!55のRubyのトリビアな記法

    Rubyはたのしい言語です。Rubyを触っているとマニュアルにも書いていない「小さな発見」に遭遇することがよくあります。このような「発見」は、プログラムの質や効率の改善には直結しないかもしれません。いや、むしろチームプログラミングでは妨げになる可能性すらあります。しかしその一方で、言語自体が自分の知らない領域を持ち続けていることが、その対象に対する興味を失わせないための大きな要因である、というのもまた疑いのない事実なのです。つまり「発見」はたのしさに直結しているのです。 このブログにおいて「知って得するRubyのトリビアな記法」というタイトルで、今まで3回記事を書きました。 “知って得する21のRubyのトリビアな記法” “第2弾!知って得する12のRubyのトリビアな記法” “第3弾!知って得する12のRubyのトリビアな記法” これらのトリビアには、ネット検索で見つけたもの、Twitt

  • 動的型とか静的型の話の前に「作者の気持ち」を考えろ - mizchi log

    自分の思考を整理する意味でも、件のアレについて考えたことを書いてみる。 変数に型がないということの利点について考える - サンプルコードによるPerl入門 http://d.hatena.ne.jp/perlcodesample/20130227/1361928810 この件に触れることはプログラマとしての中二病である。恥ずかしい。マジレス乙だ。 でも気づいたら5000文字も書いてしまったし、公開して酒のんで寝る。 型のフローは機械のためだけでなく、人間に対するものでもある 最近TypeScriptを書いている。こいつを使って、二次元座標上で二点間を求める関数、getDistanceを定義してみよう。 interface IPoint { x: Number; y: Number; } var getDistance = (a:IPoint, b:IPoint): Number => Ma

    動的型とか静的型の話の前に「作者の気持ち」を考えろ - mizchi log
  • JSPが遅い理由をJava屋さんはまるでわかってないらしい - kなんとかの日記

    なんかVelocityもJSPもスクリプト言語より遅いという事実は、Java屋さんはあんまり知らなかったみたいだね。しかも、遅い原因の考察が的外ればかりで笑ってしまう。 「Javaの文字列操作は遅いから」とか「UTF-16の変換に時間がかかるから」とか、そんなのまるで関係ないですから。Javaの文字列操作は十分速いし、UTF-16の変換も主要因ではない。 #つうかさ、「Javaの文字列操作は遅い」とか、Javaに対して失礼だろ。 VeocityやJSPが遅いのは、単に動的な独自言語を導入したから。はっきりいって、これはアーキテクチャ上の間違った選択。せっかくJavaが静的であるのにその特性を利用せず、わざわざ動的言語を導入しているのだから、何考えてんだろうと思う。いつもJava屋さんが主張しているような、「コンパイル時にエラーを発見できる」「IDEでの補完が効きやすい」「リファクタリングが

    JSPが遅い理由をJava屋さんはまるでわかってないらしい - kなんとかの日記
  • 本家の5倍速? Pythonで実装したRuby処理系の「Topaz」が登場:Rails Hub情報局:エンジニアライフ

    時間だと2013年2月7日未明のことですが、「Topaz」(トパーズ)と名付けられたPythonで実装されたRubyのバージョン0.1がリリースされました(リリースに関するブログ、プロジェクトのページ、GitHubのリポジトリ)。Ruby処理系はC、Java(JVM)、Ruby、CLI、JavaScript、Smalltalkなどによる実装がありましたが、Pythonというのは、ちょっと驚きです。ただ、Pythonといっても、Python言語で書くのが主眼なのではなく、Pythonエコシステムで高速処理を目指して作られた「PyPy(パイパイ)」の成果物の上に実装したというのがTopazのようです。現在のところコード作者リストに9人の名前が上がっていて、JRuby実装で知られるチャールズ・ナッター氏の名前も入っています。 Topazは正確にはPythonではなく、RPythonと呼ばれる

    本家の5倍速? Pythonで実装したRuby処理系の「Topaz」が登場:Rails Hub情報局:エンジニアライフ
  • [関数型言語のトレンド]国内でも採用企業が増加

    「少数精鋭の開発メンバーで、短期間に新しい検索サービスを始められた」。特許情報などの無料検索サービスで200万人以上の会員を抱えるアスタミューゼ。同社でサービス開発を統括する三木隆史プラットフォーム事業部部長は、こう語る。スピードの秘密は、開発言語選びにあった。 同社が採用したのは、業務系システムの開発で主流になっているJavaでも、Webシステムで人気を博すRubyPythonでもない。「関数型プログラミング言語」と呼ばれるオープンソースの開発言語の一つ、「Scala(スカラ)」だ。 Scalaは今、世界的な注目を集める。米ツイッターや米リンクトイン、英ガーディアンなど海外の名だたる企業が自社サービスの開発に採用したことで一気にその名を知らしめた。Scalaの推進企業である米タイプセーフは2012年8月に1400万米ドル(約11億円)の資金を調達。Webアプリケーションや分散処理システ

    [関数型言語のトレンド]国内でも採用企業が増加
    manaten
    manaten 2013/02/04
    ふつーのプログラマにはScalaをベターJava的に書くのが限度じゃないかなあ。。
  • Rubyを使って「なぜ関数プログラミングは重要か」を読み解く(改定)─ 前編 ─ 但し後編の予定なし

    2年ほど前に書いた記事を電子書籍化して「M’ELBORNE BOOKS」で販売するために全体的な見直しを行なって入稿する段になって、これにはベースとなっている他者の論文があって言ってみればこの記事はそのマッシュアップになっているんだけれども、その著者の許可もなくその表現が全く別物だとしてもその主張のあらすじが残っている限りにおいてこれを販売することが果たしていいことなのかという思考に遅ればせながら陥り、それが仮に法的に問題ないとしてもなんだか一表現者の行為としての妥当性を幾分欠いているという結論に至って販売を思い留まった。かと言って折角書き直したものをこのままお蔵にするのもなんだか寂しいなあという気分も一方であり、まあ原作者の意に反したものでもないだろうからブログの記事なら許してくれるよねもう2年前にも書いちゃってるしという勝手な解釈の下、ここにその記事を公開しましたのでお時間の許すRub

    manaten
    manaten 2013/01/22
    "関数プログラミングには二種類の強力な糊、つまり関数の貼り合せをする糊(高階関数)と、プログラムの貼り合せをする糊(遅延評価)があります。"
  • 第1回 JVMはどのようにメモリ空間を利用するのか | gihyo.jp

    あのWebサービスもJVMを利用している 「Javaは大規模なエンタープライズシステムにしか使われない」 それが常識だと思っていませんか? たしかに、これまでJava Virtual Machine(JVM)は、他の言語を実行すると遅く、Javaのプログラムを実行する環境にすぎないものでした。ところが、Java 7から実装されたInvokeDynamicにより、JVM上で、RubyPHPなどさまざまなコンピュータ言語で記述されたプログラムをより高速に実行できるようになりました。 これにより、今までエンタープライズでJava言語で記述されたプログラムを実行するだけの環境であったJVMが、汎用的な実行環境になったと言えます。また、これまでJavaの実行環境として使用されていたノウハウが、他の言語で記述されたプログラムを実行する際にも利用できます。 最近では、TwitterがJVMをアプリケー

    第1回 JVMはどのようにメモリ空間を利用するのか | gihyo.jp