Bookends update, August 12th

It’s been a few weeks since I wrote the the initial Bookends post. I’ve been taking a couple of hours every week to work on the setting up Bookends and today, I sat down and got the search working using OpenLibrary’s API.

The search works by doing a naïve search so I think right now, it’s not ready to be used as it’s not reliable.

If you look at the screenshot below, you’ll notice that there’s no way to tell which book is actually a real Harry Potter book or one that’s missing an author. 

Searching for “harry potter” by Bookends

Next steps will include actually getting the search to order based on popularity. Also, I want to add more descriptions and covers before allowing people to actually play with this.

It’s been a slow progress because I’ve been thinking more and more about making the application portable from dev to production. No idea how I’m going to do caching right now and so I spend some time thinking about that right now. 


Check out this song:

Bookends, for fun and for learning

During the months of May and June, I worked on a hobby project with a friend of mine called “Decide”. You can go check it out here. During development, I learned a couple of new things, technical and personal things about myself. Technically, I learned some React based on Next.js. If you’re about to start learning React, don’t pile on another piece of tech on top of it, it’ll just make things more complicated and development even slower. My friend took care of most of the deployment work and the heavy lifting related to getting the app working, he even did a lot of the styling so I was left with figuring out some minor bugs, adding some features, and eventually doing some product development. This felt odd to me, I wanted to learn more and do more during this process. Well, we figured that the project was going to be “done” soon so we should just launch it and let it simmer on the web. After about a month of being live, we have some users on it but we’re not actively working on it. I wanted to start working on something new.

This post is about that new project. I am starting working on another hobby project now and I’m hoping as time goes on, it can be more than a hobby project especially depending on how much traction it will get over time. I don’t want this to be a rushed project, I don’t want it to be a dance of git between two people, and I really don’t want it to be vaporware. So how do I prevent this from happening? Well, I’m hoping this won’t be a short-lived idea since it’s not something I want to just throw on the web and walk away. I have decided to take the development slowly. A couple of days after work during the week, maybe a few focused hours on the weekend. It won’t be a dance of git since I’m going to be the only developer on it for as long as possible. And it not being vaporware? Well…that’s going to depend a lot on how much effort I put into the project and actually make it useful for the community. 

So what is this project? Bookends is an a place to track your books and discover new ones. You might be thinking, “Goodreads already exists, why another one like it?” I love Goodreads, I use it often but it’s not what I want a book tracking, readers’ social network to be, I think it can be more than what it is right now. There are so many people out there who love books and I believe Bookends can be a place for them to belong and be part of a community. 

Anti-social network ideas & privacy

Most social networks thrive on the network effect and then turn around and use the same mechanism to betray or at least kindly coerce their users into paying them somehow, whether it’s clicking on ads or providing valuable gross data profiles that can be then sold to corporations, governmental agencies, and even potential employers read more about this. Sure, this might be a necessity for companies that are pushed by their investors and stakeholders to churn out huge profits but I believe people’s emotions and wellbeing should not be taken advantage of for the sake of making money. I don’t want to build a social network that takes user’s activity and turns it into revenue. I also don’t want to build a social network that acts like a layer of information for corporations to make more money. 

My goal with Bookends is to provide a safe and friendly community for book lovers to connect and share ideas. It’s not to collect every action you perform on the website and then turn it into a unit of revenue. 

For the privacy portion, it’s amazing what contemporary tech companies can collect about their users but they don’t always have to do that. I don’t want or need to collect user information that’s only used to build generic profiles to be sold to ad buyers. A user’s privacy means they will only share things with their circle of friends. 

People should connect over books and genres they love and that’s my hope with Bookends. 

What is a user?

User on Dictionary.com
A user is an odd term, in my opinion, it’s technically fine to call anyone using something a user but I believe it’s a bit too abstract or if you’d like to ignore the first definition and go with the second one, it becomes a bit more weird. But I think a user on Bookends is really a “reader”. You read books, you’re a reader. So you’ll see me refer to users on Bookends as readers.

Development status and what’s in it for me

