Google+

Grown ups

I haven’t posted anything to my Tumblr blog in 649 days, but in that time I’ve gained maybe 50 new followers, and they’re all strangers. I don’t think any of them are bots either. They found a link on my homepage and maybe they decided I would some day post something again. Sometimes, I click on their profile picture and check out their Tumblr blogs too. I open up web inspector and grab the URL of their avatar thumbnail, and then I change the _128 suffix to _512, because I knew that Tumblr offered avatar thumbnails with sizes in powers of 2, between 32 and 512. And then I remembered that a few years ago I built a tool to uncover Tumblr avatars and put it on RogerHub, and suddenly it feels kind of creepy checking out 512px thumbnails of strangers’ avatars, because most of them probably don’t know avatar thumbnails go up to that size.

It’s summer now, and it has been half a year since I wrote anything here on RogerHub, so I suppose I owe you an update about what’s new with me1. I feel more clumsy with words than I felt in high school, which was when I wrote new posts on this blog every week or so. It’s a side effect of sitting in a chair at work every day with my earbuds in my ears and having very little conversation with other actual people. Even when I talk during the workday, the talking is usually about computer stuff, which doesn’t help with normal talking that much. There was a time last Summer break when I felt like I had gotten really terrible at Scrabble, because all of the words that I thought of were computer words or acronyms that didn’t count as legal words. I might have told you about that already, sorry.

Working an internship has its pros and cons. The company really spoils its interns, and when I get home, I don’t have any homework. This opens up my schedule to cook more2 and also to go hang out with my friends. I don’t have to spend time in the nasty parts of Berkeley. I can read my Kindle a little bit more, and I can focus on my health.

On the other hand, I miss school and TA’ing for my class. I miss when all the projects were easy and understandable and written terribly. I miss using my own laptop and spending time on my personal data backup system and my text editor configuration3. I miss coming home to roommates that I actually talk to, and I miss living in walking distance of a lot of people.

Hm, so far, it seems like I’m just whining about missing a whole bunch of things. I suppose there are other cons to working an internship too.

I have to share my room with another person, but it’s not terrible. My roommate is cool, and I already sort of knew him from Berkeley. The internet speed sucks, and the connection is kind of unreliable. I don’t have space to set up all my tech, and I don’t feel that comfortable ordering stuff online here. The internship comes with its own kind of stress, because I want to do a good job and feel competent, but it’s not easy. I doze off sometimes, because I’m used to working for myself, not somebody else. It was always stuff for RogerHub or building out cool infrastructural stuff I wanted to have. Even when I was working on things for students and grading, it felt like working for myself. I have trouble seeing the big picture of what I’m contributing to.

I guess all these cons aren’t hard to fix. I can make new friends, and I can try to relax more at work. There isn’t much I can do about the internet speed, but I’ll just have to learn to live with that. Maybe I just need an actual vacation.

One thing I can’t stop thinking about is the possibility that right now, I’m just hanging on until the semester starts again. If that’s true, then in 1 year’s time, I’ll be in this same position again (minus some of the intern perks), but without that reassurance that in less than two months, everything will be back to the way it was. The start of the semester means people will come back together in Berkeley again. It’s not like doing fun student things was so much better than doing internship things. Objectively, there is a lot of crap that students have to do that isn’t fun at all. I have to sit through humanities classes that put me to sleep, and I have to do CS projects, even if I don’t feel like they’re interesting or educational. Once you’re an adult, you get to cut a lot of the bullshit that kids have to deal with, because you always get a choice, and nobody can make you sit through something so boring that it puts you to sleep4. Also, it isn’t like I see my friends every day, or even every week, when I’m at school. There’s some people I haven’t seen all semester long, so why is not-seeing-them at school better than not-seeing-them in this corporate-provided San Francisco apartment?

I’m kind of disappointed at the percentage of adults that seem to be excited for the next day, every night, compared to the percentage of my school friends do. Why is it so hard to keep friends and not be sad when you’re an adult? I wish I had my calendar and to-do list back by my side, and I wish I actually had stuff to put on them. Sorry to end with something sad, but being an adult sounds like it totally sucks.

  1. It’s not like you can find out via Facebook or anything. ↩︎
  2. I have been making breakfast almost every morning for the last five weeks, and on the weekends, I make all three meals for myself. There’s a Safeway across the street. ↩︎
  3. I can do this at work actually. ↩︎
  4. Ok, I guess your boss can threaten to fire you, but you have a choice to get a new job. ↩︎

Notes and reminders

This is Notes.app, which I use to save rich text and organize ideas. I like it because it’s not a website, it’s a native OS X app. And because it opens in a small window that fits on the side of the screen, I feel creative and comfortable writing notes here.

Notes.app on my desktop.

But it doesn’t sync with my Android phone. It only syncs with an iCloud account, and I don’t use iCloud for anything except iTunes purchases and this. It’s also a little buggy with too much rich text.

I use vim for all my text editing1, and I wanted to use vim for notes too. But it didn’t work out. Rich text lets me put in checkmarks like ✔︎, and I can start bulleted list with wiki-style syntax. There’s a font color palette, and you can paste images and headings into it directly from Safari. I have a ton of places to write stuff, but this one is my favorite.

I also tried Google Keep, but the mobile app is so clunky and there’s no native app. The web interface is awkward too. I don’t like sticky notes. They feel like a lazy way to make reminders.

There’s also a Tasks system that is integrated with Gmail and Google Calendar. I’ve been using that one for a long time, but there is no mobile app. I purchased a third-party mobile app for Tasks2, and I’ve been using that for a long time too. But there’s no native OS X app. The next best thing is a full page web interface for Tasks, which isn’t too bad.

I guess I’ll never be able to see my notes on my phone, or edit my todo list with a native OS X app. It’s the end of the semester anyway, so my todo list is getting shorter and shorter.

  1. I wrote an essay in vim. It has spell check and text wrapping. Pretty good! ↩︎
  2. It’s called Tasks (surprise). ↩︎

Sticky note

Sticky note on my apartment window

