タグ

programmingに関するgymnoのブックマーク (387)

  • 空白文字 \f と\v の違いについて - OKWAVE

    「C言語で」ではなくてシステムあるいは出力装置によって違いがあります。 例えば"\f"で示されるForm Feed制御文字はプリンタなどでページ送りの意味に扱われます。(これもプリンタの機種やプリンタに送られる文脈で解釈が変わることがあるので「必ずそうなる」というものでもないです。) 一方で"\v"で示されるVertical Tab制御文字は今でも使われるHorizontal Tab("\t")の垂直方向版であらかじめ規定されたタブ位置まで印字位置を進めます。 ただ、いずれも今の時代では制御文字として来の意味を発揮する使い方はほとんどないだろうと思います。Linux、というよりはターミナルエミュレータ(xtermとか)の仕様によりますけれど、画面上ではあまり意味がないので同じ桁位置で次行移動くらいの実装になっているのでしょう。記憶に定かでないのですが一世を風靡したターミナルVT100がそ

    空白文字 \f と\v の違いについて - OKWAVE
  • Million Lines of Code — Information is Beautiful

    Is a million lines of code a lot? How many lines are there in Windows? Facebook? iPhone apps? » Did we miss any? Let us know. » See the data: http://bit.ly/KIB_linescode » Read the Reddit discussion Updated with clarifications & additions. Thanks to Joe Sadoski, Axel Naumann @ CERN, Daniel Nilsson, Flavio Lehner, Richard Hartmann, Rex Stover, Marius Bauer. » See previous version

    Million Lines of Code — Information is Beautiful
  • かっこいいプログラマが欲しいなあ - 深沢克也の日記

    定期的にもやもやする なんか定期的にプログラミングの話が出てきて、そのたびになにやらもやもやします。 今回はそのモヤモヤを解消してくれそうな感じの記事があったので、その紹介と思うことをば。 プログラミングはそれ自体が目的であっていいって話。 とても理解できます。 プログラマって、もっと適当で良いと思うんですよね。 「理論的に」じゃなくて、もっと「感情的に」伝えたほうが面白いと思うんですよ。 ということで個人的には最初の方にあった以下の部分を広げて欲しいなぁ、とか思います。 僕がプログラミングをはじめたとき、何を思ってプログラミングをはじめたか思い出してみようとしたけど、よく思い出せなかった。 ただ漠然と感じていたのは、プログラミングは個人が現実的にこの世界に直接手を加えることができる手段の1つであり、それをやらないのは勿体無い、といったことだったと思う。たぶん。 どうも、プログラマを目指す

    かっこいいプログラマが欲しいなあ - 深沢克也の日記
  • ライフゲームの世界 - 人工知能に関する断創録

    ニコニコ動画の複雑系コミュニティの発起人のはむくんがライフゲームの世界というとても面白い動画を投稿されています。Twitterでは何度かツイートしてたけど完結したのでブログでも紹介させていただきます。 ライフゲームの世界1 John Horton Conwayが提案したライフゲーム(Conway's Game of Life)の基的なルールを解説しています。また頻繁に現れる4種の物体(ブロック、蜂の巣、ブリンカー、グライダー)を紹介しています。最後の作品紹介は、P416 60P5H2V0 gunというすさまじいパターンが出てきます。グライダー銃から発射したグライダーたちが滑走路を通ります。グライダーの集合先では、発射された複数のグライダーが合体して宇宙船が組み立てられます。 ライフゲームの世界2 いろんな振動子(パルサー、タンブラー、銀河)が鑑賞できます。作品紹介では大量の振動子が勢揃い

    ライフゲームの世界 - 人工知能に関する断創録
  • Linuxエンジニアを目指して入社一年目にやって役にたったと思う事

    人間とウェブの未来(旧) 「ウェブの歴史は人類の歴史の繰り返し」という観点から色々勉強しています。2014年までの人間とウェブの未来の旧ブログです。 自分がLinuxエンジニアになりたくて、入社一年目にやってよかった事をまとめておこうと思う。一年目にどれだけやるかが、勝負の別れめといっても過言ではない。それは技術を学ぶだけではない。いっぱいあるんだけど、最低限やって良かったなと思う項目を列挙する。 それがぼくには楽しかったからを読む Amazonとかで買う。出来れば原著がいいけど無理しなくて良い。 Just for Fun. Linuxがどうやってできたか、なぜそれをしようと思ったのかが分かり、今後自分がLinuxエンジニアとしてどういう動機で仕事をしていきたいかを考えさせてくれる。このを読めば、自分が仕事でオープンソースを扱っていることに自信を持てると思う。 「なんでその仕事してる

    Linuxエンジニアを目指して入社一年目にやって役にたったと思う事
  • 【プログラマー板】印象に残ったコメントを晒せ

    2019-01-04 名無し@ベアード : 3大運転中イライラする奴ら「法定速度厳守マン」「曲がると同時にウインカーマン」- 2019-01-04 bosbobet : 国内旅行に役立つテンプレまとめ- 2019-01-04 agen bola : 国内旅行に役立つテンプレまとめ- 2018-12-24 RazviksInoto : サザエさんを萌え絵にしたららきすたになるんじゃね?-деньги на карту без отказов круглосуточно - Все-Займы-Тут.РФ 2018-12-07 長崎県でアパートを売るの情報はこちら : 日SUGEEEEEEEEEEEEEEEE!ってなるコピペくれ- 2018-11-24 名無し@ベアード : 東京の都会度を100とすると大阪80名古屋70くらいじゃん- 2018-11-23 名無し@ベアード : 【悲報】槍

    【プログラマー板】印象に残ったコメントを晒せ
  • 史上最高に愚かしいCのバグとは何か - YAMDAS現更新履歴

    The most stupid C bug ever | elpauer 先日は徳丸浩さんによる PHP5.3.7 の crypt 関数におけるバグの解説を読み、世界的に有名なオープンソースソフトウェアでもこんな初歩的なミスをやらかすのかとすごく親近感が湧いてしまったが、Pau Garcia Quiles が語るこれまでで最も愚かしい C のバグとは何か? 彼はテンポラリファイルを tmpfile() で作る Unix アプリケーションの移植をやっていた。 else if (code == 200) { // Downloading whole file /* Write new file (plus allow reading once we finish) */ g = fname ? fopen(fname, "w+") : tmpfile(); } マイクロソフトの tmpfile

    史上最高に愚かしいCのバグとは何か - YAMDAS現更新履歴
  • Python による日本語自然言語処理

    はじめに この文書は、 Steven Bird, Ewan Klein, Edward Loper 著 萩原 正人、中山 敬広、水野 貴明 訳 『入門 自然言語処理』 O'Reilly Japan, 2010. の第12章「Python による日語自然言語処理」を、原書 Natural Language Processing with Python と同じ Creative Commons Attribution Noncommercial No Derivative Works 3.0 US License の下で公開するものです。 原書では主に英語を対象とした自然言語処理を取り扱っています。内容や考え方の多くは言語に依存しないものではありますが、単語の分かち書きをしない点や統語構造等の違いから、日語を対象とする場合、いくつか気をつけなければいけない点があります。日語を扱う場合にも

  • 『言語設計者たちが考えること』――プログラミングの世界を作った神々の饗宴:晴読雨読@エンジニアライフ:エンジニアライフ

    言語設計者たちが考えること Federico Biancuzzi、Shane Warden(編集) 伊藤真浩、頃末和義、佐藤嘉一、鈴木幸敏、村上雅章 (翻訳) オライリージャパン 2010年9月 ISBN-10: 4873114713 ISBN-13: 978-4873114712 3780円(税込) ■広大なプログラミング言語の世界を作った人々 書は、新旧18のプログラミング言語を設計した、20人超の「言語設計者」へのインタビューを集めたものです。原著(英語)は17言語の設計者に対するインタビューですが、日語版はRubyのまつもとゆきひろ氏へのインタビューを追加しています。 「言語設計者」と一口にいっても、かなりの幅があります。そもそも「言語」自体、C++Java、C#といった広く使われている汎用言語から、awkのように比較的用途が限定された言語、あるいはUMLのようにプログラミン

    『言語設計者たちが考えること』――プログラミングの世界を作った神々の饗宴:晴読雨読@エンジニアライフ:エンジニアライフ
  • 年収1500万円超えたフリーのプログラマだけど何か質問ある? - 痛い信者(ノ∀`)

    2010年12月27日11:12 年収1500万円超えたフリーのプログラマだけど何か質問ある? Tweet カテゴリITビジネス 1 以下、名無しにかわりましてVIPがお送りします [] 2010/12/27(月) 05:11:46.18 ID:bRhMcIo40 立ったら答える 4 以下、名無しにかわりましてVIPがお送りします [] 2010/12/27(月) 05:12:58.47 ID:nYFoSHT80 やっぱりグラマーなの? 5 以下、名無しにかわりましてVIPがお送りします [] 2010/12/27(月) 05:13:55.44 ID:+uZCPTlZP このご時勢にプログラマでフリーランスとか度胸ありますね >>5 5年くらいフリーやってる 7 以下、名無しにかわりましてVIPがお送りします [] 2010/12/27(月) 05:16:46.62 ID:s+YM0Bjk

  • プログラマのための便利なオンラインエディタ厳選17個まとめ | Web活メモ帳

    プログラムの開発にはテキストエディが必須ですよね。最近はWEBブラウザだけで簡単にプログラム開発ができるようになってきているので、手軽にプログラムを試して見る事ができます。 日はオンラインで開発する事ができるサイトをまとめてみました。 詳しくは以下 wonderfl 面白法人カヤックが提供しているFlashをつくれるオンラインサービス。 既存のフラッシュをforkして新しいアプリケーションをコンパイルする事ができます。 公式サイト Zoho Creator Zoho CreatorでGoogle App Engine用のPythonソースが生成可能です。 公式サイト Amy Editor Mac風インターフェイスのエディタ。 HTMLJavaScriptPHPPythonRuby、Cのカラーリングが可能になっており、Ctrl + Z などのショートカットキーも動作。 タブ入力や行

    プログラマのための便利なオンラインエディタ厳選17個まとめ | Web活メモ帳
  • Googleエンジニアから学ぶ、ハッカーになるための勉強法 - 久保清隆のブログ

    Debian Project/Google ソフトウェアエンジニア鵜飼文敏さんの講演動画を見たのでまとめ。 内容は、フリーソフトウェア、オープンソフトウェアのハッカーGoogle内のハッカーがどのようにソフトウェアを作っているか。 少し前の講演だけど、ハッカーを目指す上で非常に参考になった。 ハッカーの特徴 ハッカーとは Hacker ethic ハッカーのソフトウェアの作り方 ハッカーの開発スタイル 手順 要求仕様 設計 実装 テスト デバッグ チューニング ハッカーに近づくには 必要な知識 知識の習得の仕方 ハッカー仕事をするときの問題点 その他に紹介されていた書籍 感想 参考 ハッカーの特徴 普通の人をはるかに上回る高い生産性 高品質のソフトウェアを作りだす ハッカーとは ハッカーズ大辞典によると、 プログラム可能なシステムの細かい部分を探ったり、その機能を拡張する方法を探求した

    Googleエンジニアから学ぶ、ハッカーになるための勉強法 - 久保清隆のブログ
  • 多重継承まとめ - 西尾泰和のはてなダイアリー

    JavaはInterfaceという特殊な実装を持たないものだけ多重継承できる。実装を多重継承する仕組みはない。同じシグネチャのメソッドを持っている2つのInterfaceを継承した際にエラーにならないので衝突に気付けない。 Pythonはクラスを多重継承できる。同じ名前のメソッドを持っている2つのクラスを継承した際にどのメソッドが呼ばれるかはC3線形化を使って決定される。see: A Monotonic Superclass Linearization for Dylan RubyはModuleという「なにかを継承することはできなくてインスタンス化もできないもの」だけは多重継承できる。Moduleが別のものを継承できないためメソッドの解決は素朴な探索でOK(include A include BしたらBでの実装が優先) SmalltalkにはTraitという実装の多重継承ができるしくみがあ

    多重継承まとめ - 西尾泰和のはてなダイアリー
  • グーグルが構築した大規模システムの現実、そしてデザインパターン(1)~MapReduce編

    グーグルが「Evolution and Future Directions of Large-Scale Storage and Computation Systems at Google」(グーグルにおける、大規模ストレージとコンピュテーションの進化と将来の方向性)という講演を、6月に行われたACM(米国計算機学会)主催のクラウドコンピューティングのシンポジウム「ACM Symposium on Cloud Computing 2010」で行っています。 グーグルはどのようにして大規模分散システムを構築してきたのか、そして、そこからどのようなことを学んだのかが語られていますし、後半では大規模分散システムのデザインパターンという、非常に興味深いノウハウも公開している、非常に情報量の多い講演です。 その講演の内容を、全部で4つの記事、MapReduce編、BigTable編、教訓編、デザイン

    グーグルが構築した大規模システムの現実、そしてデザインパターン(1)~MapReduce編
  • 第1回 機械学習 ことはじめ | gihyo.jp

    次のサービスや製品はどれも身近にありますが、これらに共通していることはなんでしょう。 Amazonの「この商品を買った人はこんな商品も買っています」 はてなブックマークの「関連エントリー」 Google 翻訳 Google 日本語入力 メールクライアントのスパムフィルタ デジタルカメラの自動顔認識 ニンテンドーDSの手書き文字認識 買い物履歴、ユーザが書いたコメントやタグ、Webに無数にあるページ、メール、画像や動画と対象はそれぞれ異なっていますが、どれも「データから有益な情報を取り出す」ということを行っています。 これらは「機械学習」という技術を使って実現されているのです。 機械学習の応用範囲 機械学習は冒頭で挙げた以外にも、様々な分野で使われています。 例えば、ノイズ除去や特徴の抽出を目的とした利用パターンがあります。音声認識や画像認識、文字認識(OCR)などはその代表格です。それらも

    第1回 機械学習 ことはじめ | gihyo.jp
  • Python Hack-a-thon 2010.07で「本当にあった怖い話」をしてきました - 神様なんて信じない僕らのために

    土曜日のPython Hack-a-thon 2010.07で「当にあった怖い話」をしてきました。 会場を提供してくださったオラクルさん、 そして、スタッフの皆さん、色々準備ありがとうございました。 また、参加者の皆さんお疲れ様でした! (レポートは別途書きます) で、俺のプレゼンは完全にネタなので、ご了承ください。(特にC++erの皆さん) 前半は前振りなので、あまり気にしないでください。 プレゼン中で某C++な人達の写真や、Twitter発言が引用してありますが、 もし問題があればお知らせください。 「ソースを読もう」とか意味ないですので飛ばすの推奨。 また、なんか話したいなあ。 C++の話(当にあった怖い話)View more presentations from Isoparametric . あと、プレゼン中で「C++の設計と進化」を勧めていますが、 C++のことわからないと

    Python Hack-a-thon 2010.07で「本当にあった怖い話」をしてきました - 神様なんて信じない僕らのために
  • プログラミング言語の優秀さと道具としての評価は別 - kなんとかの日記

    ワシは、cgi.rb なんかが標準添付になっている RubyPHP を dis る資格はないと思ってる (cgi.rbの元ネタである CGI.pm を擁する Perl も同じじゃないかな)。cgi.rb は、標準添付モジュールのくせにコードが汚いし遅いし、cgi[] の戻り値が String だったり File だったりするし、どう考えても設計ミス。 ## Ruby だと cgi = CGI.new p cgi['name'] #=> これが File である可能性がある ## PHP だとそんな問題はない $name = $_REQUEST['name']; # 必ず文字列 $file = $_FILE['name']; # ファイルは別途取り出すそして大半の Rubyist はこういった問題に気づいてすらいない。そういう人たちが PHP を dis ってるのは「ハァ?」と思う。

    プログラミング言語の優秀さと道具としての評価は別 - kなんとかの日記
  • 新しめの Autotools (Autoconf&Automake) を使ってみよう

    変更履歴 2005/12/25 aclocal のサブディレクトリ探索に関して誤り(変更?)があったので訂正。libtoolに関する記述を部分的に追加 2005/12/22 最近は "touch NEWS README AUTHORS ChangeLog" しないとautomakeしてもMakefile.inを作ってくれない? 2003/11/28 最近のautomake(1.6くらいから?)では AC_CONFIG_HEADERS を AM_CONFIG_HEADER に変えなくてもいいらしい。 2003/11/10 AM_INIT_AUTOMAKE は(Ver. 1.4 の後半リリースくらいから?) 引数がいらない? 記述を変更 2003/10/13 間違い多かったので気づいたの直しました(AC_hogeとAM_hoge, HEADERとHEADERSなど) 2003/10/14 A

  • 最新Cコンパイラーの最適化事情 - Radium Software

    State of the art C compiler optimization tricks, Felix von Leitner, Linux Kongress 2009. 最近のCコンパイラーの最適化能力についてまとめたプレゼンテーション。定数の扱いやインライン展開などの基的な項目から始まって,分岐の削除やベクトル化, SIMD 化など,最新のコンパイラーに搭載されている様々な機能について調べている。 この手の分岐の削除はほとんどのコンパイラーで有効らしい。 ベクトル化については gcc がだいぶ頑張っている印象。 「gcc は全プラットフォームにおいてビデオコーデックプログラマーより賢い」 これらの最適化が実際のコードでどのように機能するか気になって逆アセンブリコードを覗いてみる人も少なくないと思うけれど,それを代わりにやってくれた感じだ。この手の話題に興味がある人ならば,目を通

    最新Cコンパイラーの最適化事情 - Radium Software
  • グーグル、オープンソースのプログラミング言語「Go」を発表

    Googleは米国時間11月10日、オープンソースのプログラミング言語「Go」を発表した。Goは、首席ソフトエンジニアRob Pike氏やUNIXの共同開発者のKen Thompson氏らで構成されるチームにより開発された。 現在、Goプロジェクトは、プログラミング言語、コンパイラ、Goで書かれたプログラムに多くのビルトイン機能を与えるランタイムパッケージプログラムで構成されている。Pike氏によると、Goは、CおよびC++と類似しているが、最新の機能を採り入れ、ウェブブラウザ内でも使用可能にするなどの汎用性を備えているという。 Goは、ソフトウェアをマルチコアプロセッサで実行する場合に発生する問題に対処するよう開発されている。またオブジェクト指向プログラミングが持つ問題点を緩和するためのアプローチが取られているほか、同社はオープンソースブログで、Pythonのようなダイナミック言語で作業

    グーグル、オープンソースのプログラミング言語「Go」を発表