Born Standing Up

Posted in: Reviews, Sunday, June 30, 2024

In the late 1970s, Steve Martin was the top stand-up comedian in the United States. At the peak of his career, he was regularly selling out 30,000 seat stadiums, event after event, year after year. And then, in 1981, he quit - forever. Born Standing Up is the story of how he rose - and why he left.

Continue Reading...

The Warden

Posted in: Reviews, Monday, June 24, 2024

The Warden is the first book in Anthony Trollope’s Chronicles of Barsetshire series, a satire of church politics in Victorian England. Trollope allegedly never revised what he wrote, and it shows. The prose is often ponderous and meandering, with the author inserting a diatribe against The Times and Charles Dickens midway through the novel. Trollope is sharply critical of the many institutions that feature in the novel, but at the same time mocks efforts to reform them. He has a keen sense of irony when setting up his characters; Nobody is spared ridicule. Unusually for a novel of its time, Trollope breaks the fourth wall, inserting himself as a character and talking to the reader as if relating a piece of gossip. However, like many parodies of current events, it aged quickly – many of the references went over my head, and I’m sure I missed a lot of jokes a Victorian reader would have understood.

Continue Reading...


Posted in: Reviews, Sunday, June 16, 2024
Shopgirl is a story of finding love, or if not that, at least finding yourself. The prose is sharp and frequently hilarious, but it has a vulnerability to it that makes the book stand out. Martin has a sharp eye for his characters and succeeds at conveying the bleakness of their inner lives.

Martin’s style is unique. I’ve never read another book written in the same way. It’s prose-heavy, dialogue-light, and narrated in the third person by someone who knows the characters better than the characters will ever know themselves.

Continue Reading...

The Sorrows of Young Werther

Posted in: Reviews, Monday, May 27, 2024
When I picked it up, I only knew The Sorrows of Young Werther for its reputation as an early Romantic novel that took Europe by storm when published in 1774. I expected a typical romantic novel, full of melodrama and lacking in self-awareness.

It was not the book I expected.

Werther might be a romantic hero, but Goethe makes him an obnoxious, unlikeable one. I'm surprised that so many people wanted to emulate Werther, even if they felt the like he did. What doesn't surprise me is that Goethe came to dislike the book in his old age; a lot of people missed that Werther is not that admirable.

Continue Reading...

A Gentle Introduction to Metaethics

Posted in: Reviews, Monday, May 20, 2024

In Plato’s Republic, Socrates and his companions examine whether ethics are a human construct or part of the fabric of reality. Thrasymachus argues that morality is an ideology that promotes the interests of the strong over the weak. Concepts such as repaying your debts or respecting property rights are useful for controlling people, rather than being objectively right. Glaucon has a more positive view of morality as a human construct. To him, ethics is a system for solving the problem of cooperation and living together. Socrates, however, rejects both positions, arguing instead that morality is an objective part of reality. 

Continue Reading...

The Time Machine

Posted in: Reviews, Wednesday, April 17, 2024
The Time Machine is a science fiction classic speculating about the evolutionary future of humanity. It is not the first novel of time travel - A Connecticut Yankee in King Arthur's Court appeared a few years before - but it is the first to explicitly invent the technology of time travel. The prose is dense but still readable, and it lives up to its status as a sci-fi classic.

Continue Reading...

American Pharaoh: The Life and Times of Richard J. Daley of Chicago - Part III

Posted in: Reviews, Monday, April 08, 2024
As the Civil Rights Movement gained steam in the South, black Chicagoans watched with interest. Chicago's schools were just as segregated as any you would find in Alabama and Mississippi. They were just as unequal as well; the average black Chicago school had twice as many students as white ones. The city had built a few new schools in black neighborhoods, but not nearly enough to accommodate the influx of new residents. School superintendent Benjamin Willis's solution was to convert the overcrowded schools to double shifts. And yet, many white schools had vacancies, with many classrooms in high schools sitting empty. When parents applied to transfer their children to underutilized white schools, they were instead transferred to distant black schools. Parents began to protest, led by activist Saul Alinsky. "Death watches" were held at the Board of Education meetings, where members held a vigil dressed in black.

