PH:S\Computer Science\>

August-September Update

Welcome

Welcome to the 2023-24 school year and the 4th year of the Pueblo CTE Software and App Development program! Thank you for being a part of it! This is the first edition of what I plan to be a newsletter released at least every grading period. The purpose of this newsletter is to be a direct line to parents, students, and the community about the activities of this program. Often, it's hard to find time to communicate unless there is a problem. This way I can keep you up-to-date with the program and invite you to contact me as well.

The primary objectives of this program are to build software development skills and workplace skills, but there's a lot to that. Programming is a tool of creation. I'm teaching students a skill that will let them build and communicate to audiences that others cannot reach. To create products, entertainment, solutions, to spread ideas. This is about creativity and analysis and design. It's about learning to ask questions, then finding the answers. It requires curiosity and hard work. You will invent your own problems and engineer your own solutions. It is frustrating at times. This is normal. But it is so satisfying when it finally works and powerful once you really learn it. Even if software development isn't really your goal, chances are whatever you are into either already is or soon will be enhanced by software and bringing programming skills to the table can give you an edge.

Completing this program can earn students certifications in HTML/CSS, JavaScript, Java, Python, as well as a certificate from the state recognizing students that pass the Technical Skills Assessment after completing two years in the program. Like all CTE (Career Technical Education) programs, this program is focused on developing technical skills, personal skills, and professional skills to give students an edge in whatever they persue after high school.

This year will be busy as always. I'm trying to build our SkillsUSA CTSO (Career Technical Student Organization) into a fully functioning chapter that is run by students, engaging in the school and professional community, and earning recognition. All TUSD CTE programs will be audited by the Arizona Department of Education next year, so we are busy preparing curriculum maps, documenting lesson plans, and making sure everything else is up to the standard set by the state.

Intro class updates

Intro classes are off to a good start. There are just over 100 students enrolled. Due to some confusion with the counselors, the vast majority of those students are freshmen! It supposed to be a max of 20% freshmen - oh well. After a couple weeks of schedule changes and settling, students are beginning to get into the swing of things.

We just finished our first unit in Snap, which is a block-based programming language designed to introduce students to programming in a fun, easy environment. Intro students just completed their first project which was to tell a story through animation. You can check out some of my favorite projects from this year below. If you don't see your child's project listed below, ask them to show it to you.

In the next unit, students will start learning to use control structures, such as loops and if-else blocks, to create more complex program behavior, and variables to store data. The project for this unit will be to create a version of the classic arcade game, Pong. Throughout the school year, we will be working on developing technical skills in programming as well as personal and professional skills. Read more about the personal and professional skills in the SkillsUSA section

Below are a few suggestions to make the most out of your experience in this program and at Pueblo

  • Parents: check ParentVue to stay up on your child's grades, attendance, credits, etc.
  • Students: check StudentVue to stay on top of your own grades and attendance
  • Email me at nathaniel.adams@tusd1.org with any questions or concerns
  • Students can access assignments and apps from any computer by signing in with their school account

You can read more about the Intro course on the CS1-2 course page.

AP CS Principles

This year we have 11 students in the CS3-4 AP CS Principles course. All except one are returning students from last year or the 2021-22 school year. This course shares 3rd period with CS5-6 AP CS A making it somewhat of a challenge to teach two different courses in the same class period. It is a solid group of students that are able to work independently so we are making it work.

The second year of the program is more challenging than the first. This year is about formalizing and expanding the programming skills started in year 1 and deepening understanding about digital information, networking, and the internet. This year students will have the opportunity to earn professional certifications in HTML/CSS and JavaScript, juniors will need to take and pass the state Technical Skills Assessment (TSA), and all students will take the AP test which consists of a multiple choice exam and the "Create Task" programming project.

We spent the first three-and-a-half weeks working on HTML/CSS through a platform called GMetrix which is designed to prepare students to pass the HTML/CSS certification exam. It is a lot of work! Time is limited and there is much more to learn in this course, so we have put that on the back burner to move on with the AP CS Principles curriculum. Students will have the opporunity to continue their work on HTML/CSS in their downtime and on their own. We will schedule certification testing sessions as students complete the prepwork.