1

  1. I put this sticky note on my window on the first week of school. I needed pictures of something where the foreground was close by, but the background was far away. It was for the project I was composing for the new semester, and I took pictures of this note on my window for the input images. ↩︎

Catching up on this year

Welcome back reader! I’ve been gone for more than a year, and a lot of things have changed. I haven’t stopped blogging. I was just scared off of this blog, because of all the visitors spilling over from my calculator page. So, I made four or five other blogs so I could write without wondering how many strangers were going to read the posts I wrote.

Here are some things that have happened to me since September 2013, to get you up to speed: I got an offer last December to be a TA for a class at my university, which meant a 20-hour commitment and lots of cool perks. I was in San Diego visiting a friend when I got the offer (it was past midnight during winter break). I was almost going to reply immediately and turn down the offer, because even though I had really wanted to be a TA before1, it sounded like way too much work on top of everything I already had scheduled for the Spring semester. Besides, I had already agreed to be a reader (less work, less cred) for another class. My friend convinced me to sleep on it instead, and the next morning, I woke up and told the professor I was interested, but already committed to the reader position. Things kind of settled into place after that, and I became a little sophomore TA.

Before my first discussion section, I was really nervous. I made a slideshow and everything to introduce myself and try to give a couple of tips for succeeding in the course. When I took the class, I went to every single lecture and made sure I stayed on top of the material. I never went to discussion though... My discussions were always pretty small. I think that was because I was inexperienced and also that my sections were at really inconvenient times. As for the few people that showed up every week, I got to know them pretty well. I did a lot of work on the 3rd project, which was fun because I got to support that assignment from start to end. I took the pedagogy course that new TA’s all take. They talk about some of the research about teaching and learning and all of the techniques that come out of those. Once I heard about some of those techniques, I started noticing them from my own professors and TA’s. I could also spot when a TA was making mistakes and breaking all the rules, and it really did make a difference.

I got sick a bunch of times, but I don’t remember all of those. I went through two birthdays, so I’m 20 years old now, which is kind of cool. Some time in October, I was going through my four year plan and I noticed I’d taken enough requirements and had enough units to graduate pretty easily in just 3 more semesters. I had 5 more upper division CS classes to take and 2 more humanities courses and 1 more requirement for my major. So, I decided I was going to plan to graduate in 3 years. I thought that I might change my mind as my last semester approached, but I did change my graduation year from 2016 to 2015 on my resume to make it somewhat official. I thought I was going to graduate early for a long time. I talked to my parents about it, and I told my friends about it. But I cancelled this a couple weeks ago, so I’m back to 2016.

I took a few unmemorable classes that semester. I got to know some of my friends better, since they were taking the class I was TA’ing for. I convinced some of them to attend my section sometimes, and we’d just have fun and I’d bring food on occasion.

I spent a bunch of time doing interviews for a summer internship last year. Job hunting took a long time, and I didn’t find an internship until kind of late in the year. I ended up getting offers from three companies, which is frustrating, because up until that first offer, it seemed like nobody was really interested in hiring me, and then suddenly three of them come in a week. I went to intern at Quizlet for the summer. All three really would have been pretty solid choices, so I sent these long apology emails to the other two places letting them know that I thought they were awesome too, but sorry! During the summer, I read a this big long book about a slum on the outskirts of Mumbai. The book was called Behind the Beautiful Forevers2, and I thought it was really ironic being in one of the richest cities in the world with all of these rich tech industry folks. I know that not everyone had a lot of money, but everyone sure acted like it.. and ate like it. I also thought a lot about those Japanese teenagers who left home to go to university in Tokyo and after that, worked hard to make their fare in a big place. I found a sublet on the west side of Berkeley, which I thought would be convenient because it was near the subway station. Turned out that the 45-minute commute every day was really tiring. The apartment I lived in was kind of old and smelly and in a poorer part of Berkeley. I didn’t really get along with my roommate, who lived a completely different lifestyle than I did. At work, I learned a lot about real infrastructure stuff. I picked up a bunch of lingo and got better at evaluating software and infrastructure.

This semester I’m a TA again. I think I’ve gotten better at it the second time around. I signed up for a business class about negotiations, to fulfill my first of 2 humanities courses. I didn’t get in, even though I was #2 on the waiting list since the start of telebears. But to be honest, I’m sort of relieved that I only have my 3 technical courses this semester, because they are more than enough workload for me. A bunch of my friends are also TA’s, which is cool, since we can talk about TA things.

I’m taking the operating systems class this semester, which is super cool, because we do our projects in 4-person groups, and working with my group is lots of fun. I’m also taking artificial intelligence, which I thought I would hate. But I actually think we cover a lot of cool material in that class, and I wish I had more time to really understand it. Finally, I’m taking computer networking, which is alright.

I bought a MacBook Air over the summer for myself. I also bought a big giant lens for my DSLR. It’s alright. I bought a 49-key USB piano keyboard, which I play sometimes with GarageBand. I bought a subscription to Adobe Creative Cloud for Photographers, which comes with Photoshop and Lightroom. I used Photoshop a ton for developing project 1 this semester. I also started using Lightroom to post-process all of my pictures. My MacBook is able to handle realtime editing and image exporting just fine. I didn’t skimp on the CPU and memory upgrades.

Things are alright right now. I looked at some of the things I wrote here in high school, and they sound really kind of dumb and don’t sound like how I would say them in real life. I think it’s endearing how blog authors adore their readers and refer to them. I still follow a lot of people’s blogs on my RSS reader. I don’t think they know!

Here’s me from a few weeks ago3, before I got my haircut:

Picture of Roger holding his DSLR.

I might not write again for a long time. But talk to you again soon!

  1. At Berkeley, I feel like becoming a TA is one HUGE thing you probably want to do at least once before you graduate in CS. A large percent of CS students become TA’s at some point in college, and it’s really prestigious, and they waive your tuition. ↩︎
  2. And then a few weeks later, the vlogbrothers decide they’re going to have everybody read it >.> ↩︎
  3. Check the EXIF on the full size! ↩︎

Miscellaneous things

