読者です 読者をやめる 読者になる 読者になる

こちょこちょブログ

プログラミングとか学んだことの備忘録ブログです。

ぜんぶインターネットのおかげ

考えてみた

僕はインターネットが好きだ。

本当にインターネットがあって良かった。

 

インターネットの良いところは、

自分が知らないことを知れる」ことだと思う。

進撃の巨人で言うと、壁の外のことを知れるイメージ。 

f:id:kmatz90:20151226235426j:plain

インターネットがあるおかげで、

東京で楽しく消耗しながら生きていけている。 

 

僕は田舎に生まれてから高校までずっと同じ場所で過ごしてきた。

その反動からか、小さい頃からずっと、華の都大東京(長渕風)で働かないと死ぬのと同じだと思っていた。

紆余曲折あったが、結局インターネットのおかげで東京で働けている。

 

インターネットが好きなのでエンジニアになった。

 

分からないことの大半はインターネットで調べたし、

何が分からないことなのかもインターネットが教えてくれた。

 

インターネットのおかげで、

自分をより必要としてくれる場、評価してくれる場も見つかった。

 

インターネットのおかげでいろんな人に出会えた。  

 

たぶんこの先生まれてくる子たちは、

インターネットは水や空気と同じように

当たり前に存在しているものという感覚になると思う。

でも当たり前にあるものにこそ感謝をしなくちゃいけない。

 

このブログが書けるのもインターネットのおかげ。

 

今年もありがとうございました。

来年もよろしくお願いします。

iOSアプリ(9対応)のリリース準備・対応で苦労したこと5つとおまけ

Webサービス アプリ テクノロジー プログラム

前回の開発編に続き、今回はリリース編です。

リリースというものは、そう何回もやるもんじゃないので方法を忘れがちです。

覚えている今のうちにメモしておきます。

※ちなみにXcode7を使っています。

f:id:kmatz90:20151108195807j:plain

 

1.リリースするための事前準備が意外と多かった

  • DistributionタイプのCertificateが必要
  • App IDが必要

※ここで出てくるBudle IDとXcode上のBundle Identifierがイコールじゃないとリリースできません

  • DistributionタイプのProvisioning Profileが必要

方法はこちらが参考になりました。

 

2. 1度iTunes ConnectにBuildしたらBuildの値を上げないと再Buildできない

アプリをリリースするにはiTunes ConnectにXcodeからBuildする必要があります。

※方法はこちらを参照。

しかし、Buildし終わってから、

「やっぱりあそこはこうしよう!」って思い立って修正したくなります。

きっとなります。ほぼなります。必ずなります。

その際はXcodeから、

「General」にある「Build」を「1.0.1」のように上げる必要があります。

そうすれば別のBuildとみなしてくれて再度Buildできます。

ちなみにリリース後にアップデートするときは「Version」を上げます。

 

3.スクリーンショットAppleの画像などがあると商標違反でリジェクトされる

アプリ申請時には、

アプリの見せ場的なものを載せたスクリーンショットを、

一緒にアップすることになるんですが、

そこにAppleの商標情報があるとリジェクトされます。

今回のアプリは見せ場的なシーンが少なかったので、

作ったアプリのアイコンが写っているホーム画面のキャプチャをアップしたら、

Apple製品のアイコンも載ってしまい怒られましたw

 

4. 「広告表示してないのにAdvertising Identifier使ってるよ」ってリジェクトされた

Advertising Identifier but does not include ad functionality...

「Advertising Identifier」っていうのは広告識別子のことです。

広告タグとかリンクコードの認識で大丈夫だと思います。

iADとか使ってないし、心当たりがなかったのですが、

nend、i-Mobile、Adstir?とかは裏で用意してるだけでも引っかかるようです。

※文字列だけでも引っかかりました

これ地味に引っかかる人いるんじゃないですかね?

 

5. リリース後のApp Storeのリンク作成

通常、PCのiTunesApp Store)からiOSアプリを探そうとすると結構苦労します。

(というかできるのか?)

そんなときは「Link Maker」を使うと簡単に辿り付けますし、URLも発行できます。

検索するときの注意点として、日本の場合は「Store Country」を「Japan」にし、

iOSアプリの場合は「Media Type」を「iOS Apps」に変更する必要があります。

 

おまけ

実はApp Storeの審査は特急で行うように申請ができます。

※方法はこちらを参照

試しに「Android版」が既にリリースされているので、

早く審査してくれって申請してみたところ、

案の定、却下されましたww

通常はクリティカルなバグの修正や、

ハロウィンなどのイベントに合わせたアプリじゃないと、速攻で審査してくれないようです。

ご利用は計画的に。

詳解 Swift

詳解 Swift

 

 

