COMP B10 - Fall 2024

Welcome to Class

My Contact Information

A photo of Bill Moseley

Bill Moseley, Ph.D.

bmoseley@bakersfieldcollege.edu
www.bmoseley.com

Phone (Voice and Text):
661-376-0010

Office: B3E (Business Building, Panorama Campus)

 

  Student / Office Hours

As your instructor, it is important that you are able to reach me with questions, concerns, or other ways I can support you.  

How to Reach Me...

I will be available for in-person office hours in the following locations/days/times:

Southwest Campus
Tuesday and Thursday, 20 minutes before and 10 minutes after class (9:15-9:35 am, 11:10-20 am, Room 221)

Panorama Campus
M-Th, 2:30-3:30pm, in B3E

Also remember that you can reach me via email, text message, Canvas inbox, and phone, using the numbers above.
Time or Day doesn't really matter.  If I don't respond right away, then I'm not available and I will get back to you as soon as I can.

** Remember when you send me a question that I'm not a mind-reader! Include all of the information you can, and I will be able to help you much more quickly**

Course Information

I offer several sections of COMP B10 every semester. This syllabus is shared between them.  
Here is the information specific to each section of this course:

71612 - BC Panorama (M/W 1:00-2:25, Bus11)
FINAL EXAM: Wed., Dec. 11 from Noon-1:50PM

71672 - BC Southwest (T/R 9:35-11:00, 221)

FINAL EXAM: Tues., Dec. 10 from 10:00-11:50AM

71614 - B10 Online

71615 - B10 Online

71616 - B10 Online

71617 - B10 Online, Second 8 Weeks

  Course SLOs:

 SLOs are the critical things you will learn as a result of compleitng this course:

1. Upon successful completion of the course, the student will be able to describe and apply the software development life-cycle to a given problem.

2. Upon successful completion of the course, the student will be able to describe, design, implement, and test structured programs using currently accepted methodology and control structures.

3. Upon successful completion of the course, the student will be able to explain what an algorithm is and then be able to translate an algorithm into a programming language.

About Me...

Professional Info.

Professionally, my journey has been intertwined with my personal life and interests.  I've loved technology for as long as I can remember, and my appreciation for video games goes all the way back to the Pong console my family had when I was 4-5 years old.  It could play about 5 games, but all of them were basically "Pong".  

Games and art were driving interests throughout much of my life, and inspired me to try programming (to make my own games, of course).

