Misc Computers and Tech

Vista: Windows ME’s Successor

(Apologies if this seems a bit ranty, but it is a rant, so…)

About a month ago, I decided to buy a new computer to use as a home theater PC and backup file server. I opted for a Shuttle, and with it came Windows Vista Ultimate. I had already used Vista a little bit at this point, but not on a day-to-day basis, so I decided I would give it a chance.

It’s a month later and I’m ready to wipe the partition. Vista is Microsoft’s latest greatest failure. Not since Windows ME have I seen an operating system cause so many problems.

Crashing Applications

Let’s start from the base case: Running your applications. Sure a lot of third party programs are marked as being incompatible, but would you expect your device manager or notepad.exe to run without problems? You might be wrong. It turns out a lot of people, myself included, experience crashes in several pre-installed and third party applications. Sometimes it’s while you’re using it, but often just quitting the program causes Vista to think it has crashed.

This makes for an unusable operating system. I have no idea if the program I’m about to run will survive more than a few minutes. The computer is essentially useless, and there’s nothing I can do about it, aside from installing another OS. Now, maybe Service Pack 1 will fix this problem, but it never should have been a problem in the first place. Extensive testing should have caught this. At the very least, my manufacturer should have seen this and never shipped Vista with this problem.

Vista UAC

The Vista UAC, or User Account Control, is Microsoft’s answer to the security problems that plagued previous versions of Windows. It’s brilliant in that it creates an excellent illusion of security, aggressively prompting the user for any action involving the system.

The main problem with UAC, though, is that the user is being bombarded with dialogs. Now, think about what happens when you encounter a dialog. Often times, you don’t read it, you assume what it’s saying, especially if you’ve encountered it before. I know of several non-techy people who blindly click dialogs, and that’s where UAC falls apart. There could be a virus on the system and the user, having had to click through these dialogs time and time again, may not realize that this virus-activated UAC dialog was not caused by their own actions and click through it.

Some people have no idea what goes on in a computer and assume that if the system needs to do something, there must be a good reason for it. Since the UAC dialogs are a bit cryptic at times, I can see users thinking, “My computer wants to do this, it must have a good reason for it!” and proceeding to allow the operation.

The UAC dialogs are also pretty verbose. If you perform a file operation in a system directory, you’ll get 3 confirmation dialogs. The first to confirm you want to do this in a system area, a second to ask if you want to go to the admin confirmation screen (why, I have no idea), and a third to confirm that the whole operation is allowed.

Now, think about when you create a directory. You’re performing two file operations. First, the initial creation of the directory and second, renaming the directory based on the name you gave it. This common operation will punish you with six dialogs!

</rant>

There’s more I could say but I won’t. I’m really looking forward to Vista SP1 with the hope that it will fix a lot of these problems, because as of right now, this is a really unstable, frustrating OS. I think it has potential if they can get these problems sorted out, though.

Vista: Windows ME’s Successor Read More »

iPhone/iPod – The new standard mobile platform?

I’ve been living with a very basic Sanyo phone for many years now, and decided to finally upgrade. My main requirement was a real web browser, and the iPhone fulfilled that nicely. Besides, I wanted to be cool and get all the girls, and what better way to do that than to carry around an iPhone?

I’ll talk in another post about what I think of the device, but one thing struck me as I begun to play with this phone. Apple may have just set themselves in a position to dominate the mobile application market. If they choose to.

Now hear me out. Companies such as Sharp and Nokia have worked hard on creating devices (the Zaurus and 770/N800 respectively) based on open source software in the hopes of creating a developer base. While this worked in both cases to varying degrees (lots of third party apps for the Zaurus and lots of great GNOME/Gtk+ improvements and apps for the Nokia devices), they’ve both had problems in terms of market share. You’re just not going to get every teenager, every student and every businessman wanting one of them.

I love my Zauruses, my Nokia 770 and my N800, but having tried to explain to people in the past what makes them so cool is difficult. They kind of get it with the N800, that they can browse the web and run applications and all that. Most people, though, are still so tethered to the computer that they don’t know why they’d care.

But an iPod? iPhone? People care about that. It’s trendy, it’s sexy, it plays their music and videos. Yes, the N800 does that too, but the out of the box experience is very different, and well, the kids just want an iPod. My little 7 year old sister has no idea what an “mp3 player is” but knows damn well what an iPod is.

Web development

