サクサク読めて、アプリ限定の機能も多数!
トップへ戻る
アメリカ大統領選
mizoguche.info
SHIROBAKO Advent Calendar 201716日目です。 本日は、えくそだすっ!プロジェクトの振り返りをやっていきたいと思います。 高梨、スケジュールの遅延を報告しない SHIROBAKOで学ぶプロジェクトマネジメント #1 怒る必要ない | mizoguche.info 瀬川さん、過負荷により休養 SHIROBAKOで学ぶプロジェクトマネジメント #2 長時間労働のデメリット | mizoguche.info 宮森、Todoを覚えようとしている 「状況を報告せよ」という言葉で一生懸命思い出そうとする宮森 しかし混乱してすぐには答えられない 問題点 Todoを脳内で記憶するというのは非常にコストが高く、揮発性も高いため情報が失われやすい 作業中の「あれもせなあかん」「これはしなくていいんだっけ」という不安によって生産性は下がる スケジュールが遅れて作業に追われている時はな
Ktorのコード読んでて、文法的にどうなってるか調べて説明できるようにするメモ。 一番簡単なサンプルコードでも一筋縄ではいかない。 ktor/HelloApplication.kt at master · Kotlin/ktor fun Application.main() { // ... } 拡張関数 継承やデコレーターパターンを使うことなくクラスの機能を拡張できる Extension Functions - Kotlin Programming Language fun Application.main() { /* */ } は下記のような関数を定義している レシーバーがApplication クラス 名前が main 引数はなし 返り値は Unit Utilityクラス絶対殺すマン val nullString: String? = null StringUtils.isEmpt
技術的な話 ざっくりとした技術的な知見としては、 複雑な要件に立ち向かうために、ドメインモデルを設計してコードと一致させる そのためにはオブジェクト指向を適切にやっていかなければならない オブジェクト指向を適切にやる、というあたりはオブジェクト指向エクササイズやリーダブルコードに書いてあることを実践していこうという感じ。 ゼロベースで改善する姿勢 プレゼンテーション層で実装するようなことをドメイン層へ移す class Items { items: List<Item>; fun found(): String { if (items.count() == 0) { return "見つかりませんでした" } return "${items.count()}件見つかりました" } } このロジックをドメインオブジェクトに書くことは、ビューとモデルの分離の原則に違反しているように感じる人もいる
Acceptance Testing React Apps with Jest and Nightmare | Vigetに書いてあることをCircleCI(2.0)でやろうとしたらタイムアウトした。 FAIL test/acceptance/index.test.js (30.388s) ● When visiting the homepage › foo Timeout - Async callback was not invoked within timeout specified by jasmine.DEFAULT_TIMEOUT_INTERVAL. at pTimeout (node_modules/jest-jasmine2/build/queueRunner.js:53:21) at Timeout.callback [as _onTimeout] (node_module
macOS SierraにアップデートしたらKarabinerが使えなくなるという話だったのでYosemiteからのアップデートを先延ばしにしてたところ、XcodeをアップデートのためにOSをアップデートする必要が出たのでSierraにアップデートし、KarabinerからHammerspoonに乗り換えた。 TL; DR 初めてのLuaをふんわり書いたら動いた 今のところKarabinerでやってることは実現できてるのでSierraでも問題を感じない Hammerspoon Karabiner 使えない対策: Hammerspoon で macOS の修飾キーつきホットキーのキーリマップを実現する - QiitaとかRebuild: 166: Self-Confident Neural Network (naoya)あたりでHammerspoonの存在を把握してたのでとりあえず乗り換えた
オープン・クローズドの原則(OCP: Open-Closed Principle) オープン モジュールの振る舞いを拡張できる 仕様変更に対して、モジュールに新たな振る舞いを追加することで対処できるようにすること。 クローズド モジュールの振る舞いを拡張してもソースコードやバイナリが影響を受けない ようするに 拡張がしやすくて、拡張しても修正箇所はできるだけ少なくなるような設計にするべき、という話。 「抽象」に依存する モジュールをある固定した「抽象」に従属させておけば、修正に対してコードを閉じることができるのだ。なぜなら、「抽象」を使えば、コードを修正しなくても、その「抽象」の派生クラスを新たに追加するだけでモジュールの振る舞いを拡張できるからである。 修正するたびにバグを埋め込む機会を得ることになるので修正箇所はできるだけ少なくするべき。それを実現する方法が、抽象に対するプログラミング
24人で考えた情報共有ツールの悩み 情報会議 #2 レポート | JohoKaigi - 情報会議に行ってきた。 どんな感じやったかは上記記事見ていただいた方が早い感じあるので思ったことつらつらと書く。 esa.io Qiita:Teamの中でesa.ioの中の人がLTするという器の大きさ。 esaは前職で使ってた(esa.io でドキュメント共有したらものすごく捗ってる | mizoguche.info)。使い始めていい感じやな~って実感して記事増えてきてカテゴリ分けどうしようくらいで転職したのでディープに使いこなすとこまではいってない感じではある。 そういえばGoogleで検索した時にesa内の検索結果を表示するChrome拡張 もざっくり書いたりしてたけど、結局転職してあんまり使う機会がなくなってしまった。 スライドにもある通り、WIPという「書きかけやけど公開しとくねー」ってノリで
第1回「情報共有ツールお悩みNight」を開催しました - Qiita Blogに行ってた。もう1週間も経ったか。 事前準備 準備が周到すぎる Qiita:Team、Slackが用意されて事前にコミュニケーションが図られた リハーサルやってフィードバックループまわすとかイベンターの鑑すぎて超感動した ワークショップ 各班にファシリテーター(自称世話役)がいたので進行が非常にスムーズ ファシリテーターがいなかったらこんなにスムーズには行かなかったろうなという意味でも準備最高すぎ 問題が架空の話だったので、提示されてない条件とかを考えだしてうーんみたいなことにちょこちょこなってたんですが、リアルな話をするのも問題があるかもしれないので難しいですねーと思った この辺はワークショップに慣れてるかどうかな感じな気もする LT @htomine チームで考えよう エモーショナルだけど心に刺さった 情報
8月7日付けで退職した。 アルバイトの子から「退職エントリ待ってます」的なフリがあったし、思うことを書いとく。 ただの自戒を込めた反省なので、他人をディスる意図は全くない。 ビジネスモデル 人月商売について このシステムは作るのに何時間かかるからウン万円という人月単価×工数=請求金額のビジネスモデルを人月商売とする 作業効率が上がって作るのに時間がかからなくなればなるほど儲からない 作業効率は技術力と比例する 低い技術力でなんとか実現することで稼げる 経営レイヤーでは(短期的に)見ると技術力を上げないインセンティブが働く 単価はできるだけ低く抑えて利益を上げたくなる 単価を上げる(技術力の高い人を雇う)と回収できるかわからないリスクがある この機能はこれくらいの価値があるという観点から請求金額が導けると顧客も開発会社もハッピーになれそうな気がしてる 実装に時間がかかろうがかからなかろうが、
APK が 50MB を超えた APKが50MBを超えてしまうとGoogle Play Storeにアップロードできない。 Unity - Manual: Support for Split Application Binary (.OBB) にある通り、Unityにはビルド時にAPKを分割する機能がある。 注意点 Google Play Storeの仕様では、基本的にAPKと分割されたOBBファイルはインストール時に同時にダウンロードされて所定の位置に保存されるが、条件によってはOBBがダウンロードされずAPKのみダウンロードされる場合がある。 よって、アプリ起動時にOBBファイルが所定の位置にあるか確認する必要がある 参考: APK Expansion Files | Android Developers Unity ではどうするの Unity には Google Play OBB D
iOS / Android でツイートしたらコールバック貰える Unity のアセット探してたけどなかったのでつくった。 mizoguche/TweetSharer デザインパターン厨としてはここで使わないとどこで使うって感じだったので Bridge パターンを使ってみた。 やっぱり偉い人たちが言うだけあって、かなりコードが見やすくなって気持ちいい。 Bridge パターン使わなかったら #if UNITY_ANDROID と #elsif UNITY_IOS による精神汚染が激しくなってたと思われる。 iOS 対応は anchan828/social-connector を参考にした。 Android 対応 めんどくさい部分 Android でただただツイートを他アプリに任せるなら暗黙的インテント使えばいいだけの話やけど、今回はツイートしたのかキャンセルしたのかを知りたいので start
今までプロビジョニングツールには Chef 使ってた(使いこなせてなかった)。小規模なサーバーしか扱わないのでレシピ組み立てるのに HP がかなり必要だった。 軽量シンプル Chef ともっぱらの評判の、itamae-kitchen/itamae を使ってみた。 レシピの書き方 パッケージのインストール package 'git gcc-c++ patch readline readline-devel zlib' do action :install end 例によって、これで入る。 ファイルのアップロード remote_file '/home/ec2-user/.bash_profile' do source 'bash_profile' end 例によってこれで上がる。 Resources · itamae-kitchen/itamae Wiki にドキュメントが上がってないので、i
esa.io を会社で導入した。 ドキュメント管理が課題だとさんざん言いつつも放置してきており、社内に知識が溜まっていかないという残念な組織づくりが行われていた。 これはいかんと Redmine の Wiki をつかってみたりもしたけど、しっくりこない感。Redmine はプロジェクトに紐づくのでナレッジベースにするような運用できない。 Qiita:team は高いしなーという世間話から、そういえば esa.io ってあったよなー最初は無料やしいっぺん使ってみようかーとなって使ってみたら便利な雰囲気を感じ取って、今に至る。 pros 気軽に投稿できる 検索できる Markdown で書ける デザインがいい感じ(ズルいデザインテクニックの人らしい) 公式 Twitter アカウントが割と esa に関するツイートを拾ってくれるしメンションしたらすぐに返してくれる cons APIがない カテ
AWS の設定するとき、いちいちコンソールからいじってた情弱だったが、Terraform を使い始めて文明開化の音がした。 けど、やっぱり初めて使うものですからわからんこと/困ったことがあった。 .gitignore にいれるべきではないもの terraform gitignore - Google 検索で上の方に出てくる .gitignore はアプリケーション開発用の .gitignore なのでこれは使ってはいけない。 これを使うと .tfstate ファイルが無視されてしまい、AWS の状態が保持できなくなる。 what’s a good git-ignore policy for a terraform repository? - Google グループ We recommend checking in both your plan files (*.tf) and your .
AWS 触って慣れたいんで、Jenkins と GitLab が入ったプライベートな開発環境を AWS につくってました。 で、 t1.micro で Jenkins 動かしてたら CPU 利用率が 100% 近くに張り付いたまま反応しなくなったので、思い切って m1.small なインスタンスを立ち上げました。奮発しすぎ感あるけど、使わな勿体無い感出して自分を追い込む作戦。 あんまり使ってなかったので、この際と思って Vagrant 使ってイチから環境を作りなおしました。 やったこと 必要になりそうなプラグインのインストール CentOS でレシピの設定 AWSで立ち上げる 必要になりそうなプラグインのインストール ざっくり調べて必要になりそうなVagrantのプラグインを入れます。Chef と Berkshelf はもともと入ってる感じです。 $ vagrant plugin inst
このページを最初にブックマークしてみませんか?
『mizoguche memo』の新着エントリーを見る
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く