Continue Reading...

Mayor: The Life and Times of Richard J. Daley of Chicago - Part II

Posted in: Reviews, Friday, April 05, 2024
Daley gave indications of how he would truly govern at his inauguration. During his inauguration speech, he said he would "relieve the council of administrative and technical duties ... and permit the aldermen to devote most of their time to legislation.". His intention was to turn the City Council into a rubber-stamping body for his policies. Daley also went back on his promise to resign his position as Chairman of the Central Committee, pretending he had never made that promise in the first place. Daley realized that if he could push Kennelly out, another chairman could do that to him. In addition, holding the chairmanship allowed him to control slating decisions, which made the aldermen dependent on him for their political careers. They quickly acquiesced to Daley's "reforms" to the city council, even when he took away their powers to grant driveway permits and zoning variances in their wards, a significant source of bribes. From now on, all favors would be granted from the fifth floor of city hall.

Continue Reading...

Boss: The Life and Times of Richard J. Daley of Chicago - Part I

Posted in: Reviews, Monday, April 01, 2024
Richard J. Daley was perhaps the most powerful local politician America has ever produced. The second most powerful politician in America after the president, he personally selected every Democratic candidate running in Illinois, from Governor to Alderman. In addition to the elected positions, Daley controlled forty thousand patronage jobs, from judgeships down to the ditch diggers; he personally selected who got those jobs. Beyond the borders of Chicago, Daley played kingmaker for the Democratic nomination for president; his ability to control the Illinois delegation made and broke presidential candidates.

Continue Reading...

The Garden Party and Other Stories

Posted in: Reviews, Thursday, March 28, 2024

The Garden Party and Other Stories is a 1922 collection of modernist fiction by New Zealand author Katherine Mansfield. The author is an extremely descriptive writer, more interested in people than plots. I’d describe her prose as literary impressionism, to a fault. Stories such as Bank Holiday contain only impressions and lack even a character to attach ourselves to. The best stories, however, describe the internal psychology of her characters, and in a short paragraph, she is able to convey a whole backstory and psychology of a person. 

Continue Reading...

Willa Cather's Great Plains Trilogy

Posted in: Reviews, Monday, January 15, 2024

The Great Plains Trilogy by Willa Cather is a classic of American fiction, telling stories of Scandinavian immigrant families coming West to homestead the prairie. The books are semi-autobiographical, inspired by the author’s experiences growing up in Nebraska. Many of the characters are directly inspired by people she knew.

Continue Reading...

The Ten Commandments of Refactoring

Posted in: Technology, Saturday, January 06, 2024

Refactoring by Martin Fowler is a book showing how to refactor code - restructuring a codebase to improve it without changing its functionality. The book provides general principles, a list of code smells, and how they should be refactored. Most valuable is the catalog of refactorings, such as extracting duplicated code into a common function or encapsulating a variable. Each entry in the refactoring catalog explains the motivation behind the refactoring and an example of the refactoring applied in real code, with the author noting common pitfalls. 

Continue Reading...

And the Band Played On: Politics, People, and the AIDS Epidemic

Posted in: Reviews, Friday, December 29, 2023

And The Band Played On by Randy Shilts is one of my top 5 books, a masterpiece of investigative reporting. It tells the story of the beginning of the AIDS epidemic in the United States, and how it was allowed to happen. All of our institutions failed to do anything: Gay political leaders treated it as a PR problem, the Reagan administration treated it as a budget problem, and the media largely ignored it. It is a story of how politics came before saving lives.

Continue Reading...

The Pragmatic Programmer: 20th Anniversary Edition

Posted in: Technology, Tuesday, December 19, 2023

The Pragmatic Programmer: From Journeyman to Master by Dave Thomas and Andrew Hunt was given to me as a gift after an internship. The book gave me invaluable advice as I started out in my career as a professional software engineer. Re-reading it a decade later, I thought the general advice still held up well, but it made references to technologies such as CORBA that are no longer used and felt dated as a result. The authors agreed and wrote a 20th anniversary edition that was updated for modern developers. A third of the book is brand-new material, covering subjects such as security and concurrency. The rest of the book has been extensively rewritten based on the authors’ experience putting these principles into practice. We discussed the 20th anniversary edition in my book club at work. 