1からiPhone(iOS9対応)アプリをSwiftで作った僕が躓いたこと4つ※開発編

Webサービス アプリ テクノロジー プログラム

ついにiOSアプリをリリースしました。

会社名義なので具体的には紹介しませんが、

作ったのは簡単に言うとブラウザアプリです。

タイトルで煽っときながら、ぶっちゃけそこまで躓かなかったんですが、

後でまたググるのも面倒なのでまとめておきます。

あと、プロジェクトを作るときは、

最初からリリースする予定の「Organization Name」、「Organization Identifier」にしておいた方が後々面倒なことにならずに済みます。

(難しいかもですが。。)

f:id:kmatz90:20151102003605j:plain

※ちなみにXcode7を使っていて、言語はSwiftで書いています。

構文とかは過去の記事を参考にしてください。

 

1.初心者が通る道、Thread 1:signal SIGABRT...(実行時エラー)

これはObjective-Cもそうだと思うんですが、

Storyboard使用時に、何かしらのUI部品(ボタンとか)から

クラスファイルにドラッグ&ドロップして紐付けるじゃないですか?

紐付けたのにも関わらずそのUI部品を消したり、

生成されたコードを消したりすると、

紐付けしようとしてるのに相手がいないよ」という状態になります。

Xcode上ではエラーにならないので、そのまま実行して初めて気づくパティーンです。

なので、その接続を削除するか、再度紐付けし直すかすれば直ります。

他にも「signal SIGABRT」の要因はあると思いますが、

大体は上記が原因だと思います。

 

2.iOS9から追加されたATS(App Transport Security) 

これは通信する(WebViewとか)アプリを作る場合限定の話です。

ATSとは簡単に言うと「SSL通信のみしか許可しませんよ」ということです。

つまりHTTP通信できません

これはブラウザのようなアプリには致命的です。

しかし「info.plist」というファイルの中身を変更すると、例外的に許可できます。

また、完全にHTTP通信を許すこともできます。

方法はこちらを参考にしました。

 

最近はSSL通信のサイトも増えてきましたが、

まだまだ一般のサイトはHTTPの方が多いですよね。

Yahoo!検索もSSLになりましたし、今後はもっと普及していくんですかね。

 

3.ViewController.swiftはViewごとに作る必要がある

画面遷移させてゴニョゴニョするようなアプリを作る場合、

その画面(View)を制御する必要があります。

つまりコントローラーをViewごとに追加しなくてはいけません。

そうなってくると、

「Viewが多いアプリほどコントローラーが増えて管理が大変なのでは?」

と思ったのですが、他に方法が見つけられませんでした。

追加の仕方はこちらが参考になりました。

 ※追記 ブクマのコメントで、逆に1つのコントローラにまとめるとコントローラが太って良くないとありました。

言われてみると確かにそうですね。

 

4.画面から画面への値の受け渡し、Delegate

3に付随します。

Viewを遷移させるのは割と簡単なんですが、

例えば、View1で入力させた値をView2で確認させたい場合、

値の受け渡しをする必要があります。

これが最初は結構分かりにくいので、初心者の人は躓くかなと思います。

具体的な方法はこちらがかなり分かりやすいです。

 

まとめ

今回はSwiftでの開発のことをメインに書きました。

次回は、アプリを実際にリリースするときに躓いたことを書こうと思います。

リリース版を書きました↓

あと、開発するうえで使った細かい技術などは今回書いてないので、

そういった部分も後々まとめたいと思います。

詳解 Swift

詳解 Swift

 

 

将棋とプログラミングって似てると思う

まとめ 読書感想

棋士羽生善治さんの「決断力」を最近読みました。

普段こういった自伝的な本は読まないのですが、

前々から、将棋ってプログラムに似てるなあと思っていたので、ちょっと読んでみました。

f:id:kmatz90:20151015224506j:plain

 

ロジカルに物事を考える

将棋では、今いる場面の何手も先を読んで指す(駒を進める)そうです。

「ここでこう指したら次はこうなるな」といった具合に。

プログラミングも同じように、組み立てていった結果どうなるのか、

先を読む力が重要ですよね。

 

真似から入り、応用して学んでいく

大体プログラミングの学習は「Hello,World」を出力するなどの、

真似をするところから始めます。

それで次は自分で考えて応用していくって流れが多いと思います。

 

将棋も同じように、テッパンの型のような物があり、そこから始めるそうです。

また、羽生さんは自分で手を動かすことの重要性についても語っています。

自分で手を動かすことが知識に血肉を通わせることになる。

現場で、あちらの方向、こちらの方向と試行錯誤を重ねるうちに、

生きた知識が積み重なり、ステップアップする土台ができるのではないだろうか。

 

未来のリスクを減らすために、今リスクを追う

