5 minute Video Version can be found here:


Links to all demos in the description.

Link to the Slideshow: https://docs.google.com/presentation/d/1Rd4Ywcp8urxz1l6OwqTdsD26s3WtTTHwS67w1LNqZco/edit?usp=sharing

Links to demos interspersed throughout the article below.

2016 — Frontend —

Frontend in QML, all sorts of controls, dropdowns, menus, toggle buttons, radio buttons, curve tools, graphs, selection tools, transform tools, masking tools, ellipse tools.

I became very familiar with QML, writing base classes in QML, I tried to use the Composition Design Pattern whenever I could.

Wrote/Edited some small amounts of shader code, GLSL,

Very familiar with throwing around QVariantMaps between C++ and QML,

Signals and Slots, QtObject class etc, using…

These are questions for review I have been asked or created to supplement questions I have been asked in Computer Architecture class. This is an accredited required course for a bachelors in Computer Science at most universities. I have taken this class twice, due to transferring to different uni and so seen this class given in two different ways. I’ve included illustrations as well as explanations of my answers, but also tried to make each Q/A relatively succinct.

The textbooks for Computer Architecture courses are always quite large, so it is very important in this class to narrow down your…

1. What is OOP?

OOP stands for Object Oriented Programming. OOP is a programming paradigm that relies on the concept of classes and objects. It is used to structure a software program into simple reusable pieces of code blueprints (usually called classes) which are used to create individual instances of objects.

C is a procedural a language and yet C++ is an Object Oriented language because it has classes and can take advantage of polymorphism.

2. What is a Class?

Class is a blue print which reflects the entity’s attributes and actions. Technically defining a class is designing a user defined data type. …

I have made a YouTube video with voiceover showing these steps here: https://www.youtube.com/watch?v=t44Xt1vWNxU

This tutorial I made on Windows, but you can apply this technique on any OS.


Selenium is often used for automated testing in the browser, but can be used for automating all kinds of things in the browser. If what you’re automating involves logging into an account, this shows how to load your login cookie so that when you launch the browser again, you will already be logged in when you go to your site.


You must have python installed.

You can do:

$ python --version

I used to put everything into Jenkins that I could because,

I used to be a DevOps engineer and on top of that I was also an Application Developer guy, making features, fixing bugs and stuff.

That meant every time someone wanted an installer they would go to me to build one. I tried and tried and tried various ways to automate this so that other people could build their own installers, and the one that stuck was Jenkins. With Jenkins I could just direct people to a web page, maybe have them enter in a few settings for what…

Video Version: https://youtu.be/Tiq_vea5Eqg

If you’re running into this error when using OnnxRuntime in Python, it’s because you’re missing a Cuda dependency or something,

ImportError: cannot import name 'get_all_providers' from 'onnxruntime.capi._pybind_state

The OnnxRuntime doesn’t make it super explicit, but to run OnnxRuntime on the GPu you need to have already installed the Cuda Toolkit and the CuDNN library.

First check your machine and make sure you have a Cuda Enabled Card. If you have a pretty recent NVIDIA card you are probably good, but go to the NVIDIA website and check the compatibility tables and make sure if needed.

The Windows…

Language: Java

java 11.0.9 2020-10-20 LTSJava(TM) SE Runtime Environment 18.9 (build 11.0.9+7-LTS)Java HotSpot(TM) 64-Bit Server VM 18.9 (build 11.0.9+7-LTS, mixed mode)


My Java dir in Program Files

OS: Windows 10

Error Message screencap

Got this error running Conan on MacOS, trying to build a package that required opencv 4.5.0 to build from source.

On first glance it looks like OpenCV is messed up or maybe conan but if I look up past all the red text I can see the real original cause of the issue. The red text is just a cascading consequence of this original error message.

For this reason, I do advise not to stop reading a log at the first error message you find, but instead to try to see if there is some cascading effect and to see…

some rainbow bash for the kewl colors

A for loop is a relatively simple concept, but I wanted to break down the syntax here because under the hood, bash is very much, and I cannot exmphasize this enough, not C. I do try to see what’s happening under the hood though so that when I copy paste from StackOverflow and it doesn’t work, I can actually troubleshoot.

You can loop through arrays in bash like this

array=(thing1 thing2)for i in "${!array[@]}"; do
echo ${array[$i]}

If you want to iterate through pairs, an easy way to do that would be something like this:

xvalues=(x1, x2, x3)

Ashley Tharp

Want to hire me? Summary of my recent work can be found on this account. More info at ashleyntharp.com

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store