The past few weeks, I’ve spent after-work hours working on the backend setup for Bookends. I’m grateful to have a team at work as each person is great at their own role making development easy but since I don’t have a team working on this with me, it’s a bunch of googling, reading, experimenting, and spinning in circles. I do feel like I’m learning more and more about each part of the product. From putting together the landing page and pointing it to the Bookends domain (www.bookends.app) which needed to be https to getting the vue.js app working properly, I’ve been making slow progress but I’m feeling like things are speeding up.

Why would I want to build a social network for book lovers? I love books, that is a big reason. Building a place for communities to thrive is important and meaningful to me. I want to grow as a developer and having something meaningful to work on will help me do that.

Currently, Bookends is live as a landing page but the past few evenings, I’ve spent putting together the initial user interface that will feature a search for looking up books. The alpha will launch as just a search for books. The beta will feature reader profiles and the ability to track books. As things move forward, I’ll look for a way to allow making upcoming features a publicly visible thing but for now, I don’t have a good way of doing that.

Who’s paying for it?

Most startups don’t worry about making money because they’re in a hurry to collect the most users possible and then somehow figure out how to make money, that has worked out for most of them, but some just can’t figure it out (see Tumblr, Luxe, Rdio, etc.). Accumulating the most active users in a month or being the largest network of any kind is useless if the users on the network are either addicted or not adding value. That’s not my aim with Bookends, if each reader using Bookends can comfortably use the product and get something out of it, that’s worth it to me. At this point you might be thinking: “but who’s paying for it!?” Initially, the first few months, I have no plans of growing exponentially as it’s a hobby project so I won’t worry about making money in any way. This is not to say I’m going out to raise money or do anything like that. I’m still working my day job so I can pay for rent and food 😂. What I am thinking is that in the long run, it would ideally be a community funded project, something that the community can help fund and grow but I’m not concerned about that right now, first let me find that community! 

Please follow along this journey and I would love feedback anything I’ve said in here and on the project itself. You can go checkout the project here:
https://bookends.app.

The City & The City

This is a weird one. This post is about not being able to finish this audiobook. I’ve been on a good streak with audiobooks in the past few months, finishing about 2-3 a month. But…I’m not sure what’s happening with this one.

So far, I’ve listened to a total of an hour of the book and I can’t seem to keep up with the story and maybe the narration doesn’t sit well with me, I just can’t keep going. I’m calling quits on this one. 

Before I started listening to this book, I had heard good things about it and China Miéville but maybe I should read the book instead of listening to it. 

For now, it’s going to back to the stack. 

Mid-May update

In the past 2-3 months, I’ve been writing way more code and relatively more blog posts than I had before starting this blog. This has been mainly due to my goal of being consistent about things that interest me.

I’m writing this post because I haven’t posted in about 10 days and I was getting anxious to write something. This post is kind of like an intermittent update because I have been busy lately but I think most of those things are not very interesting to post about.

Cycling: I’ve started riding my bike again, after about 11 months of inactivity! My bike was hanging on its hook for so long that it had collected dust on all the components! I had forgotten where my pump was and took me awhile to find it. Below are my stats from Strava for cycling:

Strava stats as of May 16th, 2018

I don’t want to be unrealistic but I do want to ride a couple of hundred miles if I stay consistent.

Books: after finishing The Three-Body Problem, I wanted to read/listen to something non-fiction and I started listening to A Fine Mess by T.R. Reid. It’s a book on taxes and I did enjoy it. I have a draft post about it but I’ll talk more about it in that. I’m also reading a fiction book called Mattimeo by Brian Jacques, it’s a children’s fantasy novel about anthropomorphic mice, second in the Redwall series. After my experience with Watership Down by Richard Adams, I’ve been feeling many different things, like the whole story is so magical and profound yet so dark and simple that it kind of hurts to think about how real it made me feel. 

Code: I’ve been trying to stay consistent about learning Node.js and using it to build something. Also, I’m practicing things like python and javascript when I have some down time, this has been mostly for fun. I’m itching to build something big but I don’t want to misperceive my little bits of new information as newfound confidence.

