5/13 (日) ビットサミットに行って来た

5/13(日)のビットサミットに行って来ました.

ビットサミットって?

bitsummit.jp

5/12~13の二日間,京都のみやこめっせで開催されたインディーズゲームの祭典です.インディーズゲームを実際に触ったり,開発者のトークセッションなんかも見れたりと面白みに溢れたイベントです.

気になったゲームたち

CARTO

制作はSunhead Gamesさんです.

どういうゲーム?

  • フィールドを探索して地図の断片を手に入れていく
  • マップを開いて,その地図の断片を好きな場所に配置する
  • 新しい場所に行けるようになるので,その場所を探索する

Sunhead Gamesさんが動画を投稿していたので,これを見たらだいたいわかると思います.

面白いと思った点

地図のーマスーマスを自由に移動や回転させたりできるので,基本的にキャラクターを操作して目的の場所に向かうという時間を地図を操作することで,大幅に短縮できます.

マップを探索するゲームは個人的に大好物なのですが,一工夫をすることで効率よくゲームを進められる点が新しいなと思いました.

よくあるマップ移動として特定の場所をワープできる機能などはよくあると思うのですが,自分でワープする場所を決めるような感覚で地図の断片を操作できる点が非常に自由度が高くて良いです.

リリースされるのが楽しみです😍

ghostpia

制作は超水道 さんです.

どういうゲーム?

  • ジャンルはデンシ・グラフィックノベルというジャンル
  • ビットサミットで見せてもらったものは,多くのイラストでアニメーションのような躍動感を持ったノベルゲームという印象でした.

面白いと思った点

繊細なイラスト,音楽から作り出されるすごく幻想的な世界を感じました.まだシナリオは読んでないのですが,隙間を見つけてやって行きたいと思います.

Switchでのリリースも予定しているとのことなので,そちらも楽しみです😍

入れました💪

他やってないけど気になったゲームたち

まとめ

13日のみの参加でしたが,非常に楽しく過ごすことができました.また来年も行って,面白いゲームを探して行きたいと思います🙏

tmux + zsh + fzf + ghqでセッションを作成して,指定リポジトリに移動する処理

挙動

  • tmuxを開いている状態で,C-gを押すとghqでgetしてきたリポジトリのリストを取得する.
  • 移動したいリポジトリを選択する.
  • 新規セッションが作成され,そのセッションに移動する.

コード

これを.zshrcに書いたら動くと思います.

function create_session_with_ghq() {
    # fzfで選んだghqのリポジトリのpathを取得
    moveto=$(ghq root)/$(ghq list | fzf)

    if [[ ! -z ${TMUX} ]]
    then
        # リポジトリ名を取得
        repo_name=`basename $moveto`

        # repositoryが選択されなかった時は実行しない
        if [ $repo_name != `basename $(ghq root)` ]
        then
            # セッション作成(エラーは/dev/nullへ)
            tmux new-session -d -c $moveto -s $repo_name  2> /dev/null

            # セッション切り替え(エラーは/dev/nullへ)
            tmux switch-client -t $repo_name 2> /dev/null
        fi
    fi
}
zle -N create_session_with_ghq
bindkey '^G' create_session_with_ghq

エラーもみ消している感

こんな感じで動く

f:id:MitubaEX:20180502234529g:plain

参考にしました

ghq+fzf on tmux | matsub

blog.chairoi.me

Mobile Act OSAKA #4に参加してきた

mobileact.connpass.com

参加してきたので,まとめます.

サービス開発とアプリ開発 nory_kanameさん

クックビズのマネージャー

  • 作ったあとどうして行くか
    • ソフトウェア開発のV字モデル
    • データを見ることが多い
    • ログを見て何をするか?
      • ボタンのタップ率を調査
      • 縦スクロールなのに横スクロールのやつをなおす
      • 空の画面としては,コンテンツが追加されたらどうなるかなどの画像があるとわかりやすい

感想

データからわかるUI改善について,いろいろなパターンを知ることができました. ユーザの目線の動きに着目する例が多く,勉強になりました.

Firebaseとモバイル開発 1amageekさん

