Kid-Bank: The Money Tracker for Kids
by Ted M. Young
In case you haven't been following me on Twitter (where I'm @jitterted), I recently started "livecoding", where I do my coding work in front of everyone, live streaming my screen (and face) through Twitch (where I'm also jitterted -- gotta stay on-brand).
Here's a snapshot from one of my videos:
What I'm Working On
I'm developing Kid-Bank, which is a money tracker for kids, tracking deposits and spending, like a virtual bank account. I'm creating it because I currently keep track of my son's savings in a spreadsheet, but it's really awkward (he can't easily view the balance, his mom can't add deposits, etc.), so I wanted to create a web app to track it.
The app itself is in Java, using Spring Boot 2.1, which includes Spring MVC and Thymeleaf for the UI, Spring Data for the persistence, and JUnit and AssertJ for testing (mostly TDD).
Why Live Coding?
I've been wanting to work on this app for a while, not just for my own use, but also to use for educational purposes since I do lots of Java training and coaching. The problem was that it was hard for me to set aside the time to do it, and so it just kept getting ignored. I was able to pair-program on it with a couple of friends, and that helped a lot, but without a pair, I wasn't making much progress. One of my friends suggested I do coding live, broadcasting what I was doing, so that way I'd be treating the audience as a virtual pair. Even though I don't have much interaction/input from my audience (yet!), the comments I do get are fun to react to, and just doing the "thinking out loud while doing" process was really helpful (and exhausting). So it's not like real pair-programming, but it's enough to keep me focused.
Where's It Happening?
Live on Twitch
The livecoding happens on Twitch (https://twitch.tv/jitterted), and if you "follow" me, you'll be notified of my next stream. I have the schedule for the next few weeks/month posted on my main page.
Episodes on YouTube
I do some light editing on the stream: 90% fewer "ummms", reducing some of the noise, and adding fancy intro titles with an intro narration. It takes me a few days to do this, but the result is uploaded to my YouTube channel (to which you can also subscribe): https://www.youtube.com/channel/UCx8qMdZ6JoZgOcOQxWlyV8A.
Code on GitHub
The code for the app is open-sourced on GitHub: https://github.com/tedyoung/kid-bank.
Roadmap/User Stories on Trello
You can see what I've got coming up (and what's done) on the public Trello board. It's for viewing only here: https://trello.com/b/Tkldfg4X/kidbank.
To be informed of new posts here, new events on Twitch, and more, use the sign up box at the bottom of this page.