Week 5: Planning Ahead

5.1 Teammate goals

Ryan dorrity

Ryan’s goal is to attain his B.S. in Computer Science and subsequently work as a software developer. However, his true passion is information security. While he did not specify why he did not want to first pursue a career in information security, it seems to be his ultimate goal. I speculate that he would feel more comfortable learning more about infosec before pursuing a career in this domain.

While Ryan’s educational goal mirrors my own, our motivations are different. I am pursuing my B.S. in Computer Science to be able to better mentor my high school students in software development and to prepare them for college and career.

Cody young

Cody recently was hired as a software test analyst. His goal in earning his B.S. in Computer Science is  to help him better understand the software development process in order to become a better debugger and test analyst. He plans on staying with his current career to broaden his expertise.

Cody and I are similar in that we are enrolled in this degree program to become stronger at the careers we already have.

Nathan warren-acord

Nathan’s goals include getting his B.S. in Computer Science and continuing his studies to further hone his programming skills. His ultimate dream is to work in a small video game development studio. I’ll have to admit that this sounds enticing to me as well; however, I will likely work on games on the side while continuing my teaching career.

5.2 Capstone ideas

AP CSA Educational Web Application

Inspired by the BrainiMac project from the CS Online Fall 2017 Capstone Festival, I would be interested in developing a free web application to help AP Computer Science A students master the object oriented programming concepts needed to pass their AP exam. Currently, there is a dearth of teachers qualified to teach this course, so providing this service can assist students to self-study and still take the AP exam even if their school does not offer the course.

coding game

I have always been interested in developing a game. I am a fan of the relatively recent titles such as Double Fine’s Hack ‘n’ Slash and Zachtronics’ Shenzhen IO. In Hack ‘n’ Slash, the player alters Lua code to defeat enemies and progress through the game. Shenzhen IO is another programming game that teaches the player how to program microprocessors in an assembly language. As an AP CSA educator, I am always looking for fun ways for my students to practice Java programming. Therefore, another idea I would love to investigate is to develop a programming game that helps students learn Java. Potential names include Polymorphic or Strange OOP.

school mobile app

A more practical idea is to develop an application for my school site, Sweetwater High. The WordPress-powered template of our school website is currently locked by the district and finding and accessing information on the website can sometimes be a challenge. I have been challenged, as the content manager, in making improvements to our website without having direct access to modifying the template and layout. Designing and implementing a user-friendly mobile application for all stakeholders–students, parents, and staff–would solve this problem. Features could include the school calendar, directory, student planner, and counseling portal.

5.3 Learning log

As a former rhetoric teacher, I enjoyed the review of loaded words and their affect on the pathos of an argument. I also enjoyed seeing the reading on logical fallacies. My favorite way of learning and teaching logical fallacies is through the short story by Max Shulman, “Love Is a Fallacy”.

I enjoyed having to create a website in anticipation of all of the courses that we will have taken by the end of our program. Rereading the titles and descriptions of the courses we will take made me very excited for all of the projects we will do and concepts that we will learn and practice.

Week 4: Goals and Ethics

4.1 Setting My Educational Goals

My education goals are to attain my second degree in Computer Science through CSU Monterey Bay. I plan on maintaining a 4.0 GPA throughout the program by staying true to my planned study time and by reaching out to my team and the staff for help when I need clarification. After graduation, I plan on updating my skills periodically by taking courses through open university. I am still on the fence about whether or not I want to pursue an M.S. in Computer Science since I already have an M.A. in Computational Linguistics.

4.2 Setting My Career Goals

Right now, I am satisfied with my career as a high school Computer Science teacher. However, in the future, I would like to help my district develop effective student-focused CS curriculum by becoming the District Computer Science Curriculum Specialist. In two years, I will be eligible to apply for this position because I will have taught for the minimum of 5 years. By then, I will have also attained my B.S. in Computer Science, making me an attractive candidate for the position. No other CS teacher in our district has a degree in CS or a CS-related degree.


4.3 ETS Computer Science Test

Upon reviewing the sample test on ETS, I am confident that I will score around the 180 mark. I am a fairly good test-taker and I am a determined learner. I plan on revisiting the ETS page throughout my time in this program to reflect on the skills I will be tested on.

4.4 Weekly Learning Keep Up With Your Learning Journal

Since I previously taught rhetoric, much of what we read this week was not new to me. However, it was a great review before engaging in outlining and writing our ethical argument paper. I am also gaining great perspective in how to teach my CS students about ethics in computing and how technology impacts society. This is something that my AP Computer Science Principles students must write about in their “Explore” performance task. This performance task asks them to present a computational innovation and to discuss, not only how it functions and what its intended use is, but how it impacts society, our economy, and our culture.

Week 3

3.1 time management and study strategies

While time management and study strategies are important, stress management is also critical to success in any endeavor. Time management and prioritization can be helpful; making lists not only helps organize tasks but it can be therapeutic and provide a sense of accomplishment. Depression and anxiety are psychological disorders with symptoms can arise due to prolonged exposure to stress, so being aware of stressors and when to step back and spend some time on self-care is important. Time management may include setting time aside for oneself, friends, and family.


Nick Jenkins promises his readers will be able to deliver a project successfully after finishing “A Project Management Primer.” Two key sections of this primer stood out to me: “Ten Axioms for Success” (pp. 4-5) and “Building a team” (p. 38).