Now, where Apple did well was to bundle both the iPhone and iPod with Safari and to put up guidelines for how best to optimize your websites for the iPhone/iPod form factor and visual style. Since then, many sites have provided optimized versions that work quite well, including Amazon, Meebo, NetVibes, Facebook, and Google Reader. And this all turns out to be quite easy to do, especially with Joe Hewitt’s iUI JavaScript framework for the iPhone.

So, we now have a de facto standard for miniaturized AJAXy web UIs for mobile devices, do we not? I don’t see anybody else developing for other mobile devices en mass in such a way that allows all this fancy web 2.0 stuff. What’s great is that aside from the CSS 3.0 support needed for some of the look and feel of these sites, and the viewport meta tag, they’ll work in any browser, mobile or otherwise.

Native applications

The one thing that these other devices do have over the iPhone/iPod is that you can actually develop applications for them. When the iPhone was announced, we were told that they would not be opening up support for third party applications. Of course, it didn’t take long for people to figure out how to jailbreak the device and install custom applications.

Now anybody with an iPhone can easily put their iPhone in a state where they can install custom applications on it. The installer that ships with the modern jailbreaking software is, from a user’s point of view, surprisingly nice and easy to use. It even handles upgrades for you effortlessly.

The pieces are now together for developers to create applications and for users to quickly find them and install them. The only gotcha is that this is not officially sanctioned by Apple, and we may find that this will break in future firmware updates.

If Apple was to reverse their stance and provide an open framework for developing applications for the iPhone and iPod, they would make these devices much more tempting to a wide variety of people. The gaps left by Apple (proper Exchange support, calendar synchronization, document publishing, instant messaging, etc.) would be provided by third party developers and downloaded by possible millions, legally. New companies would form to develop applications. Existing companies would port applications over. Life would be good.

Why didn’t Apple do this from the beginning? Maybe they’re just against a community of developers forming around this product, but I have a hard time believing that. Maybe it’s pressure from AT&T, but you can develop for other phones.

My hunch is that they just didn’t have enough time to do it right, given how much work it was just to get the thing out the door in the first place. If so, perhaps we’ll see official approval for third party application development someday.

iPhone/iPod – The new standard mobile platform? Read More »

Why’s there a little person in my button?

I was walking around the new VMware Promontory campus today and found this button.

Little Person in a Button

I’m tempted to press it, but I’m not sure what it will do. Send little stick figures to attack me? Stick me in a little house?

Any ideas?

Update: My apologies to anyone who couldn’t comment. My cache plugin cached the captcha. Oops. That’s been disabled now, so try again.

Why’s there a little person in my button? Read More »

New Toy: Panasonic DMC-TZ3K Digital Camera

I received a Sony Cyber-shot DSC-P71 digital camera about four or five years ago as a present, and it has performed well over the years, providing me with lots of decent quality shots. However, the lack of such features as image stabilization and auto-rotation indicators, plus the need for AA batteries has had me thinking of purchasing a new camera. I didn’t know when, or which camera to buy, but today I stepped into Costco and had an overwhelming urge to survey the camera section.

The new cameras were pretty cool, all with features that my poor little DSC-P71 couldn’t begin to match. I was tempted by the newer Cybershot they carried, but I didn’t really want to give Sony much more of my money, nor did I want to deal with Sony Memory Sticks any longer.

I was about to leave when I saw a stack of attractive camera boxes off to the side containing my newest little toy, the Panasonic DMC-TZ3K. I made some calls and had people read a few reviews for me, and talked to my uncle who was there about it. He was fortunately familiar with this camera, and after discussing it, I decided to buy it, figuring I could always return it if I didn’t like it.

I’m not returning it.

The basics

I’ll get the basics out of the way. I paid $320 for this camera. It’s a 7.2MP camera with 10x optical zoom (yes, 10x optical) and 4x digital zoom on top of that (making a grand total of 40x zoom). That is, unless you are taking a 3MP photo and have Extra Optical Zoom enabled (which extends your optical zoom to 15x), in which case you’ll have a grand total of 60x zoom. They’re not kidding around with the zoom here.

The LCD is 3 inches. There is no viewfinder, which is a shame, but the LCD works pretty well in the sunlight (especially with its “outdoors” mode enabled). The camera takes SD cards (which the box does not indicate, oddly enough). The camera features various auto-focus modes and image stabilization. Pictures can be taken in 4:3, 3:2, and 16:9 aspect ratios. Videos can be taken in 640×480 or 848×480 resolutions at 30fps.