Last friday, there was an outdoor concert on campus and I went with some of the people I lived with in the dorms last year. I hadn’t heard of either of the bands performing, but that didn’t worry me. I try not to be stingy with my time, and I feel uncomfortable when other people are with theirs. It’s not like I am doing something important with every minute of my waking day anyway. Also, I don’t put a price on anything that concerns my mental well-being. I am not on the edge of going insane; that is not what I mean. I just mean that some things are more important and should not be valued the same way you value unimportant things. It just so happens that at the moment, I can’t think of very many unimportant things to exemplify, or else I would have listed them instead of just saying “unimportant things”. The first unimportant thing I thought of was hardware for a decent laptop, because my laptop is sitting right in front of me. But then I remembered that having a highly-functional laptop is critical to my usual workflow and by extension, my mental wellbeing. The next thing I thought of was ice cream. There is an ice cream shop right down the street from the apartment complex where I live. I personally think that they are overpriced for what they produce, especially since their competitor sells scoops of ice cream for one dollar on the other side of town. If ice cream is essential to your mental health as a laptop is to mine, then perhaps you should not skimp on your ice cream budget. As for me, I think I would be happier to know that my ice cream had only cost me one dollar.

Anyway, I decided that this outdoor concert was something that concerned my mental health and was worth the time, however little I thought my time was worth. The concert was free, after all. I did not like the music the bands played, although that is probably my fault. I like music with great lyrical density, sensual vocals, and tangible instrumentation. The electronic music at the concert was not this. What I mean by tangible instrumentation is that I prefer music where all of the instruments are identifiable, and in some cases, reproducible with nothing more than a trained ear. Some kinds of modern music use computers to distort and mix these identifiable sounds into exciting new tones that have never before been heard. Others try to accentuate and clarify sounds in order to make them more identifiable. I have no problem with the latter, even if entire guitar tracks can today be completely synthesized from recorded samples. So long as the deception is convincing, I am not concerned. To me, this kind of music is the best evidence of humanity we can get on demand today. On the other hand, there is car music, which I listen to exclusively in the car where there are usually other people as well. Car music is what the popular young people radio stations play. It is a good thing that radio stations love playing car music, or else we would need to find another place to get it.

Many people at the concert were not paying attention to the music. They were sitting toward the back underneath the trees where they could talk or smoke, safely hidden from the sight of the one police officer who, that night, had the misfortune of being assigned to our concert. There are few things worse than not being able to sit down at an outside concert where everyone else is sitting down and enjoying the ambiance. Berkeley has a lot of night light so the sky is not very dark, but the concert glade had an excellent unrestricted view of the sky above. I laid down on the grass as well. With my friend’s phone, I identified the summer triangle--Deneb, Altair, and Vega--three bright stars that make a triangle. I am not familiar with celestial names and places. I always thought it was more worthwhile to spend time understanding celestial concepts rather than the names that Englishmen gave to those objects of brightest apparent magnitude as viewed from our planet Earth. The latter is a much cooler thing to know though. I only know of those three stars because they played an interesting part in a TV show I saw almost 6 years ago. I felt an moment of unexplainable sadness about seeing the actuality of those summer stars after learning about them so long ago.

Three of my favorite fields of study are computer science, astronomy, and biology. I always thought this was interesting (the fact, not the subjects) because they deal with everything we use, everything we see, and everything we are respectively. These actual fields may not be so broadly defined, but if you stretch your imagination a little, it sounds almost right. Learning about these fields of study helped to shape my philosophy and world view as I grew up. Astronomy was the earliest influencer of these three. You will find that nearly everyone who enjoys casual astronomy has a detached and laid-back approach to things that might seem very important.

I want to share with you two interesting things about astronomy that I think are more important than they’re given credit for. The first is the solar plane. In diagrams and illustrations, our planets are always drawn with their concentric orbits in a disk, like the ridges on a frisbee. On the other hand, we know that space is three-dimensional. The fact that all of the planets orbit in a roughly disk-shaped region must seem quite unusual1! Most people assume this just had to be the case, which is actually true for a lot of situations, but the reasons aren’t so obvious as it would seem. The second thing is that, while we know a lot of things about our solar system and our interstellar neighbors, we don’t know so much about the space in between. Past the orbit of Pluto lies a rough sphere of interesting random things that deserve some more attention. These include the Kuiper belt, another disk-shaped region past the orbit of Pluto, and the Oort Cloud, which encompasses all objects on which the Sun influences gravitationally. There are countless orbiting rocks, comets, clouds of hydrogen, and other unknown things all in this region. There are also several imaginary boundaries separating our solar system from interstellar space that define the regions where solar wind and interstellar forces are balanced out and things like that2.

In high school biology, I learned that almost all of the visible parts of a person are just made up of layers of keratin. I learned a few other things, but the keratin thing was the most intriguing. In the back of their minds, everyone is somewhat aware that people are just made of their constituent fluids and tissues and that somehow the orchestration of all those parts make interesting functional beings. However, there are some people who just seem so different from regular people that you’d refuse to believe all their visible parts were made up of the same proteins all of our visible parts are. It seems like a fantastic mission. Proving yourself to be more than keratin, that is. Talking to them, it almost makes you forget all the things you know about ancient geology and human anatomy, because all of these sciences seem so unbelievable in their light.

I could recount for you all of the cosmic miracles that made Earth into the fertile life-bearing oasis it is today. Astronomy and biology sort of overlap in that regard. It sounds kind of silly, but after so many years under the oppression of contextualizing science, I just want to forget that any of it was ever true. It gets more and more difficult to separate the irrelevant from the immediate when your brain keeps reminding you of the way things came to be. Of stars and humans, which is the irrelevant? That is hard to say. I enjoy deception oh so much; sometimes I just like to look at the pretty stars and forget about them both.

  1. In fact, there is a very good reason why this is usually the case, but it’s also true that our solar plane is tilted by around 63 degrees when compared to the galactic plane. Source. ↩︎
  2. This iconic picture comes to mind. ↩︎

Dead man's switch