クックパッド

  • komerco
    • firebaseでサーバーレス
    • 短い時間で作るためのfirebase
    • firestoreを利用している

感想

FirebaseのFirestoreの利点に関して色々勉強になりました. Firestore使ってみようと思います.

Kotlinコンバートと戦った話 TakuyaOhashiさん

フェンリルAndroidエンジニア

  • java Android エンジニアには人権がない
  • Java を kotlin にコンバートして行く

  • Lombok

  • Icepick
    • Activityの破棄で入力した値が破棄されるやつをなんとかしてくれるやつ.
    • android-state
  • SAM変換
    • 一つだけの抽象メソッドを持つインターフェース
  • kotlinだとコメント入れ子が可能

感想

JavaからKotlinに変換する時の罠がたくさん知れて勉強になりました. ライブラリ周りでKotlinと相性が悪いと大変ということがわかりました.

Charlesで通信デバッグ izuchyさん

株式会社インパス

  • 運用の悩み

    • API間の通信が見えづらい
    • ログは出るけど・・・
  • Charlesで通信デバッグ

    • 間にプロキシ立てて通信を確認できる
    • 利用するとき変更すること
    • できること
      • 通信の内容を変更することができる -> ブレークポイント
      • 3G回線の再現
      • 通信のリトライ
      • API設計を変更して,施行が可能

感想

Charlesすごい.いろいろできそう. ちょっと触ってみます.

制約付きレイアウトと仲良くする itokさん

そらかぜの中の人

  • constraintLayout
    • 制約を守りつつ,可変のレイアウトが実現できる

感想

複雑なレイアウト周りをあまり知らなかったので,あまり理解ができず申し訳ない.

ペダルのある生活 Hironさん

株式会社MetaMoji

タブレットを利用してノートをかけるアプリ

  • iRig BlueTurn

感想

iOSでキー入力をとる話が非常におもしく,かつペダルでやる感じもネタ感があったよかったです.

@objcとは何だったのか hokuronさん

フェンリル株式会社

感想

@objc周りが完全にわからなくて,非常に申し訳ない.

QR Code Recognition on iOS 11 Satoshi Hachiyaさん

  • ios11では標準でQRコードを読み取れるようになった
  • wifiQRコードで配布できる
  • カレンダー登録もできる

感想

QRコードWiFiまで繋げるだって!?と一人感動していました. 少し興味があるので,触ってみようかと思いました.

まとめ

ネイティブの機能周りいろいろ触って見たいなぁと思ったので精進します.

おまけ

zsh + prezto + powerlevel9k + iTerm2 + Solarizedの環境周りをまとめてみる

github.com

雑にitamaeを利用してオレオレ環境を再現できるようにしたので,やったことなどを日本語でもまとめていきます.

OSは,Mac OS X 10.13.4です.

なおある程度まっさらな環境から作っていくことを想定しているので,動かない可能性もあります.🙇‍♂️


iTerm2

brewでインストールできます.(楽)

brew cask install iterm2


zsh

zshのアップデートを行います.

brew install zsh

sudo vim /etc/shellsで開いて一番下に以下の記述を追記します.

/usr/local/bin/zsh

その後,chsh -s /usr/local/bin/zshでシェルを変更します.


prezto

github.com

HOMEディレクトリで以下のコマンドを実行したらインストールできます.(zshrcなどがある場合は削除されるっぽいので注意)

git clone --recursive https://github.com/sorin-ionescu/prezto.git "${ZDOTDIR:-$HOME}/.zprezto"


powerlevel9k

github.com

preztoがインストールできたのであれば,HOMEにある.zpreztorc内のthemeを以下のように変更したらpowerlevel9kを使用することができます.

zstyle ':prezto:module:prompt' theme 'powerlevel9k'

しかし,themeを変えただけじゃ文字化けが発生すると思います. なのでフォントを入れます.

フォントは以下のコマンドで入ります.

git clone https://github.com/powerline/fonts.git --depth=1

# install
cd fonts
./install.sh

# clean-up a bit
cd ..
rm -rf fonts

