「管理画面チラ見せ♡ナイト #1」のまとめ読んで使えそうなのメモ

「管理画面チラ見せ♡ナイト #1」っていう勉強会があったそうで、終わってから知りました(涙)

【満員御礼!】管理画面チラ見せ♡ナイト #1 : ATND

管理画面チラ見せ♡ナイト #1 – Togetterまとめ

管理画面の使いやすさは超大事なので、他の企業がどうやって管理画面を作りこんでいるのかすごく気になります。

管理画面を開発する上で、優先すべきポイントや便利系のライブラリとかTogetterまとめから抜粋してまとめました。

スライド

Wantedlyの成長を支える管理画面 #admin_night // Speaker Deck

便利そうなライブラリ

Bootstrap 3 で使えるサジェスト機能の jQuery ライブラリ

MagicSuggest – Home

グラフを描ける js ライブラリ

michelson/lazy_high_charts

データ可視化 js ライブラリ

D3.js – Data-Driven Documents

同意しか無いコメント抜粋

これは結構、大事だと思ってる。確認できるページ1つ作るのも結構な開発コスト掛かりますしね。

まとめ

日々、作りこんでいる管理画面がまだまだ使いにくい箇所があるので、他のサイトの管理画面で参考にできるところは上手く取り入れていきたいです。

採用ページのURLは /careers が主流みたい

採用ページのURLは、海外のウェブ企業をザッと確認したところ /careers が主流みたいです。

https://www.facebook.com/careers/
http://www.google.com/about/careers/
https://careers.yahoo.com/us/
http://careers.microsoft.com/

サブドメイン切るか、メインサービスのドメイン以下に置くのはどちらが良いんでしょうね。

ちなみに、Facebookが社内で「ユーザー(User)」という言葉を使わず、今はFacebookの利用者を「ピープル(People)」と呼ぶようにしているらしいですね。

シリコンバレー101 (595) Facebookが利用者を「ユーザー」と呼ばなくなった理由 | マイナビニュース

[iOS] iPhone, iPad の Safari ブラウザで画像が表示されない問題の解決方法

iPhone や iPad の Safari ブラウザで特定のページの画像が表示されないことがありました。

調べてみると iOS のリソース制限らしいです。

iOS Development

続きを読む

[Git] Merge Commit を Revert する方法

git でトピックブランチのマージを revert する方法をご紹介します。

Git

続きを読む

An App ID with Identifier com.example.xxx is not available. Please enter a different string.

iOS Developer Console の Identifiers – iOS App IDs の登録フローで Bundle ID の項目についてバリデーションエラーが発生しました。

エラーメッセージ

An App ID with Identifier ‘com.example.xxx’ is not available. Please enter a different string.

既に同じ Bundle ID が登録されているというエラーメッセージなので、開発会社の方とかに依頼してる場合はそっちで登録されている場合は削除してもらうと、すぐに登録できます。

基本的に com.example の部分は所有しているドメイン名を使うはずなので、重複することって無いですけどね。

[Mac] MPEG Streamclip で動画を結合する

Mac で使える動画編集フリーソフト「MPEG Streamclip」を使って、動画を結合することができます。

Squared 5 – MPEG Streamclip video converter for Mac and Windows

動画結合方法

  1. 起動した画面に、動画ファイルを複数選択してドラッグ・アンド・ドロップ
  2. 画面下の時間が、ファイルの合計時間になっていることを確認
  3. File → Save as で、元のファイル形式で結合保存される!

サクッと動画を繋いでくれるので便利です。

ただ、動画のサイズが異なる場合は結合できないので、そういう場合は iMovie などで動画編集する必要があります。


参考情報

mpeg4(H.264)動画の結合: macな日々

[Yeoman] You don’t seem to have a generator with the name chrome-extension installed.

nvm + Yeoman という環境で generator が見つからないというエラーに陥りました。

➜  yo chrome-extension
 
Error chrome-extension 
 
You don't seem to have a generator with the name chrome-extension installed.
You can see available generators with npm search yeoman-generator and then install them with npm install [name].
To see the 0 registered generators run yo with the `--help` option.

yo –help してみてもインストールしたはずの generator が何も表示されない・・・。

