タグ

rubyとpythonに関するshuzo_kinoのブックマーク (8)

  • Pythonによるデザインパターン(目次) - None is None is None

    これは『Rubyによるデザインパターン』(ラス・オルセン著 ピアソン・エデュケーション刊)をPythonに翻訳してみようというシリーズです。 Rubyによるデザインパターン 作者: Russ Olsen,ラス・オルセン,小林健一,菅野裕,吉野雅人,山岸夢人,小島努出版社/メーカー: ピアソン桐原発売日: 2009/04/01メディア: 単行購入: 13人 クリック: 220回この商品を含むブログ (66件) を見る デザインパターンの原則から 変わるものを変わらないものから分離する インターフェイスに対してプログラムし、実装に対して行わない 継承より集約 委譲、委譲、委譲 必要になるまで作るな(これは「Rubyによる〜」の筆者による) 記事 Template Methodパターン Strategyパターン Observerパターン Compositeパターン Iteratorパターン C

    Pythonによるデザインパターン(目次) - None is None is None
    shuzo_kino
    shuzo_kino 2016/09/14
    名著RubyによるデザインパターンをPythonに当てはめてみようという大作ブログ記事の目次。
  • Onion – Compute Platform for IoT

    Surface Mount IoT Computer 580MHz MIPS CPU OpenWRT 18.06 Linux C/C++, Python, NodeJS 2.4 GHz 802.11 b/g/n WiFi Simultaneous AP and STA

    shuzo_kino
    shuzo_kino 2015/11/03
    Kickstarter大成功したJSやRuby、Pythonで開発できるLinux/OpenWRT互換ボード。拡張基盤でArduino互換にもできるゾ。開発中のWEBコンソールと連動するとブラウザから状態確認できたり、するらしい。
  • Transactional Email API Service For Developers | Mailgun

    OptimizeImprove inbox placement and connect with more people.

    Transactional Email API Service For Developers | Mailgun
    shuzo_kino
    shuzo_kino 2015/08/12
    メールの自動配信サービス。CurlコマンドやRuby、Java、Go-Lang等の開発ドキュメントがある。
  • docopt—language for description of command-line interfaces

    Command-line interface description language docopt helps you: define the interface for your command-line app, and automatically generate a parser for it. docopt is based on conventions that have been used for decades in help messages and man pages for describing a program's interface. An interface description in docopt is such a help message, but formalized. Here is an example: Naval Fate. Usage:

    shuzo_kino
    shuzo_kino 2015/03/31
    githubのCLIツールみたいなものをドキュメント駆動開発で作ることができる素敵ツールだ
  • rbenv を anyenv で管理する - akishin999の日記

    rbenv や plenv などをまとめて管理する anyenv を使ってみました。 riywo/anyenv https://github.com/riywo/anyenv anyenv を使う事で、新しい *env 系コマンドを導入する度に初期化処理を .bash_profile に書く、といった作業から解放されます。 現在は以下のコマンドがサポートされているようです。 rbenv plenv pyenv phpenv ndenv rbenv は普段から使っていますが、同じ感覚で perlpython も複数バージョンを管理できるようになるのは便利ですね。 CentOS へのインストール まずは CentOS 6.4(x86_64) + bash な環境に入れてみました。 $ cd $HOME $ git clone https://github.com/riywo/anyenv

    rbenv を anyenv で管理する - akishin999の日記
    shuzo_kino
    shuzo_kino 2013/10/09
    rubyもpythonも同系統のインタフェイスでバージョン管理
  • ','.join() がなぜキモイのか - methaneのブログ

    Ruby厨とPython厨が平行線の議論をしていたので、まとめてみる。 オブジェクト指向的にキモイ? str.join() 処理での登場人物は2人いる。連結文字(区切り文字=separator)、連結される文字列の列だ。 この二つを比べると、「連結される文字列の列」が情報的に重要な場合がほとんどだろう。それを元に文字列の列が主役で連結文字はオマケと考えると、「joinが主役でない連結文字側のメソッドになる何てキモチワルイ」となる。 でも、別の視点で「連結する側とされる側」というように分類すると、「区切り文字 join 連結される文字」が素直な能動態で、「連結される文字列 (is) join(ed by) 連結される文字」だと無理やりな受動態になるので、''.join() の方が素直だ。 Rubyの場合は「配列が要素をjoinする」と配列が主体となっているので、後者の考え方はしにくい。なので

    ','.join() がなぜキモイのか - methaneのブログ
  • 本家の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情報局:エンジニアライフ
    shuzo_kino
    shuzo_kino 2013/02/08
    PyPyとかいうものの上で動くRuby。サブセットであるRPython上で動作する。結果、C-Rubyより早く動く。ただし、ライブラリの大半が動かない。これが実装されると大分事情が変わりそう。
  • 2013年、開発者が注目すべき10のスキル

    2012年の初めに、筆者は開発業界で勢いを増しつつある技術に関する記事を書いた。1年近くたって振り返ってみると、2012年の流行のいくつかがあまりにも早く進んだことに驚く。もちろん、モバイル開発が重要になることは予想されていた。しかし、タブレットの成長、特に「Android」タブレットの急速な伸びが、この市場を新たな高みに導いた。記事では、そのことを振り返りながら2013年に目を向ける。 頻繁にアップデートされるモバイルデバイス(特に「iOS」デバイス)と、「Chrome」と「Firefox」の短いリリースサイクルのおかげで、HTML5が多くのほかの方法を押しのけて、非常に重要な技術になった。ウェブ開発の世界は、次の2つに分割されている。 Javaと.NETをバックエンドで動かし、通信にSOAPを用いるエンタープライズ市場 PHPRubyPythonをバックエンドで動かし、軽量なRE

    2013年、開発者が注目すべき10のスキル
    shuzo_kino
    shuzo_kino 2013/01/08
    新しい物好きなせいか、一通り触れてはいた。今年中にスキルと言える水準まで引き上げたいところ。
  • 1