Raam Dev’s Weblog

Avatar

A man without scars has not lived his life to the fullest.

Stop all the Questions and Definitions!

Sites and services like Facebook and Twitter ask you questions. In fact they can even be configured to pester (i.e., “nudge”) you if for some reason you feel a moral, religious, or social obligation to keep the vast world of unknown people updated with your every mood, feeling, thought, current activity, or location.

I sat down in front of my computer with a splitting migraine, a migraine that had been piercing through my head the entire day, like an alien parasite whose only job was to disrupt, distract, and otherwise make my day as mentally challenging as possible. As I turned on the monitor, I saw that I had left the Twitter website open. “What are you doing?” the screen pestered, as if instantly joining forces with the alien parasite to make my brain work harder. But it had been 22 hours since I last wrote something on Twitter! Oh no! The world is going to end! I must update everyone immediately!

I suddenly realized that as I begin to use more social-networking sites and write more things on my blog, I am increasingly being pestered with questions and buttons that contain definitions of what I should be writing:

Write a New Page
Write a New Post
Write something…
Write another comment…
What are you doing right now?
Write something about yourself.
What are you doing?

How annoying! I mean really, it’s annoying. No, that’s not the alien parasite talking. This stuff is right in line with Google’s growing visual clutter, only worse. It’s bad enough that I come up with an interesting thing to search the Internet for only to have Google’s suggestions magically chase the original query away, but when everywhere I look for an outlet to express myself I find a question or a definition of what I should be writing, we’re bordering on mental invasion and theft!

These subtle things are killing the creative thought process and subtly removing truly free expression. I feel as though I’m fighting to keep my thoughts to myself just long enough to express them genuinely to whomever might be listening (even if that person is only a future version of myself).

Evolve or Die

I have long accepted my limited social abilities and, for lack of any good reason other than convenience, avoided any situations that may expose me to new social interactions. Limited social interaction alone would not normally be such a bad thing, but when it leads to neglecting interpersonal communication, especially with those you love, the end result can be disastrous and detrimental to life itself.

The Kalabarian analysis of my name says the following about my weaknesses:

Often I am so fired up about my own projects or goals that I inadvertently run over or ignore other people’s feelings and interests. Being receptive and appreciative of others’ contributions, ideas, and feelings would go a long way in improving my relationships.

Weaknesses should not be something to accept and ignore, but rather a guide for what needs the most attention! From this day onward, I will make a conscious effort to improve my interactions with others and learn to value any opportunities to improve my interpersonal communication skills.

To evolve or die means to learn to meet new challenges as they arise and overcome them or to remain stubborn and inflexible. We need to apply this lesson to our own self-imposed limitations in life. If we accept those limitations and let them define us, we exponentially decrease our potential for growth. We should not learn to accept who we are, but rather learn to accept that we are limitless beings.

Edit: I should mention that in this context to evolve means to continuously adapt and face challenges in life. To die means to live in a box and accept your perceived limitations.

HOWTO: Install md5sum & sha1sum on Mac OS X

I was a bit surprised to learn that my Mac didn’t have the md5sum and sha1sum tools installed by default. A quick search and I found a site that provides the source. The sources compiled successfully on my Mac (OS X 10.5.5, xCode tools installed).

The only quirk appears in the last step:

$ ./configure
$ make
$ sudo make install
cp md5sum sha1sum ripemd160sum /usr/local/bin
chown bin:bin /usr/local/bin/md5sum /usr/local/bin/sha1sum \
/usr/local/bin/ripemd160sum
chown: bin: Invalid argument
make: *** [install] Error 1

The make install command tries to change the ownership of the files to the bin user. Since that user doesn’t exist on my system, the command fails. This isn’t a problem though, as both binaries work perfectly. By default, they are installed to /usr/local/bin/.

  • I’ve been consistently getting rid of stuff that I don’t need or that I rarely use. I’m going to continue doing so until I’m down to the bare minimum. Then I’ll implement a personal rule that prohibits me from taking on more stuff unless I absolutely need it or unless I get rid of something else first. Not only have I been doing this with material stuff, but with mental stuff too. It’s a freeing experience to just let go of stuff. I realize how unnecessary certain things were after they’re gone. (0)

