プログラミング

Babel で JSX をトランスパイルする(最小限操作)

目標 最小限。

JavaScript 開発のまとめ(用語、ツール……)

前提 2018/02/18 現在でかき集めた内容です リポジトリ等へのリンクを付け加えたい

webpack-dev-server に localhost 以外からアクセスできるようにする場合は host: 0.0.0.0 を指定する

追記 現在では disableHostCheck は不要です*1。この記事を書いたときにバージョンの差異があったようです。 結論 単に webpack-dev-server の実行オプションに --host 0.0.0.0 と指定するだけだではだめ*2。webpack.config.js に devServer を追加し、その…

cron が動かなくてログも出力されない場合に調べるところ

結論 ログの出力先に書き込みできるパーミッションが設定されているかどうか。 補足 上記の場合だと、cron は実行されないわログは出ないわで気づきにくいです。 その他 定番の「フルパスで書いているか」も調べましょう。

pyenv で Python をインストールしようとしたら5時間ハマった話(/usr/include 配下のパーミッション問題だった)

結論 /usr/include 配下のディレクトリのパーミッションが全て 744 になっていたため、コンパイルが通らなかった。

Elasticsearch は root で実行できない(←Docker の Elasticsearch は権限に注意)(←Docker の Volume 指定では権限に注意)

さらに補足 Docker で Volume 指定をしたディレクトリを予め作ってしまったことが問題っぽいです(自動で作られる前に)。 Docker で Volume 指定をすると思わぬ権限で上書きされて思わぬパーミッションエラーが出るので注意しましょうということです。 補足…

Python における Bundler のような管理ツールである Pipenv について(Bundler との比較)

Pipenv Python でのパッケージ管理には pip が用いられますが、pip の内容や依存性を管理してくれるツールに Pipenv というものがあります。 Pipenv の使い方 Pipenv の使い方については公式ドキュメントが詳しいです(日本語です)。 Pipenv: 人間のためのP…

Node.js のバージョン管理に ndenv を使う(nvm ではなく)

nvm ではなく ndenv を使う理由 nvm でのバージョン管理は、ユーザ単位ですべての場所(ディレクトリ)での実行バージョンが統一されます。rbenv のように、ディレクトリごとにバージョンを使い分けたいので ndenv を使います。

Ruby で CSV を扱う際に便利な gem である SmarterCSV

SmarterCSV Ruby で CSV を扱う際には標準ライブラリが便利です。 Ruby標準添付ライブラリcsvのCSV.tableメソッドが最強な件について ただ、このライブラリでは面倒な操作を行う際には SmarterCSV という gem もとても便利です。

amazon-ecs の gem を使って JANコード を ASIN に変換する方法

結論 以下のようなコードで実現できます。実行すると B079KZKTBF が表示されることが確認できます。 require 'amazon/ecs' Amazon::Ecs.configure do |options| options[:AWS_access_key_id] = 'YOUR_ACCESS_KEY_ID' options[:AWS_secret_key] = "YOUR_SECRE…

Redis Commander の使い方

Redis Commander Redis の中身を見ることができる Redis Commander という Node製 の Webアプリケーション があります。使うときに少々はまってしまったので記録しておきます。

Redis Browser の使い方

Redis Browser Webアプリケーションで Redis の中身を見ることができる Redis Browser という gem があります。使うときに少々はまってしまったので記録しておきます。

unicorn を最小限で起動するだけの方法

結論 1. rack と unicorn の gem を入れる $ gem insatll rack $ gem install unicorn 2. Rack の設定ファイル(config.ru)を書く run Rack::Directory.new '.' 3. unicorn を実行する $ unicorn 4. 8080 ポートにアクセスして、実行ディレクトリ一覧が表示…

truncate メソッドは Active Record のメソッドである

結論 $ gem install activerecord して require 'active_record' すればよいです。 ハマりどころ Active Support ではないです*1。 *1:プチハマった

「ricollab 郵便番号検索」のサービスが2018年2月28日で終了

「ricollab 郵便番号検索」のサービスが終了 「ricollab blog」「郵便番号検索サービス」の各サービスが2018年2月28日で終了とのことです。 ricollab Web Tech Blog » Blog Archive » 【重要】ricollabサービス終了のお知らせ 「Webを支える技術」で紹介され…

Ubuntu 16.04 LTS で Redis の dump.rdb が置かれている場所

結論 /var/lib/redis/dump.rdb 補足 もちろん各種設定等でいろいろ変わります(変えられます)。

