即興フリースタイルラップの練習アプリ「DJ Beats」のバージョン1.2をリリースしました。
毎日コーディング生活の最初の成果として、約1年くらい前に作ったアプリ「DJ Beats」のアップデートを行いました。
即興フリースタイルラップの練習アプリという超ニッチなアプリです。
アプリの制作時間は約30分。こういうアプリを量産していきたい!
「DJ Beats」は、約1年前に世間で「フリースタイルダンジョン」が流行っていたことに乗っかって作ったアプリです。
アイコンのデザインやAutoLayoutでの画面制作にはちょっと苦労したものの、機能自体はサクッと30分くらいで作りました。
再生するトラック(インストの音楽)は、Youtubeにアップされているものを集めたもの。Youtubeの動画IDをリストとして持っており、リストの中からランダムに1曲が再生されます。
Youtubeの制御はライブラリが公開されているので、基本的にはライブラリが用意しているメソッドをコールするだけ。
時間がかかったことと言えば、広告の表示の部分と、動画IDのリストをJSON形式で自前のサーバーに置くようにしたことくらいです。(リストを外部ファイルにしたのは、動画の追加・削除の際にアプリのアップデートが必要なく、すぐに編集することができるように。)
今回のアップデートは、約1年の間にいくつかアプリレビューとして投稿いただいた要望の中から、ビートを巻き戻すという機能を追加しました。
これもライブラリのメソッドをコールするだけなので、サクッと実装できました。
30分で作ったアプリでもちょっとくらいなら稼ぐことはできる!
DJ Beatsは1年くらいほったらかしにしていたアプリですが、無料アプリということもあり日々少しづつインストールされ、アプリ下部に固定しているバナー広告からの収益が月に5,000円くらいあります。
副業アフィリエイトと考えるとかなり少ない額ですが、30分で作ってあとは放置ということを考えれば、この5,000円はほぼ完全なる不労所得。こういうアプリを量産できれば、運用の労力は増えずに、少しづつ毎月の収入が増えていくことになります。
素敵!
仕事の片手間でアプリを作るわけなので、今後も狙うべきはこういうアプリ、こういう戦略だと思っています。
目指すは初代iPod Shuffleみたいなアプリ
Appleが2005年に発表した初代iPod shuffleはかなりインパクトのある製品でした。
当時大人気だったiPodの機能を大幅に減らし、画面すらなく、基本的に端末内の楽曲をシャッフル再生するだけという、極限まで機能を減らしたiPod"でした。
ここまで引き算を極めたデバイスを見たのは初めてでしたし、ここまで引き算してもなお残るiPodらしさも凄いなーと思ったものです。
私のアプリ「DJ Beats」も機能はiPod Shuffleに負けず劣らず少ないです。
音楽を再生するアプリなのに楽曲を選択する画面は無く、ランダムで曲が再生されるだけ。操作は「曲の一時停止/再生」「次の曲(ランダム)」「今流れている音楽を最初から再生」だけしかできません。
これをあえてどんなトラックが流れてもすぐに対応して即興ラップできるように練習するためのアプリとして提示することで、機能の少なさをこのアプリの特徴に変えられたと思います。
「DJ Beats」は我ながらうまいこといったアプリですが、これを量産するのは結構たいへん。
機能を盛ることは意外と簡単ですが、減らしていくのは結構難しいんですよね…。
その代わりとことん引き算したアプリはアプリの特徴・個性を説明しやすいし、何より開発が短期間で済むので、早い段階で世の中に出すことができます。
「毎日コーディング生活」の基本理念である「Done is better than perfect(完璧を目指すよりまず終わらせろ)」にも非常にマッチします。
ということで、今後も完璧で高機能なアプリを目指すのではなく、iPod Shuffleみたいなアプリをたくさん作っていくことを目指したいと思います!
毎日コーディング生活 5月のノルマ達成状況
- 毎月1本新アプリをリリースする:未達成
- 毎月1回は公開済みのアプリをアップデートする: 達成
- 毎月1つ、GitHub上でPublicレポジトリとして何かしら公開する:未達成
GitHubのアカウントを有料プランに変更!毎日コーディング生活を始めます!
プログラマ・エンジニアとしてのスキルを上げるべく、毎日コーディング生活を始めることにしました。
「毎日コーディング生活」とは、その名の通り毎日1行でもいいのでコードを書くという生活を続けること。
少しでも「やってる感」を味わえるように、毎日のコーディング内容はGitHubにプッシュします。
GitHubは活動量が緑色の濃さで表現される(通称、草が生える)ので、「やってる感」が視覚化され、モチベーションも維持できるはずです。
ただ、新しい分野の勉強のためにコードを写経することもあり、それをGitHubのPublicレポジトリで誰でも見れる状態で公開するのは良くないし、そもそもあんまり人に見られたくないコードも出てくるはず…。
ということで、privateのレポジトリを作れるように、GitHubに課金しました。
月額7ドルでprivateレポジトリ作り放題なので、これで安心して毎日コーディング生活をおくれそうです。
Done is better than perfect! コードは積極的に公開していくつもりです
privateレポジトリが作れるようになったからといって、privateでばかり活動していては本来の目的であるスキルの向上にはつながりません。
作ったものは、積極的に公開していきたいと思います。
Facebook創立者のマーク・ザッカーバーグの名言「Done is better than perfect(完璧を目指すよりまず終わらせろ)の精神で、完璧じゃなくてもいいので、世の中に向けて公開することを重視していきたいと思います。
公開の方法はGitHub上でレポジトリをPublicにするパターンもあるし、アプリの場合はApp Store等のストアで公開するパターンもあると思います。
どんなパターンであれ、小さく作って公開し、実際に触った人の意見をフィードバックすることで改善していくというサイクルを回すことを重視したいです。
今現在、AppleWatch向けのニッチなアプリのアイデアをいくつか抱えているので、まずはそのアプリを作って公開するのが当面の目標です。
その後も、「エンドユーザー向けのアプリやサービスを作るぞ!」と考えるとアイデアが底をつきそうですが、アプリを開発する際によく使う機能なんかを「開発者向けのライブラリ」として公開していくのであれば、より小さなアイデアがいくらでも出てきそうです。
実は、すでに4つのアプリをAppStoreで公開しているので、これらのアプリのアップデートもいいネタです。
(ストアに公開するとユーザーからの評価・コメントがつくので、改善のアイデアも見つけやすいですしね!)
Masashi Ezakiの App を App Store で
まずは、
- 毎月1本新アプリをリリースする
- 毎月1回は公開済みのアプリをアップデートする
- 毎月1つ、GitHub上でPublicレポジトリとして何かしら公開する
といったあたりをアウトプットの目標として、毎日コーディング生活を始めたいと思います。
がんばりまーす。
松井証券のロボアドバイザー「投信工房」で、毎日500円積立をはじめました
35歳にしてアイアンマンを目指している私ですが、やはりアイアンマンの特徴と言えば「超絶お金持ち」は欠かせない!
35歳で子どもも二人いる立派な"大人"であるにも関わらず、私は"お金"についてあんまり考えてきたことがありませんでした。 漠然と"お金持ち"を目指したところでお金は増えていかないので、まずはお金について学ぶという点を第一の目標に投資をはじめてみることにします。
とは言え、本当に"お金"についての知識が無いので、いきなり株式の現物取引やFXに手を出すのはちょっとハードルが高い。。。
ということで、最近話題のロボアドバイサーを使った投資信託から始めてみます。
投資というものにもっと興味が出てくれば、もちろん投資の内容はどんどん広げていくつもりです。
ロボアドバイザーにもいろんな種類があるようだけど、選んだのは松井証券の「投信工房」。
500円という少額で始められるということで、投資の勉強がてら手軽にスタートするにはピッタリのサービスだと思います。
まずは毎日500円積立!ロボアドバイザーの提案をそのまま採用してみた
「投信工房」をやっている人のブログをいくつかみてみると、ロボアドバイザーの提案をベースに自分でいろいろとカスタムしている人が多い感じ。
でも、私はカスタムするだけの知識がまったく無いのです。。。
ということで、まずはロボアドバイザーの提案をそのまま採用して積立をやってみることにします。
これはこれでネット上に公開しておけば参考になるという人もいるかもしれないし…。
ロボアドバイザーが選んでくれた投資先のバランスはこんな感じ。
最初に性格診断的なものがあって、自分に合ったバランスを選んでくれるんだけど、私はそこそこの安定志向なようだ。
債権はローリスク・ローリターンすぎて微妙かな―とも思ったので、そのうちバランスは見直すかもしれないけれど、まずはこれで始めてみようと思います!
積立の最少額は500円。積立のペースは毎月、毎週、毎日から自由に設定が可能です。
私は500円を毎日のペースで積み立てていくことにします。
毎日といいつつ積立が行われるのは毎営業日のようなので、大体毎月1万円くらいの積立になります。
これがどのような推移をしていくのか、定期的にこのブログで報告していきます。
積立の記録
松井証券の「投信工房」で毎日500円積立の記録― 1ヶ月目(2017年5月)の記録 - アイアンマンになりたい
松井証券の「投信工房」で毎日500円積立の記録― 2ヶ月目(2017年6月)の記録 - アイアンマンになりたい
松井証券の「投信工房」で毎日500円積立の記録― 3ヶ月目(2017年7月)の記録 - アイアンマンになりたい
松井証券の「投信工房」で毎日500円積立の記録― 4ヶ月目(2017年8月)の記録 - アイアンマンになりたい
松井証券の「投信工房」で毎日500円積立の記録― 5ヶ月目(2017年9月)の記録 - アイアンマンになりたい
松井証券の「投信工房」で毎日500円積立の記録― 6ヶ月目(2017年10月)の記録 - アイアンマンになりたい
松井証券の「投信工房」で毎日500円積立の記録― 7ヶ月目(2017年11月)の記録 - アイアンマンになりたい
松井証券の「投信工房」で毎日500円積立の記録― 8ヶ月目(2017年12月)の記録 - アイアンマンになりたい
松井証券の「投信工房」で毎日500円積立の記録― 9ヶ月目(2018年1月)の記録 - アイアンマンになりたい
松井証券の「投信工房」で毎日500円積立の記録― 10ヶ月目(2018年2月)の記録 - アイアンマンになりたい
松井証券の「投信工房」で毎日500円積立の記録― 11ヶ月目(2018年3月)の記録 - アイアンマンになりたい
松井証券の「投信工房」で毎日500円積立の記録― 12ヶ月目(2018年4月)の記録 - アイアンマンになりたい
松井証券の「投信工房」で毎日500円積立の記録― 13ヶ月目(2018年5月)の記録 - アイアンマンになりたい
松井証券の「投信工房」で毎日500円積立の記録― 14ヶ月目(2018年6月)の記録 - アイアンマンになりたい
松井証券の「投信工房」で毎日500円積立の記録― 15ヶ月目(2018年7月)の記録 - アイアンマンになりたい
AppleWatchのシミュレーターの操作方法&ショートカットまとめ
AppleWatchアプリを開発するうえで欠かせないXcodeのAppleWatchシミュレータ。
AppleWatchのアプリは実機への転送に時間がかかることもあり、iPhoneアプリ開発以上にシミュレータのお世話になることが多いので、各種操作のやりたかをまとめておきます。
AppleWatchシミュレータの操作方法
操作 | シミュレータの動作 |
---|---|
タップ | クリック |
ダブルタップ | ダブルクリック |
通常タップ | 「Hardware」>「Simulate Touch Pressure」>「Shallow Press」を選択 (ショートカットは後述) |
フォースタッチ | 「Hardware」>「Simulate Touch Pressure」>「Deep Press」を選択 (ショートカットは後述) |
デジタルクラウンを回す | ウインドウ内を上下にドラッグ Magicマウス・トラックパッドで上下にスクロール |
デバイスを選択 | 「Hardware」>「Device」から任意のデバイスを選択 (「Series2」または「無印(Series1と初代)」それぞれ38mmと42mmの4種から選択) |
再起動 | 「Hardware」>「Reboot」を選択 |
AppleWatchシミュレータのショートカット
ホーム(デジタルクラウンのタップ)
ホーム画面を表示する。デジタルクラウンをタップしたときの動作に相当。
Home:⇧ + ⌘ + H
サイドボタン
Dockを表示する。サイドボタンをタップしたときの動作に相当。
Side Button:⇧ + ⌘ + B
タッチ強度の切り替え
タッチの強さを「通常」と「フォースタッチ(強く押す)」を切り替える。
アプリに標準で用意されているフォースタッチメニューや、コンプリケーション対応アプリ開発時など、シミュレータ上でフォースタッチを再現したい場合に利用。
フォースタッチの操作を行ったあとは、通常のタッチに戻すのをお忘れなく!
Shallow Press(通常のタッチ): ⇧ + ⌘ + 1
Deep Press(強くタッチ):⇧ + ⌘ + 2
その他あまり使わないけど覺えておきたいショートカット
ロック
画面オフ。パスコード等は表示されないので、ロックではなく画面オフ(腕を持ち上げる前の状態)に相当。
Lock:⌘ + L
Siriの起動
アプリ内では使用しない。siriKit連携のアプリを開発する場合に利用。
Siri:⌥ + ⇧ + ⌘ + H
ApplePayの起動
AppleWatchアプリ内で決済が必要な場合にApplePayのオーサライズをする場合に利用。
Authorize Apple Pay:⌥ + ⌘ + A
アプリの開発ではタッチの強さの切り替えはかなりよく使うので、ショートカットを覚えておくと便利です。
ショートカットの表記をそれっぽくする
ブログでAppleWatchのアプリ開発の記事を書いていくなかで、Xcodeのショートカットキーをいい感じに見せたくて少しだけカスタマイズしてみた。
参考サイト: coliss.com
というわけで、さっそくどういう見た目になるかと言うと…
New Tab ⌘ + t
New Window ⌘ + n
New Incognito Window ⇧ + ⌘ + n
Reopen Closed Tab ⇧ + ⌘ + t
記述するCSSは以下。 はてなブログのダッシュボードから、「デザイン設定」>「カスタマイズ」と選択し、デザインCSSに追記する。
.mac-key { /*Box Properties*/ display:inline-block; width:48px; height:48px; margin: 0px 4px; background: #fff; border-radius: 4px; box-shadow: 0px 1px 3px 1px rgba(0, 0, 0, 0.5); /*Text Properties*/ font: 18px/48px Helvetica, serif ; text-transform: uppercase; text-align: center; color: #666; }
問題はスマホの表示。
スマホのCSSをカスタマイズするには、はてなブログproの契約が必要っぽい。
記事本文中にスタイルを記述してみようとも思ったけど、それはそれでめんどくさいしな…。
スマホ版についてはもう少し検討。
手っ取り早くProにするのがいいのかもしれないけれど…。
エリック・カール展に行ったらえらく刺激を受けたのでエリック・カールごっこで遊んだ話
昨日、世田谷美術館で開催中のエリック・カール展に行ってきました。
ericcarle2017-18.com
※本件には関係ないけど、上記の公式サイトはファビコンまで"あおむし"で超かわいい!!
エリック・カールに刺激を受けたので、今日は自宅でエリック・カールごっこ。
うちの子は4歳と1歳でどちらも男の子。上の子はちょっと前から絵の具で絵を描くのを楽しんでいるし、下の子もクレヨンで遊ぶことをちょっとづつ覚え始めたところ。(目を話すとすぐクレヨンを食べようとするけど…。)
エリック・カールごっこは、絵の具・はさみ・のりと、いわゆる図工をまんべんなく含むので、子どもと遊ぶのにも刺激が多くて楽しいイベントになりました!
エリック・カールごっこに必要な道具
- トレーシングペーパー
コクヨ トレーシングペーパー 薄口 A4 50枚 セ-T149N
- 出版社/メーカー: コクヨ(KOKUYO)
- メディア: オフィス用品
- クリック: 1回
- この商品を含むブログを見る
- アクリル絵の具
サクラクレパス 絵の具 アクリルガッシュ 12色13本 AGW13
- 出版社/メーカー: サクラクレパス
- メディア: オフィス用品
- クリック: 1回
- この商品を含むブログ (1件) を見る
重要なのは、この2つ。
トレーシングペーパーをアクリル絵の具で塗ってオリジナルの色紙を作るのがエリック・カールごっこの"肝"なので、この2つはマスト。
絵の具は水彩絵の具でも良いんだろうけど、エリックカールっぽい発色と"にじみ"の少なさはアクリル絵の具ならでは。
他には、色紙を切り貼りするための「はさみ」「のり」、貼り付ける土台になる「画用紙」。
あとは、色鉛筆やクレヨンなども描きたい絵によって必要になります。(エリック・カールのはらぺこあおむしであおむしに生えている毛などは色鉛筆で描かれています。)
エリック・カールごっこの手順
トレーシングペーパーに色を塗る
絵の具を塗るとトレーシングペーパーが丸まるので、端の方を塗る時はぐちゃぐちゃにならないように注意が必要です。トレーシングペーパーを切ったり貼ったり
エリック・カールさんの技法だと、まずは画用紙に下絵を描いて、それを写しながら色紙を切っていくようですが、今回はノープランで切って貼ってをやりました。
必要ならクレヨンや色鉛筆で補足するのもいいと思います。
エリック・カールごっこの作品
という感じで、エリック・カールごっこの記録でした。
描く(塗る)・切る・貼るといろんな作業が楽しめるので、子どもと遊ぶには楽しいと思いますよ!
AppleWatchアプリのプロジェクトを作る
さて、AppleWatchアプリの作り方を極めるべく、早速AppleWatchのアプリを作ってみる。
AppleWatchアプリの最初の一歩は、まず何と言っても、Xcodeでアプリのプロジェクトの作成だ。
早速、作ってみよう。
アプリのプロジェクトをつくる
Xcodeを立ち上げたらCreate a new Xcode projectをタップ。
Choose a template for your new project:というウインドウが立ち上がるので、
- まずOSはwatchOSを選択。
- ApplicationセクションのiOS App with WatchKit Appを選択。
- 「Next」ボタンをタップ。
Choose options for your new project:のウインドウで、プロダクト名(Product Name)などの必要な情報を入力。
AppleWatchならではの機能として、通知画面やコンプリケーションの機能を使いたい場合は、Include Notification Scene(通知機能)、Include Complication(コンプリケーション)にチェックを入れてから、「Next」をタップ。
プロジェクトを保存するディレクトリを決めたら、「Create」をタップ。
これで、プロジェクトは完成です。
AppleWatchのアプリをつくる
早速、超シンプルなアプリを作ってみる。
プロジェクトファイルから「***(プロダクト名) WatchKit App」フォルダを選択。
フォルダ内の「Interface.storyboard」というファイルを選択。
ラベルを貼っただけのシンプルな画面を作成する。
1. Objectライブラリからラベル(Label)をドラッグ&ドロップ。
2. Labelをダブルクリックして好きな文字を入力(右側のカラム(Attributes Inspector)のTitleに入力してもOK。)
※文字が2行以上になる場合は、アンカーポイントをドラッグしてラベルのサイズを変更することができます。
※文字が2行以上になる場合は、右側のカラム(Attributes Inspector)のLinesに必要な行数を入力(下の画像の例だと文字が2行になるので、Linesに2を入力。)
これで、ひとまず画面に文字が表示されるだけのアプリが完成です。
AppleWatchアプリをシミュレータで起動する
アプリが完成したのでシミュレータを起動…の前に、スキームを変更する。
1. スキームメニューからWatchKit Appを選択。合わせてシミュレータ(iOS Simulators)の種類も選択。
2. Runを実行
シミュレータが立ち上がり、アプリが起動すれば完了です。
AppleWatchアプリを実機で起動する
最後は実機で確認。 ターゲットをシミュレータから実機(Device)に変更してからRun。
デバッグモードだとアプリの起動にかなり時間がかかることもあるので不安になるけど、ようやく起動。
アプリ開発の基本のキ。
すべてのアプリはここからはじまる!