Continue Reading...

Family and Borghesia

Posted in: Reviews, Saturday, November 25, 2023

Family and Borghesia is a collection of two novellas by neorealist Italian writer Natalia Ginzburg. Each novella features a large cast of characters trying to navigate the changes in family life in post-war Italy. Ennui is the dominant emotion; The characters are empty and dissatisfied with their lives, but they don’t want anything else either.

Continue Reading...

The Turnaway Study: The Cost of Denying Women Access to Abortion

Posted in: Reviews, Tuesday, November 07, 2023

In 1987, President Reagan gave a speech to a pro-life group, saying that while a personhood amendment was not in the cards for the foreseeable future, concrete steps were being taken by his administration to show that abortion harms women. Reagan had directed his Surgeon General, the conservative pro-lifer C. Everett Koop to find this evidence. To Reagan’s surprise, after Koop interviewed dozens of women and reviewed 250 studies, the Surgeon General found nothing. However, he did consider that the studies that had been done so far had methodological flaws and called for better research. This call would go unheeded for twenty years. Until 2007, when The Turnaway Study by Dr. Diana Foster began.

Continue Reading...

The Castle of Otranto

Posted in: Reviews, Saturday, October 07, 2023

The Castle of Otranto by Horace Walpole is the original Gothic novel, the book that launched all the horror tropes we know and love from Dracula and Frankenstein. The book purports to be a manuscript from 9th–11th century Italy that was found and Walpole translated pseudonymously. It immediately became popular, gaining cachet with popular readers and critics alike. However, in the printing of the second edition, Walpole revealed that he had written it, inspired by a dream. Infuriated that they were tricked, critics dismissed it as fluffy romantic fiction and morally suspect. The ruse did, however, launch the trend of gothic literature as “found” literature.

Continue Reading...

Saving America's Cities: Ed Logue and the Struggle to Renew Urban America in the Suburban Age

Posted in: Reviews, Sunday, October 01, 2023

America’s cities are booming again. After decades of residents fleeing to suburbs, taking tax revenue and jobs with them, people have found urban living appealing again. And yet, in this new-found prosperity are the seeds of crisis. As more people move in, rents have climbed, burdening low-income renters. In 1960, one-fifth of renters spent more than 30% of their income on housing. Today, one-half do. in Los Angeles, nearly a third of renters paid 50% of their income in rent. Noone has stepped in to fix the problem. Affordable housing is blocked by community opposition, onerous regulations, and years of neglect. Government support has not been forthcoming either; despite more and more households qualifying for rental assistance, rent assistance has been reduced. What is to be done?

Continue Reading...

The Right to Sex: Feminism in the Twenty-First Century

Posted in: Reviews, Friday, July 14, 2023

This 2020 collection of essays on feminist philosophy by Dr. Amia Srinivasan deals with issues in contemporary sexuality and feminism. The author is quite critical of some aspects of modern feminism, and confronts difficult subjects in her essays. I learned a lot about the history of feminism from her writing. This is not a book that provides answers to the questions raised, only complications.

Continue Reading...

Fast Joins in Apache Beam

Posted in: Technology, Saturday, July 08, 2023

At work, I was given a task of joining two different events coming in via a real time stream in Apache Beam. While joins are simple in a SQL batch job, they are significantly more challenging in real time streaming systems. In a batch job, the data is bounded - it is finite and eventually will be exhausted. In a real time streaming system, the data is potentially infinite - it must be broken up into a bounded set of records or your join will take an infinite amount of time. In addition, data comes in at different times - how long should you wait to decide the other side of the join is never coming? One solution to these problems is windowing. Windowing is breaking a real time event stream into bounded pieces. One example of windowing is a fixed window.

Continue Reading...

Blind Man's Bluff: The Untold Story of American Submarine Espionage

Posted in: Reviews, Saturday, July 01, 2023

This 1998 book by Sherry Sontag, Christopher Drew and Annette Lawrence Drew explores the stories of the US submarines engaging in clandestine operations against the USSR. It was a high-risk game of machismo, with daring captains driving straight into Soviet territorial waters, no thoughts given to the niceties of international law. High government officials were often unaware of the risks being taken by their fleet. But the risks they took gave important technical information, and the opportunity to stop nuclear war before it started.

