Skip to main content Skip to local navigation
Home » Page 4

Blog posts

Initial Review: M3 Pro MacBook Pro

One sentence summary The latest M3 Pro laptops from Apple have one main target audience: people holding on to their Intel-based MacBooks, like me. Background I have a 2018 MacBook Air. I used it to teach in France and Germany during my sabbatical. I used it to teach online and in-person here at York University. […]

Coughing into your elbow: a (new) old wives’ tale

TL;DR: There is little to no evidence to show that coughing into your elbow prevents the spread of disease. Elbow-coughing has long struck me as a cop-out, but some posts on Twitter piqued my interest into digging around in the scientific literature. Thanks to Dr. Christine Peters and Dr. Lee Altenberg for the pointers to […]

State Machines for Electro-mechanical Projects in MATLAB

A challenge that new engineering students have when developing programs is trying to determine how to plan out their program. Should the student include a loop? Two loops? One after the other? One inside another? When adding sensors and actuators — as we do in our course — when should the sensor be read and […]

Automated Grading of Python in VPL using Unit Tests

A few of my colleagues here at YorkU have expressed an interest in using Python with Virtual Programming Lab on our Moodle-based eClass Learning Management System. I don’t have a lot of Python experience, having only really used it for some data processing and toy embedded system demonstrations in the past. So I adapted the […]

You’re capable of reading a thermometer — and a CO2 sensor!

If you feel that it’s too hot or too cold in your office or classroom, you wouldn’t expect your employer to say “Hey! You can’t bring a thermometer into the classroom to measure temperature. You need expert training to read and set up that thermometer.” Of course not. That’s ridiculous. And the same goes for […]

Java and Arduino (2022 edition)

In the EECS 1021 class here at York University the students learning about object oriented programming in an engineering that uses sensors and actuators. We use Arduino devices that host a special pre-made firmware called Firmata to do this in order to unburden the students from the C++ coding that would otherwise be required on […]

“Mistakes are possible”

Last month I posted about why it’s important for my students to be careful when (not if!) they use AI chatbots like Bing / ChatGPT. Today, I turned on Bing and noticed this disclaimer: Frankly, that’s good to see. These chatbots are interesting and potentially useful tools, but one must be cautious when using them. […]

Matlab and Arduino (Fall 2023)

[updated in 2024] I use Arduino-compatible hardware in two of the engineering programming classes that I teach here at York University. Rather than program the boards directly, I have the students install a little program on the Arduinos that can communicate with the programs that the students actually write on their own computers. For the […]

It’s Not About The Car

Fast Car isn’t about the car. James Andrew Smith is a Professional Engineer and Associate Professor in the Electrical Engineering and Computer Science Department of York University’s Lassonde School, with degrees in Electrical and Mechanical Engineering from the University of Alberta and McGill University.  Previously a program director in biomedical engineering, his research background spans robotics, locomotion, human birth and engineering education. […]

ChatGPT: “I’m sorry but I couldn’t find any information”

While chatbots like ChatGPT are truly ground-breaking, they have limitations. In fact, there are many cases in which chatbots simply cannot return an answer due to the limitations of the LLM structure and dataset. Experts quickly find the limitations of chatbots, but novices to a topic are very likely to get tripped up by the […]