A few years ago, I started toying with the idea of leaving behind contingency letters in case I died an early and unexpected death. I usually like being fairly well-prepared for all kinds of data disasters, financial disasters, and natural disasters, so death seemed like a sensible thing to prepare for too. It sounded kind of shocking and morbid at the time, and I didn’t want anybody worrying I was some depressed teenager, so I didn’t tell anybody about it1. These things usually work better when nobody knows anyway. I got the idea from this animated TV show where a scientist leaves behind computer programs that activate automatically when he dies, so that he can get messages across to people and manipulate events from beyond the grave. If anybody ever tried that in real life, I doubt it would work as successfully. First of all, posthumous programs usually do drastic irreversible things, and you can’t test them like you can test innocuous programs. And even after you’ve tested component by component, there is no guarantee that the entire system will execute flawlessly when the time comes. You won’t be around to correct any program bugs, after all. I imagine that NASA felt the same way launching probes into space that would take 10 or 20 years to reach their destinations.

Writing those programs got me interested in cryptography2 and network security. Ironically, the consensus among security programmers is to never write cryptography code yourself, but to know how to identify when somebody else does it poorly. My death programs went through several revisions over the years. A while after I started working on this, I came upon the Wikipedia page for the Dead Man’s Switch3. It turns out that tons of people had the same basic idea as I did (figures), and that there were already plenty of practical uses devised. For example, dead man’s switches can be used in trucks to automatically apply the brakes when the driver falls unconscious. Julian Assange, Lisbeth Salander, and a host of other real/fictional characters have used dead man’s switches to ensure that certain things happen in case they die. There are even services online where you can sign up to have your bank details, social networking accounts, and secret hiding places passed on to somebody in case you die. They might not all be targeting teenagers, but they were certainly proof that people think about doing this all the time.

Preparing for an early demise makes you really think hard about the people and things that matter to you. I kind of foresaw that happening when I first came up with the idea, but I didn’t really feel the full effect until I got down to preparing the material. When you first start compiling names, you realize that you’ll probably have to include your parents, maybe your employers, and also people to whom you’ve left so many things unsaid. Before you start writing, you’ll need to get in the mood. I think you can reasonably expect the recipients of your posthumous emails to be somewhat sad or shocked. It would not be a good opportunity to tell a joke or speak lightheartedly, which is how I usually feel while writing these letters because the whole idea is kind of outlandish. I’m not a political activist or an important corporate person, and all the cryptography involved seems silly in comparison to how little I have to hide. Most teenagers don’t even think about the possibility of dying early. It’s also really hard to write appropriately for that kind of recipient unless you’re in a sad mood yourself. On the other side, preparing content for posthumous release can be just the catharsis you need when you’re feeling frustrated or depressed. Nothing compares to writing letters with such utter detachment to life. It puts your daily concerns and stress into perspective, as death usually does. Don’t keep thinking that way though. It will drive you crazy eventually.

Since then, I’ve stopped preparing these letters and shut down the systems that siloed them, so if I do die early, this post is probably all you’ll ever get. I think that letters (emails, really) are too impersonal and not an acceptable solution to the original problem. Instead, people should strive to live in a way that already expresses everything you could ever write in such a letter. It’s true that there’s no place like a posthumous letter to say things you’ve always wanted to say. But I think it’s a bit unfair to keep words bottled up until the recipient has no way of responding back.

  1. I really wasn’t. There was nothing wrong with me. I just liked being prepared. ↩︎
  2. Yeah right. I was hooked way before that. ↩︎
  3. It was during one of those nights that I spent researching Russian radio signals and whale noises. ↩︎

Gender roles

I hate talking about gender roles. I won’t even listen to other people talk about gender roles. Within the realm of all progressive fronts of social change, cultural movements regarding gender are the most immediate. The history of nontraditional women is frustratingly short and our cultural education is exceedingly androcentric. I think it’s already a small miracle that young people today don’t think like clones of their parents. Whereas we can comfortably throw around ideas about poverty and human rights from a distance, ideas about gender roles apply universally. And above all, I feel that nobody has yet produced the right answer to the question of gender roles so far. I’ll show you what I mean.

A lot of people like to throw around condescending rhetorical questions that go something like: why do you you think (foo) can’t (bar) just because s/he’s is a man/woman? In the heat of the moment, pointing out someone else’s gender insensitivity makes you feel like some kind of prejudice-fighting social hero. However, antagonistic attacks like these are ad hominem and require just about as much thought as a fart. Most discussions about gender roles have become so predictable and droll. “She can do whatever she wants.” or “That sounds like a double standard.” All that’s left are thoughtless questions and fart-like answers, one in reply to the other. The same thing usually happens to any social movement that becomes stylish and mainstream, not that I’m complaining.

The image that comes to my mind is a camaraderie of rich wives sitting together in their grand English-style sunlit home talking about the importance of racial equality over some hot tea. Oh wait, I shouldn’t say that. It would imply that English folks are all rich, which is racist, and that men can’t be domestic and drink tea, which is sexist. On the other hand, we applaud shows like Adventure Time that boldly present a independent, strong, female scientist in a position of political power.

The truth is, everybody says mildly sexist things occasionally. It is hard to avoid doing so when our culture and upbringing were designed that way. “Your new knowledge is in conflict with your old assumptions,” goes one webcomic that I follow1. At school and online, people publish articles about gender all the time, and unless they are right on point and conservative about their breadth, people usually hate it. Any one exclusion or oversight might bring out the loudest and most ignorant bunch who point out mentions of rape that ignore male victims or the symmetry of culturally-distorted body image. There are a dozen things that might get you into trouble with the gender police, and each one makes it more discouraging to write anything regarding gender. The problem is that we blame writers for their shitty gender ideas, rather than the culture that teaches them. That’s like yelling at a 19th century guy for being racially insensitive. People should be rewarded for attempting to change their cultural preconceptions, not scolded for getting stuck.

People occasionally have good conversations about gender too, but until we agree to stop using gender roles to feel morally superior, the loudest few will continue to ruin the conversation for everyone else.

  1. See Socially Constructed. The comic is published daily by a Japanese-American dude and regularly features themes of ethics and gender roles. ↩︎

