<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Muhammad Hashim on foojay.io - Friends of OpenJDK</title><link>https://foojayio.github.io/website/today/author/mhashim6/</link><description>Articles written by Muhammad Hashim on foojay.io - Friends of OpenJDK</description><generator>Hugo</generator><language>en-us</language><lastBuildDate>Sat, 01 Apr 2023 09:05:29 +0000</lastBuildDate><atom:link href="https://foojayio.github.io/website/today/author/mhashim6/index.xml" rel="self" type="application/rss+xml"/><item><title>Coroutines on the RaspberryPi (Pi4J-Kotlin)</title><link>https://foojayio.github.io/website/today/coroutines-on-the-raspberrypi-pi4j-kotlin/</link><pubDate>Sat, 01 Apr 2023 09:05:29 +0000</pubDate><guid>https://foojayio.github.io/website/today/coroutines-on-the-raspberrypi-pi4j-kotlin/</guid><description>&lt;p&gt;If you didn&amp;rsquo;t know already, &lt;a href="https://pi4j.com/" target="_blank" rel="noopener noreferrer"&gt;Pi4J&lt;/a&gt;
 has had a &lt;a href="https://pi4j.com/kotlin/" target="_blank" rel="noopener noreferrer"&gt;Kotlin DSL&lt;/a&gt;
 for quite some time now.&lt;/p&gt;
&lt;p&gt;And I&amp;rsquo;m here to announce the &lt;a href="https://github.com/Pi4J/pi4j-kotlin/releases/tag/2.4.0" target="_blank" rel="noopener noreferrer"&gt;latest release &lt;code&gt;v2.4.0&lt;/code&gt;&lt;/a&gt;
 with a sack of additions and to tell you about all the good stuff that&amp;rsquo;s been added since the &lt;a href="https://foojayio.github.io/website/today/kotlin-on-the-raspberrypi-pi4j-kotlin/"&gt;first release&lt;/a&gt;
.&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;Coroutines {#h2-0-1-coroutines}&lt;/li&gt;
&lt;/ol&gt;
&lt;hr&gt;
&lt;p&gt;If the &lt;code&gt;pi4j { ... }&lt;/code&gt; wasn&amp;rsquo;t good enough for ya, and you want to use coroutines instead of weaving fat threads on your precious precious Pi, you can now use the new &lt;code&gt;pi4jAsync { ... }&lt;/code&gt; block&amp;mdash;It can do everything &lt;code&gt;pi4j { ... }&lt;/code&gt; does + you can run &lt;code&gt;suspend&lt;/code&gt;ed functions within.&lt;/p&gt;</description></item><item><title>Gossips: An Event-Bus in a Chatty Neighbourhood</title><link>https://foojayio.github.io/website/today/metaphorical-programming-gossips-event-bus/</link><pubDate>Thu, 24 Nov 2022 08:35:32 +0000</pubDate><guid>https://foojayio.github.io/website/today/metaphorical-programming-gossips-event-bus/</guid><description>&lt;p&gt;In this article, we&amp;rsquo;ll tackle a common issue: &lt;em&gt;simple&lt;/em&gt; communication between system components. With a slightly controversial, themed, domain-driven design.&lt;/p&gt;
&lt;p&gt;Though this post has nothing to do with Android, we need a context where an Event-Bus is needed. And boy oh boy is it needed in Android! And we&amp;rsquo;ll use this as an excuse to write an Event-Bus.&lt;/p&gt;
&lt;p&gt;I chose an analogy for the entire thing: &lt;strong&gt;Gossips&lt;/strong&gt;;\&lt;/p&gt;
&lt;p&gt;It fits with the nature of the library, and the way it&amp;rsquo;ll be used. A global pub-sub component to enable cross-component communication.&lt;/p&gt;</description></item><item><title>Kotlin on the RaspberryPi (Pi4J-Kotlin)</title><link>https://foojayio.github.io/website/today/kotlin-on-the-raspberrypi-pi4j-kotlin/</link><pubDate>Thu, 17 Nov 2022 13:37:18 +0000</pubDate><guid>https://foojayio.github.io/website/today/kotlin-on-the-raspberrypi-pi4j-kotlin/</guid><description>&lt;p&gt;&lt;a href="https://pi4j.com/" target="_blank" rel="noopener noreferrer"&gt;Pi4J&lt;/a&gt;
 is considered the project that brought the JVM to the RaspberryPi.&lt;/p&gt;
&lt;p&gt;It has been up for more than a decade allowing developers to write sophisticated, high-level, yet simple software on the RaspberryPi.&lt;/p&gt;
&lt;p&gt;And we&amp;rsquo;re glad to make it even more simpler and powerful!&lt;/p&gt;
&lt;p&gt;For quite some years now Kotlin has been a most welcome language in the JVM ecosystem and the modern development toolchain.&lt;/p&gt;
&lt;p&gt;Many factors led to this great reality, most notable to me is Kotlin&amp;rsquo;s non-disruptive integration and seamless developer experience.&lt;/p&gt;</description></item></channel></rss>