Tag Archives: compsci

Planning In Code

One of the skills I work with students on in many of my classes is how to plan to code, in a helpful and efficient way. This is true certainly in my computer science classes but also in my Principles of Engineering (POE) and Computer Integrated Manufacturing (CIM) classes as well. Pseudocode, flow charts, process flow diagrams, are all structures and formats I have used before with students, with varying degrees of success.

This year, with Advanced Placement Computer Science A (AP CSA), I definitely plan to use several of the UML diagram formats with Java coding. Certainly class diagrams (like this one I posted last week) fit very well with an object-oriented language like Java. The course I took this summer on the Software Development Process, and especially our group project there, helped me understand several of the UML formats in a deeper way; I can definitely see myself using the Use Case and perhaps Sequence diagrams as well.

Anyway, today I worked with my AP CSA students to develop a few less-formal diagrams on the board: We did some mind mapping together as we brainstormed attributes or variables with values that would apply to weather (for a weather app):

weatherAttributes.jpg

And then we did the beginning of a decision tree:

weatherConditionals.PNG

My engineering students are using a planning table on paper to plan out their G&M-codes they will use to control the CNC milling machine to carve out their initials.

And my AP CS Principles students haven’t gotten deep enough into code yet to use a planning template. We have done some coding using Python as a calculator and to draw pictures (turtle library), and to play interactively against the “intelligent paper”. But most of our time so far has been discussing computing innovations, their impact on society, and working on a research presentation.

After school today, I had students stay for CyberPatriot practice, and it was also the first day of Interactive Mural Lab, led by some folks from MICA, which will help coach some students to creative a computer-programmed, electronics-infused, creative mural on a wall of our school! I’m super-excited to watch their progress over the course of this year, both to see how the mural turns out, and to see what skills and techniques students will learn as a part of this project.

Phew – I’m exhausted just writing about all that! 🙂  Have a good evening.

#day15 #180blog #teach180

Advertisements

Leave a comment

Filed under computer science, teaching

Machine Learning is Cool!

I’m continuing to really dig Coursera. After completing an Algorithms course there this summer (discussed in my post here), I am now in the midst of a course on Machine Learning. Go check out the course description & video now; I’ll wait.

As you saw by following that link, machine learning is a way that computers and robots can learn to predict or distinguish different things. It is used lots of places, including your email spam filter (which learns every time you flag a message as spam). It is a form of artificial intelligence that mimics our own intelligence–we don’t get born already knowing how to do everything, but instead learn various tasks from others.

Anyway, I’m writing today because I just wrote a series of programs that enabled my computer to decode handwritten numbers and figure out which digit(s) are represented. I’m proud of myself 🙂 — that’s a pretty cool thing to program, and a pretty cool thing for my computer to learn how to do!

The program, after having gone through training, correctly reading the number 2.

(PS – I promise more soon on my day at Morgan last week.)

1 Comment

Filed under engineering