What Google+ thinks about photos

Last year, I took some of the money I made from running this website and bought myself a dslr camera off of Amazon. It was the most money I had ever spent on anything for myself1. I couldn’t really say why I decided to buy a camera out of the blue, but I think I have a better grasp on the reasons now. First of all, I’ve always been sort of interested in photography and optics. I just liked taking pictures of stuff, even if it was with my pinhole cell phone camera or the webcam on my laptop. I knew a lot more about optical physics and lenses than most kids my age too. In college, I posted a lot of photos of architecture at Berkeley and things I saw at department stores on my status update blog. And before that, I posted cell phone pictures of my day-to-day experiences right here on RogerHub.

I was born with hyperopia, or far-sightedness as it’s known colloquially. In first grade, I got my first pair of glasses. Glasses didn’t make anything much clearer, but I wore them all the same. With those glasses, I felt like I was looking at a computer screen watching somebody else live their life, and I could control their actions without any fear of embarrassment or harm to myself. This was hardly a surprise, given how long I used to spend in front of the computer every afternoon.

The hyperopia gradually turned to myopia, and then my eyes were just like everybody else’s. Every hour I sat in front of a screen on the Internet or reading a book, I thought I was draining away the small amount of visual clarity I had left in my eyes. Some days, I wanted more than anything else to wake up and see clearly once again. The guilt occasionally turned to depression, but that never stopped me from sitting on the computer all day. I’m still unsure whether ruining my vision was worth the precocious programming experience I got in return, but I probably would have done the same thing if I could do it all over again.

During my first year in college, there was this guy who sat in the very first row of one of my lectures every day. You could tell his vision was shit from the heft of his glasses and the way he’d zoom in on the lecture slides on his mac book2. Once in a while, I’d look over at his usual seat and check out what he was doing. Among his usual activities were TA’ing for a introductory freshman computer science course, scrolling through the articles on his Google Reader, and shopping for nice cameras. At the time, I thought it was so lamentably ironic how a guy with that kind of vision could be so interested in taking pictures. But to a lesser degree, I was the same way. The surrogate eye of a digital optical sensor provided all of the exciting clarity that our own eyes could not.

Another part of me honestly just wanted to sink some cash. I was bored. In college, housing and entertainment (e.g. reading and learning) were already provided for. I didn’t have much time to buy expensive clothes, and I already bought every laptop upgrade I had ever wanted. Making money is a lot more rewarding when you’ve got something to save for. My camera became that thing.

So, I got my camera, and I was immediately disappointed. Photography is an expensive hobby, and it seemed like expensive was the only kind of hobby I was making recently. I took a look at other people’s photos on 500px and flickr, and noticed that they were all using bigger cameras with bigger, full-frame sensors and expensive, long lenses with gaping wide apertures. Beside that, it seemed like you’d need a remote trigger, a tripod, an enormous flash unit, an external backup hard drive, darkroom software, and a dozen other accessories to even get started. I didn’t even own a bag. Moreover, I didn’t live next to a Canadian lake or in a cabin on some foggy mountain range. I certainly didn’t have adorable toddlers or pets either. All I had to take pictures of were my floormates and the people walking by underneath my fourth-floor window. I thought I just needed to buy more stuff.

Google+ introduced a revamp of their photos service just a few months ago. Included in the update was a new auto-enhancement feature that they dubbed “your darkroom in a datacenter”. I was skeptical of the service at first. Image enhancement usually involves trying to grab more detail from an artifact-ridden jpeg and applying ostentatious colors/vignetting all around. As it turns out, this particular update was more philosophy than software.

By the time the new G+ photo features were released, I already had some experience post-processing raw sensor data in darkroom software. If you’re not familiar with the process, post-processing refers to intentional manipulation of the data that is recorded directly by the image sensor in order to fix exposure and white balance or get a particular effect in your pictures. Processing raw data is usually more flexible than manipulating an image in photoshop because camera sensors usually store 24 or even 48 bits of data per color channel per pixel in a captured image, compared to jpeg’s 8 bits. Recording the raw sensor data gives you a lot more room to mess up, because you can still recover a lot of data from a bad shot later in post-processing.

I took a look at Google’s post processing techniques by uploading a few pictures I took and had already processed myself. The results were surprisingly good. I’m convinced that Google designed their processing software with a fundamentally different philosophy than many people, including myself, held about the way a photo should look. G+ applies a few easily distinguishable modifications to just about any photo you throw at it. Google tries to:

  • Recover detail from overexposed (all white) and underexposed (all black) patches
  • Burn the edges of the photo, especially the parts that are out of focus
  • Add roughness and relief to detailed surfaces like skin, carpet, and wood
  • Brighten faces where it can find them
  • Reduce the amount of darkness in blacks and lightness in whites

In particular, the algorithm never messes with the white balance or creates any unrealistic washed-out or excessively vibrant colors. Their primary goal seems to be to recover as much detail and clarity as possible, which sounds like a fairly standard thing to do. However, this isn’t always the case, especially with the artistic photos that people usually admire.

Google+ photos doesn’t care about artistic effects3 or faithful reproductions. Its algorithms are more concerned about providing the most amount of information per unit area of the photo, taking into account the differential brightness and contrasts of different desktop, tablet, and smartphone screens. The goal is to make it easy to recognize and remember the people in your pictures, even if it means changing the look of the environment around them.

I think this is an excellent philosophy and reveals an important fact to keep in mind: normal people, like you and me, who aren’t professional photographers, should focus on taking pictures of people, not food or sunsets or things. In the long run, portraits are the photos you enjoy and value the most. Silly practices like shooting in RAW on a vacation or day trip just get in the way of this goal4. The tools on G+ may not give you the flexibility or recovery power to do all the artistic photographic effects you want to do, but they do an okay job of automatic processing and save you a bunch of time that you could be spending taking more pictures. So stop shying away when I point my camera at your face. Those pictures are not for you. They’re for your kids, once you get around to that.

  1. The rest of the pricey stuff didn’t really count--housing, my tuition, etc. ↩︎
  2. I could make out the text from a few rows back. ↩︎
  3. Think about all of the filters on instagram that flatten the dynamic range or intentionally makes them grainy. ↩︎
  4. My camera is set to basic quality and small image resolution, which spits out pictures that are usually around only 1 megabyte, versus the 25 megabyte size of its RAW files. Small size makes the photos easier to move around and upload, which is all I ever do with them now anyway. ↩︎

