Almost exactly 5 years ago, I started developing an app to log my grows. I started off using shitty spreadsheets to log my grows via google forms which created this
I quickly realised that it didnt scale, I wanted to log more data, and have a better native experience. I do software development for a living and all the other apps that were out there already like GrowBuddy required an online account or signing up to some system and I didnt want that.
So 5 years ago on 5 May 2015, I started working on GrowTracker.
The first version of the app (actually v1.1) was released 14 Aug 2015.
The requirements were simple: Be offline (no internet access), store data in a well structured way, allow me to log “actions” to a “plant”.
v1.1 was quite basic and allowed me to log the stages of growth with watering details. Ultimately found it wasnt suitable really because I was storing NPK values when really I wanted to log which product I was using and what amounts because I couldn’t calculate what the final NPK was of a solution from multiple additives.
The next few versions were mainly small feature additions and bug fixes with things like adding an encryption mode, a discrete version of the app which changed the launcher icon and hides the images, export growlogs, etc.
After v1.4 was released, I began working on version 2.0 of the app. This version would be incompatible with 1.x as the data structure would be changing, so a major version (semver) was required.
I updated the data structure to allow me to add additives to a watering and the ability to group plants together into “gardens”.
A few months later, v2.0 was released
Since Aug 2016 I have been working on v2.x, adding new features where they make sense or requested by some users, have released 14 updates to the app with features including;
- Dark theme
- Feeding schedules - Allows you to create a schedule with pre-set nutrients to auto populate in the watering view
- Garden stats
- Addons (like updater)
- Launcher widgets
- Backup feature
- Full exporting growlog for plant or garden
- Update to material design
- Additional languages support
Over time I found myself working on the app less and less. Mainly because it satisfied my needs so well I had no reason to work on it. I work on it every now and then when I have the motivation, but that is hard to have when you do the same work professionally and just want to relax after work which leaves just the weekend and who wants to be coding on the weekend?
A new vision
We find ourselves in very interesting times right now. I have a lot more free time on my hand these days, and have started mixing more with the Android dev community, reading up on the latest and greatest ways of coding, and found my current practices to be very very outdated. I like to learn by doing, so I started playing around with these new tools and quickly found them to be pretty exciting and came to the realisation that there is a LOT i’ve missed out on over the last few years of Android development.
I needed something to put these new development APIs to practice, and what better way than making something you can use yourself? So I decided that I didnt have enough stuff on my plate and needed another thing to work on during this lockdown, so to skill myself up i’ve decided to start GrowTracker 3.0.
Using contacts and weed as
bribe payment, i’ve asked a designer friend to help me design a new version of the app with a new approach, a fresh UI and UX.
I’ve been playing around with a few other apps like Jane, GrowHelper, and others, and although I still believe that my app is far superior to others (not only in the fact that mine is open source and free, but in terms of usability), some of them have a better approach to how the data is actually logged, and thinking about how I grow, their approach makes more sense to me, so I am rebuilding the app from the ground up with these considerations in mind.
The app is actually the reason I found Overgrow. I dont really advertise my app, if someone asks about apps I suggest mine, but apart from that I dont really create any posts promoting or anything, its just a hobby app that I put out there if other people wanted to use. One day I was checking the traffic to my repo and saw a few posts linking to it which was quite nice, to see other people suggesting others check out my app.
This is a workshop after all, so I thought why not add the other thing’s im building into it
I’ll probably post updates about development here as and when it makes sense, but you can follow the code here. I dont expect a first release any time soon, however