The camera is offered in three colors: Black (DMC-TZ3K), Silver (DMC-TZ3S), and Blue (DMC-TZ3A).

Alright, that’s all cool, though most of it is what you’d expect. Now on to my favorite features.

Scene Modes

The DMC-TZ3K offers two independent Scene Mode settings on the mode dial, allowing quick switches between the two. The Scene Mods offer presets for such things as exposure, color temperature, etc. Included settings are Portrait, Soft Skin, Self Portrait, Scenery, Sports, Night Portrait, Night Scenery, Food, Party, Candle Light, Baby 1, Baby 2, Pet, Sunset, High Sensitivity, Starry Sky, Fireworks, Beach, Snow, Aerial Photo, and Underwater.

Did you notice the really odd ones in there? Self Portrait? Aerieal Photo? Baby 1, 2? Pet? I’ll go into a few of these.

Self Portrait makes it easier to take a self-portrait of yourself. The self-timer light on the front will flash if the camera doesn’t have a good auto-focus on you

Aerial Photo is pretty easy. It makes pictures taken out of an airplane window much nicer. I haven’t tested this, having not been in an airplane since I bought this this morning.

Baby 1, 2, and Pet are interesting, and will lead me into Travel Settings and Date Stamping. Before taking a picture with one of these modes, you can specify the birthdate of the baby or pet (it will remember the last saved values). It will then adjust the settings to take better pictures of the baby or pet and display their current age (to the day). The data is associated with the picture, but not included in the image, though it can later be Date Stamped onto the picture or printed along with the picture.

Travel Settings

This camera makes it easy to keep track of what photos were taken when during a vacation. You can set the start date of your vacation and the timezone you’re in (or travelling to). The pictures taken while the vacation mode is set will be associated with that time and timezone. The LCD will also show you the current day of the vacation (when taking a picture) or the day of the vacation the picture was taken (when viewing older pictures). This can then be Date Stamped onto the picture, much like the Baby and Pet scene modes.

Date Stamping

The camera stores some metadata along with the picture. Some pieces of data (current age, current day of vacation, timestamp) can at any point be stamped onto the picture (either the original or a copy of it). If desired, the camera can stamp it onto the picture as it prints without touching the actual file on the camera.

Voice Recording

Another piece of data that can be associated with pictures is a voice recording. Ever take a picture and forget what it was about? Now you can just choose to add a little voice memo to a picture and play it back later. I’ll probably be making extensive use of this.

Clipboard

Okay, this is probably one of my favorite features right here. Often times we’ll be designing something on the whiteboard at work and we’ll want a copy for later reference. Of course, the best way to do this is to just take a picture. The problem with that is that you then have to sort through your pictures on the camera trying to find the whiteboard picture later on.

When the Clipboard mode is selected, any pictures taken will be stored in a special area for later access. You can browse your list of clips (whether they’re whiteboard photos, documents, maps, etc.), associate voice recordings with them, or whatever. The camera settings are automatically adjusted when taking these photos so text on a whiteboard or on a piece of paper becomes very readable.

They took this feature a step further by making it more useful to those who take photos of maps. You can specify on a per-picture basis the zoom level and position to display, so that when you open up the clip of a map, you’ll be positioned directly over your area of interest, zoomed in to the street. It’s like Google Maps, except not quite as useful.

LCD, Exposure and Photo List Modes

The LCD is quite large (3 inches) and they took advantage of this by providing some nice features. Various display modes can be quickly activated to show all the basic information (battery life, exposure setting, etc.), one of two alignment/positioning grids, an image histogram, or nothing but the photo.

The standard LCD brightness setting is good for indoors, but when outside in the sun, sometimes you need something more. A quick button press will let you turn on the Outdoor brightness setting, making it far easier to see in the sun. They also offer a “High Angle” mode, allowing the LCD to be easily viewed when the camera is a foot above your head.

Now, this one impressed me. Maybe it’s standard nowadays, but I certainly didn’t have it. Ever take a picture and go “I wish I took a darker/lighter version of that?” Yeah, well I have. This camera offers an option for quickly taking three successive pictures in three exposure levels, allowing you to sort out which you like best later on. I’ll probably be making use of this all the time.

