Week 3 at Recurse Center

Day 1: Start with the dropin warmup. Can think of an inefficient solution (O(n^2)). Want to do better, hence start understanding how to build a suffix tree. Spend almost two hours without understanding fully how to construct a suffix tree. Need to find a good tutorial on Ukkonen’s algorithm.

Start working on BitFunnel again. Download a Wikipedia database dump file. Process it with Wikiextractor script and then BitFunnel WorkBench, so that it can be fed to a BitFunnel executable. The idea is to ingest one such database dump and measure the performance. The IngestAndQuery executable in BitFunnel hasn’t yet implemented the ingestor call. The next task is to have IngestAndQuery ingest the documents.

Finally, the big day is here. Gerald Sussman spends the entire day at RC and gives a talk on flexible systems in the evening. A mere thirty minutes is less for the material he presents but more than thirty minutes long question and answer session kind of makes up for that.

Day 2: Start the day with pair programming with Ivan on his REPL for BrainFuck. Quickly discuss yesterday’s warmup problem which has the problem of finding the consecutive three letters appearing most frequently. My solution is to solve it using a Suffix Tree. But Ivan uses sliding window approach where he hashes every three letter in the sliding window and keeps a count.

Try to understand how the Ingestion works in BitFunnel.

Pair with Miguel on his Makefile

Pair with Andrea on the Code Dojo problem which is this HackerRank problem.

Day 3: Was distracted. Did the dropin warmup. Wrote fizzbuzz using template meta-programming for the first time. Tried to ingest a Wikipedia database dump using BitFunnel.

Day 4: Pretty much the same. Was defocused. Did the dropin warmup in the morning. Made some more notes on Makefile. Started learning about Information Retrieval system. Ended up staying late for the Arts and Crafts night at RC. Made some fridge magnets and a doodle.

Week 3 at Recurse Center