Guess who's back

Whew. It’s actually been a long time since I wrote anything on this blog. The last two posts I published were actually from other places, and I just posted them here because I thought they would fit. There are a couple of reasons why I haven’t written anything on RogerHub for a while:

  • Ever since my site started tons of traffic, I’ve been more careful about what I publish on my home page, which receives around 5% of that traffic as collateral damage.
  • Who knew that college actually keeps you busy?
  • I’ve created my new programming blog, and it’s so much easier to write about computer things.

Once in a while, I look back on the history of posts on this blog. It started with really terrible software reviews, and then I started writing about the less-personal aspects of my life with a lot of pictures, mostly from my old cell phone. More recently, the post titles have gotten longer and the topics have gotten more esoteric1. I even added professional-looking footnotes.

I think it’s kind of sad that this long-lived blog should be so unceremoniously halted just because I’m too busy to write or because I’m afraid of strangers stumbling here and judging all the trash I write here. I read a ton of blogs myself. A lot of them are hacker blogs where people talk about exploits they’ve found or cool stuff they’ve hacked together. There was this one guy who blogged about editing Wikipedia and his iPhone. And finally, there’s GRRM’s livejournal, where he blogs about his books and whatever’s in his mind. I kind of like that idea.

So, I’ve made a lot of calculator-related improvements to this site in the past few months. This site is a fun side-project for whatever free time I get. Most prominently, I simplified the header to the bare essentials and made the site more friendly to mobile devices2. I also merged my profile page with the front page and plastered a giant picture of my face near the top—more about this later. Overall, it gives a profile/portfolio feel to the front page of the site, and it lets me hide my blog posts under a few layers of links.

I’m now that the actual blog parts of this website have fallen to dead last on my page rankings now, which is great! So, I think I’ll start writing again here, but it won’t be those dense philosophy articles littered with synonyms that I’ve been publishing lately3. See you again soon.

  1. I began writing my posts in HTML rather than with the visual editor. ↩︎
  2. Stop saying mobile-friendly. Blegh. ↩︎
  3. Those take way long to write, for their length. ↩︎

Online advertising and why adblock is not the solution

There has been some pretty shocking stuff happening in the realm of online advertising recently. By recently, I mean anywhere from just this week to a year and a half ago. Let’s revisit some of them:

A brief recap of this year in advertising

We saw the introduction of the Do Not Track HTTP Header, which at the time of writing hasn’t yet moved from its initial draft state. The draft proposes a new header, sent with every request, that would enable a user to opt-out of all Internet tracking. If adopted, it would greatly hinder the effectiveness of targeted ads. Not long after the draft was announced, Microsoft announced that Internet Explorer 10 would send the DNT header by default as part of their privacy-oriented image. This led to a two week ad-tracking arms race between IE 10 and various websites and website software, most notably apache’s web server, who chose to specifically ignore the header when it came from from IE 10 clients. The draft was soon revised to make this behavior nonconforming.

In an effort to encourage responsible advertising, Adblock Plus 2.0 introduced the Acceptable Ads system that allowed certain non-obtrusive advertising through its filter. The list started with a motion to whitelist ads on reddit. A minority of users are concerned about commercial influence within the project.

Then, Mozilla announced that Firefox 22+ would block third-party cookies by default, another strike against advertisers. More specifically, the ban applies to domains that haven’t already established cookies (instead of a ban blocking all third-party cookies). The cookie ban would cripple many ad-targeting techniques that rely on third-party tracking of user behavior.

Finally, it was revealed just last week that Google allegedly sponsors Adblock Plus’s acceptable ads program in order to get some of their own text ads whitelisted, raising concern about market monopolization.

The controversy

Advertising has always been a controversial part of the Internet. Modern internet architects are mostly science and engineering geeks and harbor a innate predisposition against commercial uses for the world wide web, in very much the same way the astronomers of the 1960’s were disgusted by the thought of a militarized space program.

The reverse is also true: corporate executives and run-of-the-mill internet users today have no idea how much insane power their server administrators hold. Essentially, a lot of miscommunication happens between those who have the power to make decisions and those who have the power to carry them out.

A quick note about adblock and ads

I will use the term adblock in the rest of this post to refer to any one of the several advertisement-blocking browser plugins available. I will use ads and advertising to refer to graphical and text ads (banner ads, skyscrapers, rectangles) as well as video ads, and by extension, certain kinds of advertising on physical media.


Adblock illustrates the tragedy of the commons. Most people are aware that if everybody used adblock, parts of the internet would die off from lack of funding. Nonetheless, many people block ads anyway. The option is tempting, and a single extra user with adblock will likely not make a difference.

I’d like a chance to convince you not to use adblock.

I won’t make any pleas about content publishers deserving money or anything, because those are honestly not good arguments. I want to tell you about a few reasons why ads are not all bad and why you might not want to block ads.

1. Ads pay for the Internet

Everybody loves free online websites, but if Google didn’t make hundreds of billions a year in online advertising revenue, it would have no way to run its services, pay its employees, and support all of its public projects. Sure, you might agree to a $10/month fee to help out some of your favorite sites, but there are a few reasons why this wouldn’t work long-run:

Zero-cost websites provide a ton of social, business, and infrastructural tools that a majority of the population in developed nations have learned to use. Free internet services like those provided by Google are responsible for an enormous part of our country’s productivity and GDP (as well as those of other countries, both developed and undeveloped), and it is because they are free.

The free-to-use nature of these services encourages adoption, which is far more important than immediate profit because suddenly, your average workforce employee knows how to use corporate-grade calendar, email, and spreadsheet software and depend on them as basic communication and organizational tools. These tools not only augment their own human capital, but also created the demand for internet access that fueled the construction of the global internet infrastructure we have today.

