4.3 – Software Improvements and Ideas

“I’m sorry, my software is perfect. You must be the problem.”

As I have already mentioned, the software was developed to proof that the hardware works and can be used by children. It’s still in an unfinished condition. By the way, I have never ever in my life seen a sufficiently complex piece of software that was ‘finished’. Marta is usable in its current state, not more, not less.

If I had the time, here are a few things I would try to improve or develop:

  • The most important thing right up-front: PhonieBox. As soon as I find an opportunity, I will try to get their software running on Marta. My device offers a few additional hardware features, but maybe I am able to integrate them into PhonieBox as I’m not willing to give them up.
  • The machine’s startup takes too long. The Raspberry Pi runs a stock image of Raspbian without any improvements concerning anything including boot time. I opted for the officially supported operating system in order to minimize software effort. I wanted to use pre-compiled programs and find help online. All services run, we wait for a WIFI to connect to and so on. It shouldn’t be too hard to find and eliminate a few bottle necks. There are certainly other OSs available that boot much faster and at the same time offering all the features we depend on. One could even consider overclocking the device.
  • Marta always connects to a WIFI. This is not ideal because currently it is unnecessary in most of the cases. It only draws power without any use. A feature should be added to only turn on WIFI if the user wishes to.
  • A nice and intuitive user interface should be available. I imagine something like a web UI served when surfing to the Pi. The user could be able to change the configuration, upload files, read out empty tags, etc. But guess what: backend, frontend, weekend.
  • An up to date and ready to use system image would be really cool. Not everyone is able to install Marta up from the ground. All the software requirements would be installed already. The only task left for the user is to add some music and read the tags.
  • Instead of only supporting local audio file playback, M³ could at least offer a way of accessing network attached storage, direct internet files (radio stations, mp3), Spotify streams and maybe Youtube. There are dozens of other services available, which I’m not too interested in, but you get the point.
  • I wanna see games. The hardware is perfectly able to offer much more functionality than what I implemented: educational games like animal sound guessing, reaction time competitions or getting to know colors. The box could read out a story and only continue if the correct item has been placed.

This is only an excerpt of a plethora of possibilities. So many ideas, so little time.