歩いたら休め

なんでこんな模様をしているのですか?

2016-01-01から1年間の記事一覧

【本】プログラマーのための『贈与論』

最近、面白い本をいくつか見つけて読んでいました。 特にモースの『贈与論』に関係あるところで。とはいえ、まだまとまった文章は書けるほど消化できていないので、簡単に紹介していくだけにします。 本書『贈与論』Essais sur le donは、フランスの文化人類…

【自動要約】海外のニュースを自動で要約して翻訳して、自動でまとめてくれるプログラムを書ければいいなあ

海外のニュースを簡単に通知できないか試そう(試したい)という記事です。 国内の業界ニュースは当然追っているにせよ、海外に面白い動きがあるのに、全然把握できていないことは多々あります。 とはいえ、私は英語が得意ではないため、自分の興味のあるニ…

【R Advent Calendar】Rプログラマーのための関数型プログラミングの学び方

R Advent Calendar 2016の5日目です。よろしくお願いします。 最近、R界隈ではHadley Wickham氏が中心となって開発しているtidyverseと呼ばれるライブラリ群が流行っています。 彼がWelcome to the Tidyverseという記事の中で、次のような宣言を行っています…

【Python】はてなブログのOAuth認証でブログを自動投稿するスクリプトを書いた

不動産関連のニュースを自動でスクレイピングで集めていたのですが、 Python2から3に移行する際にOAuth認証に移行しようとして、ずっと面倒でサボっていました。 Rubyでは、既にgemの形で実装している方がいました。記事の内容も素晴らしかったし、コードも…

【Python】PyPIに『pychatwork』を公開しました

以前練習で作ったライブラリを、仕事でも後輩のタスクで使うようになった(らしい)ので、PyPIに公開してインストールできるようにしました。 pypi.python.org 登録手順など、こちらのページを本当に助けられました。ありがとうございます。 qiita.com テス…

【Python】データサイエンティストのためのPython開発記事紹介

後輩が数値計算を使う、簡単なバッチ処理をPythonで書き始めました。 一応私もPythonの知識ならそれなりにあるのでいろいろ教えられることは(まだ)あります。 そのための予行練習としていろいろまとめておきます。 正直、自分よりもっと数値計算やプログラ…

【Python】pip installで突如UnicodeDecodeErrorが出始めたので対処した

Github上にアップした自作のPythonモジュールをインストールしようとしたところ、UnicodeDecodeErrorが出てしまいました。 $ pip install --upgrade git+https://github.com/takeshi0406/twlist_to_urllist Exception: Traceback (most recent call last): F…

【Python】Rubyの配列やハッシュのメソッドをPythonで再現する

友だちが「Rubyはいろいろなメソッドがあって柔軟だから、 そっちに慣れちゃうとPython書くときちょっと困るんだよね」と言っていました。 たしかに、Rubyは「配列やハッシュに対してこんな機能があればいいな」と感じたとき、 そのデータ型のリファレンスを…

【Elixir】ElixirのWebフレームワーク、Phoenixをインストールだけしてみた

Elixirという関数型言語が流行り始めているような雰囲気を感じています。 ErlangのVM上で動く並列処理に強い言語で、(詳しく知らないのですが)Prologの影響が強くいまいち使いづらいErlangに対して、 Rubyっぽい見た目で使いやすくした言語と聞いています…

【Ruby】open-uriでhttp=>httpsのリダイレクトを行う

Rubyでスクレイピングしていたところ、PCサイトからスマホサイトにリダイレクトするところで次のようなエラーが出てしまいました。 どうやらRubyのopen-uriではhttpからhttpsへのリダイレクトが禁止されているようです。 kiito.hatenablog.com open-uri.rb:2…

【Ruby】HTMLをYAMLに変換して他サイトの改修をチェックする (ver2)

「スクレイピングで他サイトの改修をチェックして自社サイトの参考にしよう」という上司の無茶振り要望に応えてあげようキャンペーン第二弾です。 kiito.hatenablog.com 前回のコードを回して、一応改修箇所は検知できていたようですが、正直全然使い物にな…

【Python】Selenium + PhantomJSでPythonからブラウザ画面のスクリーンショットを撮る

WEBサイトの改修を検知するプログラムがそれなりにうまくいきそうなのですが、改修があったときにyamlの文字列を見てもピンと来ません。 kiito.hatenablog.com というわけで、PythonからSeleniumを介してPhantomJSを動作させ、 スクリーンショットを撮ること…

【R】weblioの住宅用語辞典をスクレイピングして住宅関連の単語のcsvを作る

自然言語処理をやっている人はよく辞書の整備が大変だと言います。 そんな話をしていたところ、「自分が詳しくない分野の言葉を知るときはweblio辞書が便利だよ」という知見を教えてもらいました。 www.weblio.jp しかし、私は怠惰なプログラマーなので、ス…

【PyCon】『メタプログラミングPython』を復習して言語の理解を深めよう

PythonのカンファレンスであるPyConJP2016に一般参加してきました。 様々な発表や催しがあったのですが、特に素晴らしかったのが@tell_kさんの『メタプログラミングPython』という発表です。その名の通りオライリーの「メタプログラミングRuby」の内容に沿っ…

【Python】他サイトの改修頻度をチェックするためにHTMLをYAML(っぽい何か)に変換するためのコマンドラインツールを書きました

上司から「サイトがマメに更新されてると、Googleの検索エンジンからの評価が上がるらしいんだけどさぁ、 他サイトの更新頻度をチェックしたり簡単に比較する方法ない?」というふんわりした話題がありました。 単純に考えると、サイトのHTMLを定期的にスク…

