Photo by Shubham Shrivastava on Unsplash

This doc is part of a 360iDev workshop and still being updated! The structure is complete but the content is still under construction. Lots more to add but believe it is useful even though it is not finished …

360i|Dev Workshop

Topics Covered

  1. Async / Await [Section 1]
  2. Async sequences (Sequences / Streams)
  3. Effectful read-only properties
  4. Structured concurrency
  5. async let bindings
  6. Continuations for interfacing async tasks with synchronous code
  7. Task & Task Groups [Section 2]
  8. Actors [Section 3]
  9. Global Actors
  10. Sendable and @Sendable closures


Googel Doc for Workshop


[Coming Soon]


“Update a sample app” from WWDC21:

Trying to follow the video is very hard…

The design of app icons has become an art form.

When users search or browse Google Play, your app’s icon is a significant way to make your app stand out, so ensure it’s relevant and compelling. If a user opens your app’s listing, they will take only a few seconds to look for content that matches their needs If the listing doesn’t immediately grab their attention, they’re likely to move onto another app. Users like using videos to assess apps — app listings with videos are more likely to result in installation than those without.

Really like this video series:

  1. Beautiful
  2. Memorable
  3. Identifiable

And do it all in a…

Smartphone is the most technologically advanced devices mankind has ever created.

→ To prove this point, Google has built a self driving car using nothing but a Pixel phone

Photo by Ketut Subiyanto from Pexels

Building on the previous post:

The need for wearable technology:

→ Our environment is evolving faster than our brain. In the developed nations unhealthy fast food is plentiful. The intelligence which should have evolved in our brain must be moved to the technology we wear to counterbalance this effect. ←

Wearable tech can measure and visually show how damaging overeating, lack of quality sleep and lack of exercise are to our health.

“Measurement is the first step that leads to control and eventually too improvement. If you can’t measure something, you can’t understand it. If you can’t understand it, you…

Data Driven Ethnography

Section One: Why do you “Build @ Speed of Thought”?

Photo by Lukas Meier on Unsplash

This idea originated from a saying:

A master painter was asked how long did this masterpiece take?

His answer: “43 years and 25 min

We keyed in on the 25 min as the 43 years is not about time but about the effort to learn. Combine this with the next story.

~~~ Throwing Clay ~~~

This story from the book Art & Fear by David Bayles and Ted Orland:

We are all athletes using our energy to save our planet and ourselves.

Photo by Tareq Ismail on Unsplash

It all started with an interview by a South Korean magazine for “Hot Young Startups in Silicon Valley”. The interviewer asked which pharmaceutical do we believe has done the most for US health care. Thought long and hard … Genentech, Alza, Pfizer, J&J … all the various drugs each had made. The answer was:

ASICS Rx. ASICS Running prescribes a healthy lifestyle

It’s the personal connections that are at the heart of this!

I have often heard that the 360|Dev conferences are amazing.

We need


now more than ever knowing that both iOS and Android are moving to a whole new way of mobile development.

These conferences will allow us to get support and draw inspiration through this major transition.

Both Android and iOS are becoming declarative/reactive!

→ Jetpack Compose:

Declarative “Android’s modern toolkit for building native UI” made reactive with Kotlin Flow.

→ Kotlin Flow:

→ SwiftUI

“Declare the user interface and behavior for your app on every platform” made reactive with Combine Framework.

→ Combine Framework

Modern (Kotlin / Flow) Bluetooth Low Energy on Android

BLE 5.0

BLE is the gateway from mobile to the physical world

We can think of the mobile app as the brains and the BLE device as the body.

We use all the features of the mobile phone as the intelligence (CPU, WiFi, GPS, etc …) & I/O (Screen / keyboard) with the BLE device as the body. Today many apps use BLE to control everything from medical devices to vending machines.

BLE is one of the most important features of mobile development. …

SwiftUI + Combine Framework (State) = MVI & Android Jetpack Compose / Kotlin Flow should also use it!

Sorry, I will not explain what MVI is. I will leave that as an exercise for the student … Wow, I hated when my professors do that!!!

Model View Intent (MVI) is a reactive architectural pattern where the model is updated based on intents of the user/system and the view is updated based on states emitted from the model.

MVI is: 1) Unidirectional Data Flow, 2) Immutable State, 3) Single Entry / Exit, 4) Reactive & Functional

MVI declarative programming it is better than MVC, MVP, MVVM and VIPER

  • Model View Controller (MVC) — Do not use MVC because it…

In this article we will look at TensorFlow (& why Swift).

This is a public alpha (getting feedback) and I am still working on it. Feel free to read it but I expect to have it cleaned up are ready for general public consumption in the next few weeks.

Swift for TensorFlow: 2 kinds of users

Advanced ML researchers who are limited by current ML frameworks. Swift for TensorFlow’s advantages include a seamless integration with a modern general-purpose language, allowing for more dynamic and sophisticated models. Fast abstractions can be developed “in user-space” (as opposed to in C/C++ aka “framework-space”), resulting in modular APIs that can be easily customized.

ML learners* who are just getting started with machine learning. Thanks to Swift’s support for quality tooling (e.g. …

Siamak (Ash) Ashrafi

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store