The Joy of Tidying (and finances): I didn’t really know what to call this part but one thing that’s been part of my everyday thinking has been the notion of “less is more” and also using a recently learned problem solving principle called Occam’s razor to clearly focus on things. I remember when I read The Life-Changing Magic of Tidying Up by Marie Kondo last year, it really opened up a new way of looking at my possessions. It started with just the things I had and how many of them I wasn’t using or wanting yet they all were in my house, taking my room and requiring my time. 
Once I simplified my clothing, books, and other possessions, I started to think of abstract noises and complexities like finances, digital presences, online shopping, and even apps on my phone. This has been a topic of research for me as most people in my generation are dealing with this in various ways, I want to find an approach that’s not Draconian and still lets me enjoy my time with these things and without them. More on this later! 

Apps I use to listen to audiobooks

I’ve posted about a couple of books I’ve recently finished by listening to them as audiobooks and I wanted to share how I go about doing this since buying audiobooks can be pricey (since you can’t find them used or cheaply on Amazon).

Last year, I subscribed to Audible, it was pretty good except when you want to listen to more than one book a month it was a bit inconvenient knowing that you’ve already paid for the month and used your 1 credit and now have to wait till the next month. I was hoping for more of a Netflix experience just because I’ve been spoiled by it.

So I found Libby which drastically changed how I listened to audiobooks. Libby lets you borrow ebooks and audiobooks from your local library with a few taps in the app! The best part about is automatic borrowing, this works like this: first you search for a book and if it’s not available to borrow (since the local library only has a limited number of digital copies), you put a hold on it, when the hold is ready to be borrowed, Libby will send you a notification/email informing you that the book has been checked out!

Libby is a great option for finding most books and if you’re like me where you’re often waiting for some books to be available to borrow, you can also check out Otto, it’s a $10 per month subscription and it does feel more like Netflix for audiobooks. On Otto, I find books I usually can’t find on Libby or books that aren’t available on Libby right away.

I have stopped using Audible as a primary audiobook platform since it’s very expensive compared to Libby and Otto. 

There’s one more way to listen to audiobooks that’s virtually free, Spotify. There are a bunch books that are mostly books with expired copyrights so English classics are pretty easy to find on here. Some Charles Dickens and even the whole Sherlock Holmes series are available on here but they’re a bit harder to bookmark and listen to since Spotify does everything by track so there’s no spot-keeping of any kind.

Libby: https://meet.libbyapp.com
Otto Radio: https://www.ottoradio.com

The Three-body Problem

A few months ago, a friend recommended The Three-body Problem by Liu Cixin (translated by Ken Liu from Chinese to English). I listened to it as an audiobook.

This book is a different kind of science fiction! It starts out with at the Cultural Revolution in China in the 1960s and then sets the beginning there and then it skips ahead to present day for most of the book. 

Without spoiling much, the book does have a good science fiction plot but I got a bit bored with the amount of science that was being explained and some was just too out there to keep up and it started to feel like a textbook than a sci-fi novel. 

I did like how real the book felt through the early chapters with the characters being very well developed and described, later on, the characters started to feel predictable. 

If you’re looking for a sci-fi book, definitely read/listen to this book! 

I’m probably not going to continue the series, but that’s my opinion. 

Hitchhiker’s Guide to the Galaxy – Review

When I first started listening to audiobooks, I tried a couple of different books whose name I don’t even remember and I never got past the first few chapters. Last year, there was something different, I tried listening to the Harry Potter series. All the audiobooks in the Harry Potter series are narrated by Stephen Fry, who also narrated the Hitchhiker’s Guide to the Galaxy

I went in with high expectations, the whole Harry Potter series, over 100+ hours of listening was so easy because of the writing and narration but I think I might’ve made a mistake of putting too much emphasis on Stephen Fry’s voice and not enough on the story itself.

The book is very short compared to most sci-fi books and it’s also pretty short as an audiobook. This meant not a lot of environment building, long stretches of conversations, things moved very quickly so I wasn’t used to that.

The science fiction didn’t connect for me, there were instances like how the characters from other planets were completely fine communicating with Arthur Dent and Ford Prefect even though they had never gone to Earth (except one). I think the comedy was a bit too out of my league and I didn’t get it.

I think it’s a good book and especially when it was written, it must’ve been a very good book but I think now it felt like some things were just not as expected for me. 

I recommend at least given the book a once over but it’s not one of my favorites. 

Watership Down, a fantastic novel

