Wednesday, Jun 19, 2024 at 2:07 PM || Day 5 || Pivoting
June 20, 2024•2,331 words
Overviews
- What was done
- Why it was done
- Goal for next session
- Success?
- Appendix
What was done
- Pivoting to a new application
- Plan the pricing
Why it was done
- This was done because what I was trying to do existed already in several apps and therefore it didn't make sense to reinvent the wheel. So I looked into what was missing and I found a niche that I think I can grow an app successfully!
- To properly learn Flutter and Dart and the power that they behold!! I'll still be using Dart for the backend since it's meant for that role and Flutter for the web facing UI!
- This is really really important. I'm trying to ensure that the software is designed and priced within a target audience that wants to archive their data with a high level of redundancy. See appendix for this entry to see my raw scribbles (Figure 1).
Goal for next session
Learning Flutter and Dart
Success
Kinda
Appendix
Figure 1
— Pivoted to a global archive and data recovery tool
— Goal:
— Everything is encrypted with a Master password of some kind with a standalone method with a user handle generated.
—- The idea is that since it’s completely standalone it can’t be compromised or require being tied into another service for verification or such.
—- There are many cases where you don’t have access to an email address or phone number. Here the service is accessed via a handle (a unique ASCII handle) and a password.
—- Password reset mechanism is currently not supported but will be planned and released in a later software iteration
— First goal:
—- Contacts Snapshot/Archive
— Storage cost is based on a yearly subscription service
— Information is stored in Google Cloud Services and is accessed thru a webpage (US Location)
— Information is mirrored across two other services:
— Backblaze (Netherlands)
— IBM (Japan)
— Todo Calculate 1GiB, 50GiB, 200GiB, 1TiB
— Calculate usage pattern where data 90% of usage capacity, with 10% access daily for read operations and 5% access daily for write operation. Presuming 1000 class A and B actions per day (reads and writes respectively)
(Stored Data * Cost per month) + (Cost per Class A operation per 1000 * Number of days) + (Cost per Class B operation per 1000) + (Total data sent daily * Number of days * Cost per GiB) + (Total data ingested daily * Number of days * Cost per GiB)
— For Google 1GiB plan where the usage is 921.6 MiB for 31 days. This means that 92.16 MIB is read daily and 46.08 is written daily
— Region Pricing is Oregon (us-west1)
— Pricing is 0.020 Per GIB per month
— 0.005 per Class A operation per 1000
— 0.004 per Class B operation per 1000
— 0.000 for inbound per GiB
— 0.12 per GiB for worldwide destinations excluding Asia and Australia
0.9216 * 0.020 + 0.005 * 31 + 0.004 * 31 + 0.04672310.00 +0.09216310.12 = 0.6402672 per month
— For Backblaze 1GiB plan where the usage is 921.6 MiB for 31 days. This means that 92.16 MIB is read daily and 46.08 is written daily
— Region Pricing is Netherlands
— Pricing is 0.005859375 Per GiB per month
— 0 per Class A operation per 1000
— 0.004 per Class B operation per 1000
— 0.000 for inbound per GiB
— 0.01 per GiB outbound (possibly free in some cases)
0.9216 * 0.005859375 + 0 * 31 + 0.004 * 31 + 0.04672310.04 +0.09216310.01 = 0.216 per month
— For IBM 1GiB plan where the usage is 921.6 MiB for 31 days. This means that 92.16 MIB is read daily and 46.08 is written daily
— Region Pricing is Japan
— Pricing is 0.0354 Per GiB per month
— 0.0071 per Class A operation per 1000
— 0.00057 per Class B operation per 1000
— 0.000 for Inbound per GiB
— 0.1906 per GiB outbound
0.9216 * 0.0354 + 0.0071* 31 + 0.00057 * 31 + 0.04672310 +0.09216310.1906 = 0.815 per month
1.67126712 base cost at estimated usage per 1 GiB of data plan for multi tenancy (1.67126712 per GiB)
— For Google 50GiB plan where the usage is 45 GiB for 31 days. This means 4.5 GiB is read daily and 2.25 GiB is written daily
— Region Pricing is Oregon (us-west1)
— Pricing is 0.020 Per GIB per month
— 0.005 per Class A operation per 1000
— 0.004 per Class B operation per 1000
— 0.000 for inbound per GiB
— 0.12 per GiB for worldwide destinations excluding Asia and Australia
45 * 0.020 + 0.005 * 31 + 0.004 * 31 + 4.5310.00 +2.25310.12 = 9.549 per month
— For Backblaze 50GiB plan where the usage is 45 GiB for 31 days. This means 4.5 GiB is read daily and 2.25 is written daily
— Region Pricing is Netherlands
— Pricing is 0.005859375 Per GiB per month
— 0 per Class A operation per 1000
— 0.004 per Class B operation per 1000
— 0.000 for inbound per GiB
— 0.01 per GiB outbound (possibly free in some cases)
45 * 0.005859375 + 0 * 31 + 0.004 * 31 + 4.5 310.04 +2.25 310.01 = 6.665 per month
— For IBM 50 plan where the usage is 45 GiB for 31 days. This means that 4.5 GiB is read daily and 2.25 GiB is written daily
— Region Pricing is Japan
— Pricing is 0.0354 Per GiB per month
— 0.0071 per Class A operation per 1000
— 0.00057 per Class B operation per 1000
— 0.000 for Inbound per GiB
— 0.1906 per GiB outbound
45 * 0.0354 + 0.0071* 31 + 0.00057 * 31 + 4.5 310 + 2.25310.1906 = 15.125 per month
31.339 base cost estimated usage per 50GiB of data plan for multi tenancy (0.62678 per GiB)
— For Google 200GIB plan where the usage is 180 GiB for 31 days. This means 18 GiB is read daily and 9 GiB is written daily
— Region Pricing is Oregon (us-west1)
— Pricing is 0.020 Per GIB per month
— 0.005 per Class A operation per 1000
— 0.004 per Class B operation per 1000
— 0.000 for inbound per GiB
— 0.12 per GiB for worldwide destinations excluding Asia and Australia
180 * 0.020 + 0.005 * 31 + 0.004 * 31 + 18 310.00 +9 310.12 = 37.359 per month
— For Backblaze 200GIB plan where the usage is 180 GiB for 31 days. This means 18 GiB is read daily and 9 is written daily
— Region Pricing is Netherlands
— Pricing is 0.005859375 Per GiB per month
— 0 per Class A operation per 1000
— 0.004 per Class B operation per 1000
— 0.000 for inbound per GiB
— 0.01 per GiB outbound (possibly free in some cases)
180 * 0.005859375 + 0 * 31 + 0.004 * 31 + 18 310.04 + 9 310.01 = 26.289 per month
— For IBM 200 GiB plan where the usage is 180 GiB for 31 days. This means that 18 GiB is read daily and 9 GiB is written daily
— Region Pricing is Japan
— Pricing is 0.0354 Per GiB per month
— 0.0071 per Class A operation per 1000
— 0.00057 per Class B operation per 1000
— 0.000 for Inbound per GiB
— 0.1906 per GiB outbound
180 * 0.0354 + 0.0071* 31 + 0.00057 * 31 + 18 310 + 9310.1906 = 59.787 per month
121.435 base cost estimated usage per 200GiB of data plan for multi tenancy (0.607175 per GiB)
— For Google 1 TiB plan where the usage is 921.6 GiB for 31 days. This means 92.16 GiB is read daily and 46.08 GiB is written daily
— Region Pricing is Oregon (us-west1)
— Pricing is 0.020 Per GIB per month
— 0.005 per Class A operation per 1000
— 0.004 per Class B operation per 1000
— 0.000 for inbound per GiB
— 0.12 per GiB for worldwide destinations excluding Asia and Australia
921.6 * 0.020 + 0.005 * 31 + 0.004 * 31 + 92.16 310.00 +46.08 310.12 = 190.129 per month
— For Backblaze 1 TiB plan where the usage is 921.6 GiB for 31 days. This means 92.16 GiB is read daily and 46.08 is written daily
— Region Pricing is Netherlands
— Pricing is 0.005859375 Per GiB per month
— 0 per Class A operation per 1000
— 0.004 per Class B operation per 1000
— 0.000 for inbound per GiB
— 0.01 per GiB outbound (possibly free in some cases)
921.6 * 0.005859375 + 0 * 31 + 0.004 * 31 + 92.16 310.00 + 46.08 310.01 = 19.809 per month
— For IBM 1 TiB plan where the usage is 921.6 GiB for 31 days. This means that 92.16 GiB is read daily and 46.08 GiB is written daily
— Region Pricing is Japan
— Pricing is 0.0354 Per GiB per month
— 0.0071 per Class A operation per 1000
— 0.00057 per Class B operation per 1000
— 0.000 for Inbound per GiB
— 0.1906 per GiB outbound
921.6 * 0.0354 + 0.0071* 31 + 0.00057 * 31 + 92.16 310 + 46.08 310.1906 = 305.131 per month
629.3472 base cost estimated usage per 1TiB of data plan for multi tenancy (629.3472)
This all was the basic cost where we assume that the data is read for recovery
— Now if we presume 1 Full restore per month per account we instead would look at the following
0.9216 * 0.020 + 0.005 * 31 + 0.004 * 31 + 0.04672310.00 +0.092160.12 = 0.308 per month
0.9216 * 0.005859375 + 0 * 31 + 0.004 * 31 + 0.04672310.04 +0.0921610.01 = 0.188 per month
0.9216 * 0.0354 + 0.0071 31 + 0.00057 * 31 + 0.04672310 +0.0921610.1906 = 0.288per month
0.784 Dollars per month for storage across three devices
— Now if we presume 1 Full restore per month per account using cheapest endpoint we instead would be looking at the following:
0.9216 * 0.020 + 0.005 * 31 + 0.004 * 31 + 0.04672310.00 +0.092160x0.12 = 0.297 per month
0.9216 * 0.005859375 + 0 * 31 + 0.004 * 31 + 0.04672310.04 +0.0921610.01 = 0.188 per month
0.9216 * 0.0354 + 0.0071 31 + 0.00057 * 31 + 0.04672310 +0.0921600.1906 = 0.27per month
0.755 Dollars per month for stage across three devices and restoring from the cheapest one
— Now if we presume the cheapest restoring for the most expensive tier offered our price goes from 629.3472 to 180.5904 per month
921.6 * 0.020 + 0.005 * 31 + 0.004 * 31 + 92.16 310.00 +46.08 00.12 = 18.711 per month
921.6 * 0.005859375 + 0 * 31 + 0.004 * 31 + 92.16 0.04 + 921.6 x 10.01 = 18.426 per month
921.6 * 0.0354 + 0.0071* 31 + 0.00057 * 31 + 92.16 310 + 46.08 00.1906 = 32.862
— Now taking a gamble and presuming that on average it’ll take 6 months for a restore to occur this means we can drop the price down further to the following:
921.6 * 0.020 + 0.005 * 31 + 0.004 * 31 + 92.16 00.00 +46.08 00.12 = 18.711 per month
921.6 * 0.005859375 + 0 * 31 + 0.004 * 31 + 92.16 310.00 + 921.6 x 0 0.01 = 5.524 per month
921.6 * 0.0354 + 0.0071 31 + 0.00057 * 31 + 92.16 00 + 46.08 00.1906 = 32.862
——
15.00$/month for the 200GiB plan to back up everything that matters. Disaster strikes, we recover.
Based on the three cloud providers the overhead for storage per month is:
180 * 0.020 + 0.005 * 31 + 0.004 * 31 + 18 310.00 +9 00.12 = 3.879 per month
180 * 0.005859375 + 0 * 31 + 0.004 * 31 + 18 00.04 + 9 00.01 = 1.179 per month
180 * 0.0354 + 0.0071* 31 + 0.00057 * 31 + 18 310 + 900.1906 = 6.61 per month
11.668 per month for plain storage
However if we incorporate and work with Wasabi then it becomes the following cost (we need to figure out who Wasabi work with)
180 * 0.020 + 0.005 * 31 + 0.004 * 31 + 18 310.00 +9 00.12 = 3.879 per month
180 * 0.005859375 + 0 * 31 + 0.004 * 31 + 18 00.04 + 9 00.01 = 1.179 per month
180 * 0.0068261719 + 0.0071* 31 + 0.00057 * 31 + 18 310 + 900.1906 = 1.466 per month
6.524 per month for plain storage However if we instead use CloudFlare instead of Google we would instead
180 * 0.0068261719 + 0.005 * 31 + 0.004 * 31 + 18 310.00 +9 00.12 = 1.508 per month
180 * 0.005859375 + 0 * 31 + 0.004 * 31 + 18 00.04 + 9 00.01 = 1.179 per month
180 * 0.0068261719 + 0.0071* 31 + 0.00057 * 31 + 18 310 + 900.1906 = 1.466 per month
4.153 per storage
In the rare month that someone needs to export a copy of their data
180 * 0.0068261719 + 0.005 * 31 + 0.004 * 31 + 18 310.00 +9 00.12 = 1.508 per month
180 * 0.005859375 + 0 * 31 + 0.004 * 31 + 18 00.04 + 180 10.01 = 2.979 per month
180 * 0.0068261719 + 0.0071* 31 + 0.00057 * 31 + 18 310 + 900.1906 = 1.466 per month
It jumps up to a whopping 7ish dollars
As long as there is a 33% income on all hired services I’m good.
This means we have approximately 10 dollars per month to play with. 5 $ needed for computing and other APIS’
Assuming a pool of 100+ users this is 500 dollars a month which can be put towards computation
This means that if we use:
-- Backblaze
-- Wasabi
-- Cloudflare D2
our average operating cost per month at 90% usage for a 200GiB plan is 4.153 CAD per month