Posts

MacBook Pro 16: the good, the bad, and the ugly

Late December 2019, I replaced my 2015 model MacBook Pro 13 inch laptop with a 2019 model MacBook Pro 16 inch laptop. The MBP16 laptop provided a long awaited fix to the keyboard Apple broke in 2016. I needed a laptop after 5 years, so I thought this was a good time to hop back on board. After two months of using it, I am only partially happy with my choice. Let me explain the good, the bad, and the ugly parts. Good Big screen: In terms of screen real estate the MBP16 is a big upgrade over my old MBP13. This was very similar to going to a big-screen iPhone: initially the big screen iPhone feels outrageously huge at your hand, but after a week, you look at your old small-screen iPhone surprised how you were able to use that stupidly tiny child-toy. After a week of MBP16, trying to use the MBP13 felt exactly that way. Keyboard:  The keyboard is good. I didn't like the keyboard too much in the beginning because I was switching from 2015 MBP13 which had a good keyboard. But af...

The art of powerful questions: catalyzing insight, innovation, and action

This is a 14 page booklet by David Isaacs Eric E. Vogt, Juanita Brown, available online at https://umanitoba.ca/admin/human_resources/change/media/the-art-of-powerful-questions.pdf I am fond of questioning. My 2018 resolution was to add MAD questions to each blog post. I also wrote about how to ask better questions a couple of times in this blog. + Master your questioning skills + How to ask better questions This booklet is a pretty nice addition to my collection. Below I include my highlights, with my italicized commentary in-lined. Speaking of questions and collections, you should definitely check this comic.  Highlights from the book  The usefulness of the knowledge we acquire and the effectiveness of the actions we take depend on the quality of the questions we ask . Questions open the door to dialogue and discovery. They are an invitation to creativity and breakthrough thinking. “If I had an hour to solve a problem and my life depended on the solution, I w...

Book review. Tiny Habits (2020)

Image
I had mentioned about the Tiny Habits technique by BJ Fogg back in 2014. And now Dr. Fogg wrote an entire book on Tiny Habits. He also provides resources for the Tiny Habits technique freely at https://www.tinyhabits.com/resources . Here you can read more about Dr. Fogg  and his career on captology, the study of computers as persuasive technologies, and some controversy about his work on captology. Interesting stuff. Coming back to the book, to me the book felt longer than needed. Some people may still find this long-form immersive experience useful, but I mostly skimmed through the slow text to get to the visuals and take-aways. Below are some of my highlights from Kindle, and some important visuals from the book. This is a very useful book. As I wrote earlier , "Instilling useful "habits" is a great trick to conserve energy. When you make something a habit, you don't need to waste your energy for remembering to do it and more importantly for finding the wil...

Canopus: A scalable and massively parallel consensus protocol

Image
This paper is by Sajjad Rizvi, Bernard Wong, and Srinivasan Keshav, and appeared in CoNext17. The goal in Canopus is to achieve high throughput and scalability with respect to the number of participants. It achieves high throughput mainly by batching, and achieves scalability by parallelizing communication along a virtual overlay leaf only tree (LOT). Canopus trades off latency for throughput. It also trades off fault-tolerance for throughput. The protocol Canopus divides the nodes into a  number of super-leaves. In the figure there are 9 super-leaves, each super-leaf with 3 physical nodes (pnodes). A LOT is overlayed on these 27 pnodes so that the pnode N emulates all of its ancestor vnodes 1.1.1, 1.1, and 1. The root node 1 is emulated by all of the pnodes in the tree. Canopus divides execution into a sequence of consensus cycles. In the first cycle, each node within the super-leaf exchanges the list of proposed commands with other super-leaf peers. Every node then ord...

Traveling across the US

This post is me reminiscing of our travel across the US in Summer of 2018. It feels good to remember about the summer in these cold winter days. In order to move to Seattle for a sabbatical at Microsoft, we drove across the US and made this in to a family trip. This was not easy undertaking. Our neighbor called us "brave" when we announced our plan ---her tone suggested that she meant it to mean "crazy". But we did it, and the kids loved it and they wanted to do it again. We traveled from Buffalo to Seattle, not quite the entire coast to coast travel. We traveled through I90 and it was easy and comfortable drive. It comes to more than 2800 miles, and means 40 hours of driving. We had planned to drive 10 hours a day, take a break on the third day to see three national parks on I90, and finish the trip in 5 days. We had three kids, 11yo boy, 7yo girl, and 3 yo girl. We drove with a Toyota Camry 2010. My old faithful already had 128K miles before the drive. We ha...

