週末のアプリ作成

androidアプリ個人開発者の実態を報告します。アプリの収入も公開中です♪

本業と趣味のプログラミングの違いについて考えてみる

こんにちは、TF's appsです。

 

今回の記事は【本業と趣味のプログラミングの違い】について考えてみたいと思います。今日は台風10号によりリビングから見える草木が風でなびく様子を横目にしてPCに向かっています。

 

過去の記事でも紹介している通り私は本業(=仕事)もプログラミングをしています。組み込み系のプログラミングで機械を制御するソフトを設計している者です。最近はその時間が減って不満ではありますが15年のキャリアとなります。

 

趣味ではandroidアプリの作成をしています。

 

f:id:TFs_apps:20190814214947p:plain

 

今回の記事はここです。

【本業のプログラミング】と【趣味のプログラミング】についてです。

 

私の場合、本業と趣味とではプログラミングの癖が変わってきます。

これは私以外の人も同じでは!?っとも思いますが。

仕事はきっちり正確に

趣味はとにかく楽しく

をモットーに日々プログラミングをしていますよ。

 

【本業のプログラミング】

 ポイント:保守を意識して設計

 (他人が読むことを常に意識する)

ソースコードがキレイ

・処理の共通化

・関数や変数の名前も慎重に選別

 

【趣味のプログラミング】

 ポイント:楽しく設計

 (ぱっと思いついた内容のまま設計)

・思い付きで設計(短時間で設計完了)

・とにかくプログラミング中は楽しい

・他人が読めるレベルではないが気にしない

 

それぞれ特徴はあるものの一つ間違いなく言えることは、本業でも趣味でもプログラミングはやっぱり楽しいという事です。

 

20代の頃は仕事でプログラミングしている時にこんなに楽しく作業をしていてお金貰っていいの?とか思う時がありました。天職だと思っていましたねぇ。

 

プログラミングしている人は必ずタイムスリップを感じるはずです。気が付いたらあっという間に時間が過ぎている事があります。ちょっとゲームのような中毒性があるのかもしれませんね。

 

 

「趣味を仕事にしない方がよい」

 

っと聞きますが、私にしてみればプログラミングは当てはまらないですね。

プラモデルなど物を作るのが好きな人にとってはプログラミングは絶対にハマると思います。これは私個人の偏見ですが。

 

今回はふと思いついたテーマで書いてみました。それではまた次回お会いしましょう♪

 

 

 

 

 

はてなブログで既にアドセンスを利用していて、Proに変更してドメインを取得したら不合格となった時の対策を紹介します。

こんにちは、TF's appsです。

今回の記事はGoogle AdSenseに【合格】した時の対策例を紹介します。

 

はてなブログをproに変更してお名前.comでドメインを取得した後に、アドセンスを再申請をすると不合格となりました。その時の対策です。

 

f:id:TFs_apps:20190630131906j:plain

 

前回の記事でも紹介したように簡単に経緯を説明します。

 

1.はてなブログで記事を書き始める(2018年5月)

2.Google AdSenseに申請して合格(2019年5月)

3.はてなproに変更(2019年5月)

4.お名前.comにてドメイン取得(2019年5月)

5.(ドメイン変更後)再申請して不合格(2019年5月)

6.試行錯誤の末、再申請して合格(2019年6月)

 

ドメイン取得直後に再申請したのは良くない事は前回紹介しましたが、もう一つ大切な事があります。

 

↓↓前回の記事も参考にして下さい。他の対策を紹介しています。

www.tfsappsone.com

 

それは・・・

リダイレクトの設定です。

 

例えば下記のような処理です。

https://~.com」を入力すると

 ↓

https://www.~.com」へ自動的にジャンプする

 

私は完全に忘れていました。はてなブログの時は、自動的にリダイレクトの設定となっているようです。意識せずに申請して合格しておりましたので。

 

ドメイン取得後は、そのサーバーに対しての設定が必要となります。私の場合はお名前.comでドメインを取得しておりますので、そちらの方で設定を行いました。

 

すると、アドセンス申請後、すぐに合格に通知がありました。

 

私の経験上、アドセンス申請後、合格する場合は翌日中には連絡があります。過去合格した場合は翌日までには連絡が来ております。2~3日経っても連絡がない場合は、不合格の可能性が極めて高いと思います。

 

他の記事でもリダイレクトの設定は紹介されていますが、私のようにはてなブログの時にすでにアドセンスに合格しており、その後、Proに変更してドメインを取得した後、再申請して不合格となった方がいらっしゃったら、是非一度リダイレクトの設定を確認下さい。

 

同じ境遇の方がハッピーになれますように、今回の記事はこの辺で。

ではまた次回お会いしましょう♪

 

 

 

プログラミングの勉強でダメな事

こんばんわ、TF's appsです。

 

今回の記事はプログラミングの勉強や教育でダメな事を伝えたいと思います。

 

f:id:TFs_apps:20190812234429p:plain

 

なぜ急にこの話題になったのかというと、

本日親戚の集まりでこんな会話がありました。

 

親戚「小学校でもプログラミング始まるよね?」

親戚「何をするんだろうね・・・」

