
Co-Founder @LifePlanner_co. Engineering @spairally . Engineering Educator @reduzer_tech
Joined March 2021
- Tweets48.4K
- Following1.7K
- Followers8.2K
- Likes88.6K
SamProgramiz retweeted
Mkuje muone nikiongelea some technical things huko Fluttercon
๐ข ๐ฆ๐ฃ๐๐๐๐๐ฅ ๐๐ก๐ก๐ข๐จ๐ก๐๐๐ ๐๐ก๐ง! ๐
Stop writing boilerplate method channels just to call native code. You don't have to leave Dart.
Welcoming ๐ ๐ฒ๐น๐ธ๐๐ฒ๐ฑ๐ฒ๐ธ ๐๐ต๐ผ๐๐ถ (@chotixity), Software Engineer, to #flutterconke26 & #dcke26!
๐๏ธ "๐๐ผ๐ถ๐ป๐ด ๐ก๐ฎ๐๐ถ๐๐ฒ ๐ถ๐ป ๐๐ฎ๐ฟ๐: ๐๐ถ๐ฟ๐ฒ๐ฐ๐ ๐ก๐ฎ๐๐ถ๐๐ฒ ๐๐ป๐๐ฒ๐ฟ๐ผ๐ฝ ๐๐ถ๐๐ต ๐๐ก๐๐ด๐ฒ๐ป & ๐๐๐๐ด๐ฒ๐ป"
Here is what Melkzedek will unpack:
โข ๐๐ถ๐๐ฐ๐ต๐ถ๐ป๐ด ๐ ๐ฒ๐๐ต๐ผ๐ฑ ๐๐ต๐ฎ๐ป๐ป๐ฒ๐น๐: When direct native interop is the better choice.
โข ๐จ๐ป๐ฑ๐ฒ๐ฟ ๐๐ต๐ฒ ๐๐ผ๐ผ๐ฑ: How JNIgen and FFIgen auto-generate type-safe Dart bindings.
โข ๐๐ฒ๐ฐ๐ถ๐๐ถ๐ผ๐ป ๐ ๐ฎ๐๐ฟ๐ถ๐
: Knowing exactly when to reach for JNIgen vs. FFIgen.
โข ๐๐ป๐ฑ-๐๐ผ-๐๐ป๐ฑ ๐ช๐ฎ๐น๐ธ๐๐ต๐ฟ๐ผ๐๐ด๐ต: Calling native Android and iOS APIs straight from Dart.
๐ Session breakdown: bit.ly/chotiFlutterconke26
Step Beyond Stacks with us this November in Nairobi! ๐ฐ๐ช
๐ Nairobi | Nov 5โ6
๐๏ธ Lock in your ticket: bit.ly/dcKE2026Tickets
SamProgramiz retweeted
Ever hit the end of the month and wonder, "Wait, where did all my money go?" ๐ค๐ธ
Itโs time to stop guessing. Life Planner makes tracking your spending effortless.
Hereโs a quick 3-step guide to setting up your budgets. ๐๐งต
SamProgramiz retweeted
Design your day with purpose. Life Planner lets you schedule, prioritize, and set remindersโall in one place.
Download now: App Store: thelifeplanner.co/apple/x | Google Play Store: thelifeplanner.co/play/x
#Scheduling #TimeManagement
SamProgramiz retweeted
Replying to @SamProgramiz
Do you devs hate intro and explainer video or getting a designer is the problem or you guys think it expensive to have one!
I create such videos for Playstore.
SamProgramiz retweeted
Start your day organized with just a tap! Quickly add tasks, set due dates, and prioritizeโLife Planner helps you stay on top of it all!
Download now: App Store: thelifeplanner.co/apple/x | Google Play Store: thelifeplanner.co/play/x
#Productivity #TaskManagement
SamProgramiz retweeted
When I get a 200 from the request, I create a pending transaction with the checkout request id.
I match incoming callbacks against it.
This also helps with manual queries if the callbacks fail to arrive.
Weโll still acknowledge receipt of the Webhook even if we failed to match it to any transaction.
You can take this further by adding auth tokens to the callback urls, whitelist IP addresses but, if you can guess the merchant request ID that is in a pending transaction, you deserve the spoils of the loot.
When you send the Express request, you get the two unique values.
MerchantRequesrID and CheckoutRequestID.
These are your first line of defence. Validate your webhooks against them. It should match at lease one record with this.
Daraja is well designed even though they donโt follow webhooks best practices like signing payloads. But you have to understand, a lot of what Mpesa Express is, is unique to what most of the industry does.
Also rate limit failures.
SamProgramiz retweeted
Stop guessing where your money goes.
Meet Life Planner: the all-in-one hub for your tasks, habits, journaling, and finances.
Want to master your budget? Hereโs a quick 1-step guide to getting your spending in check. ๐๐งต
SamProgramiz retweeted
This year, Iโm skipping the trip to Uganda for #DroidconUg, as much as Iโm a speaker. It came a little too early, and I need time to rest after #StanChartMarathon 2026. Besides, I canโt afford the fare right now. Itโs not yet the end month! ๐
So, Iโll do my session virtually.
SamProgramiz retweeted
Developers, this is for you. please take your payment callbacks seriously. ๐
Yesterday, out of curiosity, I tested an M-Pesa integration on a critical live system. To my shock, I was able to submit a crafted payload that resulted in a payment being marked as successful.
Never trust a payment callback blindly.
Best practices:
- Verify callbacks against the payment provider.
- Validate the Merchant Request ID and transaction details.
- Verify payment status independently where possible.
- Restrict callback access by IP where supported.
- Make callbacks idempotent to prevent duplicate processing.
- Never mark a payment as successful based on an unverified payload.
One weak payment integration can undermine the integrity of an entire system.
Security is not just about protecting your APIs. It's about protecting the business logic behind them. ๐
SamProgramiz retweeted
Understanding is the noblest of pursuits. People who actively strive to understand are pushing against uncertainty. People who give up on understanding are willingly falling into chaos.
SamProgramiz retweeted
Men receive flowers on one day in their entire lives, and they're never there to smell them.
Thank you, G. It means a lot coming from you ๐.
open.spotify.com/track/6bKnAโฆ
I shot a friendship shot to the guy who hacked my startup in 2014, @its_eknock....๐ฅฒ
Since then he's been teaching LO1 and I how to code; LO 1's year 11 project is a ticketing app for school attendance!
Mimi, I am creating the app I always wanted.
Iron sharpens iron๐
SamProgramiz retweeted
Replying to @daveclintonn
Wee Dave, kwani mi huduu?
Ebu waambie kuna engimeets.com/atlas
Atlas connects all the stuff in logistics into one system. From crm, to commercial, to fleet management, to finance, procurement of fuel, tires and other parts
In short, Atlas has all your need run a logistics company






































