個人開発をはじめて4か月が経ちました

はじめに

普段から個人開発について考えていることを書き出してみました。
私自身は、4か月前にアプリをリリースし、広告収入が月1,000円ほど、あと少しだけ課金による収益がある状態です。

想定読者としては、

・アプリ開発未経験

・アプリ作っていたいけど、なかなか一歩目が踏み出せない人

に宛てて書いております。

メインはAndroidアプリなので、iOSアプリは殆ど素人です。Webアプリは業務で触ってます。

個人開発のメリット・デメリット

私の考える個人開発のメリット・デメリットを挙げてみます、まずはメリットから。

メリット

今のところ、個人開発をするのが大好きなので、基本的に個人開発推しの意見が多めになります。

自由に開発できる

まずなにより、何も縛られることなく、好きに開発することができます。

普段、会社員として開発すると、自分より組織の意見が優先されることが大半だと思います。

個人開発だと、そのようなことはなく、デザインや機能など好きなように考えて、好きなように実装することができます。

技術力が身につく

これは私自身もそうだったのですが、普段はWebアプリを作っていて、Androidアプリを開発することはありません。

ただ、個人開発を通じて、Androidアプリを作って、リリースするところまで持っていくことで、いろんなことが分かってきます。

百聞は一見に如かずという言葉があるように、結局一番技術が身に付きやすいのは、必要に迫られて自分で手を動かしている時だと思います。

そういう意味では、個人開発は圧倒的速度で成長できるなと思います。

転職活動に役立つ

最近は、色んな新しい技術が日々出てきて、それらをキャッチアップしていく力が求められています。

普段自分が触っている領域以外にも、アンテナを張ってキャッチアップしているのは、面接官にも好印象なことが多いです。

何より、きちんとリリースまで持っていくのは、アプリを作るだけでなく細かい作業(例えば、ストア画像の作成、アイコンの作成、Admobの設定など)必要となりますが、それらの細かい部分も知っているのは、大きいと思います。

あと、これはとある会社の面接で言われたのですが、「Webアプリエンジニアとして、チームにフィットしない場合でも、Androidアプリエンジニアとしてご活躍いただけそうですね。」と言われました。

少しびっくりしたのですが、採用側もチームにフィットしなかったとき、別のポジションを任せることができないとお互いに不幸なことになってしまいます。

そのため、複数のポジションができる人材のほうが、採用するときの安心感が違うのだなと思いました。

お小遣いが稼げる

アプリに広告を入れると、広告収入が入ってきます。

1か月目の広告収入は、10数円でしたが、自分で稼いだ気持ちになって、とっても嬉しかったのを覚えています。

社会人1年目の初任給とは、また違った喜びでした。

今では、月1,000円と非常に少ないですが、4桁に行くことができて凄く嬉しいです。

いつか、1万円とか稼げたら嬉しいなと思います。

リスクが無し

正直、アプリの宣伝広告費とかを使わない限り、殆ど無料で作ることができます。

Androidアプリだと、開発者登録料に2,000円が必要ですが、1度だけでOKですし、

恐らく本業でエンジニアをしてる方であれば、自宅にPCがあると思いますので、ほぼノーコストです。

デメリット

基本的にデメリットは多くないと思っています。

お金を稼ぎたいなら、アルバイトの方が速い

私が、今までアプリ開発に投下した時間と得たお金を計算すると、恐らく時給数円~数十円くらいだと思います。

これを考えると、派遣やアルバイトをした方が圧倒的にお金を稼ぐことができるのがお分かりいただけると思います。

プライベートの時間が減る

個人開発の時間は、平日のスキマ時間 or 休日になります。

ですが、私は家族がいますので、家族サービスの時間も作る必要があります。

家族サービス+アプリ開発をしていたら、休日にアニメとかドラマを見てリフレッシュする時間を取るのが難しくなります。

あとは、リリースだ

もし、ここまで読んでアプリをリリースしたくなった人は、アプリをリリースするために重要なことをお教えします。

①こだわるな

・機能が足りてないかも

・あー、クラス設計がうまくいっていない

・テストコード書いてない

・デザインが笑われる

というような不安があると思いますが、まずは「1本リリースしましょう」。

あと、アプリを使う人の殆どはエンジニアではないので、便利かどうかしか考えてないです。

クラス設計とかテストコードとかどうでも良いのです。

あと、デザインですが、全くこだわる必要がないと思います。

Taxnoteという会計アプリがあるのですが、標準で用意されているコントロールしか使っていません。

有名なアプリみたいにデザインを凝ってないですが、ご飯が食べれるくらい売れています。

なので、殆どのユーザーにとってはデザインは、どうでも良いのです。

まずは、リリース。大切なのは、それだけです。

②時間をかけない

Trelloとかにタスクを洗い出したり、Redmine上で、ガントチャートを作る必要は全くないです。

とりあえず、1週間か2週間でリリースできる分だけを選んで開発します。

(そのくらいなら、頭に入ってるはず。というか、頭から漏れるような機能は要らない。)

3週間くらいかけてしまうと、熱量が少なくなって完成させるのが難しくなります。

実際、最後の方はストア画像の作成とか、あんまり楽しくない作業が待っているので、

それに耐えられるくらい熱量を残しておいた方がいいです。

③お金をかけない

アプリを売って生活しようと、肩に力が入ってる人は、すぐに広告費を投入したり、

アプリ用のHPを作成したりと、お金をかけたがりますが、まずはASO対策だけして、お金をかけないようにしましょう。

ASO対策は、ストア掲載情報にユーザーがストア上で検索しそうなキーワードを入れて、

自分のアプリがヒットするようにする対策です。

これであれば、すぐできますし、お金も掛からないのでお勧めです。

おわりに

