@beacon_dave.......Nice one Dave
@beacon_dave, I am surprised that not many members latched on to this one.
Maybe the case to promote it better?
1 of 1 people found this helpful
volly - it is possibly too elementary / generic a subject area for the majority of members especially if they are not involved directly with STEM education.
Perhaps another YouTube course resource worth mentioning is Bruce Land's "AVR microcontroller lectures"
which may be of interest for those wanting to progress from the Arduino environment to working with bare bones Atmel AVR.
It's a lecture capture series from Cornell University's ECE 4760 "Designing with Microcontrollers" course
The quality of the video production is a bit rough around the edges but the content is informative and the lecturer's style is quite entertaining at times.
It is a bit more in-depth course than Atmel's "Getting Started With AVR" series
There also appears to be a more recent PIC32 version of the ECE 4760 course, for those interested in the PIC32 microcontroller family
May be of interest to some members.
1 of 1 people found this helpful
Nice post Dave.
About twenty years ago I put together a full system/software engineering training course that was CMMI compliant for my office.
I had a lot of fun with it and it taught me a lot about how to put together exercises to challenge students to think about what they needed to do and the preferred methods of deciding on technical approaches and how to document their decisions.
One of the greatest evil's of our time was the notion that anyone who could learn a programming language could write software.
Coding is less then 10% of the effort that needs to go into quality software.
I hope this STEM course provides that lesson. Otherwise we will just get another generation of people doing work for which they are not qualified.
2 of 2 people found this helpful
DAB I really appreciate the comment about coding versus total time for proper software engineering. Too much emphasis is put on "coding" and "code". Very few educational sites, for example, give thought to discipline of the process. When I have worked with younger folks, I have tried to orient them this way:
- Requirements gathering and agreement
- Is leveraging possible?
- Architecture & planning of the rest of the project
- High-level design / Design reviews
- Detailed design of the anatomy and components / Design reviews
- Construction (aka coding) / Code reviews / Unit testing
- Integrated system testing (probably, step-wise with stubs)
- Quality assurance testing by someone else (no developers allowed unless requested)
- Installation / roll-out and related testing
Footnote on cryptography and security: It is developed immediately and is challenged in code review and unit testing. No BS about adding it later.
My beginnings were during the time of punched cards and paper tape. Back then, infrastructure-type projects were nearly always in Assembly Language. Even Fortran & Cobol projects forced you to manage your time well. If you rushed into construction then, you made a huge mess - even at the application level!
It was gratifying that, with a bit of tutoring and using a few simple analogies, young newbies could figure out that investment time up front payed off downstream.
Yes, I sometimes tell newbies that they must make haste, slowly.
Up front planning makes the entire project easier and cheaper. In my forty years of working in the field, nobody has ever proven to me that they can do a quality job without following the process. They may create something fast, but seldom can it be maintained or expanded without a complete redesign and rewrite.
You either pay up front or you pay ten times as much later. Why is this such a difficult decision?
Good luck with the class.
Let me know if I can help.
I've not seen it mentioned elsewhere yet, but Carrie Anne Philbin (Raspberry Pi Foundation) in collaboration with PBS Digital Studios, appears to have created a crash course in computer science on YouTube.
"Starting February 22nd, Carrie Anne Philbin will be hosting Crash Course Computer Science! In this series, we're going to trace the origins of our modern computers, take a closer look at the ideas that gave us our current hardware and software, discuss how and why our smart devices just keep getting smarter, and even look towards the future! Computers fill a crucial role in the function of our society, and it's our hope that over the course of this series you will gain a better understanding of how far computers have taken us and how far they may carry us into the future."
May be of interest to those in the STEM community.