その後,iTerm2の環境設定を開いてフォントをSource Code Pro for Powerlineに変更して,開きなおすとかっこいい環境になっていると思います.


f:id:MitubaEX:20180423041716p:plain


Option (入れなくても十分機能します)

個人的なプラス要素として,絵文字がいろいろあるフォントが使いたいなぁと思って,nerd-fontを利用しました. インストール方法は以下のコマンドを打つだけです.

brew tap caskroom/fonts
brew cask install font-hack-nerd-font

その後,フォントをHack Regular Nerd Font Completeに変更して,以下の記述を.zpreztorc内のthemeの上に記述します.

export TERM="xterm-256color"
POWERLEVEL9K_MODE='nerdfont-complete'

これでおそらく少し変わったと思います.


僕は色などをいろいろいじって以下のような感じにしました.

より詳しくは以下に記載されています.(wiki)

github.com


Solarized

いい感じのプロンプトができたので,iTerm2のテーマもいい感じにします.

驚くことにデフォルトでiTerm2にはSolarizedが入っているようで,設定で切り替えたら設定完了です.(僕は驚きました)

f:id:MitubaEX:20180423042354p:plain

まとめ

開発環境がかっこよくなると,モチベが上がるのでおすすめです.

関西Node学園 梅田キャンパス 1時限目に参加して来た

nodejs.connpass.com

参加して来たので,まとめます.

春からはじめる新しいNode.js - Node.js v10 @shisama_

平野さん、ウェブリオ

  • EcmaScript
    • 二ヶ月に一回ミーティング
    • TC39
  • node
    • node.js release にリリースしたやつが載っている
    • node4 v8 engine 4
    • node 6 今月末にLTSではなくなる
    • node 8 現在のLTS async / await をサポート
      • 一年後の四月にLTSではなくなる
    • node 9 現在のcurrent
    • 次のnode 10 4/24リリース
      • v8 6.6に
      • v8 6.7 chrome 67に乗っている
      • npm7に期待
      • EcmaScript
        • 多くの機能が追加される
        • dynamic import
        • promiseにfinallyが追加
        • node greenでどの機能が使えるかが書いている
        • 実験的な機能はフラグによって使用することができる
          • harmony
          • 実験的な機能が使える

感想

どのバージョンがどんな感じかを詳しく説明して,バージョンの上げる目安なんかもわかって勉強になりました.

TypeScript + Express(仮) @kamiyam

かみやんさん フリーランス

  • TypeScript
    • マイクロソフトさん
    • nodeの代わりにts-nodeを入れる
    • 型定義置き場はtypes/...
    • switch caseのところを文字列で比較するのではなく、enumで定義したtypeを利用する
  • TypeScript + Express

感想

実演もあったりしてどうやってTypeScriptを導入していくかをじっくりやっていて,すごく勉強になりました.ts-nodeは知らなかったです😇

Babel7.xで変わること @mochiya98

ふなおかさん HAL大阪

  • babel
    • npm i @babel/とかで書かないといけない
    • どこの情報を見たら良いか
      • planning for 7.0
      • nearing the 7.0
      • Upgrade to Babel7 移行メインの内容
      • babel-upgradeで移行が楽

感想

babelをあまり意識したことがなかったので,勉強します・・・

JavaScriptユニットテスト入門 きりん@sota1235

きりんさん メルカリ

テストに行くまでの道

  • テストの必要性
    • 品質担保
      • 意図した通りに動作するか
    • 責務ごとにテストを書く
    • 汚いコードはテストが書きづらい
  • 現実との戦い
    • フロントエンドのテストが書けるようになったのは数年前
    • UIとロジックの切り離し
    • テストのコスパ
      • ロジックが変化しやすいものはテストを書き換えることが多くなる
      • 計算ロジックはテストして良さそう
      • UIのテストは無駄になることが多い
      • ビジネスロジックは変わることが少ない
  • モジュールを切り出す
    • ユーザインタラクションとロジックを分離する

感想

スライドで出てきた,せやなボタンがネタ感があって非常に面白かったです.そしてそれを元にちゃんとロジックとUIを切り離し分離したコードまで書いてありすごく考えられたスライドで感動しました.こういうプレゼンをしたいなと思いました.😆

