Tuesday, October 29, 2013

Probably dumping the Litter out in the trash...

Well, I managed to get the first part of LitterBox written.

And, this is what I managed to make...

I have a screen that allows the user to set up attributes that can be used to describe things and swipe over to another screen that allow them to specify the values that can be selected for them.  And, another screen that allows the user to specify classes that things can be grouped into.  Again, swipeable to another screen that allows you to specify which attributes are used to describe the class.

I learned how to do a number of things in programming in Android:

  • Set up an SQLite database
  • Create a content provider pointing at that database
  • Setting up content loaders to manage adapters that will make loading data into views
I finally managed to figure out that the main idea that I had for what LitterBox would do and the way that it would help simplify future development was wrong.  But, it was worthwhile to do because I got my foot in the door.

While I was building my LitterBox...I think I've actually figured out a real, useful app to build.  And with the skills I've learned, I should be able to create it.

Friday, September 6, 2013

Nobody puts LitterBox in the corner...

Throughout my software development career, the screen real estate that I have been able to work with has been steadily growing.

I started out with 80x25 character based terminals and progressed all the way up to doing most of my development with a browser based UI.

Mobile development is forcing me to rethink how I use space.  Suddenly, I don't have a giant virtual workspace that is easily navigated with a mouse.

And, so - for the first time in a while I need to take a step backwards and carefully think about every little bit of screen space.  It is a good change and has been refreshing to view everything through a new lens.  But, it is taking some time to adapt to the new paradigm.

And, that is why LitterBox is coming along slower than I originally hoped and thought.

But, it is still coming (still not quite ready for prime time).

And when it gets here, all that data should fit into it quite nicely...

Friday, August 16, 2013

I don't have a cat...Why am I building a litterbox?

A little over a year ago, I got motivated enough to start trying to learn how to develop apps for Android.

Shortly after that, I got too busy to keep up with it - and I stopped.

But now (finally) I have gotten back to it!

So far, I have one very rough finished app that allows you to query a local SQLite database of origami models to find what publications they are in (needs a good bit of work before I do more than mention it).  And, the beginnings of my 'litterbox' project (for more detail - check out my earlier posts).

In case you don't feel like reading my old posts about litterBox - What it is meant to be is a way to define data structures using a standardized UI (nothing special there) and then it will provide a way to request that data and methods to update/delete it.

At first glance, that might look like it is just another front end for a database.  And, it is.

But, it will make it easier to define the data structures by non-programmers.  That is what will make it special.  Another thing that I hope to include is a way to disconnect the view of the data from the way it is stored.  I'm currently using local SQLite, but I also would like to enable a back end on NoSQL, cloud storage, etc.

There will also be an included basic UI for accessing data in those structures so that you can describe something and right away begin keeping track of those things.

At some point in the (hopefully near) future, I plan on making it possible for people to share the definitions that they come up with to build up so that other users will not have to reinvent them.  After all, once someone successfully describes an 'address' - why should everyone else have to do it all over again?

All of this was inspired by a project that I needed to do where the data structure needed to be modifiable by the users.  After implementing that project - suddenly it seemed like what I had done could be used to store information about anything.

I guess we'll see if I can really generalize this.

Stay tuned.