๐ Received another $10/m subscription customer today! Thank you @atsaotsao for your support!
๐ Total one-off revenue: $600
๐ MRR: $30
๐ MRR: $30
Day 21 - Compete with fax machines https://golifelog.com/posts/compete-with-fax-machines-1611211166542
"Find an industry that still uses fax machines, and build a high tech, digital business there to compete with them..."
Day 20 - Building a business can be hard and lonely https://golifelog.com/posts/building-a-business-can-be-hard-and-lonely-1611134541299
"Itโs difficult to say that itโs difficult. I think itโs typically not easy to be open and vulnerable in public, and even harder to do so in front of your peers, customers and competitors...."
Day 19 - A mosquito can be your teacher too https://golifelog.com/posts/a-mosquito-can-be-your-teacher-too-1611038010764
Day 18 - Off-grid life https://golifelog.com/posts/off-grid-life-1610956257315
Day 17 - Rest is a mindset https://golifelog.com/posts/rest-is-a-mindset-1610874338860
Rest is a form of productivity too...
Day 16 - 1% compounding improvements https://golifelog.com/posts/1percent-compounding-improvements-1610788199026
On the surface, 1% improvement donโt seem like much. But 1% compounded daily over a year means youโll be 37.8 times better than when you started. The power of compounding is the reason why consistency matters as much asโor even arguably, more thanโintensity....
๐ต Received another $120 onetime deal payment for Lifelog. Thank you @therealbrandonwilson!
๐ Total one-off revenue: $600
๐ MRR: $20
๐ MRR: $20
Day 15 - 4000 weeks to love https://golifelog.com/posts/4000-weeks-to-live-1610699672952
๐๐๐ฆCreated a multi-timezone panel of all my current users to debug this timezone issue
Savvy Time had been super useful so far!
https://savvytime.com/converter/ca-los-angeles-to-az-phoenix-ny-new-york-city-trinidad-and-tobago-port-of-spain-brazil-sao-paulo-utc-switzerland-zurich-finland-helsinki-kuwait-al-ahmadi-india-kolkata-sgt-australia-melbourne
https://savvytime.com/converter/ca-los-angeles-to-az-phoenix-ny-new-york-city-trinidad-and-tobago-port-of-spain-brazil-sao-paulo-utc-switzerland-zurich-finland-helsinki-kuwait-al-ahmadi-india-kolkata-sgt-australia-melbourne
Day 14 - What is a rare combination of two skills that when combined make someone unstoppable? https://golifelog.com/posts/what-is-a-rare-combination-of-two-skills-that-when-combined-make-someone-unstoppable-1610599782019
For indie hackers/makers, namely, developing, designing and marketing.
Researched and consulted widely on approach to solve the remaining streak bug
Taking a step back, to solve this new Date() doesn't apply offset issue, there seems to be 3 approaches I can take.
1. Patch date-streaks module directly by adding offset to new Date(), seems least effort, but hard to understand their code
2. Make my own streak.js plugin - making from scratch feels time-consuming but more control and less downstream gotchas
3. Use afterCreate lifecycle hooks within Strapi to save a new content-type streaks, so it's not calculated on the fly every time but saved as an integer as each post is created.
1. Patch date-streaks module directly by adding offset to new Date(), seems least effort, but hard to understand their code
2. Make my own streak.js plugin - making from scratch feels time-consuming but more control and less downstream gotchas
3. Use afterCreate lifecycle hooks within Strapi to save a new content-type streaks, so it's not calculated on the fly every time but saved as an integer as each post is created.
Day 13 - Rest != Sleep https://golifelog.com/posts/rest-sleep-1610543910415
Day 12 - Micro steps https://golifelog.com/posts/micro-steps-1610446250918
๐ Identified minor bug within streaks algorithm
OK...... looks like the streak bug is still not completely dead, just like how cockroaches die hard. At least I identified the problem within a day, which is something to celebrate over. The first step to solving any bug is to isolate and identify, so that's a pat on my own back at least. My date streaks module uses `new Date()` in UTC to set the current day/date, and it doesn't apply user's timezone offset. So the array of published dates are offset to user's tz but it's always referenced to the the current date in UTC, which is why sometimes the streak breaks but restores when the user posts (e.g. if the user happen to write past the UTC midnight but still within his tz's midnight).
๐ต Yet another lifetime deal (US$120) customer for Lifelog! Thank you so much @brianball for your support!
๐ Total one-off revenue: $480
๐ MRR: $20
๐ MRR: $20
Day 11 - Everyone can be a Gumroad entrepreneur now https://golifelog.com/posts/everyone-can-be-a-gumroad-entrepreneur-now-1610347236235
๐ค Just received another lifetime deal payment $120! Thank you @peterdannock!
Added 1 new item to writing prompts
'What feels like play to you, but looks like work to others?'
Day 10 - Deep Year https://golifelog.com/posts/deep-year-1610266414444
Day 9 - Code only exists by the grace of others https://golifelog.com/posts/code-only-exists-by-the-grace-of-others-1610166733122
Day 8 - Fundamentals https://golifelog.com/posts/fundamentals-1610092536439
Fixed no SSL error on www subdomain via Cloudflare
๐๐๐ YAAASSSS ITS FIXED!!!! After 3 days of debugging trial by fire, I fixed the post page loading issue. Woohoooo I wanna dance hahahahah! ๐บ
Turned out, the culprit was a sort function for the comments v-for loop.
v-for="comment in sortedComments"
:key="comment"
>
...
computed: {
sortedComments() {
const x = this.post.comments
return x.sort(function (a, b) {
return a.id - b.id
})
},
}
Changed that function to using lodash's sortBy function and it works now!
import _ from 'lodash'
computed: {
sortedComments() {
return _.orderBy(this.post.comments, ['created_at'], ['desc'])
},
},
All thanks to @yuyu 's suggestion to comment out everything in _slug! That got me down the right path to debug this eventually! Note to self: always fall back to fundamentals when debugging - just comment out code first to isolate the bug. But the deeper mystery remains:
* why this worked before but not now
* the behaviour should be consistent on local and production, but it worked on local
* the function didn't crash the page if I entered the site via a different child page by directly typing in the url
* why lodash worked but a vanilla JS script didn't
:key="comment"
>
...
computed: {
sortedComments() {
const x = this.post.comments
return x.sort(function (a, b) {
return a.id - b.id
})
},
}
Changed that function to using lodash's sortBy function and it works now!
import _ from 'lodash'
computed: {
sortedComments() {
return _.orderBy(this.post.comments, ['created_at'], ['desc'])
},
},
All thanks to @yuyu 's suggestion to comment out everything in _slug! That got me down the right path to debug this eventually! Note to self: always fall back to fundamentals when debugging - just comment out code first to isolate the bug. But the deeper mystery remains:
* why this worked before but not now
* the behaviour should be consistent on local and production, but it worked on local
* the function didn't crash the page if I entered the site via a different child page by directly typing in the url
* why lodash worked but a vanilla JS script didn't