IT業界で気づいたことをこっそり書くブログ

くすぶってる系アプリエンジニアが、日々気づいたことを適当に綴っていきます(受託→ベンチャー→フリー→大企業→ベンチャー→起業(仮))

Swiftを極めるには?

今更気づいたんですが

Swift>Collection>HashedCollections

に大事そうな定義全部書いてるじゃないですか

しかもいい感じに説明や使い方も書いてある

 

色々調べる前にこれ読んだほうが早いんじゃないですかね

7000行ありますが(投稿時点)

 

GIthub見ろ説ありますが、私のレベルでは無理です

シミュレータを録画して圧縮したら捗った

クソ簡単でした

 

参考:録画

iOSシミュレータでのUIテストの様子を録画してみよう - DeNA Testing Blog

参考:圧縮

ffmpegを用いて、.MOVから.mp4に変換する方法 - かっくんの学習記録

 

 

1.Xcodeからシミュレータを起動する

2.録画

xcrun simctl io booted recordVideo ./HogeHoge.mov

3.圧縮

ffmpeg -i HogeHoge.mov HogeHoge.mp4

おわり

 

ああ^〜簡単〜

 

.movの時は、60MB/分くらいなのでslackに貼り付けるのはためらうんですが
.mp4にすると、3MB/分くらいなのでiPhoneの写真より軽いです

 

これで「変更しました!」動画ペタ! で終わりますね🎉

チケットに貼ってもいいかも

祝:お仕事受注

firebaseを思う存分使えることになったので頑張ろうと思います。

PWAはその次かな。

 

というわけで今、本業・副業・事業・趣味、で4本のアプリを同時に作ってることになります。あたまおかしい。

 

あー寝なくていい体になりたい

設計とはなにか

ブログに書くか迷ったんですがQiitaに書きました。

 

qiita.com

 

設計とはなにかと、重要性について書きたかったんですが、書ききれてないですね。設計は重要だぞ!ってどう言えば良いんでしょうか。

全ての成功可否は色んな設計が握っています。

にも関わらず設計は軽視されがちです。

(日記)疲れ、そして風邪

最近疲れでダウンするまでの間隔が短くなってきました

そろそろ強制的に休むことを考えないといけないなと思っているんですが

目は覚めているのでなかなか難しいですね

何もできない状態に追いやるしか無いんですかね、例えばネットつながらないところに行くとか

PWA(Progressive Web Apps)の立ち位置

開発元の思想は知りませんが、社会需要的にそうなるんじゃないか、といった予想です。

 

f:id:otihateten3510:20180322095810j:plain

 

1.選択肢の一つとして

金と人と時間が許されるプロジェクトなら、大抵はフルで作ると思いますし、スタートアップでも最終的にそうなるでしょう。ですが最初から全媒体向けを作り込むのはリスキーです。
そこで今はアプリファースト(例えばiOSのみなど)などというふうに、一部だけからスタートする手が取られることがあります。

  • アプリファーストで作る
  • Webで作る
  • ハイブリッドで作る(Cordova Xamarin ReactNative等)

これらの中に「PWAで作る」という選択肢が生まれると予想されます。

※どういうケースでどういうパターンが良いかは長くなるので割愛

 

2.Webでアプリっぽくしたいという要望

アプリにできない事情と言うものが存在します。

  • アプリという利用文脈に合わない

例:メディア
例:ECサイト

  • 審査が通らない

例:限られた人たちだけで使う(BtoB、社内ツール)
例:18禁

  • iOS,Androidにするとコストが高すぎる
  • ちょっとしたツール系
  • 静的情報

これらはPWAでやる可能性が高いと思います。

 

アプリや事業からみた、PWAのメリット

アプリ+PWAという構成にした時、もう一個期待できるメリットとして、アプリ側の最低保証バージョンをバンバン切れると言うものがあると思います。

例えばiOSにおいては上位2バージョン程度しか保証したくないというのが正直なところでしょう。新しい機能が使えませんし、プロダクトの開発スピードが遅くなります。
しかもそれが古いバージョンを使っている少数派のために起こります。

とは言っても、上位2バージョンだけだと、時期によって5%〜15%程度のユーザーが漏れてしまいます。
なのでその一部のユーザーの対応をどうするか、会社は苦慮していたのですが、彼らをPWAで担保することで解決することができるでしょう。これまでのスマホサイトでは力不足な感じがありました。

これはまんまTwitterLiteの思想なんですけどね(Twitter公式アプリは上位2バージョン程度しか保証していません。

サーバレスの思想がようやくわかったような?

(多分気の所為ですが)

 

サーバレス、と聞いた時に

「サーバなしにサーバと同等の何かがどこかからか提供される」

というイメージを抱いたのですが

「誰でもサーバであり、クライアントである」

というイメージの方が正しくないですかね?
まあ実際にサーバーの部分に置き換わった存在はあるわけだから実際は正しくないのかもしれませんが

 

どのクライアントから見ても、まるでクライアントの延長線上にすべてがあるように振る舞う、というのがサーバレスということなのではないでしょうか。

 

という、ひょっとしたら今更の話に今更気づけたような気がします。

もしそれが理想状態なら、とても好ましいと思います。
我々はよりユーザーサイド、サービスサイド、プロダクトサイドの事に集中するべきです。
さもないと時間がいくら合っても足りません。