Book Review. Made to stick: why some ideas survive and others die

This book from 2007 was an easy and fun book to read. The book gives tactics for making ideas/concept stick in peoples minds. This is not just useful for marketing purposes, but also for teaching, presenting, and research exposition. The book gives the following formula for stickiness: tell Simple, Unexpected, Concrete, Credible, and Emotional Stories. SUCCESS! Acronyms help for stickiness. Notice how close the advice in the "Talk like TED" book mirrors the advice here. For me this is what stuck from the book. (Note that this follows the SUCCESS formula.) Nora Ephron is a screenwriter whose scripts for Silkwood, When Harry Met Sally, and Sleepless in Seattle have all been nominated for Academy Awards. Ephron started her career as a journalist for the New York Post and Esquire. She became a journalist because of her high school journalism teacher.  Ephron still remembers the first day of her journalism class. Although the students had no journalism experience, th...

How to write papers so they get accepted

Image
This is a very bold and *valuable* talk: The craft of writing effectively . It introduces a no-bullshit approach to academic publishing that will change/upgrade your perspective to writing. This talk may offend you, you may want to reject these ideas initially, but you will eventually realize that this is the reality we live in and you must come to terms with it. Since you are a researcher, and deal with complicated topics, you need to use your writing for thinking. Writing and thinking feed off of each other, and you need to write to help your thinking. But ultimately writing is not about you or your thinking, it is about the *reader*. After your initial drafts are done, you should reframe your writing to be reader-centric . The reader doesn't care about your work, he cares about what useful things he can learn from it. ( In marketing, they have a good saying about this: The customer doesn't want a power drill, he wants a hole in the wall to hang a photo. ) Provide val...

Future of work

Image
A week or so ago, I told you I wanted to brainstorm about the future of work . Well, here it is for what it is worth. Work wants to be free/liberated  As liberties progress and more welfare is created, our expectations move higher up in Moslow's hierarchy . We are not satisfied with achieving bare survival by means of our work, and we want to thrive, flourish, and express ourselves via our work. We long to have more autonomy and freedom of choice and expression in our work. We like to pursue our own enterprises as part of our work. We already see things moving away from the traditional industrial model with company loyalty, closer to this type of model. In software field, which is well off compared to others, people switch jobs frequently, and try to build their own brands/niches, and demand fulfillment from their work. As these trends shape the future of work, we will see a growing gig economy that is served/supported by algorithmic platforms. Some primitive examples of th...

CSE 610 Distributed Consensus, Decentralized Ledgers, and Blockchains

Image
This semester I am teaching a small research course on Distributed Consensus, Decentralized Ledgers, and Blockchains. Blockchains! You? One should be able to call bullshit when one sees bullshit. In this blog, I did that several times for certain claims about blockchains technology.  But, just because of some stupid/hyped-up claims and some first-generation inefficient implementations, it is unacceptable to make fun of and ridicule the entire blockchains field. (Yes, it is definitely a field, when a Turing Award winner and a strong candidate for Turing Award publishes papers on the topic. ) A researcher should not use a broad brush to paint. Truth is multidimensional. Even when parts of a field is impractical right now, that doesn't justify putting the entire field down. P2P was impractical. It lost to the centralized model. But the best ideas from those work found their way to traditional datacenter computing. The distributed hash table idea got adopted for distributed...

Future of Work (MSFT Faculty Summit 2019)

Image
Future of work is a very interesting topic. This is something I would like to think about and brainstorm. But since the topic is very broad, the attempts to talk about future of work can get hazy and vague.  NSF has released this call for proposals on Future of Work.  It invites researchers to start addressing the needs/problems/challenges future work with a "convergent perspective". I am accustomed to seeing vague and extravagant language in NSF calls, but I think this one surpassed the usual. The word convergent/convergence appears 22 times in the call. (I think convergent is a new word for interdisciplinary in this context.) I guess a similar thing happened with the Microsoft Faculty Summit 2019. Last July, I was at Microsoft for my sabbatical, and had a chance to attend the Microsoft Faculty Summit, whose subject was "Future of Work" . It was a two day workshop, and I was very motivated to learn as much as I could from the workshop, because the topic is very i...

Book review. Every tool is a hammer: Life is what you make it (by Adam Savage)

