Skip to main content

ยท 5 min read
Emmanuel Muturiaโ„ข

Know Your Meme ๐Ÿคฃโ€‹

Alt text

Welcome & Hello! ๐Ÿซ‚โ€‹

Alt text

Whoa whoa relax guys. We know that you dearly missed us and we missed you too. Winter Season may have separated us but we are here yet again to occupy your professional lives and help you achieve your goals. Do we even need to tell you how this month is different from the rest? Did you not see our poster? Well, join us in this episode as we uncover what Android254 and Kotlin Kenya have been up to this month. This is Episode #21 of The Kotlin Kenya Newsletter!

Alt text

The Kotlin Bits Challenge ๐Ÿง โ€‹

Alt text

To supercharge our attendees' problem-solving skills, we had them attempt an easy LeetCode problem. If you are up for it, feel free to submit your solution to us and who knows, you just might win a prize...

Asynchronous Programming with Coroutines ๐ŸŒ€โ€‹

Alt text

Joining us from the city of Abuja, Michael Obi took the stage (well, screen as it was virtual but you get the idea) and made the audience understand why Asynchronous Programming was important in the first place. Using screenshots from a language that we shall not name, he demonstrated different use cases for Threads within the context (pun intended) of expensive tasks...

The Open Bar Session ๐Ÿ’ฌโ€‹

Alt text

To conclude the meetup, we had an Open Bar session that was kickstarted by Emmanuel Muturiaโ„ข who showed off ArtMaker to the audience and encouraged them to check it out and learn more about the Canvas API in Jetpack Compose. Next, Samuel Juma demonstrated SuperStocks which is a compose multiplatform project that gets Realtime data for the top 10 companies around the world, by market capitalization and was designed to work on Kotlin Multiplatform (KMP), and is of course the new kid in the block of Android App Development (AAD). This was followed by Oscar Karuga who made a comeback by introducing the community members to FeynmanAI which is a powerful command-line tool that leverages the Retrieval-Augmented Generation (RAG) model to interact with local documents. Whether you want to query your documents for specific information or quiz yourself on the contents, FeynmanAi offers an intuitive interface to get answers and enhance your understanding.. Lastly, the attendees were educated on Paystack as a FinTech product and did you know that they were recently acquired by Stripe?

DroidCon Kenya 2024 ๐ŸŽŸ๏ธโ€‹

Alt text Alt text

Have you still not bought your tickets to the most exciting annual event in the history of Android in Kenya? ๐Ÿคฆโ€โ™‚๏ธ If we said that we had more goodies (and that is a big "If") for the first few buyers then would that motivate you to head over to droidcon.co.ke and get your tickets? There you go then, you sneaky developers. ๐Ÿ˜ Head over to droidcon.co.ke and grab your tickets as you never know what awaits you from the 6th to the 8th of November this year... ๐Ÿ™ƒ

The Newset GDE in Town ๐Ÿ•บโ€‹

Alt text

If you have been around for a while, then you will understand that certain things were just a matter of time. What we are about to announce is certainly at the top of the list. Without wasting any time, join us in congratulating The Chief Senior Dishwasher in being officially recognised by Google as a Google Developer Expert (GDE) for Android! Thus, to mark the initiation complete, we officially declare him as The Chief Senior Dishwasher, GDE...

Feature of The Month ๐Ÿ™Œโ€‹

ArtMaker ๐ŸŽจโ€‹

Alt text

Are you interested in learning more about the Canvas API and Custom Drawing in Jetpack Compose? Would you like to unlock the Picasso (not the library) in you programmatically? Look no further as we would like to present to you ArtMaker by Ferdinand Bada, Caleb Langat, and Emmanuel Muturiaโ„ข. ArtMaker is a flexible and customisable library that allows users to draw anything they want on screen and has been built fully with Jetpack Compose. It allows drawing through the Canvas, sharing the drawn Bitmap, or programmatically exposing the Bitmap for use in the calling application...

Before You Go... ๐Ÿƒโ€โ™‚๏ธโ€‹

Do you want to have your product (app, article, video, etc) featured in the next episode? Worry not for all you need to do is reach out to us at either Android254 or Kotlin Kenya and include the details of your product. What are you waiting for? Let us get to work, shall we?

Until September ๐Ÿซ‚โ€‹

It is at this point that we acknowledge our new beginnings and pledge ๐Ÿคš to have a transformative 2024. We have journeyed, are journeying, and will still journey with you. Gears are about to be shifted (Tech Bros please calm down) in your favour. If you would like to level up your career in Android, then attending the monthly meetups, building cool stuff in public, and interacting with community members should be a part of your routine. We cannot wait to hear and share your stories. See you in September! ๐Ÿ‘‹

Alt text

Credits ๐ŸŽฌโ€‹

1. Newsletter Writing, Editing, and Publishingโ€‹

2. Speakersโ€‹

3. The KotlinBits Challengeโ€‹

4. Announcementsโ€‹

5. The Open Bar Sessionโ€‹

6. Meetup Host and Sponsorโ€‹

7. Newsletter Sponsorsโ€‹


ยท 3 min read
Emmanuel Muturiaโ„ข

Welcomes & Hellos! ๐Ÿซ‚โ€‹

Winter Season is here, fellow Android Developers! As you keep on building while sipping your favourite hot beverage, we would like to entertain you with the usual monthly compensation. While we genuinely wish it came with a dollar sign and lots of zeros at the end, we believe that ours will most certainly get you there. This is Episode #20 of The Kotlin Kenya Newsletter!

Alt text

The Virtual Opening Sessionโ€‹

Alt text

This meetup was not your ordinary one and in case you did not catch it, this is KotlinConf' Nairobi! Can you believe that? Kotlin's biggest event was held not just in Coppenhagen but in Nairobi too. Well, the extended version at least but it is something, nonetheless. As you know and are probably sick of hearing by now, we take great pride in the speakers that grace our stages and the one who opened the ceremony was no exception as she is, well, exceptional. Pamela Hill was kind enough to mark the event open and offer various insights on KotlinConf' 2024...

The KotlinConfGlobal: Nairobi Challengeโ€‹

Alt text

Do you remember what we said about a challenge where the top 3 contestants would receive goodies? Guess what? It happened and do we even need to tell you how excited The Chief Senior Dishwasher was when he concluded The KotlinConfGlobal: Nairobi Challenge and awarded the winners?

