User Tools

Site Tools


Sweater Implementation

A crucial question we need to decide is what technology the Sweater app will be built with. In general, this decision is likely to have a dependencies on the design goals and the business needs of the project. It may also depend on what the development team already knows and what kind of time budget there is for learning new technologies.

The potentially evolving design requirements for this project are discussed elsewhere. You can (and we will) always start dabbling with implementations before a solid understanding of the design requirements congeals, but if you do so you should be prepared to throw away everything and start again. In fact, no matter what, you should always be prepared to throw away everything and start again! We are constantly spiraling toward wisdom.

Some of the business needs you might need to consider in a project include:

  • How soon must it ship?
  • How important is it that new features can be added?
  • How important is it that the UI/styling can be changed?

For Sweater, I am going to say that the app needs to ship only as soon as it's ready, but preferably not before another major JavaScript release. I'm also going to say that the app will always be simple – that's its main draw! So adding a lot of new features will be unlikely. Finally, it would be cool if Sweater could wear different sweaters, so it would be nice to design the app's structure to make applying different UI/styling not unreasonable. But this isn't a must-have.

Choosing technologies

Based on the core concept of the app, some of the available technologies that seem suitable include:

  • The Web, either with or without special libraries or frameworks.
  • Android
  • iOS
  • Things like Kivy and Qt Quick
  • Desktop-oriented frameworks

For the time being, I will decide perhaps arbitrarily to do an implementation using the Web. In the future, this might be accompanied by other implementations for completeness.

Available implementations

sweater/implementation.txt · Last modified: 2019/03/05 03:06 by mithat