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

npmに代わるNodeパッケージマネージャーyarn

yarn https://yarnpkg.com/ FacebookとExponent, Google, Tildeとの共同チームによって生まれた新しいパッケージマネージャー Yarn pulls packages from registry.yarnpkg.com, which allows them to run experiments with the Yarn client. This is a proxy…

Git Large File Storage

git

参考 https://git-lfs.github.com/ https://github.com/github/git-lfs Git Large File Storage (Git LFS) とは、大容量ファイルを扱うためのGit拡張。オーディオ・ビデオ・データセット・グラフィクスといったファイルをリモートサーバーに格納し、テクスト…

単語をベクトル化するword2vec(gensim)を使い、指定した二単語間の関連度を算出する

word2vec 2014年から2015年辺りに流行った、単語をベクトル化して評価する手法。 有名なのは、 king – man + woman = queen 学習データとなるコーパスを準備する 無料かつ簡単に手に入るWikipediaのdumpファイルから持ってきます。 https://dumps.wikimedia.…

Atom linter-rubocop でのエラー

linter-rubocop 0.5.0 Error: /Users/uraway/.rvm/rubies/ruby-2.3.1/lib/ruby/site_ruby/2.3.0/rubygems.rb:270:in `find_spec_for_exe': can't find gem rubocop (>= 0.a) (Gem::GemNotFoundException) from /Users/uraway/.rvm/rubies/ruby-2.3.1/lib/rub…

"KeyError: key not found"

問題 Railsにて、新たに設定した環境変数が機能しない: myproject/config/initializers/constants.rb:13:in `fetch': key not found: "CONSTANT" (KeyError) 原因 RailsのPreloaderであるspringを入れていたため、環境変数が更新されていなかった。 解決法 $…

UNIX系OSでの .gz ファイルの展開コマンド

たまに使おうとすると忘れていたりするのでメモ .gz ファイルの展開 $ gunzip file.gz $ gzip -d file.gz もともファイルを保持しつつ展開 $ gunzip -k file.gz $ gzip -dk file.gz .gz ファイルを展開せずに標準出力 $ gzip -dc file.gz $ gzcat file.gz

Word Cloud + kuromoji + Processing で日本語文章をビジュアライズ

完成品: Word Cloud 文章中で出現頻度に重みを付け、その重みに応じた大きさで単語群を図示する手法。 Processing で行うには WordCram が手っ取り早く、デザインも良い。 いかにして日本語文章中の単語を抜き出すか WordCram に何の手も加えていない日本語…

Rails5 API + devise でユーザーの認証と作成機能を実装した API を作成する

2017/04/26 curl部分に間違いがあったので修正、ついでにログインの必要な動作を追記 目標 Rails v5.0.0 から追加されたapiオプションを使い、ユーザーの作成と認証機能を実装したベーシックな Rails API を作る rails new まずはプロジェクトを作成します $…

Rails5: データベースがrakeタスクからdropできない時の対処法

