#QtStories - My Experience. My Story. Your Future!
Mike Trahearn - #QtStories - My Experience. My Story. Your Future! Qt QML Hot Tips Special Edition

#QtStories - My Experience. My Story. Your Future!

The letters 'Q' and 't' have been at the core of my career and I would like to take a couple of moments to explain why.

I have always loved the excitement of seeing the typed commands turn into living creations. That never changed through academic accession into a professional work. First in embedded optical communications, then Automotive HMI and now in Machine Control Systems.

HMI (Human Machine Interfaces) opened my eyes wide to a world of devices, cameras, inputs, touch pads, networks, sensors, 2D and 3D screens - a whole treasure chest of fusion just waiting to happen and I landed right in the thick of it!

Evaluation of various HMI frameworks and tools was a job staple and I ran many different projects with all manner of vendors' products undergoing training and giving essential feedback to help make those products better.

Qt as a Precursor

Qt came across my desk as a solution to a particular project problem - the HMI tool of choice at that time didn't support animations or translations and my first entry into Qt was through the back-door; the event loop and the C++ APIs that I used to support the other tool's HMI engine.

Quickly realising the power of Qt, I attended many Qt meetups and training courses to grow my network and become well equipped to use Qt exclusively for all upcoming projects.

Qt as a Profession

I have been exclusively developing with Qt every day since Qt 4.7.4 and QML first graced my desktop. Becoming a Qt developer opened me up to a worldwide network; developers from all over the world, crossing language barriers with a single goal: being brilliant at making the best, beautiful.

The Qt Framework is mature - it isn't new, but it is constantly new, building on the solid foundations of past challenges and successes.

Qt is with me and you for the long haul - it has been around a long time, and it will continue to be around for a long time, so I can go further with confidence.

When you choose Qt, you choose well for your entire product lifecycle, from design, to development, to testing and deployment.

Qt provides a rich set of modules and APIs that is so vast, you will, like me probably become proficient in but part of it.. but there is always something new to discover that you didn't know you could already do... and that has been my experience in all the different types of projects and environments I have developed for - and this is something I know that I have only achieved because of what Qt enables, having used many other frameworks in the past.

The almost limitless variety of applications that you can use Qt for means that it can be adopted by any domain; from Medical, Defence, Avionics, Automotive, Entertainment, Home Appliances, and the veritable coffee machine, all the way down to the tiniest footprint - Qt finds a home anywhere.

Qt as a Platform

The catch-phrase "code once, deploy anywhere" isn't just a phrase, it has been my personal experience. I have developed projects running on Windows, Mac, Linux Desktop, Embedded Linux, Android, iOS - and even on my smart TV!

With Qt Creator IDE you can develop with a sense of familiarity but with your own preferred OS. I use MacOS, Windows and Ubuntu - all at the same time using Qt Creator on all of them and never skip a beat.

Being able to harness all Qt's different platforms and devices with one single framework makes it easy for me to connect and scale complex solutions very quickly.

Qt as Productivity

Qt is special to me because it brings with it something I personally love: QML.