The ten axioms for success highlight the necessity of getting to know the people central to your project–your team and your stakeholders. In addition to this, the iterative cycle of project development is also stressed. Most problems will not be solved in a single sweep and will require testing and refinement.

Expanding on getting to know one’s team, Jenkin explains how team building is essential to a project. This requires building a positive rapport with team members–being honest, fair, loyal, and trusting. The relationship with your team can make or break a project.

Overall, this primer provides a helpful overview of how to manage a project, whether you are a manager of a team or a managing your own solo project. In any case, you must remain positive and organized.

3.3 RE: What Every Computer Science Major Should Know

Matt Might, Professor of Internal Medicine and Computer Science at the University of Alabama at Birmingham, maintains a living document that attempts to explain “What Every Computer Science Major Should Know.” The skills, to date, include: communication skills, a mastery of physics and math including statistics, multivariate calculus, and discrete mathematics, familiarity with command-line computing and IDE-less programming, the ability to perform basic system administration tasks, mastery of a variety of programming language types including assembly, an understanding common cryptographic protocols and the layers of protocols that underly the Internet, an understanding of how to maximize user experience, knowledge of common data structures and algorithms, and an understanding of the theory of computational complexity, computer architecture, operating systems, software testing, visualization, parallelism, software engineering, formal methods of development, graphics and simulation, robotics, artificial intelligence, machine learning, and databases.

While I agree that the skills Might lists are important, not all computer science students enter university with the same opportunities and backgrounds–certainly not the same affluent background as Might himself, whose father was the president and CEO of Cable One. It may be unfeasible to expect all students to master this exhaustive list of skills during four years of education. Many of these skills can be learned or further honed after a Bachelor’s degree is attained. Once a student has earned a degree–learning does not stop. It seems excessive to expect a student to learn and master everything he lists  as prerequisites to getting a good job.

One can only surmise that it is Might’s extraordinarily privileged background that contributes to his arrogant tone when he asserts that “if these students have a fundamental mental barrier to accepting an alien syntactic regime even temporarily, they lack the mental dexterity to survive a career in computer science.” He completely dismisses students who may experience initial difficulty in understanding Lisp as inherently incapable of doing computer science. Lisp is one of the oldest high-level programming languages, and it is notorious for its arcane, parenthetical syntax.

Both Might and prospective computer scientists may want to append one additional, fundamental quality to their repertoire: a growth mindset–a notion that intelligence can be developed through perseverance.

Image credit: thecodingspace.com


Week 2

2.1 Effective Study Skills

When it comes to the study skills outlined by Dr. Bob Klick’s website, the top three that I excel at are:

  1. Sticking to a prioritized schedule
  2. Pre-reading, reading, and post-reading reflection (what Klick refers to as the SQ3R method)
  3. Extracting important details from lecture and reading

However, I do face some challenges. Since I work full-time as a high school teacher, some weeks I put in well over the standard 40 hours. Consequently, some of the practices I tend to engage in, contrary to Klick’s advice include:

  1. Starting assignments right after a meal
  2. Working on assignments within 30 minutes of my bed time
  3. Working in suboptimal environments (e.g. on the way to work on public transit)

2.2 A Day in the Life of Kazemi

This week we were asked to document our day with an Activity Log. Here is everything I did today (9/6/2018), from the time I arrived at work:

2.3 Project Management Videos

We were assigned to watch three videos on project management and to write a summarized reflection.

The first video, by Knolscape, provided a general introduction to project management. The video contrasted projects and operations. Projects are temporary endeavors that produce unique projects and cease after all goals are reached. On the other hand, operations are ongoing and repetitive, with a goal to sustain business. In other words, a project can produce a single new product, but an operation mass-produces the product to produce profits. However, many projects fail before getting to the operations stage. Successful projects have project managers who have skills that include leadership, communication, information technology, accounting, purchasing, and problem solving.

In the second video, Jennifer Witt, director of projectmanager.com, explains that work breakdown structure is a “deliverable-oriented hierarchical decomposition of the work to be executed by the team to accomplish the project objectives and create the required deliverables”.

The third video by the University of Minnesota’s Department of Writing Studies describes how you can use a Gantt Chart to illustrate the work breakdown structure of a project. The chart provides a timeline that includes time estimates for project completion–an optimistic time o, a normal time n, a pessimistic time p, and an expected time that is calculated based on, and p. It also lists whether tasks can be done concurrently or  as a prerequisite to subsequent tasks.


As an educator, I appreciated the team that created a solution for teachers to be able to use the FreeCodeCamp GitHub repository with their students. It was unfortunate that two of their members were unable to make it. I would have appreciated seeing a demonstration of how the end product functioned rather than a high-level overview how it functions.

As a person who enjoys video games, I was delighted to see the CYGNUS project. Overall, it seems like the team worked well together to make the pieces come together. There was a nice balance of technical overview and gameplay demonstration. I would have liked to see more emphasis on what the team thought was a unique element–absorbing elements from the environment.

The team that developed Harvest Dashboard created a product that could be used practically in the real world in the agricultural sector. Presenter Leslie Amezcua used really good vocal expression in her presentation, making her easy to listen to. I noticed many of the other presenters could have improved upon this.

2.5 Summary

This week I had to really balance work and school. The study skills and project management tips really reaffirmed my current approach in maximizing my time and sticking to a schedule. While I do often have to employ less than ideal study practices (e.g. studying before bed), this is beyond my control at the moment. However, I believe I have the perseverance to make it through the program because I am doing what I love. I am also careful to take self-care time over the weekends to achieve a proper work-life balance.