【Ruby】PythonプログラマーがRubyを触って感じたこと

Pythonプログラマーというか、元々Python(ときどきR、C言語)で数値シミュレーションをしていた学生が、就職してRubyでWeb開発を行うにあたって勉強したことを書き連ねていくだけの記事です。 もし自分と同じような立場の人(これから後輩としてもどんどん…

【本】『ウェブマーケティングという茶番』『やりなおし!地理の教科書』など読みました

技術書っぽくないやつですが、昨日2冊読みました。 ウェブマーケティングという茶番 タイトルに惹かれて買いました。リスティング広告やSEOなどの広告代理店の話です。 胡散臭いと思われているこの業界を変えるため、同業者を敵に回す覚悟で、業界の実態を暴…

【本】仕様化やレビューについて勉強しています

最近、2つ理由からレビューの仕方や、仕様化のプロセスについて勉強しています。 自分自身がプログラムを書いている間、ドメイン知識が足りず、手が止まっている時間や周囲に確認することが多い。 (半ば非公式に)分析用のRプログラムのコードをレビューす…

【MySQL】DBに入れた検索クエリテーブルから、キーワードの順序に関係なく抽出する

MySQLのデータベースに検索クエリが保存されており、その中から検索クエリを取得したいとします。 具体的には「検索連動広告にガンガン新規キーワードの組み合わせを登録したい」「葉隠れ構造を崩したくないから、同じキーワードの組み合わせを別のキャンペ…

【シェルスクリプト】git管理下のファイルの行末のスペースを消す

あまりに「末尾に空白がある」ってレビューで返されてしまうので、今のディレクトリ配下の行末のスペースを消すようにした。 vimでファイル閉じるときにできるのかもしれんけどまあいいや。 git ls-files | xargs sed -i -e 's/ *$//'

【本】『人』も『プログラム』も両方動かさなくっちゃあならないってのがエンジニアのつらいところだな

最近いろいろ読みました。 人を動かす 有名なやつですね。SOFT SKILLSで薦められていたのと、同期の優秀なマーケッター(仕事の進め方がうまい)がコレ系の本が好きなので読みました。 「相手に重要感をもたせることが大事」「相手の自尊心を傷つけると、反…

【AWS】AWSの構築・ネットワークで学んだこと

AWS

いろいろあって、AWSでEC2のインスタンス立てて、APIサーバーはプライベートのサブネットに立てて…という設定作業をしています。 多分知っている人からすると一瞬で終わるような作業ばかりなのですが、私は始めてやる作業なので詰まってばかりで困っています…

【雑記】会社に入ってわからんかったこと

社内のゆるふわ技術勉強会で発表することになったので、 最初は「入社2年目の新卒エンジニアが困ったこと」という内容にするつもりだったのですが、 愚痴っぽい内容になりすぎたのでやめました。 といってももったいないので、(一応)匿名ブログに書いてお…

【本】なぜエンジニアは生きづらいのか

最近のお仕事がグダグダで、「あ、今おれ上司に信用されてないな」って思うことが多いのでいろいろ読みました。 うまくいかないときは、自分の考え方や進む方向が間違っていて、どこかから別の考え方を取り入れる必要があるというのが持論です。あと、Mac Bo…

【Coconut】Python互換の関数型言語Coconutはパイプ演算子が使えるよ

日頃RとPythonを使っていると、「ああ、Pythonでもパイプ演算子が使えればいいのに」「purrrライブラリみたいにラムダ式が簡単に書ければいいのに」「Pythonのジェネレーター(遅延評価するリストのようなもの)をパイプで渡せると超楽しそう」と思うことは…

【Python】駿河屋の商品一覧ページをスクレイピングするためのライブラリを作りました

アニメグッズやゲーム等、中古商品を取り扱う駿河屋の一覧ページをいい感じに取得するためのライブラリを作りました。 github.com というのも、駿河屋には新着商品チェック機能が(ひととおり探した限りでは)無く、「新着入荷した同人CDをチェックしたい」…

【Python】RプログラマーのためのPython入門

会社に優秀な後輩が入ってきて、優秀な先輩(私でゎない)の助けを得ながら、立派な分析者・Rプログラマーとして成長しつつあります。 しかし、R言語だけで全ての作業が完結できるわけではありません。手元でデータを加工・分析するための環境としては素晴ら…

【雑記】Operaの後継ブラウザVivaldiのクイックコマンドが便利だった

Operaの後継ブラウザのVivaldiがすごく出来が良くて驚いたという話です。 最初に結論だけ行っておくと、仕事場のWindowsではChromeやFirefoxから乗り換えたのですが、Macでは未だに使いづらい部分が残っていて保留中です。 vivaldi.com クイックコマンドとい…

【本】後輩が入ってきたので『Soft Skills』など読んでました

PythonのWebフレームワークであるFlaskでなんか作りたいなーと思っていた数週間放置して、ちょっとした空き時間とかに本を読んでました。「実装サボって本読めば勉強した気になれるから楽だよね」って言われたら反論できません。 ひとまずチュートリアルやっ…

【メモ】入社2年目になって後輩が入ってきたので、今考えていることをメモしておく

最近、優秀な後輩が入ってきたり、同期が何人か辞めていったりしました。 いろいろと考えるところがあったので、今の自分が考えていることをメモしておきます。 「あらゆる仕事はおそらくいつか失敗する」 毎日一枚一枚カードをめくっていくと、いつかは悪い…