QML is a declarative language - that speaks my language. If I were writing an essay or reading a book in a foreign tongue, I would be hard pressed to make progress. While there are many programming languages out there (and I've used a number of them, including some declarative ones), you will find the "one" which matches your personal way of thinking. QML is mine and I can go very fast!

QML allows me to rapidly express my creative thoughts onto the screen saving endless hours of low level coding to achieve the same.

The QML APIs allow ideas to flow seamlessly from head to screen. I have personally never found a language so suited for the purpose of visual expression, and if you are a visual thinker like me, you very well understand why QML has become one of the best languages to use for not just for UI but in many other use cases as well.

The Qt Product Portfolio comes with a wealth of programs to assist you in practical ways, saving time and effort in the design stage with Qt Design Studio and the various UX design tool bridges, through to Qt Creator optimised for Qt development, to the Qt Test APIs for unit testing and TDD if you want to, and all the way to automated UI testing with Squish and code and analysis with Coco and Axivion at the Quality Assurance stage.

Qt as a Partner

You don't carve out a successful career without the help of many great supporters along the way. When you partner with Qt, Qt partners with you to make your greatest ideas come to fruition. Qt has a global network of trusted advisors, support teams, customer success managers, world class developers and a vibrant community of enthusiastic developers just like you and me.

I really encourage you to reach out to your nearest Qt contact to start a conversation about how you can work better together.

No matter if you are a student, hobbyist or freelancer, startup or corporation, or just having a go, there is someone at Qt who can get you off on the right track - and stay with you throughout your entire development life cycle.

Qt as a People

Take the time to make not just networks but relationships. The folks at Qt are real people. There are sports people, musicians, artists, accountants, fathers, mothers, students and they all have a story to tell and a unique insight and flavour to add. These are the people that have helped me tirelessly over the years and are waiting to help you too!

Developing networks is as quick as an "accept" or the exchange of cards, but I have found that cultivating relationships, while taking much longer, is absolutely worth every moment of out-of-hours calls and messages that has been just fantastic! My personal experience is get involved - be honest and responsible, be accountable and be kind - and you'll get the same back in return.

Qt as a Passion

So much is obvious but it isn't about me, its about those that I interact with on a daily basis, in my own workplace and in the wider community.

My greatest joy is seeing wide eyes and hungry minds filled and the blue touch-paper of creativity lit and let off!

From the first time I started to dabble with Qt, I have been wowed with what it can do and the deft touches that mastering some of its powerful APIs can afford you in creating effective solutions that turn your potential customers' heads at those awesome expos all year round.

Get started! Like me, you have to start somewhere and I had so many stupid questions back in the day, but now I'm growing in the grace to assist others at the same humble starting block. These days, you don't have to start by reading the docs - there's a wonderful world of content just waiting for you to get into...

Get enrolled at the Qt Academy and begin your learning journey! There are so many courses and learning paths covering a wide range of topics - and its all free and easily accessible.


Qt as a Career

You might like to read a special interview that the Qt公司 did with me in March 2022 where I encourage those starting out on their Qt journey or making decisions about their future to look forward with excitement and anticipation!

You too can launch ahead with not just a leap of faith, but with a whole world of Qt guiding, equipping and supporting you as you develop your own Qt as a Career.

Qt as a Future

I hope that you have been encouraged to learn, to reach out and connect, to make some new friends and have an absolute blast as you start making some awesome projects!

The Future Is Written With Qt - is yours?
Adama ZOUMA

Senior DSP/C++/Algorithm Developer at EXFO

3 个月

QT enthusiast! Thanks for sharing

Ravisurya V N

Principal Firmware Architect | Corporate Qt Consultant | Qt 6.x/5.x with C++ 11/14/17, Linux, QML, QtQuick, LVGL, CMake, JavaScript, Python, iMX6/7 SOM , STM32MP157 SOM , AWS IoT, HTML, Yocto

1 年

Well said. I do feel the same way and have been a big fan of Qt since past 18 years. Being used Qt in different verticals and different perspectives, there is no limit to it. You name any upcoming technology Qt has a link/ binding/connection to it. If you are an avid follower Qt and it's products/partners you don't have to go anywhere else to reinvent the wheel. You can correlate to it quickly and Qt offers everything to get started with confidence ??.

Masoumeh Hosseini

Software Engineer | C++ | Qt | QML

1 年

The story of a champion ??

Amanda Schoenfeld

Global Marketing Lead @ Qt Group │ all things brand, entrepreneurship, & tech ??

1 年

Thanks for sharing your story Mike! What a great read ?? I can imagine that you're a huge inspiration to the next generation of Qt users!

Mike Trahearn

Qt Professional Services | Qt Academy | Qt Lifetime Champion?????? | Director Codecept Software Pty Ltd | Qt QML C++ Specialist | Unique Thinker, Detailed Craftsman with Precise Foresight and a Personal Approach

1 年

See this and more #QtStories at qt.io/qt-stories!

回复

要查看或添加评论,请登录

Mike Trahearn的更多文章

  • Qt QML Hot Tips #9

    Qt QML Hot Tips #9

    Part 9 - Move your QML over to the DARK side..

    11 条评论
  • Qt QML Hot Tips #8

    Qt QML Hot Tips #8

    Part 8 - How to save face by using namespaces - a quick guide to QML and enums! Following a rather extended period…

  • Qt QML Hot Tips #7

    Qt QML Hot Tips #7

    Part 7 - Does my RCC look BIG in this? Or, "How to handle your large assets"..

    1 条评论
  • Qt QML Hot Tips #6

    Qt QML Hot Tips #6

    Part 6 - The "Unbinding" Like sounding like a potential horror film title, this article is inspired by a shuddering…

    1 条评论
  • Qt QML Festive Hot Tips

    Qt QML Festive Hot Tips

    Ho Ho Hot Tips - Christmas Special! While your projects are getting stuffed and your turkey is still compiling I…

  • Qt QML Hot Tips #5

    Qt QML Hot Tips #5

    Part 5 - I'm sorry, your access is restricted! From Qt 5.15 and much more strictly in Qt 6, a series of improvements…

  • Qt QML Hot Tips #4

    Qt QML Hot Tips #4

    Part 4 - May I See Your ID? In this article I cover one of the easiest parts of the QML syntax - but its inclusion in…

    3 条评论
  • Qt QML Hot Tips #3

    Qt QML Hot Tips #3

    Part 3 - Are your properties required? if(someObjectProperty !== null) someObjectProperty.callFunction() is found…

    6 条评论
  • Qt QML Hot Tips #2

    Qt QML Hot Tips #2

    Welcome to Part 2! Continuing on a theme of raging against the tide of poorly written QML using examples from years of…

  • Qt QML Hot Tips #1

    Qt QML Hot Tips #1

    Welcome! This is the first of many extremely short articles containing some absolute nuggets of gold stashed away until…

    12 条评论

社区洞察

其他会员也浏览了