will and way

ただの自分用メモを人に伝える形式で書くことでわかりやすくまとめてるはずのブログ

Alamofireでパラメータをenumで扱えるようにする

github.com Alamofireといえば、言わずと知れたSwift界のHTTPクライアント。名前の由来はテキサスの花の名前らしいすね。 今回はAlamofireのリクエストパラメータをenumで扱うという話。 大前提。Stringは脆い! Stringはすべての表現を兼ね備える万能な型で…

Swiftをせっかく使うならProtocol Oriented Programmingしたい

まえがき 6月からAndroidエンジニアからiOSエンジニアになり、Objective-CをSwift化するプロジェクトをやっている。 iOSはiOS5,6時代に開発した経験はあるがSwiftは0からということで、最近色々記事を読んでいた。Swiftいいですね。僕は好きです。 その中でW…

ImeFragmentというライブラリを公開しました!キーボード開発でもFragmentを使う!

この記事はCyberAgent Developers Advent Calendar 2016の20日目の記事です。 www.adventar.org 19日目はstrskさんでGKEのノードプールを利用したKubernetesのアップグレードでした。 ちなみにstrskさんは元々飲食業界ではたらいていてCSで入社→今はAbemaTV…

キーボードを掃除した

そういえば、今年HHKBの無印字を買ったんです。今年買ってよかったものの一つです。 そんなHHKBですがホームページに行くと以下のような文章が書いてあります。 アメリカ西部のカウボーイたちは、馬が死ぬと馬はそこに残していくが、どんなに砂漠を歩こうと…

良いルーターを使うのはもはやライフハックつだ!!! TP-LINK AC3150 レビュー

Amazon Cyber Mondayあざす!!! TP-Link 無線LANルーター 11ac/n/a/g/b 2167+1000Mbps デュアルバンド Wave2対応 ギガビット MU-MIMO 3年保証 Archer C3150出版社/メーカー: TP-LINK発売日: 2016/11/18メディア: Personal Computersこの商品を含むブログを…

InputMethodService(キーボード)開発の勘所となりそうな項目

この記事はAndroid Advent Calendar 2016 - Qiitaの11日目の記事です。 昨日は@yuyakaidoさんのData Binding Tipsでした。 明日は@rei-mさんのDagger2とMockitoでUIテストはじめる話です。 11日目はAndroid StudioでKotlinのプロジェクトが新規で作られるソ…

小ネタ. Macで音のボリュームを無段階調節

知らなかったので驚いた Shift + Option + Functionキーで音量とかディレスプレイ輝度の調整がより細かくできる!!! 普通にボリュームup/downすると以下のようにメモリ毎にボリュームが変わりますが Shift + Optionを推しながら調節すると・・・ うおおお…

Androidのコードを書く前にコーディングに集中できる状態を作る

はじめに この投稿はAndroid その3 Advent Calendar 2016 - Qiitaの5日目の記事です。 4日目はkimukouさんのrealm-gradle-plugin 2.2.1 と Android Realm Browserでした。 6日目はkimukouさんの2016年末のAndroidでのSSL対応に関してです。 Androidのコード…

Android 2.3系, 3.0系を対応しているならそろそろ潮時なのかもしれない

Highlights from the Google Play services 10.0 release. Google Play Servicesのv10系がリリースされ、リリース文の序文に Google Play services 10.0.x is the final release that includes full support for Android version 2.3.x 2.3を切るよと書かれ…

Androidの開発にはIntelliJでも良いじゃんと気づいた話

IntelliJをインストールしていながらもAndroid Studioを使っていたが IntelliJでAndroidプロジェクトを読み込んでみたら、Android Studioと全く同じように開発できた。 そして、上位互換だった。そんな話。 社会人になってからの職歴とエディタ歴は IntelliJ…

メルカリでロードバイクを売った話と防犯登録の手続きでハマった話※追記あり

全然、最近乗ってなかったので持ち腐れと思いメルカリで売ってみた。その時の話。 自転車を譲渡するって意外と大変だなーって思った事が意外とあった。 特に自転車の場合は防犯登録があるが、手続きの順序をしらないと手間が増えるのでメモ書き程度に残して…

marble diagram

marble diagramとは Reactiveプログラミングの説明に使われるあの図の名前。 RxMables#mapより転載 X軸を時間、Y軸をストリームとしていて、4つの登場人物は以下の通り ○: input data event X: error event |: complete event 中間の□: transformer つまり、…

ジムに行き始めて4ヶ月が経った

