はじめに:遊び心から始まったアイデア
このアプリは、最初は完全に“遊び”の延長として始めたものでした。「YouTubeショート動画にちょっと変わったネタを投稿してみたいな」と思ったのがすべてのきっかけです。
ChatGPTに相談して、「1年365日からランダムに日付を100個選んで、それをランキング形式で表示したらおもしろそう」と思い、まずはAIに出力してもらう方法から試してみました。実際に使ってみると、ChatGPTはただのツールではなく、優秀な大先生でありアシスタントでもあると実感しました。質問すればすぐに答えてくれて、しかも柔軟に対応してくれるので、今の時代にはなくてはならない心強い相棒のような存在です。
さらに、GPTsというカスタムツールも作成し、自動で日付を並べてもらえるようなものを目指してみました。
でも実際に出力してみると、どうも理想通りにはいきません。特に気になったのが「文字間隔のバラつき」でした。ターミナルや動画上で表示すると、日付の並びがガタガタになってしまって見栄えが悪いのです。
「この見た目を毎回手で直すのは面倒くさい…」と感じたとき、特にYouTubeショートなどに使う際に、文字のずれや位置の不揃いが目立ってしまい、見た目のクオリティに影響することが気になりました。だからこそ、「じゃあ自分で整った形で表示できるアプリを作ってみよう!」と決意しました。
プログラミングの知識はまったくなくても、Macの標準アプリだけで作れるなら試す価値はある。そんな軽い気持ちで始めたことが、思いのほか楽しくて、あっという間に形になったのです。
この記事では、誰でも真似できるように丁寧な手順と、そこに至るまでの過程をセットで紹介していきます。
※なお、Windowsをご利用の方には申し訳ありませんが、この記事はMac専用の内容となっています。ご了承ください。
Macだけでアプリが作れるって本当?
Macを持っていれば、特別な開発環境やソフトを用意しなくても、ちょっとしたツールなら作ることができます。
今回のような「365日からランダムに100日を選び、100位から1位までのランキングを表示する」というアイデアも、Pythonという言語を使えばシンプルに実現できます。
PythonはMacに標準で入っているバージョンを使えばよく、設定の知識も不要。誰でも気軽に始められます。
必要なものは2つだけ:テキストエディットとターミナル
このアプリを作るのに必要だったのは、たった2つのMac標準アプリだけです。
- テキストエディット:文章を書くためのアプリですが、実はコードも書けます。
- ターミナル:黒い画面でコマンドを打つアプリ。初心者には少しハードルが高く見えるかもしれませんが、今回の使い方は非常にシンプルです。
この2つを使えば、プログラミング未経験者でも小さなアプリを作る体験ができます。
ステップ1:テキストエディットでPythonコードを書く
まずは「テキストエディット」を開きます。
開き方:
- DockのLaunchpad(ロケットマーク)をクリック
- 検索欄に「テキストエディット」と入力し、起動
テキストエディットはデフォルトでは「リッチテキストモード(文字装飾あり)」になっているため、そのままではPythonのコードが正しく動かない可能性があります。
プレーンテキストへの切り替え方法:
- メニューの「フォーマット」→「標準テキストにする」を選ぶ
- または
Shift + Command + T
のショートカットを使う
次に、以下のコードをコピーして貼り付けます。
from datetime import date, timedelta
import random
base = date(2025, 1, 1)
days = [base + timedelta(days=i) for i in range(365)]
selected = random.sample(days, 100)
for i, d in enumerate(reversed(selected)):
print(f"{100 - i:>3}位 {d.month}月{d.day}日")
このコードは、「2025年1月1日から365日分の日付を作り、その中からランダムに100日を選び、100位から1位に並べて表示する」仕組みです。
ステップ2:.pyファイルとして保存する
次に、書いたコードを保存します。
ポイント: ファイル名の末尾が .py
である必要があります。
保存手順:
- メニューの「ファイル」→「保存」
- ファイル名を
ranking.py
にする - 保存先はデスクトップがわかりやすくておすすめです
.txt
で保存されてしまうと、Pythonが実行できないので注意してください。
ステップ3:ターミナルでコードを実行する
「ターミナル」を起動して、保存したPythonファイルを実行します。
起動方法:
- Launchpadで「ターミナル」と検索
- または
Command + Space
を押して「ターミナル」と入力
ここで使うコマンドは、Pythonファイルを正しく実行するために必要です。
まず「cd ~/Desktop」は、作業ディレクトリを「デスクトップ」に変更するコマンドです。これは、先ほど保存したファイルがデスクトップにあるからです。
次の「python3 ranking.py」は、そのファイルをPythonで実行するための命令です。
cd ~/Desktop
python3 ranking.py
Enterキーを押すと、ランキングがずらっとターミナル上に表示されます。
ステップ4:結果をコピーして活用する
ターミナルに表示されたランキング結果は、通常のテキストのようにコピーできます。
100位 6月4日
99位 12月1日
98位 3月7日
…
1位 8月21日
この一覧を画像に加工してYouTubeショート動画に使ったり、SNSの投稿素材にアレンジしたりと、応用方法はさまざまです。
よくあるトラブルと対処法
状況 | 対処法 |
---|---|
python3 が動かない | MacにPython3が入っていない可能性があります。brew install python で導入します(Homebrewが必要です) |
ファイルが .txt になってしまった | ファイル名を手動で .py に変更しましょう |
実行結果が文字化けする | テキスト形式がリッチテキストのままの可能性があります。「標準テキスト」に切り替えてください |
まとめ:ChatGPTと作る、はじめての小さなアプリ
このランキングアプリは、思いつきとChatGPTとのやりとりから生まれたものでした。
最終的には、「自分の手で動くツールを作る」経験ができて、とても達成感のある学びになりました。
Macに入っているアプリだけでここまでできるとは思っていなかったですし、何よりChatGPTとの協力によって、手探りながらも自分なりの形でツールを作り上げることができたのは大きな発見でした。
興味がある方はぜひ挑戦してみてください。SNSの投稿ネタとしても、学習用のプロジェクトとしても、とてもおすすめです。
※Windowsユーザーの方、申し訳ありません。今回はMac限定の内容となります。
コメント