I usually keep a lot of photos on my camera, as I’m quite bad at spending the 10 minutes to dump them on the computer and reformat the stick. So when I want to find a photo I’ve taken, I usually spend a good amount of time looking. This camera eases that just a bit by offering a calendar photo list mode. It will show a calendar view of the current month and mark each day a photo was taken by the first photo taken on that day. Clicking on the day will display all the photos that were taken that day.

If you need to view and compare two photos side-by-side, the camera lets you easily do so. Simply choose the option and rotate the camera. You can then select the photo you want on top and the one you want on the bottom. This is really useful if you just can’t really decide which of two photos you’d rather keep.

In short…

This camera rocks, especially for the price. There’s a lot I didn’t talk about, like the image stabilization and anti-blur (which as far as I can tell works pretty well). I’ve only used this for half a day now (though I’ve played around quite a bit with it, to the point of needing to recharge the battery again). If anyone has any questions, I’ll be glad to answer them in the comments. Likewise, I’d love to hear what other people think about this camera.

New Toy: Panasonic DMC-TZ3K Digital Camera Read More »

Pipe into your netlife

Yahoo is doing a lot of interesting things these days. While Google gains a lot of the attention when it comes to search and web applications, Yahoo should not be ignored. del.icio.us and Flickr are of course two widely popular services, but they have a few useful utilities floating around their developer site.

There’s one tool in particular that I found tonight that has already proven useful. Pipes. Pipes allows a user to quickly put together a simple set of pipeline filters for turning various forms of data into an RSS feed and accompanying JSON file.

Such forms of data include user input (validated as a date, geographical location, number, text or URL) and web-based input (Flickr pictures, RSS2/Atom feeds, JSON/XML data, Google Base listings, Yahoo! Local searches, and Yahoo! search results). This data can be fed through several layers of pipes (including back into another Flickr pipeline and such as query input). The pipes can transform the data, walk through each feed item and modify or extract data, combine data together, sort, remove duplicates, apply regexes, translate languages, and so on.

This can be pretty powerful. While still a young project, many users have already published pipes, myself included. With the increase in API-enabled web services, I can only expect this to become more powerful, with work. It’s just a little tricky coming up with actual useful applications.

So I played around a bit and started to experiment with what could be done. I ended up with a couple of simple, but very useful pipes. One thing I have wanted for the longest time was a way to see feeds from several Planets in one listing (for Netvibes, since space is precious), without having to deal with duplicate entries. Pipes made this all too simple.

Unique Planets Pipe

I’m feeding several feeds into a Unique operator, saying to filter based on the title. I then output that. That’s all it takes. You can see the results and even add the RSS feed.

I then took this one step further and decided to write a quick pipe for searching through the planets. Now, pipes are reusable, so I was able to incorporate the Unique Planets pipe into this. This was fed into a Filter, using a couple of text inputs (for a text string and a name) as parameters to the filter. The screenshot below will clarify this. The result is the ability to quickly search four planets by name or content.

Planet Search Pipe

You can play with the results. Go ahead, give it a try.

Pipes can be published for other people to use, or they can be used privately. Private pipes are great when you want to deal with data that can’t easily be queried, such as your Twitter feed or your own Flickr feed.

Pipes are also quite useful when you have a small web application that needs to deal with several other feeds, filtering results or combining data from multiple sources. Sure, you could write this all yourself, but it’s far easier to change and maintain a Pipe than a whole bunch of code.

If you want to play with pipes, I recommend just jumping in and playing. Also take a look at some other people’s pipes, and you may want to browse the tutorials. For some starter ideas, try making a pipe that searches your local area for sales or singles or something using Google Base and Craigslist, or one that searches all your favorite blogs for a certain keyword, or maybe something that keeps track of your friends’ blogs and Flickr posts.

Now, pipelines are hardly a new concept. Several programs offer them, including some development environments that rely solely on pipelines for development in order to quickly produce simple programs. What makes Yahoo!’s Pipes interesting is that they make it very easy for almost anybody to quickly build a pipe to modify or search all kinds of data on the web that people actually use. This makes them more immediately useful to many people, and of course Yahoo makes it dead simple to start out.

What would be useful in the future, aside from adding native support for more services, would be to output data in other formats or somehow easily lay out information onto a page from one or more feeds. The project seems pretty young though, so I’m sure in time, this will mature into a much more useful project, both to developers and (certain) end users.

Pipe into your netlife Read More »

Augmented Reality

