タグ

関連タグで絞り込む (240)

タグの絞り込みを解除

Programmingに関するHashのブックマーク (473)

  • 60%の人間はプログラミングの素質がない

    Coding Horror: Please Don't Learn to Code Please Understand Learning to Code Coding Horrorで有名なJeff Atwordが、ある州知事が今年の目標としてプログラミングを習得することを挙げていることに対し、そもそも税金を払う我々市民は、政治家にはプログラミング習得以上に重要な、政治家にしかできない問題の解決を望む、よってプログラミングを学ぶのをやめてくれという記事を書いた。これに対して、反論が多数上がっているが、Jeffも読んでいるある論文をあげて、この議論の参加するためには、必ずこの論文を知っておくべきであると書いた人がいる。この論文は有名で、非常に興味深いので、全プログラマーが読むべきである。 ふたこぶラクダという名前で知られている有名な論文がある。この論文では、60%の人間にプログラミングの素質が

    Hash
    Hash 2012/05/17
    またくだらん啓蒙系記事かなと思ったら、結構おもしろい視点だった。プログラムの素養をより抽象化して他の行動に適用してたらもっと興味深かった
  • 衛星の位置を光で射す“ラピュタの飛行石”を作ろう(前編)

    「オープンソース」というとLinuxやApacheといったソフトウエアを思い浮かべることが多いですが、最近「オープンソースハードウエア」が注目を集めています。公開された仕様を基に安価なマイコンボードが発売されていて、電気系の専門知識がなくても簡単なプログラムを書き込むだけで、独自のネット対応デバイスを製作できます。接続したセンサーの入力に応じて、LEDの点灯やモーター制御、無線通信、インターネット連携などが実現可能です。 最も人気がある小型ボード「Arduino」は3000円前後と安価です(写真1)。CやJavaに似た簡易な言語でプログラムを作成できる開発環境が整備されており、世界中のユーザーが作成したライブラリも豊富です。わずかなコードで様々なハードウエアを制御できます(図1)。 筆者はこのArduinoを使って、宇宙空間を飛行している国際宇宙ステーション(ISS)の位置をレーザーで指し

    衛星の位置を光で射す“ラピュタの飛行石”を作ろう(前編)
    Hash
    Hash 2012/05/17
    すごいすごい!!!! // ログインかったるいので続きここ => http://bit.ly/J8xu9f
  • Pythonの辞書(dict型)をvalue値でソート - プログラミング工場 / Python

    2010年01月09日 09:26 カテゴリPython Pythonの辞書(dict型)をvalue値でソート Posted by yawamen No Comments No Trackbacks Tweet そもそも辞書(dict型)には順序はないのですが・・・ key値やvalue値でソートして出力したい時があります. key値の時は簡単 d = {'A':500, 'B':200, 'C':300, 'D':100, 'E':400} for k, v in sorted(d.items()): print k, v 実行結果 A 500 B 200 C 300 D 100 E 400 value値の時も案外簡単 for k, v in sorted(d.items(), key=lambda x:x[1]): print k, v 実行結果 D 100 B 200 C 300

    Hash
    Hash 2012/04/17
  • Rubyで関数プログラミング 【目次】

    このページでは、Rubyを使って、関数プログラミングを行ってみたいと思います。 Rubyは、よくいわれるように命令型言語の発展形たるオブジェクト指向型言語ですので、関数プログラミングを行うのに適した言語ではありません。しかし、全く関数プログラミングの特徴を伝えることができないわけではありません。それに必要ないくつかの機能を備えていると思います。従って、Rubyで関数プログラミングを行うことにより、関数プログラミングへのイントロダクションにしてみたいと思っています。 念の為言っておきますが、私はRubyをよく知りません。しかし、動的束縛のオブジェクト指向言語ということなので、その言語構成は、型システム以外はメジャーな多目的言語(C++,Object Pascal等)とそう変わらないと思います。というか、完全にそういう前提で話をします。 因みに、参考資料は、言語仕様に関するヘルプ、オライ

    Hash
    Hash 2012/04/16
    この記事面白い。SICPでなんとなく再帰してたけどRubyの日常的なコードと比較されるとなるほどと思う
  • 知って得する21のRubyのトリビアな記法 ~ 21 Trivia Notations you should know in Ruby - hp12c

    ブログを下記に移転しました。デザイン変更により移転先では記事が一層読みやすくなっていますので、よろしければ移動をお願い致します。 知って得する21のRubyのトリビアな記法: melborne.github.com - ちょっとトリビアだけど 知っていると意外と便利なRubyの記法を 21個拾ってみたよ(Ruby1.9限定) 君なら全部知ってるかもしれないけど.. 1. 動的継承 Rubyのクラス継承では < 記号の右辺に クラス定数だけでなくクラスを返す式が書けるよ class Male def laugh; 'Ha ha ha!' end end class Female def laugh; 'Fu fu fu..' end end class Me < [Male, Female][rand 2] end Me.superclass # => Female Me.new.laugh

    知って得する21のRubyのトリビアな記法 ~ 21 Trivia Notations you should know in Ruby - hp12c
    Hash
    Hash 2012/03/29
    おもしろい。
  • How to loop through a plain JavaScript object with the objects as members

    Hash
    Hash 2012/03/28
    すべてのpropertyを回そうとするとprimitive objectのprototypeも回しちゃう
  • 圧縮後のJavaScriptやコンパイル後のCoffeeScriptでも、ブラウザ上で元のソースを参照できる新技術「Source Maps」登場

    圧縮後のJavaScriptやコンパイル後のCoffeeScriptでも、ブラウザ上で元のソースを参照できる新技術「Source Maps」登場 JavaScriptをデプロイする際には、できるだけ小さくするために余計なスペースや改行を取り除き、さらに関数名なども変換して圧縮することがあります。しかし圧縮後のJavaScriptにバグが見つかるとそのままではデバッグしにくいため、いちいち元のソースコードに戻してデバッグしなければなりません。 Webサイト「HTML5 Rocks」の記事「INTRODUCTION TO JAVASCRIPT SOURCE MAPS」で紹介されたWebブラウザの新技術「Source Maps」は、圧縮状態のコードを実行していても元のソースコードを参照しながらデバッグできるだけでなく、CoffeeScriptのようなJavaScriptへ変換する言語であっても、

    圧縮後のJavaScriptやコンパイル後のCoffeeScriptでも、ブラウザ上で元のソースを参照できる新技術「Source Maps」登場
    Hash
    Hash 2012/03/25
    GoogleやFacebook, GitHubのJavaScriptを読み放題というわけか
  • Primer

    PrimitivesPrimer’s design tokens for color, spacing, and typography.

    Primer
    Hash
    Hash 2012/03/22
    これは素敵
  • はてなグループの終了日を2020年1月31日(金)に決定しました - はてなの告知

    はてなグループの終了日を2020年1月31日(金)に決定しました 以下のエントリの通り、今年末を目処にはてなグループを終了予定である旨をお知らせしておりました。 2019年末を目処に、はてなグループの提供を終了する予定です - はてなグループ日記 このたび、正式に終了日を決定いたしましたので、以下の通りご確認ください。 終了日: 2020年1月31日(金) エクスポート希望申請期限:2020年1月31日(金) 終了日以降は、はてなグループの閲覧および投稿は行えません。日記のエクスポートが必要な方は以下の記事にしたがって手続きをしてください。 はてなグループに投稿された日記データのエクスポートについて - はてなグループ日記 ご利用のみなさまにはご迷惑をおかけいたしますが、どうぞよろしくお願いいたします。 2020-06-25 追記 はてなグループ日記のエクスポートデータは2020年2月28

    はてなグループの終了日を2020年1月31日(金)に決定しました - はてなの告知
  • Kobito - プログラミングのメモやスニペットの記録に最適なMacアプリケーション

    Kobitoの3つの特徴 Markdownとリアルタイムプレビューで快適に入力 Syntax Highlightでスニペットをきれいに記録 ボタンひとつでコードを簡単に公開

    Hash
    Hash 2012/03/14
    Qiitaのkobito.app公式サイト登場だそうな。試用させてもらってるβ版もバージョンアップしてちょっと使いやすくなってた
  • Rubyist が今すぐ Elixir を使ってみるべき理由 - m.igrs.jp

    Elixir の読み方は多分「エリクサー」。RPGゲームのアイテムにありそうな名前だ。 個人的には「エリクシール」と読みたいところだが多分「エリクサー」で良いだろう。 Elixir は最近になって開発が活発化しており、公式サイトも最近立ち上げられたようだ。 http://elixir-lang.org/ つい先週のことだが Github でも公式にサポートされている。 Elixir is officially supported on Github! Including file identification and syntax highlight: github.com/languages/Elix… — Elixir Lang (@elixirlang) March 5, 2012 ここにきて盛り上がってきた感があるので、作者である José Valim が約1年前に書いた Why

  • 人気の言語を作るには

    人気の言語を作るには ---Being Popular--- Paul Graham, May 2001. Copyright 2001 by Paul Graham これは、Paul Graham: Being Popularを、原著者の許可を得て翻訳・公開するものです。 プロジェクト杉田玄白正式参加テキスト。 <版権表示> 和訳テキストの複製、変更、再配布は、この版権表示を残す限り、自由に行って結構です。 (「この版権表示」には上の文も含まれます。すなわち、再配布を禁止してはいけません)。 Copyright 2001 by Paul Graham 原文: http://www.paulgraham.com/popular.html語訳:Shiro Kawai (shiro @ acm.org) <版権表示終り> 文中、Eric Raymondの "How to become

    人気の言語を作るには
  • はてなグループの終了日を2020年1月31日(金)に決定しました - はてなの告知

    はてなグループの終了日を2020年1月31日(金)に決定しました 以下のエントリの通り、今年末を目処にはてなグループを終了予定である旨をお知らせしておりました。 2019年末を目処に、はてなグループの提供を終了する予定です - はてなグループ日記 このたび、正式に終了日を決定いたしましたので、以下の通りご確認ください。 終了日: 2020年1月31日(金) エクスポート希望申請期限:2020年1月31日(金) 終了日以降は、はてなグループの閲覧および投稿は行えません。日記のエクスポートが必要な方は以下の記事にしたがって手続きをしてください。 はてなグループに投稿された日記データのエクスポートについて - はてなグループ日記 ご利用のみなさまにはご迷惑をおかけいたしますが、どうぞよろしくお願いいたします。 2020-06-25 追記 はてなグループ日記のエクスポートデータは2020年2月28

    はてなグループの終了日を2020年1月31日(金)に決定しました - はてなの告知
    Hash
    Hash 2012/03/07
    parallelというらいぶらり。
  • CoderDojo community

    CoderDojo is part of the Code Club communityYou have been redirected to the Code Club website.

    Hash
    Hash 2012/03/02
    いいなー
  • AjaxZip 2.0

    Kawa.netxp AjaxZip 2.0 - Ajax郵便番号→住所自動入力フォーム(CGI不要版) AjaxZip2は、昨年公開した 『ajaxな住所入力フォーム』 の新バージョンです。 郵便番号を入力すると、該当する都道府県名・住所が自動的に入力されます。 Ajaxと JSON フォーマットを利用するJavaScriptライブラリとして公開しました。 JavaScript のみで稼動するため、サーバサイドで稼動するCGIプログラムは不要です。 郵便番号→住所変換処理は全てクライアントサイドのJavaScriptで行います。 既存 HTML の住所入力フォームをたった3行書き換えるだけで利用できます。 簡単に設置できるため、プログラムに詳しくない方でも導入していただけると思います。 以下の住所入力フォームに、7桁の郵便番号を入力してみてください。 【2007/12/09 追記】 jQ

    Hash
    Hash 2012/02/29
    素敵!
  • ラムダ計算基礎文法最速マスター - 貳佰伍拾陸夜日記

    ラムダ計算は, 多くのプログラミング言語, とくに関数型言語の原形になっています. ラムダ計算について理解しておくことは, 多くのプログラミング言語の習得に役立つでしょう. ラムダ計算はチューリング完全で, 計算能力としてはふつうのプログラミング言語と同じです. ラムダ計算で計算を書く訓練をしておくことは, 任意の計算を関数のみを使って(他の制御構文を用いずに)書くときに役立ちます. ふつうに書いたら煩雑な処理を, 関数型言語のやり方で書くとすっきりすることが多々あり, コードを自由自在に書くためには必須の考え方と言えるでしょう. 項 ラムダ計算の式を項(term)と言います. 項は変数, 抽象, 適用のいずれかです. 変数 変数(variable)はふつう1文字で書きます. 変数には関数内の束縛変数(bound variable)か自由変数(free variable)かという区別があり

    ラムダ計算基礎文法最速マスター - 貳佰伍拾陸夜日記
    Hash
    Hash 2012/02/28
  • 紙芝居:ラムダ抽象 - 檜山正幸のキマイラ飼育記 (はてなBlog)

    石井君*1が、2月19日セミナーのツイン・ホワイトボードを撮影してくれていたので、ハイライト(?)部分を紙芝居にしました。 紙と鉛筆の準備はいいかな -- では、はじまりはじまり。 g = <a, b, x| a*x + b> という関数があるとき、これを2回“ラムダ抽象”してみます。ラムダ抽象とは、右肩ハット(^)または大文字ラムダ(Λ)で表されるオペレータです。ラムダ抽象とカリー化は同義語です*2。ラムダ抽象すると、n引数関数は(n-1)引数関数に変化し、その代わり戻り値が関数型になります。ただし、ここで言う「関数型」は数学的な関数の型ではなくて、とある実行エンジンEで実行する関数コードのデータ型のことです。 gの2回ラムダ抽象g^^を絵に描くとこうです。 gの1回ラムダ抽象 g^ = Λg と、gの2回ラムダ抽象 g^^ = Λ(Λg) を計算してみます。Λの計算規則*3を使えば、こ

    紙芝居:ラムダ抽象 - 檜山正幸のキマイラ飼育記 (はてなBlog)
  • 404 Blog Not Found:TuringとChurchの狭間で

    2006年04月16日13:53 カテゴリMath書評/画評/品評 TuringとChurchの狭間で The Emperor's New Mind Roger Penrose [邦訳:皇帝の新しい心] なんでひげぽんが反復がすぐにわからなかったかを憶測すると、「変数とは代入すべきもの」、という手続き型言語の呪縛が思い立つ。ひげぽんは別にがっかりする必要はない。hyukiさんさえそれに引っかかっていたんだから。 その証拠を、以下にお見せする。 [結]2005年8月 - www.textfile.org sub fix { my $G = shift; return $G->( sub { my $x = shift; return fix($G)->($x); } ); } これはPerlで実装した不動点関数で、全く問題なく動く。しかし、hyukiさんも知らぬ間に一つ「反則」を犯しているこ

    404 Blog Not Found:TuringとChurchの狭間で
    Hash
    Hash 2012/02/27
    この文脈で皇帝の新しい心が出てくるとは
  • Racket

    #lang racket/gui (define my-language 'English) (define translations #hash([Chinese . "你好 世界"] [English . "Hello world"] [French . "Bonjour le monde"] [German . "Hallo Welt"] [Greek . "Γειά σου, κόσμε"] [Portuguese . "Olá mundo"] [Spanish . "Hola mundo"] [Thai . "สวัสดีชาวโลก"] [Turkish . "Merhaba Dünya"])) (define my-hello-world (hash-ref translations my-language "hello world")) (message-box "" my

    Hash
    Hash 2012/02/25
    LISPでちょこちょこ遊びたい衝動が定期的に来るので次はGaucheの代わりにコイツ使ってみよう
  • node/webosocketによるオンラインゲームの実装を考える / オンメモリ、KVS、RDBMS、圧縮プロトコル、そのゲームデザイン + 就活の話 - mizchi log

    派手で見栄えがする大規模なプロダクトを作ろう!っていうことで、一人でフルスタックなネトゲを作っている。大きなプログラムを書いても破綻しないようにテスト書きまくってテストファーストを心がけたり、Travis-CIによる継続的インテグレーションで頑張ったり。 というわけで作っているのはMMORPGなんだけど、ここで実装するのはまあ平均的なMMORPGを想像してもらいたい。自分がやろうとしているのは、モダンなOSSとさくらの安いVPSで、独学の学生一人でもフルスタックなネトゲみたいなのが組める、ということの実証。 なんでそんなことをしているかって言うと、一応就活中で、見栄えがするアプリ提出できるとおいしいなーっていう下心。 *追記* ここでは https://github.com/mizchi/wanderer のことを言ってるんだけど大規模リファクタリング中なのでここで言ってることは半分ぐらい

    node/webosocketによるオンラインゲームの実装を考える / オンメモリ、KVS、RDBMS、圧縮プロトコル、そのゲームデザイン + 就活の話 - mizchi log
    Hash
    Hash 2012/02/12
    これだけのものを出せばそりゃ引く手数多だろう。勉強になるます