Articles tagged with #computer-science

Systematic Program Design: Space Invaders Project

Just completed the midterm project which was to implement Space Invaders game! It's pretty easy if you paid attention to all the lessons leading up to here. I started by doing a domain analysis using pen and paper. I also wrote out all the scenarios, such as changing direction when …



Math for CS: Problem Set 1 Reflection

I didn’t find the first proofs to be easy. It required creative mathematical thinking using algebraic rules, some of which I have forgotten. To not waste too much time, I gave it an honest attempt for 16-32 min, then after I was surely stuck, I looked up the solution …



Systematic Program Design: Week 6a - Binary Search Trees

Module overview/summary: Binary Search Trees In this module we will investigate how the structure of data affects performance, especially when it comes to the time required to find an element in a large data store. As part of that we will discover a new self-referential form of data, the …



Math for CS: Quantifiers and Predicate Logic

We start off with quantifiers. There are two of them. “For all” and “there exists”, each with their own notation. For all is an upside down A and there exists is a backwards E. We are also introduced to predicates. a predicate is a statement that contains a variable and …



Systematic Program Design: Week 5 - Naturals and Helpers

This is my brain dump of week 5 of SPD. I might not go into too much detail and to understand some of it you might need to be familiar with the Racket language and have completed weeks 1-4. I haven't created blog posts about weeks 1-4 yet because I …



Math for CS: Logic and Propositions

A proposition is a statement that is True or False. A large fraction of all math statements are of the if-then form. Learning about propositions, and propositions from propositions. The propositions from propositions can be combinations, modifications, or relations. For example, and, or, not. A implies B. A if and …



Math for CS: Well Ordering Principle

The Well Ordering Principle - Every nonempty set of nonnegative integers has a smallest element Proving by using the well ordering principle is another proof method. It can be used to prove that sqrt(2) is irrational. We are given the template for this proof method, along with some examples.



Math for CS: Proof Methods

In this unit, we go over some proof methods. Two main ones are covered, followed by some tips about good proofs. Proof by cases Proof by contradiction I’ll spare the details here, but you can find it on the course website if you want to know the specifics. Why …



Math for CS: Intro to Proofs

A proposition is a statement that is either true or false. We are given some examples in plain English of what is a proposition and what isn’t. Then, we go on to mathematical examples, including Fermat’s last theorem and Goldbach’s conjecture. A predicate can be understood as …



Why I'm revisiting software fundamentals and my learning plan (pinned)

I'm sure we all agree that mastering the fundamentals is important. This is true for any discipline. In this blog post, I will be sharing my learning roadmap/plan for revisiting the fundamentals of CS/Software and discuss why I'm doing this. I will also discuss with my thoughts about …