An article appeared on Digg.com yesterday talking about a possible leak about the Nintendo Revolution/Wii. It referred to a video that was linked to in the comments. This video gave a demonstration of Augmented Reality, and while this technology is only rumored to be in the Revolution, it’s still fascinating to watch.

Augmented Reality basically allows for real-time merging of a live video stream and 3D graphics in such a way that the 3D objects can in a sense react to changes in the real world. Virtual tanks running around a real table and bumping into things, for instance, or holding a weapon in your hand and walking around with it. Now if only they had a good way of projecting this out into the real world without bulky, expensive equipment.

It will be very interesting to see if any of these rumors about Augmented Reality integration in the Revolution are true. E3 is coming up, so we’ll finally know what Nintendo is actually up to. Hopefully it will live up to expectations.

Augmented Reality Read More »

*CLANK* *CLANK* *CLANK*

Ah, the sound of a dead drive. That’s what my 200GB Western Digital drive said to me this morning as I rebooted. This was after I realized that I couldn’t access any of my source code. dmesg was yelling at me about having trouble accessing /dev/hde. This drive contained my source code (almost all of which are on remote SVN or CVS repositories, of course) and all my media (audio, video, images).

I just chuckled.

A very short while ago, a matter of weeks really, I had this bad bad feeling that I was going to lose all my data. No real reason, but I started getting very paranoid about it. I looked around and after factoring in cost and laziness, I picked up a 1.0TB Buffalo Terastation, which is a cute little machine. It’s a PPC-based Linux RAID-enabled NAS, basically, with SMB, FTP, and AppleTalk support. After RAID5, I was left with about 700GB. I immediately copied everything I truly cared about to it (media files, basically). While most places sell this for $1000, I found it just over $900 at Comp-U-Plus.

It arrived and I set it up. I have to say, I like it. It just works. It has gigabit ethernet, for when I finally get around to upgrading my network. You just set it up over the web. Users, groups, permissions, mounts, RAID configuration, formatting, diagnostics, optional periodic status e-mails, etc.

One nice thing about the Terastation is that it has 4 USB ports. You can connect a printer to it and have network printer sharing. You can also connect up to 4 USB hard drives and set up a second RAID array, expand the current array, or back up your array. Nice and expandable. It also has support for hooking up to a UPS system, so it can shut down gracefully.

So with the Western Digital drive dead, I shut down, pulled the drive, and rebooted. I then proceeded to play some music and think to myself how glad I was I bought this thing earlier this month.

Now, the Terastation isn’t perfect. My main complaint was that I couldn’t use symlinks, due to SMB not supporting them (or at least this particular version?). That wasn’t a huge deal, considering it’s mostly media files, but I wanted the option, damnit!

I looked around and found a coupel sites on hacking the Terastation. The main one with all the info is a nice wiki at terastation.org. I went to the section on gaining root access and saw that he soldered dip switches onto his Terastation’s motherboard to make the serial port actually usable. I wasn’t ready to do that just yet. Or ever. Maybe if this thing was a few years old and I had another solution.. Maybe.

I checked back today and looked over the firmware pages. It turns out that Buffalo, the makers of the Terastation, provide a zip file with a image.dat, which is just a password-protected zip file containing a tarball and some other stuff. The passwords are available at the aforementioned wiki. The wiki also has some nice instructions on taking an existing firmware image, adding a sudoers file and an ssh server, and repackaging it.

Feeling stupid, I decided to give it a try. I figured that even if I bricked the Terastation, which I very much doubted I would do (given that I was just installing another server and a sudoers file), I would at least still have my drives, so no data loss. I packaged up the new image, compared the old and new tarballs a few times, and then put it back into the firmware zip file. I went over to my Windows machine and ran the updater. It found my terastation and, after a few moments, I clicked the button.

And waited…

And waited…

They really need a little thing underneath the rarely updating progress bar saying, “Don’t panic, everything’s okay, we’re just really slow. Get some coffee, it’s alright.”

I ran back and forth between my work room and the living room and watched as the Terastation rebooted itself a few times (as was documented in the README). Finally it stopped doing that. I stared at it, daring it to blink. It didn’t blink, but it didn’t have the Red LED of Doom, either. I went back to the Windows machine and it happily indicated that the firmware update was successful!

I ran back into the work room and pinged the Terastation. It ponged! I mounted the shares… I could access my files! The worry was over, but the shaking continued for a few minutes still. One last test… I tried to ssh in.

admin@OLYMPUS:~$ 

