Sony Ericsson K700i

I didn’t intend for this review to be as long as it is, but it seems I got a little trigger-happy and couldn’t stop typing.

It’s no secret that I’m a big fan of Sony Ericsson mobile phones (I’ve had the T68i, P800, and T616) and the K700i is certainly no exception. Though there are a couple of disappointments, I have to say that overall, I’m pretty impressed. That said, let’s take a look at this phone.

Design

Though it’s a slight departure from previous designs, I think that the K700i looks great. I don’t quite understand the whole “dual face” thing that SE is trying to push (the idea that it “looks” like a camera on one side, and a phone on the other), but whatever.

What I do miss from the T61x is the identation up the sides of the phone. As I wrote in the T616 review, this made the phone feel secure in your hand, something that is difficult to do with such a small device. That’s not to say that the K700i doesn’t feel good in the hands, quite the oppposite actually, but the automatic comfort of the T61x is notably absent.

The phone feels very solid, almost like you could throw it against a wall and expect it to make a hole. Like most mobile phones, the only movable part is the battery cover, which fits very snuggly (no doubt due to the long “tracks” that run along the cover) and produces no rocking (unlike the T68i) when typing on the keypad and no creaking noises when squeezing the phone.

Keypad

The keypad buttons feel very solid and have a great tactile feedback to them. The keys are rectangular, transparent (kind of look and feel like glass), elevated above the phone, and layed out in a square matrix (as they should be). The function keys aren’t as ‘glassy,’ but have a more ‘milky’ look to them. The illumination on the keypad is excellent.

Joystick

I’m glad to see that SE has moved away from the square shape of the T61x joystick and gone to a completely round design similar to the one found on the T68i, though a little larger. It actually makes the control feel a bit more analog (it’s not), especially when playing games. Another good change is that the joystick can no longer “wake up” the phone — you have to either press the menu buttons or the keypad to bring the phone back to life (yes, you could lock the keys, but I hate extra steps  :P).

All of the joystick directions can be assigned shortcuts.

Data Port and Charger

My second biggest gripe with the phone (behind battery life; see below) has to do with the black rubber cover that “protects” the data port and charger. SE has never offered this on a phone before and I’m unsure why they decided to go with it now; it’s not needed and only makes it more difficult to charge the phone. Morever, it feels hyperextended when you have the charger connected to the phone. I have half a mind to remove it, but because I’ll probably sell the phone at some point, I’m compelled to leave it fully intact.

The charger connects the same as all (?) SE phones — there are two little prongs that snap into the connector. I’d much more prefer a single “plug” as is found on most Nokia phones.

Rock-switch

Under the camera button on the left side of the phone is the obligatory rock-switch. During calls it controls volume; incoming calls can be given a busy tone; in standby mode, information about the phone is displayed, including date, profile, model name, your mobile number, and free memory (sadly missing here is information about remaining battery life); and in camera mode it’s used to set the exposure compensation.

“Online” button

The right side of the phone has an “online” button that takes you straight to the WAP browser. I’ve never used this button in past phones, so I doubt I’ll start now. I don’ t think it can be assigned another function, which is unfortunate.

Camera Button

The camera button on the side now has a delay on it so you have to hold it down for a couple of seconds before it activates the camera.

Display

The display is amazing and really stands out from almost all other mobile phones. The screen is a very bright TFT capable of 16-bit color and features one of the best resolutions available today: 176×220. Text is very smooth and pictures are simply gorgeous — you have to look pretty hard to make out individual pixels.

There are no options to adjust the brightness or contrast, but I haven’t come across a need to do that yet. The screen looks great in direct sunlight and is very readable, perhaps moreso than any other mobile phone display I’ve ever seen.

Games

I was blown away by games on this thing. They look absolutely incredible. The Mascot Capsule Java 3D gaming engine is really impressive — this is one of the very first phones to ship with MIDP 2.0/CLDC 1.1 and J2ME 3D. Combine that with the resolution and brightness of the screen and the superb sensitivity of the joystick and you are left with a pretty decent gaming platform (the best I’ve seen yet on a mobile phone).

Memory