I did my undergraduate work in Psychology with a minor in Art/Design (I loved computers, but hated school, and had convinced myself in high school that I didn't have the math chops for a computer science major - bad call, and dead wrong). My M.A. is from Pepperdine in Learning Technologies, and my Ph.D. is from University of Nebraska-Lincoln in Educational Leadership.

Learning doesn't stop when school is over, so I have continued to push myself to learn new things after my doctorate.  I love learning, and hope I never stop challenging myself.

The rapid growth of the Web in the late 90's sparked my renewed interest in computers after a detour to study psychology, and in 1998 I took a job as the Internet Services Specialist at Bakersfield College.  In the 23 years that followed, I became a faculty in the Computer Science Department and then in 2017, the college's first Dean of Academic Technology. In January 2022, I became the college's first Vice President of Innovation and Development. Later that summer, I was informed that the college was heading in a different direction, and so rather than returning to a dean role, I decided to give myself the gift of returning to the classroom, and here I am.

I have also taught at Pepperdine University, in the Graduate School of Education and Psychology, since Summer of 2003.  My favorite teaching moments at Pepperdine were in 2007, when we held a virtual hot tub discussion in Second Life with Daniel Pink, author of a Whole New Mind (which was covered by the NYT),

A hot tub discussion in the virtual world of second life

and holding discussions on Learning Theorists in various locations in World of Warcraft.  

A discussion group in World of Warcraft

I've also invested a fair amount of time in Minecraft as a platform for teaching things like computational thinking

A class project in minecraft testing computational thinking

and user experience design

A maze in Minecraft

You can read more about the wide variety of things I like to work on, and access some of my professional wriitng, by visiting my personal web site, at www.bmoseley.com 

To me, learning and technology are creative adventures with almost limitless potential.  I'm thrilled to be back in a teaching role.


 

Personal Info.

On the personal side, the most important thing to know about me is that I'm a husband to an amazing woman and father of seven.  Growing up an only child to a single mom, I never imagined what a household of nine would look like, or the many unique situations that only siblings can understand.  However, our life journey often brings us to places we don't expect.

Bill with wife and seven kids
As you can see, five of our seven kids are adopted.  While adoption – especially trans-racial adoption – can be a complicated issue, my wife and I are very open about our adoption journey, and are happy to share on a personal level (It's probably more info than one would normally include on a syllabus, but I will say this:  It's been the most powerful and life-changing experience I've had.)

Ok... you asked for it!

Here are a few more details about me, and my crazy family:
All 7 of our kids are competitive swimmers.  In the group we have Olympic Trials Qualifiers, Junior National Champions, and SEC and WAC champions, and NCAA All-Americans.
 
Samara swimming fly
Our oldest started swimming at 5 years old, and just completed her MA in Industrial / Organizational Psychology, but swam through her undergraduate years at the University of Tennnessee.  Here is a video of her relay team winning SEC Championships (she swims 4th in the third lane from the bottom):

We love this sport, and it's great for big families because we can all go to the same swim meet, race and cheer each other on.

Julian, samara and maya in the pool
As a family, we are intensely competitive.  We will compete at anything, any time.  If there isn't a game, we will invent one.  We love a challenge.

Gabbi, Julian and Samara jumping from a sand dune.
I'm a voracious reader.  My reading interests vary widely, although lately I've been doing a pretty deep dive into books on race, racial equity, and anti-racism.  In that genre, I really appreciate the work of Ijeoma Oluo and Ibram X. Kendi.  

I'm also very interested in the writing process, and writing as a discipline.  I usually have several projects in the works, and a couple of years ago I self-published my first novel.

The cover of La Cuesta Encantada
I don't expect to become rich or famous as a result of my writing, but I really do it for my own satisfaction anyway.
I'm pretty sure that the phrase, "Jack of all trades, master of none." was written about me.  I have a million interests, and more hobbies than I have time for.  I'm not afraid to try something new, to fail at something, or to look silly in front of other people.  I'm pretty sure my last words will include something about wishing I had more time...

 

Course Policies

Read through each of the course policies below by clicking a title to expand that section.

I'll be honest: I don't really like grades.
Studies show that grades actually harm student learning, and I would not give any grades if I didn't have to.
On the other hand, grades are a reality in college, and should be a reflection of at least some aspects of your learning. So, in this class and all of my classes, I try to make sure that the following things are true:
  • You only get grades for things that get you closer to the learning goals of the class. That also means that I don't give extra credit.
  • This class is about mastering a set of ideas, so credit for assignments is all or nothing. If you don't get credit on your first try, I will give you feedback about what you need to change and you can resubmit it without penalty.
  • You will know exactly what you need to do to get credit for each assignment.
  • The grading scale for the class is made to be as simple as possible, and to prioritize the assignments, which are the most important part of the class.
  • I don't want there to be any suprises when it comes to grading for this class. 

The most important thing about grades in this class is that I don't want them to get in the way of your learning.

Here is the grading scale I will use in the class: 

185-140

A

139-124

B

123-109

C

108-93

D

92 and under

F


You may notice that the points for each grade don't correspond directly to the typical percentages for grades. For, example 140 points is still an A, but. is only about 75% of the total points possible.  It's not that I'm bad at math – 100% in the class is actually 155 points total.  I have structured the class in such a way that you can choose which assignments to complete in order to get the grade you want.  If you want to focus on the earlier assignments and work through from the beginning in order, that's great. If you are an an experienced programmer, and you want to focus on the more advanced parts of the class, that's good too.  I want everyone to get something useful out of this class, and this allows that to happen.

So you have absolute freedom to complete whatever projects you want to get the grade you want, with 2 exceptions:  A1 and A5 must be completed by the hard drop deadlines, or you will be dropped from the class. This is to ensure that students don't fail because they forgot to do the work and got too far behind.

I accept late work up to the end of the class without penalty.  However, there are two important exceptions:
  1. The A1 Assignment must be submitted by September 4, 11:59 pm (October 27 for the late start section), or you will be dropped.
  2. Assignments A1 - A5 must be submitted by October 15, 11:59 pm (November 20 for the late start section), or you will br dropped.

The reason for these hard deadlines is that in my experience, students who don't meet these deadlines end up failing the class. Basically, I'm doing this to protect. you from yourself.

Everyone in the class deserves the opportunity to learn in a safe, supportive environment. I will fight tooth and nail to make sure you all have that chance. BC has a code of student conduct.  It applies in an online environment as much as in an in-person environment.  You are accountable for the behavior you bring to the class, and I fully expect everyone to contribute to this positive learning community.
I don't expect anyone to have an issue with this, but I will be very direct and swift to address any issue that threatens anyone else's opportunity to learn.
You are taking this class to learn something.  While literally every assignment can be done by ChatGPT or other AI software, I highly recommend that you spend the time actually tring to work through the exercises I post for the class.  Taking shortcuts might get you credit, but it won't teach you enough to be useful out in the real world.
I do support the use of AI in programming, however, and I will discuss and recommend ways to use AI throughout the class, as it can be very useful.
This is another area where BC has a set of rules. However, I will sum it up this way:  In this class, every assignment is carefully set up so that you will learn to write great code by doing them.  Skipping parts of the work, either by using someone else's code, finding code online, or using AI to generate it for you is not only dishonest, it will impair your learning.  In the end, it will take a class that could be very useful in giving you skills that you can use, and turn it into a bit of a joke.
So here is what I expect:  I expect you to do your own work. I expect you to ask for help if you need it.  I expect you to do this class with the purpose of getting good at coding, rather than just getting a grade. If you are struggling, then ask me for help - come to office hours - get a tutor. You can do this, but you will need to put in the time to learn.
If I think you aren't doing your own work, then I will engage you in a conversation to make sure you understand the code you've submitted. We will take things from there.  However, I really want to start from a place of TRUSTING YOU. 

Our Learning Pact

Learning in a class like this works best when there are clear expectations for both student and teacher.  I'm hoping that we can agree to the following learning pact for the semester, so that you can get the most out of this class.

What I expect from you:

  • Treat people with respect.
  • Participate actively and regularly.
  • Communicate with me.
  • Challenge yourself.
  • Be patient with technology.
  • Fail powerfully.
  • Remember that I'm on your team.
  • Do your own work.

What you can expect from me:

  • I will treat you with dignity and respect.
  • I will provide a great course.
  • I will respond to your communication.
  • I will reach out to you when I sense that you need support..
  • I will bring on my A game every week for you.
  • I will trust you.


Weekly Schedule

Every assignment in this class has a due date. I will accept late work with the following limitations:

  • The A1 Assignment must be submitted by September 4, 11:59 pm (October 27 for the late start section), or you will be dropped.
  • Assignments A1 - A5 must be submitted by October 15, 11:59 pm (November 20 for the late start section), or you will br dropped.

The reason for this policy isn't just to be a mean professor. Rather, it is to protect you from forgetting you have a class and ending up with an F, or getting so far behind that you can't catch up. Be sure that if you are struggling in the class, you reach out to me and get help.

 

 

Monday

Tuesday

First Lecture

Wednesday

Thursday

Second Lecture

Week Ends

Week 1

8/26/2024

8/27/2024

Module 1 (The Basics)
Intro S1 & A1

8/28/2024

8/29/2024

Module 2, Part 1 (Variables)
Intro S2

9/1/2024

Week 2

9/2/2024
No Class - Labor Day

9/3/2024

Module 2, Part 2 (Str Methods)
Intro A2

9/4/2024

9/5/2024

Module 3 (Operators)
Intro S3 & A3

9/8/2024

Week 3

9/9/2024

9/10/2024

Module 4, Part 1 (Branching)
Intro S4

9/11/2024

9/12/2024

Module 4, Part 2 (Branching)
Intro A4

9/15/2024

Week 4

9/16/2024

9/17/2024

Module 5, Part 1 (Loops)
Intro S5

9/18/2024

9/19/2024

Module 5, Part 2 (Loops)
Intro A5

9/22/2024

Week 5

9/23/2024

9/24/2024

Module 6, Part 1 (Functions)
Intro S6

9/25/2024

9/26/2024

Module 6, Part 2 (Functions)
Intro A6

9/29/2024

Week 6

9/30/2024

10/1/2024

Module 7, Part 1 (Lists)
Intro S7

10/2/2024

10/3/2024

Module 7, Part 2 (Lists)
Intro A7

10/6/2024

Week 7

10/7/2024

10/8/2024

Module 8 (String Manipulation)
Intro S8 & A8

10/9/2024

10/10/2024

Module 9 (Algorithms)
Intro S9

10/13/2024

Week 8

10/14/2024

10/15/2024

Module 10 (Exceptions)
Intro S10 & A10

10/16/2024

10/17/2024

Module 11 (Modules)
Intro S11 & A11

10/20/2024

Week 9

10/21/2024

10/22/2024

Module 12 (Files)
Intro S12

10/23/2024

10/24/2024

Module 12 (Files)
Intro A12

10/27/2024

Week 10

10/28/2024

10/29/2024

Module 13 (Recursion)
Intro S13

10/30/2024

10/31/2024

Module 14 (OOP)
Intro S14

11/3/2024

Week 11

11/4/2024

11/5/2024

Module 14 (OOP)
Intro A14

11/6/2024

11/7/2024

Module 15 (Inheritance)
Intro S15 & A15

11/10/2024

Week 12

11/11/2024
No Class - Veteran's Day

11/12/2024

Module 16 (Images)

11/13/2024

11/14/2024

Module 16 (Images)
Intro A16

11/17/2024

Week 13

11/18/2024

11/19/2024

Module 17 (GUI / TKinter)

11/20/2024

11/21/2024

Module 17 (GUI / TKinter)
Intro A17

11/24/2024

Week 14

11/25/2024

11/26/2024

Module 18 (Pygame, p1)

11/27/2024

11/28/2024
No Class - Thanksgiving

Module 18 (Pygame, p1)
Intro A18

12/1/2024

Week 15

12/2/2024

12/3/2024

Module 19 (Data Sci, p1)

12/4/2024

12/5/2024

Module 19 (Data Sci, p2)
Intro A19

12/8/2024

Week 16

12/9/2024

12/10/2024
(M/W Final)

Final Exams

12/11/2024
(T/TH Final)

12/12/2024

Final Exams

12/15/2024

BC Resources and Information for Students

Online Student Support

The Renegade HUB is a resource for all students who need help with Canvas, App Steam, and any education-related technology. Our accessible and friendly services offer assistance seven days a week (Online Student Resources | Bakersfield College (Links to an external site.)) in various formats: in-person on the first floor of the Library past the Commons in L 130, via phone (661) 395-4477, and virtually by logging into Starfish Kiosk (Links to an external site.), selecting the problem they are experiencing, choosing the course that it pertains to, and specifying the preferred contact method. Our team responds promptly and guides students to resolve technical issues they may be experiencing with technology for their classes. For more information and help please connect with the Renegade HUB StarFish Kiosk

Technology Support

Bakersfield College has a large number of technology support resources and services available for students.

From inside Canvas, you can access these resources by clicking the question mark icon at the bottom of the left-hand side of the menu.

Canvas Support

If you are new to Canvas, you might take a look at the Canvas Video Guide.

For Canvas Help and Support, try the Renegade Online Student Hub

General Tech Support

For help with logging in, passwords, or other technical support, go to the Help Desk Page

  Financial Aid and Scholarships

 The Office of Financial Aid & Scholarships administers federal, state, and private organization money to assist students from various economic backgrounds to meet their educational expenses. The college aid helps students and families to cover tuition and fees, room and board, books, and other coursework supplies as well as transportation. Our goal is for students to concentrate on their academic goals and obtain a higher education through the various programs Bakersfield College offers. If faculty/staff and students have questions regarding financial aid, we encourage them to visit our virtual lobby. We have technicians ready to answer questions from staff, students, and parents (FERPA on file) and they can be reached by clicking on Contact a Financial Aid Professional. Faculty and Staff can also request a presentation to be given in their classrooms by clicking on the Presentation Request Form. Please encourage all students to apply for the Free Application for Federal Student Aid (FAFSA), California Dream Act Application (CADAA), and Scholarships.

  Academic Support 

Bakersfield College offers many academic support services to help you achieve your education goals, namely peer and professional tutoring, computerized learning software, and organized study groups in person or online. These venues can assist with course content, assignments, required papers, study skills, and more!  Please contact the BC Tutoring Center for an appointment with a highly skilled peer tutor or a referral to other academic support services.

Disabled Student Programs and Services

DSPS Disabled Student Programs & Services (DSPS) is available to provide accommodations to students with diagnosed learning, mental, physical, and/or health-related disabilities that are either permanent or temporary. Students with disabilities needing accommodations, including those who had an IEP or a 504 plan in high school, should make requests to the DSPS office by contacting the office by phone call, email, or by visiting their Virtual Lobby. All requests for accommodations require appropriate advanced notice to avoid a delay in services. After completing the intake process with DSPS, please provide your professors with a copy of your DSPS approved accommodation checklist so that we can work together to ensure your access and success at BC. For more information, visit the DSPS Website, in person in CSS room 11, email dspsdesk@bakersfieldcollege.edu, connect to DSPS Virtual Lobby via zoom, or call (661) 395-4334 option 1 (Panorama Campus) / (661) 720-2000 (Delano Campus).

To ensure the maximum success for student accommodations, you should submit your DSPS accommodation checklist to the professor at least a week in advance of any assignment or test. This is to ensure adequate time is there to meet your testing and/or assignment needs. Failure to do this could result in the inability of staff to make appropriate arrangements.

Powered by LiquidSyllabus.com:
Liquid Syllabus Logo