Extending Qt5 with Open Source - Qt Developer Days

3 downloads 81 Views 5MB Size Report
Carl Symons. Large and small tech companies. Start-ups; frugal. Free/open user & contributor. Grassroots LinuxFest. KDE News; MWG ...
!Reinvent Extending Qt5 with Open Source

Qt Developer Days 2013 Carl Symons

Background Transitions Details What's in it for you

Carl Symons

Large and small tech companies Start-ups ; frugal Free/open user & contributor Grassroots LinuxFest KDE News; MWG

KDE Technology Platform

KDE Flat, lean Democratic Well known & respected Innovative Regular people

Largest Participant

20% retention

1 /3

KDE & Qt Part of KDE from the beginning Qt (5/95), KDE (1 0/96) KDE Free Qt Foundation (1 998) Early & largest external Qt user Fill gaps in Qt framework Committed to Qt

So ... Sustainable development in a thriving, venerable community Reliable legal backing Quality (extensive use and testing) Permissive licensing Business friendly

Transitions The Qt Project (open governance) Qt5 / KDE Frameworks 5

Frameworks 5 Monolithic > Modular

Whatcom Sehome Bellingham Fairhaven

Incremental Consolidation

Frameworks 5 Each function is distinct Move KDE capabilities to Qt Mostly transparent to users

Soft Stuff

As important as technical Easy to understand and work on More people can contribute Shared responsibility Available to all Qt developers Recruiting value

Tiers

Refer to link-time dependencies Tier 1 depend only on Qt official frameworks or system libraries Tiers 2 and 3 can depend on same level or lower tiers

Types

Functional Qt Addons

no runtime dependencies; drop-in functionality KArchive—file compression/extraction Threadweaver—multi-threaded code KPlotting—simple plotting KConfig—configuration settings

Types

Integration Qt Addons

optional runtime dependencies; integrate with underlying OS/Platform

Integration Qt Addons

Sonnet

spell checking, grammar, automatic language detection, multilingual tools, dictionary, thesaurus Solid hardware detection and information storage devices and volumes, CPU, battery status, power management, network status and interfaces, Bluetooth

Solutions

Types

mandatory runtime dependencies; e.g., scalability, resource sharing KIO—local & remote file browsing and editing KService—advanced features for plugins (user's preferred PDF viewer)

K

Others

QtMultiMedia module QtGStreamer module Kross scripting framework Qt Configuration much more at inqlude.org

KArchive – create

KArchive – create

KArchive – read, uncompress

KArchive – read, uncompress

Thank you Aaron Seigo

So ... Atomicity–each does 1 thing well At the leading edge of Qt Valuable source of Qt expertise Open to any and all Qt developers Provide direction Recruiting Cross platform

• Comprehensive PC environment • Wide range of applications • User eXperience technology stack for tablets and other consumer devices Imagine what goodies KDE might have for you

Resources

inqlude.org kde.org manifesto.kde.org community.kde.org/Getinvolved community.kde.org/Frameworks [email protected]