Continue Reading...

It's Our Turn to Eat: Corruption in Modern Kenya

Posted in: Reviews, Saturday, July 01, 2023

This 2009 book by Michela Wrong is about John Githongo, a Kenyan anti-corruption crusader. He is invited to be the Permanent Secretary for Governance and Ethics in the new presidency of Mwai Kibaki. He quickly realizes that his position is to create the appearance of doing something about corruption, not to actually do anything. He discovers a scandal that goes all the way to the top that he is explicitly discouraged from investigating. But instead of giving up, he secretly records his colleagues’s and leaks it to the press.

Continue Reading...

The Culture Map: How to Navigate Foreign Cultures in Business

Posted in: Reviews, Sunday, June 04, 2023

Have you ever found yourself working on a multicultural team and unsure how to interact with them? Then the book The Culture Map by Erin Meyer is for you. The author is a business professor that advises clients on how to work with multicultural teams. She divides cultures into 8 traits that fall onto a spectrum, and gives advice on how to work with cultures different than your own. For example, some cultures have different attitudes about time. Some cultures consider you late if you don’t show up at the exact time of an appointment (Germany), while some might give you a leeway of 10 minutes (France) and some might be an hour late (India). So on a spectrum, you might see it like this:

Continue Reading...

A Personal Data Architecture for Fun and Profit

Posted in: Technology, Saturday, February 04, 2023

I like doing amateur data analysis, so I’ve been capturing my personal data for the last couple of years and exploring it. Using free (as in beer) tools for getting data, processing it and generating reports, I’ve become more productive, healthier, and wealthier.

Continue Reading...

Mobility Hubs Toolkit

Posted in: Blog, Friday, January 20, 2023

Today the Mobility Hubs Toolkit was released, a book I’ve been working on the past two years. The toolkit is a book dedicated to the concept of Mobility Hubs – the places where people change modes of transit, be that bus, biking, or walking. They provide a comfortable place to wait for the bus, provide bike racks for those who ride their bike to/from the Mobility Hubs, and nearby parks and art to make the site more interesting. And they are not just large transit stations – any bus stop is a Mobility Hub and should have at minimum a shelter, and bike racks for bike parking.

Continue Reading...

The House of the Dead

Posted in: Reviews, Sunday, January 15, 2023

After some initial literary success, Dostoevsky joined a group called the Petrashevsky Circle, which was anti-tsarist and set up a printing press espousing some of their views. He was arrested and sentenced to death, but was granted a reprieve at the last minute. Instead, he was sentenced to four years’ prison and six years of exile. After being allowed to return to St. Petersburg, Dostoevsky published The House of the Dead as a description of prison life. Because of censorship, he publishes it simply as a factual description of prison life but it’s clear the Dostoevsky is against the institution and considers it cruel. And yet, what does one do with murderers?

Continue Reading...

Assigning an AWS Elastic IP In Place

Posted in: Technology, Friday, March 31, 2017

Often, I find myself starting up an AWS cluster, but have forgotten to assign an Elastic IP. However, you cannot change the IP in the AWS console without shutting down and restoring the cluster(a lengthy process)

$ aws redshift modify-cluster --cluster-identifier CLUSTER --elastic-ip IP

An error occurred (InvalidParameterCombination) when calling the ModifyCluster operation: The request to attach the Elastic IP address must include setting PubliclyAccessible to true.

$ aws redshift modify-cluster --cluster-identifier CLUSTER --elastic-ip IP  --publicly-accessible

An error occurred (InvalidClusterState) when calling the ModifyCluster operation: The cluster is already publicly accessible.

This is quite the Catch-22 - You can’t modify it unless you’re setting it to --publicly-accessible and you can’t set it to --publicly-accessible unless because you’ve already set it! However, there is a hack around it:

$ aws redshift modify-cluster --cluster-identifier CLUSTER --no-publicly-accessible

$ aws redshift modify-cluster --cluster-identifier CLUSTER --elastic-ip IP --publicly-accessible

