Done with KU

My time at KU so far has been largely unproductive. I’ve completed a seminar course and an Intro to Operating Systems course (which I had at UMKC as well when I was an undergrad), and for the two grad courses I’ve attempted so far (this and last semester), I’ve had to drop each one. Just due to my schedule of having 20 credit hours to teach last semester and 17 credit hours this semester, it just is not doable – and that’s clear after this first homework assignment that I bombed.

Now, this semester is also my last full-time semester teaching, because the grant paying for my position ends, so I will be going back to part-time adjuncting. I will have more time then. But, KU doesn’t feel like a good fit. I hate the 40 minute commute out into the middle of nowhere (There is NOTHING between Overland Park, KS and Lawnrence, KS). I don’t have the time to thoroughly work on my homework, and while at first I felt like this was a personal failing, now I feel like this is more to do with my schedule than anything. I was envious of students who did better at the project than me, but then I also have to realize that if you’re not working 12 hours a day twice a week, and you live on campus, and you can walk to go see the instructor during their office hours, you just have more resources available to you than I do.

This has been my third attempt at Grad School. And yeah, that kind of stings. I’ve failed three times:

  1. I enrolled at UMKC for a Masters in Curriculum & Instruction, 2013
    I completed the semester, getting A’s in three classes, including Linear Algebra. However, for one class I had to shadow a high school teacher and, having been homeschooled, the concept of public school is so foreign to me. The dynamic is so foreign to me. I also sub taught this semester, once at an elementary and once at a jr high, and that solidified my fear of school even more. I love teaching at the college level, but I’m afraid I don’t understand the school system before that.
  2. I enrolled at MS&T for a Graduate Certificate in Computer Science, 2013
    With the intention of completing a certificate and then transferring to their grad program, I enrolled in the certificate for Computer Security – which I found out that I’m really just not that interested in. And this expensive lesson taught me that I need to work on topics I’m passionate about in grad school, because it’s hard to get through on mere lukewarmness.
  3. I enrolled at KU for a Masters in Computer Science, 2016
    I completed my first semester of taking an undergrad class and the graduate seminar, and the following semester I attempted to take Data Mining. However, the volume of work required was too much for me, when I was barely surviving my work schedule. I dropped out. This semester, I registered for Visualization. Both of these topics are interesting to me, but the amount of time you need to put into them is just time I do not have. This includes the time required to commute to school for special reasons (e.g., professor office hours).

Looking back, I actually enjoyed my work towards the Masters in Curriculum & Instruction. I miss it. I feel like the classes I took – about diversity in the classroom, and about students with special needs – taught me a lot. Computer Science is too focused on just computers, but I need some more of that knowledge around people, too.

So now what I’m thinking about is going back to UMKC, where I went for my undergrad. In my time at different colleges, I’ve learned that I’m really just not a fan of the university format. My experience at Longview, when working on my Associates Degree, was so enjoyable. I think the teachers at JCCC are wonderful and we all put a lot of work into the education aspect of what we do. But at university, it’s a different dynamic, a different feel. The teachers don’t feel invested in me, personally, the way I feel invested in my own students. I feel like the attitude towards me is “sink or swim”, while for my students I want them to do the best they can, and if they do poorly on a specific topic, I want them to learn from what they did wrong, and not have it doom their grade in my class. A second chance.

So if I’m unhappy with the university format everywhere, and if I haven’t found a fit at these other schools, why not just go back to UMKC instead? I know the faculty there and they know me, they like me. I’ve worked beside them as an adjunct as well as learning from them as a student for my undergrad. I feel like the faculty at UMKC want to see me succeed.

UMKC is also in the middle of Kansas City. Even if I have to commute 40 minutes to UMKC (which I wouldn’t have to), there’s at least stuff on the way. I can do errands on the way to/from school. I can visit my sister in Westport after class. It’s a central location close to a lot in Kansas City. And Kansas City is much more interesting than Lawnrence, Kansas.

And, I’m pretty sure I could get a Teaching Assistantship at UMKC. I’ve taught there before, I’m going to teach there this fall as an adjunct. For KU, I’ve been paying out of pocket, $1600 per one class per semester. They may have TA positions, too, but I don’t want to make that commute.

I think in the long run, I might try to get two masters degrees at UMKC – the Computer Science, and the Curriculum & Instruction.

UMKC is home, and after exploring other environments here and there, I think this is where I will be most likely to succeed.

Flarsheim Hall / Haag Hall at UMKC

University and “Non-traditional Students”

My bilinear interpolation isn’t right. I’ve spent hours and hours on the project, sent emails to the teacher, but I still feel confused and like I lack the resources I need to do well.