A Week of Big Decisions

This past week my head has been full of big decisions. Late last week, I was given the opportunity to make a big chunk of cash for three hours of work if I was willing to accept a slight (although real) risk to my health by removing asbestos from an old basement boiler. I needed the money, but in the end I realized that trying to put a price on my health was just stupid.

Then yesterday, the first day of spring, I signed the paperwork to file for Chapter 7. The decision had already been made, but it was a big event in my life nonetheless.

And lastly, since a huge portion of my income currently goes to rent, I’ve been trying to decide what I can do to decrease that expense considerably. I have been crawling CraigsList looking at what’s out there and then checking MBTA’s website to determine commuting distance and cost.

Since I’ve accepted that I’ll probably need to spend three hours a day commuting (total), I have even checked out a few places near the ocean (I love the ocean). However, the more time I spent looking for an apartment and planning my potential commute, the further from my original goal I unconsciously drifted. The original goal was to decrease expenses and to save as much money as possible. I’m still making my decision on where to move, but it’s going to be an important one that will have the potential to save me a lot of money.

A Unique Perspective: College Campus

Today marks the first day of my twenty-six years of living that I spent time inside a college classroom and on a college campus. (There was one time I attended an Indian classical music concert with my dad at MIT, but I was young and barely remember it.) I’m taking the Introduction to C/Unix/CGI Programming class at Harvard Extension. As I walked around campus on the first day of class, I very quickly observed how different things felt from the “normal world”.

My perspective is probably somewhat unique in that I have been around business for as long as I can remember. My parents have always owned their own business and I myself just went through being a landlord for a few years and then lost all three of my houses to foreclosure. I also had my own consulting business going for awhile. Being home-schooled my whole life also meant that I saw nothing of the public school system.

The atmosphere of being on campus felt very unfamiliar to me — almost alien. I was only a few hundred feet from streets I had driven on every day for the past few years and yet I felt as if I was on a different planet. It’s a hard feeling to describe. As I stood there looking around, I could almost fool myself into believing I was in the middle of a utopian alien society where everything was about peace, harmony, learning, and knowledge. (Then I turned around, looked across the street, and saw all the money-hungry shops trying to buy your soul. I was quickly reminded that I am, in fact, still on Earth. Damn.)

As strange and different as the atmosphere felt, it also felt relaxing — like there was nothing to do except learn and relax. I was able to walk into a building and have instant access to dozens upon dozens of computers just waiting for me to login and start using them for whatever constructive thing I needed to do. Everything outside was clean and there were plenty of benches and places to sit.

But my perspective is flawed. The company where I work is paying for the class and I’m sure things wouldn’t feel quite as “free” and relaxing if I had student loans riding on my back. But that should say something for the current system. Imagine what society would be like if all education was free. Imagine the atmosphere it would create. People learning because they want to learn and because they can learn. Not learning because they want to make money and get an awesome job to pay off their student loans. No, learning because they want to create, explore, and evolve. Learning because it’s fun. Learning to learn.

HOWTO: Create an ISO Image from a CD in Mac OS X

Insert the CD you want to create an ISO image from into your CDROM/DVD drive and then launch Disk Utility (Applications -> Utilities -> Disk Utility). Select the CD underneath the drive listed on the left and then click New Image in the tool bar at the top.

Disk Utility

On the Save As dialog, enter a name for your ISO image and choose the location where you want to save the file. Change the Image Format from compressed to DVD/CD master (compressed will save the file as a DMG image). In the example below, I use example as the filename.

Disk Utility Save As Dialog

Disk Utility will create the disk image with the .cdr extension, even though the image itself is identical to a .iso image1.

Disk Utility Creating Disk Image

When Disk Utility is finished, you can browse to the file with Finder and rename the file from example.cdr to example.iso.

Rename CDR to ISO

The ISO image can then be distributed and burned on any system (I tested this by burning the resulting ISO on a Windows XP machine using the free DeepBurner application).

Not a true ISO image?

