Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
自家製家計簿システム作って家庭内で運用してるはなし / homemade-household-...
Search
Sponsored
·
Ship Features Fearlessly
Turn features on and off without deploys. Used by thousands of Ruby developers.
→
kxn4t
November 30, 2018
Programming
1.1k
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
自家製家計簿システム作って家庭内で運用してるはなし / homemade-household-account-book-system
社内LT大会での発表資料です。
kxn4t
November 30, 2018
Other Decks in Programming
See All in Programming
モジュールの視点からSwiftを読み解く #iosdc
s_shimotori
0
170
モバイル交通系ICへのチャージ実例から考える、クロスプラットフォーム開発におけるiOS実機テスト設計とCI運用
yusuga
1
470
GKE で Pod の見方を変えたら、スケールアウト時の挙動を真に捉えられた話
stkk
0
120
What We Talk About When We Talk About XP
m_seki
2
630
WebMCP Challenge に星空観察アプリで参加した話
okajun35
0
170
速く作れる。その次は、速く確かめられる開発へ 〜AIネイティブ開発を支える、Shift Down〜 / Can build fast. Next, moving to development where we can verify fast.
rkaga
4
2.8k
Claude Codeを組織的に動かして月400PRを実現した話
happy_ryo
0
280
thread_parallel_with_free-threaded_Python_and_NumPy.pdf
riku_sakamoto
0
330
技術的負債を組織課題として解く-増えすぎたマイクロサービスとの戦い-
reimaru
1
1.9k
マイコン向けの軽量Ruby「PicoRuby」で各種デバイスを制御するネイティブアプリの実現手法
bash0c7
0
400
選挙速報を多くのユーザーへ 届ける Live Activities 設計
hamayokokuririn
0
140
AI Agent時代のリアーキテクチャ戦略と実践
hokaccha
9
4.5k
Featured
See All Featured
[RailsConf 2023] Rails as a piece of cake
palkan
59
7k
Optimising Largest Contentful Paint
csswizardry
37
4k
職位にかかわらず全員がリーダーシップを発揮するチーム作り / Building a team where everyone can demonstrate leadership regardless of position
madoxten
69
65k
Practical Orchestrator
shlominoach
192
12k
JavaScript: Past, Present, and Future - NDC Porto 2020
reverentgeek
52
6.1k
Redefining SEO in the New Era of Traffic Generation
szymonslowik
1
420
The Power of CSS Pseudo Elements
geoffreycrofte
82
6.6k
The Mindset for Success: Future Career Progression
greggifford
PRO
0
490
Code Review Best Practice
trishagee
74
20k
How to audit for AI Accessibility on your Front & Back End
davetheseo
0
540
Designing Dashboards & Data Visualisations in Web Apps
destraynor
232
55k
AI Search: Implications for SEO and How to Move Forward - #ShenzhenSEOConference
aleyda
1
1.4k
Transcript
自家製家計簿システム作って 家庭内で運用してるはなし 廣瀬翔遥 2018.11.30 @stylez社内LT
自己紹介 廣瀬翔遥(ひろせかなた) • もともとの専門は機械設計 • 新卒で入ったメーカーは田舎が嫌で辞めた • 都会に住むならITでしょ!と 適当にIT業界飛び込んで早3年2ヶ月 •
今期はけっこうアニメみてる • RELEASE THE SPYCE • ベルセブブ嬢のお気に召すまま • ひもてはうす • となりの吸血鬼さん • アニマエール! • うちのメイドがうざすぎる • 俺が好きなのは妹だけど妹じゃない • おこしやす、ちとせちゃん 見たいけど追い切れてない。。。 • 青春ブタ野郎~ • 寄宿学校のジュリエット(原作組 • アイカツフレンズ!(20話くらいまでは見てる • 色づく世界の明日から • SSSS.GRIDMAN • やがて君になる • ゴブリンスレイヤー • 転生したらスライムだった件 • SAO • ゾンビランドサガ 言語:PHP、C#、Java、Javascript 最近はVue.jsとかフロント周りが好き VueFes行ったり勉強会もちょくちょく # そろそろいい加減開発やりたいやりたい
突然ですが、
家計ってどう管理してますか?
弊家では • 共働きなので家計はひとまず折半したい • 2人ともエンジニア • 折半できるアプリないかなと探してみたけどなかった (もしあるなら教えてください。。。
どうしようー
None
ないんだったら自分で作ればいいのよ!
作りました
折半するだけのWebアプリ (弊家ではSaifuとか呼ばれてる)
折半できるWebアプリ • 仕様 • 言語:Java 8 • フレームワーク:Spring Boot 2.0
• 画面:Thymeleaf 3・mini.css • 認証:OAuth 1.0a • データ保存:zaim • 分担 • 自分:認証とか土台まわり • 嫁 :画面、計算まわり
技術選定理由 • なんでzaim? • 家計簿部分まで作るのはなんか違うのであるものを使う • レシート読み取りが便利 • APIが公開されている •
なんでJava + Spring Boot? • Javaやってなさすぎて忘れないように • 開発スピードが出ると思ったから(5、6人日くらいはかかったけど • なんでmini.css? • Bootstrapめんどくさいから別のを使ってみたかった(らしい
どう使っているか
登録 • スマホアプリから各々zaimに使った金額を登録 • アカウントは1つを共有 • 登録時、メモ欄に名前を記入 • どっちが使ったものかここで判断 レシート読み取って登録
認証 • 未認証だとzaimの認証画面にリダイレクト • zaimとはOAuth1.0aで認証 • 認証後、認証済画面へ遷移 • 以降はtokenで署名してzaimと通信 •
tokenはcookieに保持して再認証不要に OAuth1.0a Cookie oauth_token oauth_verifier
計算 • 集計期間を指定して実行 • 集計期間はLocalstrageに保存 • 各々がその期間でいくら使ったか集計 • どちらがどちらに何円払うか表示 •
メモで判断できないものもリストで表示 REST API view JSON response 集計期間 分割キーワード
こんなかんじ
運用 • 今は2~3か月に1回くらいで集計 • 集計するときは今のところローカルPCで実行 • 集計後はslackで共有
まとめ
作ってみて • 折半が楽になった • 勉強になった • OAuth完全に理解した • やっぱり作るのは楽しい
今後の改善 • Slack連携 • スラッシュコマンド叩いたら計算してくれるとか • 計算終わったら通知してくれるとか • サーバでの運用 •
その辺に転がしてるRaspberry Piに乗っけたい
快適に過ごすために他にも色々
ほかにもいろいろ • 予定共有 • Googleカレンダーをお互いに共有 • IFTTT使って、予定が追加されたらお互いのLINEに通知 • 言った言わないがなくなったので神 •
便利すぎてスケジュール帳を使わなくなった • ゴミの日通知 • 2週間に1回の燃えないゴミの日忘れがち • ファイル共有サーバ(NAS) • 取り込んだ音楽とか共有便利
自分たちの生活は 自分たちでよりよくしていく
ありがとうございました
- OAuth1.0の話 https://qiita.com/kxn4t/items/9f0f920e41e47bb2aaf4 - GitHub(認証部分だけ https://github.com/kxn4t/saifu