Currently, students are learning how all data is digitized into binary code. We will learn how numbers, text, images, and sound are all ultimately represented with ones and zeros in computer memory. Following that, students will learn how networking and the internet work including protocols and routing. Finally, in 2nd quarter, we will get back to learning JavaScript, which we began in year 1.

You can read more about the AP CS Principles course on the CS3-4 course page.

AP CS A

There are 6 students in the AP CS A course this year, the most I have had since the first two years before this became a CTE program. This course shares 3rd period with AP CS Principles making it a challenge for me to teach two courses in the same period. For that reason, much of the course will be taught through CodeHS. CodeHS is an online platform for learning many different programming languages and other computer science related courses. It works well because it is a full curriculum containing video lessons, practice exercises, and quizzes that cover everything needed to learn Java and pass the AP exam.

AP CS A is a course in Java programming, roughly equivalent to the introductory programming course at the UofA, CS127a. It is much more technical than the previous two courses. However, students have a fair amount of previous experience in JavaScript and Python and are able to transfer that knowledge into Java. Java is one of the most commonly used programming languages. Java is used on the server-side of websites, to develop Android apps, and to develop cross-platform applications that can run on iOS, Windows, and Linux. It is a lower-level language compared to JavaScript and Python and therefore requires a more precise understanding about data types and the structure of the language. The big challenges in this course are understandin Object Oriented Programming, recursion, and sorting algorithms.

SkillsUSA

SkillsUSA Essential Elements A part of every CTE program is developing workplace/professional skills in addition to the technical skills learned in the course. Beyond the regular classroom experiences, this is done through Career Technical Student Organizations (CTSOs). Out CTSO is based around SkillsUSA. SkillsUSA is a national organization for students in CTE programs. Each "chapter" is run by students with the purpose of developing the "Essential Elements" of SkillsUSA. The Essential Elements include Technical Skills, Personal Skills, and Workplace Skills. Chapter leaders will develop a "Program of Work" that outlines all the activities they will be involved in for the year. These activities include marketing, community engagement, financial management, workplace experiences, and leadership development, among others. For each of these categories, students will develop SMART goals that outline exactly when, where, what, and how students will participate in theses activities and develop their Essential Elements

Through Skills, students will have the opportunity to develop professional skills as well as earn recognition by developing a highly functioning chapter, and participate in competition against other students in other chapters.

This year, I have tasked the students in AP CS A to be the leaders of our Skills chapter, develop our program of work, and ultimately engage the rest of the students in participating with the program.

Extra-curricular opportunities

  • Join the Pueblo CS club/SkillsUSA. Meetings are every Wednesday during conference period
  • Samsung Solve for Tomorrow competition Talk to me if you are interested in this
  • SheTech Explorer Day. Space is limited for this one. Talk to me soon if you are interested. I could take up to 10 female students.

About Mr. Adams

My name is Nathan Adams. This is my 17th year at Pueblo. I graduated from the University of Arizona in 2007 with a BS in Mathematics and minor in Education. I taught freshman Algebra, Algebra 2, Geometry, and Financial Math, amongst other courses, over the years. Programming has been a hobby of mine since I was in high school in the 90's when I hacked my graphing calculator to be able to reprogram it in assembly language to use a bootleg operating system that I could use to play games in class. The first program I published was a simple Windows app that would calculate the hexadecimal and RGB values for colors to help with webpage development (This was before Google existed). People started downloading it and thanking me and I was hooked on the idea of being able to create software and share it with people all over the world. Since then I have developed and publish several apps for Android, including a DJ app and a crossword-like math game, developed websites, and written artificial neural network based AI algorithms to trade currency in Forex markets. I couldn't believe that Pueblo didn't offer any programming classes so, with the encouragement of Mr. R, I started the Computer Science Program at in 2018 with one section of AP Computer Science A and eight students. Since then, it has grown into a full CTE program with four sections of Intro, one section of AP CS Principles, and one section of AP CS A.

I grew up in Tucson and graduated from Canyon del Oro High School in 1997. In my free time, I do spend a good amount of time with programming projects, this website, for example. I also spend time with my family, girlfriend, Janine, and 7 y.o. step-daughter, Freyja. I love to bicycle, hike, camp, and just spend time outdoors. I work on my house and in my yard and spend time fixing up an old Suzuki GS1100 motorcycle.