健康診断で2年連続 LDLが高い 血中脂肪が高め 貧血 と言われ、男性の貧血は稀ということで精密検査まで受けたにも関わらず原因不明。この5年間風邪もひかず、全くもって健康体だと思ってたのに悔しい。 一念発起して体質改善をすべくジムに行き始めて早4ヶ月…

続・Mac OSXの設定をAnsibleで9割以上自動化する

blog.matsuokah.jp 今年の1月に書いた記事では Ansibleをインストールの自動化 Ansibleによるアプリのインストールや設定の自動化 の2つを行いました。 今回の記事では masによるアプリのインストール Ansibleのアップデート それに伴い、defaultsコマンドの…

【読書】Unixという考え方 ― その設計思想と哲学

きっかけはgithubのissue この本を読むきっかけになったのは emacs界隈ではデファクトであるmagitをvimに持ってきた vimagitのとあるissueのやり取り。 そのissueとはAny plans to add blame command? つまり、blameの実装予定はあるのか?という質問である…

エンジニアはなぜ勉強し続けるの?

今日、後輩とのランチで「なぜエンジニアは勉強し続けなければならないのか?」という話題になった。 結論は 「エンジニアという職業は手段を売り物にしているから」 そして、「手段」は新しいものがでてきては、古いものは使われなくなるサイクルがとてつも…

クイーンズタウン・メルボルンの旅

4/29~5/7の9日間ほど南半球に行ってきました!その記録をば。 ニュージーランド1日目 クイーンズタウンに到着。空港から出てすぐに取った一枚。 曇り空だけど、いきなり自然に囲まれる。 ニュージーランド2日目 ミルフォードサウンドのツアーに参加。1年間の…

S+になりました!!!

スプラトゥーンを11月末に初めて早5ヶ月、やっとS+になりました。 わかバリアつよい!

三軒茶屋から羽田の早朝便に乗るにはホテルよりタクシーが良い件

昨日までタイに1週間行ってきまして、往路は羽田から出発しました。 大田区はホテルが少なくて、それなりにお金もかかる 自分が予約していたのは7:30羽田発の便。5時半に空港に到着したいところ。 しかし、私が住んでる三軒茶屋(三宿付近)からは電車の場合、…

一人旅でおすすめされてるタイに1週間行ってきた(持ち物編)

