My Authors
Read all threads
Given a 3 week deadline, I just built a mobile app using #fsharp and #xamarinforms for emergency responders.

I applied techniques I learned from @ScottWlaschin 's book, @debasishg 's book, and @IDesign_inc 's book.
The mobile solution is partitioned into two sub-domains in which each layer (UI, Domain, Data Store) relies on their relative specification library. A specification library exposes business terminology as record or choice types and business policies as function types.
I spent the first 2 days domain-modeling.

I then put together a Project Design document that provided three options for how the application would be developed given the time constraints. These options included advantages and disadvantages for each option.
I managed expectations through the Project Design document by identifying the stages of how the app would be developed.

I clearly documented that demos of progress would not be measured on vertical slices of application functionality, but rather on individual app components.
With the recently distilled types obtained from domain-modeling, I used TDD to validate the specification libraries that I wrote. This involved constructing a TestAPI library to feed both my unit tests and application. Thus, I deferred web server integration for later.
While my peers used the daily status meeting to discuss what they "worked on", I used it as a platform to demo what I completed. I routinely shared my desktop and demo'd the latest component or integration piece of the application.
I built the app to be connectivity agnostic.
Thus, the app's landing page displays a watermark that exposes the data feed source as well as the server environment name. The watermark is hidden when the app is pointing to a production server.
Building the app to be connectivity agnostic was strategic for managing expectations early. Hence, I deferred web service dependencies as long as I could demo a new user-workflow regardless of where the data was actually coming from (i.e. TestAPI or actual web service).
In conclusion, I thank the authors for enlightening me on alternative methods for delivering value.

There's minor tweaks that need to be made in regards to UI and security before going live, but overall I had a very positive experience.

Thanks!
Missing some Tweet in this thread? You can try to force a refresh.

Enjoying this thread?

Keep Current with Scott Nimrod

Profile picture

Stay in touch and get notified when new unrolls are available from this author!

Read all threads

This Thread may be Removed Anytime!

Twitter may remove this content at anytime, convert it as a PDF, save and print for later use!

Try unrolling a thread yourself!

how to unroll video

1) Follow Thread Reader App on Twitter so you can easily mention us!

2) Go to a Twitter thread (series of Tweets by the same owner) and mention us with a keyword "unroll" @threadreaderapp unroll

You can practice here first or read more on our help page!

Follow Us on Twitter!

Did Thread Reader help you today?

Support us! We are indie developers!


This site is made by just three indie developers on a laptop doing marketing, support and development! Read more about the story.

Become a Premium Member ($3.00/month or $30.00/year) and get exclusive features!

Become Premium

Too expensive? Make a small donation by buying us coffee ($5) or help with server cost ($10)

Donate via Paypal Become our Patreon

Thank you for your support!