The Amper Moment (Goodbye, Gradle?)โ€‹

Alt text

As if we did not have any more value to offer, we had The Chief Senior Dishwasher who wasted no efforts in ranting, sorry we mean educating the audience on Amper, which we honestly know as The Gradle Destroyer. He took the attendees through how Amper aims to improve the developer experience for Android and KMP development. Are you as patient (impatient, rather) as we are for its official release?

Until July ๐Ÿซ‚โ€‹

It is at this point that we acknowledge our new beginnings and pledge ๐Ÿคš to have a transformative 2024. We have journeyed, are journeying, and will still journey with you. Gears are about to be shifted (Tech Bros please calm down) in your favour. If you would like to level up your career in Android, then attending the monthly meetups, building cool stuff in public, and interacting with community members should be a part of your routine. ๐Ÿ’ฏ We cannot wait to hear and share your stories. See you in July! ๐Ÿ‘‹

Alt text


ยท 6 min read
Emmanuel Muturiaโ„ข

Know Your Meme ๐Ÿคฃโ€‹

Alt text

Welcomes & Hellos! ๐Ÿซ‚โ€‹

As a non-Large Language Model, Android254 and Kotlin Kenya officially welcome you to The May Edition of The Kotlin Kenya Newsletter! ๐Ÿคฉ See, before we dive deep into this month's issue, let us mention that we have some goodies to offer and claim them all you need to do is read this newsletter to the end. Unlike a certain red football โšฝ team, you have full control of the game and losing is virtually impossible. Alright, jokes aside (including the team itself). Have a lovely read ahead. ๐Ÿ˜‰ This is Episode #19 of The Kotlin Kenya Newsletter!

Alt text

The April Challenge ๐Ÿง โ€‹

Alt text

DSA Gurus, please calm down. After a lengthy waiting period (how inefficient of us ๐Ÿ˜ฎโ€๐Ÿ’จ) since our previous announcement, The Chief Senior Dishwasher has put up The April Challenge. Do we even need to tell you to head over there to solve it at this point? Go on, now. Flex those algorithmic muscles ๐Ÿ’ช and show off your LeetCode skills to your fellow programmers while hoping to somehow apply them in your Take Home Assignments... ๐Ÿคก

Designing Scalable Compose APIs ๐Ÿ‘จโ€๐Ÿ’ปโ€‹

Alt text

Bonjour! If you thought that we had the last encounter of Yves Kalume, GDE ๐Ÿ‡จ๐Ÿ‡ฉ, then nous sommes dรฉsolรฉs for we pride ourselves in our international reach. โœˆ๏ธ Armed with his expertise and experience working with Jetpack Compose, Yves walked the audience through Designing Scalable Compose APIS by explaining the Dos and Don'ts of the same. From Detecting Quality APIS to Component Layering to Component Nomenclature, The GDE (Android) ensured that the attendees walked out of the room fully armed with the knowledge they needed to design and scale their Compose APIs...

What's New in Android, Development Tools, and Google Play ๐Ÿ“ฑโ€‹

Alt text

You might want to get a king-sized bucket of popcorn ๐Ÿฟ for this section as it was a show to remember. Being an Android Engineer comes with its fair share of pain ๐Ÿฅฒ often prescribed and administered by Google. As if to console the internal tears of afflicted developers and his fellow Arsenal supporters, Mr. Arsenal played therapist and conducted a session to discuss the challenges faced by Android Engineers when deploying their apps to the Google Play Store. Various individuals shared their areas of concern while some confessed that they had their accounts banned and were left with no choice but to do nothing but hope for a miracle. Mr. Arsenal gave his takes on the issues discussed and even offered helpful tips and tricks for handling the strict guidelines issued by Google. Arsenal finally did deliver something, did they not? ๐Ÿคง

DroidCon Kenya 2024 ๐ŸŽŸ๏ธโ€‹

Alt text

Have you still not bought your tickets to the most exciting annual event in the history of Android in Kenya? ๐Ÿคฆโ€โ™‚๏ธ If we said that we had more goodies (and that is a big "If") for the first few buyers then would that motivate you to head over to droidcon.co.ke and get your tickets? There you go then, you sneaky developers. ๐Ÿ˜ Head over to droidcon.co.ke and grab your tickets as you never know what awaits you from the 6th to the 8th of November this year... ๐Ÿ™ƒ