Simply put, advertisements are where the internet draws the money to sustain itself and perpetuate this whole cycle of economic development. And because this free-with-ads online publishing model has proven itself to work so well, we now have free photo-sharing sites, news sites that publish exclusively online, and free blogging platforms. Every time you block ads, these are the guys you’re hurting.

You aren’t, of course, obligated to look at ads in order to support these websites, but it’s a small price to pay for all the free stuff you get in return. If you value a free service, you should not block their ads. If you want to support a content publisher, whether it’s a YouTube vlogger or the admins of your regular news aggregator, you should not block ads.

2. Servers aren’t cheap

One thing people usually cite when asked about why they support adblock is the greediness of publishers and advertisers. Most people don’t understand why websites, which are virtual and intangible, cost so much to run in comparison to tangible goods. A large part of this misconception is due to the relative inexpensiveness of commodity consumer hardware.

The hardware that powers your $600 Costco desktop computer is not the same stuff that runs in most datacenters. You might have an exorbitant 16 gigabytes of RAM and a terabyte of disk space, but these devices are consumer-grade devices and would, in most cases, be inappropriate for a server (not counting those who believe in cheap commodity hardware servers). Server hardware often contains extra features to improve their reliability and longevity that aren’t present in consumer hardware. These include error correcting codes that can automatically fix memory corruption, redundant file systems that require several independent hard disks, and specialized CPUs with support for multi-CPU configurations and 24/7 continuous usage.

A server with numerically equal capacity as your home desktop might cost $600 a month to operate, including the massive network infrastructure, housing, HVAC, redundant power, and maintenance staff. Your household computer, on the other hand, doesn’t have to run continuously day-and-night, and it isn’t important if a few bits of memory get flipped accidentally or if it breaks down after two years.

Some websites that provide online services are big enough that they have to rent out enterprise-class equipment, but not large or important enough that they can start billing their customers. These guys who get stuck in the middle often have no other choice but to sell ad space to pay the bills. Websites aren’t exactly cash cows either. In fact, most big websites spend their first couple years in the red1.

3. Some advertisements are actually useful

If you can honestly say that online advertising has never ever contributed any value to your life, then:

  1. You probably don’t buy things on the Internet, and
  2. You’re probably not worth very much to advertisers anyway.

That’s totally fine, but you should understand that a majority of internet users do buy things regularly, whether it’s online at Amazon.com or in person at Safeway. Advertisers run ads for them, not for you.

Ads themselves do a few different things in a few different ways. Some ads are political in nature, but the vast majority are commercial advertisements designed to get you to buy or donate. Ads cost a lot of money, so they need to earn money in return. That’s just how it works. There are a few ways that advertisers go about this:

  • Some ads try to promote brand awareness. Companies sponsor these ads to convince you to choose them over their competition—imagine an advertisement for Coke.
  • Some ads announce reasons why you should buy something immediately (seasonal sales, special offers, advantages, testimony, etc.).

These are generic ads that usually don’t provide much value to the consumer (that’s you), but make up the majority of ads shown anyway. This is usually because they apply equally well to everybody2. You may have also seen:

  • Ads for online education websites or study tools placed on Sparknotes, or
  • Ads for public cloud solutions or VPS services placed on a blog for system administrators, or
  • Ads for sword replicas or a fantasy RPG placed on a fan wiki for your favorite fantasy novel series.

These are known as contextual ads and are shown because they’re related to the content on whatever page you’re visiting3. They are slightly more valuable than generic ads, because they fit in with the content on the page. And finally, you may have before encountered this special kind of ad:

  • An advertisement for motherboards and microcontrollers you might buy, because you looked at a few on Amazon last week.

Ads like this one are targeted ads. They range from a subtle “hey these gadgets could be cool to have” to a more pronounced “you put these earbuds in your shopping cart, do you still want them??”, depending on how they were targeted. Targeted ads provide excellent value, because most of the time, they’re shown after you have already demonstrated a commercial interest in some sort of product or service, like a music album or a haircut. Once you’re interested, most companies believe you only need a little nudging before you’ll buy something.

(It’s true that targeted ads might lead you to spend more money, but if you’re having problems being frugal, blame your lack of self-control, not the advertisers.)

The ad industry today is pushing every which way they can to adopt ad targeting in all channels, and for a good reason too: the more value an ad has to you, the more value it has to the advertiser. However, a lot of people are afraid of targeted ads because suddenly, advertisers are tracking everything you buy, everything you search online, and every website you visit in an attempt to figure out what you’re interested in buying.

The truth is that most everything you do online is already being tracked. However, the data recorded is usually scattered in a bunch of different places and is never analyzed for trends. Websites maintain logs of their visitors. Department stores keep databases of purchase history (especially if you’ve got their loyalty rewards card). The means to analyze your habits already exist and have existed for a long time. It’s ultimately up to you to use incognito browsing if you don’t want certain searches or websites to be used for targeting.

The fewer generic ads and the more targeted ads we have, the fewer gimmicks are needed to get your attention and the better our advertisement experience gets (we’ve already come a long way from pop-ups). In an ideal world, we wouldn’t need ads at all. However, reality doesn’t work like that, and most people agree that pure HTML Amazon ads are much better than flashing pop-up ads with auto-playing audio.

Still not convinced?

Like I said before, it’s up to you whether you want to use ad blocking software or not, but hopefully you now at least see why advertising is not entirely bad and why it is important to have. If you’re a computer security enthusiast like me, you’ll ditch ad blockers exclusively because of the fact that they hook onto every web page. If not, just stop complaining about advertisements, because things would be a lot worse without them.

4

  1. Tumblr reportedly only made $14 million in revenue in 2012 while spending $25 million in operating costs. ↩︎
  2. Generic ads also encompass the pop-up and pop-under ads that are just plain annoying. ↩︎
  3. The examples were taken from my open browser tabs.. ↩︎
  4. Full disclosure: This post was originally posted to my coding blog. ↩︎

