Upgrade to Pro — share decks privately, control downloads, hide ads and more …

What happened to my JavaScript phone?

What happened to my JavaScript phone?

Not long ago, it seemed like JavaScript devices were going to free JS developers from the constraints of the browser and let us control every aspect of our lives as easily as we once controlled hover menus. Though nodebots were captivating, many of us were anxious for the JS device revolution to reach a more mundane destination: our phones. And yet today the constraints of the mobile landscape look not much different from several years ago. We have the same two operating systems, the same two app stores, and same option to write a native app or push people to save what is still mostly a bookmark. How did we cover so little distance, given the enthusiasm, resources, and potential that appeared to exist, and more importantly, how close can we come to a JavaScript phone today?

Garann Means

June 01, 2019

More Decks by Garann Means

Other Decks in Technology


  1. View Exit ✉ 12:30 ⏚ ⏍ What happened to my

    javascript phone? Garann Means @garannm JSConf EU 2019
  2. hands up if you have a hacker phone

  3. Why not use a hacker phone camera display fast, reliable

    connection not crashing all the time you have too many thousands of dollars
  4. You carefully researched phones and bought the best one for

    you? Is it iPhone or Android? E-X-C-E-L
  5. View Exit ✉ 12:30 ⏚ ⏍ yay the free market

  6. Step into my time machine PhoneGap/Cordova/& friends Node Nodebots

  7. early mobile apps

  8. early mobile apps

  9. View Exit ✉ 12:30 ⏚ ⏍ Like a11y but implemented

  10. JavaScript on the backend? That’s hot but what do you

    use for a server Node.js.com™
  11. One of these days i'm gonna get this nodebot back

    on the road and really open 'er up https://www.flickr.com/photos/4nitsirk/33313210766/
  12. View Exit ✉ 12:30 ⏚ ⏍ Oh and also https://www.flickr.com/photos/quattrovageena/2663223167

  13. smartphones are intuitive and fun

  14. Things we used to hate Nonstop problems connecting to wifi

    Maps that gave directions from alternate dimensions Carrier-installed apps Only being able to install ringtones you paid for * not a smartphone issue but still bullshit
  15. View Exit ✉ 12:30 ⏚ ⏍ Missing:

  16. phones are different

  17. To make a phone a phone Become a carrier License

    some protocols Embed them in your hardware Get signoff from local agencies where your phone will be used Get certification from any commercial carrier whose network your device will connect to
  18. View Exit ✉ 12:30 ⏚ ⏍ Mean time to failure

    and other fun tests
  19. SoC: System on a Chip processor modem antenna camera speaker

  20. The past is so in right now https://www.flickr.com/photos/novecentino/9896884705/

  21. View Exit ✉ 12:30 ⏚ ⏍ What happened to your

    javascript phone
  22. View Exit ✉ 12:30 ⏚ ⏍ What happened to your

    javascript phone
  23. So I can’t have a javascript phone? That’s a philosophical

  24. You could still.. Build a hobbyist phone Flash your firmware

    Write PWAs and JS-to-native apps Start a revolution
  25. View Exit ✉ 12:30 ⏚ ⏍ Just a telephony api

    app.get('/answer', async (request, reply) => { let nexmo_call_control = [{ action: 'connect', endpoint: [{ type: 'websocket', uri: 'http://localhost:34567', 'content-type': 'audio/l16;rate=16000' }] }]; return nexmo_call_control; });
  26. And a little hardware TiLDA badge: https://badge.emfcamp.org/wiki/TiLDA_MK4 “Yes your TiLDA

    Badge is also a mobile phone.” GSM shield: http://www.espruino.com/arduino-sim900 “GSM/GPRS module that can provide internet access via an AT command set”
  27. your imagination is the only limit* * that and licensing

  28. View Exit ✉ 12:30 ⏚ ⏍ New hardware ideas https://www.thelightphone.com

    https://www.punkt.ch/en/products/mp02-4g-mobile-phone/ https://www.fairphone.com/en/
  29. Alternate operating systems LineageOS: https://lineageos.org/ Ubuntu Touch: https://ubports.com/ OSes on

    alternate hardware: KaiOS, Librem, Sailfish OS
  30. no OS, no drivers

  31. if you insist on being reasonable PWAs Cordova etc. Learn

    native language(s) $
  32. View Exit ✉ 12:30 ⏚ ⏍ One for the dustbin

    of history
  33. View Exit ✉ 12:30 ⏚ ⏍ Or is it https://www.webstandards.org/

  34. Excel me when the revolution happens

  35. More reading.. https://www.makeuseof.com/tag/linux-smartphone-operating-systems/ https://fossbytes.com/whats-inside-smartphone-depth-look-parts- powering-everyday-gadget/ https://www.electronics-notes.com/articles/connectivity/cellular-mobile- phone/how-cellphone-works-inside-components.php https://www.electronicdesign.com/communications/11-myths-about- cellular-carrier-certification-requirements https://www.howtogeek.com/387934/your-smartphone-has-a-special-

  36. View Exit ✉ 12:30 ⏚ ⏍ thanks! Garann Means @garannm

    JSConf EU 2019