Gashooの描く未来
クリエイターの生き方、働き方の選択肢を増やすことで社会における情緒的価値を増やす。
Gashooの目指すを一言で表すと「全てのクリエイターに生き方、働き方の選択肢を増やしていくこと」です。
僕らの創業メンバーの半数は芸術大学出身でそれぞれのバックグラウンドを持ちながら社会に飛び込みました。
様々な機会に恵まれ、チームとして動くことができ、様々な支援によって働く環境、自分たちのやりたいビジョンに向かって動いていけています。ここで改めて関係者各位に感謝申し上げます。 本当にありがとうございます。
なぜ僕らがクリエイターの生き方、働き方の選択肢(以下:クリエイターの選択肢)を増やして行くことになったのでしょうか?
クリエイティブから生まれる様々な人の情緒的価値の向上
僕たちがクリエイターの選択肢を増やす理由は一言で言うと社会全体の情緒的価値の向上にあります。 僕たちは価値において機能的価値と情緒的価値の二つが存在していると考えています。 機能的価値は例えばiphoneが便利だと思う動機、情緒的価値はiphoneを所有していることによる感情変化による情緒的価値などを考えています。
これは例え話ではありますが、冬のイルミネーションなどを見て綺麗と感じるかたが大半だと思います。
ではこの綺麗と感じる瞬間を作っているのは誰なのでしょうか?
様々な見解があると思いますが僕たちはクリエイターがデザインしそれらを人々が制作、構築し、この場所、空間を生み出したと考えています。 つまり、クリエイターが人々の情緒的価値の大半を構築していると考えています。
事象についてはそれだけに限る事はないですがつまり僕らの考えていることはクリエイターが社会的に最適化されて、なおかつ自身の働き方で活動できるようになれば日常的に生きている人々の「かっこいい」「綺麗」「かわいい」などといった感情から沸き起こる幸福度はあがっていくのではないかと考えています。 なぜ情緒的価値の向上をするのでしょうか?
僕たちは情緒的価値が向上すると人々は幸福を感じることができ人生が豊かになると考えています。
それはこの記事を執筆している松江がバックパックをして東南アジアを周遊していた時の話になりますが、バックパックをして気づいたことがありました。途上国地域の中の集落に訪問した時の話ですが、そこは僕たちが住んでいる日本では見た事のないような景色でした。
コンクリートジャングルで育った僕からすれば高床式倉庫のような家で暮らしている事が理解できなかったのです。 「こんなところで幸せに暮らすことなんてできない。」と思っていました。
僕の中でそれはかなりのカルチャーショックを受けました。
そこに住む人々は確かに笑いながら幸せそうに暮らしていたのです。
そこで気づいた点は、どんなに便利な社会であろうと心が貧しいと人は生きにくいのではないか。
逆説で行くと心が豊かであれば便利な社会じゃなくても生きやすいのではないか。 そこで情緒的価値の向上が浮かびました。 自身からの経験から生まれたことではありますが、帰国してからの考え方が変わったことによって全てのクリエイティブシーンにおいて感謝をするようになりました。
自分自身が生きていて「楽しい」「かっこいい」「綺麗」などといった感情が沸き起こるシーンは確かにクリエイターが創っていたのです。
大好きな映画、大好きな音楽、大好きな花火、大好きなイルミネーション、どんなに生活が便利になってもこの大好きなものが僕たちの生活の質を向上していると考えています。
だから僕たちはクリエイターの選択肢を増やす。
まとめると
クリエイターが活躍する→それを見た、感じた人たちが幸せを感じやすくなる。
クリエイターの選択肢を増やすことで社会全体における情緒的価値、幸福度の向上に繋がるからと僕たちは信じてクリエイターさんと共に世の中をもっと生きてて楽しい世の中にしたいと考えています。
僕たちが目指す未来はクリエイターと共に社会全体の情緒的価値の総量を増やすことです。
今後とも宜しくお願いします。
株式会社ガシュー CEO 松江翔輝
思考におけるクリエイティブとは
ソルトです。 最近いわゆる、「インターン」というものに結構顔を出しています。 そうですね、人によっては面白いのかと思います。
そこでよく言われる思考のフレームワークについて
自分の中で固まってきたので書こうかと思います。
結果から。
『クリティカル思考』
↓
『第一クリエイティブ思考』
↓
『ロジカル思考』
↓
『第二クリエイティブ思考』
クリティカル思考は、世の中から課題を見つける能力。
第一クリエイティブ思考は、主観を一切入れずに神の目から見て、理想の状態を具体的にイメージする能力。
ロジカル思考は、その目標までに相手を説得できる理詰めがどれだけ情報を元に構築できるかという能力。
第二クリエイティブ思考は、ロジカル思考によって考えられたものをどうアウトプットしていくかという能力。
この『第一クリエイティブ思考』って僕が呼んでるところ、 今の大学生世代はかなり苦手だと思います。 課題があったときにすぐ「AIを用いて〜」みたいな。 結局そんなことしても何が面白いの?と思ってしまうベンチャー企業ってたくさんあると思うんですよね。
じゃぁどういう人がみんなを ゾクゾク (ワクワクではない)させれるレベルの理想を提示できるのか。 結果論でしかないんですけど Work Hard, Play Hard を貫いている人はやっぱりぶっ飛んだ面白いことを思いついている印象がありますね。
「遊びの概念からクリエイティブは生まれる」 「遊びの延長線上にクリエイティブはある」 よく言われるようなことに着地するのかなと思います。
固定概念の枠を自分で認識した上で、 その境目を行き来して自分を自分自身で弄ぶ。 その先に本当に面白い理想が広がっているのではないでしょうか。
最後に自分が描いている理想の世界について箇条書きで書いてみます。
・40歳定年制度
・オール逆求人システムの採用
・染料導線と電磁誘導を組み合わせた、半永久的送電装置
・全消費財のIoT化と、自動郵送システム
・ヒトの雰囲気、波長の可視化によるマッチング装置
・5感すべてをジャックする広告
ほかなにかあるかな。。
Docker上でHanamiを動かす
GASHOO Inc. Advent Calendar 2017土曜日担当、23日目を飾ります、t-kusakabeです。 いよいよ僕の担当は最後です。頑張っていきます。
Hanamiをくじらの上で。
今回はGashooでも使われている、Docker上でHanamiを動かすということをしようと思います。 まだまだHanami & Dockerの記事がそんなにないので手順をまとめて見ました。 Docker。便利ですよね。
まずはDockerをinstall
Mac OSの方は以下のリンクからDLしてください。 Docker for Mac
Docker for MacだとDockerもdocker-composeもinstallできるので便利ですね。
まずはHanamiのスケルトンを作る
なにはともあれ hanami new
です
hanami new hanami_on_docker
Hanamiのスケルトンが出来ました。
. ├── Dockerfile ├── Gemfile ├── README.md ├── Rakefile ├── apps ├── config ├── config.ru ├── db ├── lib ├── public └── spec
Dockerfileを書く
ではDockerfileを書いていきます。 今回はRubyの2.4.2、ベースイメージにalpineを使おうと思います。
FROM ruby:2.4.2-alpine ARG APP_ROOT=/home/hanami_on_docker WORKDIR $APP_ROOT RUN apk update && \ apk add \ build-base \ curl-dev \ libxml2-dev \ libxslt-dev \ linux-headers \ mysql-dev \ nodejs \ ruby-dev \ tzdata \ yaml \ yaml-dev COPY . $APP_ROOT RUN gem install bundler && \ bundle install
/home以下にアプリケーションを置いてその中でgemをinstallします。 本的に必要になるライブラリだけ入れていますが、他にも必要なものがある場合は適宜追加してください。 (RMagickをつかっているのならImageMagickなど)
docker-compose.ymlを書く
次にdocker-compose.ymlを作成します。 DBにはMySQLを使おうと思います。
version: '3' services: app: build: . container_name: "hanami_on_docker" ports: - "2300:2300" command: bundle exec hanami server --host 0.0.0.0 volumes: - .:/home/gashoo_admin depends_on: - db tty: true stdin_open: true db: image: mysql:5.7 container_name: "mysql" ports: - "3306:3306" volumes: - mysql-data:/var/lib/mysql environment: MYSQL_ALLOW_EMPTY_PASSWORD: "yes" volumes: mysql-data:
buildしてみる
それではbuildしてみましょう。
docker-compose build
docker images
で、 hanamiondocker
というコンテナが出来て入ればOKです。
コンテナを起動してみる
それでは最後にコンテナを起動してみましょう。
docker-compose up
localhost:2300 にアクセスしてHanamiのトップ画面が表示されて入れば成功です!
デザイナーがTutorial: Intro To Reactを和訳しながらやってみたで( `・∀・´)ノ来年モヨロシク
こちら、GASHOO Inc. Advent Calendar 2017の記事です。
Reactを学習することになった経緯💢
弊社代表「デザイナーもReact触れなアカンで!(σ・∀・)σゲッツ!!」
ぼく「はあ( ゚∀゚)」
この記事を書こうと思った理由🖊
- モダンなフロントエンドの開発トレンドを知らねばならん
- とりあえず入門で勧められたReact Tutorial、日本語版が見つからない。(同じ理由で挫折した人がいるはず)
- 意外とやってみたら楽しい
というわけで、まともに触れませんが、挑戦していきながらReactの門を叩こうと思います。
謝罪🙇
Reduxは時間の都合で間に合わんかったんじゃ。。。
ぼくのJsレベル
実施環境
Mac OS X El Capitan (10.11.5)
Node.js V7.0.0
npm 3.10.8
ローカルマシン内にcreate-react-appをインストールし、 localhost:3000 で進捗を確認していきます。
和訳だけ見たいねん💢 という方
インストール&下準備
$ npm install -g create-react-app $ create-react-app my-app //my-appっていう名前でReactアプリケーションを作成 $ cd my-app $ rm -f src/* $ touch src/index.css src/index.js // src以下にindex.cssとindex.jsをつくる
以下、章に対応して考えていたことをまとめていきます。
最初の状態
GameがBoardをrenderして、BoardがSquareをrenderしているので、
なんとなく、Game > Board > Squareなのね、という解釈です。
Propsを通じてデータを渡す
突然 props とかstate とか出てくるけど違いが分からんので調べます。
Stateは「Componentが持っている状態」の事を、
Propsは「 親Componentから渡された値」を指します。
こちらを参考にしました
https://qiita.com/ryo_t/items/d1f080f77bdeff4fa2f4
状態を引き上げる
この章ではここが重要っぽい。
複数の子からのデータを集約する場合や、2つの子コンポーネントが互いに通信する場合は、親コンポーネントに存在するように状態を上位に移動します。 親は、親コンポーネントを介して子に状態を戻すことができるので、子コンポーネントは常に互いに、親と同期します。
で、component間はprivateとなってSquareコンポーネントから、Boardコンポーネントへアクセスすることができないので、■をクリックしたときの関数をSquare側へ渡そう、というみたいです。
親であるBoardクラスから状態が飛んでくる予定なので、
- Squareの render で this.state.value を this.props.value に置き換えます
- Squareの render で This.setState() を this.props.value に置き換えます
- 状態を持たないのでSquareからコンストラクタ定義を削除してください
こうなるようです。
そして以下の行、
四角をクリックしてみてください。handleClickをまだ定義していないので、エラーが発生します。これをBoardクラスに追加します。
ここで、
handleClick(i) { const squares = this.state.squares.slice(); squares[i] = 'X'; this.setState({squares: squares}); }
おお、なんじゃこれとなります。
this.state.squaresの配列をコピーして、squaresという新しい変数に代入。これをBoardコンポーネントのコンストラクタにいる this.state = { squares: ~~ }にセットするっぽいです。ややこしい。
Functional Components
この時点でSquareコンポーネントはコンストラクタ関数も内部的な処理も持っていないので、renderを返すだけの関数でOKよね、って話みたいです。
ターンを作る
そんなにつまづかなかったので割愛
勝者の定義
calculateWinner関数が一瞬「?」となるが、ようするに勝ちパターンである[0, 1, 2], [3, 4, 5]に一致するかを判定してるっぽいです。
ここまでで一応完成。次はターンを行き来する機能を作っていきます。
履歴の保存
上位のレベルのGameコンポーネントが移動リストの表示を担当するようにします。(強制)
Boardコンポーネントに書いていた内容をGameコンポーネントにお引っ越し。同じようにコンストラクタを定義して、下記のタスクを終わらせます。
- Boardでコンストラクタを削除します
- Boradの renderSquare で this.state.squares[i] を this.props.squares[i] に置き換えます
- Boardの renderSquare で this.handleClick(i) を this.props.onClick(i) に置き換えます
これで、Gameコンポーネント → Boardコンポーネント → Square関数という風になります。
で、handleClickメソッドをGameコンポーネントに移すときには、historyという状態にconcatを使ってどこどこゲームの状態のオブジェクトが入っていく感じですね。はじめの
このようなオブジェクトを状態に格納するとしましょう
history = [ { squares: [ null, null, null, null, null, null, null, null, null, ] }, { squares: [ null, null, null, null, 'X', null, null, null, null, ] }, // ... ]
こんな感じで入っていくわけですね。
Keys
keyというプロパティが、Reactが内部で色々するために勝手にできるので、適切なkeyを設定しましょうね、ってことらしい。適切なkeyってのは、重複しないユニークな値を設定してねってことらしいです。
紆余曲折あって完成
言われるがままコードを書いていたが、とりあえず完成。
とりあえず、このチュートリアルで理解できたことは、
- 親と子の関係を持つコンポーネントという単位で構成していく
- propsは親から子へ値を渡す時、stateはコンポーネントの状態を表す
- 子から親へはアクセスできないので、親 → 子へのデータ渡しの形を基本にする
本当に基本的なことしか理解していないので、来年はもっと環境周りを含め、色々理解していきたいですね。
アドベントカレンダー、初めて書いてみた感想
- いつもぼんやり考えていることを、人に伝わるように書くのは難しい
- 定期的に続けることが一番難しい
- たった4回の更新だけど、すっぽかさずにできたから良かった
- 文体がCVRに影響するのか個人的に観察してたけど、あんまりないっぽい。大事なのは見出しと画像 (ちなみに、絵文字の多用はCVRに関係はなく、趣味である)
- はてなブログ、もうちょいアクセス解析ガッツリしたい感
- markdown記法がノールックで結構書けるようになった
- Gashooのアピールになったのだろうか、来年はもうちょい統一感のあるテーマで書きたい
- デザイナーなのに、デザインについて書いたのは1回だけ(いいよね)
- 自分は文章を書くのはあまり嫌いではないようだ
そんな感じで、白石の2017年アドベントカレンダー、お先に終了とさせていただきます!ありがとうございました。🙇
Gashooのアドベントカレンダーはまだまだ続くので、お楽しみください。🙇🙇🙇
余談
過去の白石の2017アドベントカレンダー
GASHOO Inc. Advent Calendar 2017
この処理どう書いたらいいのか 迷ったねんけど...
はじめに
Gashoo inc. Engineer の しゅん(@shunn_93) | Twitterです~
GASHOO Inc. Advent Calendar 2017年12月20日 を飾ります。
前回引き続き 自身の1年の振り返りとともに
コード的に どうあるべきか... スタイルガイド的に... となったときの お話です。
コーディング規約が しっかり ない時期だと よく起こる話だと 思うので, それらの対処法 を お伝えできればなと思います。
2017年10月 ~ 12月
10月 基礎的なことでは 詰まらなくなる あるシステムを作って欲しいという内容の設計などを考える 周りの人からweb教えて などを言われるようになる エンジニアリングにおいて, できるの定義が 少しだけ明確化する
基礎部分のところで ほとんど詰まらなくなってきて, どうあるべきか などの会話が 少しずつ できるようになる。 これが, また難しいですね。。。
また, 周りの知人から webに関する質問などが 僕の元へくるようになる。
11月 Gashoo の デザインリニューアル 新しい機能のリリース react, hanami など に手を出そうとする docker とはなんぞや となる DDDの教本を開いては 眠くなる
デザインリニューアルと 共に 新しい機能のリリースを行いました やること多すぎて, 自分がなにやっているのか わからなくなるレベル笑
リリースするタイミングも, 障害対応したりと, なかなか 気が休まらなかった。
その後すぐに, 次どう進めていくのか, どこを修正かけていくのか, などを話し合い、 他の技術を導入検討したので, それらの勉強を始めようとした。
12月 今ココ 体重は変わっていないが去年より 太った気がする
どう書くのがベストプラクティスなのか迷ったとき
パターン 1
def hoge if Time.find_by(params[:xxxx]).present? @drink = Drink.create(params[:xoxo]) end end
パターン 2
def foo @drink = Drink.create(params[:xoxo]) if time_present end private def time_present Time.find_by(params[:xxxx]).present? end
メソッド hoge と foo どちらも 同じ処理をしているのだが どちらの方が 可読性があり、わかりやすいのか..... そういった話になったことがある。
その際に どちらの パターンを採用する方がいいのか。
Ruby on Rails Style Guide には
1行は 80文字以下に統一を推奨としている。
パターン 2の長い1行の部分でも 50文字となっているので、それは 満たしている...orz
どちらの方が 読みやすいのだろうと 考えた。。。
パターン 1 は if で条件を書いて インデントしている。 パターン 2 は インデントせずに 後置if で ワンライナー(1行)で 書いている。
ここで 例に上がったのは,
私生活での会話...w
パターン 1 は
もし, 暇なんやったら, 飲み物を作って欲しい。
と 言っているイメージで,
で
パターン 2 は
飲み物を作って欲しい。もし, 暇なんやったら
と 言っているイメージ。
言い方であったり, 言いやすい方を 言うと思うのですが、 どちらも 同じ意味です...
パターン 1 は 相手が 暇だという前提で 言っている感じで, もう行ってきて~ と 言っている感じになりそうで...
パターン 2 は 倒置法を用いて, ほんまに 暇なんやったら、行ってきて欲しい, と 言っているニュアンスになりそうだなと...w
結論 どの方法がいいのか
考えた結果,
基本的に コードは 上から 順に読むので, パターン 1 を採用し, 尚且つ , より処理の可読性を上げるために, private method を作成し method名から 条件を 連想できるように しました。
採用したパターン
def bar if hima_time_exists? @drink = Drink.create(params[:xoxo]) end end private def hima_time_exists? Time.find_by(params[:xxxx]).present? end
こういう書き方にすることにより、
まず はじめに if文
が 目に入り, どういう条件なのか確認する。
hima_time_exists(存在する)?
と書いているので、
メソッド名だけで どういう条件なのか わかることができる。
暇な時間は存在する??
という条件だ ということが メソッド名から 連想することができたら
もし, 暇なら 飲み物を 作る(買ってくると認識でも可 笑) ってことが,
bar
メソッドだけで確認することが 可能になる。
これがもし パターン 1 の方法を 採用していたら、
Time
ってなんだっけ... params[:xxxx]
って どういう情報が入っていて...
結局, どういう状態だったら、Drink.create
するのだったけ....orz
となる可能性が 高い....
僕は これが 一番読みやすく, わかりやすいと 思ったので, 上記を採用しました。 こういう方法の方がいいよ など ベストプラクティスな 意見がありましたら、コメントなどで 連絡してもらえると🙇
まとめ
- メソッド名の命名など 他の人の意見を聞いてみる
- しっかりとしたコーディング規約が あればそれに従う
- 自分がそうだと思っていても, 連想させるモノが 違うときがあるので
- 未来の自分を想像する
- 可読性を上げて 読んで シンプルに なにをしているか わかるようにする
追記
- 僕自身 リーダブルコードなどを 再度 じっくり読みます🙇
余談
前回の古川のアドベントカレンダー 仕様, 設計が 甘くて 禿げた - GASHOO BLOG
過去のGASHOO Inc. アドベントカレンダーの記事はこちら adventar.org
ガシューと代表の松江翔輝自身を振り返る
こんちゃっす。 誕生日で調子乗ってたらアドカレさぼってしまいました。
17日に出す予定だった記事ですが本日、重なっての更新となります!
今回は今年の振り返りを諸々Twitterでのツイート内容より振り返っていこうかなと思います。
あけましておめでとうございます🎍今年もバリバリgashoo盛り上げていきまーーす!今日から仕事♥️♥️♥️♥️ pic.twitter.com/Y7HFLkYgTK
— しょーき@Gashoo (@ev1217) 2017年1月1日
今年は1日から働いてました。 何をしていたかは覚えてないです。
2016年にGashooをβverとしてテストリリースして、そのデータを元に再設計し、サービスを開発しはじめていた頃だと思います。
生きる上でボクが大事にしている事はそれは「許す心」を持つ事でこの心は世の中の様々な問題、メディアの出す問題提起を解決すると考えている。
— しょーき@Gashoo (@ev1217) 2017年1月4日
初詣にベビーカー自粛だとかシングルマザーの子育てと仕事が両立がしにくい社会、そしてそこに生きる人々は「許す心」が圧倒的に欠けていると感じる。
僕が大切にしている事の1つです。 社会全体が許し合えるような環境があると人間は優しく生きられるのではないかと思いました。
生きる上でボクが大事にしている事はそれは「許す心」を持つ事でこの心は世の中の様々な問題、メディアの出す問題提起を解決すると考えている。
— しょーき@Gashoo (@ev1217) 2017年1月4日
初詣にベビーカー自粛だとかシングルマザーの子育てと仕事が両立がしにくい社会、そしてそこに生きる人々は「許す心」が圧倒的に欠けていると感じる。
西野さんが絵本をネットで無料公開したことにより賛否両論がありました。
自分の意志を持って生きていく人たちがもっと世の中に増えたらいいなと切実に思う。自分の意志で生きると言うことはほぼ選択において迷いがなくなる。だから得たいと思う情報が明確になるし自分がなにをすべきなのかと言うことがわかるようになる。まぁそれよりも生きてて楽しいって実感が湧くもんだ。
— しょーき@Gashoo (@ev1217) 2017年1月26日
今も本当にそう思っって生きています。 中学時代に受けていたテストで「あいつのせいだ。なんて批判しなかったですよね。」
いろんな経営層、人事の方々と出会って分かった事はみなさん口揃えてデザイナーが欲しいって言うけども本質的に求めているデザイナー像ってのはIllustrator使えます、Photoshop使えますとか技術レベルの話じゃなくてデザイン思考がちゃんと考えれるデザイナーを求めてるという事. pic.twitter.com/fk3782hzgK
— しょーき@Gashoo (@ev1217) 2017年2月3日
このくらいの頃から出会う人の幅が広がって知見や視野が広がり始めた。
この度@924Rgを代表に迎えましてGashoo seedsを設立しました。https://t.co/by5gRbeALe 世の芸大生美大生及びクリエイターがもっと活躍できる世の中にしていくために活動していきます!てことで2月3月はイベントてんこもりなの全員来たほうがよし(拡散求
— しょーき@Gashoo (@ev1217) 2017年2月8日
2月8日にクリエイター学生に対して選択肢を広げつ活動の一環で「Gashoo seeds」を立ち上げた。 現在は活動が水面下になっているが様々な形で学生も社会人も関係なくクリエイティブに生きている人たちの選択肢をこれからもどんどん広げていきます。
最強にポテンシャルあるJKがガシューアジトに…そういえばガシューアジトはお部屋増えました!キャンプも可能ですし天神橋筋六丁目にいらっしゃった時は是非ともお立ち寄りくださいませ。梅田から徒歩10分!天満から徒歩4分天神橋筋六丁目13番出口から走って10秒!初めましての方でもok!! pic.twitter.com/4bEBOPo7wY
— しょーき@Gashoo (@ev1217) 2017年2月10日
この時くらいに事務所の数を増やした。 そして高校生が事務所に遊びにきてくれた。 彼女は現在大学生で勉学に励んでいる。先日、ご飯も行ってきたが一年で思考が凄まじく変化していて若さとは最強の武器だと再認識しました。
Photoshop、Illustrator講座1日目の様子#gashooseeds pic.twitter.com/nUmd0PlNrT
— しょーき@Gashoo (@ev1217) 2017年2月22日
弊社チーフデザインオフィサーの白石による技術講座。 来年はこういった教育活動も積極的に行っていきたい。
Twitterにおいてもできる限りwin-winの関係を作りたいという気持ちからネガティブ発言はあまりしないけど一つだけ言うならクソ眠い。ただ、起きてる価値、生きてる価値を感じている。
— しょーき@Gashoo (@ev1217) 2017年3月4日
てことクレイジー大阪支社二周年記念最高でした。 pic.twitter.com/qTe2m7Leeh
CRAZYの大阪支社二周年イベントにお伺いさせていただいた時のツイート
Gashooで目指している世界観は心の豊かさを日常体験でも非日常体験でも両方体験できる世の中にすること。それは受動的でも能動的にでも。ポートフォリオ投稿サービスという手段のスタートから人の心の豊かさの体験をどういう風に体現できるかは自分達の腕次第。サービス開発頑張ります!(後少し pic.twitter.com/oNRjdzxsFQ
— しょーき@Gashoo (@ev1217) 2017年3月18日
Gashooの目指している世界観。 今も変わらずこういう形をどういった手段で表現するのは株式会社ガシューに集まる人によって変わっていくだろう。チームメンバー募集しています。
京都造形芸術大学の皆様よろしくお願いします😌🙏🏻✨✨✨ pic.twitter.com/jReRbArCFp
— しょーき@Gashoo (@ev1217) 2017年3月26日
大学院に入学した。
まぁ教職を保険にと考えている学生は結構いると思うんであえて言っておくと大体僕の同年代で保険かけて自分のやりたい事実現できずに教職員なった人は愚痴をこぼして、生徒さんからも面白くないと言われ結論離職するっていう負のスパイラルを描いているのでとっととそんな保険の掛け方やめろよって思う
— しょーき@Gashoo (@ev1217) 2017年3月30日
自分に保険をかけた生き方をしているといつかは自分を見失うぜ。っていう話。
ポートフォリオ投稿サービスGashooですがβver運用期間を経てサービス公開致しました。皆様今後ともよろしくお願いします!https://t.co/OMHomdS4Ch
— しょーき@Gashoo (@ev1217) 2017年4月3日
この時、しれっとサービス開始してた。 まだまだ改良の余地がある中でのスタートダッシュをした。 それはユーザーコミュニケーションから生まれるサービス開発を行うためであると考えていたからです。
入学式行くの忘れてた
— しょーき@Gashoo (@ev1217) 2017年4月4日
忘れてた。
柴犬の養殖場ってあるんですよ。
クリエイター学生(芸大生美大生含む)に質問です...プレゼント企画を考えています。プレゼントされたら嬉しいものはここにありますか...こういうの欲しいというのがあればリプください!!(拡散希望)
— しょーき@Gashoo (@ev1217) 2017年4月12日
後にクリエイター異種格闘技戦というコンペ企画になった。
Gashooを初めた時の気持ちを振り返ると僕の友達はすげえ絵が上手かった。ただ絵が上手いだけでは飯が食えないと言って営業職に就職した。僕はそんな友達、そして身の回りの人を救いたいと考えたサービス。クリエイターは人々の心を豊かにすると信じている、だから僕はそんな人たちを支援していく
— しょーき@Gashoo (@ev1217) 2017年4月23日
どんなに感動する作品を作っていてもそれが伝わらなければ、知られなければそこに価値はないし飯も食っていけないそんな人に自分が何を支援できるのか?僕も生きていくためにはご飯を食べなきゃ死んじゃうので自分の出来る限りの範囲で全力支援する@gashoojp も@Gashoo_seeds
— しょーき@Gashoo (@ev1217) 2017年4月23日
なぜ僕がgashooをしているのかと言うと大学時代にバックパックを楽しんでいた時にタイで偶然出くわしたおばさんがいてその方に教えられたことがきっかけ。それは本当の幸せというのは便利な生活ではなく豊かな生活であると教えられた。幸せの定義は人それぞれだが僕はそのおばさんに共感したから
— しょーき@Gashoo (@ev1217) 2017年4月23日
この気持ちは今でもいっしょ。
スコア1万突破おめでとうございます!https://t.co/1TG0M7ON71
— しょーき@Gashoo (@ev1217) 2017年5月5日
まさかこんなに爆速で伸びるとは… pic.twitter.com/hsVGt0pkDH
今は亡き、スコア機能 近々これに代わる機能を実装します。
ポートフォリオ投稿サイトGashooリリース記念コンペで最優秀賞に選出されるとMacbookpro(価値相当の物でも可)を賞品として出ます!過去作品、課題作品でもどれでもエントリー可能🔥
— しょーき@Gashoo (@ev1217) 2017年5月9日
コンペページはこちら→https://t.co/ZBOvu8sxFn #Gashoo pic.twitter.com/nqbAw3aYIL
コンペ開催した。 様々なデータが集まって何を解決していくべきなのか明確になった。
京都造形の学生との授業、僕の話でなにか考えるきっかけになったら嬉しいなと思う!
— しょーき@Gashoo (@ev1217) 2017年6月13日
あざした!
まじでGashooはじめよ!https://t.co/snV1iYQEdW
クリエイターの未来を一緒に作りましょう! pic.twitter.com/fQjuM4aAvm
大学院で講義をさせていただいた。 いい刺激になった。
最近よく聞くのがクライアントとデザイナーの双方のイメージ理解不足による成果物の不消化感...もはやここの解決なんて両方歩み寄るしかないのになあ。両方が成果物に対して真摯に向き合った結果の産物なんだからどちらかが悪いとかそういう話じゃないと思う。テキストコミュニケーション難しいよね pic.twitter.com/V7MyjqnEJn
— しょーき@Gashoo (@ev1217) 2017年6月19日
今、お請けさせていただいてるデザイン案件での学びでデザインを検討する上で重要な事は「的に当てる事」が重要かなと感じた。どれだけ中心に当てられるか、そこがポイント。
— しょーき@Gashoo (@ev1217) 2017年6月24日
だからデザイナーの重要なスキルはアイデアの量ではなくそのアイデアが当たっているのか、近遠的に判断しFBが重要かなと。
根本的な技術はイラレとかフォトショがどれだけ使えるかなんかよりもコミュニケーション能力、ヒアリング力みたいな部分が非常に重要になると感じた。
— しょーき@Gashoo (@ev1217) 2017年6月24日
デザインは問題解決に対してのアプローチとして表現方法は様々にあるが重要なのはクライアントの的に当たるか当たらないかの距離を理解する事かな。
クライアントワークにおける難しい課題点 ヒアリング能力であったりとデザイナーには求められる技術が多岐にわたる。
大学の授業とかそのほかの勉強が身につかない、覚えれないのは具体案を求めすぎてるからだと気付いたのは大学二年生でした。
— しょーき@Gashoo (@ev1217) 2017年6月27日
逆にこの抽象的な話をどうすれば今の自分の活動に活かされるのかと考えた時から授業も楽しくなったし、自分からどんどん進んで勉強をしたくなった。
目的意識は大事だなと。 pic.twitter.com/i8wEmB1WHf
そういうときもある。
常に自分は迷惑かけてばっかりの人間なのでできる限り関係のある人が僕になにか危害が被ってしまった時はその人を受け入れて許せる人間でいたい。「自分が嫌な事を他人にしてはいけません。」ではなく「自分は迷惑をかけてしまっているから何かあっても笑って受け入れる」の考え方で生きていたい。感謝 pic.twitter.com/3eQx3JhWfF
— しょーき@Gashoo (@ev1217) 2017年7月31日
こんな感じのことちょいちょい言ってる気がする。
夏休みはモノ作り、コト作りしている学生ととても会いたいです!DMでもリプでも1人でも数人でもなんでもOKです!8/17-23は東京にも滞在してます!是非、色々情報交換したいです〜!よろしくお願いします!!!!!!!!す!!!!!!!!みなさんお知り合いを紹介してください!!!!! pic.twitter.com/vqr9ZZesLb
— しょーき@Gashoo (@ev1217) 2017年8月1日
クリエイター学生、社会人関わらず色んな人にあいたいです。
「ありがとう」、「ごめん」、これを言えるやつと言えないやつとの違いは本当に大きいと思う。
— しょーき@Gashoo (@ev1217) 2017年8月4日
どんなに近かろうが遠かろうが素直に言えるやつのがやっぱり僕は好きだなあ。
自分の中で思ってて行動で示したらいい。ってのは僕は違うと思う。言葉にするからその行動が理解できるもんだと思いました。 pic.twitter.com/ELXdiS6bLd
僕は大事だと思います。
翔子さんの大阪にもオープンしたホテルお邪魔しましたー心が豊かになる…ありがとうございました!https://t.co/aYx8l6lgvi@shokoryuzaki pic.twitter.com/zEWHcwJ8aE
— しょーき@Gashoo (@ev1217) 2017年8月28日
友達のホテルオープンレセプションにも行ったり。
Gashooってなに?って気になってる人のためのページ作りました!
— しょーき@Gashoo (@ev1217) 2017年9月3日
興味あるかた見てください!
gashoo.jp pic.twitter.com/qu1ldlCrvJ
こんなのも作った。
人間なんてレンガで頭を殴られたら簡単に死んじゃうくらいの脆い生き物なんだからもっと支え合って仲間を作ったほうがよっぽど生態的に合理的だと思うんだけど…なんか不思議な世の中やな…自分だけが幸せな世の中なんてないと僕は思っている、自分が幸せを感じていたらそれを分ける生き方になるかなぁ pic.twitter.com/3YhZkcRdOY
— しょーき@Gashoo (@ev1217) 2017年9月8日
誰に好かれてるかとは別にどうでも良くて自分が信じた人を自分が信じた道を進んで行く。ただやっぱり自分の身の回りにお世話になってる人が沢山いるのでその人たちも含めて僕はみんなで幸せに生きていく。自分を大切にして生きているからその先に身の回りの人を、そして社会を大切にと考えて生きる。 pic.twitter.com/fiBf3wXADg
— しょーき@Gashoo (@ev1217) 2017年9月8日
思想が見え隠れする。
Gashooに登録してくれてるクリエイターからこういう機能欲しいですとかこういうのやってほしいリクエストくれるの本当に嬉しい。
— しょーき@Gashoo (@ev1217) 2017年9月21日
僕らとしては運営してるんだぞい。みたいなノリよりかは登録してくださってるクリエイターさんと一緒にサービスを作っていきたい気概でやってるので意見大募集!! pic.twitter.com/XjVewsABCJ
こんなスタンスです!
今日、連れていってもらったカフェ素敵すぎた.カフェ行くために森山を登るとか素敵すぎかよ…!
— しょーき@Gashoo (@ev1217) 2017年9月22日
感謝の気持ちを胸に、Gashooを通してクリエイターの働き方、生き方の選択肢をどんどん作っていきます!
しかし真上からの美味しそうにご飯を撮るのが難しい.どなたか教えてください… pic.twitter.com/BWFcC8ldpN
いい出会いに感謝
Gashooに登録してくださってるクリエイターさんが事務所遊びにきてくれるの本当うれしい。まじでみんなどんどん来てほしい。
— しょーき@Gashoo (@ev1217) 2017年10月7日
嬉しいです。いつもありがとうございます!
MacBook Pro を使ってる人はまじでこれ入れたほうがいい...
— しょーき@Gashoo (@ev1217) 2017年10月8日
App Storeで「Display Menu」をDLするんだ...通常の画面より二倍近く広くなるから作業がはかどるんやでやでやでやでやでやで。つまりデフォのMBPは本来のちからを発揮できていない。 pic.twitter.com/M0yywotLKY
これいいですよ
なにかを生み出してくれる人がいなかったらそれらを楽しんだり、共有したり、感動体験を味わうことは何一つできない。なにかを生み出す行為こそが人間を人間らしくしてくれるんだろうな。受け取る人間よりなにかを生み出す人の方がよっぽど価値を感じる。 pic.twitter.com/2eycTDe1r0
— しょーき@Gashoo (@ev1217) 2017年11月8日
クリエイターファースト
ついに明日は準備期間を抜けてちょっとだけスタートラインに立てそうな段階になる.
— しょーき@Gashoo (@ev1217) 2017年11月12日
スピード感はもっと早く、だけど救いたい人の為に丁寧に. どんどん改善を重ねてクリエイターファーストな世界に. 世の中のクリエイティブシーンに生きる人達がもっと活躍できる社会を作る. pic.twitter.com/UpPFuJkoOt
常にクリエイターファーストに考えて動いていきます。
— しょーき@Gashoo (@ev1217) 2017年11月13日
初まりは隣にいた友人を助けたく初めた「Gashoo」.今では様々なクリエイターさんに愛されてすくすくと成長している「Gashoo」です。
これからもどうぞよろしくお願いします。https://t.co/OMHomdS4Ch
Gashooのデザイン一新しました。
いつも色んな人に助けられている.経営のノウハウを教えてくれる人、サービス運営について、技術について、UIUX並びにデザインについて、クリエイターについて.何も知らない僕がやっていけてるのは本当にたくさんの周りの人の優しさのおかげ.いつもありがとうございます。本当に感謝しきれないなあ. pic.twitter.com/WyCJJL80BZ
— しょーき@Gashoo (@ev1217) 2017年11月14日
周りに恵まれまくってると最上級に感じた時のツイート
僕たちがGashooというコミュニティを通して何を達成したいのか?その思考をブランドとして落とし込み、世の中に対して挑戦していきます。みなさん一読よろしかお願いします。
— しょーき@Gashoo (@ev1217) 2017年11月15日
Gashoo Visual Identity by ryoshiraishi on Gashoo https://t.co/My2PIFW3uk #Gashoo
Gashooの存在意義として僕達が伝えたい事です。
このプロジェクト!
— しょーき@Gashoo (@ev1217) 2017年11月27日
まだ参加枠あります!
映像クリエイター学生の方!一緒にやりませんか! https://t.co/XBqqvVdEyX
大阪芸術大学教授とのコラボプロジェクト こういった形でもいいから様々な形で情報発信を行う。
「ありがとう」「ごめんなさい」ちゃんと素直に言える大人でありたい。
— しょーき@Gashoo (@ev1217) 2017年11月29日
その一言一言の積み重ねが次と続きを生んでいく。
自分一人で生きているわけではない。だから一人の人間として全てと素直に向き合っていく。そういう気持ちを持てる人間で在りたい。僕が尊敬している大人達はみんなそんな人間だ。 pic.twitter.com/QC1IkT0mRy
僕がいつも尊敬している人たちはだいたいこんな感じ。 歳が関係なくこういう人。
Gashoo東京オフィス立ち上げました!
— しょーき@Gashoo (@ev1217) 2017年12月7日
学生インターン募集してます!
ほぼ、0ベースなので様々な業務ができます。
興味のある方は是非DMまでよろしくお願いします!🔥🔥🔥🔥🔥 pic.twitter.com/rBP1BN146p
そして東京オフィスの立ち上げ、関西と関東の両軸でどんどんクリエイターの働き方、生き方の選択肢を広げられるように活動していきます。
自分が何のために生きているのか?その生きている目的を言語化して定義している人ってのはなんかぶれてないんだよな。そういう人こそ僕は人として尊敬している。別に定義化する必要はないんだけど、日本語においてその背景を含んだ言語こそ抽象的かつ本質的な部分をついているような気がする。以上!
— しょーき@Gashoo (@ev1217) 2017年12月14日
これもまた生き方論の話ですね。
感謝を大事にできる人強い pic.twitter.com/NXJl5gfSo3
— しょーき@Gashoo (@ev1217) 2017年12月15日
感謝は大事だと思います。言葉にする事はもっと大事かなと。
はい!あざした! pic.twitter.com/2ZUH6EwoCM
— しょーき@Gashoo (@ev1217) 2017年12月17日
先日誕生日でした! ありがとうございました!!!
ていう感じでTwitterの投稿を一年振り返ってみました。
基本的にツイートしている内容は自分の生き方、思想からGashooでどういう活動をしているのかなどをつぶやいていました。
来年からは活動範囲が一気に広がるので更に面白い事ができそうです。
Railsをvimで書いてみよう!
GASHOO Inc. Advent Calendar 2017土曜日担当、19日目を飾ります、t-kusakabeです。 先週の土曜日は多忙のため記事をあげることが出来ずリスケして今です、頑張ります。
Railsでvim
皆さん大好き宗教戦争です。 普段はエディタは何をお使いでしょうか? 弊社ではatomやsublime textを使っている人がいる中僕だけvimでコードを書いています。(VSCodeがいないのは珍しいのかな?)(IDEも臨機応変に使ってるよ!) よく「vimは勉強コストが高い」や「vimrc書くのが面倒」という理由からvimを避けている人を見かけます。 ただ僕はvimmer同士が集まったときに必ず繰り広げられる「自分が使っているvimの便利なプラグイン自慢」みたいなものに全く参加できません。 というくらい僕が使っているものはしれています。 ただコードを書くのには十分過ぎるので以外とvimの導入コストって高くないと感じいます。 今回はgashooのコードをvimで書けるようにしてみようと思います。 (gashooのコードを公開するわけじゃないよ)
構成
通常一つの.vimrcにいろいろ書いていくと思いますが僕は以下の様にディレクトリを分けています。
├── .vimrc └── .vim ├── bundle ├── colors └── userautoload
なにはともあれ.vimrc
.vimrcには各種設定ファイルを読み紅葉にします。 (カラースキームだけ面倒くかったのでそのままです...mm)
runtime! userautoload/*.vim " colorscheme colorscheme antares
大きく二つに分ける
基本的に触るファイルはuserautoload以下のファイルです。
userautoload ├── basic.vim ├── neobudle.vim └── statusline.vim
- basic.vim -> プラグインを使わないもの(エイリアスとか)
- neobundle.vim -> プラグインを使うもの
- statusline.vim -> ステータスラインのファイル(肥大化してきたので分けているだけで上記に含めてもいいかもです)
プラグインを使うのならneobundle.vim、使わないのならbasic.vimに書いていきます。
まずはプラグインなしから
" setting set number set title set expandtab set autoindent set tabstop=2 set shiftwidth=2 set ignorecase set smartcase set wrapscan set cursorline set scrolloff=10 set confirm set hidden set nobackup set noswapfile set hlsearch set incsearch set ignorecase set nowrapscan set mouse=a set wildmenu wildmode=list:longest,full set fenc=utf-8 set laststatus=2 set ruler set showcmd set list set listchars=trail:. set clipboard+=unnamed set clipboard=unnamedplus set clipboard+=autoselect set wildmenu set history=1000 set backspace=indent,eol,start syntax on set syntax=markdown set incsearch autocmd QuickFixCmdPost *grep* cwindow " escを C> " sキー封印 nnoremap s <Nop> " window移動 nnoremap sj <C-w>j nnoremap sk <C-w>k nnoremap sl <C-w>l nnoremap sh <C-w>h " 論理移動 nnoremap j gj nnoremap k gk nnoremap gj j nnoremap gk k " window分割 shortcut key nnoremap ss :<C-u>sp<CR> nnoremap sv :<C-u>vs<CR> " 新規tab shortcut key nnoremap st :<C-u>tabnew<CR> " 画面を閉じる nnoremap sq :<C-u>q<CR> " 検索結果を画面中央に nmap n nzz nmap N Nzz nmap * *zz nmap # #zz " 強制保存 cnoremap w!! w !sudo tee > /dev/null %<CR> :e!<CR> " htmlの閉じタグ補完 augroup MyXML autocmd! autocmd Filetype xml inoremap <buffer> </ </<C-x><C-o> autocmd Filetype html inoremap <buffer> </ </<C-x><C-o> autocmd Filetype eruby inoremap <buffer> </ </<C-x><C-o> augroup END " clipboardからのペースト時のインデント崩れの防止 if &term =~ "xterm" let &t_SI .= "\e[?2004h" let &t_EI .= "\e[?2004l" let &pastetoggle = "\e[201~" function XTermPasteBegin(ret) set paste return a:ret endfunction inoremap <special> <expr> <Esc>[200~ XTermPasteBegin("") endif
Gashooのインデントはソフトタブ2つなためそれに合わせいます(ほんとは自分が好きなだけで変える必要がある時はちゃんとeditorconfig使ってます) また新型MBPに対応するためESCを押さなくて良い様に 'j' を2回押すとコマンドモードに切り替わるようにしています。 これが以外と便利で普段タイピングをするときに 'j' を2回連続で押すことは全くと言っていいほどないので入力は困らないです。 またESCを押すときにホームポジションが崩れてしまうのも防げるのでわりとお気に入りです。(実際はタッチバーなしを買った)
vimで分割
sをprefixにしています。 - s + s -> 水平分割 - s + v -> 垂直分割
s + (j k, h, l) -> ペインの移動
s + t -> 新規タブの作成
- s + q -> 画面を閉じる
これだけでも他のエディタと似た様なことが出来るかと思います。
そしてプラグイン
昔ながらのneoBundleを使っています(モダンにして行きたいけど不便はないので移行する気があまり起きない。。。)
if has('vim_starting') set nocompatible " Required: set runtimepath+=~/.vim/bundle/neobundle.vim/ endif " Required: call neobundle#begin(expand('~/.vim/bundle/')) " Let NeoBundle manage NeoBundle " Required: NeoBundleFetch 'Shougo/neobundle.vim' " editorconfig NeoBundle 'editorconfig/editorconfig-vim' " vimのwindowサイズ調整 NeoBundle 'simeji/winresizer' let g:winresizer_start_key = '<C-T>' " vim上でgitの差分 NeoBundle 'airblade/vim-gitgutter' " stauts line NeoBundle 'itchyny/lightline.vim' " NERDTreeを設定 NeoBundle 'scrooloose/nerdtree' nnoremap <silent><C-e> :NERDTreeToggle<CR> autocmd bufenter * if (winnr("$") == 1 && exists("b:NERDTree") && b:NERDTree.isTabTree()) | q | endif map <C-l> gt map <C-h> gT " Unite.vim導入 NeoBundle 'Shougo/unite.vim' " Unite.vim setting " prefix keyの設定 nmap <Space> [unite] " insertモードで起動 let g:unite_enable_start_insert=1 " 大文字小文字を区別しない let g:unite_enable_ignore_case=1 let g:unite_enable_smart_case=1 " キーマップ "スペースキーとaキーでカレントディレクトリを表示 nnoremap <silent> [unite]a :<C-u>UniteWithBufferDir -buffer-name=files file<CR> "スペースキーとfキーでバッファと最近開いたファイル一覧を表示 nnoremap <silent> [unite]f :<C-u>Unite<Space>buffer file_mru<CR> "新規ファイル作成 noremap :uff :<C-u>UniteWithBufferDir file file/new -buffer-name=file<CR> " ESCキーを2回押すと終了する au FileType unite nnoremap <silent> <buffer> <ESC><ESC> :q<CR> au FileType unite inoremap <silent> <buffer> <ESC><ESC> <ESC>:q<CR> " 括弧を自動で入れる NeoBundle 'Townk/vim-autoclose' " vim上でファイル名検索 NeoBundle "ctrlpvim/ctrlp.vim" NeoBundle 'tacahiroy/ctrlp-funky' let g:ctrlp_show_hidden = 0 " ファイル名検索にagを使う NeoBundle 'rking/ag.vim' if executable('ag') let g:ctrlp_use_caching=0 let g:ctrlp_user_command='ag %s -i --hidden -g ""' endif " ag.vim NeoBundle 'rking/ag.vim' " plantuml NeoBundle "aklt/plantuml-syntax" let g:plantuml_executable_script = "~/.dotfile/plantuml" " Railsのプラグイン NeoBundle 'tpope/vim-rails' " slimのsyntax NeoBundle 'slim-template/vim-slim' " Ruby向けにendを自動挿入してくれる NeoBundle 'tpope/vim-endwise' " カラースキーム NeoBundle 'vim-scripts/twilight' " なんかタグ強調してくれるやつ NeoBundle 'valloric/matchtagalways' " Reactのsyntax NeoBundle 'pangloss/vim-javascript' NeoBundle 'mxw/vim-jsx' " Vueのsyntax NeoBundle 'Shougo/context_filetype.vim' NeoBundle 'osyo-manga/vim-precious' autocmd BufNewFile,BufRead *.vue set filetype=html " emmet-vim NeoBundle 'mattn/emmet-vim' " coffee-scriptのsyntax NeoBundle 'kchmck/vim-coffee-script' call neobundle#end() " Required: filetype plugin indent on " If there are uninstalled bundles found on startup, " this will conveniently prompt you to install them. NeoBundleCheck
基本的にはSyntax系が多いです。 一部抜粋して。
- airblade/vim-gitgutter -> vim上でgitの差分が見れる
- scrooloose/nerdtree -> ディレクトリ構造を表示(ctrl + e)
- Shougo/unite.vim -> pathを指定してファイルを開く(space + a)
- ctrlpvim/ctrlp.vim -> ファイル名を指定して開く(上記はpathを辿らないといけないのに対してこちらは名前で開く(インクリメンタルサーチ)が出来る)
これだけ結構IDE的なことが出来ます。 ただIDEお得意の関数ジャンプがvimでは結構大変です。(ctagsとか使えばできる) これはサーチャー系を使って代替しています。
- Highwaty
- Platinum Searcher
- The Silver Searcher
定義元に飛ぶだけより、どこで使われているのかなども把握出来るのでこちらの方が便利と言い聞かせています。 関数だけでなく単語なども検索出来るので便利ですね(cmd + shift + f相当)
ステータスライン
個人的にvimで大切なのは自分で設定をすることだと思っています。 よくvimrcくれと言われるのですが、自分で設定しないと何ができるのかわからなかったりするので結局vimを使わなくなったりします。 また自分で設定することで愛着も持てる気がします。 ということでステータスラインに関しては是非自分で設定してみてくださいw lightlineが良い感じになる気がします。 僕はステータスラインに未保存かどうか、現状のモード、書式、文字コード、行数、列数などを表示させています。 またrubocopなどのlintツールの結果を表示させたりしています。(これほんと便利)
まとめ
いかがでしたでしょうか。 僕は普段vim + tmux + zshを使って開発をしているのですが、vimだけでも十分便利に使えると思います。 「プログラマが知るべき97のこと」でも取り上げられていますが、IDEしか使ったことのない人は是非これを機にvimに挑戦していただけると幸いです。 エディタもバージョン管理も全て真っ黒な画面で行うのでちょっと知的になった気もしますねw