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

Platform Creation w/ Qt + Ubuntu

Platform Creation w/ Qt + Ubuntu

Using the Ubuntu GNU/Linux distribution and Qt application framework, we will demonstrate a theoretical app platform. This theoretical app platform will be modeled after production systems using open source software in the automotive and medical industries.

Presented on 9/16 at the 2017 Vermont Code Camp https://www.vtcodecamp.org

Jereme Givens-Lamothe

September 16, 2017
Tweet

More Decks by Jereme Givens-Lamothe

Other Decks in Programming

Transcript

  1. September 16 2017 | Burlington, VT Platform Creation w/ Qt

    + Ubuntu Jereme Givens-Lamothe, Senior Software Architect at DocBox Inc
  2. Agenda • Introductions • Why Create an App Platform? •

    Demo Platform: Live Code • Recipe for a Demo Platform • Demo App: Live Code, Build & Deploy 2
  3. Who Am I? • Senior Software Architect at DocBox Inc

    • ~10 years working in Healthcare • Currently working in the Boston area • Originally from the BTV area! • Saint Michael's College ‘08 3
  4. Why Create an App Platform? • DocBox created a platform

    for Clinical Apps at Patient bed • Provide Clinical Decision Support, Workflow Automation, etc. • ASTM F2761 - ICE (Medical Device Interoperability) 4
  5. Live Demo - Platform • Requirements • Multi-touch navigation •

    Display a grid of installed Apps • Launch Apps on icon tap • Ability to install new Apps • Custom System UI 5
  6. How to Build an App Platform? • Ubuntu GNU /

    Linux • Operating System • Qt Quick • Application Framework • Qt Application Manager • App, Window Management, etc. 6
  7. A (Brief) Introduction to Ubuntu • Popular GNU/Linux Distribution •

    Used in Desktop, Server, Cloud, and IoT • Our demo platform will use Ubuntu 16.04 LTS • Supported by Canonical • Open Source! • Official Site - https://www.ubuntu.com 7
  8. An Introduction to Qt Framework • Cross-platform C++ application framework

    • Windows, macOS, Linux (1..n), QNX, iOS, Android, etc... • Qt Project is open source, independently governed • Primarily supported by Qt Company in Finland • Intel, KDAB, and many others contribute • Open Source, GPL! • Official Site - https://www.qt.io 8
  9. An Introduction to Qt Quick • Qt Quick is a

    toolkit for creating apps • Use QML to create declarative UI • Can create new QML types from traditional Qt / C++ classes 9
  10. An Introduction to Qt Application Manager • Qt adopted by

    many car manufacturers for HMI / infotainment • Tesla, Jaguar, and others... • One common, open source, reference platform for all vendors. • Application launcher, window manager, etc. • Open Source, LGPL! 10
  11. Live Demo - Code, Build, Deploy • Goals: • Write

    a simple application • Compile and execute the application • Package the application for distribution • Deploy to our app platform 11
  12. Recap / Conclusion • We created an App Platform using

    • Ubuntu • Qt Quick • Qt Application Manager • We created an App using • Qt Quick • All available under open source licenses 12 Ubuntu GNU/Linux Qt Application Manager App
  13. Further Reading • Demo Code, Presentation, Tutorial, etc - http://zestymeta.xyz

    • Ubuntu • Download - https://www.ubuntu.com/download • Documentation - https://help.ubuntu.com/ • Qt Framework • Getting Started - http://doc.qt.io/qt-5/gettingstarted.html • Sources - http://code.qt.io/cgit/ • Qt Application Manager • Documentation - https://doc.qt.io/QtApplicationManager/index.html 14