サクサク読めて、アプリ限定の機能も多数!
トップへ戻る
猫
sandmark.hateblo.jp
最近spacemacsにハマってます。「Spacemacs とはなんぞや」についてはいろんな方々が 解説してくださっているので、その魅力についてはぜひそちらをご参照ください。 かくいう私もそういった記事を読んで手を出し、そのまま戻れなくなった身です。 今回は Python のコーディング環境を整えてみます。条件は以下。 Python 3.6.6 Spacemacs (develop branch) virtualenvwrapper を使用している pyenv を使用している (optional) Spacemacs + Python + LiveCoding + IPython Spacemacs では .py という拡張子のファイルを開くだけで Python コーディング用の様々なパッケージが自動インストールされる1のですが、 pip で特定のパッケージをインストールするとさらにパワフ
――これは、地球と Land of Lisp を繋ぐ、新たな架け橋の物語 あ…ありのまま 今 起こった事を話すぜ! 「おれは Clojureが好きだとツイートしたと 思ったら いつのまにかClojure会社に就職していた」 な… 何を言っているのか わからねーと思うが おれも 何をされたのか わからなかった…— sandmark (@sandmarkM) 2019年2月15日 ――絶望から這い上がろうとあがく男の目の前に垂らされた一本の蜘蛛の糸 ――天にいるのは釈迦か、エイリアンか ――括弧に魅せられた者達の『奇妙な接触』を描くノンフィクションドキュメンタリー もくじ Twitter の片隅で Clojure 愛を叫ぶ→ヘッドハンティングされた まず入院したところから 諸君、私はプログラミングが好きだ 諸君、私はプログラミングが大好きだ よろしい、ならばプログラミングだ さぁ諸君。天下を取
最近 Clojure にハマっています。JVM 上で動くバイトコードにコンパイル可能な Lisp 族で、 なんか書いてて楽しい です。とりあえず作者である Rich Hickey のアツい一言をご覧ください(参考1・参考2)。 ※元記事がリンク切れになってしまったので、意訳文章を削除しました。 というわけで、そんな Clojure を使って以前 Python で書いたチャットボット sandmark/unmo を再実装してみました。 勉強用なので間違った説明がある危険があります。ツッコミ歓迎です。 完全なソースコードは sandmark/unmo-clojure にあります。 目次 Clojure 入門者による【チャットボットづくり】 Part1 準備 respond 関数を作る リファクタリング: スレッドマクロ リファクタリング: 分配束縛 (destructuring-bind) 次
nose = unittest + coverage + doctest + and more! 前回はデコレータを使ってコードのインデントを浅くし、ボイラープレートとなっていた繰り返し処理をひとつにまとめました。しかしその際、「挙動が変わってしまったらどうしよう」と怯えながら書き換えていたのも事実です。 sandmark.hateblo.jp 今回はユニットテストという命綱を作ることで実装に専念できる環境を整え、また中途半端なリファクタリングもどきによってバラバラになった感のある仕様をまとめてみます。 教科書はいつものスマパイです。 スマートPythonプログラミング: Pythonのより良い書き方を学ぶ 作者: もみじあめ発売日: 2016/03/12メディア: Kindle版この商品を含むブログ (1件) を見る テスト方法 シンプルかつ多機能なテストフレームワークnoseを使います
前回のコードは思い返すだけでも寒気がするほどひどいものでした。そこで今回はPython固有の機能であるデコレータを使って、ちょっとPythonっぽいコードに変更します。 sandmark.hateblo.jp このデコレータ、LispやHaskellのように関数や処理を頻繁に渡す言語に慣れ親しんだ人なら比較的すぐに理解できると思うのですが、そうでない場合は難しく感じるかもしれません。しかし理解してしまえば「なんだそんなことか」といったものなので、もちろん乱用は禁物ですが、適宜使っていくことで明らかに読みやすく宣言的なコードを書くことができます。参考: PEP 318 再掲:リファクタリング対象 「デコレータとはなんぞや」というのは検索すればいくらでも出てきますので、今回ハマった点について書いていきます。また、デコレータが行うこと、行った結果関数がどう変更されるか、も書いてみようかと。 では
スマートPythonプログラミング、引き続き読んでます。 sandmark.hateblo.jp 読み進めていると、Radonという循環的複雑度を調査するパッケージが紹介されていたので、今回はそれを用いてsandmark/unmoのdictionary.pyのリファクタリングに挑戦します。 先に言っておきますが、結果は失敗です。今の私の力ではリファクタリングできなかったという事実がわかったことが何よりの成果です。それに伴って課題が見つかったので、個人的には有意義な時間でした。 教科書 スマートPythonプログラミング: Pythonのより良い書き方を学ぶ 作者: もみじあめ発売日: 2016/03/12メディア: Kindle版この商品を含むブログ (1件) を見る Cyclomatic Complexity - 循環的複雑度 「ソースコードは読みやすく簡潔に保つ」というのは、プログラマ
プログラムと会話(?)しよう! 昨今、機械学習やディープラーニングといったキーワードで注目を集めているPython。簡潔な文法から初心者向けの学習目的にも採用されています。 とはいえ、入門書を読んだだけではよくわからないという人も多いはず。「何をどうやって作ればいいの?」「文法はわかったけど書き方がわからない」という疑問は初心者にありがちで、「英語の文法はわかっても読めない・書けない」のと似ています。解決方法はズバリ、人と会話したり、手を動かしてみることです。 この記事ではPython初心者、ひいてはプログラミング初心者に「チャットbotを作る」という目標を設定してもらって、具体的な作り方や設計方法を見てもらいます。Microsoftのりんなほど高度なものではありませんが、プログラムとチャットする楽しさを感じながら、プログラミングテクニックを身に着けてもらえればと思います(今回扱うAIは機
このあいだ自分がプライベートで運営している動画サイトにAPIが欲しかったので、django-rest-frameworkを使ってみました。日本語の資料が少なかったので、布教目的でここに置いておきます。 欲しかった機能はこんな感じ。 モデルデータのCRUD モデルの特定フィールドの検索 多対多(ManyToMany)でよろしくやる 登録ユーザのみ許可する認証処理 pythonスクリプトからAPIを使う(おまけ) 可能なのかどうか半信半疑で使ってみましたが、チュートリアルに全部書いてあったので参考になれば。 今回はTutorial 6: ViewSets & Routers(version 3系)の超意訳です。 第01回「シリアライズ」 第02回「リクエストとレスポンス」 第03回「クラスベースのビュー」 第04回「認証と許可」 第05回「リレーションシップとハイパーリンクAPI」 第06回「
このあいだ自分がプライベートで運営している動画サイトにAPIが欲しかったので、django-rest-frameworkを使ってみました。日本語の資料が少なかったので、布教目的でここに置いておきます。 欲しかった機能はこんな感じ。 モデルデータのCRUD モデルの特定フィールドの検索 多対多(ManyToMany)でよろしくやる 登録ユーザのみ許可する認証処理 pythonスクリプトからAPIを使う(おまけ) 可能なのかどうか半信半疑で使ってみましたが、チュートリアルに全部書いてあったので参考になれば。 今回はTutorial 1: Serialization(version 3系)の超意訳です。 第01回「シリアライズ」(今ココ) 第02回「リクエストとレスポンス」 第03回「クラスベースのビュー」 第04回「認証と許可」 第05回「リレーションシップとハイパーリンクAPI」 第06回「
先日買い物に行きました。ごま油が欲しかったのですが、目の前にあったのは 298円のごま油(250g、セール中) 378円のごま油(340g、通常価格) の2つ。私は安ければ何でも良いのですが、オトクなのはどちらだ?と考えたとき、暗算が苦手なのですぐに答えが出ません。そこでGoogleアシスタントさんにご登場願いました。 「250グラム298円のごま油と340グラム378円のごま油、安いのはどっち?」 「お調べしました」 「えっ」 機械に知性は宿るのか 最近、AIが流行っています。Artificial Intelligence、直訳すると人工知能、あるいは人工知性です。なぜ流行っているのか、まずは歴史をちょっとだけ紐解いてみましょう。 あらゆる問いに答えるプログラムは存在する 1950年代、ノイマン型コンピュータが発明されて実用化されました。0と1で動作するCPUベースの計算機、要するにパソ
このページを最初にブックマークしてみませんか?
『sandmark.hateblo.jp』の新着エントリーを見る
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く