アプリを作って、ほんの少しお小遣いがもらえたり、アプリ開発者との繋がりができたり、

友達がこんなアプリ作れる?って話を振ってくれたりと、凄くいいことばかりでした。

皆さんもぜひ、個人開発生活を始めてみてください。

もし、はじめられた方は、連絡いただければ幸いです。一緒にやりましょう~!

iOS開発(Swift) – DateとStringの相互変換

概要

SwiftでDateとStringを相互変換するときのプログラムを紹介。

プログラム

import UIKit

class DateUtils {
    class func dateFromString(string: String, format: String) -> Date {
        let formatter: DateFormatter = DateFormatter()
        formatter.calendar = Calendar(identifier: .gregorian)
        formatter.dateFormat = format
        return formatter.date(from: string)!
    }

    class func stringFromDate(date: Date, format: String) -> String {
        let formatter: DateFormatter = DateFormatter()
        formatter.calendar = Calendar(identifier: .gregorian)
        formatter.dateFormat = format
        return formatter.string(from: date)
    }
}

// 元の日付の文字列
let dateString = "2021/09/20 12:34:56 +09:00"

// Dateに変換
let date = DateUtils.dateFromString(dateString, format: "yyyy/MM/dd HH:mm:ss Z")
print(date)
// => "2021-09-20 12:34:56 +0900\n"

// Stringに再変換
print(DateUtils.stringFromDate(date, format: "yyyy年MM月dd日 HH時mm分ss秒 Z"))
// => "2021年09月20日 12時34分56秒 +0900\n"

iOS開発(Swift) – 「this class is not key value coding-compliant for the key」の対処方法

はじめに

このエラーは、Storyboardのボタンやテキストフィールド等のコントロールと、ViewControllerクラスの紐づきがおかしいときに出るエラーです。

具体的には、画面上のボタンをViewControllerに紐付けたあと、ViewController上の下記のようなコーディングだけを削除した場合などに起きます。

@IBOutlet weak var titleTextField: UITextField!
@IBAction weak var titleTextField: UITextField!

対処法

ViewController上のコーディングだけでなく、Storyboard上から、「Show the Connections inspecter」上からも接続を解除する必要があります。

まとめ

一度、ViewController等に紐付けたコントロールは、必ず下記の手順で削除する事が必要です。

1.Show the Connections inspecter上から紐付きを削除。

2.ViewController等のコーディングを削除。

Android開発(Kotlin) – タイトルバーを非表示にする方法

方法

タイトルバーを非表示にする方法は、大きく分けて2つあります。

①themes.xmlファイルを修正する

②各Activity内で実装する

①themes.xmlファイルを修正する

この方法だと、アプリ全体に影響を与えるため、全画面でタイトルバーを使いたくない場合に利用します。

具体的な実装方法は、下記のとおりです。

ファイル:res/values/themes/themes.xml ※Android StudioのAndroid表示の場合

<style name="Theme.アプリ名" parent="Theme.AppCompat.Light.NoActionBar">

ポイントは、赤色の部分です。文字通り、NoActionBarなので、非表示にすることができます。

②各Activity内で実装する

この方法だと、各Activity毎に表示・非表示を設定することができます。

そのため、ログイン画面ではタイトルバーを非表示にしておいて、一覧画面などでは利用するといった事が可能になります。

具体的な実装は、下記のとおりです。

ファイル:各Activityクラス内

class MainActivity : AppCompatActivity() {
    override fun onCreate(savedInstanceState: Bundle?) {
        super.onCreate(savedInstanceState)
        setContentView(R.layout.activity_main)

        //タイトルバー非表示
        supportActionBar?.hide()
    }
}

ポイントは、赤字の部分です。

Activityが生成されるときに呼ばれるonCreateメソッドの中で、タイトルバーを非表示にするようにすれば、OKです。

アプリ紹介:貿易実務検定C級対策(貿易実務・貿易英語)

■使い方

至ってシンプルです。
基礎知識を習得する、「貿易実務」「貿易英語」。
演習問題を解く、「演習問題(貿易実務)」「演習問題(貿易英語)」。
学習記録の管理や、試験に関するQ&Aも掲載しておりますので、ぜひご確認ください。

◇貿易実務

 まず、各ジャンルに沿った基本的な用語を覚えましょう。

◇貿易英語

 C級では、貿易実務で使用する英語を覚える必要があります。
 貿易英語特有の英単語を覚えましょう。

◇学習管理

 貿易実務と貿易英語を勉強したあとは、過去問を解きましょう。
 過去問の点数を管理することができます。

◇Q&A

 貿易実務検定の合格に向けて、よくある質問をまとめてみました。
 あなたの不安が解消できたら、嬉しいです。

◇演習問題(貿易実務)

 貿易実務に関する演習問題を用意しました。
 ぜひ、解いてみてください。

◇演習問題(貿易英語)

 貿易英語に関する演習問題を用意しました。
 ぜひ、解いてみてください。

◇マイページ – 学習履歴

 演習問題の学習状況を可視化できます。
 合格までに必要な勉強を分析するのにご活用ください。

■こんな人にオススメ

・貿易実務検定に合格したい方
・貿易に関する基本的な用語を知りたい方
・貿易英語を覚えて、実務に役立てたい方

■注意事項

・本アプリは貿易実務検定C級の合格を保証するものではありません。
あくまでも、勉強の補助としてお使いください。

■お問い合せ

不具合の報告や機能についての要望・お問い合せ、応援のメッセージは、下記のメールアドレス宛に頂けると嬉しいです。
趣味として1人で細々と作っております!
応援宜しくお願いします。

メール:techkeito@gmail.com

Copyright © 2024 アプリで猫と生活したい

Theme by Anders NorenUp ↑