➜  yo --help
Usage: yo GENERATOR [args] [options]
 
General options:
  -h, --help     # Print generator's options and usage
  -f, --force    # Overwrite files that already exist
 
Please choose a generator below.

自分のPC環境の Node.js のデフォルトバージョンが v0.10.26 で、今回 Yeoman をインストールしていたのが v0.10.29 で、環境変数 $NODE_PATH の設定が切り替わってないのが原因でした。

echo $NODE_PATH
/Users/your_username/.nvm/v0.10.26/lib/node_modules
 
➜  echo $NVM_PATH
/Users/your_username/.nvm/v0.10.29/lib/node

環境変数 NODE_PATH を NVM_PATH を使って、再設定すれば解決です。

export NODE_PATH=${NVM_PATH}_modules
➜  echo $NODE_PATH
/Users/your_username/.nvm/v0.10.29/lib/node_modules

でも、nvm use で切替えたときに、毎回 NODE_PATH をセットするのは正直メンドイ。

nvm use で一緒に NODE_PATH も切り替えたい。

というわけで、.zshrc に export_node_path と nvmuse 関数を定義しました。

## nvm
if [[ -f ~/.nvm/nvm.sh ]]; then
  source ~/.nvm/nvm.sh
 
  if which nvm >/dev/null 2>&1 ;then
    export_node_path () {
      export NODE_PATH=${NVM_PATH}_modules
    }
 
    nvmuse () {
      nvm use $1
      export_node_path
    }
 
    export_node_path
  fi
fi

これで nvmuse コマンドを使って、Node.js のバージョン切替えと、環境変数 NODE_PATH を一緒に切替えられるようになりました。

➜  ~  node -v
v0.10.26
➜  ~  echo $NODE_PATH
/Users/your_username/.nvm/v0.10.26/lib/node_modules
 
➜  ~  nvmuse v0.10.29
Now using node v0.10.29
➜  ~  echo $NODE_PATH
/Users/your_username/.nvm/v0.10.29/lib/node_modules

もっと良い方法ありそうだけど、とりあえずこれで良いかな。


参考情報

Yo doesn't install any generators (nvm, node 0.10.24), yo 1.0.7-pre2 · Issue #125 · yeoman/yo

[JavaScript][BigDecimal] java.lang.RuntimeException: Unknown call signature for obj = new java.math.BigDecimal: object

JavaScript の bigdecimal.js ライブラリを使うときに数値じゃない値でインスタンス生成しようとすると例外が投げられるみたいです。

var bigdecimal = require("bigdecimal");
var obj = {};
 
new bigdecimal.BigDecimal(obj);
// java.lang.RuntimeException: Unknown call signature for obj = new java.math.BigDecimal: object

new bigdecimal.BigDecimal() の引数に渡す値はちゃんとチェックしてあげましょうというお話でした。


参考情報

how do i set a math context? · Issue #1 · iriscouch/bigdecimal.js

[Amazon CloudSearch] [*Deprecated*: Use the outer message field] Validation error for field ‘xxx’: Invalid codepoint 1C

Amazon CloudSearch で検索ワードとしてインポートする JSON データの一部で下記のようなエラーが発生して、インポートできませんでした。

エラーメッセージ

[*Deprecated*: Use the outer message field] Validation error for field 'title_ja': Invalid codepoint 1C

原因のダメ文字は u001c だったので、これを削除すれば正常に JSON データを読み込ませることが出来ました。

フォーム入力からデータベースに保存された値なのだけど、この文字どうやって入ったのかな・・・?


参考情報

AWS Developer Forums: Which codepoints are disallowed in text …

Guide to Formatting Your Data in SDF for Amazon CloudSearch : Articles & Tutorials : Amazon Web Services

Scalaで正規表現: ユニコードの空白文字29種類にマッチするか試してみた – Qiita

これは備忘録 ASCII文字コード

[JavaScript] java.lang.ArithmeticException: Non-terminating decimal expansion; no exact representable decimal result

JavaScript で浮動小数を計算する npm モジュール bigdecimal.js で、割り算を行う divide メソッド使ったらエラーが発生しました。

java.lang.ArithmeticException: Non-terminating decimal expansion; no exact representable decimal result

JavaScript

続きを読む