The phone ships with 41MB of available memory (you can get a couple more megs by deleting some of the installed applications/themes/games/etc). All of this memory is available to just about everything on the system, including image, audio, and video files. While there is no memory-expansion slot, I’m not sure that one is really needed given the fact that you would be fairly hard-pressed to fill this thing up with just games, applications, and audio/video/image files (obviously MP3s and MP4 video are a different story).

Syncing with iSync

This was not as easy as I had hoped, but given that there is no official support in the latest version of iSync for the K700i (which makes sense; the phone isn’t even available in the US yet), I was a little surprised to find that, after a little finagling, I could get it working out of the box. The trick is that you have to initiate the Bluetooth pairing from both your computer and the phone, one right after the other. After this is done you should see a K700i icon inside iSync.

I’m positive the next iSync update will have native support for the K700i.

Transferring files with Bluetooh

As expected, I had absolutely no trouble transferring files back and forth between the PowerBook and K700i, be them themes, pictures, videos, games, whatever. There is support for the new HID profile which includes both the ‘object push’ and ‘file transfer’ options of moving files between devices.

Files transferred to the phone through Bluetooth (or by other means) are placed in the appropriate folder in the “File Manager” (see below) based on file extension. If the extension is unrecognized, the file will be placed in the “other” folder.

Using Bluetooth to Browse the Phone

No trouble here either. I actually think the browsing is quite a bit faster than with the T61x. I experienced no problems moving in and out of directories and moving files back and forth.

Digital Camera

The K700i takes decent pictures, but nothing mindblowing. As usual, I really couldn’t care less whether it came with a camera or not. Until they’re 3MP and above, I just don’t care (it won’t be long). The pictures have a native resolution of 640×480 and can be interpolated to 1280×960 (but, um, why?). In addition to these sizes, you can also take pictures at 320×240 and 160×120 and the camera is capable of 4x digital zoom.

The design of the phone is such that when you take pictures and hold the phone horizontally, you’ll find the “snap” button on top of the phone along with the rock-switch that controls exposure compensation (of course you’re taking portrait-mode pics when you do it like this; the option to rotate pics is offered after taking them). You can take landscape pictures by simply keeping the phone vertical. The lens can be snapped by either pressing the joystick down, hitting the camera button, or pushing the bottom-left function key.

As expected there are all kinds of picture options, including black and white, sepia, solar effects, and negative. There’s also a “night” option. Somewhat surprisingly, there’s a panoramic option that is quite functional and something I wouldn’t expect in a camera phone like this. It takes three pictures and stitches them together to form a larger, [hopefully] seamless 1664×416 picture — it actually works pretty well. You line up your pictures by aligning a semi-transparent image of the previous shot that is overlayed onto the viewfinder.

The built-in image editor allows you to add all sorts of things to the images including text and freehand drawings.