積極的にリスクを負うことは未来のリスクを最小限にすると、いつも自分に言い聞かせている。

これなんてそのまんまプログラミングに当てはまります。

今怠けてしまうと、後々技術的負債と言われてしまうかもしれません。

 

羽生さんのお父さんはエンジニア

やはり将棋とプログラミングって親和性高そうですよね。

ロジカルシンキングとかはお父さんから受け継いでそう。

 

最後にササッた箇所を紹介

勝つのは一点差でいい。

五点も十点も大差をつけて勝つ必要はない。

常にギリギリの勝ちを目ざしているほうがむしろ確実性が高くなると思っている。

1点差でも勝利と敗北は全然違いますからね。

圧倒的な勝利を手にするには、

それに見合う大きなリスクを取らなければいけないのかもしれません。

 

慣れていない、感覚でとらえられない局面には、たとえ失敗があったとしても、挑戦の楽しさがある。

その中でさまざまな発見をし、充実感が持てる。

将棋にかぎらず、何事でも発見が続くことが、楽しさ、面白さ、幸せを継続させてくれると思っている。

知らないことがあるということは、まだ成長できるという裏返しですね。

 

じっと見ていてもすぐには何も変わりません。

しかし、間違いなく腐ります。

どうしてか?

時の経過が状況を変えてしまうからです。

だから今は最善だけど、それは今の時点であって、今はすでに過去なのです。

現状維持を目指した段階で劣化していくという表現ですね。

なので常に進化を目指さないといけませんね。

 

決断力 角川oneテーマ21

決断力 角川oneテーマ21

 

IT界隈やエンジニアが好きそうな名言・ことわざ10選+おまけ

まとめ テクノロジー

IT関係の人やエンジニアが、読んでやる気が出るような名言や格言を10個集めました。

読んで元気を出しましょう。

f:id:kmatz90:20150827010154j:plain

では張り切ってどうぞ!

 

1.Keep it simple, stupid(Kiss)

訳:シンプルにしておけ、この間抜け

「誰が見ても分かりやすくしろ」ということです。

レオナルド・ダ・ヴィンチ

単純であることは究極の洗練だ

 と言っています。

 

2.Done is better than perfect

訳:完璧を目指すより、まず終わらせろ

-マーク・ザッカーバーグFacebook

 

3.Get out of the building

訳:ビルの外に出よう

-Lean UX(書籍)

建物の中に籠ってないで、

外に出てユーザーの声を聞きに行こうということです。

 

聞いた話で、インスタグラム社の最高のグロースハックは、

ユーザーと飲みに行くことだそうです。

 

4.Stay hungry, stay foolish

訳:貪欲であれ、愚直であれ

-スティーブ・ジョブズApple

 

5.Computers are useless. They can only give you answers.

訳:コンピューターなんて役に立たない。だって答えを出すだけなんだから

-パブロ・ピカソ(画家)

 

6.Life is not fair.Get used to it.

訳:人生は公平ではない。そのことに慣れよう

-ビル・ゲイツMicrosoft

 

7.Reinventing the wheel

訳:車輪の再発明

「広く受け入れられ確立されている技術や解決法を知らずに、

同様のものを再び一から作ること」を指します。

オープンソースなど、既に使えるものがあるのに、

その恩恵を無視してムダなことをするなということですね。

 

8.We are What We Choose

訳:これまで選択してきた結果が、今の私たちなのです

-ジェフ・ベゾス(アマゾン)

 

9.Change before you have to

訳:変革せよ。変革を迫られる前に

-ジャック・ウェルチゼネラル・エレクトリック

 

10. IE Horobe!

訳:IEは滅べ!

-世界のエンジニア

 

おまけ:Facebookの「5つの経営理念」

  1. Focus on Impact( 影響力に集中しろ)
  2. Move Fast(早く動け)
  3. Be Bold(大胆であれ)
  4. Be Open(オープンであれ)
  5. Build Social Value(社会的価値を築け)

 

ジェフ・ベゾス 果てなき野望?アマゾンを創った無敵の奇才経営者

ジェフ・ベゾス 果てなき野望?アマゾンを創った無敵の奇才経営者

 

サマソニ行って思ったけど、ライブとかフェスの主役が変わってきた気がする

イベント 考えてみた

先週末、ミッドナイトソニック(HOSTESS CLUB ALL-NIGHTER)に行ってきました。

f:id:kmatz90:20150816180416j:plain

-Thom Yorke

音楽はとても好きで、特に70年代のプログレからマッドチェスター、UKロック辺りには強いです。

スターレス高嶋に会いたいw)

学生時代に、1年間でアルバムを100枚くらい買ったこともあります。

 

ライブとかフェスの主役が変わってきた気がする

