Posts

A New Collection of Thoughtful Learning Apps — Now Available on iOS & Android

Image
I’m excited to share a set of mobile apps I’ve recently completed and published on both the Google Play Store and the Apple App Store. These apps are designed with a simple goal in mind: to make meaningful, structured content more accessible, whether you’re studying theology or improving your English vocabulary. 📱 Now Available on Both Platforms All apps are live and available for download: Google Play Developer Page: https://play.google.com/store/apps/dev?id=5835943159853189043 Apple App Store Developer Page: https://apps.apple.com/ca/developer/q-z-l-corp/id1888794100 📖 Theology & Confession Study Apps For those interested in Reformed theology and classical Christian teachings, I’ve developed a series of apps that present foundational texts in a clean, focused reading format: The Belgic Confession Canons of Dort Heidelberg Catechism Westminster Shorter Catechism Each app is designed to provide a distraction-free experience, making it easier to read, reflect, and revisit these im...

2026 May 3rd - Afternoon Sermon Reflection:Thy Kingdom Come

Image
Thy Kingdom Come 1. The Problem with Earthly Kingdoms When I reflect on the idea of “kingdom,” I cannot help but think about human history. Kingdoms rise and fall. Nations compete for power, control, and influence. And more often than not, what is left behind is not peace, but destruction. Even today, we see conflict, war, and suffering across the world. This forces me to ask a difficult but necessary question: What have earthly kingdoms truly accomplished for humanity? The honest answer is unsettling — they often increase human misery rather than resolve it. 2. A Different Kind of Kingdom Against this backdrop, Jesus teaches us to pray: “Thy kingdom come.” At first, this almost sounds strange. Do we really need another kingdom? But Jesus is not speaking of a political or earthly system. His kingdom is fundamentally different. It is not built on power, control, or dominance. I...

2026 May 3rd - Morning Sermon Reflection:Bearing Burdens and Carrying Our Load

Image
Bearing Burdens and Carrying Our Load This past Sunday morning, our pastor preached the final message in a series on caring for one another, based on Galatians 6:2–10. As I listened, one idea stayed with me: there is no “one-size-fits-all” encouragement when it comes to life in the church. Some people are already deeply involved—serving, visiting, praying, giving. Others are more on the sidelines. And many of us are somewhere in between. But this passage speaks to all of us. The sermon highlighted three reasons why we care for one another: To fulfill the law of Christ To carry our own load To reap eternal life 1. Bearing One Another’s Burdens The pastor began with a simple but powerful command: “Bear one another’s burdens.” He described how every person carries something—guilt, sorrow, anxiety, or hidden struggles. Some burdens are visible, others are not. What stood out to me was the reason behind it: not just to make life ea...

A Small Update on Language

Image
A Small Update on Language Hi everyone, Going forward, this blog will primarily publish posts in English. Previously, I shared content in both English and Chinese, but to keep things more consistent and sustainable, I’ll now focus on writing in English. If you prefer reading in another language, you can use the translation tool on the site to view posts in your preferred language. Thank you for your continued support!

Stripe Webhook Not Triggering Locally? A Deep Dive Into the Real Cause (and Fix)

Image
Stripe Webhook Not Triggering Locally? A Deep Dive Into the Real Cause (and Fix) Testing Stripe integrations locally is usually straightforward—until it isn’t. One of the most frustrating issues developers run into is this: Your test payment succeeds… but your webhook never fires. Use this quick navigation to jump to key sections: Understand the webhook flow (diagram) Common root cause: account mismatch Step-by-step debugging checklist Best practices to prevent this issue More in-depth Stripe integration guides (subscriptions, production setup, and advanced webhook handling) will be added soon. Understanding How Stripe Webhooks Work Locally Before diving into the issue, it’s important to understand the flow of events when working with Stripe locally. This diagram shows how events move through your system: The frontend triggers a payment request Your backend calls Stripe APIs Stri...

2026年4月26日 主日下午听道反思: 在信仰中选择更艰难的道路

Image
在信仰中选择更艰难的道路 今天的讲道一开始,用一个很生活化的例子:在材料不齐全的情况下尝试做鸡肉蓝带。虽然听起来有点幽默,但它引出了一个很深的属灵提醒——我们常常倾向于用“捷径”去获得好的结果。 这让我反思自己的生活。很多时候,我也更喜欢用更快、更容易的方式去完成一些“好的目标”,无论是在工作、人际关系,甚至在属灵生命中。我想要结果,却不愿意等待过程;想要解决问题,却不愿意经历困难。 关于耶稣在旷野受试探的内容,对我有很大的提醒。魔鬼提出的每一个试探,看起来都很合理:解决饥饿、获得权柄、证明神的保护。但耶稣却一一拒绝。 让我特别有感触的是,这些并不一定是“坏的东西”,而是“错误的方式、错误的时间、错误的途径”去获得它们。耶稣教导我们,顺服神不仅是避免罪,更是相信神的时间与方式是最好的。 第三个试探尤其触动我:要求神“证明祂自己”。我也常常在无意中期待神用某种明显的方式来证明祂的带领与爱。但耶稣选择的不是试探神,而是在不确定中依然信靠神。 讲道提醒我:困难并不代表神不在。相反,有时候艰难的道路,正是神的爱与计划最深刻显明的地方。 总结来说,这篇信息让我有三个主要的反思: 不要为了好的结果而走捷径 信靠神的时间与方式,而不是只追求结果 在顺服中成长,即使道路不容易 最终,跟随基督意味着:选择信靠,而不是控制;选择顺服,而不是方便。

2026 April 26th - Afternoon Sermon Reflection:Choosing the Harder Path of Faith

Image
Choosing the Harder Path of Faith Today’s afternoon sermon began with a simple story about trying to make chicken cordon bleu without the right ingredients. It sounded humorous, but it pointed to a deeper truth: we often try to take shortcuts when we want good results. This made me reflect on my own life. Many times, I also prefer the easier or faster way to achieve something good—whether in work, relationships, or even spiritual life. I want results without waiting, and solutions without struggle. The message about Jesus’ temptation in the wilderness was especially meaningful. Each temptation offered something that seemed reasonable: food for hunger, authority over kingdoms, and proof of God’s protection. Yet Jesus refused all of them. What struck me most is that these were not necessarily “bad things,” but rather “wrong ways, wrong timing, and wrong means” to obtain them. Jesus shows that obedience is not only about avoiding sin, but also about trusting God’s timing and metho...

2026 April 26th - Morning Sermon Reflection:Till Now the Lord Has Helped Us

Image
Ebenezer—Till Now the Lord Has Helped Us Today’s morning message reminded me again that even after Israel’s failure and spiritual wandering, God, in His great mercy, continued to draw them back to Himself. The twenty years of silence did not mean that God had abandoned them. Rather, it showed His patience in waiting for their repentance. This leads me to reflect on my own life—when I grow spiritually cold or distant, do I fail to recognize that God is still at work in my heart? Samuel called the people to repentance—not merely emotional sorrow, but a decisive turning away from idols and a wholehearted return to the Lord. This made me realize that although I do not bow to physical idols today, I can easily elevate comfort, success, relationships, or self-worth above God. These things can quietly become idols in my life. Jesus said, “No one can serve two masters.” I need to honestly ask myself: what do I truly trust in and value most? In the second part, I was especially struck by ...