One of the neatest additions to this phone is the “flash,” which isn’t a flash at all, but rather a very bright LED light. My limited use has shown that this actually does a decent job when taking close-up camera shots and video clips in low-light settings. It also works very well as a flashlight of sorts and is especially useful for finding the right key and getting it in the door at night. I only wish that you could assign the light a shortcut key, but instead you have to be in camera mode to invoke it (hitting keypad #5 turns it on while in camera mode).

The viewfinder looks great and the refresh rate is excellent.

There is a small mirror on the back just under the lens for self-shots.

Digital Video

Yes, this phone will shoot video as well (with sound!). You can choose between one of two resolutions, 176×144 or 128×96 (both weak for sure, but this is a phone). Again, I couldn’t care one way or the other if I could take video, but because I can, I’m finding that it’s something I play around with quite a bit. Further adding to the enjoyment of taking videos is the fact that you’re limited only by the available memory in the phone (as I mention above, 41MB, which makes for A LOT of video at these resolutions). You can limit the video to a length of 10 seconds if you want to shoot short clips for MMSs. All of the features and effects described above for the digital camera are also available for the video.

Like most other phones that are capable of shooting video, the format is 3GP (H.263), which can be played back on the phone or a computer (yes, you get sound when playing back video on the phone).

File Manager

The file manager built into the phone is pretty nice. It’s broken down into seven folders: pictures, sounds, videos, themes, games, applications, and other. You can move, rename, copy, and delete files from within the file manager. One neat (and long-needed) option available here is the ability to mark several files at a time for deletion (among other things). The photos in the pictures folder are shown as small thumbnails (four per screen) and you can even have it run a slideshow of the pics.

You can also view information for each folder such as the number of files within the folder and their total size.

All of the regular options are here for transferring files: Bluetooth, IR, MMS, or e-mail.

User Interface

I love the interface. It’s very similar to that of the T61x, but with a few changes. The most notable is the sharpness of the icons in the main menu (which is due more to the increased resolution than anything else). They are layed out the same way as the T61x: four rows with three icons each. As you cycle through the icons they ‘magnify’ quickly and then shrink to a size that is slightly larger than the unselected icons, changing looks in the process. A nice touch is this circle ‘cursor’ that follows your joystick moves and jumps from the sides or top/bottom of the screen as you “wrap around” the menu. It looks great.

This phone also makes use of tabs, which I think is a first for a phone-only device, and certainly makes for a better user experience.

Themes

The K700i uses graphic themes and is capable of displaying animated wallpapers. Currently, I’m using a theme called “Nemo” that mimics the virtual aquariums available on the Finding Nemo DVD. The background wallpaper to this theme is gorgeous and little bubbles rise up from the coral at the bottom. It’s pretty neat.

I’ve run through most of the themes currently available, and have seen some pretty impressive collections, though not too many that I would consider using. The number of available themes will grow rapidly as this phone starts to take hold around the world.

[I got an e-mail from someone pointing me to a movie he made that shows off the animated wallpapers — take a look]

Phonebook

I can’t say that I have any complaints with the layout of the phonebook. The menu has been redone a little bit so that more information can fit on the screen. When viewing your list of contacts all you see is their name, but as you highlight each name, the view expands around the name to expose the main contact number for that particular contact; you can then scroll to the right to reveal other numbers and e-mail addresses attached to that contact. Depending on what is selected (number or e-mail address), pressing down on the joystick either engages a phone call or presents a compose window for an e-mail. Pretty slick.

Obviously, you can also attach a photo to a particular contact for photo caller-ID and can have custom ringtones as well. Voice-dialing is also supported.

Messaging

You’ll find all the usual suspects here: SMS, EMS, MMS, and e-mail (IMAP4/POP3/SMTP).

One of the complaints of the T61x was the number of steps one had to go through to get to an SMS compose window. That has been taken care of with the K700i by allowing you to assign this to a shortcut (when I want to send a text message, I simply tap the joystick left). Another really nice touch is a ‘recently sent’ list; this pops up after you’ve composed the message and displays a list of the 10 people you’ve most recently sent an SMS to, while also offering the option to search your phonebook for a number. Overall, the messaging options and associated menus are done very well.

E-mail

Nothing too groundbreaking here except for the fact that you can now send attachments of any file type (even if not understood by the phone), which is a very neat feature.

Multimedia

The K700i comes with a lot of multimedia options, including the ability to listen to MP3s, an FM radio, and some “DJ” software that you can use to create music to be used for whatever (e.g., ringtones, etc).

Media Player

The “media player” can handle the following file types: MP3, AAC, WAV, AMR, MIDI, and MPEG-4 video. It can be put into the background so that you can do other things on the phone while using it.

While 41MB is a shit-ton of storage for a mobile phone, it obviously doesn’t go very far in the way of MP3s or other storage-intensive media (where are the half-terabyte phones?  :P), which is why the media player will rarely, if ever, be used by me, but I thought I would mention it. For the sake of this review I loaded up a few MP3 files to test it out. The sound out of the loudspeaker was excellent and there is an equalizer so that you can adjust the sound to your liking. You can also listen to the music through the supplied headphones.

FM Radio

This is an SE first. It’s been a while since I’ve had an FM radio in my phone (not since the Nokia 7210 and 7250), but I doubt I’ll use it any more now than I did then, though it will be good to listen to Stern in the morning again. Like the MP3 player, you can either play the sound through the headphones or the loudspeaker, with the only caveat being that heaphones must be plugged in because the antenna is contained within the cord. You can save up to 20 presets by frequency number.

Ringtones

As is expected, ringtones can be either MIDI (40-chord polyphonic), MP3s (and other supported formats), or anything that you record. Unfortunately, your options aren’t so great when it comes to message alerts as you are limited to one of six pre-defined sounds.

Organizer

The functionality here is very similar to that of the T61x models. Included are a calendar (viewable by week or month), tasks, notes (all of which can sync with your computer), timer, stopwatch, calculator, and alarms (both single and recurrent).

One neat thing about the notes is that you can have one displayed on the main screen to remind you of something; it’s displayed on top of a transparent window, which looks really nice.

The calculator works the same as the one on the T61x, which is still the best I’ve seen on a non-’PDA’ mobile phone.

Internet

Instead of searching the net for Internet settings and putting them in manually, I used the Wap Set-Up found on the SE site. An SMS message is sent to the phone that automatically loads up the settings for my particular provider. I must admit that I’ve become quite fond of this after having used it on the past few phones that I’ve had.

The built-in WAP 2.0 browser (which is quite capable of displaying pages built with XHTML and CSS) is one of the best that I’ve seen — I can’t say that I’m blown away by anything, but I don’t have too much to complain about either.

I think this phone is the first SE device to support GPRS Class 10 speeds in addition to both CSD and GSM Data.

Speakerphone

Unlike the T68i or T61x, this model comes with a speakerphone. Both the loudness of the speaker and the sound quality from the microphone are excellent — friends can’t tell when I’m on speakerphone. The only complaint I have is that there is no easy way to turn on the speakerphone. You first have to be in a call and then you have to hit the joystick and scroll down to the option, which means that most of the time you will have to tell the person on the other end to hold on. I’d like to see a way to turn this on before making or receiving a call.

Battery Life

The biggest disappointment of this phone is the battery life. It doesn’t make sense that SE would use a battery that is smaller than the one found in the T61x (700 mAh as compared to 770 mAh), knowing full well that the more demanding screen, Bluetooth, loudspeaker, and camera would suck up power like crazy. I’m having to recharge the phone almost daily with regular use, even though I have the screen set to turn completely off when I’m not using it. The specifications claim a talk time of 7 hours and a standby time of 300 hours — not even close.

Miscellaneous

Remote Screen and Remote Display

The “remote screen” option allows you to shoot media over to a Bluetooth Media Viewer (MMV-100) device such as a TV, which means that you can view images or sounds from the phone through the TV.

The “remote display” program lets you use the phone as a remote control for your PC (much like the the third-party Salling Clicker has allowed Mac users to do for a while now).

Has it really been five years?

I got an e-mail from a friend this morning congratulating me on the 5th-year anniversary of this site (how I didn’t notice this is beyond me). It was five years ago to the day that I registered this domain. Damn. This was the last in a long line of domains that I purchased and was initially going to be used only for e-mail — I wanted an address-for-life. It has since become much more than that and now somewhat serves as a repository for my life (well, the geekier side of my life anyways).

For years I was really reluctant to put any content on the site (I didn’t start writing here until 2002) because I was scared that I would become obsessive with it — good thing that hasn’t happened *cough*. It’s turned into a labor of love, and while it does eat up a lot of my time (more than I’ll ever admit), I’ve never regretted working on it.

As long as I continue to receive positive feedback from random strangers and real-life friends about what I’m writing/doing here, I’ll continue to produce.

Here’s to another five years.

Nested archives with Movable Type

I’ve wanted nested archives on this site for a while, but didn’t get around to figuring out a way to do it until a few days ago. I wanted:

  1. a list of the months in which I posted something;
  2. each element of that list to be linked to the archive page for that month;
  3. a list of posts under each month that were published during that month; and
  4. each element of that list to be linked to the individual archive page for that particular post.

The entire point of this is to consolidate the list of individual posts with the month in which a post appears. I wanted to merge the list of individual posts with the list of months in which I posted (I’m removing both of these pages as soon as this entry runs its course).

I figured that there was no “direct” way to do this with Movable Type (I realized later that I was wrong; keep reading) and so I started looking at the MT Plugin Directory for a plugin, but there weren’t any that fit the bill. I tried a combination of various plugins, but still couldn’t come up with the functionality that I wanted, which I thought was rather simple.

I began whipping up something in PHP, but quickly realized that there had to be a better way; there had to be a way to do it directly through MT. It didn’t take long for me to figure it out (or for me to feel like an idiot for not trying to do it like this from the beginning).

The following is a very quick and simple way to achieve what I described above (and illustrate on my main archive page) using nothing but MT tags (I’ve included the actual markup that I use as well):

<MTArchiveList archive_type="Monthly">
<h2><a href="<$MTArchiveLink regex="noExtension"$>">
<$MTArchiveTitle$></a></h2>
<ul>
<MTEntries>
<li>
<a href="<$MTEntryLink regex="noExtension"$>">
<$MTEntryTitle$></a> 
(<MTEnglishOrdinal number='[MTEntryDate format="%d"]'>)
</li>
</MTEntries>
</ul>
</MTArchiveList>

If you’re confused by the “regex” stuff in the link tags above, have a look at my post on future-proofing your URIs. The MTEnglishOrdinal tag is part of a plugin I use called DateTags; it takes in the cardinal date number and passes back ordinal numbers (i.e., 1st, 2nd, etc).

Not for nothing, but I really like the look and feel of my main archive page now. On a related note, I’ve changed the menu (the right-hand column) around a bit for archive pages — tried to make it a little more relevant/helpful.

Mail.app and broken spam filters

Mail.app is often lauded (and rightfully so) for its exceptional spam filtering, but what to do when the filters start breaking down? It seems that after the file that contains your filtering rulebase (~/Library/Mail/LSMMap2) becomes too large, Mail.app effectively stops catching spam. I’ve experienced this more than once and each time it has come on rather suddenly, leading me to believe that there is a specific filesize threshold that, when crossed, breaks the filters (the last time I noticed this the size of the LSSMap2 file was ~8.5MB).

The only way to “fix” this is to remove the LSSMap2 file (Mail.app recreates a new, blank file when you restart the application). Yes, this means that you have to start training the application again, which, for at least a little while, puts you in the same position you were in before you removed the file.

Enter JunkMatcher:

JunkMatcher filters spam using flexible regular expressions, IP query against multiple blacklists (such as SpamCop.net) and varoius other techniques such as email property matching, HTML final rendering matching etc. You can match against almost every bit of a message (including attachment filenames and charsets), and the raw material for matching is cleaned out for you to defeat some of the tricks spammers use to obfuscate their messages.

To get my rules back on track again, I simply let JunkMatcher “define” the native filters by using it for a few days. This means that you have to actively look for false-positives (I always get quite a few with JunkMatcher’s default rules), but I’ve found that after just two or three days (given the extremely high volume of spam I get; >2000/day) the filters have been “trained” well enough that I can turn JunkMatcher off (until LSSMap2 decides to shit on itself again).

It isn’t the best solution, but for now it does the trick and has stopped me from implementing Knowspam or something similar.

iPhoto and image resizing

I’m not quite sure when it happened (sometime ≥ v4.0), but iPhoto has finally fixed the non-anti-aliasing of exported photos. This makes my life a tad bit easier. The following steps are those that I used to take to get photos up on this site:

  1. Create a temp folder in iPhoto.
  2. Copy to this folder all of the pictures from the latest trip/event/whatever that I want to put up on the site.
  3. Go to the temp folder and remove all of the photos that I know I’m not going to use on the site.
  4. Sort the remaining photos in the order that I want.
  5. Tag these photos with the “web” keyword (more about this here) for future reference.
  6. Export them from iPhoto with no resizing and where the filenames are based on the album name. This will export the images with numbers that correlate to the order that you have them laid out in iPhoto (e.g., temp-01.jpg, temp-02.jpg, etc).
  7. Use QuickName (or whatever you like) to remove “temp-” from the front of the filenames. I’ve found no way to get iPhoto to use only sequential numbers in the filenames (i.e., without a title preceding the number).
  8. Use Photoshop to batch-resize the pictures to the size that I want for the website (currently 500×375).
  9. Create a new folder on my webserver for the pics and drop them in there along with my Slideshow script.
  10. Think about a faster, more efficient way to do this.

Now, because I don’t need to use Photoshop for resizing, I can get rid of step eight and pretty much keep everything within iPhoto. I realize that this method is still a little long-winded — if you know of a faster, more efficient way that is both free and uses iPhoto, then by all means, please let me know (and no, iPhoto’s built-in “Web Page” export and the BetterHTMLExport plugin are not options). Come to think of it, I’m not sure that there is a better solution given the way that I present the pictures on my site, but I’m certainly open to suggestions either way.

I still need to redo a couple of sets on the photos page where I used iPhoto for resizing the pictures (before it was fixed and before I started using the method outlined above). I was actually in the process of doing this when, by some fortuitous event, I realized that iPhoto was now properly resizing images.

Loving the Alien

Sometimes I think I’m scared
Sometimes I know
I feel like making love
Sometimes I don’t
I feel like letting go
Maybe not
I feel like giving up
Is all we got

Sometimes is all the time
And never means maybe
Sometimes is all the time
Maybe

And I’m moving on
And I’m moving on (Sometimes I feel alone)
And I’m moving on
And I’m moving on

Sometimes I make believe
When we’re alone
Machines have taken hold
Can you get me to a telephone
It’s just the little things
You used to see
Am I still that man who makes you who you want to be

I never noticed
How lovely were the aliens
Lovely were the aliens
I never noticed
Lovely were the aliens
Lovely were the aliens

From Velvet Revolver’s Loving the Alien

A wonderful weekend

Sara flew out to my place last weekend — she’s leaving the states and heading back to Paris sometime early next year and I’m not sure when I’ll see her again. We had a great time, but needless to say, parting was incredibly difficult, moreso than we thought it would be. At the risk of getting too personal (which, as of late, I’ve become reluctant to do on this site), I’m not going to say anything more.

I put up a few pictures from a day we spent in San Francisco. Enjoy.

Mail.app and very large mailboxes

It wasn’t too long ago that I wrote about moving all of my e-mail over to Mail.app from myriad applications going back to ‘99. At that time, and as I mentioned in that post, I sorted the e-mail by year and sent/received. I’ve since gone the way of some others and removed the year from the equation altogether, so that now there are just two files: sent and received. These are not small files (14,000+ received; 11,500+ sent — not including mailing lists or school-related junk) and Mail.app has handled them without issue. Not once did it hiccup as I dragged and dropped mailboxes with 3,000+ e-mails into the main received box. In fact, I’ve yet to have any trouble whatsoever with the large files. The only real difference I’ve noticed at all is a slow-down in indexing time when you click on a mailbox– it’s trivial but noticeable. I was sold, until…

…I shutdown Mail.app and brought it back up. It was hosed. At least for a short while. For one thing, it took forever for it to “index” the files in the mailboxes — we’re talking over 10 minutes. What is more, nearly half of the e-mail that was marked as spam (more on Mail.app’s weakening spam detection in a later post), which was subsequently sent to the “Junk” folder, had reappeared in my inbox. I could find no rhyme or reason as to why some spams reappeared and others didn’t. Given that these spams were now marked as “Not Junk,” I had to go back through my inbox and remove all of them — manually — a daunting task when we are talking about almost a month’s worth of e-mail (since the last time I shutdown Mail.app).

Given that the only real advantage to using the one-file-for-everything approach is the ability to search all of your e-mail at once (instead of searching through mailboxes by year or whatever other system you’ve come up with), the benefits no longer outweigh the risks if you’re doing this with Mail.app; not when you face the possibility of having to weed out spam again and/or wait an indordinate amount of time to bring the application back up after prolonged periods of use.

I’m quite confident that Apple will correct these ‘problems’ in due time and will probably eventually move to the everything-in-one-file method where “virtual” folders are created using labels and whatnot (ala Evolution and now Gmail). Until then, I’m a little uneasy about having all of my eggs in one basket and might move everything back to the year+sent/received structure.

Monitor PageRank with RSS

I’ve just come across a very simple Perl script that allows you to monitor your Google PageRank through an RSS feed. While I don’t know why anyone would actually want to monitor such a thing (*cough* you can find my feed here), the idea is still pretty neat and a much better solution than using those “pagerank calculator” sites to check it manually (again, who does that?  :P). I realize that I could get this information through the Google Toolbar, but that requires both Windows (which I don’t use) and Internet Explorer (which you couldn’t pay me to use; well, maybe if you paid me a lot and I didn’t have to actually be connected to the Internet while it was open).

If you are looking to setup a feed for yourself, use this site to calculate the checksum value you’ll need (the site linked to in the original article no longer exists and so I had to find another one).

One could obviously take this simple code and port it to many other languages to provide similar solutions (e.g., maybe a shell script that would check for a change every hour and then e-mail you when a change is seen), but RSS is the way to go for me.