I’m a non-traditional student, I guess. I would be a traditional grad student if I had started working on my masters right after my bachelors degree, but I was ready to get out of university. I worked in the industry, and then found I enjoy teaching computer science at the college level, and have returned to university at several places at several times pursuing several different types of degrees.

I will be 30 next month, I live 30 miles away from the university I’m currently attending, I’m teaching 17 credit hours this semester (and 20 last semester). I don’t spend time on campus for funsies; I park, attend my class, pay the $1.75 for an hour of parking, and head home. I have more focuses in my life than just my education – my husband, my day job, and my startup. I really only have the weekends to work on homework and studying.

I remember my pain-points while I was an undergrad, and that makes me the teacher that I am. I understand that my students have a life, I understand that students learn in different ways. Sure, access services will provide you a note taker, but I’ve always wondered how you can rely on the quality of a peer note-taker? When you’re new to a topic, how do you know what is important to highlight, and what’s ok to miss? How do you even take notes fast enough to keep up with a teacher lecturing? (That’s always something I’ve had trouble with.)

Honestly, I’m sitting in class right now and I cannot read all of the teacher’s hand-writing. There is glare on the board coming from the cracked windows, his scrawl is sometimes messy and hard to make out.

I’m frustrated, and I’m unengaged, and while a few days ago I was questioning my own intelligence and self-discipline and abilities, I’m now feeling that university just isn’t accessible to a student like me.

Part of it is the schedule – all of these classes, even grad classes, are mid-day. I’m not working a traditional 8-to-5 job, but if I were it would be impossible for me to attend this college.

Part of it is distance – all classes are in-person, and it’s a 40 minute drive each way. I’m not on campus enough to justify a parking permit, and by paying-per-hour, there is a financial penalty if I need to come on campus more often than I need, such as for office hours.

Another thing is the traditional teaching style – teacher lectures, scribbles on the board, and generally doesn’t refer back to the book or any external data. You’d better show up to class, and you’d better be good at taking notes because there sure as hell aren’t any recorded lectures to refer back to, no slides to look at (and if it is, it’s full of pictures and header text but none of the content.)

And it’s so striking how much different I try to make the experience in my classes, and how shitty I feel in other peoples’ classes.

And part of me wonders if this is part of the whole “toughen up” culture around college and tech – stop whining and “get gud”; if I can’t take it, then I’m just not good enough.

Or if the teachers don’t think about the inaccessible nature of their classes? Or think it isn’t their problem; “There’s an access services! Students can get a note taker and extra time on exams, what more is needed?”

Or maybe they’re more interested in their research than their teaching?

I remember the pain-points of when I was an undergrad, and the same pain-points crop up when I’m a grad. In my classes I make sure that anything I go over in class is also accessible outside of class: My slides or notes are very detailed with all the steps needed. I have video lectures for some of my classes (when I’ve had time). I write exercises that focus on building up the students’ understanding of new topics, starting easy and working their way up. In class we work on things together, because I know that something can seem understandable in lecture, but once you begin trying it yourself that’s where the confusion crops up. I want to make sure students recognize what they’re not understanding, so that we can get through it together and build their foundations and understandings.

And while some students have reviewed me as “worst teacher ever” (Maybe 4 in total have given me that distinction), I feel that so many more honestly find my classes engaging, fun, and instructive. And hopefully they feel secure – they know I’m not trying to write tricky reverse-psychology questions, or throw them in the deep end to sink or swim. They’re here to learn, I’m here to give them resources and help them explore and practice and learn.

And then it’s frustrating when I’ve had so many classes that are all the same “lecture-lecture-lecture, now 3 2 1 go do it hope you’re good at taking notes”. And for the most part, that’s how I’ve taught myself to teach myself. But now in gradschool I’m running into scenarios where there is less information out there, and sometimes (often) the teachers use only themselves as the only resource in the class, which leaves me feeling dumb – at first – and then frustrated because I know I could do better if things were just a little different.

Just because I’m a student doesn’t mean that you shouldn’t respect my time: Study guides

OK, I was going to write this blog post after I was done studying for the midterm, but I’m just too steamed right now so I’m going to vent and then get back to it. My plan right now is to spend this entire weekend re-reading all the chapters of the book and making notes on everything. (I keep these notes on my GitHub.)

I’m salty because I emailed the instructor a month ago and asked for the best way to study for the midterm. The response I got was:

Hi Rachel

Lecture notes and the book are probably the best way to prepare for the exam. 

So I guess that I’m just supposed to memorize every fucking thing out of the textbook, because there is no clear way to tell what this teacher things is important and what we will be assessed over.

A textbook I teach out of with only a few sentences highlighted