The Goodies (feat. KotlinConf' 2024) ๐ŸŽโ€‹

Alt text

Did you know that courtesy of Juma Allan and Kiptoo Mfon-Abasi, we received some giveaway copies ๐Ÿ“š of Mastering Kotlin for Android 14: Build powerful Android apps from scratch using Jetpack libraries and Jetpack Compose that we would like to gift you? Yes. We just promised you the chance to win some goodies, did we not? While the bad news is that three of them were already gifted during The May Meetup, the good news is that the remaining copies are still available for you and all you need to do is...๐Ÿฅ๐Ÿฅ๐Ÿฅ...build a Kotlin Multiplatform app. In addition to commemorating Google I/O 2024, we are thrilled to announce that we will be hosting a recap of KotlinConf' 2024 during the next meetup. In addition to that, we have promised to award the remaining copies to the best 3 Kotlin Multiplatform apps built and voted by you. What are you waiting for? You should have already launched your favourite IDE and set up your project already. Build, get voted as one of the top 3, and win a copy of pretty much the best book if you have an aspiration of owning a German Machine courtesy of your mastery in Android App Development in Kotlin.

Check out our socials for more updates... ๐Ÿ‘€

What Have Our Community Members Been Up To? ๐Ÿคทโ€โ™‚๏ธโ€‹

1. How To Make Your Android App Extra Reactive (feat. Firebase Cloud Firestore) ๐ŸŒ€โ€‹

Are you a Firebase ๐Ÿ”ฅ user who has been struggling to make your Android app reactive to changes made in your database in a real-time fashion? If that is you, then smile ๐Ÿ˜ƒ and go back to your project as you read How To Make Your Android App Extra Reactive (feat. Firebase Cloud Firestore) by Emmanuel Muturiaโ„ข. Read, learn, and build reactive Android apps with Firebase Cloud Firestore using Kotlin Flows and Snapshot LIsteners. Also, give it a shoutout ๐Ÿ—ฃ๏ธ and share with your fellow nerds while you are at it, will ya?

Alt text

2. Event Countdown โฒ๏ธโ€‹

If time truly is money ๐Ÿ’ฐ, then you are about to become rich as we are excited to unveil to you Event Countdown built by The Choxx. Do you have trouble tracking important event dates ๐Ÿ—“๏ธ and the last place you want to be at is Google Calendar? Today is your lucky day for the app is user-friendly and will help you keep up with important dates while minimising clutter using widgets that you can easily set up on your home screen. Say goodbye to disappointing your loved ones and hello to being the best you can be for them... ๐Ÿ‘ช

Alt text

Until June ๐Ÿซ‚โ€‹

It is at this point that we acknowledge our new beginnings and pledge ๐Ÿคš to have a transformative 2024. We have journeyed, are journeying, and will still journey with you. Gears are about to be shifted (Tech Bros please calm down) in your favour. If you would like to level up your career in Android, then attending the monthly meetups, building cool stuff in public, and interacting with community members should be a part of your routine. ๐Ÿ’ฏ We cannot wait to hear and share your stories. See you in June! ๐Ÿ‘‹

Alt text

Credits ๐ŸŽฌโ€‹

1. Newsletter Writing, Editing, and Publishingโ€‹

2. Speakersโ€‹

3. The April Challengeโ€‹

4. DroidCon Kenya 2024 (Announcements)โ€‹

6. Meetup Hostsโ€‹

7. Newsletter and Meetup Sponsorsโ€‹


ยท 7 min read
Emmanuel Muturiaโ„ข

Know Your Meme ๐Ÿคฃโ€‹

Alt text

Welcomes & Hellos! ๐Ÿซ‚โ€‹

Hello and hello again, everyone ๐Ÿ‘‹! How are you all? We hope that you are safe and sound despite the reenactment of The Noah Floods ๐ŸŒŠ. We are not referring to this Noah but you get the idea ๐Ÿคทโ€โ™‚๏ธ. Without wasting any time, here is a recap of what happened this month within the Android254 and Kotlin Kenya communities. This is Episode #18 of The Kotlin Kenya Newsletter:

Alt text

The April Challengeโ€‹

Alt text

Do you love a good Linked List Manipulation Session? Are you a DSA guru who drools over reversing, recursing, and linking Linked Lists? ๐Ÿฅต Whether you are or not, The Chief Senior Dishwasher unveiled The April Challenge. It featured Recursion ๐ŸŒ€ as the concept of choice to make the Test Cases pass. Let us do this one more time: Would you like to win some merch by JetBrains? If so, then be ready to fire up The Kotlin Playground and solve The April Challenge when it drops at KotlinBits.

Exploring Canvas in Jetpack Compose for Better UI Experiences ๐ŸŽจโ€‹

Alt text

The Hutsy Developer made good use of an ice breaker (if you know you know) โ›๏ธ to introduce his session on working with Canvas in Jetpack Compose. Like the Tech Bro that he is, Josphat Mwania used the Audi logo to demonstrate how to work with Canvas in Jetpack Compose using the Canvas API. Josphat concluded his session by challenging the audience to apply what they learnt to draw either the Instagram logo or the Facebook logo. The Senior Teaman took up the challenge and submitted this solution.

Exploring Mobile Release Management: Strategies & Best Practices ๐Ÿ“Šโ€‹

Alt text

If you hate complex release processes when it comes to Mobile Releases, then you no doubt need to check out The State Machinist's presentation on the different strategies and best practices of Mobile Release Management. He extensively talked about Release Management, The Challenges of Mobile Release Management, and The Solutions too. To learn more, check out his presentation. ๐Ÿ“ˆ

Configuring WorkManager: Running Tasks in The Background ๐Ÿ”งโ€‹

Alt text

Finally, we were served (pun intended but keep reading even if you do not understand) with a taste of Background Process Scheduling using WorkManager by Joel Muraguri. He used a simple Reminder app to demonstrate the steps needed to implement WorkManager in Android to schedule ๐Ÿ—“๏ธ background tasks.

Food for Thought ๐Ÿ’กโ€‹

Alt text

  • Do you think WorkManager will work when a user toggles "Background Processes" off on his/her app settings? โš™๏ธ Why?

  • If you schedule a task, say 10 minutes โฒ๏ธ from now, do you think it will be executed if the app is not in the foreground when the time comes for the task to be executed? Why?

  • Why do you think WorkManager and AlarmManager are different in The Android SDK? ๐Ÿงฐ

DroidCon Kenya 2024 ๐ŸŽซโ€‹

Alt text Alt text

You are going to have to grab some powder as these announcements deserve an applaud ๐Ÿ‘ from you. Without wasting any time, here is a rundown of everything you need to know about DroidCon Kenya 2024:

  • DroidCon Kenya 2024 will be happening from the 6th to the 8th of NOvember 2024...
  • FlutterCon Kenya 2024 will be hosted alongside DroidCon Kenya 2024 as we believe in equality across Mobile frameworks (except Javascript frameworks)...
  • The DroidCon Kenya Android App is open for contribution so if you want to be featured in The Contribution Hall of Fame then better get your hands dirty and contribute!

Hello From Congo ๐Ÿ‡จ๐Ÿ‡ฌโ€‹

Alt text

The April Meetup did not just host The State Machinist as the only guest. All the way from Congo, we had Yves Kalume, GDE come say hello and tour this lovely region of ours. The duo ๐Ÿ‘ฅ appreciated the level of engagement witnessed to the audience and commended them for their passion and contributions to the community.

The Community Showcase ๐Ÿ’ชโ€‹

1. Chronosโ€‹

Alt text

Thanks to Felix Biego, you can now keep your smartwatch synced and never miss a notification ๐Ÿ›Ž๏ธ on your wrist. Discover the fascinating development journey behind Chronos, the revolutionary smartwatch companion app that redefines your health and fitness experience.

2. Sokaโ€‹

Alt text Alt text Alt text Alt text

Football โšฝ fans have not been left behind as we are proud to feature Soka, an Android app that works out your game predictions coupled with the following features:

  • Live Scores
  • Match Details
  • Videos & Highlights
  • Match Stats

The app is built by The Choxx so please thank him whether your predicitions go through or not.

3. Measure Code Execution Time in Kotlinโ€‹

Alt text

Have you always wondered what Android Interviews look like? If you thought that this is another iteration of DSA then brace yourself. Why? Valentine Rutto recalled an Android Interview where she was tasked with writing a function that predicts flooding given amount of rain and area in square meters and finally measure its code execution time. โฑ๏ธ Check out her Medium article to learn how you could approach such a use case instead of fumbling and collapsing during the interview.

4. Mastering Kotlin for Android 14: Build powerful Android apps from scratch using Jetpack libraries and Jetpack Composeโ€‹

Alt text

Do you remember when we asked you to pre-order His Expertness's book in preparation for your mastery in Android Development, the Jetpack Compose way? Get your credit/debit card ready as the book is finally out! Yes, Mastering Kotlin for Android 14: Build powerful Android apps from scratch using Jetpack libraries and Jetpack Compose is finally out and we urge you to make the purchase as soon as you read this. Seriously though, what better way is there for learning and mastering Android other than from a Googe Developer Expert (GDE)? Hurry up, then! Order the book ๐Ÿ›’, master your skills ๐Ÿง , apply them in finding and solving problems ๐Ÿงฉ, get paid ๐Ÿ’ฐ, and purchase your German Machine ๐ŸŽ๏ธ sooner than later.

Until May ๐Ÿซ‚โ€‹

It is at this point that we acknowledge our new beginnings and pledge to have a transformative 2024. We have journeyed, will still journey with you and gears are about to be shifted (tech bros please calm down) in your favour. If you would like to level up your career in Android, then attending our Monthly Meetups, building cool stuff in public, and interacting with our members should be a part of your routine. We cannot wait to hear and share your stories. See you in May! ๐Ÿ‘‹

Alt text

Credits ๐ŸŽฌโ€‹

1. Newsletter Writing, Editing, and Publishingโ€‹

2. Speakersโ€‹

3. The April Challengeโ€‹

4. DroidCon Kenya 2024 (Announcements)โ€‹

6. Meetup Hostsโ€‹

7. Newsletter Sponsorsโ€‹


ยท 8 min read
Emmanuel Muturiaโ„ข

Welcomes & Hellos!โ€‹

Alt text

If laughter is the best medicine then we are no doubt the best doctors ๐Ÿ’‰ in Kenya for our attendees had quite some laughs during The March Meetup courtesy of our lively speakers. Even if you did not get the chance to attend The March Meetup, worry not for this release will simulate them as we believe in leaving no man (or woman) behind. This is Newsletter #17:

Keeping Your Software Fresh: How Renovate Simplifies Dependency Updatesโ€‹

Have you ever struggled to keep your dependencies up to date in this dynamic field of Android? Or even worse, have you ever had to deal with Ancient Dependencies? You would be forgiven after thinking that Dependabots were the only solution to this unfortunate circumstance. What if we told you that there was another way? ๐Ÿ˜ฎ What if we told you that it prioritises Automation? Yes, people of DevOps. This new option targets you too. Without wasting any time, Brandy Odhiambo introduced Renovate as an automated solution that seeks to ease the process of Dependency Management. In fact, we dare to say that Renovate might be better for you compared to Dependabots thanks to:

  • The Dependency Dashboard that provides all of the information you need regarding your dependencies...
  • The ability to upgrade common monorepo packages...
  • The Multi-Platform support...
  • The ability to show log changes...
  • The ability to run as often as it is allowed to run...

Alt text

Say goodbye to Ancient Code (Interns and Juniors we are watching you) and say hello to Automation...

State Management in Jetpack Composeโ€‹

Speaking of Ancient Code, are you still stuck writing your UI in XML and would like to migrate to Jetpack Compose? Would you like to take a step further and learn about State Management in Jetpack Compose? We had The Beerman take us through State Management where he implemented The Beer App ๐Ÿบ to demonstrate the same.

Alt text

Here are a few pointers that were discussed during this session:

  • State and State Management...
  • State Hoisting...
  • Definition of State in Kotlin (Jetpack Compose)...

Stay tuned for a potential Part 2 of this elaborate session ๐Ÿ˜‰...

Get Started with Gemini on Androidโ€‹

From ChatGPT to Dall-E and now Devin, AI seems to be moving faster than most of us thought. Whether that is a good or bad thing, we cannot deny that AI is here to stay and we are all better off understanding it even at a basic level.

Alt text

Given that we do not want our developers to be rendered obsolete, we invited The Droidette to conduct a workshop on Getting Started with Gemini on Android. She made use of Chat Buddy to demonstrate the power of Machine Learning through Artificial Intelligence using The Gemini API in Android. The audience was in awe for this marked a revolution of sorts in the potential of AI in building attractive โ‡๏ธ, user-friendly ๐Ÿค—, robust ๐Ÿฆพ, and testable ๐Ÿงช Android apps...

The March Challengeโ€‹

Are you a lover of Data Structures and Algorithms? Do you not just love a good LeetCode session where Performance ๐Ÿ“ˆ is your love language? Worry no more for whether you like it or not, we decided to feature Linked Lists in The March Challenge anyway ๐Ÿคทโ€โ™‚๏ธ:

Alt text

Oh no. We did not just stop there. Android254 and Kotlin Kenya firmly believes in Test Driven Development (TDD). "Yes that is great and all, but how does that relate with the March Challenge?" That is the best question you could have asked for all you need to do is click me and test your Testing skills. See what we did there? ๐Ÿ˜

DroidCon Kenya 2024โ€‹

The early bird ๐Ÿฆ catches the worm ๐Ÿชฑ. While we will not be catching worms any time soon, we are proud to announce that DroidCon Kenya 2024 will be happening from the 6th to the 8th of November this year.

Alt text

The Teaman made this announcement and gave the following pointers that we would like you to have:

  • Contributions to The Droidcon Kenya Android App on GitHub are still open and if you would like to spice up your resume ๐Ÿ“„, get access to a simulated work environment ๐Ÿ–ฅ๏ธ, or even gain bragging rights in matters Open-Source ๐Ÿ‘ฅ, then please check out The Issues listed and get to work!
  • Did we mention that the event will be happening from the 6th to the 8th of November? ๐Ÿค”
  • DroidCon Kenya will be turning 5๏ธโƒฃ so the event will be a rather special one to commemorate half a decade of fun and learning...

1. Mastering Kotlin for Android 14: Build powerful Android apps from scratch using Jetpack libraries and Jetpack Composeโ€‹

Alt text

His Expertness will be launching his book: Mastering Kotlin for Android 14: Build powerful Android apps from scratch using jetpack libraries and Jetpack Compose on the 5th of April. Do you want to finally master Android(Kotlin), get that 6-figure job, and finally buy that German Machine? ๐Ÿš— Well, then what are you waiting for? Pre-order the book here and get to work!

2. Asking Efficientlyโ€‹

Alt text

Juniors, this one is for you ๐Ÿฅบ. Have you ever been stuck on a coding problem and did not know who or how to ask for help? Do you ever feel like you are a bother to those you ask questions? Would you like to ask better questions using better methods (pun unintended)? If that is the case, look no further than this article which will guide you on how to ask efficient questions as written by a Senior...

3. Sain (ใ‚ตใ‚คใƒณ)โ€‹

Alt text

Would you care to try out a tool that would allow your users to write signatures in your app? Drum rolls ๐Ÿฅ please for we are excited to unveil Sain (ใ‚ตใ‚คใƒณ) to you! Sain (ใ‚ตใ‚คใƒณ) is a Compose Multiplatform library built by Joel Kanyi for capturing and exporting signatures as ImageBitmap with customizable options. Perfect for electronic signature, legal documents and more...

4. Palette Lab - Color Pickerโ€‹

Alt text

If you genuinely thought that we forgot about UI/UX Design then your delusions are easily comparable to those of J*va programmers ๐Ÿคก. Palette Lab - Color Picker is primarily built for developers, designers, and anybody with an interest in aesthetic - related activities like fashion or photography. It helps you explore color as well as see what color combinations best suit whatever your interest is, allowing you to keep a rich collection of colors and palettes. Thank Augustine Ndung'u for this empathetic design product...

5. NRBSTEPPERโ€‹

Alt text

Are you interested in fashion and expanding your wardrobe beyond Tech swags? Would you like to purchase your next outfit based on a product built by one of our community members? Check out NRBSTEPPER as built by Alloys Amasakha and let the dripping begin! ๐Ÿ•ถ๏ธ

6. Jammo Sportsโ€‹

Alt text

Football โšฝ fans are allowed to cheer further for we are proud to introduce Jammo Sports. As its creator put it, "It is a platform to display all the sporting events majorly those happening in the African continent. It's a football platform meant for live match events converage, giving info about teams, competitions, upcoming fixtures and game results...

7. Navigating The Obstacles of Navigation Composeโ€‹

Alt text

Do you want to prevent your Android app from crashing using one โ˜๏ธ simple trick in Compose Navigation? Check out this article that describes the pitfalls of using explicit navigation destinations and a simple solution to curb the same. The article was written by Peter Chege...

Until Aprilโ€‹

It is at this point that we acknowledge our new beginnings and pledge to have a transformative 2024. We have journeyed, will still journey with you and gears are about to be shifted (tech bros please calm down) in your favour. If you would like to level up your career in Android, then attending our Monthly Meetups, building cool stuff in public, and interacting with our members should be a part of your routine. We cannot wait to hear and share your stories. See you in April ๐Ÿ‘‹...

Alt text

Creditsโ€‹

1. Newsletter Writing, Editing, and Publishingโ€‹

2. Speakersโ€‹

3. The Kotlin Challengeโ€‹

4. DroidCon Kenya 2024 (Announcements)โ€‹

6. Meetup Hostsโ€‹

7. Newsletter Sponsorsโ€‹


ยท 3 min read
Emmanuel Muturiaโ„ข

Welcome!โ€‹

Alt text Hi, Droids and Droidettes! Welcome back to yet another issue of The Kotlin Kenya Newsletter ๐Ÿ“ƒ. How have you all been? We hope that you had an awesome February and that you experienced the love that you deserved this month ๐Ÿ˜. Whether you did or not, let us demonstrate our love for you by releasing this month's issue of our Newsletter. This is Newsletter #16:

The Kotlin Monthly Challengeโ€‹

Alt text During this month's meetup, our audience got to stretch their thinking by participating in The Challenge #2 as well as flexing their Kotlin and DSA prowess. This epsisode focused on both Kotlin-specific and Algortithmic approaches to solving The Challenge and by attempting it yourself, you could see how well your code would have performed at the time. Share with us your solutions as what better way to market your skills than through flexing them at any given point in time? ๐Ÿคทโ€โ™‚๏ธ

The Code Reviewโ€‹

Alt text Do you still feel like you could write better code? Does your GitHub repository still look like that of a Bedroom Developer? Worry not for we have permanently adopted The Code Review as part of our Monthly Meetup Curriculum. For the second time, we were joined by The Teaman who went over the following pointers (pun intended if you know C++) based on this GitHub repository:

1. Commenting vs Documentationโ€‹

Senior Chepsi mentioned that while opinions may differ regarding its implementation and execution, documentation is important in a team-centered codebase. He stressed that documentation allows for readability of the codebase regardless of the seniority of the reader.

2. Write Out Why You Chose Itโ€‹

In addtion, he emphasised that another feature of a well-documented codebase or GitHub repository was the inclusion of the "why", that is, documenting why you chose a certain library for example. The attendees were made to understand that why they chose their tools mattered more than what tools they actually used.

3. Network Callsโ€‹

Through a lengthy but fruitful discussion, Chepsi engaged the crowd by asking them which technologies they used for making network calls in their projects. The most outstanding takeaway was that majority of the community members preferred Ktor as it supported their mission of adopting a Kotlin-first approach to building their projects.

The session and meetup in general was concluded by the attendees being asked to try and play around with their technologies and even try and build their own. A custom network-calling tool, perhaps? Food for thought.

The Call For Speakers (Monthly Meetup)โ€‹

Hey, pssst! Are you interested in becoming a speaker for the upcoming monthly meetups? For real for real? Then stop what you are doing and click me to make your aspiration a reality!

Alt text

GitHub Repository of The Month
Carizma

Until Marchโ€‹

It is at this point that we acknowledge our new beginnings and pledge to have a transformative 2024. We have journeyed, will still journey with you and gears are about to be shifted (tech bros please calm down) in your favour. If you would like to level up your career in Android, then attending our Monthly Meetups, building in public, and interacting with our members should be part of your routine. We cannot wait to hear and share your stories. See you on March ๐Ÿ‘‹...

Alt text


ยท 4 min read
Emmanuel Muturiaโ„ข

Hi (The Reunion)โ€‹

Alt text Hi Droids and Droidettes and a Happy New Year to you ๐Ÿคฏ. How have you all been? Now that you are back so are we! Without wasting any time, here is what's been happening in Android254 and Kotlin Kenya. This is Newsletter #15:

The Kotlin Challengeโ€‹

Alt text Hey psst! Are you a Kotlin junkie who would like to flex their Kotlin muscles? You are? In that case, please thank your colleagues led by The Chief Senior Dishwasher who brought back The Kotlin Challenge. The Kotlin Challenge is an opportunity for you to not only showcase your Kotlin prowess, but also claim your very own Jetbrains Lincense. What else, apart from a German Machine could be more rewarding for your skills? ๐Ÿ˜

The Expectations, Feedback, and Topicsโ€‹

Alt text With a new year comes a new way of doing things. As we are a community and not a regime, we always seek to involve our community members in our development plans (pun intended ๐Ÿคก). During the January Meetup, we had a lengthy yet engaging discussion based on the following pillars:

1. Expectationsโ€‹

With the steady incorporation of new members, Android254 and Kotlin Kenya received the latter's expectations for their experience in the community. They were as interesting as the proposition to include pizza snacks ๐Ÿ• and as resourceful as including more hands-on workshops. Tell a friend to bring a friend in order to find out more, will ya?

2. Feedbackโ€‹

We also gathered valuable feedback from our community members and do you guys have quite the ideas! In case you participated in our survey, then please be assured that we have already assimilated your feedback into our plans for the year. The question is: Are you ready for what's coming? ๐Ÿ‘€

3. Topicsโ€‹

Finally, we got the best responses from our attendees concerning the topics that are in high demand. In case you wanted to see more of Kotlin MultiPlatform (KMP), Career Stuff, Android Automotive, etc then just attend our next meetups. That's it, really ๐Ÿคทโ€โ™‚๏ธ...

The Code Reviewโ€‹

Alt text Are you a novice who would want to be put to the flame of Code Reviewing? Would you like to have a Senior Engineer (or even a GDE ๐Ÿ˜œ) assess the quality of your work? we are pleased to announce that we are now having Code Reviews as part of our community activities. January's meetup saw The Teaman conduct a Code Review Session using this GitHub repository. The audience learnt best practices, mistakes to avoid, as well as hacks pertaining take-home assignments...

The KotlinConf' 2024 Contestโ€‹

Alt text

If you thought that we are your average Tech community then you are as lost as J*va enthusiasts ๐Ÿšฎ. In preparation for KotlinConf' 2024, we are proud to announce that we have Samson Aricha as one of the winners for The KotlinConf' Contest ๐Ÿฅณ. Check out his product and learn from the best...

Whoa whoa whoa there! Did you seriously think that we had only one winner? Once again KotlinConf' announced Asira Etemesi as another champion for The KotlinConf' 2024 Contest. Head over to his product to learn more...

The Call For Speakers (Monthly Meetup)โ€‹

Interested in becoming a speaker for the upcoming monthly meetups? For real for real? Then stop what you are doing and click me to make your aspiration a reality!

Alt text

Dear Readerโ€‹

It is at this point that we acknowledge our new beginnings and pledge to have a transformative 2024. We have journeyed with you and gears are about to be shifted (tech bros please calm down) in your favour. If you would like to level up your career in Android, then attending our monthly meetups, building in public, and interacting with our members should be a routine for you. We cannot wait to hear and share your stories. See you on February...

Alt text


ยท 5 min read
Emmanuel Muturiaโ„ข
MamboBryan
SheeWrites

Hi Droids and Droidettes! How are you? As the DroidCon Kenya 2023 event approaches, we are proud to announce the launch of the last Newsletter of the year! Yes, you heard us correctly. This is the final installment of the Kotlin Kenya Monthly Newsletters for the 2023 season and how best to do it than to have our fan favorite speakers lead the sessions? ๐Ÿฅบ Wanna find out more? ๐Ÿ˜ฎ Then grab a popcorn, take a mug or more of coffee like the Techie you are, and brace yourself for this is Newsletter #14, The October Edition:

The October Meetupโ€‹

Android254, in liaison with Kotlin Kenya, hosted the October Meetup which was spearheaded by Jacquiline Gitau, Abdulfatah Mohammed, and Jane Waitara. They each gave their presentations on the following topics that demonstrated the diversity of Android App Development (AAD):

The Art of Testing Composable Layoutsโ€‹

The Droidette kicked off by introducing the audience to the different kinds of Testing, namely: Unit Tesing, Integration Testing, and UI Testing. She added onto that by going over Semantics in Compose and how they aid in testing Compose elements. She supplemented that by discussing API Tetsing, which incorporated:

  • Finders
  • Assertions
  • Actions
  • Matchers

Jacquiline finalised her session by showcasing a demo project which implemented the libraries used in testing Compose elements...

Why I Have Come To Love Feature Modularizationโ€‹

Following that, we had The Modularizer taking over and explaining the motivations behind Modularization. They were but not limited to:

  • Presence of many moving parts in most fetaure packed Android apps
  • Rapid replacement of libraries...
  • Difficulty in connecting knowledge
  • Adherance to good architectural practices

He supported his argument by mentioning how Modularization results in freedom to work on more features, increased productivity, easier onboarding, and opportunities for experimentation. He utilised his personal project to demonstrate the magic behind Modularization by Feature. Abdulfatah concluded by insisting that for a Modularization driven approach, it was best to always prioritise the UI over Architecture when structuring the Android app...

Composing with Accessibility in Mindโ€‹

To mark the day complete, we had Mumbi Codes enlighten the attendees regarding the prioritisation of Accessibility when working on UI/UX. She began by acknowledging WHO's statistics which stated that between 15% to 20% of the world's population is categorised as people living with disabilities. She also cited some types of diabetes to give context on their need for specialised adjustments as far as Accessibility in Android was concerned. She listed the following as solutions to improving Accessibility in Android apps through Jetpack Compose:

  • Visual Elements
  • Headings
  • Semantics
  • Click Labels
  • Touch Target Size
  • Toggleable Selections
  • Text

Jane signed off the session by modelling a practical approach to teach the above concepts by use of a Jetpack Compose project...

DroidCon Kenyaโ€‹

Here's a rundown of everything you need to know about DroidCon Kenya with respect to the upcoming event:

DroidCon Kenya 2023 Ticketsโ€‹

Alright, if you have not yet signed up for DroidCon Kenya 2023 then what are you doing? Don't you want to be part of something that catapaults your understanding of Android? Aren't you afraid that if you wait too long then the discounted tickets will be gone and you will have to sell your house or something to afford the regular tickets? Don't worry, just click me and this can be our little secret ๐Ÿ˜‰...

DroidCon Kenya X Spacesโ€‹

Over the last few weeks, DroidCon Kenya has been hosting its weekly X Spaces hosted by Emmanuel Muturiaโ„ข whose sole purpose is to fill in the gaps you may have on DroidCon Kenya and its commitment towards delivering the best DroidCon events in Africa. Want to catch up with our latest conversations? The just click me to get access to more than a handful of quality banter...

The DroidCon Kenya Android App (Kotlin)โ€‹

Are you an Android (Kotlin) developer looking to flex your Open Source Contribution muscles? Want to show off your Problem Solving skills by contributing to the community? Worry not for the DroidCon Kenya team has released the latest issues for the DroidConKE2023 Android app for you to pick up and solve. In fact, click me to head over to the GitHub repository and squash those bugs like the wizard you are...

Call For Speakers (Monthly Meetup)โ€‹

Interested in becoming a speaker for the upcoming monthly meetups? For real for real? Then stop what you are doing and head over here to make your aspiration a reality!

Dear Reader...โ€‹

It is at this point, our dear reader, that we say thank you. We are deeply grateful for your support and engagement. As we mark the final Newsletter of the year, we usher you to our DroidCon Kenya 2023 event from the 8th to 10th of November, but you knew that, didn't you? ๐Ÿ˜ With that said, don't miss us too much for we will be back before you know it. See you on the 8th ๐Ÿ‘Œ

TUTORIAL
Detect Screenshots in Android 14

Got any other resources that you want to have featured? That's alright, cause all you have to do is click me and that's it. Congratulate yourself for being a winner!

You can also suggest any article, library, video or podcast for upcoming newsletters. Click here to submit!

Enjoyed reading this episode of our Kotlin Newsletter? Worry not, for we will be back soon with another one so stick around, will ya? Until next time (or next year, perhaps), happy coding & HAVE A NICE KOTLIN!


ยท 4 min read
Emmanuel Muturiaโ„ข
MamboBryan
SheeWrites

Hey there Droids and Droidettes! We know you missed us and we did too ๐Ÿฅบ We hope that you are excited for this episode as we have quite the comeback. From Machine Learning to Cyber Security, our speakers really outdid themselves by showing us just how versatile Android is. Wanna find out more? Grab a popcorn, take a coffee like the Techie you are, and brace yourself for this is Newsletter 13, The September Edition:

September Meetupโ€‹

Android254, in liaison with Kotlin Kenya, hosted the September Meetup which featured a new flavour of speakers: Musyoka Muasya, Oscar Karuga, and Emmanuel Muturiaยฎ. They each gave their presentations on the following topics that demonstrated the diversity of Android App Development (AAD):

Work in OfflineFirst Apps - Sync Data Sources with Work Managerโ€‹

Musyoka Muasya, the best Mathematical Developer in Kenya, gave a talk on Work Manager. He started off by reiterating on the functions and importance of Work Manager in the Android App Development workflow. Musyoka described the application of Work Manager in an offline-first environment through the use of a Closed Loop Control System which consisted of:

  • Input
  • Controller
  • Process
  • Output
  • Feedback

Muasya supplemented his demonstration with a Test and Optimization Case that incorporated Mathematical functions. Do you think you are capable of mastering the Mathematics behind Work Manager? Well then, here is Musyoka's presentation for you to knock yourself out: Click Me

Enhancing Android Apps with Machine Learningโ€‹

Following that, Oscar Karuga took the stage and introduced the audience to Machine Learning in Android. The son of Jupyter gave an elaborate walkthrough on the use of accurate but comprehensive data sets to train a customised AI model. He concluded by showcasing his Android application that wowed the audience by accurately differentiating between various images based on the model that he had trained...

Unlocking Passkeys in Android (feat Credentials Manager)โ€‹

Wrapping up the presentation set was the Android Security maverick himself Emmanuel Muturiaยฎ, who gave a stellar presentation on Passkeys in Android using Credential Manager. Emmanuel began by educating the audience on Passkeys, and why they should be considered a necessary asset in modern Authentication. He then went over the high-level implementation of Passkeys in Android using the Credential Manager API as well as things to consider when doing so. To spice up his presentation, Emmanuel posed three questions to the audience and rewarded the winners so don't say we didn't warn you against missing his talks... ๐Ÿ˜Œ

DroidCon Kenya 2023โ€‹

Alright, if you have not yet signed up for DroidCon Kenya 2023 then what are you doing? Don't you want to be part of something that catapaults your understanding of Android? Aren't you afraid that if you wait too long then the discounted tickets will be gone and you will have to sell your house or something to afford the regular tickets? Don't worry, just click me and this can be our little secret...

NB: Hey, psst! Are you a little low on cash and would like to be sponsored for the DroidCon Kenya 2023 event? Then click me to sign up for a sponsorship courtesy of Juma Allan...

Oh and last but not least, be on the lookout for the announcement of tetsing our open source DRoidConKE2023 app coming soon...

Call For Speakers (Monthly Meetup)โ€‹

Interested in becoming a speaker for the upcoming monthly meetups? For real for real? Then stop what you are doing and head over here to make your aspiration a reality!

Dear Reader...โ€‹

If you have made it this far, then please give yourself a high five! Seriously though, we deeply appreciate your support in growing the Android community in Kenya. You guys are the reason we are tightly knit and we definitely look forward to nothing but better in everything we do...

REPOSITORIES
BridgingTheGap
BioFinger
BeeTablesCompose
LIBRARIES
Floaty
COURSES
Building a Todo app using Firebase Cloud Firestore

Got any other resources that you want to have featured? That's alright, cause all you have to do is click me. That's it. Congratulate yourself for being a winner!

You can also suggest any article, library, video or podcast for upcoming newsletters. Click here to submit!

Enjoyed reading this episode of our Kotlin Newsletter? Worry not, for we will be back soon with another one so stick around, will ya? Until next time, happy coding & HAVE A NICE KOTLIN!


ยท 6 min read
MamboBryan
SheeWrites
Emmanuel Muturiaโ„ข

Hey there Droids and Droidettes! How are you? Hopefully you are able to read this newsletter as we hear some of our brothers and sisters are suffering Web Dev, sorry DDoS issues. Nevertheless, Episode 12 is finally here and we cannot wait to share with you the highlights of July as recorded:

July Meetupโ€‹

Android254, in liaison with Kotlin Kenya, organised the July Meetup which hosted the three legends namely: Somet Kipchilat, Peter Chege, and our esteemed Droidette Michelle Wainaina. They each gave quite the talks that covered the latest hacks (pun intended, iykyk) in developing for a modern era. Here is a rundown of their talks in order of appearance:

Building for The Next Billion Usersโ€‹

Somet, Africa's Okayest Developer, kicked off the meetup by introducing the audience to the concept of building products for the next billion users. He provided the case study of Native Languages as an example of factors that largely contribute to the success of a product (app) in a large sacle market. Somet supported his point by mentioning Android 13 Go as a product that prioritizes users with less capable devices with respect to system resources and specs. He summarised his session by reminding the audience that their products should prioritize:

  • Accessibility and Localization
  • Affordability and Usability
  • Resilience and Low Bandwidth Connections
  • Multilingual Support

Somet concluded by asking the audience to think about 'Glocalization', a term denoting the merging of Global and Local markets for your products, MPESA being an example...

SealedXโ€‹

The next talk was given by the man himself (Peter Chege) and was about the SealedX library in Kotlin. He introduced it by mentioning the agony that comes with repeatedly writing Sealed Interfaces in your Compose project such as those used to define UI States. Peter highlighted that besides using the Kotlin Symbol Processor (KSP), the SealedX library also used two annotations to automatically generate Sealed Classes/Interfaces: @ExtensiveSealed (For code that is meant to be generated multiple times) and @ExtensiveModel (To wrap around your Data Classes). His last activity (puns for days) was showcasing a demo on the same using a custom project that consumed REST APIs...

Firebase Firestore: A Coroutines Storyโ€‹

The July Meetup speaker session was remarkably concluded by the legendary Droidette (Michelle Wainaina) who talked about the introduction of Coroutines in Cloud Firestore. She kicked off by recapping Coroutines and how they affect app performance in Android (Kotlin obviously, J*va people please click off) before announcing their introduction in Firebase's Cloud Firestore. She also used a demo project to not only present the use of Coroutines in Cloud Firestore but to also teach the audience why it was important to first include a Coroutine Scope before anything else. As a bonus, Michelle used a Chat App use case to demonstrate how the choice between Cloud Firestore and Realtime DB in Firebase among other products was just a matter of tradeoffs...

Google I/O Extended (Pwani Edition -> Android)โ€‹

Hayawi hayawi huwa! This segment takes us all the way to the Coast where the Google I/O Extended: Pwani Edition event was held at the Aga Khan Academy. The Android community was well represented as it starred a hot line of speakers:

Android Keynoteโ€‹

The Android Keynote was given by Annunziata Kinya, who eloquently went through the latest features and developments in Android, the most exciting one being the stable release of Android Studio: Giraffe. Annunziata also detailed the release of various Jetpack Compose libraries and features such as Compose for TV (Now in Alpha), Support for Compose by other libraries such as Glide and the Jetpack Glance library which allows you to develop highly customizable yet elegant widgets optimized for Android phones, tablets and foladable homescreens using Jetpack Compose...

Building A Data Layer That Fits Your Overall App Architectureโ€‹

The first Android session was spearheaded by our dear Droidette Co-Captain and WTM Ambassador, Jacquiline Gitau. She took the audience through the steps and factors to consider when building a data layer that was congruent with the best practices of Clean Architecture. Her recommendations included both a Local and Network Data Source that were synched to allow for a single source of truth, mapping Internal Models to External Models, and the use of Mutex which as she explained was a Kotlin-first approach to allow for synchronized sharing of resources within your application...

What's New in Kotlin for Androidโ€‹

The final talk in the Android segment was given by none other than the Chief Dish Washer, Mambo Bryan. He gave a session that introduced the latest exciting features and developments in Kotlin, starting with the Kotlin 2.0 compiler which was said to reduce build time by half! He also mentioned the Kotlin DSL for Gradle which oversaw the introduction of Kotlin as the default language for Gradle in new projects leading to precise code hinting, realtime syntax errors and which has a rich and available documentation for reference...

DroidCon Kenya 2023โ€‹

Alright, if you have not yet signed up for DroidCon Kenya 2023 then what are you doing? Don't you want to be part of something that catapaults your understanding of Android? Aren't you afraid that if you wait too long then the Early Bird Tickets will be gone and you will not have caught the worm? Don't worry, just Click Me and this can be our little secret...

Call For Speakers (Monthly Meetup)โ€‹

Interested in becoming a speaker for the upcoming monthly meetups? For real for real? Then stop what you are doing and head over here to make your aspiration a reality!

ARTICLES
Getting more concise with Kotlin Generics
Experiment #1 (Genesis)
Experiment #2 (Fire Away)
Experiment #3 (Service Denied)
VIDEOS
Pinterest UI
Advanced Kotlin: Advanced Functions
APPS
Ewave
REPOSITORIES
SafePass
KomposeCountryCodePicker
BeeTablesCompose
COURSES
Mastering MVVM Architecture in Android Development using Kotlin

Got any other resources that you want to have featured? That's alright, cause all you have to do is click me. That's it. Congratulate yourself for being a winner!

You can also suggest any article, library, video or podcast for upcoming newsletters. Click here to submit!

Enjoyed reading this episode of our Kotlin Newsletter? Worry not, for we will be back soon with another one so stick around, will ya? Until next time, happy coding & HAVE A NICE KOTLIN!