Huzzah! Life is good.

And now that I have a little hackable Terastation to play with, I think I’ll play with the NFS packages available for this. More to follow, maybe.

Oh, and if anybody has a Terastation and wants a known working hacked 1.08 firmware file, let me know. If it doesn’t work, though, I claim no responsibility whatsoever.

*CLANK* *CLANK* *CLANK* Read More »

Gmail

Being an active user of Blogger.com when Google purchased it, my brother was offered a gmail.com account roughly a week ago. As part of this, after several days of use, he was given the ability to invite two people. One of the people he chose was me.

So far, I’m quite impressed with what Google has done here, though not surprised. When Google sets their mind to something, they seem to usually do it right. The interface is very clean, and nearly everything you see is something you will regularly use. That is quite different from the webmail interfaces I’ve used previously.

I use mutt for all my e-mail, as I can simply SSH in from school and send mail or check discussions. Another reason for using mutt is the keyboard shortcuts. I can get around pretty quickly without using the mouse. Those two reasons are why I currently do not use Evolution for all my e-mail, and the keyboard issue is why I’ve never used webmail systems.

Gmail solves the issue of using my e-mail remotely, which isn’t surprising. It is, after all, a webmail system. What did surprise me was the fact that it has keyboard shortcut support, and let me tell you, it works well. I can quickly jump to my inbox (g, i), read a message (enter) and all its threads (or in gmail terms, “conversations” — more on this in a second). If I hit r, it lets me reply to an e-mail. Hit c, and I can compose a new e-mail. There’s far more than that, and I would link to the list of shortcuts, but it appears you must be a gmail.com subscriber first.

E-mails are represented in an interesting fashion. Instead of threads, you have “conversations.” These look like stacked cards. You can see them below:

https://web.archive.org/web/20070127012349if_/http://people.freedesktop.org:80/~chipx86/gmail_1.png

The first unread e-mail in a conversation is presented first. Each e-mail shows the name and e-mail address of the sender and the date/time sent, or how long ago it was sent. If the e-mail is partially covered, it will show a snippet of text from the e-mail. Multiple e-mails can be shown at once, or you can hide all but one, if you choose. It’s flexible, and it works. If you’d rather see the quoted text from the previous e-mail, click the little “Show quoted text” link and it’ll just unfold. No reloading or anything silly.

Conversations take up a single entry in the Inbox. You can see a list of the contributors in the conversation, how many unread messages it contains, and then the label (more on that in a sec), the subject, a snippet of text, and the date/time info. When a conversation has a new, unread e-mail, it will appear at the top of the Inbox. Clicking it will bring you back to the conversation view with the unread e-mails unfolded.

Gmail has a hidden frame or something that it reloads regularly. When it does this, it checks for new mail. If it finds new mail, it will update the interface. No more periodic reloading of the entire page, or manual reloading.

Labels are one of gmail’s ways of organizing e-mails. A label is like a folder, except that multiple labels can be assigned to an e-mail. You can quickly set labels on a per-e-mail/conversation basis, or through filters. Clicking the label in the Labels box on the left of gmail’s interface will display all e-mails with that label. For quick reference, each e-mail will have its attached labels prepended to the subject.

Stars are another method of organization. If there’s a particular thread you wish to follow, click the star next to it. It will automatically appear in your Starred mailbox (keyboard shortcut g-s).

The search features work wonderfully, and should be included in every e-mail client. You can put in a simple search for anything and get immediate results, or click “Show search options” to be more specific.

The overall interface for gmail is lightweight, and very responsive. I never find myself waiting for anything, and I can get around to any e-mail effortlessly. It doesn’t behave like a webpage, rather it’s more like an actual application.

Like other e-mail applications, gmail has a handy Check Spelling option when composing conversations. It doesn’t check on the fly, but rather when you wish to check, you click the little link. It’ll replace the textbox with some custom javascript control of some kind, and highlight all misspelled words. The traditional pop-up menu with suggested replacements and an option for editting the dictionary is available for all misspelled words. When finished, click “Resume editting” and you’re back in business.

https://web.archive.org/web/20070203092306if_/http://people.freedesktop.org:80/~chipx86/gmail_2.png

For those who keep address book entries (Gmail automatically helps with this a bit), Gmail also provides auto-complete in the To: box.

https://web.archive.org/web/20061025085526if_/http://people.freedesktop.org:80/~chipx86/gmail_3.png

