Search This Blog

Friday, April 3, 2020

Too Much Time? Learn a New Computer Skill!

Bored and Unemployed?

Back in 2009 and early 2010, I found myself unexpectedly between jobs. The economy was in a downturn, and there were lots of professionals looking for jobs. I spent a fair amount of time looking for jobs, hoping for at least a phone interview. It took six months to find a job.

But I didn't stop there. So what else did I do?


Best Advice

One of the best pieces of advice I was given was join a bi-weekly networking group. We met for about two hours, practiced our "30 second intros," talked about what we had done (accountability), and listened and gave feedback to others. Sometimes a nugget would come out: "ASKIT Tech has an opening an SW Engineer to work on COBOL. If you know some who knows COBOL, I can tell them who to talk to."

While joining the network group was great advice, it wasn't the best advice I got. The BEST advice was:

Don't let your skills rust while you are waiting. Do Something with them. Learn a new Skill!


Learn a New Skill

If you are software developer, one of the best places to find some great books and training programs is Packt Publishing. They have a Huge catalog of resources.

Personally, I recommend you learn Qt 5. Why?
  1. Qt 5 is cool!
    1. It runs on almost anything these days! Embedded to desktop. Linux - Windows - Mac - QNX
    2. It's fun to say correctly like "cute," or incorrectly "Q T."
    3. It's some much more than just a graphics framework.
  2. I wrote a Packt Hand-On book that teaches you how to go from a basic knowledge of C++ to a Qt developer. Along the way, you learn as you do.

Don't be scared off by the "Embedded" in the title! The book was written so that 90% of the exercises can be completed without using the embedded target, a Raspberry Pi!  Part of what you learn is how to build and debug on a host system and then re-build and final test on the target! 

(Don't take my word, read the reviews on Amazon!)

Free Stuff!

Packt is currently offering Free Access to their Workshops. I've already taken advantage of this and grabbed a couple of ones that match some of the job listings I am seeing.

2 comments:

  1. John:
    I just bought your book and waiting for delivery, after loosing many sleeps and mumbling from my wife because of cross compiling Raspi 3B (not sure is Plus). 2 units are from son. All the goggling doesn't help. I follow some guides from your book snippets. Well I am still stuck. I hope you
    will read this post !

    "WARNING: QDoc will not be compiled, probably because libclang could not be located. This means that you cannot build the Qt documentation.

    Either ensure that llvm-config is in your PATH environment variable, or set LLVM_INSTALL_DIR to the location of your llvm installation.
    On Linux systems, you may be able to install libclang by installing the libclang-dev or libclang-devel package, depending on your distribution.
    On macOS, you can use Homebrew's llvm package.
    On Windows, you must set LLVM_INSTALL_DIR to the installation path.

    WARNING: Python version 2 (2.7.5 or later) is required to build QtWebEngine.

    WARNING: gperf is required to build QtWebEngine.

    WARNING: bison is required to build QtWebEngine.

    WARNING: flex is required to build QtWebEngine.

    WARNING: Thumb instruction set is required to build ffmpeg for QtWebEngine.

    ERROR: Feature 'opengles2' was enabled, but the pre-condition 'config.win32 || (!config.watchos && !features.opengl-desktop && libs.opengl_es2)' failed.

    ERROR: The OpenGL functionality tests failed!
    You might need to modify the include and library search paths by editing QMAKE_INCDIR_OPENGL[_ES2],
    QMAKE_LIBDIR_OPENGL[_ES2] and QMAKE_LIBS_OPENGL[_ES2] in the mkspec for your platform.

    Is Qt looking for libEGL.so and libGLESv2 at Raspi or Host?

    Can you provide some guidance?

    My main aim is Beaglebone Black and some other Arm Embedded Board, but RasPi will be my starting point.

    ReplyDelete
    Replies
    1. Hello Simon!

      Thanks for your patience. Can you give a little more information so I can help you better?

      What version of Qt are you trying to build? (Qt 5.12.0, 5.12.1, 5.13.1, etc.)

      What OS is installed on your host machine (Windows, Linux -- which one, Mac)?

      Were you able to grabbed the suggested Yocto for Raspi image and copy the parts of the file system to your host machine?

      The basic process I layout in chapter 1 of the book is to first grab a specific target OS image (yocto for Raspi). Next, you need to copy part of that root file system to your host so you can build against it on the host machine. [Qt will be built against the target's libraries, including libEGL.so from the Raspi image.]

      Once you have a copy of the root file system, you need to make sure you have all of the tools on the host to build/cross-compile with. Where to find them is also in the book.

      Finally, you will need to configure to be built using the cross-compile tools and the libraries / headers from the copy of the root file system of the target. That is why the configure command is so complex.

      -John

      Delete

Because a few bad actors post bogus, provocative, offending, advertisements, and other inappropriate comments, All Comments are Moderated. We will try to get to your comments as quickly as possible.