無理せずflowtypeを導入していく

まいけるさん

  • flowtype
    • jsで書いて,ビルドするときにアノテーションを取っ払う
    • flow-remove-typeでアノテーションを取れる
    • flow.org/en/docs/types
    • React使うときに便利
    • language serverを使おう
    • typeを定義するのが大変だったらObjectでおっけー
    • サードパーティーライブラリの型はanyになってしまう
  • flowのupgrade
    • ためるとやばい
    • flowはchangelogを見る
    • それで分からなければtestコードを見る

感想

flow周りのupgradeのつらい現状が非常に伝わって来ました.Utility Typesを知らなかったので,学んでいこうと思いました.

まとめ

精進します.🙇‍♂️

応用情報技術者試験を受けてきたので反省した

本日,応用情報技術者試験(AP)が全国で行われてました. 僕も参加し,試験を受けました.

試験の手応え

正直,ビミョい感じがしてて個人的に受かっていると信じながらこれからも生きていく所存です. Twitterでは,強気に攻めてます.

勉強時間など

当初の計画

  • 毎日,100問ずつ解く
  • 試験開始日までに全ての問題を二週分解ける計算
  • 優勝🎉

という流れだった

現実

  • 20時間ぐらい午前に
  • 驚くことに午後は2時間程度😇
  • 午前も少ないと思いつつ,午後はあまりやる気がなくてざっと見て終わりって感じ😢

受けてみた後,思ったことをつらつら

思ったことは,午前と午後を分けない方がいいんじゃないかということです. 午前の問題を断片的に解いていると,結構自分は今何をしているんだろう?応用情報かな?となってしまったりしました.

だから個人的には「今日は平成○○年の過去問を解くぞ!」というスタンスで午前午後の問題をセットで解いて雰囲気をつかむことが理想だと思いました.

↓イメージとしてはこんな感じ

https://i.pinimg.com/originals/27/39/62/27396251edcb2103378dac90f9a77fc8.png

でも雰囲気ってのは大事だと思っていて,非常にやっている感が出てくると思います(多分). そして午前の問題を適当に解いている時と違って,全体で何点かという評価が出てくれます. ここで高得点を取れたらいい気分になれます(多分).

すごくいいですね.😝

この午前午後セットの過去問を週に三回ぐらい解いていけば,二ヶ月で16回ぐらい解けます. これが十分かはわかりませんが,次受ける時があればこんな感じで勉強しようと思います(戒め)

まとめ

応用情報技術者試験をちゃんと勉強して,次は頑張りたい

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

gihyo.jp

読みましたので,雑感なんかをつらつらと.時間としては9時間ほどで読めました.(3日)

凄く楽しく読めました😊

全体を通して

その章ごとにお題が決められており,そのお題に関する例題がありました. この例題というものがテストなども交えて,結構なボリューム感を持って存在しています. 技術書を少しは読んでいるのですが,しっかりした例題があると読んで得た知識をすぐに活かせるのでより身につくなぁと思いました.

面白かった点

rubyこんなこともできるのかすげぇってコードを読みながら思ったら,コードの下の文章にこういった書き方をするのはやめましょうと書いてあり,「書くなよ!絶対書くなよ」感が印象に残りました.

面白いなと思いました.

気になった点

  • ->(){}lambdaという二つの書き方でlambdaが定義できるとのことなのですが,本では -> の方で書いています.qiitaの記事を読んでいるとlambdaという表記で書いている人もいました.(情報が古いかもしれない?🤔)

ココらへんは好みもしくは担当する案件の規約とかに依存しそうなので,わからないなぁと思いました.(個人的にlambda派)

たくさん書き方がある良い言語だと思いました.

まとめ

Ruby初心者でこの本を手に取り読みましたが,漏らすこと無く読み切ることができて良い本だと思いました. 例題をやる上で変更箇所がわかりやすく塗りつぶされているので,適度な速度を保ちつつコードを書くことができました. 入門書として非常に役に立たちました.🙇