LoginSignup
0
2

More than 1 year has passed since last update.

残りの人生のためのプログラミング 第-0回

Last updated at Posted at 2021-06-01

今日が人生最後の日だとしたら

"If today were the last day of my life, would I want to do what I am about to do today?"-Steve Jobs

スティーブ・ジョブズが大学の卒業祝賀スピーチで述べた言葉です.素敵ですよね.今年で彼の死からちょうど10年ですし,これを胸に生きてみるのもいいかもしれません...

残り21915日

まあ,そんなこと急に言われたって無理.今日が人生最後って,そんな気しないし.
一応,人生の残り日数でも計算してみましょう.
日本人の平均寿命(男性)は81歳です.自分が今21歳なので人生残り60年,日になおすと...

lastday.py
import datetime

today = datetime.date.today()
rip = datetime.date(year=2081, month=6, day=1)
print(abs(rip - today).days)
21915 days, 0:00:00

21915日
長いのか短いのかよくわかりませんね.

メメント・モリって奴

自発的に意識できないなら強制的にさせればいい.
ってことで,せっかくだしジョブズの忘れ形見を有効活用しましょうか.

iPhone(Andoroidでも可)とLINE,LINE Notifyを利用します.

mementomori.py
import requests
import datetime

class Routine:
    def __init__(self, name, once_every_N_days):
        self.name = name
        self.once_every_N_days = once_every_N_days
        self.content = "{}のは残りの人生{}日で後{}回.\n".format(name, days_to_die, days_to_die//once_every_N_days)
        routines.append(self)


if __name__ == '__main__':
    today = datetime.date.today()
    rip = datetime.date(year=2081, month=6, day=1)
    days_to_die = abs(rip - today).days

    routines = []
    call_mother = Routine("母と電話する", 30)
    meet_grampa = Routine("祖父に会う", 180)
    eat = Routine("飯を食う", 1/3)

    send = "\n"
    for s in routines:
        send += s.content

    send += "MEMENTO MORI"
    send_dict = {'message': send}

    TOKEN = 'hoge'
    url = 'https://notify-api.line.me/api/notify'
    TOKEN_dict = {'Authorization': 'Bearer ' + TOKEN}

    requests.post(url, headers=TOKEN_dict, data=send_dict)

mementomori_notify.png

これをタスクスケジューラー等で登録すればひとまず完成.

次回 第21914回は...

上記のプログラムをもうちょっと有意義なものに変えていきます.タスクの登録・通知を実装しようかな.ゆくゆくはタスク管理ができるようになると嬉しいですね.

ちなみに今日はLINE Notifyの設定とか使い方で一日潰れましたが,特に後悔はしてません.あと21915日もあるし.

0
2
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
2