An answer to your question! ASK AN EDUCATOR – “How can I suggest that Arduinos be introduced into my university computer science curriculum?”
Thank you all for submitting some great questions to my recent post!
First in line is S.Erisson asking:
How can I suggest that Arduinos be introduced into my university computer science curriculum?
Through my teaching I have discovered that one of the most beneficial ways to reinforce your curriculum is through application. I remember in my CS courses at VT we got to do fun and exciting things like sorting football stats…well not so much fun. It wasn’t until after I graduated and needed to teach 600+ high school freshman how to program, that I found the magic in programming micro controllers.
Working with a micro controller, in my opinion, is the perfect method for investigating the fundamentals of programming, and can be done with most programming languages. Arduino happens to be a really elegant solution.
I would suggest to your cohorts that using a platform such as Arduino, which is based on C/C++, can serve as the perfect opportunity to inspire future CEs and EEs through the “real world” interface between software and hardware. In addition to the use of the bountiful shields, mundane coding tasks, such as sorting football stats, could have been replaced with something fun like GPS parsing!
If the professors are opposed to the idea, you might want to suggest working with Processing, which the Arduino IDE is based on. It is a great piece of software that, like Arduino, was “developed to serve as a software sketchbook and to teach fundamentals of computer programming within a visual context.”
I hope this answers your question!
Don’t forget, everyone is invited to ask a question:
Stop breadboarding and soldering – start making immediately! Adafruit’s Circuit Playground is jam-packed with LEDs, sensors, buttons, alligator clip pads and more. Build projects with Circuit Playground in a few minutes with the drag-and-drop MakeCode programming site, learn computer science using the CS Discoveries class on code.org, jump into CircuitPython to learn Python and hardware together, or even use Arduino IDE. Circuit Playground Express is the newest and best Circuit Playground board, with support for MakeCode, CircuitPython, and Arduino. It has a powerful processor, 10 NeoPixels, mini speaker, InfraRed receive and transmit, two buttons, a switch, 14 alligator clip pads, and lots of sensors: capacitive touch, IR proximity, temperature, light, motion and sound. A whole wide world of electronics and coding is waiting for you, and it fits in the palm of your hand.
Python for Microcontrollers — sysfs is dead! long live libgpiod! libgpiod for linux & Python running hardware @circuitpython @micropython @ThePSF #Python @Adafruit #Adafruit
Get the only spam-free daily newsletter about wearables, running a "maker business", electronic tips and more! Subscribe at AdafruitDaily.com !
This can prove a tough nut to crack. We did a show and tell day presentation on Arduino and there was some interest – mild at best. But, it was a comment from an engineering professor that the Arduino seemed more appropriate for the high school level took the wind out of the sails of some of the folks behind the presentation and their interest in pushing the idea further has waned. My suggestion that another angle to try would be artists and non-EE/CE sciences hasn’t had much impact.
“…Working with a micro controller, in my opinion, is the perfect method for investigating the fundamentals of programming…”
With respect I think this is the wrong tack to take.
At the university level the Arduino is not a particularly strong platform for learning the fundamentals of programming.
I am not saying it is terrible but… without debugger and profiler tools it makes learning the ‘fundamentals’ more difficult. Sure it can be done but when compared to learning on a PC/workstation (which you need to program an Arduino with anyway) it is less beneficial to a budding programmer.
In my opinion, use the Arduino to teach the fundamentals of ELECTRONICS to Comp Sci students.
I don’t know what they use today but “in my day” we had a breadboard/battery pack device that we used to hook up various circuits. It was somewhat limited compared to what one can build today with all the devices out there (GPS’s, I2C devices, etc…).
I believe learning the fundamentals of Electronics is where Arduino’s real strength lies and where you will be able to sell the idea to university decision makers.