Finally, I’d like to comment on the ads that struck so much controversy. For those who don’t know, when you read an e-mail, “Sponsored Links” appear on the right of the e-mail box. These are often related to the e-mail in some way. For example, a conversation on gaim-devel talking about various IM and networking protocols produces ads for “Tcp/ip Protocols” and “Network Protocol Poster.” I haven’t found them to be annoying, and at least right now, Google doesn’t put any ads in the e-mails you write.

Underneath the Sponsored Links is a list of Related Pages. Sometimes. These don’t always show up, but when they do, they’re usually relevant in some way. However, I think that they may need some work.

Overall, I’m very impressed with Gmail. I will be using it for some time, though it probably won’t be my primary e-mail interface. I figure I’ll subscribe some of my listservs to it and use its powerful search capabilities. And you’ve got to love that “You are currently using 0MB (0%) of your 1000MB.”

Gmail Read More »

Adventures with the MS Office Keyboard

For the past few years, I’ve been using the Microsoft Office Keyboard. It was a gift from my mom, as my previous keyboard stopped working one day. Now, I’m sure a lot of people’s first thought is that this keyboard sucks because it’s from Microsoft, but so far, I’ve really enjoyed it. I have the Application Left/Right buttons mapped to switch desktops quickly and easily, and the Cut, Copy, and Paste buttons for making a window sticky, shading it, and launching a terminal. Works well enough.

Until just the other day, I had this all configured through .xmodmap and my window manager settings. However, in GNOME 2.5.x, the keyboard settings are apparently supposed to be controlled by the Keyboard control center applet, and my xmodmap settings are now ignored. My latest build of gnome-control-center CVS even shows a dialog saying that the xmodmap settings will be ignored.

So, I launched the keyboard control center applet and selected my MS Office Keyboard from the list. Perfect, I thought. That is, until I learned that my End key no longer worked, and none of the shortcut keys on the keyboard did what they were supposed to. I put it away for awhile and started manually using xmodmap and resetting the shortcuts every time I launched GNOME, until I had time to actually fix it.

The other day, I decided to fix this. The problem was actually in XFree86’s inet keyboard symbols file, in the Microsoft Office Keyboard definition. After poking around and learning how these files were constructed and what the <I#> and <E#> codes meant, I finally patched up my definition. It was an almost 100% change, so I’m assuming that either the guy who wrote this entry was on crack, or that it was for an older version of this keyboard (unless it’s a newer one, but I kind of doubt that).

I’m mostly writing this so that if any Linux users with this keyboard want it set up properly, they’ll have the information available. I have a replacement inet file available that works with my keyboard. I’d be curious to know if there are MS Office Keyboard users out there that have their xkb settings set to use this keyboard who aren’t experiencing problems.

Adventures with the MS Office Keyboard Read More »

Best Bugs

I was having a chat with my brother earlier about software bugs, and I started trying to remember about the best bugs I’ve encountered in software I’ve had a hand in. Below are my list of favorite bugs that I found entertaining. I’m kind of curious as to what other people would choose for their favorites.

My favorite bug would have to be Gaim’s flying buddies. When the rewrite of the Gaim buddy list was commited, in 0.60, we had a fun little bug where the drag-and-drops weren’t completed. This triggered a Gtk bug (I think it was Gtk’s bug?) where the nodes in the GtkTreeView would fly around the screen a bit from point A (where the node originally was) to point B (where the node is now). When the buddy list was off-screen, this made it particularly fun. As these were flying around, we quickly named them Flying Buddies.

Between classes one semester, I wrote a Snake game for my TI-89 calculator. It was rather easy to do, but I had an off-by-one error that generated what I called “snake droppings.” When the snake ate one of the blocks on the screen, it would of course extend. As soon as the tail started moving again, it would leave a pixel or two behind, hence the name.

My third favorite bug was during the development of my BilliardZ game for the Sharp Zaurus SL-5×00 PDA. Occasionally when hitting a ball, a big black hole would open up on the board, and the ball would disappear in it. Playing pool with black holes littering the table is a little inconvenient. I’m still not sure what caused it, but I ended up fixing it.

Speaking of bugs, something messed up on gnome-blog. I’ve spent over an hour trying to get it working again. Works now though.

(Update: I somehow lost the top paragraph. I don’t know how, but it’s back. That should provide more context.)

Best Bugs Read More »

Scroll to Top