Kareem Elmokattaf



Welcome to Kareem's website

Introduction

Hello there, my name is Kareem Elmokattaf (bonus points if you can say my last name). I am a Mechatronics engineering graduate from McMaster University. Since my graduation I have rejoined Husky Technologies, where I did a 16 month co-op, as an Electrical Designer.

Since rejoining, I have had more of an interdisciplinary department role where I have been working with the software team to help develop, fix and update tools for the electrical team. While doing so, I have had an increase in passion for programming which I have been acting on. Through this passion, I have taken on the initiative to create and maintain tools for the electrical team to help improve productivity and efficiency.

The first project I have worked was very critical to improving efficiency not just for the electrical team, but the other production departments (mechanical and software). To give a little bit of a background, our customers when ordering a machine might order what we label as a "special". The "special" is a, as the name says, a special request that the customer would like to have on the machine. Whether that be a specific color or a specific function, there is a lot of variety that comes with it. These specials have been in the company since the start of 2010, and ongoing. When creating a new project, in order to ensure that we have the right information and that our newer projects match those of the older projects, we would use those already existing projects as a reference. Considering that there have been 14 years and counting worth of projects, that is an extremely large dataset to go through and try and find information. This information was also not readily available as it was all on excel or word documents. So I created a tool using C# that would go through all the folders of all the projects since 2010, it would read through the excel or word file and collect the information from there. While doing so, it would gather all the necessary information about the special and the project where the special was requested. This information would then be stored in an SQL database. After the tool has finished going through all the files, you can quickly search for the special you want to see a reference for. The user can use either the special name, the special number, keywords that are in the special and many other ways to find the special's reference. This helped reduce the time wasted searching through multiple word documents and excel files by more than 100 times. What used to take hours, now takes a minute to find.

Continuing to learn more and develop myself and my skills further has made me realize what I am capable of. As an example, over the last academic year, I have improved my ability in building and understanding circuits. I always struggled to understand how to build circuits even with the help of a lot of online resources. But over the course of the past year, I decided to make it my goal to learn how to build and understand circuits. With the collaboration of my classmates and TA's I understood how circuits are built and how they work. This is one of the goals that I have set myself for the year and I am glad to have met that goal.

After successfully competing in my "Android App Development" course using the online initiative, One Million Arab Coders, I have decided to start learning machine learning. The learning process will be tedious but I am up for the challenge. After spending a few days learning machine learning and how it works, I have developed my first machine learning program.

This is my webpage that I am currently working on improving. There is going to be a lot of work on this webpage which I am very excited to share with you. This webpage will continue to improve as I continue to learn more about HTML, CSS, Javascript, Bootstrap and PHP to make this webpage more appropriate and better.

Skills

Programming

C

First programming language I learned

Used as a fundamental for other programming languages

Learning how to use C to program micro-controllers

Java

First object-oriented programming language I learned

Comfortable with using classes, arrays and algorithims

Python

Learned Python at university

Continuing to improve and develop new attributes and skills

Enjoy Python's versatility

Learning how to use python for web applications

HTML

Used to build this webpage

Continuing to develop skills and methods

Starting to learn PHP to further develop my webpage

SQL

Learned through the One Million Arab Coders initiative

Used to analyze some lab results during one of my courses

NX11

Learned at Husky during Co-op

Used to create sheetmetal drawings and updating machine layouts



Projects

Miwok APP

Personal Project

The Miwok App is related to the Miwok Language, a Utian language, and its translation into the english language. The App helps preserve the Miwok Language as there are only a few people who are able to speak it fluently.

During my course of Android App Development using the online initiative "One Million Arab Coders" I was walked through the process of building an app. Through this course I learned more about Java and XML while using Android Studio

Personal Webpage

Personal Project

Learned HTML, CSS and JavaScript to develop the webpage. Spent time familliarizing myself with bootstrap and its usages. Continuing to familiarize myself with the capabilities of JavaScript and PHP to continue developing my webpage. Learning how to use PHP to make a contact form to add onto the webpage and make the webpage more interactive.

Text to Speech System

Competition Project

The project was to develop a system to help a client with progressive supranuclear palsy (PSP). PSP is a condition which affects the host's ability to speak and move. Our system manipulated the letters inputted by the user on an HTML webpage into google's predictive texting to predict the words being typed. When the client had formed the sentence, pressing "Enter" would make the system run google's text to speech API.

Virus-tracking Software

Competition Project

In a group of 4, we worked on finding a solution to a given prompt. We had to develop a software that can assess a given CSV file to help track the spread of a virus. This was in relevance to the COVID-19 virus. The software we develeoped used python to help us create a visual representation of where the virus was spreading and to also give a color-coded warning depending on whether the virus seemed to develop into a global pandemic.

L3 Wescam prototype

Competition Project

In a group of 4 we were presented with a problem set by L3 Wescam. We used autodesk inventor to create a model for the problem presented. We created a model for the cameras attached to the bottom of planes to help protect them as their damage costs the company a lot of money. After completing our model we simulated how our model would work on a plane and also made a real life prototype using an arduino to present our solution.

Pacemaker

Academic Project

For one of my courses (SFWRENG 3K04), we had to create the software and the GUI to a pacemaker. We were provided with PCB boards that we then had to program using Simulink to act as a pacemaker. We also created a GUI, using python, that would be able to register users onto the software making it easier for users to reuse the software. The GUI also provided the ability to change modes and parameters for the pacemaker to fit each user's needs.

Metal Detector

Academic Project

In a group of 3, for one of my engineering courses (ENGPHYS 2A04), we had to make a metal detector for our design lab. We used hot glue, a cup, popsicle sticks and wires to make our metal detector.The wires were made into coils which were connected to a voltage source making them carry a magnetic field between them. We made a hole in a cup to insert the metal. The oscilloscope would tell us if there was metal in the cup by the change in the graph presented on the oscilloscope.

Robomaster

Club Project

Being part of the mechanical team, we were responsible for the chassis of our robots. We were given the goal to improve the chassis on the previous year's robots. As a team we worked on ideas to improve the design of the robots. Another goal that was to be met was the idea of communicating better with other sub-teams of Robomaster to help in making our robots best suited for the work of all sub-teams.