Jason Leow

Indie hacker, solopreneur | Creating a diverse portfolio of products + services.

💪 Yeeeaahhh! Figured out the delay function needed before user is redirected to newly published post page

Worked with @keenencharles(thanks man!) to figure out how to redirect user to newly published post using this.$router.push(/posts/${res.data.slug}) . Were stuck for a bit on what the route URL is, until we logged the endpoint to see if/what it returns the data from the new post, and how it's named/structured. Lesson learned for me: console.log is best friend when debugging, log at every point, and inspect the data going out and in.

haha it can really your best friend

0 Likes
Jason Leow Author

yes indeed! I often reflexively reach out for google/stackoverflow at first drop of an error, not the smartest way to debug i realised!

0 Likes

FINALLY SOLVED after 2 days: How to POST the right values via a (v-for) dynamically created checkbox form

Next up, GET request with a filter to just the current logged in user (should I continue to use nuxt asyncData method and context helpers for this? Or switch to fetch method?), figuring out how to redirect to new post URL after publishing (this.$router.push(???)....?), and how to style a select dropdown like checkboxes (or make checkboxes submit string values instead of boolean)??

Researched txn email providers—Sendinblue, Sendgrid, Elastic Mail, Mailgun—and decided to go for Sendinblue (300email/day) for MVP and probably Elastic Mail ($0.09/1000 emails) for future. Thanks @uf4no for the awesome article on Strapi email providers, made it so much easier knowing someone had tried it!

Comments thread sorting was wonky and seemingly random, couldn't fix in backend, so used sort() with v-for on frontend to sort in DESC

Tweaked styling using Bulma - quite enjoying it! Or is Tailwind better? 🤔

Created custom controller for my /posts endpoint to get additional level of nested data, so that I can show comments.author.username in the comments thread

Solved a hard-to-search but super basic issue with my asyncData function to return an {object} instead of an array [{object}]. Kudos to @yuyu !! 😊👍

Yuyu

Thanks for the mention! Glad to help 🍻

0 Likes
Jason Leow Author

cheers bro! 🍻

0 Likes

Created a new API endpoint to get streak data for all community members. Kudos to @brandonwilson for SQL query help and @keenencharles for Javascript gymnastics part2!

Deepened familiarity with SQL, like using JOIN clause and aliases, and using ${objects} within SQL queries.

Day 731 - Two years of daily writing https://writelier.com/two-years-of-daily-writing-e29bd7fd-5630-4ae9-bd54-5f2ad0da93f0

It's been two full years of daily writing since I started writing here on 8 Dec 2018. Today will be my last post here.

"The days are long but the years are short."

That little saying is exactly how it felt like after 700+ days. Some days felt long indeed, especially in the beginning when the writing habit had yet to solidify, and inspiration ran dry. I recall with fondness my many slump days back then, just doing whatever random writing that can get me through to the next day without breaking my streak. Those experimental days were hard, but on hindsight, great fun. I was working out my writing muscles, honing my writing voice and discovering my deeper why. I think right around the six month mark, things started to settle. After one year, slump days are but a distant memory. These days, even when I have no inspiration, no topic to write on, it doesn't take long to eventually find something to pen down. It's become hygiene.

What's next then?

I'll be taking a short break from daily writing, to recap and recalibrate my deeper why, and how I want my writing to serve me in the next phase. I'll be completely honest here: It's quite a relief to be breaking my streak, but not because I no longer enjoy writing. Quite on the contrary. I don't think I can do without it for long, now that writing to think—to disentangle my thoughts and emotions using words—had become habit. I guess the relief comes from unarticulated and unconscious desires for a fresh start, a new space, a blank slate. Like moving house after staying in one place for a long time. You might have formed lots of lovely memories in this house and be reluctant to leave, but still be glad and excited to move into somewhere different. That's how I feel right now.

And after two years writing here, I'm also starting to have my own opinions and wants for my writing tool. But I was too lazy to make my own. And I was (too) comfortable here. It gave the minimum of what I needed. There just wasn't enough pull and push. But with this platform's shutdown, it gave me just the right push. Since I have to move, might as well make my own writing tool, one that would serve my needs. One that helps me write to think even better, see data, themes, threads, networks of thought, help me easily reflect and look back at my mental landscape years from now to see even more patterns and trends. One where the community can help inspire each other become the best versions of themselves through writing their way through it, always encouraging, always giving, like my 'pen pals' here: @keni @brandonwilson @imknight @keenencharles

Surprisingly and counterintuitively, I'm not sad for my last day here. I expected to feel nostalgic, even forlorn. Yet here I am.

This is not goodbye. I'll still be writing. And writers who write often in public will invariably cross paths and find each other.

Words have a way.
MJ 🙌

Good luck with your new adventures mate!

0 Likes
Jason Leow Author

Thanks @man5 !

0 Likes

Day 730 - Having enemies & critiques is a good thing https://writelier.com/having-enemies-and-critiques-is-a-good-thing-51e44bd7-056a-4138-82e0-6c68e3b58b7f

🔥Woohoo managed to make my datetimes look pretty using native Intl.DateTimeFormat method instead of using libraries like Day.js or Luxon. Feeling productive and in flow today!

Day 729 - The stronger the signal, the greater the lack https://writelier.com/the-stronger-the-signal-the-greater-the-lack-94c264ef-8960-4f03-a3de-3b70aef8a464

🕺🕺🕺 F**K YEAHHHH!! Finally solved the POST request error for post comments! Fixed it by adding missing body data like `this.$auth.user` and `this.post.id`. Even figured out how to do a page reload in Vue using `this.$router.go(0)` while keeping scroll position with `scrollToTop: false` ! Progress feels gooood!!! 💆‍♂️

Researching about commenting engines (Disqus alternatives) for Nuxt. Anyone know any good ones?

Installed markdown-it module to render markdown properly on frontend. Heading tags not rendering but in the end the fix was to add a Bulma "content class! 😵

Day 728 - Two steps back https://writelier.com/two-steps-back-9ad892b8-254e-4f3d-bce2-81ff422e8952

Day 727 - Be brave enough to suck at something new https://writelier.com/be-brave-enough-to-suck-at-something-new-b9c25ac8-a93f-495a-94d4-30f553ba859c

Updated Keto List website, removed year-long sponsorship mentions of BenBanter - thank you for the early support!

Created first version of comments list in posts, and comment input area. Need to separate them out as components next, and figure out how to access the username

Watched presentations on Stack 2020 by Govtech Singapore

Impressed by their speech-to-text product Transcribe (trained and used in Parliament proceedings with all the gov lingo).
Enjoyed the presos on inclusitivity and a11y, Purple Hats
Learned about the tensions of building gov-citizen trust for the TraceTog app
Web design for gov - Isomer is pretty smart.