Python and OCR

Posted by Jack McKew on Fri 28 June 2019 in Python • Tagged with python, ocr • 4 min read

This post will demonstrate how to extract the text out of a photo, whether it being handwritten, typed or just a photo of text in the world using Python and OCR (Optical Character Recognition). While this is something that humans do particularly well at distinguishing letters, it is a form …


Continue reading

Python and Data Security (Hashing Algorithms)

Posted by Jack McKew on Fri 21 June 2019 in Python • Tagged with python, security • 5 min read

Data security is becoming more and more prevalent in today's society than ever before. We must make a conscious effort to secure both our physical lives, but also our digital lives as well. With data privacy, sharing of information and access control becoming integrated into most people's life in some …


Continue reading

Hands On Machine Learning Chapter 1

Posted by Jack McKew on Fri 14 June 2019 in Machine Learning • Tagged with machinelearning • 6 min read

I've recently been making my way through the book "Hands-On Machine Learning with Scikit-Learn and Tensorflow", and thought I will put a summary of the chapter as a post, along with my personal answers to each of the chapter's exercises. The book in particular is published by O'Reilly and can …


Continue reading

Parallel Processing in Python

Posted by Jack McKew on Fri 07 June 2019 in Python • Tagged with python • 3 min read

Parallel processing is a mode of operation where the task is executed simultaneously in multiple processors in the same computer. The purpose of this is intended to reduce the overall processing time, however, there is often overhead between communicating processes. For small tasks, the overhead is detrimental to the length …


Continue reading

Distributing Python Code

Posted by Jack McKew on Fri 31 May 2019 in Python • Tagged with pyinstaller, python • 2 min read

This post will cover a way of distributing Python code such that is can be used by someone that does not have Python installed. One of the major drawbacks with Python that the gap is slowly being closed is how easy it is to distribute Python code.

At a minimum …


Continue reading

Python Decorators Explained

Posted by Jack McKew on Fri 24 May 2019 in Python • Tagged with python • 3 min read

Python decorators are one of the most difficult concepts in Python to grasp, and subsequently a lot of beginners struggle. However they help to shorten code and make it more 'Pythonic'. This post is going to go through some basic examples where decorators can shorten your code.

Firstly you have …


Continue reading

Explained: Voltage Drop

Posted by Jack McKew on Fri 10 May 2019 in Engineering • Tagged with electrical • 2 min read

Voltage drop is a electrical phenomenon in that wires carrying current always have resistance, or impedance to the current flow. Voltage drop is defined as the amount of loss that occurs through part of or all of a circuit due to resistance/impedance.

The most well known analogy for explaining …


Continue reading

What is MongoDB?

Posted by Jack McKew on Fri 03 May 2019 in Software Development • Tagged with database, mongodb • 3 min read

Recently after looking for a different flavour of database apart from MySQL (which is what I am personally use to), I had always heard about MongoDB. So after some investigation, I found that MongoDB has a platform MongoDB University to familiarize yourself with their product.

I completed their very first …


Continue reading

Efficient Frontier for Balancing Portfolios

Posted by Jack McKew on Fri 26 April 2019 in Python • Tagged with python, data, analysis • 5 min read

Following last 2 weeks’ posts (Python for the Finance Industry & Portfolio Balancing with Historical Stock Data), we now know how to extract historical records on stock information from the ASX through an API, present it in a graph using matplotlib, and how to balance a portfolio using randomly generated portfolios …


Continue reading

Portfolio Balancing with Historical Stock Data

Posted by Jack McKew on Fri 19 April 2019 in Python • Tagged with finance, python • 4 min read

Following last weeks' post (Python for the Finance Industry). This post is to demonstrate a method of determining an optimized portfolio based on historical stock price data.

First of all while attempting to tackle this problem, I stumbled across many very informative articles in which based on what I learned …


Continue reading

Python for the Finance Industry

Posted by Jack McKew on Fri 12 April 2019 in Python • Tagged with python, finance • 3 min read

This is the first post in a series of posts dedicated for demonstrating how Python can be applied in the finance industry. Personally, the first thing that comes to mind when I think of the finance industry is the stock market. For fellow Australians, our main stock exchange is the …


Continue reading

How to Program an ESP8266 with MicroPython

Posted by Jack McKew on Fri 05 April 2019 in Engineering • Tagged with electrical, esp8266 • 1 min read

Following the previous two weeks of topics, Introduction to ESP32/ESP8266 and What is MicroPython?.  I wrote an article on maker.pro in which I describe how to program the ESP8266 with MicroPython in detail.


What is MicroPython?

Posted by Jack McKew on Fri 29 March 2019 in Python • Tagged with python, micropython • 2 min read

From the MicroPython docs themselves “MicroPython is a lean and efficient implementation of the Python 3 programming language that includes a small subset of the Python standard library and is optimised to run on microcontrollers and in constrained environments.”. But what does all this mean? Python 3 is one of …


Continue reading

Introduction to ESP32/ESP8266

Posted by Jack McKew on Fri 22 March 2019 in Engineering • Tagged with esp8266 • 3 min read

What is an ESP32/ESP8266?

The ESP32 and ESP8266 are low-cost Wi-Fi modules, which are perfect for DIY Internet of Things (IoT) projects. They both come with general purpose input/output pins (GPIOs), support a variety of protocols such as SPI, I2C, UART and many more. The most attractive part …


Continue reading

Episode 17 – Networking Routing & Addressing

Posted by Jack McKew on Fri 15 March 2019 in Engineering • Tagged with networking • 2 min read

Following last weeks post around network topologies, I believe the next topic to cover is routing and addressing. Routing is the process of selecting a path for traffic to flow through in a network while addressing is marking elements within a network. A real-world example of routing and addressing is …


Continue reading

Episode 16 - Networking Basics

Posted by Jack McKew on Fri 08 March 2019 in Engineering • Tagged with networking • 3 min read

A network is defined as “A network is a collection of computers, servers, mainframes, network devices, peripherals, or other devices connected to one another to allow the sharing of data”. There are various configurations of networks for specific design scenarios as represented in:

network_topologies

Typical residential home networks are configured in …


Continue reading

Episode 15 - What is a C.T?

Posted by Jack McKew on Fri 01 March 2019 in Engineering • Tagged with electrical • 2 min read

A C.T is the abbreviated form for a current transformer in electrical terms. It is a simple but effective use of magnetic circuits and transformer characteristics to monitor how power is behaving in a conductor. The C.T works by wrapping a coil of conductor around a core (typically …


Continue reading

Episode 14 - Types of Machine Learning

Posted by Jack McKew on Fri 22 February 2019 in Machine Learning • Tagged with machinelearning, ai • 2 min read

With AI and Machine Learning becoming the buzzwords in technology for 2018 and the real world applications now maturing to show the benefits of this technology. It can be very confusing when first entering the world of AI and machine learning with new techniques coming out every other day in …


Continue reading

Episode 13 - Lighting Design

Posted by Jack McKew on Fri 15 February 2019 in Engineering • Tagged with electrical • 2 min read

Before I started in a more buildings-focused electrical engineering position, I didn't think that much went into selecting lights for buildings. Once you first get started in lighting design, it is like opening a can of worms, there is so much detail that goes into lighting design, it's unfathomable.

First …


Continue reading

Episode 12 - What is Git?

Posted by Jack McKew on Fri 08 February 2019 in Software Development • Tagged with software, git • 2 min read

One of the biggest issues when working on any project regardless of what industry, discipline or context, as soon as a new 'version' of design or update comes along, the issue of version control appears. When this change(s) come along in the life cycle of a project, it is …


Continue reading