I have read that the resulting ISO image is not a “true” ISO-9660 filesystem and that you can use the following command to convert DMG images (leave the Image Format as compressed to create a DMG image in Disk Utility) into *real* ISO images using the following command:

hdiutil makehybrid -o example example.dmg

This will convert example.dmg into example.iso. However, after burning the resulting ISO image on a Windows machine the CD was not bootable. Using the renaming method I described above, the CD was bootable and Windows was able to see the contents of the CD without any problems.

I looked over the man page for hdiutil and even tried some of the examples to convert a DMG to a *true* ISO file:

hdiutil makehybrid -o example.iso example.dmg -iso -joliet

But after burning the resulting ISO to a CD, I discovered the CD was again not bootable. Maybe I’m missing something and someone can enlighten me. Until then, I will continue creating a .cdr image and renaming it to .iso.

  • Here is what my MacBook Pro desktop typically looks like while I’m working. All these programs running and I have 24% free memory and 60% free CPU. :)

    (0)
  • It’s difficult being vegan. Being vegan means you need to be willing to sacrifice. It means accepting the single vegan choice on a restaurant menu of fifty items and skipping a latte if they don’t offer a soy option. It means making it known to the world that you don’t eat meat when ordering an item you’re unsure about. It means always packing alternatives (ProBar, almonds, trail mix). It means having respect and care for what you put into the one and only machine you are truly responsible for maintaining. (1)

s3delmany.sh - Delete Many S3 Objects With One Command

I’ve been doing some stuff at work using Amazon S3 to store files and during my testing I uploaded a ton of files that didn’t need to be there. Unfortunately, the command line tool I’m using, s3cmd, does not allow me to delete multiple files at once. There is no way to do a wild-card delete. This means I would need to get the full path to each object and delete them one by one:


./s3cmd del s3://s3.ekarma.net/img/1205794432gosD.jpg
Object s3://s3.ekarma.net/img/1205794432gosD.jpg deleted
./s3cmd del s3://s3.ekarma.net/img/1205794432g34fjd.jpg
Object s3://s3.ekarma.net/img/1205794432g34fjd.jpg deleted

Yea, there’s no way I’m doing that for over 200 objects. I mean come on, there are tools to automate this kind of stuff! So I created s3delmany.sh:

#!/bin/sh
# -------------------------
# s3delmany.sh
# Author: Raam Dev
#
# Accepts a list of S3 objects, strips everything
# except the column containing the objects,
# and runs the delete command on each object.
# -------------------------

# Redirect output to the screen
2>&1

# If not using s3cmd, change this to the delete command
DELCMD="./s3cmd del"

# If not using s3cmd, change $4 to match the column number
# that contains the full URL to the file.
# This basically strips the rest of the junk out so
# we end up with a list of S3 objects.
DLIST=`awk 'BEGIN { print "" } { print $4, "\t"} END { print ""}'`

# Now that we have a list of objects,
# we can delete each one by running the delete command.
for i in "$DLIST"; do $DELCMD $i
done

Download
s3delmany.zip

Installation
1. Extract s3delmany.zip (you can put it wherever, but I put it in the same directory as s3cmd).
2. Edit it with a text editor and make sure DELCMD is set correctly. If you’re not using s3cmd, change it to match the delete object command for that tool.
3. Make it executable: chmod 755 s3delmany.sh

Usage
If you’re using s3cmd and you placed s3delmany.sh in the /s3cmd/ directory, you should be able to use the script without modifying it. The script works by taking a list of objects and running the delete command on each one.

To pass s3delmany.sh a list of objects, you can run a command like this:

./s3cmd ls s3://s3.ekarma.net/img/ | ./s3delmany.sh

This will delete all objects under /img/. Make sure you know the output of your s3cmd ls command before you pass it to s3delmany.sh! There is no prompt asking if you’re sure you want to delete the list, so get it right the first time!

Hint: s3cmd doesn’t allow you do use wild-cards, but when you run the ls command, you can specify the beginning of an object name and it will only return objects starting with that. For example, s3cmd ls s3://s3.ekarma.net/img/DSC_, will return only those objects that begin with DSC_.