Mobile technology in the modern age

In our modern age, people usually associate cellphones with introversion and isolation. At my cousin’s home in Tokyo, businessmen and students alike keep to their flip phones and novellas on the subway. Nobody is allowed to talk1, save for the foreigners and newcomers who haven’t yet learned to respect the silence. How fortunate it is, then, that we have phones to keep us busy, without which we would have to stare uncomfortably at our feet or out the window—heaven forbid you accidentally make eye contact with somebody. To some lesser extent, this self-inflicted alienation is present in urban cultures all over the world, and for good reason too. The subway is hardly an ideal place to meet new people, and loud talking is rude to those who prefer to sleep or read. With the proliferation of inexpensive smartphones and mobile Internet access, literally everybody can have something to occupy themselves with during the silence of an evening commute. It’s no surprise that cell phones are highly stigmatized at social events: we are all too familiar with the sight of friends or couples who make the effort to sit down at a nice restaurant only to play games and text virtual friends underneath the table. However, cell phones themselves aren’t the reason behind this pandemic of global estrangement. If anything, they have only highlighted the symptoms.

There is nothing wrong with mobile technology or the integration of such into our lives in general. We’re all cyborgs of one kind or another2. It makes me excited to think that the next generation of consumers will be constantly connected to the Internet through one thing or another. The problems arise because society, as a whole, is not yet mature enough to handle its power. Mobile technology is not meant to supplant, but to supplement the way people connect to one another. Whether silence should be enforced on public transportation is debatable, but it is an excellent real-world example of how technology is used in an unhealthy way. A few years ago, I set up a filter on my SMTP daemon that let me post to a specialized blog by sending text messages to a special address from my (non-Internet-enabled) cellphone. Later, I expanded the system to perform administrative tasks and start (Wake-on-Lan) a media server back at home. My phone’s SMS capability was like a tenuous one-way connection to an enormous virtual universe. It became very convenient as a remote control to my assets online—I could stream and share media from my file server to my friends house without leaving it on all the time. However, I could have just as easily misused its communication abilities as an effective pretext to look busy to avoid eye contact. For a culture that grows tired of effortful face-to-face communication, mobile blogging is certainly a tempting pastime. Moreover, digital distractions have become trivially easy to procure nowadays, and if consumer maturity can’t keep up with the growing temptation, even city centers could become devoid of human voices as we all keep our eyes fixed on our smartphones. Consequently, the burden of responsibility falls increasingly on the programmer, where it historically hasn’t before, to produce technology that focuses on connecting rather than simply entertaining (although they are not mutually exclusive). The bulk of digital content today (news, social feeds) is passively consumed and captivates the attention of its consumer without asking for a response. Responsible media should beg for interpretation: technology should encourage questions and enable new ways of learning, of sharing ideas whose interpretation requires more thought than does reading an image macro.

3

  1. There are indeed no talking signs in the fashion of our no smoking signs ↩︎
  2. Some, more so than others. ↩︎
  3. Full disclosure: This post was adapted from an unpublished piece I wrote in March. ↩︎

Theory of Everything

I remember pausing the first time I read those words. They were in an astronomy book or magazine or something, and it initially struck me as a bit conceited that a bit of cosmological discussion could suddenly lay claim to an word that literally referred to everything. Might not musicians or archaeologists or some other unfamiliar professional discipline have already taken the “everything” name and applied it to one of their own big ideas? Perhaps an idea that was pervasive through their own fields but hardly relevant in others? Before I got to understanding what a ToE really embodied or even attempting the cut-down version that the text presented, I conjectured my own theory of the phrase’s meaning and came up with something that I feel, to the non-physicist, applies to everything even more than the Theory of Everything does.

Watching a kid grow up is just baffling especially when you only see them in sporadic seasonal bursts. By the next birthday or Christmas, they may have learned to talk or walk or do algebra right behind your back, and it’s no wonder that there’s usually the question of how much does he or she really know? floating around during their development1. To the curious mind armed with high-speed Internet, inquiry goes hand-in-hand with learning because anything that we could possibly want to know is easily accessible to learn online, and if humankind doesn’t yet know the answer, most of modern research can is summarized instead. This is how children and teenagers of the modern age learn anything, because if you’re willing to look, there are lifetimes worth of knowledge to be learnt on the web.

The physicist’s Theory of Everything does indeed transcend physics in the sense that emergent properties of complex systems can be inferred from fundamental laws, so long as one theory acceptably explains a variety of phenomena that ostensibly can’t be resolved. What is most important about the idea is the fact that not only can everything be explained, but it can be explained in terms of other things no matter how you scale or restrict your questions. In the same sense, how does a person take what he knows of an ocean wave and infer the trickery of a microwave? To the layman, there appear to be all sorts of contradictions in the laymen theories that mom-and-pop pass off as common knowledge, but so long as Piper the Plumber doesn’t need to differentiate between radioactivity and electromagnetic radiation, she has a good working knowledge of the world around him.

A human being should be able to change a diaper, plan an invasion, butcher a hog, conn a ship, design a building, write a sonnet, balance accounts, build a wall, set a bone, comfort the dying, take orders, give orders, cooperate, act alone, solve equations, analyze a new problem, pitch manure, program a computer, cook a tasty meal, fight efficiently, die gallantly. Specialization is for insects. —Robert A. Heinlein

So, what’s in the world that surrounds the next generation and what do we need to know of it? The Theory of Everything that I expected meant a working knowledge of everything that concerns us today. As you advance both your formal education and your degree at the University of TCP port 80, you join and mend branches on your tree of knowledge while occasionally growing into areas new to you altogether. But in the case of public education, everyone determines for themselves how best to structure their knowledge to grow in the environment of the modern world. It’s refreshing to talk to somebody who has no visible discontinuities in the realm of their mind, whether or not they find interesting the same things you do. It’s a rare thing ever in mankind’s history to have such ease of access to education, that we’d be hard pressed to find a reason not to take advantage of resources in science and culture. For me, this whole idea brings together the argument for why we go to college or learn at all.