I clearly have not highlighted every paragraph of the Data Structures textbook that I teach from.

“Oh well you should be learning everything anyway.”

Sure, read all the content, absorb it all, but what we need to know of and what we need to have burned into our brains are very different. I sift through the textbooks that I teach out of and I sure as hell don’t highlight every damn line with what I think is important.

And it depends between teachers!

What I highlight and think is important is based on my own experience in the professional world with things that have come in handy, what I’ve needed to know, and so on. What somebody in academia thinks is important, someone whose research focus is operating systems, might be completely different than what someone thinks from a practical standpoint.

Textbooks are full of words. These words might be good in creating a flow for the textbook, but they are not reference material, and they do not only contain the important bits – they contain information on context, examples, and explanations. At some level, when studying, I’d prefer a reference book than a textbook, because there’s so much to sift through and pull out.

Something I probably don’t need to memorize, but is still mentioned in the textbook, taking up valuable space: “Two common techniques for loading executable files are double-clicking an icon representing the executable file and entering the name of the executable file on the command line (as in prog.exe or a.out).” – Operating Systems Concepts, 9th Edition, Silberschatz

It's part of a study guide that I've prepared.

It’s part of a study guide that I’ve prepared.

The study guides I prepare contain all of the information that I expect my students to know, and that they may potentially be tested over during an exam. It may still be a lot to read and learn, but it doesn’t compare to the amount of time they would have to spend in their textbook, guesstimating what may be important and what may not be.

Because how is a student supposed to properly figure what is and is not important? They’re students. They haven’t had the same background as the instructor, and cannot properly judge what the instructor is going to deem worthy to know.

Functions? Yes, you better damn well know the vocabulary relating to functions so that you can know what I’m talking about when I tell you specifically, “you’re not passing in enough arguments into your function call.”, because if you don’t know the definitions you’re lost.

You need to know how to use pointers, and the operator names and in what contexts what * does. But do you need to know how many bytes an integer, float, and double need? I don’t have that information memorized, and it has never affected me. So I don’t tell them to memorize that. That information is good for some background knowledge and context, but they don’t need to know how many bytes they’re allocating, at least in C++, to write a basic program.

So, in summary, it pisses me off when teachers don’t provide study guides. It already seems like a lot of teachers (especially at university level) have disdain for undergrad students, thinking that they’re so frivolous and immature. What could those kids possibly be doing with their time? Obviously all they should be doing is studying! It comes off as disrespectful. Many of us work, many have families – even at the community college level! – We have shit to do, we’re here to learn, but we’re not here to memorize textbooks. Exams really aren’t the best way to assess students, but when we have so many students there’s not really a chance to do things more personally.

I teach full time, and when you teach full time, that’s way more than a full time job. I’m working on visa paperwork and travel plans. I’m studying for classes. I’m trying to get an advisor and learn about gradschool. And I’m the only one at home to take care of things. And, sometimes, I want to play video games.

Next rant: “Why my powerpoints > your powerpoints”? the next chapter on “Why I’m a better teacher than you are”, the ego-driven blog series on why school sucks and why I make it sssooooo much better. ;P

See also: “Why I make my study notes public – so that other students don’t have to suffer as I have. My teaching philosophy in a nutshell.”

More exams are better

Schedule for the Operating Systems class that I’m taking

I am stressed out. The class I’m taking has only two exams – Midterm and Final. The exams together are worth 45% of the grade. This is unfortunate for me, considering that I’m not too great at exams!

In yet another example of “things that frustrate me as a student, so I try to do better at as a teacher”, I don’t like exams that cover too many topics. Sure, make the final cumulative; that’s fine. But, during our “learning period” of the semester, I prefer a tighter cycle – Teach, practice, assess. Teach, practice, assess. You can spend more time doing in-depth study of fewer topics in order to prepare for that topic’s exam, rather than panicking and trying to cover every topic for the first 8 weeks and praying to your exam-god that your teacher’s exams aren’t unintuitive, and that what you think is important to study happens to be the same thing that your teacher thinks is important to study. (For reference, I also hate the lack of study guides!)

Schedule for the CS 200 class that I’m teaching

In my classes, I tend to have about 4 exams, including the final. I like to schedule my courses in chunks, with exams being the clear delimiter between topics. For exam 2, students will be studying up on arrays, pointers, memory management, and dynamic variables/arrays; all related and tie together. Exam 3 is everything OOPey. Structs, classes, inheritance.

For Data Structures, the first exam is over introductory content, wrapping static and dynamic arrays, and building a linked list. The second will be over stacks, queues, and dictionaries. The third will be over trees, heaps, and balanced search trees.