Hazel, Fiver, Bigwig, Nipkin, Dandelion, and so many others have filled my imagination for the past two weeks or so. I was listening to the audiobook version of Watership Down by Richard Adams, read by Ralph Cosham. It’s a fantasy book about a group of young rabbits leaving their warren all based on a feeling. They meet many friends and foes and along the way you learn about the habits of rabbits.

The novel is different than some novels I’ve read or listened to about animals being anthropomorphized. The most striking comparison I have are the Redwall books.  In the world of Redwall, the mice and other woodland creatures have many characteristics that are human or make them sound and act like “civilized” creatures. Not to say that living in a warren or burrow can mean you’re not a colony of civilized animals. In Redwall, there’s the concept of the main Abbey which is built by mice and all around the story of Redwall, countless creatures battle over control of Redwall using human tools like swords, bow and arrows, and even siege equipment.

In Watership Down, the rabbits and behave like rabbits. They use a language called Lapine, a language invented by Richard Adams himself to convey some words or phrases that the rabbits would use and humans just never thought about. Some of my favorites are silflay which means grass and the act of grazing, hrududu meaning a motorized vehicle, and Hazelrah which is a name and a title for the main character. “Rah” is a suffix meaning a prince or leader. It just rolls off the tongue so well! A lot of the language is based on the sound or changed into Lapine to sound more “rabbit-like” and for this I think Richard Adams did a great job. If you’d like to learn more about Lapine, this glossary page is a good one: http://watershipdown.wikia.com/wiki/Lapine_Glossary

I can’t summarize all the characters but the spiritual and out-of-this-world emotions that I felt from things Fiver said and experienced made me really love this book. The way he acted in the beginning to how his character developed into a savant from an obscure little brother made this book just so much better. Hazel’s character developed a lot but his character was predictably changing, I did not anticipate the changes and experiences that Fiver went through. Other characters were so good in their own ways like how Dandelion was such a good storyteller, Bigwig a brave and strong rabbit, and Pipkin who was a shy and honest rabbit. 

I am aware that the book didn’t do a great job of putting female characters in stronger roles but the book’s a retelling of bedtime stories, I don’t think it was meant to address inequality or to comment on the actual lives of rabbits past the aspects that are mentioned in the book.

The past few days, I’ve done some googling into the movie versus the book and how different they are and I’ve decided to not watch the movie because of how many changes will be in the movie and I would rather keep my imagination filled with Richard Adams’ narrative instead of a reinterpretation of it. 

Overall, I loved this book, I would highly recommend it!

Ready Player One, book vs movie

Ready Player one movie poster (left) and book cover (left)

Last week, right before the movie came out, I finished listening to the audiobook version of Ready Player One, narrated by Wil Wheaton. The narration is great, fun, and I felt like Wil Wheaton is Wade Watts! I would highly recommend listening to it if you're up for a sci-fi book, especially if you're a pop culture junkie. So many references, I couldn't keep track!

The movie is a good effort towards taking Ernest Cline's vision from the book and turning it into a movie. I was wondering how the movie was going to be made because of all the licensing and copyright issues with every single thing mentioned in the book. I'm sure it must've taken a lot of back and forth between many many different people but in the end, there was a good deal of pop culture references that it didn't feel like the movie missed out on much.

What the movie did miss, the plot, it was so different that it felt like the book was used as a environmental setting, introduction of characters, but…it completely missed some of the important pieces. Tye Sheridan plays Wade Watts in the movie and I have nothing against him but I think the casting should've gone with a more appropriate actor to play Wade. A husky, nerdy, and maybe awkward kid would've done a better representation of Wade from the book.

What follows might be spoilers if you haven't read the book or seen the movie but I feel like they're important to compare. The movie completely ignored the clues from the book and I think that's a great approach, I felt like it was new clues to solve. I did like the reinterpretation of the Grail diary from the book in which it was just some sort of a written database into an actual building the characters walk into and on top of that, it was also very well digitized and a couple of scenes that were shot in it were truly futuristic. 

Some of the scenes were very well shot and produced, action scenes were new and exciting as the production team had a lot of freedom to work with since the OASIS is a digital world in which they can do whatever seems appropriate. 

Overall, I think it's a fun movie to watch and the book is different enough that they should both be given attention. The movie's interpretation is different enough that I believe it's almost a separate enough endeavor to just share names but not much else. Go read (or listen to) the book and then watch the movie!