親戚「本で英語のような文字を学習するんじゃないの」

親戚「教材の玩具を動かしたりするんじゃないの」

 私「う~ん・・・・」

 

やっぱみんな学校で何を学ぶんだろうって感じだと思いますよね。

 

以前の記事で私はプログラミングとは「目的を達成する上での解決方法を考え、実現させる手段を導き出す思考を身に付けるもの」と紹介しました。

 

そう、プログラミングも算数や国語といったように、社会に出て必要となる学問だと私は解釈しています。

 

だから言いたい

 

プログラミングの扉を叩く時にダメな行動は

プログラミング未経験者が

何も分からずに、いきなり

 「はじめての〇〇言語入門」のような教材を買ったり

「玩具を動かすようなキット」を買ったり

 といった行動をする事だと考えます。

 

決して間違いではないですが、

プログラミング的な思考(本質)からはズレて、重箱の隅を突くような勉強となります。知識は増えますが、本質の理解からは遠ざかります。

 

学生なら良いと思いますが、社会人でプログラミングをする仕事を考えている方は、いくら知識だけの言語を覚えても、プログラミング的な思考がないと仕事にならないはずです。

 なぜなら、プログラミング言語は表現する手段に過ぎないからです。目的達成の道筋を考える力は何度も言いますが「プログラミング的な思考」が必要となるからです。

 

プログラミング的な思考を養うには、例えば下記のような問題でどれだけ予想できるのか?という事になります。

 

<問題>

「電池式のロボットが交差点を少し越えたゴールに向かって進んでいます」

 ロボットがゴールに達するまでに予想できる危機を挙げよ

 

・電池が無くなる?

・交差的でぶつかる?

 

電池と交差点だけに着目すると通常はこれだけですよね。この問題の答えとしては十分かもしれませんが。

 

 

でも、答えは無限にありますよ。これを理解して欲しいと思います。

・道に穴はないか?

・空から隕石が降ってこないか?

・まっすぐに歩けるのか?

・交差的は実は何百キロ先なの?

などなど

 

目的達成のための思考を十分に理解した上で、それを表現するプログラミング言語を学んで欲しいと思います。まぁ私はゲームが作りたいとの気持ちからこの業界に入っています。偉そうに言える立場では全くないです。

 

いかかでしょうか?今回は久しぶりプログラミング教育に関する記事でした。ではまた次回お会いしましょう♪

 

 

 

 

 

 

夏休みの宿題 他人のプログラミングから学ぶ(ソースコードレビュー)

こんにちわ、TF's appsです。

 

完徹の大分出張が終えて、やっと夏休みです。

f:id:TFs_apps:20190810111357p:plain

 

今回の記事は【夏休みの宿題】についての記事とします。

夏休みといえば、自由研究を思い出します。

 

私も小学生の頃、苦労しながら模造紙に描いていました。

娘も毎朝自由研究のために野菜に水をあげています。

 

一方、プログラミングにおいても夏休みは絶好の期間です☆

・新しい言語にチャレンジするのも良し

・本屋に行って新しい技術に触れるのも良し

・作りかけのアプリの作成に没頭するのも良し

・リリース済みのアプリをメンテナンスするのも良し

・過去のプログラムをリファクタリングするのも良し(私は絶対にしないですが 笑)

 

 

私は夏休みの期間下記2つを計画しています

①ブログを書く

②本業のプログラムをレビューする

 

本業では最近めっきり監督業になってしまい、人のコードをレビューをすることが多いです。自分で書くことがかなり減って不満ではありますが・・・それは趣味でカバーするしかないですよね(涙)

 

夏休みの宿題はソースコードレビュー】にしました。

人のコードを見てレベルアップを図ろうと思います。

 

同じ目的のものをプログラミングしたら十人十色になるのがプログラムの世界ですよね。一つの原因としては、人によってそのプログラムにおける優先順位が異なるからかもしれませんね。

 

 Aさんは、処理速度を意識して設計。

 Bさんは、保守を意識して設計。

 Cさんは、ステップ数を少なくする事を意識して設計。

 

この人は何を意識してプログラミングしたのだろうか?そんな事を考えながら人のコードレビューをしています。

 

私はソフト設計を依頼する立場であるため

【保守性の高いソフト】を第一優先にしてソースコードをレビューしています。

 

 ・コーディング規約を守っているか?

 ・使用するメモリは初期化され後始末も徹底しているか?

 ・同じ処理は共通化されているか?

 ・第三者が見た時に読みやすいコードであるか?

   ・・・などなど

 

そんな事を考えながら、

この連休中に夏休みの宿題をして過ごしていきたいと思います。

 

いかかでしょうか?また次回お会いしましょう♪ 

 

 

 

 

 

 

 

 

 

 

 

 

個人アプリの収入を報告します。副業をお探しの方は参考にして下さい。2019年7月

こんばんわ、TF's appsです。

今回の記事は2019年7月アプリ収入を報告します。

 

なんとその額・・・・

¥1,190-

       (2019年7月)

 

・・・でした(T_T)

 

ここ数カ月は右下がり傾向です。

まぁ新作をリリースできていないので、仕方がないかと考えています。

 

