_index.org

Representing Large Computation

Last edited: August 8, 2025

Instead of calculating:

\begin{equation} \qty( \frac{52! -1}{52!} ) \end{equation}

We calculate the log of it because then you are able to write:

\begin{equation} \log \qty( \frac{52! -1}{52!} ) = \log (52! - 1) - \log(52!) \end{equation}

which won’t be rounded to \(0\).

Requirements Analysis

Last edited: August 8, 2025

Requirements Analysis is how to satisfy your persnickety users while keeping your fucking app simple.

Goal

The broad goal of Requirements Analysis is to come up with a spec that is:

  1. Documented
  2. Actionable
  3. Measurable
  4. Testable
  5. Traceable
  6. Defined with details
  7. Satisfies business goals

Timing

Requirements Analysis should be performed when

  • Calculating costs
  • Setting priorities
  • Creating breakdowns
  • Including specialists

Steps

  1. Gather requirements by doing User Interviews
  2. Analyze the requirements for clarity, completeness, consistency, and lack of conflicts
  3. Write them down and implement them

Tools

Gap Analysis

Analyze the difference between where the business is at and its stated goals; figure out how the goals can be closed.

Research

Last edited: August 8, 2025

Learning to ask questions in a reasonable way. Changing you from a consumer of knowledge to a producer of researcher.

The Why of Research from Brian Thomas

  • Your discipline is not your topic
  • You should do research to find out whether or not you have chosen the right area of focus
  • You can interact with faculty in a new way: everyone is here because of fantastic scholarship; you are mining a completely novel area of their expertise
  • Research is the act of taming unruly problems

Research Tips

Last edited: August 8, 2025

Mykel’s Research Tips!

“we are not trying to sell our ideas, we are trying to sell understanding”

Levels of Critique

  • high level: “is this problem important/can it scale?”
  • mid level: “do the experiments show what is claimed”
  • low level: typography, grammar, style

State contributions before and after.

Good Presentations

  • not too stuffy nor casual
  • frequent use of graphics
  • you don’t want bullets with more than 2 lines
  • clear, upfront objective of the paper
  • everything was understanding during presentation: timing presentations such that its digestible as drinking down

Time Management

Randy Pausch’s time management lecture.

Resilient Distributed Dataset

Last edited: August 8, 2025

Importantly, we have to keep our data under something that can be called RDD: “Resilient Distributed Dataset”; it is a theoretical dataset, but you don’t actually load it.

RDDs are has a single vector datastore under, but there are special RDDs that store key-value info. For Spark, RDDs are stored as operational graphs which is backtraced eventually during computational steps.

Pair RDD

A Pair RDD is an RDD that stores two pairs of vectors: you have a key and you have an value per entry.