Understanding Rust's Ownership Model
Written on 12 Mar 2022
This article looks at why Rust implements its ownership model, and how this model helps guarantee memory safety without the use of a garbage collector.
Written on 12 Mar 2022
This article looks at why Rust implements its ownership model, and how this model helps guarantee memory safety without the use of a garbage collector.
Written on 05 Dec 2021
Detecting a face from an image is an important step to many computer vision applications, for instance extracting features from a face using a model like VGGFace2. This tutorial goes over two well known approaches- HAAR Cascade Classifier using OpenCV and a Convolutional Neural Network, specifically MTCNN
Written on 16 May 2020
Autosuggest, also referred to semantically as a Combobox, is a web component we are all familiar with. It is comprised of an input where a user can type, and a dropdown menu with suggestions that the user can select. Depending on the use case, there may be some extra caveats. Some components will autofill the user's response based on the suggests, some will require that the user select something, some will fire a network request and so on.
Written on 25 Jan 2020
A finite state machine is not a new concept in the world of computing or mathematics. It is a mathematical model that be in one a few finite states. Transition to a new state could depend on the previous state and a set of external factors.
Written on 10 Dec 2019
We have all seen the ripple effect animation which was part of the material design recommendation. It presents itself as a circle that appears at the point of a click and then enlarges and fades away. As a UI tool, it is a fantastic and familiar way to let the user know that there has been a click interaction.
Written on 14 Sep 2019
Almost every advanced feature such as authentication, shopping carts, bookmarks etc. heavily rely on state that multiple components need to be aware of. This can be done by passing state through props but as an application grows this gets complicated very fast. We end up having to pipe state through intermediary components and any change in the shape of the state needs to reflected in all of these components. We also end up with a bunch of code unrelated to the concern of the intermediary component, so we learn to ignore it and the code we ignore is where the bugs hide.
Written on 29 Aug 2019
Vim was something recommended by a friend and I had seen several Youtubers use it. I noticed that watching a skilled Vim user at his job looked nothing short of wizardry. It seemed as if they could bend the text editor to their will at the tap of a few keystrokes. Above all it seemed so... intimidating.