May 9th, 2009
It started with a failed time machine backup. I had just bought an Airport Extreme and decided to plug my time machine drive into the USB port on the Airport. About 20% into the backup, time machine failed with Error -8062/Error -36. It failed on multiple files and I had to exclude them from the backup before it would move forward. Wondering what the hell was going on I tried to copy one of these files. Finder couldn’t copy it either giving a rather generic Input/Output error.
At this point I started thinking something was seriously wrong. The first thing I did was verify and repair permissions using Disk Utility. It found errors, and said it fixed them, but when I verified again the errors were still there. Not very helpful. Next I tried the much vaunted DiskWarrior. At $100 it isn’t exactly cheap but it came highly recommended. In order for DiskWarrior to scan your disk it shouldn’t be the boot drive. A bit of a problem since my MacBook Pro’s main drive was the one that failed. Using my other “Mac” (wink wink, nudge nudge) I used the nifty Target Disk mode of the MacBook Pro to mount the drive. DiskWarrior found something and said it was fixed, but I wasn’t convinced.
My paranoia was now in top gear and refused to let me rest after DiskWarrior’s all clear. I decided to buy Drive Genius 2 which offers a low level surface scan (also $100 but offers a competitive upgrade from DiskWarrior for $75). When you buy Drive Genius they give you a link to a bootable DVD image (unlike DiskWarrior that mails you the DVD, seriously Alsoft, get with the times). This DVD allows you to side-step that pesky boot disk problem. Unfortunately my MBP’s SuperDrive was on the blink. Enter my trusty 3rd generation 40 gig iPod. Using Disk Utility I restored the downloaded Drive Genius image onto the iPod and booted up my MBP using it.
Drive Genius started doing its thing and almost immediately discovered bad sectors on my hard drive. It was slow going so I decided to leave it on all night just to see how many errors found. In the morning it was still at only 9% scanned with over 100 bad sectors. Clearly this disk was breathing its last breath.
So, I have a hosed time machine disk because in moving from plugged in to my mac to plugged in to my airport, the old images were wiped off the disk in order to support backup over the air. I have a primary disk that is failing big time and probably not capable of giving me a solid backup.
Luckily for me, this is not quite as bad as it sounds. While time machine is nice and does a decent job most of the time, I don’t trust it too far. I use SuperDuper for real backups and I have had that going fine for a very long time. Push comes to shove, all my data is also backed up on Mozy in case a fire or something happens and everything in the vicinity of my computer dies.
Yesterday my Mac came back from having its drives replaced. I booted it in Target Disk mode and plugged it in to the other Mac. Opened Disk Utility, mounted my SuperDuper incremental backup and hit restore. 3 hours later everything starts up perfectly and I am back where I began. No fuss, no drama.
I love it when things work the way they are supposed to.
Tags: apple, backup, boot, error -36, error -8062, hard disk, Mac, restore, superduper, time machine
Posted in Hardware, Mac | Leave a Comment »
May 9th, 2009
I recently attended the first show of Them Clones’ promo tour for the launch of their debut CD. The band have a bunch of great songs that they’ve been massaging carefully for a very long time. The result is a polished set of tracks and a really strong and tight live show. Everything went great at the Hard Rock, Pune and I have a feeling the show would have continued for at least another hour if it wasn’t for the ridiculous 11pm closing time imposed by the Maharashtra government.
After the show was wrapped I overheard a guy complaining to the bartender. Let me break it down for you. This guy is the quintessential (read cliché) Indian rocker, complete with a goatee, long hair, Sepultura t-shirt, dirty jeans, the works. His rant is probably painfully familiar to the band members (and managers) of any Indian rock band.
It went something like this (I’m paraphrasing because I was several beers in at this point): “What was that shit, man? How can I get into the music when I don’t know any of the songs? When they play big places like this they should only play covers”. That statement right there encapsulates everything that is wrong with your average Indian “Rock Fan”.
Our asshat at the bar there showed up for a free show, promoting an album and expected to hear covers. He has no respect for artists trying to create instead of regurgitate. He has no feeling of pride or ownership for local talent. He has no concept of the fundamental building blocks of good rock and roll: A band cannot survive, let alone grow, without its fans (even if it’s your 2 friends from school).
In any part of the world where great rock music happens it begins with the local fans: The small core audience that cheers, adores and provides sexual favors and drugs to the aspiring rock Gods. That entire culture is missing completely in the Indian rock scene from what I can tell. Until that happens bands will become great despite being from India rather than because they’re from India.
Tags: asshat, india, rock, them clones
Posted in Music, Opinion | 2 Comments »
April 24th, 2009
Ashton Kutcher’s victory over CNN is somewhat symbolic. Ashton called it the “changing of the guard” and proof that the web is a viable and already powerful media channel. Like the election of President Obama wasn’t proof enough. One could argue that it is easier for Ashton to reach an “internet-savvy” population of people since he was campaigning ON the internet, or that by buying in to the challenge CNN pushed enough people to vote for the underdog. All of it doesn’t matter, victory was claimed and conceded.
What happened afterward is actually more interesting, because Ashton went on Oprah. The number of twitter users, already growing at a monstrous pace, has seen the biggest boost in history. Twitter is mainstream.
So of course, there is the inevitable backlash from loyal supporters and early adopters. Is this really necessary with every single thing that becomes successful? Everyone from Green Day to Facebook have had to deal with this bullshit “sell-out” stereotype and it’s getting a little ridiculous. I don’t even see how having more people on Twitter is a bad thing. Twitter is by it’s very nature, completely immune to an influx of people. If anything it improves the service by giving you more interesting people to follow. If you don’t like them, don’t follow them.
Tags: ashton, cnn, kutcher, oprah, twitter
Posted in Interwebs, Opinion | Leave a Comment »
March 27th, 2009
As mentioned in a previous post I dropped my iPhone a while ago and the whack caused a massive crack on the inner screen (the external glass is fine). That crack lead to the liquid crystal display (LCD) leaking liquid, causing weird grey pixel lines to come snaking up the screen. They were originally in neat little one line increments and now they’re just doing their own thing.
So I traveled to the US. I tried to get my Indian iPhone screen fixed for the princely sum of $200 at an Apple Store. End result: No dice.
The Apple Stores abroad are not allowed to replace phones that are not bought in the same country. So much for a world-wide warranty. If you break your phone while traveling you’re essentially screwed. On a side note the grey pixels appear to have stopped marching up my screen. In fact some of them seem to have gone into remission and have started working again. I don’t know how long they’ll stay this way but I hope it’ll last long enough for Apple to release their new iPhone.
Tags: butterfingers, dropped, iphone, stupid
Posted in Hardware, Mac | 1 Comment »
February 7th, 2009
It is easy to get excited about Mosso:
- Run stock PHP/ASP.NET with MySQL/MSSQL in the cloud
- Rackspace
- Automatic scaling for processing, disk space and bandwidth
- Pay only for what you use
- 24×7 Support
- Did I mention Rackspace?
So I made the recommendation to use them, the client happily agreed and we went on our merry way. 6 months later we’re switching hosting providers vowing never to return to Mosso. So, what went wrong?
Maintenance Windows
The first thing that hit us was the amount of maintenance. Maintenance happens often and with little or no warning. Worse for us, it almost always happens at the same time (late in the night US time). For an Indian company serving Indian businesses this is the equivalent of scheduling down time during peak business hours. We asked if we could be moved to a cluster that had maintenance at a different time, they said that option doesn’t exist yet. Why do they need so much maintenance? Because they are still building and refining the system. Make no mistake, it will probably be rock solid and stable in a year or two. Right now though, it is a petulant child in constant need of attention.
Platform Limitations
When building complicated web applications you often need to be able to do things that require custom services running on your servers to provide the features required. On Mosso, because of the way the environment is structured, you can’t run your own services. Cron jobs cannot be run in less than 5 minute intervals. You can’t use mysqldump, you have to get data from phpMySQL. You can’t replicate your data off-site because MySQL is already running in clustered mode managed by Mosso. All these limitations remind me of lower tier shared-hosting systems. If you’re used to root level access or running your own servers Mosso will lead to a lot of roadblocks and will require you to use workarounds. In many cases there is no way around these roadblocks.
The SSL Screw-Up
Our SSL site was having some problems which were apparently due to a configuration error at Mosso. The fix included changing an IP address which they did without informing us. Suddenly our domain was pointing to a defunct IP.
The Russian Auto Hack
Some clever person managed to fool Mosso’s routers or load balancers (as far as I can tell) into pointing all traffic to a Russian Auto site. For a while, anyone that visited our site was redirected to a shady Russian Used Car Listing. When you’re dealing with sensitive businesses a security breach of this sort undermines your entire operation. This was a big reason for the switch.
Unscheduled Downtime
Things went wrong with regularity, from PHP failures to load balancer configuration problems to write locks on MySQL. Seemingly anything that could go wrong, did go wrong. A quick glance at status.mosso.com will show you just how often this stuff has been happening.
I happened to be the 500th person to follow Mosso’s Twitter stream and have been given 1 year of free hosting at Mosso. I should have been a staunch advocate. As it stands I don’t think Mosso is ready for prime-time. Maybe we just had incredibly bad luck and other, luckier people will never face these issues. However, I do believe that you judge a service on its worst possible problem and how it gets handled. After raising a stink about our problems in Mosso’s highly public Twitter stream we got traction with upper management at Mosso, but by that point my client was already determined to move.
Mosso is a great idea and will probably turn out to be a great platform. But for the time being, if your site needs to be up all the time, Mosso is not reliable enough to bank on.
Tags: cloud, hosting, mosso
Posted in Interwebs, Opinion | 2 Comments »
January 23rd, 2009
Master pages are great time savers in ASP.NET and we use them extensively to simplify user interface management in our applications. Recently, I ran into a situation where the master page to be used needed to be set from the Database. Turns out this is relatively simple to do if you know the path to the master page. You need to harness the Page_PreInit event that fires before the Page_Load and set the master page at runtime:
protected void Page_PreInit (object sender, EventArgs e) {
this.MasterPageFile = "~/path/to/masterpage.master";
}
The other problem I ran into was accessing a control on the master page from the web form that uses the master as a template. This is important because if all the inter-changeable master pages have the same control names they become useable from the web form irrespective of their location on the page. One way is to define the same content areas in all the master pages and set them accordingly within the child, however in many cases you’d be duplicating the code relating to the control on the web forms. The other option is to use the FindControl function on the Master object. In order for this to work it needs to be cast to the appropriate control class. In the case of a Literal the syntax works out like this:
((Literal)this.Master.FindControl("literalControl")).Text = "Foobar";
Nice and easy.
Tags: .net
Posted in Code | Leave a Comment »
January 20th, 2009
Much to my surprise the Indian Passport Office has been completely overhauled. Application forms are filled out online, appointments handed out from the web site (15 minute time increments with a specific date), PDF printouts with most of the fields filled in, it’s all very organized. Until you get there. And then you figure out a couple of things that they really should have made plain on the site. This post is really just a reminder for me so I don’t screw up next time around. Maybe it will help some poor soul and save them some time in a queue.
First things first, while filling out the form you will find them constantly referring to the Passport Information Booklet. This hallowed tome is in fact available on the Indian Passport website but is cleverly disguised as Passport Rules rather than Passport Information Booklet. Download it here. Bear in mind that it is in fact ~30 megabytes. This is because it is just a scanned version of the real handbook. If anyone has an OCR’ed version of this I’d love to have a copy.
The PDF will tell you what documents you need in excruciating detail. It also has a bunch of annexures at the end that will need to be used depending on the type of passport service needed. For instance, I had to use Annexure ‘H’ to get a passport for my kid. So, hopefully you’ve rounded up the relevant documents and are ready to fill up the form. Here is the checklist when filling it up:
- Fill up ALL fields. Don’t leave anything empty, if it doesn’t apply write “N/A”. The Information Booklet refers to fields as columns. Go figure.
- Make sure you have 3 copies of all documents you’re submitting. The way I think this works is 2 copies is enough unless you have lived in more than one place in the last year. You need to add one more set for each place you stayed in. Better to take 3 copies just in case and add an additional copy for every place you stayed at.
- Make sure you have originals of all documents you’re submitting. They won’t take them but you need to show them at the counter.
- If you have lived in more than one place in the last year you have to provide 2 Personal Particulars forms for each place you stayed at.
- Don’t forget to sign the photo you stick on every Personal Particulars form.
And the checklist for when you’re at the passport office:
- Make sure you’re in the right line. Sometimes the cop at the entrance makes a mistake. There are different lines (at the Pune Office at least) for Fresh Passports, Renewals, Minors, Government Officials and Senior Citizens. The list of people/services the line handles are stuck on the glass at the counter. Go read it and ensure you’re at the right window.
- If you travel a lot pick up the Jumbo Passport. It has 60 pages instead of 36 and costs Rs. 500 more. I still had 4 years to go on my passport but ran out of pages and needed a new one. Tell the guy at the counter you want a Jumbo so he files it correctly. I crossed out the amount mentioned at the top of the PDF (Rs. 1000) and wrote Rs. 1500 in it’s place.
- Make sure you have exact change for the passport payment. Don’t bother with a Demand Draft, they take Cash over the counter just as happily.
That’s all I can think of. Hopefully I won’t have to go back there for another 10 years.
Tags: india, passport
Posted in Reminder | 2 Comments »
January 17th, 2009
While pondering the effects of Google on the way facts and information are assimilated I realized that I’ve almost entirely stopped learning details. My memory now consists of search terms rather than the actual information. I remember the minimum necessary to be able to locate the item the next time around. The details live in Google.
I don’t even bookmark, I have some timesavers linked on my bookmark bar in Safari but those are really url shortcuts. The more I think about it, this is not because I’m lazy or forgetful (though I am definitely both those things). I genuinely believe Google can find something faster and more effectively than I can thumbing through bookmarks. Consider the pitfalls of a bookmark:
- The page’s location might change
- The information contained on the page might no longer be accurate
- The very same search might yield a better, newer method of doing the same thing or reveal new information that was previously unavailable
So not only is it faster than finding a bookmark, it’s also more accurate and more up to date.
This got me thinking about a specific instance where what I had been taught in school turned out to be wrong. I was taught that gravity is a force that is based on the mass of two objects. The larger the mass, the stronger the force. Right? Well, sure it’s right but it turns out it isn’t a force at all according to a certain Albert Einstein. That text book didn’t contain the whole story and the facts weren’t updated later on in my memory. I had to discover this through Wikipedia and Google. The fact that Ekta and I just had a kid has made this lapse in the education system all the more troubling.
Is it possible that rather than learning that information in school I could have been taught the basics of how gravity works and then just taught how to look it up in Google when I want the details?
I always drop down into what I understand best when testing out an idea, so obviously I go straight into software programming terrain. The knowledge of when and why to use a technique (like say, recursive loops) is much more important than the exact syntax to do so for a given programming language. So broad concepts are much more important than the actual technical minutiae. Knowledge of what to use is much more important than specific details of how to use it. Knowing how to drive a car is more important than knowing how every part of it works. When you need that information it’s always available through Google. What this amounts to is a kind of Knowledge Abstraction facilitated by Google.
Google allows us this luxury because of 3 important things. Firstly, it is everywhere. I can access it anywhere on a suitable web device thanks to ubiquitous networking. Secondly, it is convenient, I’m not lugging around the Encyclopedia. Third, it is really fast, so the time spent hunting through documents on my hard disk or worse, the index of a book is gone. In almost magical fashion this means I don’t need to remember specific facts but at the same time know more than I did before.
I firmly believe that our kids should be taught language, math and searching at the lowest level because knowing how to access information effectively is probably as important as being able to read a sentence. It is the internet age equivalent of learning how to count and is just as important for that kid’s success. Teachers need to concentrate on teaching large, broad concepts and let the kids explore the details. They would effectively abstract the world and how it works from the technical details. The kids will probably find out what they love to do and branch off in directions of learning that would otherwise have been inaccessible. They will not be limited by the text book or the teacher’s own knowledge.
Tags: google, kids, knowledge
Posted in Interwebs, Opinion | Leave a Comment »
December 24th, 2008
I dropped my iPhone about 3 weeks ago. It has a nasty crack running from the lower right all the way up to the top left in a rather elegant arc. All the functions still work, it just looks like it got hit by a bullet or something.
This isn’t a hacked or jailbroken grey-market phone either, just a bog-standard iPhone 3G from Vodafone. So I call them up and ask them if they can replace the screen. They tell me nobody has asked them about that yet and that they’ll get back to me. Of course, they don’t get back to me. I have to ask again and then I finally get an answer the following morning. It’ll cost me Rs. 28,000 ($600) Rs. 33,500 ($690), see the update below. The brand new phone would cost me Rs. 34,500 ($705). To his credit, the Vodafone rep was apologetic. He said he was as shocked as I was that it cost so much. Apparently they don’t fix the screen, they just give you a new phone. I guess the Rs. 8000 off is some sort of butterfingers discount There is no discount, unless you call Rs. 1000 off and they keep the old phone a discount.
Anyway, so I go, “Thanks, but no thanks. I’ll live with my busted ass phone.”
That worked for about 2 weeks. But now, there’s this grey line of pixels snaking its way up my screen from the bottom. It’s actually growing one line of pixels at a time, starting from the right where the hit occurred and working its way to the left. Once the line of pixels fills up with grey it goes up to the next line. It’s on the fourth line now and it started about 8 hours ago. I wonder if the whole damned screen is going to be grey when I wake up tomorrow morning.
Update:
It’ll cost just Rs. 1000 less than a brand new phone and they take away the old phone to give me a “replacement”. I had to drive all the way to the main Vodafone store to find out this nugget of information and they didn’t even have a 16gig phone in stock essentially making my trip a complete waste. What a bunch of incompetent twits. I think I’m going to try and get it fixed in New York next month. I’ll call the Brooklyn store tonight and see if that’s possible.
Tags: butterfingers, dropped, iphone, stupid
Posted in Hardware, Mac | 2 Comments »
December 16th, 2008
This happened about 2 weeks ago. I was on a Skype conference call with Rackspace and Mosso trying to get a really ridiculous level of redundancy setup for a client. That is not the point of the story.
The point is Rackspace put us on hold. When Rackspace puts you on hold you hear music piped from a local radio station in Texas. They were playing a song that sounded good to me, so I switched Skype’s output to speaker and used Shazam on my iPhone to figure out what song it was. Shazam, for the uninitiated, records the audio it hears on the iPhone’s microphone and uploads it to a server that figures out what song it is. Shazam has not failed me yet. The result showed up in about a second and I searched for the song on Amazon MP3, bought and downloaded it. All this happened before the support guy took us off hold.
If you had told me this was possible when I was 15 I would have thought you were on drugs.
The song was Leon Russell’s - Roll Away the Stone.
Tags: amazon, iphone, leon russell, mp3, shazam, skype
Posted in Interwebs, Mac, Music | Leave a Comment »