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

Ruby, Web and IOT with the same Platform

Ruby, Web and IOT with the same Platform

Let's discuss the power of ruby on CloudWalk day to day, where we are able to deploy Web applications with Rails and IOT solutions with mRuby

E822acb0564c5632aae69fef35f85b3d?s=128

Scalone

May 25, 2019
Tweet

Transcript

  1. @scalone Ruby, Web and IOT With the same Platform Thiago

    Scalone - @scalone
  2. @scalone こんばんは 私の名前はThiago Scalone です よろしくお願いします! 私はブラジルのソフトウェアエンジニアです

  3. The digital payment acquirer @scalone

  4. @scalone

  5. @scalone

  6. @scalone

  7. @scalone

  8. @scalone

  9. Payment acquirers are very inefficient
 
 Most using outdated technology


    
 Incapable of offering digital products @scalone
  10. @scalone

  11. @scalone @scalone

  12. @scalone @scalone

  13. @scalone @scalone

  14. @scalone @scalone

  15. @scalone @scalone

  16. @scalone ERC20 @scalone

  17. @scalone

  18. @scalone Ruby history Rails history Ruby basics and demo Rails

    basics and demo mRuby history mRuby basics and demo Topics
  19. @scalone Created by Matz, release first version 95 (0.95) Script

    language, high-level, interpreted Object oriented, imperative, plus functional concepts Dynamic, metaprograming supporting Focus on simplicity and productivity Latest version 2.6.3 https://www.ruby-lang.org/en/ Ruby
  20. @scalone Gems

  21. @scalone IRB - Interactive Ruby Shell Classes and modules Variables

    Operators Data Types Control Flow Regexp Ruby
  22. @scalone Demo Thiago Scalone - @scalone

  23. @scalone Rails

  24. @scalone Rails

  25. @scalone Rails

  26. @scalone Rails

  27. @scalone Rails

  28. @scalone Rails

  29. @scalone Rails

  30. @scalone Opinionated Full-stack Web Framework - HTTP Model/View/Controller pattern Convention

    over Configuration DRY - Don’t Repeat your self CRUD (Create, Read, Update and Delete) Scaffolding Active Record and Migrations Rails
  31. @scalone Rails

  32. @scalone Model “Maintains the relationship between Object and Database and

    handles validation, association, transactions” View “A presentation of data in a particular format, triggered by a controller’s decision to present the data” Controller “The facility within the application that directs traffic, on the one hand querying the models for specific data, and on the other hand organizing that data (searching, sorting) into a form that fits the needs of a given view.” Rails
  33. @scalone Demo Thiago Scalone - @scalone

  34. @scalone Created by Matz Small Cross-compilation / ANSI C Modular

    No gems, mrbgems static compilation .mrb https://github.com/mruby/mruby mRuby
  35. @scalone CLI apps framework Created and maintained by hone, zzak

    and toch Power of mruby to generate standalone binary Linux, Windows, and OS X Docker Compose https://github.com/hone/mruby-cli https://github.com/cloudwalkio/cloudwalk mruby-cli
  36. @scalone Open Source IOT Embedded Framework Created by CloudWalk Adopt

    adapter pattern to hardware interface Compilation and packaging tools Helpers https://github.com/cloudwalkio/da_funk da_funk
  37. @scalone lib/device/ !"" application.rb !"" audio.rb !"" crypto.rb !"" display.rb

    !"" io.rb !"" magnetic.rb !"" network.rb !"" printer.rb !"" runtime.rb !"" system.rb #"" version.rb class Device class Audio def self.adapter Device.adapter::Audio end def self.beep(tone, seconds) milli = seconds * 1000 adapter.beep(tone, milli) end end end da_funk da_funk
  38. @scalone @scalone

  39. @scalone CLI @scalone

  40. @scalone PROJECT CLI @scalone

  41. @scalone PROJECT COMPILE CLI @scalone

  42. @scalone PROJECT COMPILE DEPLOY CLI @scalone

  43. @scalone PROJECT COMPILE DEPLOY CLI RUN @scalone

  44. @scalone PROJECT COMPILE DEPLOY CLI RUN @scalone

  45. @scalone @scalone GPRS/3G/WIFI Persistent Connection TCP + TLS 1.2 WebSocket

    Download in chunks
  46. @scalone MRuby Libraries to make the runIme works h"ps:/ /github.com/cloudwalkio/mruby-da-funk

    IOT Framework h"ps:/ /github.com/cloudwalkio/da_funk TLV Parser (Payment TransacIon) h"ps:/ /github.com/scalone/funky-tlv CloudWalk CLI h"ps:/ /github.com/cloudwalkio/cloudwalk SSL Library mbed TLS / PolarSSL bind h"ps:/ /github.com/luisbebop/mruby-polarssl Open Source
  47. @scalone MRuby EMV Interface (Payment TransacIon) h"ps:/ /github.com/cloudwalkio/mruby-emv RIPEMD-160 hash

    h"ps:/ /github.com/scalone/mruby-ripemd QRCode generaIon h"ps:/ /github.com/scalone/mruby-qrcode Miniz bind to ZIP/UNZIP inflate/deflate h"ps:/ /github.com/scalone/mruby-miniz HMAC hash h"ps:/ /github.com/scalone/mruby-hmac Open Source
  48. @scalone Demo Thiago Scalone - @scalone

  49. @scalone Livro graIs - hZp:/ /eustaquiorangel.com/livro-ruby mRuby - hZps:/ /github.com/mruby/mruby

    Rails - hZps:/ /github.com/rails/rails More?!
  50. @scalone in Ruby We Trust Thiago Scalone - @scalone

  51. @scalone Thank you We Trust Thiago Scalone - @scalone