This book, published in 2019, is from Adam Savage of Mythbuster's fame. The book is a love letter to making. The book defines making not as the physical act of building but as the audacity of creating: "Making is more than the physical act of building. It's dancing, it's sweing. It's cooking. It's writing songs. It's silk-screening. It's breaking new trails both literally and figuratively." To me, this book is another manifestation of  the "War of Art" book by Steven Pressfield  in a different format/domain. This book talks about the resilience, the labor of creativity, and acting in face of a fearful/challenging project, which is also the topic of the War of Art book. The "How to be a Pro" concept discussed in the War of Art book is also explored in depth here. The respect for the craft, the tools, and the requirement to ship something by the deadline defines the professional.  "Professional is patient, prepared, acts...

Distributed systems analogies

Image
I start my distributed systems class each semester with a video of a murmuration of starlings. I tell the students that this still qualifies for a distributed system, because the definition fits: A collection of autonomous nodes communicating to address a problem collectively, with no shared memory and no common physical clock. Just from simple local actions of each starling (i.e., that of readjusting position with respect to neighbors) a global behavior of the murmuration emerges in poetic beauty. I like this analogy pedagogically because it is very visual. What I don't like about the analogy is that the specification of the global behavior is lax. The starlings don't crash into each other, fine, but there is no other constraint about the global behavior of the murmuration. No constraints there. The murmuration can go to any direction, split, rejoin, etc. What could be a better analogy for a distributed system? To answer this question, let's start by considering a...

Practical Byzantine Fault Tolerance

Image
This paper is authored by Miguel Castro and Barbara Liskov, and it appeared in OSDI 1999. The conference version has around 2500 citations, and the journal version has close to 1500 citations. This paper is the grandfather for most Byzantine Fault Tolerant (BFT) protocols, including work that appeared through 2000s-2010s at OSDI/SOSP, and more recent blockchain BFT work such as LibraBFT.  The serpentine history of Byzantine fault-tolerance The paper starts with this declaration: "We believe that Byzantine fault-tolerant algorithms will be increasingly important in the future because malicious attacks and software errors are increasingly common and can cause faulty nodes to exhibit arbitrary behavior." How prescient of them. When Byzantine fault tolerance (BFT) was first introduced by Lamport in 1982 , it was mostly of theoretical interest, and it remained so for a long time. Although the prediction in this 1999 paper eventually came true, I don't think it happened...

Death's End (by Liu Cixin) and the Swordholder problem

This is the last book in Liu Cixin's Remembrance of Earth's Past trilogy. I had written reviews for the Three Body Problem and Dark Forest before . So for completeness sake, I write my impressions about this book as well. This time I try not to talk much about the plot, and try to keep this spoiler-free. This book is epic, in terms of the space distance and timeline it covers. It is awe-inspiring in that vastness in space and time sense, and makes you think at the universal scale. This book feels much more hardcore sci-fi than the previous two books, and less believable than them. The book also feels rushed in character/plot development (definitely not length) compared to the previous two books. But all in all, it is a very captivating science fiction and I couldn't stop thinking about it even one week after finishing the book. The book still has a very cynical and very pessimistic view of human nature (as well as alien nature). The universe is a dark forest, where eve...

State Machine Replication in Facebook's Libra Blockchain

Image
This paper presents LibraBFT , the state machine replication system designed for Facebook's Libra Blockchain. LibraBFT is based on HotStuff, which I had summarized recently . LibraBFT adds modules, such as a pacemaker, to adopt and operationalize the HotStuff protocol within a real-world blockchain system. The plan with the Libra project is that, initially, the participating validators will be permitted into the consensus network by "Founding Members". Later on, membership eligibility will gradually become open/permissionless while preserving decentralization with careful governance. (To facilitate dynamic membership, Libra BFT can reconfigure itself by embedding configuration-change commands in the sequence.) In my summary below I mostly use prose lifted from the LibraBFT whitepaper . It is a 41 page paper, so I focus only on the important parts to provide the summary. After the summary, I add a brief discussion about how LibraBFT compares with other blockchain conse...

Popular posts from this blog

Hints for Distributed Systems Design

The Agentic Self: Parallels Between AI and Self-Improvement

Learning about distributed systems: where to start?

5 Lessons at 50

Foundational distributed systems papers

Building a Database on S3

Cloudspecs: Cloud Hardware Evolution Through the Looking Glass

Aurora DSQL: Scalable, Multi-Region OLTP

TLA+ modeling tips

Supporting our AI overlords: Redesigning data systems to be Agent-first