「プロを目指す人のためのRuby入門」を読みました

「プロを目指す人のためのRuby入門」 こちらの本になります。著者は伊藤淳一さん(id:JunichiIto)です。 プロを目指す人のためのRuby入門 言語仕様からテスト駆動開発・デバッグ技法まで (Software Design plusシリーズ)作者:伊藤 淳一技術評論社Amazon

Ruby で MongoDB を使う最低限の方法

結論 以下の手順を踏みます。 0-1. MongoDBをインストール 各環境に応じてインストールをしてください。 0-2. 用語 RDB(特に MySQL)あたりとの対応表です(あくまでイメージ)。 RDB MongoDB データベース データベース テーブル コレクション レコード ド…

Ruby で Redis を使う最低限の方法

結論 以下の手順を踏みます。 0. Redis をインストール 各環境に応じてインストールをしてください。

ImageFlux meetup #01

ImageFlux meetup #01 先日開催された ImageFlux meetup #01 の様子をざっくりと書きます。末尾にスライドを並べておきました。

Ruby の 波(チルダ)を使ったヒアドキュメントは「全ての行のインデントのうち、一番少ないインデント分を、全ての行において削除したテキスト」となる

結論 Ruby でチルダを使ったヒアドキュメントは、「全ての行のインデントのうち、一番少ないインデント分を、全ての行において削除したテキスト」となる。

Ruboty 用 の ChatWork Adapter に任意のルームで発言できる機能を追加しました

Ruboty 用 の ChatWork Adapter こちらになります。 任意のルームでの発言をしたい 現在の上記 Adapter の機能では、「発言を監視するルーム」と「発言を行うルーム」が同一となっています*1。そこで、新たに、「任意のルームで発言をする」機能を追加しまし…

RubyMine でカーソルを垂直バー(パイプ)にする

きっかけ カーソルが四角(豆腐)だと、文字選択のときに範囲を頻繁に間違えてストレスになる。 結論 Settings → Editor → General → Appearance にて、Use block caret のチェックを外すと垂直バーのカーソルになる。四角いカーソルにしたい場合はチェック…

Sequel で単純に SQL を実行した結果の返り値

結論 Sequel::Mysql2::Dataset クラスのオブジェクト*1。 *1:例えば SELECT でヒットしなかったからといって nil が返ってきたりはしない

RubyMine で開いているプロジェクトを閉じる方法

さらに追記 Remove from Project View は一番最初に開いたプロジェクトではメニューに現れない?? 追記 Remove from Project View で普通にできました……*1。 結論 一度 IDE を閉じ、再度プロジェクトを選ぶ*2。 プロジェクト名を右クリックしたりしても、そ…

Ruby で UTF-8 の文字を Shift JIS の文字に変換する

発端 UTF-8 の CSV は Excel で文字化けするから。 メソッド 素晴らしいメソッドがありました。String クラスを拡張するメソッドです。 このメソッドの特徴は、「UTF-8 → Shift-JIS → UTF-8」という変換を行う点です。つまり、入力文字も出力文字も UTF-8 で…

Liquid ファイルを用いて Embulk の設定ファイルを DRY に書く

Liquid Liquid の公式サイトはこちらです。 Embulk Embulk の公式サイトはこちらです。この記事では Embulk そのものについては扱いません。 Embulk の設定ファイルとして Liquid を用いる Embulk の設定ファイルは YAML で書かれます。加えて、「YAML を in…

GOPATH を設定して(今さら) Golang 環境を構築

Golang 環境の構築 「構築」とか書いていますが、知っている方にとっては10秒くらいで作れてしまう内容だと思います。笑われてしまうこと覚悟です。 一年前 一年ほど前に Golang 環境を作ろうとして見事に失敗しています。 当時色々あって*1すぐに投げ出して…

Google Cloud Vision API を用いて 文字が埋め込まれている画像 から テキスト形式で文字を抽出する gem を作りました

画像から文字を抽出する gem character_recognition_by_vision_api という gem を作りました。以下でソースを公開しています。 RubyGems での場所はここです。

dotenv でパスワードやトークンを隠す

パスワードやトークンを隠す パスワードやトークンを含んだ設定ファイルを push してしまったことは皆さんあると思います*1。そういう「やらかし」をしないために、dotenv を用いてパスワードやトークンを隠す方法です。dotenv は Ruby の gem です。パッと…

Powered by はてなブログ