問題点 Rails5になってrakeタスクのdrop動作に大きな変更があったらしく, Rails4からアップデートして初めての rake db:drop がエラーを吐いてしまう. $ bundle exec rake db:drop Mysql2::Error: Error dropping database (can't rmdir './db_name', errno:…

hatena-blog-and-fotolife v4.2.0 をリリース: エントリーリストとエントリーの取得ができるようになりました

hatena-blog-and-fotolife v4.2.0 をリリースしました。 以下の機能を追加しています。 エントリーリストの取得 コマンド: ⌥⌘I エントリーリストからエントリーの取得

Atomエディタからはてなブログエントリーの削除ができるようになりました

かねてより開発していたAtomパッケージ hatena-blog-entry-postをアップデートし、エントリーの削除機能を追加しました。 デモ このパッケージを使って、はてなブログにエントリーを投稿すると、次のようなコメントがファイルに挿入されます。 このコメント…

"Array values in the parameter are deprecated" エラー

問題と原因 Railsのサーバーやコンソール実行時次のような警告が出る場合: $ rails server Array values in the parameter are deprecated. Please use a String or nil. An Array was passed in from bin/rails:3:in `load' . . . この場合原因はbin/spring…

direnv使い始め

direnv direnvとは cdのようなシェルスクリプトをフックとしてディレクトリごとに環境変数を自動で設定してくれるツール ディレクトリをぬけ出すと環境変数はリセットされる インストールとセットアップ brewを使ってインストール: $ brew install direnv $ …

Error response from daemon: client is newer than server (client API version: 1.23, server API version: 1.22)

Dockerに関するエラー: $ docker ps Error response from daemon: client is newer than server (client API version: 1.23, server API version: 1.22) Machineの更新が必要なので、次のコマンドを打つ: $ docker-machine upgrade [machine名] 再度チャレン…

はじめてのUnity (C#)

参考: http://catlikecoding.com/unity/tutorials/clock/ シンプルな時計を作る 完成品はこちら: まずはプロジェクトの作成: プロジェクトの作成が完了したら、Create > Create Emptyから新しく"Clock"という名でゲームオブジェクトを作成する。また、Create…

はじめてのAurelia

http://aurelia.io Aureliaとは次世代UIフレームワーク。AngularJS、Reactに比べて影が薄い。どうなっていくんだろうか?チュートリアルをやってみた感想としては、HTTPリクエストとルーティング周りがクリーンで素敵。 以下、チュートリアルの適当な和訳。 …

Atomエディタから、はてなブログのエントリーを編集できるようになりました

以前から開発していた、Atomからはてなブログにエントリーを投稿できるようにするパッケージ hatena-blog-entry-post にプルリクエストをもらって、エントリーが編集できるようになりました。 ついでに日本語ドキュメントも作成しました。 パッケージはapm i…

Processingでカレンダーを作る

カレンダーを作ってみたが、長いし読み解きにくいコードになってしまった。input areaみたいなのは作れないのかな? int defaultYear = 2015; int defaultMonth = 5; int rectRX, rectRY; int rectLX, rectLY; int rectSize = 20; boolean leftButtonOver = …

最近読んだ論文まとめ(随時更新)

最近読んだ論文の要約。Google Scholarで論文検索やGoogle検索すれば読めるものも。 カレンダー 大橋亮人, et al. "イベント履歴を用いたスケジュール推薦カレンダーシステム." 情報処理学会第 73 回全国大会 2 (2011): 4. Mynatt, Elizabeth, and Joe Tulli…

20分で作るFacebookメッセンジャーボット(hubot)

20分で作るFacebookメッセンジャーボット(hubot) すごーく簡単にFacebookメッセンジャーボットが作成できました。後のためにその手順を分かりやすくメモしておきます。 別にhubotでなくともボットは作成できますが、今回は使い方に慣れているhubotを使用しま…

人工知能/機械学習: ベイジアンフィルタによるテクスト分類

人工知能/機械学習: ベイジアンフィルタによるテクスト分類 機械学習には多種ありますが、今回は自然言語処理、その中でも特に、ベイジアンフィルタについて扱ってみたいと思います。 このエントリを書くにあたって、下記の書籍がかなり参考になりました。機…

HubotからGithubのissueを扱う

HubotからGithubのissueを扱う http://shokai.org/blog/archives/9560 こちらコードに少し手を加えて、HubotからGtihub issueを扱えるようにしてみた。 create, list up, close github issues via hubot 使い方 Githubのトークンが必要: $ curl -i https://a…

Processing のエディタとして Atom を使う

Processing のコーディングを快適にするために、Atom を使ってみる。 Processing とは ビジュアルアートを学ぶためのオープンソースのプログラミング言語であり、開発環境。Java でビルドされており、その構文は Java をシンプルにしたもの。 エディタも備わ…

Atomのマークダウンプレビュー内で数式を扱う

Atomのマークダウンプレビュー内で数式を扱う まずは必要な以下のパッケージをインストール $ apm install markdown-preview-plus mathjax-wrapper 必要なパッケージ markdown-preview-plus マークダウンプレビューを可能にするパッケージ mathjax-wrapper M…

webpack, React Hot Loader + Browsersync でクロスブラウジング+ホットリロード開発

React Hot Loader + Browsersync React Hot Loader を使えば、エディタを保存した時点で、React コンポーネントの変更が検知され、ブラウザの更新が自動で行われます。さらに、React Hot Loader はHotModuleReplacementPlugin(HMR) を使用しているため、更新…

npmのバージョン管理まとめ

たまにしか活用しないから忘れるのでメモ 参考: semver | npm Documentation バージョン管理 npmでは、「セマンティックバージョニング」と呼ばれるバージョン管理法によって、依存パッケージやリリース物のバージョンを定義している。 npmにあるプロジェク…

ブラウザでマルコフ連鎖を用いた文章を要約できる要約器を作った

ブラウザでマルコフ連鎖を用いた文章を要約できる要約器を作った 作ったもの ブラウザでマルコフ連鎖(Website) hubotでマルコフ連鎖(Twitter) hubotはこんな感じのことを10分毎にツイートしている。 使用したもの 今回、要約器や要約スクリプトを作成するに…

Hubotでビットコインbotを作る

参考: http://qiita.com/hkusu/items/36ce56f3df4e7a0937cb 今回作ったもの 自然言語処理 bot (@hubot_uraway) | Twitter 必要なもの Herokuのアカウントと基礎知識 TwitterのBot用アカウント NPM 基本方針 Herokuにデプロイ(無料枠だと24時間のうち6時間ス…

SSH keyを作成してGithubに登録する

メモがてら残しておく。 新しくSSH keyを作成する $ ssh-keygen -t rsa -b 4096 -C "your_email@example.com" 保存パス Enter a file in which to save the key (/Users/you/.ssh/id_rsa): [Press enter] パスフレーズの設定(任意) Enter passphrase (empty …

Babelを使うとアロー関数内のthisがundefinedになる

ややこしい問題に直面したので、メモしておく。 問題 次のように、jQueryでコールバック関数にアロー関数を用いたスクリプトを記述する。 $("item > title").each(() => { let title = $(this).text(); console.log(title); }); このES6の構文ををBabelでES5…