You reassign the IP by turning off --publicly-accessible, and then assigning the Elastic IP while setting --publicly-accessible​ at the same time.

Continue Reading...


Posted in: Reviews, Monday, July 18, 2016

One of the things I like the most about franchised media is how it can continuously be re-invented and reinterpreted for modern times and audiences, while remaining true to its myth. How many times have superheroes been reborn, shakesphere redone, and classic literature retold? However, rebooting a video game franchise is a sign of trouble: a quick look at the wikipedia list of reboots is a graveyard of once great franchises with lackluster sequels. I’m happy to say that DOOM (2016) does not fall into this trap.

Continue Reading...


Posted in: Reviews, Monday, January 18, 2016

After a mild equivalent of a space winter post-Apollo, the world is getting excited about space again. Spacex, mars colonization, and fears of extinction have stimulated the public’s imagination for space exploration again.

Continue Reading...


Posted in: Reviews, Tuesday, December 29, 2015

Labryinth is one of the few films made for a generation not yet born. It’s supposedly a children’s film, but it bombed in the box office only to become a millennial cult classic. It has most of the things that were successful about 80s pop-cinema, or at least the things we thought we liked about it. The puppetry is done by Jim Henson, music by David Bowie, and liberally uses the tropes of children’s fantasy from the period. And yet, the tropes presented here are cynically reinterpreted through mass media spectacle, capitalism, and Freud. The standard fairy tale is twisted into a teenage girl’s masturbatory fantasy while acknowledging the magic that made us fall in love with the genre in the first place.

Continue Reading...

From Bash to Zsh

Posted in: Tech, Thursday, November 19, 2015

This is not the first time I had tried to switch to zsh, but after running into problems with bash that could have been fixed by using zsh, I decided to give it another go. I ended up picking this book since it compared bash and zsh, offering an easy zsh upgrade path by showing you how to duplicate your bash configuration in baby steps.

Continue Reading...

Modern Romance

Posted in: Reviews, Friday, October 02, 2015

After hearing Aziz Ansari discuss his book on the Freakonomics podcast a few weeks ago, I decided to get a copy of Modern Romance from Amazon. In his book, Ansari teams up with sociological experts to discuss how technology has changed how we form and maintain romantic relationships. In addition, he set up a subreddit for ordinary people to tell their stories of romance from around the globe. It is a short read, but remarkably empirical, using stories to illustrate data rather than picking the most lurid stories and spinning them - he finds that online dating and texting have their benefits and problems, and suggests ways to improve the modern romance experience.

Continue Reading...

Lord Of War

Posted in: Reviews, Sunday, September 06, 2015

Soon there’s gonna be a knock on that door and you will be called outside. In the hall there will be a man who outranks you. First, he’ll compliment you on the fine job you’ve done, that you’re making the world a safer place, that you’re to receive a commendation and a promotion. And then he’s going to tell you that I am to be released. You’re going to protest. You’ll probably threaten to resign. But in the end I will be released. The reason I’ll be released is the same reason you think I’ll be convicted. I do rub shoulders with some of the most vile, sadistic men calling themselves leaders today. But some of those men are the enemies of your enemies. And while the biggest arms dealer in the world is your boss, the President of the United States, who ships more merchandise in a day than I do in a year… sometimes it’s embarrassing to have his fingerprints on the guns. Sometimes he needs a freelancer like me to supply forces he can’t be seen supplying. So… you call me evil. But unfortunately for you, I’m a necessary evil.

Continue Reading...

Introducing Vimjects

Posted in: Technology, Saturday, August 29, 2015

I wrote my first amateur vim plugin, vimjects. It’s designed to source project-specific vim configurations, so that you can set options specific to your project.

Continue Reading...

Vampire the Masquerade: Bloodlines

Posted in: Reviews, Friday, July 24, 2015

It’s too bad the Vampire mythos has been reduced to the tween paranormal romance genre recently: they are one of the best monsters ever created, far more interesting the zombies of our current pop-zeitgeist; Unlike faceless hordes, Vampires manage to maintain a strong element of tragedy even when breaking our strongest taboos. Despite their threat to us, we ultimately root for the vampires for Vampires need not be monsters by nature. The Camarilla’s traditions that demand Kindred hold on to their humanity prevents the killing of innocent mortals, and the local blood banks are happy to sell to vampires. The reason they hide from is the same reason we reject them - fear. Instead a parallel world is created in image of our own society - the World of Darkness.

