タグ

ProgrammingとPythonに関するshin1x1のブックマーク (13)

  • ブロックチェーンを作ることで学ぶ 〜ブロックチェーンがどのように動いているのか学ぶ最速の方法は作ってみることだ〜 - Qiita

    この記事について この記事はDaniel van FlymenさんのLearn Blockchains by Building One - The fastest way to learn how Blockchains work is to build oneを人の許可を得て翻訳したものです。 このブロックチェーンのリポジトリではPython以外での言語の実装者の募集も行われているので、興味がある方は是非どうぞ! また、この翻訳で出てくる日語版のリポジトリはこちらにあるので是非参考にしてみてください。 はじめに あなたがここにいるのは、私と同じように、暗号通貨の盛り上がりに対して心構えが出来ているからだ。そしてあなたはブロックチェーンがどのように動いているのか -その裏にある基的なテクノロジー- を理解したいと思っている。 しかしブロックチェーンを理解するのは簡単ではない、少なくと

    ブロックチェーンを作ることで学ぶ 〜ブロックチェーンがどのように動いているのか学ぶ最速の方法は作ってみることだ〜 - Qiita
  • 【長編ポエム】関数型言語が分からんお前でもPythonなら分かるやろ:第1回 関数を受け取る関数は便利だよ編 - Qiita

    これは、関数型プログラミングの特徴を Python で説明した長編ポエムです。 IQ145 の美少女は出てきませんので、過度な期待はしないでください。 【対象読者】 関数型言語は知らないけど関数型プログラミングの初歩を勉強したい人 (Python を知らなくてもなんとなく分かるように書いたので、PHPJavaJavaScript の人も読んでみてください) 【連載記事】 第1回 関数を受け取る関数は便利だよ編 (←今ココ) 第2回 関数を生成する関数はすごいよ編 はじめに 「なぜ関数プログラミングは重要か」という文章があります。タイトルの通り、関数型言語がいかに役に立つかを紹介している文章です。長いですが、3 行でまとめるとこんな感じ: ソフトウェアがどんどん複雑になるので、モジュール化が重要 関数型言語は、強力なモジュール化機能を提供している 特に「高階関数」と「遅延評価」が

    【長編ポエム】関数型言語が分からんお前でもPythonなら分かるやろ:第1回 関数を受け取る関数は便利だよ編 - Qiita
  • Python入門 : 4日間コース社内トレーニング

    ノンプログラマーエンジニアを対象としたプログラミング言語 Python のトレーニング。演習込みで 4時間 x 4日間 の内容を1スライドにまとめています。 プログラミングとはなんぞや、なぜpythonをやるのかというところから、クラスの継承あたりまでをカバーしています。それにくわえて業務によく利用されると思われる機能を説明しています。Read less

    Python入門 : 4日間コース社内トレーニング
  • 内包表記について、すごい合同勉強会で話した | そんなこと覚えてない

    すごい合同勉強会2014 in 広島でセッションしたので内容を公開しておく。 今回は「私がモナドの内包表記という名前を知った時の感覚を伝えよう」というのが目的でした。 さりげなく「私がモナドに感じている効能を伝える」というのもしているのですが、そこは当にさりげなく。 内包表記。その意味を知らずに5年前ぐらいにpythonで利用していて、forやif文字通りにうけとっており、その動作を正しく理解できてないときがありました。 現在とその間にHaskellを学び、その5年前の自分に内包表記を伝えるにはという観点で話を進めました。 まず、リストの内包表記ですが、リストを生成を簡単にしてくれる機能です。 内包表記は、どうやら数学の集合の記法である内包的記法に由来するそうで、「関数プログラミング入門 ―Haskellで学ぶ原理と技法―」か何かで読んだ記憶があります。 その対になる記法として外延的記法

    shin1x1
    shin1x1 2014/11/04
    SQL を例にするのは、分かりやすい / "斜めに伸びるのを真っ直ぐにする"という表現は、なるほど。
  • 迫り来る「forおじさん」と呼ばれる時代 - Line 1: Error: Invalid Blog('by Esehara' )

    はじめに 今となっては、プログラマにとってなんとなく理解して利用できることが当たり前になりつつあるオブジェクト指向ですが、しかし、それこそ今から数年前には、この「オブジェクト指向」というのは、いわばおじさん達が変な方針を打ち出したりして「え、それ変な実装方針じゃねえの」というツッコミが入ったりしていました(ちなみにそのあたりの雰囲気については、この記事を読むと分かりやすいでしょう)。 もちろん、これはこれなりにメリットがあるのかもしれませんが、しかしそれはまた別のオブジェクト指向を利用したモデリングと比較してのことであって、「これだけでいい」と考える人はいないでしょう。 原則: だってそのほうが開発しやすいから まず最初に原則を考える必要があります。まずひとつに、必ずしもオブジェクト指向が正しいモデリングの方法ではないこと。少なくとも自分が思うに、オブジェクト指向を使うべき理由というのは、

    迫り来る「forおじさん」と呼ばれる時代 - Line 1: Error: Invalid Blog('by Esehara' )
  • Pythonにサヨナラを - HackerNews翻訳してみた

    「HackerNews翻訳してみた」が POSTD (ポスト・ディー) としてリニューアルしました! この記事はここでも公開されています。 Original article: Saying Goodbye To Python by Ian Bicking ずっと先延ばしにしてきた記事を書きます。決別宣言ではなく(ずいぶん前に離れていますし)、ただ自分が歩んできた道を振り返ったに過ぎません。Pythonの世界に別れを告げてずいぶん経つのに、これまでサヨナラを言う勇気がなかったのです。 何年も前にPythonを卒業したとはいえ多少の愛着は残っており、戻る可能性もあると思っていました。PyCon 2013への提議が却下されたことは頭にきましたが(面白い話をしようと思っていたのに!)、この件で自分はもうPythonコミュニティの一員ではないのだと確信しました。 Pythonは私が初めて(もしかした

  • 大量のテキストからランダムに少数の行を抽出したい - Reservoir Sampling - 唯物是真 @Scaled_Wurm

    前に以下のような記事を書きましたが、大量のテキストではうまくいかなかったので新たに書きました ファイルからランダムにN行取り出す(shufコマンド) - 唯物是真 @Scaled_Wurm 上の記事ではテキストをランダムに\(k\)行取り出したい時"shuf -n k"コマンドでランダムにシャッフルした\(k\)行を取り出していました ところが非常に大きなテキストファイルに対して上のコマンドを実行すると、一度にデータを全部メモリに読み込み始めているのか、すごい勢いでメモリを消費していきました(sort -Rでも) そこでメモリをあまり使わずにランダムに\(k\)行取り出す方法について調べました まず基的な非復元抽出のアルゴリズムは以下の記事の発展手法とか追記のあたりの話がわかりやすいと思います 非復元抽出の高速かつ実装が簡単な方法を考える - 睡眠不足?! この記事の話も一度全部の要素を

    大量のテキストからランダムに少数の行を抽出したい - Reservoir Sampling - 唯物是真 @Scaled_Wurm
  • PythonとかScrapyとか使ってクローリングやスクレイピングするノウハウを公開してみる! - orangain flavor

    2016-12-09追記 「Pythonクローリング&スクレイピング」というを書きました! Pythonクローリング&スクレイピング -データ収集・解析のための実践開発ガイド- 作者: 加藤耕太出版社/メーカー: 技術評論社発売日: 2016/12/16メディア: 大型この商品を含むブログを見る 2015年6月21日 追記: この記事のクローラーは動かなくなっているので、Scrapy 1.0について書いた新しい記事を参照してください。 2014年1月5日 16:10更新: デメリットを修正しました。 以下の記事が話題になっていたので、乗っかってPythonの話を書いてみたいと思います。 Rubyとか使ってクローリングやスクレイピングするノウハウを公開してみる! - 病みつきエンジニアブログ 複数並行可能なRubyのクローラー、「cosmicrawler」を試してみた - プログラマにな

    PythonとかScrapyとか使ってクローリングやスクレイピングするノウハウを公開してみる! - orangain flavor
    shin1x1
    shin1x1 2014/01/05
    丁寧な解説で分かりやすい
  • はてブのホッテントリのタイトルを要約してWebの今を見つめる - Qiita

    GoogleReaderが終焉し、SmartNews,Gunosyなど寝ててもおすすめコンテンツが降ってくるサービスが注目を集めている今、ここでひとつ自分もなんか気の利いたものを作ってみたい。 というわけで、はてブの人気エントリーから記事を引っ張ってきて、 ズバリ一行に要約するプログラムを書いてみた。 はいこれ。 要約くん http://xiidec.appspot.com/markov.html これを使うと・・・ けだるいイオンがこの国でエリートコースに乗れると日の真相。 こんな感じで なぜ高学歴の差別発言が求められるのかって生産性を欲しがった話をどうするか。 今話題のニュースがごちゃ混ぜになって一行に要約される。 浜崎あゆみの件、原子炉に十分届かず 炉心溶融の差別発言が続出。 Webの今が1行で分かる! 仕組み サーバサイド(Python)で、はてなブックマーク人気エントリーの

    はてブのホッテントリのタイトルを要約してWebの今を見つめる - Qiita
  • python自習テキスト [kirinwiki]

    このコンテンツを更新しなくなって久しく、さらにレンタルサーバーのPHPもずっと古いバージョンを使うわけにいかず、従来のdocuwikiを使うのをやめました。全ての内容を静的なHTMLにするのが割と手間なため、手抜きとして、ここの表紙以外をPDFに直してしまいました。これで保存します。python2用なので利用価値もすでに少ないですけどね。 っていうか、実際は動物さんイラスト集サイト。pythonの話はオマケ。 スクリプトが書けると、多分どっかで何かの役に立ちます。決まりきった仕事をチマチマと手作業でやるような場面で、スクリプトを上手に書けると劇的に楽になったりすることもあります。筆者自身がそういう経験を持っているので、他にも同じようなことができる人が現れてほしい。こういった動機で、習得用のテキストをポチポチと書き続けています。 興味はある(or 必要に迫られている)んだけど、当に何も知ら

    shin1x1
    shin1x1 2013/12/06
    yield の分かりやすい例え > ティッシュ箱の中身を束としてまとめて返すのが return、一枚づつ返すのが yield
  • Pythonのwith文とJava7のtry-with-resourceとC#のusingの比較 - 西尾泰和のはてなダイアリー

    http://nhiro.org/learn_language/with_statement.html Java7は名前の通りtryと抱き合わせになっている。C#とPythonは分離されている。なのでJava7でC#やPythonと同じ挙動をしたければ必要なくても空のfinallyを書くことになる。(追記: finallyやexceptを伴わないtryもOKでした。thanks id:nowokay) 体が正常終了または例外を投げて異常終了した場合のどちらでも呼ばれる「後片付けメソッド」はC#だとDispose、Java7だとclose、 Pythonだと__exit__。しかしPython以外は引数を取らない。体が正常に終了したのかどうかはどうやって知るんだろうか。知る必要はないという判断なんだろうか。追記: Pythonがどんな引数を取るのか他の言語の人には想像がつきにくいらしいの

    Pythonのwith文とJava7のtry-with-resourceとC#のusingの比較 - 西尾泰和のはてなダイアリー
    shin1x1
    shin1x1 2012/07/14
    複数言語で比較すると分かりやすい / C# はじめて触った時、using は面白いと思った。
  • リファクタリングのお供に使えるcodemod

    $ wget https://raw.github.com/facebook/codemod/master/src/codemod.py $ chmod +x codemod.py

    リファクタリングのお供に使えるcodemod
  • On programming language design - プログラミング言語を作る日記

    InfoQの以下の記事経由で、 Andrej Bauer氏の語るプログラミング言語の設計 こういう記事を見つけたので、 On programming language design | Mathematics and Computation 日語に(勝手に)訳してみました。 英語が得意なわけでもないので(ていうか苦手なほうなので)変なところ等ありましたらご指摘願います。 ――というかHaskellをちゃんと勉強したくなった。 In a recent post I claimed that Python’s lambda construct is broken. This attracted some angry responses by people who thought I was confused about how Python works. Luckily there were

    On programming language design - プログラミング言語を作る日記
    shin1x1
    shin1x1 2009/12/25
    ループカウンタはimmutable / 多くのプログラミングエラーが早期に発見されるようにデザインされるべき
  • 1