Alternate Usage
If you have a text file containing a list of S3 objects that you want to delete, you can simply change print $4 to print $1 and then do something like this:

cat list.txt | ./s3delmany.sh

By the way, print $4 simply tells s3delmany.sh that the S3 objects are in the 4th column of the data passed to it. The ./s3cmd ls command outputs a list and the object names are in the 4th column. The awk command expects the columns to be separated by tabs (\t).

If you have any questions or comments, please don’t hesitate to use the comment form below!

Interfacing with the Internet in the Year 2208

What happens when the virtual world becomes more important, more interesting, and more popular than the real world? How many people do you know who would rather own the domain name google.com or myspace.com than own the entire Empire State Building or the entire state of New York? Will the value and popularity of real things decrease as more and more of the world becomes aware of the Internet’s potential?

Worse yet, will we as a society forget what it means to be human? Will we slowly evolve into this creature that yearns for a connection to the net because our brains have adapted to rely on the instant availability of a vast source of information? If technology continues to evolve new ways to interface with that source of information (Wiimote, iPhone, RFID, GPS, Google), what will come next? How will the people of 2208 interface with the Internet?

What is the Purpose of an Ending?

Everything has an ending, doesn’t it? When we’re talking about life and relationships, the ending often brings out many emotions. Opposite to the ending, the start and beginning are often associated with joy and happiness. Other endings and beginnings, however, are often not so defined.

When you’re hungry, you feel a sense of gratification the minute you start eating. When you’re on an airplane starting a 5-day vacation to a tropical island, you’re happy and relaxed knowing the next few days will be enjoyable. When a baby is born, happiness is associated with the event. As the child grows up, all he is concerned with is how he will enjoy that day.

But when you finish eating and you’re full, you quickly forget the gratification you felt minutes earlier. Your return trip home on the airplane is filled with only memories of the enjoyment you experienced, as you slowly adjust back into the thinking mode of daily life that you associate with grunt work. When the baby grows up, has kids and grandkids of his own, he will lie on his deathbed where there is no happiness to be found. As the child grew older, he found less and less happiness from life.

But you will feel hungry again. You will look forward to another relaxing vacation sometime in the future. The grandfather on his deathbed will look in his grandkids eyes and remember his own childhood, feeling as though his life will somehow continue through theirs. The child grew up with memories of times when life was easy and now he spends his days working for just a taste of that pleasure.

The end, it would seem, is a means to the beginning. Without the end we could not have a beginning and therefore could not experience the joy and happiness associated with it.

But perhaps this ruthless cycle of beginnings and endings is trying to tell us something. In between the ticking second hand of a clock, between each beat of our heart, for the 300 or 400 milliseconds our are eyes are closed every time we blink there lies a calm silence; an eerie hint that maybe the ending has no relevance whatsoever.

Perhaps endings and beginnings only exist to distract us from what’s real. Maybe they are nature’s backup plan; a method of ensuring that we realize we need to do something with our life before “time” runs out. They allow us to structure things in manners easily defined. This post will end, so I’m able to write a new one tomorrow. The day will end, so a new one will start tomorrow.

But what if we lived life with no expectation of an end? Would it make us complacent and fearless? Would we become lazy and feel as though we can always put things off until tomorrow, since we’ll always have a tomorrow to get it done? What if we stopped thinking of days as beginning and ending and rather thought of them as lines on a sheet of paper waiting to be filled in with words?

If we’re all made of energy and energy truly cannot be destroyed, then energy doesn’t have an ending and neither do we. Therefore the purpose of an ending must be to amuse and entertain us; to tease us with that which we’ll never be able to experience.

Making Money vs Spending Money

It’s so easy to spend money. So easy in fact that I catch myself thinking of new ways to spend money that I don’t even have. I won’t actually spend it, but I’ll plan what I would do if I had the money to spend.

I realized I was doing that today when I was trying to justify spending $60 a month for a wireless Sprint card to use on my laptop. When I realized what I was doing, I asked myself, “If it’s so easy to think of new ways to spend money that I don’t have, then why don’t I think of ways to make money I don’t need?”