Continue Reading...

Alfred Baseconverter

Posted in: Technology, Sunday, June 28, 2015

I wrote a small workflow for Alfred 2: A system for converting between various bases in Alfred 2.

Continue Reading...

My time at the NIH

Posted in: Blog, Monday, September 01, 2014

Recently, I completed my internship at the NIH. I really enjoyed my work there, as I got an introduction to data science, bioinformatics and developed a lot of practical skills developing software for non-programmers.

Continue Reading...

Openhatch Workshop

Posted in: Technology, Tuesday, March 11, 2014

I attended an openhatch session last Sunday. Openhatch is a university workshop to help students start contributing to open source software. At the workshop, we were taught a bit about the open source community, git, IRC and bug trackers. We then learned about contributing on github. Breakfast and lunch was provided by the event.

Continue Reading...

Installing Tern for Vim

Posted in: Technology, Sunday, November 03, 2013

Recently, I started working on some javascript projects, and I sorely missed autocompletion provided by PyCharm and WebStorm. I found the tern project, which offers powerful javascript autocompletion in vim with YouCompleteMe. Setting it up however, was painful. For others trying to install tern for vim, here are the instructions:

Continue Reading...

Adding the Weather to the tmux status bar

Posted in: Technology, Wednesday, October 30, 2013

I decided to add a weather feature in my tmux status bar. I saw this could be done via powerline, and I initially tried to add it through there. I gave up after a few hours of trying to patch my fonts, although I must say powerline looks nice done right.

Continue Reading...

On Sorting Badly

Posted in: Technology, Tuesday, October 29, 2013

Recently, I saw this hilarious StackOverflow post: How bad a sorting algorithm can you make? Apart from the jokes, me and a few friends set out to make the worse algorithm we could in these constraints.

Continue Reading...

Interview Retrospective

Posted in: Technology, Friday, October 25, 2013

I had an internship interview today. My thoughts on how it went:

Continue Reading...

Her Fearful Symmetry

Posted in: Reviews, Tuesday, October 01, 2013

Often the labels we use to describe ourselves are a prison of our own making. We so closely identify with them that change is impossible, even if the label will kill ourselves. In Her Fearful Symmetry, Audrey Niffenegger tells a story of people defined by labels imposed by the world and themselves.

Continue Reading...


Posted in: Reviews, Tuesday, August 13, 2013

We’d like to offer the depressed comfort in the form of a single life-changing pep talk. But in reality, depression eats away at the belief you can be happy again. Perhaps this is why feel-good films are poor fare; If only it were easy to believe that things will be better. Melancholia does not attempt to make anyone feel better, only offering sympathy and understanding. But it offers more solace to the depressed than any happy ending could ever hope to.

Continue Reading...


Posted in: Reviews, Friday, April 05, 2013

Netflix has been pushing me to watch Cashback(2006, Sean Ellis) for a long time now, and so on a rainy Monday spent procrastinating, I brought it up. After watching the film, I’m a little hurt that the Netflix algorithm thinks so poorly of me. Never have I seen a film this misogynistic, this objectifying, this disturbing. The film promotes the nerd “nice guy” narrative, features plenty of soft-core nudity, and portrays sexual assault as romantic. All this is done while trying to convince us that the protagonist is still a great guy. As far as adolescent wish-fulfillment fantasies go, it doesn’t get much better than this.

Continue Reading...

Hackers and the Politics of Identity

Posted in: Technology, Tuesday, April 02, 2013

The title “hacker” is back in vogue. Once a title that even denizens of Slashdot and Sourceforge reluctantly used, the rise of startup culture 2.0 has inspired a revitalization of the phrase. Hacker News, the leading technology aggregator, is chock full of recruitment ads for “iOS hackers”, “Rails hackers” or just “hackers”. All of them promise the sky to these enlightened individuals.

Continue Reading...