バックパックの中身 旅 パスポート 現金(日本円で4万円くらい) クレジットカード+プライオリティパス 印刷物類 バウチャー類(ホテル、航空機) 保険関連 緊急連絡先 タイの薬リスト ガイドブック ガジェット SIMフリースマホ(Nexus5) いつも使ってるスマホ(Xp…

一人旅でおすすめされてるタイに1週間行ってきた(事前調査編)

日本語しか話せない筆者でも行ってこれた 就活では、TOEICを受けたことが無いことにしてたレベルのスコアだったのですがなんとかなりました! タイ語も「こんにちは」と「ありがとう」しか勉強してません。 今までの海外経験は中国とシンガポール。2回とも英…

一人旅でおすすめされてるタイに1週間行ってきた(旅程の建て方編)

初の一人旅ということだったのですが、振り返ってみれば日本国内旅行と何ら変わらないなーと感じました。 それは、宿・飛行機をだけをおさえる! 行きたいところをざっくり決める(町・村レベルで十分) 国と国、町と町で交通整備されてるか調べる(飛行機、タ…

Intensity shuttleを使ってMacでWii Uを録画する

負けた試合の分析や、プライベートマッチでふざけてる動画がとれるのは楽しい!ということで、録画の環境を紹介。 紹介すること 最短の手順 Intensity Shuttle for Thunderboltとは HDMIスプリッター USB給電タイプを購入した話 動画の録画にはOpen Broadcas…

SplatoonのAmiibo3種(ボーイ、ガール、イカ)ゲット!+α

やっとSplatoonのAmiiboを3種類ゲットしました!!!!!!! ミッションクリアするとギアがもらえるので、粛々とネットで調べてたんですよ。 しかしネットではびこるのは転売 元値は単体で1200円、トリプルセットで3000円なのですが、 1つ2000円くらいしてたりし…

iPhoneをGenius Barに持って行く前にすること

Genius Barとは iPhoneをはじめとするApple製品のカスタマーサポートで、各Apple Storeで専門スタッフが不具合をマンツーマンで聞いてくれるサービス。 私はiPhone5のWi-Fi接続不良、iPhone6の予期せぬ終了で計2度、お世話になりました。 前回持って行った時…

iTunes Connectでアプリがレビューに入ったとか、リジェクトされたとかをslackに通知する

blog.matsuokah.jp から、派生して作った。ヤマトはラインで見れちゃうのでいらない子になっちゃったしね。今まで、一部の人がメールを受け取った際にチームに共有してたのでタイムラグや共有し忘れを防ぎたくてつくった 今回もGMailを定期的にGoogle App Sc…

Google App Scriptから直接Slackに通知

割と本気で家庭用Slack Botを作ってみた - 八発白中 がかなり、あついですね。 VPSはおもちゃ箱なんだなあと、ゆめがあるなあと感じます。 とはいえ、お金をかからない方法をとるという強かなスタンスもまた、アリです! またまたやってみました。Google App…

ナプラケアテクトリペア

シャンプーとコンディショナーをリピート美容室やハンズで買うと定価でかなり高いのでアマゾンにて。ナプラ ケアテクトリペアいいです

fluentd(td-agent)でGoogle Cloud Storageにログをためる

初めてrubyを書いた。mixinとかいろいろ省略してかけるとかaliasをメソッドに貼るとか便利だなーというのが感想。 gemの公開もbundleコマンドでさくさく出来たのでこれは開発者にとってかなり魅力的なのでは。エコシステム?が素晴らしい。 さて、本題ですが…

slackと仲良くなる

まず、公式ドキュメントよめ get.slack.help 公式読まない人は何をやっても使いこなせないでしょう。と自分にいいきかせ読んでみたら、とても良かったので使えそうなやつをカテゴリ別にメモしていきます。 Hipchat → Slack移行なう もともとHipchatを使って…

Vagrant公式ドキュメントを見るときに気をつけたい

VagrantのprovisionerにAnsible Vagrantにはprovisionerが幾つか、用意されています。 メジャーなのはchef-clientやchef-soloかと思います。vagrant-omunibusというプラグインがあるので、実行環境を整えやすいですし。 また、簡単なプロビジョニングであれ…

壁美人をつかったという話

「C++初心者ならビルドはBazelでラクしちゃいましょう」の主役となったBazelや「100円でオフィスのデスクをスッキリさせたという報告。」でまな板たて使うというアイディアを教えてくれた、会社の先輩に年末に 「壁美人いいよ。特に賃貸だったら」 と言われ…

Mac OSXの設定をAnsibleで9割以上自動化する

自分のMBPRetinaは3年前のモデルでアップデートする度に、スリープからの復帰画面がおかしくなったりしたのでOSのクリーンインストールも兼ねました。データはほとんどクラウド化されてるので残るは設定ファイルのみ。0から設定するのだるい。 今後、0スター…

OSXのコマンドラインからすると捗った設定リスト

mobilelaby.com 上記で紹介されていたiPhoneを接続した時に写真アプリの自動起動を防ぐターミナルでのコマンド defaults write com.apple.ImageCapture disableHotPlug -bool NO これ便利。実は他にもある。さらに、コマンドライン経由から設定することで、…

Vagrant上でDockerコンテナプロビジョニングとDockerコンテナプロビジョニング環境のプロビジョニングにAnsibleを使う

タイトルが長い笑 この記事はQiita Advent Calendar 2015 23日目の記事です。 前日はunchemistさんのここがヘンだよAnsible (ハマりどころと対策について)でした。 qiita.com Ansibleのカレンダーが空いてたので投稿いたしましたが、もしかしたらPackerとかD…

Cocos2d-xにおけるOS依存機能利用のための実装

この記事はqiita advent calendar cocos2d-x 2015の22日目の記事です。 qiita.com C++完結はできない Cocos2d-xでは主にクロスプラットフォームな開発を期待して選ぶ方が多いと思います。 しかし、プラットフォーム依存な所、例えば文字の入力、課金、OS情報…

C++初心者ならビルドはBazelでラクしちゃいましょう

c++

この記事は 初心者C++er Advent Calendar 2015, Qiita C++ Advent Calendar 2015 15 日目の記事です. 注意 UbuntuもしくはMac OSXの環境が作れない方はそっと閉じてください。(VagrantでUbuntuはすぐ準備できる) スマホアプリ畑の人間が書くので、それに向け…

よく通っているコーヒースタンド

遅くなってすみません。。。すっかり忘れておりました。 この記事は「コーヒー Advent Calendar 2015」5日目の記事です。 www.adventar.org 俺氏について ブラックコーヒーデビューは小学4年生位の頃。 元々は牛乳入れないとダメだったのですが、コーヒー牛…

同期系スマホアプリのリリースサイクル・テストについて

この記事はCyberAgent エンジニア Advent Calendar 2015の12日目の記事です。 www.adventar.org 昨日はtoguriさんのVRを追いかけるゼミやってます でした。 360度動画がFacebookで見れるようになったり、コロプラさんが白猫のVR化や株式会社360Channelを設立…

結婚式に参加した話

なんのひねりもないタイトル。 先週の土曜日の高校の同級生の結婚式に参加してきた。 結婚式及び披露宴に参加するのは人生初。 厳かな空気や、友人が歌や音楽で手拍子をしながら祝うあの空気は言葉に出来ない良さがあった。 結婚式 is エンターテイメント。 …

チームのエース級人材が抜ける件について

最近、チームのエース級人材がハンティング的な異動することになったが、意外と不安にはならなかった。 その理由について、ふと考えたことのメモ 「よく働く人に頼ってしまう」という仮設 まさに働きアリの法則。 100匹の働きアリを観察すると、 そのうちの2…

iPhone4からのiOSユーザーがメイン機をAndroidへの乗り換えた話

筆者はsimフリー機(iPhone6)をMVNOで運用していたが、docomoのXpria Z5を契約したという話。 乗り換えにあたって「契約まで」と「メイン機の移行」でしたことをまとめてみた。 乗り換えた理由 まず、乗り換えた理由から。理由は5つ ハードウェア的にでできる…

kindleでライトに読めるソフトウェア開発のためのタスク管理・マネジメント本まとめ

本の選び方 タスク管理本は管理の対象がどのくらいの規模なのかを自分に問いかけてから選ぶと失敗しないと思います。 つまり、管理の対象は1人(自分)のをするのか、1,20人未満小規模のチームなのか。規模の大きさによってフレームワークや起こりうる問題など…

Webセキュリティの読み物

徳丸浩のWebセキュリティ教室 徳丸浩のWebセキュリティ教室 徳丸本がkindleで、出てたのでメモ。単行本は10月にでてます。 ポイント 3章構成(概要→攻撃手法→事例)となっており、読み物として要所とトレンドを抑えた内容となっている 特に3章では具体例を14…

IFTTT経由の柔軟な定期リマインダーをつくる

軽いライフハック 作ったのは翌日がなんのゴミの日か?を前日の23時頃に通知するシステム。 ここ2ヶ月位前にIFTTTを知ってポピュラーなレシピだけじゃ限界あるし自分の生活にとって最適なレシピを作りたいと思ってやってみた。 JSもExcelも初心者だけど、そ…

日本のエンジニアブログまとめ

github.com エンジニアブログのopml便利だな−と思ったので、日本のエンジニアブログもまとめてみた。 使い方 cloneやらpullやら japanese_engineering_blogs.opmlをfeedlyなどのRSSリーダにimport 本家 github.com さすが、英語圏のエンジニアブログは情報が…

Gitでコミット履歴を整理したい時に覚えておきたいコマンド(編集中)

シーン: featureブランチから更に作業ブランチを作ってた場合 上記のようにfeature/Aから枝分かれして並列で開発している時に、BのマージコミットをしたあとにC...C''のリベースをしようとするとなかなか大変だなーと思う時がありました。 そこで feature/AB…

Anti Adblock機能を使っているサイトでコンテンツを読む方法。Anti Anti Adblock

Anti Adblockとは? その名の通り、Adblockしているブラウザに対してコンテンツを表示しないという策を講じる機能です。あくまでブラウザです。 ご存知のかたが多数と思いますが、サードパーティ製の広告ブロック機能がiOS9から使える様になりました。そのア…

Androidのスクリーンの動画を撮る

4.4から可能になったadb screenrecord Android4.4以降からadbをつかってスクリーンの動画をとることができます。どのアプリを起動していてもできるので、他のアプリの演出を録画したり、自分のアプリのプロモーション用の動画の材料を作ったりと、用途は無限…

TGS2015で公表されたFF15ディレクターのQ&Aから見るゲーム開発

スクショ及び以下の情報の引用元:ファイナルファンタジーXV アクティブ・タイム・レポート TGS 2015出張版 - YouTube iOS版FFⅦがまだDISC3に入ったばかりのmatsuokaです。 TGS2015に行ったわけではないが、スクエニの公式ページを徘徊していて動画がアップロ…