Computer Science 2 S&S

At the conclusion of last school year, I had a curve-ball thrown at me concerning my plans to offer AP Computer Science 2 based upon an adopted AP syllabus when I requested the course authorization. This course would align with the AP Computer Science – A Exam. In addition, the course would count as a Language Other Than English (LOTE) credit for our students.

Well, the State of Texas had other plans on that. According to TEA, Computer Science 2 can count as an AP credit OR a LOTE credit, but NOT both.

As we already have HB-5 students in progress that need CS2 as their second LOTE credit, we have elected to drop the AP designation. However, I am still modeling the course after the AP CS2 curriculum from the adopted syllabus, which will allow the students to be prepared to take the AP Computer Science – A Exam at the conclusion of the year, if they would like.

Here is what I am planning to cover in CS2 this year:

  • Weeks 1 – 2
    • Computer Systems
      • Numerical Representations, Limitations of Finite Representations, Number Bases & Conversions, Hardware, and Programming Languages
  • Weeks 3 – 4
    • Objects & Primitive Data
      • Simple Data Types (int, Boolean, double, char), Variable & Constant Declarations, Assignment & Arithmetic Expressions, Console Output, Primitives vs. Objects, Create Objects with Classes, References, JAVA Library Classes (String, Integer, Double, Math, & Scanner), and Random Numbers
  • Weeks 5 – 6
    • Conditional Programming Statements
      • Software Development Process, Control Flow, Boolean Expressions, Laws, Truth Tables, and Conditional Expressions
  • Weeks 7 – 9
    • Iterative Statements
      • Flow of Control, While, For, Infinite, and Nested Loops, and Algorithm Analysis (Running Time and Execution Counts)
  • Weeks 10 – 12
    • Writing Classes
      • Anatomy of Classes (Constructors & Methods, Declarations of Class, Interface, Instance, variable, Method and Parameter), Method Overloading, Method Decomposition, Object Relationships, Pre & Post Conditions, and Data Abstraction & Encapsulation
  • Weeks 13 – 15
    • Enhancing Classes
      • References, Exceptions, Class Design, == vs equals, Object Parameter Passing, Error Handling, Interfaces & Abstract Classes, JAVA Library Classes (Comparable & List Interfaces) and Identifications of Reusable Components from Existing Code Using Classes and Class Libraries
  • Weeks 16
    • Fall Semester Exam Review
  • Week 17
    • Fall Semester Exam
    • Week 18 – 21
      • 1D/2D Arrays & Searching
        • 1-Dimensional & 2-Dimensional Arrays (Creation, Insertions, Deletions, Transversals, & Algorithms), Searching Algorithms & Comparison (Sequential & Binary), and Choosing Appropriate Data Representation & Algorithms
    • Weeks 22 – 24
      • Lists, Array Lists, Selection & Insertion Sorts
        • Lists & Array Lists (Creation, Insertions, Deletions, Transversals, & Algorithms), Sorting Algorithms & Comparison (Selection & Insertions, and Choosing Appropriate Data Representation & Algorithms
    • Weeks 25 – 27
      • Inheritance
        • Inheritance (Subclass, Overriding, Hierarchies, Using Class Members, Polymorphism, & Class Hierarchy Design), Interfaces & Abstract Classes, JAVA Library Classes (Object), Reading & Understanding Class Specifications (is-a vs. has-a), Understanding & Implementing a Given Class Hierarchy, Extending a Given Class with Inheritance, and Applying Functional Decomposition.
    • Weeks 28 – 30
      • Recursion / Merge & QuickSorts
        • Recursive (Thinking, Programming, & Sorting), Flow of Recursive Control, Sorting Algorithms (Merge & Quick), and Comparison With Other Sort Options
    • Weeks 31 – 33
      • AP Practice Exam and Computer Ethics
        • Responsible Use of Computer Systems (Reliability, Privacy, Intellectual Property, Legal Issues, & Social/Ethical Ramifications of Computer Use), and AP Practice Exam
    • Week 34
      • AP Computer Science – A Exam
    • Weeks 35 – 36
      • RoboCode
        • Cooperative Programming, Research, Reading Code, and Comparing Strategies & Algorithms

Robotics at Fish Camp

Fish Camp 2017Today was the first Fish Camp where FIRST Tech Challenge and our Robotics Program was highlighted.

The freshman were broken into 6 different groups and rotated through different stations. We were housed with the various clubs, organizations, and programs in the cafeteria.

J. Vega (Senior) was the student who visited with the freshman as they came through.

Roster First Glance & Gender Inequality

I now have my first glance at my rosters today in Skyward.

Here is how it looks right now:

  • 1st Period – Principles of Applied Engineering
    • 16 TOTAL (13 Males / 3 Females)
  • 5th Period – Principles of Applied Engineering
    • 16 TOTAL (16 Males / 0 Females)
  • 2A – Computer Science 1
    • 15 TOTAL (13 Males / 2 Females)
  • 4A – Computer Science 1
    • 12 TOTAL (10 Males / 2 Females)
  • 2B – Computer Science 2
    • 8 TOTAL (8 Males / 0 Females)
  • 3A – Robotics 1
    • 19 TOTAL (13 Males / 6 Females)
  • 3B – Robotics 1
    • 20 TOTAL (17 Males / 3 Females)
  • 3A – Robotics 2
    • 7 TOTAL (6 Males / 1 Female)
  • 3B – Robotics 2
    • 5 TOTAL (4 Males / 1 Female)

Converting these to percentages, this means that 9.28% of my Principles of Applied Engineering, 14.81% of my Computer Science 1, 23.08% of my Robotics 1, and 16.67% of my Robotics 2 classes are female.

A study from Jensen and Nutt shows 74% of females have interest in engineering technology ahead of entry to junior high. At conclusion of high school that interested drops to 2%.

Considering setting my 2017/2018 professional goal to be to develop a program that encourages more females into STEM.

According to US Dept of Ed 2015 study, 10.4% of males earned an engineering STEM credit compared to 2% of females.

Proposing 3 All-Girls STEM Camps for 2018:

  • Camp 1 – Completed 4th / 5th Grade
  • Camp 2 – Completed 6th Grade
  • Camp 3 – Completed 7th / 8th Grade

The major groups to support would be camps 1 and 2.

GT/STEM Drone Summer Camp – Day 3

GT STEM Drone Summer CampToday was the 3rd and final day of the GT/STEM Drone Summer Camp at Ferris Junior High School.

Teams had 2 hours to prepare for their attempts at solving the Eureka Dilemma. All attempts were completed before lunch as the forecast high temperature was 102. During the preparation phase, I setup the town of Eureka in the stadium parking lot placing the medical center landing pad at the exact location as written in the directions.

The first team to present a solution to the Eureka Dilemma was the Purple Team. Their flight was fully manual and clipped the medical center on landing. Their cargo pod remained secure.

The second team to present a solution to the Eureka Dilemma was the Green Team. Their flight was fully autonomous with the exception of the landing. They executed a perfect landing with a completely in-tact cargo pod.

The Orange Team created a program to bring their drone out over the stadium and then to turn North into the parking lot.

Unfortunately, their flight ended in a catastrophic crash into the rear of the press box on the stadium. The cargo pod survived the crash, but the drone did not.

In the scale map, the supplies crashed approximately 3 miles Northeast of Silverton, CO – too far for the citizens of Eureka to trek to secure them.

We ended the day creating water bottle rockets. As I could not find my bottle launcher, we dropped the rockets from the press box of the stadium. All bottles were filled with the same volume of water. There was a control rocket (unmodified 2-liter water bottle) and then each team created their own rocket. They had to create a rocket that could reach the ground quicker than the control (reduce drag) and then a rocket that could reach the ground slower than the control (increase drag).


GT/STEM Drone Summer Camp – Day 2

Today was Day 2 of the GT/STEM Drone Summer Camp at Ferris Junior High School.

As my G/T Coordinator said I talked too much yesterday, I elected to have my assistant lead the session today.

The goal of today was to perform autonomous programming on the drones in preparation of solving the “Eureka Dilemma”.

Drone Programming Tasks

Students were given blocks of tasks/challenges to complete.

The A-block tasks were somewhat simple and required only straight flights. All teams completed the A-block tasks with the exception of the Orange and Purple drones on task A-4. A reset of the drone and iPads resolved the problem.

The B-block tasks were intermediate level programming which required the drones to fly out to a pre-selected location, land, take-off, and then return to the departure point.

Task B-1 caused problems for all 3 teams as the camera pitch values were invalid and stopped the programs from running. This was resolved by removing the camera instructions.

All teams completed the B-1 task with no problems with the exception of the Purple drone. This drone initiated the RTH (return to home) protocol because the battery level dropped below 5%. Unfortunately, the UAV clipped a tree and somersaulted in the stadium parking lot. The UAV sustained some scratched and dents, but no major damage.

Task B-2 led many students to attempt a dry-run of the Eureka Dilemma. The Purple drone would not accept autonomous programming as it needs a firmware update following the crash. This will be done at the conclusion of the day.

The Orange team attempted a first-draft of the Eureka Dilemma, but drifted into the fence at the baseball field at the departure point and crashed.

The Green team attempted a first-draft of the Eureka Dilemma, ran the length of the West property line, turned 90 degrees to the right, ran along the North property line to the stadium, turned 90 degree to the right, flew South for about 20 feet and then landed, which put it down in the stadium parking lot with no problems.

Many teams also realized they can manually land the drone in the Eureka Dilemma and not need to program the landing.

The C-block tasks were simulated in the lab due to the extreme temperatures outside and the iPads inability to operate in the summer temperatures.

The Purple drone was updated to the latest firmware and was programmed and tested successfully. It is ready for the final day of the camp.

GT/STEM Drone Summer Camp – Day 1

Today was Day 1 of the GT/STEM Drone Summer Camp at Ferris Junior High School.

I opened the morning covering the basic principles of flight and lift. We started with creation of a basic paper helicopter.

We then moved to discuss the following concepts:

  • Lift/Weight
  • Thrust/Drag
  • Pitch
  • Roll
  • Yaw

We also discussed FAA guidelines for hobby flights and what we could and could not fly over and the 400 foot ceiling.

Following lunch, we moved outside to fly in small geofences and then on to free flight. I encouraged students to fly beyond the parking lot and pay attention to the telemetry being returned to the iPads.

Unfortunately, it was hot today and the iPads were shutting down in the heat, which caused a few problems.

When we returned to the room, the students were given the “Eureka Dilemma”, which was the problem the 3-day camp is based upon.

Homework was sent home on the first day that asked students to solve various thrust, drag, lift, and weight calculations.

At the conclusion of the day, the G/T coordinator said I talked too much and should have encouraged the students to research the answers and problems on their own.

Computer Science 1 S&S

At the conclusion of last school year, I had a curve-ball thrown at me concerning my plans to offer AP Computer Science 1 based upon the UTeach Computer Science Principles course which I attended the APSI for in the Summer of 2016. This course would align with the AP Computer Science – Principles Exam. In addition, the course would count as a Language Other Than English (LOTE) credit for our students.

Well, the State of Texas had other plans on that. According to TEA, Computer Science 1 can count as an AP credit OR a LOTE credit, but NOT both.

As we already have HB-5 students in progress that need CS1 as a LOTE credit, we have elected to drop the AP designation. However, I am still modeling the course after the AP CS1 curriculum from UTeach CS Principles, which will allow the students to be prepared to take the AP Computer Science – Principles exam at the conclusion of the year, if they would like.

Here is what I am planning to cover in CS1 this year:

  • Week 1
    • Structured Programming Languages
  • Weeks 2 – 4
    • Linear Programming in Scratch
  • Week 5
    • Boolean Logic Operators in Scratch
  • Week 6
    • Conditional Programming in Scratch
  • Weeks 7 – 9
    • Non-Linear Programming in Scratch
  • Weeks 10 – 12
    • Iterative Structures & Loops in Scratch
  • Weeks 13 – 16
    • Game Design Projects (AP Explore Artifact)
  • Week 17
    • Fall Semester Exam
  • Week 18
    • Women in Computer Science Research Project
  • Week 19
    • Basic Output and Variables in Python
  • Week 20
    • Casting Variables in Python
  • Weeks 21 – 23
    • Iterative Structures & Loops in Python
  • Weeks 24 – 26
    • Iterative Structures & Loops in Python Project
  • Week 27
    • Data Structures: Stacks in Python
  • Week 28
    • Data Structures: Arrays in Python
  • Week 29
    • Data Manipulation in Python
  • Weeks 30 – 31
    • Data Structures Project
  • Weeks 32 – 35
    • Digital Artwork (AP Performance Artifact)
  • Week 36
    • Spring Semester Exam

Principles of Applied Engineering S&S

We are looking at using the Engineering Fundamentals – Design, Principles, and Careers from Goodheart-Willcox as the basis for Principles of Applied Engineering starting in the 2017/2018 school year.

This is the first time, in my professional career, selected and plan to utilize a textbook.

I evaluated a textbook from Pearson as well, but I liked the G-W text and the fact that it includes an interactive PDF lab notebook, which the Pearson text did not include.

Here is how I am planning to setup my scope and sequence for the year:

  • Weeks 1 & 2 (8-Days)
    • Chapter 1 (What is Engineering?)
  • Weeks 3 & 4 (8-Days)
    • Chapter 2 (Engineering as a Profession)
  • Weeks 5 & 6 (8-Days)
    • Chapter 3 (Engineering Design)
  • Weeks 7 & 8 (8-Days)
    • Chapter 4 (Defining Problems and Brainstorming)
  • Weeks 9 & 10 (8-Days)
    • Chapter 5 (Research Designs)
  • Weeks 11 & 12 (8-Days)
    • Chapter 6 (Communicating Solutions)
  • Weeks 13 & 14 (8-Days)
    • Chapter 7 (Modeling, Testing, and Final Outputs)
  • Weeks 15 & 16 (8-Days)
    • Chapter 17 (Environmental Engineering)
  • Week 17 – Fall Semester Exam
  • Weeks 18 & 20 (8-Days)
    • Chapter 8 (Mechanical Engineering)
  • Weeks 20 & 21 (8-Days)
    • Chapter 9 (Materials Engineering)
  • Weeks 22 & 23 (8-Days)
    • Chapter 10 (Manufacturing Engineering)
  • Weeks 24 & 26 (8-Days)
    • Chapter 11 (Electrical Engineering)
  • Week 27 (8-Days)
    • Chapter 12 (Computer Engineering)
  • Weeks 28 & 29 (8-Days)
    • Chapter 13 (Civil Engineering)
  • Weeks 30 & 31 (8-Days)
    • Chapter 14 (Aerospace Engineering)
  • Weeks 32 & 33 (8-Days)
    • Chapter 15 (Chemical Engineering)
  • Weeks 34 & 35 (8-Days)
    • Chapter 16 (Bioengineering)
  • Week 36 – Spring Semester Exam

GT STEM Camp Challenge Problem

In about a month, I will be leading a GT STEM Camp at Ferris Junior High School! The camp will run July 18th through 20th and will be based upon the use of unmanned aerial vehicles (drones).

I have spent the past few days drafting up the challenge problem they are to solve by the end of the camp.

The Eureka Dilemma

Above is a link to the draft of the challenge problem that I have written for them to solve. Take a look and let me know your opinion on it.

The students this will be given to are students rising into 8th grade and they will be using DroneBlocks for the programming of the drones. The drones to be used are DJI Phantom 3 Standard UAVs.

2016-2017 Year In Review

Well, here I am – the last day of the 2016-2017 school year. It’s been a great ride this year.

June 2016

I had the experience of attending my first Advanced Placement Summer Institute! This was to prepare us for AP Computer Science Principles (AP Computer Science I).

This particular APSI was different from others in that it was not run by College Board, but by the UTeach Institute at University of Texas through the National Science Foundation.

July 2016

After learning about Computer Science in June, I shifted gears to learn about FIRST Robotics. I got to attend a week-long hands-on workshop with Freid Elliott of Dallas ISD and Dr. Patrick Michaud of University of Texas: Dallas.

This training was invaluable in preparing me for the launch of our new robotics program at Ferris High School. Without this workshop, I couldn’t even guess as to how long it would have taken us to get our robot moving.

August 2016

For the first time since August 2012, I had the opportunity to start a school year in a high school! I was very happy to be returning to high school for a full-year.

In August of 2013 and August 2014, I was teaching at The Art Institute of Dallas and in August 2015, I was teaching 4th grade at Ferris Intermediate School.

This year, I taught 1 section of Computer Science, 1 section of Robotics & Automation, 1 section of Principles of Technology/Physics, and 4 sections of Business Information Management (BIM).

September 2016

Now that the school-year was fully underway, I got started on teaching material.

In Computer Science, we hit the ground running with programming in JAVA. In Principles of Technology, we built pressurized soda-bottle rockets and launched them!

In Robotics & Automation, we had the reveal of the game for the 2016/2017 season – Velocity Vortex! It was exciting to see the gears turning as my students started planning how to address the challenge of the game for this year. They were very excited to start designing and building the robot for the game!

My robotics class had the opportunity to work on the Finch robots that were loaned to us from Carnegie Mellon University.

October 2016

Now that we knew the game for robotics, we started having “Come As You Can” (CAYC) workdays on Saturdays for students to come up to the high school and work on the robot.

Here, students were encouraged to come up to the high school to work on the contest robot. I would have the lab open and it was a self-paced workday. Each CAYC workday was typically 8 to 12 hours.

In addition to the robotics CAYC workdays, I had fun with my Principles of Technology class with an egg drop experiment. Here, they had to create a rig that could cushion the fall of a raw egg dropped from a considerable height.

There were 3 rigs that no matter the height, the egg survived again and again. I was very pleased. In the follow-up, the groups had to calculate the force their rig struck the ground with.

November 2016

The robotics team did the majority of their hardware work during this month. This was the month that we got the robot moving!

This was also when we had our only season scrimmage for robotics.

This was our first experience with one of the guiding principles of FIRST Robotics – “Coopertition”. This is the idea of cooperative competition. While this was a scrimmage in that we were able to see what the robots of others teams were able to do, it was also a workshop for us to be able to refine our skills and the build of our robot.

During this month, Principles of Technology worked on creating mouse trap racers.

They had the chance to demonstrate their ability to mix-and-match parts to maximize their designs.

The parts for this project were donated from Donors Choose over the summer in preparation for the school year.

December 2016

As we began to wind-down the 2016 calendar year, the robotics team arrived at their first of 3 league meets which was hosted at Ferris High School.

The robotics team performed very well in their first outing and assumed 2nd place in the season standings. This was an outstanding way to start our inaugural season of FIRST Tech Challenge robotics!

UIL Computer Science also kicked off this month with its first virtual meet. Back in the 2015/2016 academic year, the UIL Computer Science team advanced on its own to UIL Regional competition as a student-run after-school club!

January 2017

This month saw two robotics league meets. Both of these meets were at Mansfield Ben Barber Innovation Academy.

In addition, between the two league meets, the robotics team presented at Ferris Intermediate School addressing the disproportionate representation of girls in STEM fields.

The various members of the robotics team had an enjoyable time working with the students at FIS!

February 2017

This month was really “hot” in multiple ways. The robotics team hosted the league tournament at Ferris High School.

ERROR 404, the FHS robotics team, entered the tournament in 4th place and by the end of the day was solidly in 3rd place.

The team performed very well and had a strong alliance partner as they advanced into the elimination round of the tournament. Unfortunately, we saw the season come to an end in the blink of an eye when a spectator turned on a WiFi hotspot on their phone, which caused our robot to stop.

The Tuesday following the league meet, the month got even hotter when an experiment in my Principles of Technology class went very wrong!

Just 4 days after that fire, the Computer Science team performed in its only face-to-face invitational meet in Mabank. The team from Ferris High School finished in 1st place at the invite!

March 2017

As robotics shifted into off-season mode, and I was looking to regain footing by retooling some experiments in Principles of Technology, March was all about Computer Science.

In late-March, the UIL Computer Science team competed in the UIL District Tournament where they finished in 1st place and advanced to the UIL Regional Tournament!

I was extremely proud of how our team captain performed at this tournament and his decision to hand over the reins to his successor so she could gain some experience in the role she has shadowed for the past two seasons.

April 2017

As we had “played with fire” in February in Principles of Technology, I elected that water would be much safer for us to play with.

So, in mid-April, Principles of Technology built water balloon launchers and launched to strike targets at 20, 40, and 50 yards. To make this more fun, the targets were Mr. Mack McClesky (FHS Assistant Principal), myself, and Dr. Kevin Dixon (FHS Principal) respectively.

Students had to calculate maximum range, height, and launch angles in this experiment!

In addition to getting soaked, this month was also the UIL Computer Science team appearance at the UIL Regional Tournament at Texas A&M University: Commerce.

The UIL Computer Science team had a bit of a rough performance at the UIL Regional Tournament. I believe this was in-part due to over-preparing.

I appreciated with enthusiasm of the team members, but I think they over-worked themselves and succumbed to “brain drain” and fatigue ultimately did them in and they were just overwhelmed with information as they went into the test.

While we did not perform as well on the written test, the team demonstrated outstanding growth on the hands-on test. In 2015/2016, the team solved no hands-on problems at the UIL Regional Tournament. In contrast, the team solved 3 hands-on problems at the UIL Regional Tournament in 2016/2017!

On a personal note, April was when I said “Goodbye” to my home of 9 years in Forney.

For two of my children, this is the only house they really remember. Over the past several years, we have seen Forney grow from a semi-rural community to a suburban community where possessions and materialism have taken over and you are solely based upon what you have and how much you have.

We elected to move to the community where I teach in and where my oldest daughter elected to attend junior high at – Ferris.

It was a bit of a shift to go from a home that we built and was only 10 years old to a home that is over 100 years old. Our new home was built in 1894 and is now 123 years old! The pace of life in this community is wonderful and I would not go back to the suburban rush ever again, if I can have any say in it!

May 2017

Now, we have come full-circle. It has been a year! Both Robotics and Computer Science are in off-season mode and preparing for next year.

Principles of Technology finished the year with a project similar to the one we started the year with, using the 2-liter soda bottles. Unlike the project at the start of the year, students had to create an air foil to achieve non-projectile motion flight with the thrust provided by the pressurized 2-liter soda bottle.

I am looking forward to seeing my graduates walk across that stage and close one chapter in their lives and open the next new chapter! I am excited to hear how they continue to mature, grow, and develop.

I am very excited to see the programs and teams that were launched this year continue to develop next year.

In 2017/2018, we will be launching 2 new engineering courses:

  • Principles of Applied Engineering
  • Engineering Design & Problem Solving

In addition to those two new courses, we will be streamlining the robotics courses:

  • Robotics I
  • Robotics II

We will also be expanding our Computer Science program:

  • Computer Science I (based on AP Computer Science Principles)
  • Computer Science II (based on AP Computer Science – A)

I am extremely blessed to work for a school district and on a campus that supports my out-of-the-box teaching style and methods. I look forward to continuing to work in Ferris and with the children of this community.