久々に行って気づいたのですが、

最近は、主役が観客(リスナー)に変わりつつある気がします。

これは、ユーザーのアーティストに対する評価の仕方が、

その「アーティストが最高か?」ではなく、

「自分が楽しめるか?」「周りのみんなと一緒に楽しめるか?」に変わっているからだと思います。

 

現に、行ってきたミッドナイトソニックでは、

みんなアーティストの方をあまり見ていませんでした。

周りの人と踊ったり、俯いて揺れてる人が多かったです。

何というか、みんな一体感を求めている感じでした。

だから最近は、EDMとかハウスミュージックみたいに、全体で1つになれるような音楽が流行ってるんだと思います。

※今回のミッドナイトソニックでは7組中4組がソロアーティスト

 

それが理由なのか、

Apple MusicやAWAのイメージ画は観客がメインになっています。

f:id:kmatz90:20150816183821j:plain

ちょっと前は、「おりゃー、おれのギターテクすげーだろ!」みたいに、

アーティスト(パフォーマー)が主役だったと思うんですよ。

でもそれって、お客さんからすると「おお、すげー!」で終わってしまうんですよね。

ちょっと飽きられてしまう。

 

そのうち、「ボタンひとつでギターの音出せるけど、がんばって練習する意味あるの?」みたいな時代が来る気がします。

とはいえ、ギターなどの楽器は、

生(本物)の音の方が絶対良いので、ある一定数には愛され続けて残るはずです。

しかし、パイプオルガンみたいなポジションになる日も、そう遠くはないかも。。

自動販売機では"Zの法則"が通用しないなど学びが多い書籍「ササる戦略」が面白かった

マーケティング 読書感想

前回はちょっと特殊なジャンルの本を読んだので、

今回は真面目にマーケティング関連にしました。

読んだのは「ササる戦略」という書籍です。

個人的に"ササッた"部分を、メモついでにまとめていきます。

f:id:kmatz90:20150809163611j:plain

どんな本か?

ITmedia ビジネスオンライン」の記者の土肥義則さんが執筆した書籍で、

誰もが一度は聞いたことがある12企業にインタビューした内容がまとめられています。

具体的には、

などなど。

 

自動販売機は「Zの法則」で見られない

人の視線は、左から右へ、

それからまた左下へ「Z」のように移動すると言われていますが、

自動販売機は違うとのこと。

ダイドードリンコが、自動販売機にアイトラッキングを仕掛けて検証した結果、

人は自動販売機の左下を先に見るそうです。

そこで、売りたい商品を左下に移動させ、

目論み通り売り上げをアップさせることに成功したそうです。

 

コンビニでソフトクリームを売っているのはミニストップだけ

読むまで知らなかったのですが、

唯一ミニストップだけがコンビニでソフトクリームを販売しています。

コーヒーとかドーナツとか、めちゃくちゃマネしマネされてるのに、

なんでソフトクリームだけマネされないのか?

それは、とにかくソフトクリームを作るのが難しいからとのこと。

(なんてシンプル。。)

 

ソフトクリームのマシンは、一定時間使わないとクリームが出にくくなり、

上手に作るのはなかなかコツがいるそう。

(新入社員は実技の試験まであるとか)

しかも、マシンのメンテナンスやスペース確保が必要で、

そのうえ、管轄の保険所に許可を得なければいけないことが、

参入障壁を高くしている原因の模様。

 

既得権益の渦巻く生命保険の市場規模は40兆円もある

これかなり驚いたのですが、

日本の生命保険の市場規模は約40兆円もあるそうです。

一方、僕も身を置いている広告業界は6兆ほど。。

生命保険は老若男女地方都市問わず、国民全員に関わるので、

当たり前と言えば当たり前ですが、こんなに大きいなんて知らなかった。

 

あと、生命保険の事業をするには金融庁の免許が必要になるそうです。

規模が大きいからと言って、そう簡単には参入できそうにないです。

そのせいか、本書に登場するライフネット生命は、

独立系の生命保険会社として、実に74年ぶりの誕生とのこと。

 

まとめと感想

こんだけ流行り廃りが激しくて、

時代の流れが速いとか色んな人が言っているのに、

何故かずっと売れてる(消えない)商品・サービスって沢山あるんですよね。

 

僕は、少し前まで、新しいものとか流行ってるものが好きだったのですが、

最近は、昔から続いてる大企業のカラクリというか、

歴史やストーリーみたいなものに興味が傾いてきました。

この本を読んで、それに拍車がかかったので、

また何か面白い話があったら更新します。

 

今のところKindle版はありませんが、

お盆休みにゆっくり読むのもいいかもしれませんね。

休みがあればですけど。。

ササる戦略

ササる戦略