And for Discrete Math, each chapter of the book gets its own exam as well. A nice, clean, split between topics in the course.

I also either prepare study guides, or provide exams from a previous semester. Why? I don’t protect my old exams like a dragon hordes treasure because at some point, somebody is going to have that information. And they’ll distribute that information among their friends, so then only a small pool of people will have it. That’s not fair to everybody, and that’s also not really something I can stop. So start them all on even footing. I hope that it also discourages cheating if students know what I expect of them, and what I intend to assess of them.

So I’m nervous about this upcoming midterm. I have actually taken this class before, as an undergrad, at another university…

… and while I scored really well in my programming assignments, I just don’t do well on these kinds of exams. Math, gimme, I’ll ace that. Exams with coding on paper – ok, I can do that. Exams where you memorize a bunch of random information aimlessly? That is not my strong suit.

The first time I took the course, it was taught by Dr. Cotter, who is one of my favorite teachers. Even having an interesting teacher didn’t make it easy for me to do well!

Of course, I’m older now, I’m more experienced, I’m better at knowing how to learn. I have been using more resources as I study these concepts so that I have a better understanding than I would if I only studied from the textbook. But still, I resent not knowing what is expected of me. I resent the lack of respect for my time, by making the exam an amorphous mystery – good luck.

How I prepare for weekly lessons

Lecture prep with textbook open and video editor open.

Here’s a preview into how I create the content for my courses. I always hated slides straight from the textbook publishers, so I always make my own. I also frequently have to re-teach or re-view content that I’ve learned previously, so the best way to learn is to consume all the information and then be able to regurgitate it in my own words.

For discrete math, I first go through the book and highlight the important bits – definitions, laws, notes about how things work. So much content in textbooks is just fluff… while it can help you gain context for what you’re learning, I wish it were separated a little more… give me the pure information in one section, and the pure exposition in another. Examples after that. Make it easy to parse.

So I come up with what I want to cover – then I usually look line for additional resources. I frequently quote Wikipedia pages on math because it’s easier to cite; I don’t want to get in trouble for quoting the textbook (because proprietary, ugh.) There are also Wikibooks (a, b) on Discrete Math, and other class resources from other universities.

Next, I build my lectures. Yep, it’s a slideshow (built with the open source LibreOffice Impress), however:

  • I try to write out all the information that I want to cover for the chapter in these slides. I hate when class slides are useless on their own.
  • I use the slides to give information, show examples, and give practice problems.
  • I turn it into a video, for students to watch on their own time.

As I turn it into a video, I alleviate some of the shitty parts of slideshows further:

  • I don’t just record myself talking as I run through the slideshow “live”. Nope. I throw the slides in my video editor (kdenlive, also open source), then record my talk for each slide separately (with Audacity, also open source). I put them all together in the video editor. This means I cut out all the “ums”, pauses, and stumbles.
  • I insert in working math by-hand by recording myself working problems in a paint program (GIMP, open source) with my drawing tablet (a cheapo Wacom), recording the screen with OBS (also open source).


I’m currently writing the lesson plan for a chapter on logic circuits, which means I pull out another handy open source tool: dia.

Using dia to diagram circuits

It’s dia!!

I’ve found that I’m too busy this semester to actually grade paper homework. With my own homework and studying to do as a grad student, it just isn’t practical. Therefore, I’m also leveraging our LMS (learning management software) to build custom homework questions that are self-grading, and give students immediate feedback.

Creating a quiz in D2L


Millennials rock

“demographers and researchers typically use the early 1980s as starting birth years and the mid-1990s to early 2000s as ending birth years.”

I think that teachers of the my generation and future generations will end up being more effective because of our experience with various types of technology. Many of us have grown up editing videos, using YouTube, or even making animations (*cough*Newgrounds*cough*…) and when we leverage our experience into our professional lives, we become that much better at creating tools and content. As kids and teens, we learn to be content creators, whether we’re making videos about video games, or programming tutorials, or drawing, or whatever our interests are.

We aren’t afraid of technology, and we pick up the tools we need and teach ourselves. I have a toolbelt full of software for video editing, audio editing, music writing and sheet music creation, diagramming, art, animating, software development, and more. I taught myself to animate as a tween, which is a skill that has served me throughout the years. I began making YouTube programming tutorials when I was about 18, which is another skill that I still build and use today.

We don’t rely on expensive proprietary software to come along and let us teachers achieve what we need – there are tons of tools for all sorts of things, and many are free and open source. And if those tools don’t exist, there are more and more tools popping up for building your own.

We are the generation that creates!

(And is also sleep deprived from too much work. Looks like I’ll get less than 5 hours of sleep tonight…)