What is it that makes spending money so easy and “fun” while making money is so difficult and boring? Is it because we associate the action of spending money with a feeling of contentment, while the action of making money is associated with hard work and frustration?

I often find myself wondering what the point of making money is if not to spend it. Perhaps I’m living too much in the moment and not planning for the future — maybe because I expect to be able to handle whatever the future throws at me.

Then I’ll do something that immobilizes me to the point where I cannot run, jump, or do anything physically strenuous. I’ll watch a snowboarding commercial and get a glimpse of what it must feel like to be paralyzed for life; to know you’ll never be able to do certain things that others take for granted. I realize how important being financially stable with money set aside would help me live a better life. In that moment I make a promise to myself that I will be more grateful for life when I get better, only to later forget that feeling altogether and go back to being arrogantly confident that I’m invincible and that I will live forever.

What an idiot.

Money should not be thought of as an object that allows us to obtain something we don’t already have but rather as a resource which grants us certain freedoms and privileges. The more money we owe others (debts), the more they own us (assets). The more they own us, the less freedom we are privileged to.

Most of us maintain the misconception that we must spend money to make money. We believe that we must first sacrifice some of our own money before we can collect and take from others what they have. This just isn’t true.

When you work for someone, they give you money because you’re giving them something in return that is more valuable to them than the money they’re giving you (and when that ceases to be the case, you get fired). Making money isn’t about taking. Making money is about giving. The choices you make with your time and the ways in which you choose to give all determine the money you make.

So, how have you given today?

Managing Trust and Expectation

I’ve learned to trust only myself and to expect only one thing from everything else: failure. The one thing we can all count on is our own demise. We will all die. Nothing you see and no one you know will last forever. I don’t place faith in fallible things, including and especially other humans. Doing so would be not only a huge waste of time, but comparable to playing Russian roulette with a fully loaded gun… and taking the first turn.

I maintain a very pessimistic outlook on the world and its future, while at the same time being very optimistic about myself and my future. I have the capability of controlling myself and my future, but what kind of control do I have over the world and its future? How could anyone say they have control over the choices of billions of people?

The helpful side of me wants to educate and warn others of how they are being herded like cattle by those with the power to control the things we put our trust in: the media, money, our jobs, our health, and the machines that make everything run. But why? What’s the point? I can help others and I can even try to help the whole world, but what good is my help to them if I haven’t taken care of myself? I’m not talking about being selfish. Selfishness is the act of being concerned with your own interests and the advantage excluding others gives you, not the act of helping yourself so you’re more capable of helping others.

Human beings are very imperfect and fallible creatures. That’s why nearly every human being strives for perfection in one way or another. Constantly reminding myself that no single person has ever been, nor will ever be perfect is a very eye opening experience. When I have zero expectation for myself, for others, or for the world, I begin to realize that the only thing that really matters is who I am in this moment and how prepared I am for the next.

Time will continue moving forward. This moment will not. Don’t expect it to.

ZDAY; should I host an event?

I’ve been contemplating hosting an event. Thats right, you heard me, hosting an event. If that doesn’t sound like something I’d do, that’s because it isn’t.

One of the few movies that I feel has changed my life, in terms of how I view the world, is Zeitgeist. (If you haven’t watched it already, I strongly urge you to do so at your earliest convenience.) The creators of Zeitgeist are doing something called ZDAY, in which they are asking people to voluntarily organize a screening of the movie, either publicly or privately, to further education the world about the mask that has been accepted as truth. The event will take place worldwide on Saturday, March 15th, 2008.

According to the current event list, the closest public screening is a couple hours south of here in South Hadley, MA (close to Springfield). There are no public events around the Boston or Lowell area and none at all in New Hampshire.

Despite the fact that I’m a very quiet, keep-to-myself kinda guy, I felt as though I suddenly had a calling; as though maybe it was my responsibility to break out of my shell and educate some people about the facade that is our government and all religion. The idea is still very new in my head but it feels as though I’ve been thinking about it for years.

Who knows, maybe this quiet, fitness minded computer geek will become a great leader for a new generation of truth seekers.