最近の私の夢・・・

毎朝、南国で波の音を聞きながら

コーヒーを片手にプログラミングしながら

生活をすることです。

 

あと何百年かかることやら(涙)

 

↓↓↓今までの経緯です。

f:id:TFs_apps:20190803214815p:plain

 

いつもの通り昨対比を報告します

 

2019年7月 ¥1,190- 

 ▶▶▶ 238%

      (2018年7月:¥500-)

 

まずまずの成長率です。

 

同じ成長率で2020年7月を予想すると

 ▶▶▶ ¥2,832-

      ( = ¥1,190-  ×  238%)

 

う~んかなり現実味のある数字です。

多分、来年のブログではこれくらいの報告してそうです(汗)

 

いかかでしょうか?

副業を考えている方、アプリ作成を考えている方、プログラミングを始めようと考えている方、ぜひ参考にして下さい。

 

プログラミングは楽しいです☆

きっとプログラミングは誰にでもある「物を作るDNA」を刺激しますよ。

 

 

あるアプリ開発者の実態報告でした。

これからも随時報告していますので読者の方もよろしくお願いします。 

 

 

アプリ作成を始めて2年目の広告収入を報告します

こんにちは、TF's appsです。

今回の記事は【アプリ収入(2年目の年収)】について報告します。

本業の11連勤明けでクタクタですが、年収シリーズの第二弾を紹介しますね☆

 

気が付けば、アプリ作成を始めて約3年が経とうとしています。

 

副業を考えておられる方やアプリ作成に興味のある方はぜひ参考にどうぞ^^v

 

◆◇報告の前にお断り◇◆

この収入は私個人のデータです。参考程度に見て下さい。

個人開発をされている方、すべてが同じ結果ではありませんので。

 

 

まずは、現時点の収入から

 月収¥1,500- くらいです。

 

ではさっそく結果をどうぞ!!

 

2年目の年収

▶▶▶ ¥3,837-

 

推移のグラフです

f:id:TFs_apps:20190726233802p:plain

 

 

1年目にあった0円生活(9カ月連続)は無くなりましたね。 

 

 

なんと1年目との年収と比較すると・・・

 

1年目・・・ ¥  402-

2年目・・・ ¥3,837-

 

成長率

 +954%

 

 

同じ成長率で3年目を予想すると・・・・

 

 ¥36,604-

 

えっマジ!?

 そんな夢が一瞬、頭に浮かびました(笑)

PS4買えるやん!!(持っていますが・・・)

 

子供の頃からゲームが好きなので、2~4万円の金額を見ると、すぐにゲームそろばんが自走して、ゲーム機の価格に換算します(汗)

 

さて現実の3年目はどうなったのか?

 

近日中に3年目の年収報告しますね。

気になる読者はまた是非読んで下さいね、ではまた次回お会いしましょう♪

 

 

 

 

 

私がプログラミングでハマったコードを紹介します。auto変数初期化忘れ

こんばんわ、TF's appsです。

今回の記事は【プログラミング】ノウハウ的な紹介です。

実話です。(ご好評につき!?第二弾です)

 

私は組み込み系のソフト設計を約15年しています。

過去こんなソースコードでハマっています。

 

◆簡単にサンプルコードを記述します

f:id:TFs_apps:20190717223613p:plain

 

ポイントは【auto変数である[a]が初期化されていない】ところです。if(Z==TRUE)の条件に入らない時に不定値を返すことになります。

 

<補足>

・私が作ったわけではありません。先人のコードです。

・ソフト全体としては最低数十万ステップになります。

・現象は突然アプリが落ちるという内容です。

・発生頻度は稀であるという情報です。

 

 

調査していく中である操作をすると確実に再現することが分かりました。

そうメモリ使用状況によって現象が発生したり/しなかったりします。

 

このプログラムの欠陥は、

設計時にauto変数[a]の初期化を忘れている事にあります。

 

対策としては、auto変数[a] を初期化することで修正しています。

 

一番伝えたい事

auto変数だけでなく、グローバル変数も同じですが、変数は必ず初期化するべきです。

 

サンプルコードのように仮に【if(Z==TRUE)】の条件がなくても、初期化することをお勧めします。なぜなら、可読性が良いからです。auto変数が関数のトップで初期化されていると、初めてそのコードを読む人にとっては読みやすいです。例えば、グローバル検索してfuncAの下の方にジャンプして、解読していく中で、ふと「変数aの初期値は?」と考えることがあるでしょう。

 

また今後どんな処理が追加されるか分かりません。その時の事を考えて、初期化することが望ましいでしょう。

 

私の持論ですが、今の時代、ソースコードにはテクニック(メモリを最小に抑えた、ステップ数が少ない、処理速度が数μsec速いなど)は不要です。低スペックマシンのソフトにおいては必要だったでしょう。

今の時代に必要なのは、可読性(=保守性が高い)でしょう。安心安全なソフトが一番大切と考えます。

 

 

いかがでしょうか。今回は自身がハマったコードについて紹介しました。このシリーズはそんなに読者の反応が良くないですが、今後も紹介もしていきますね^^v

ではまた次回お会いしましょう♪