Sunday, March 23, 2008

Thinkpad arrived, 64-bit Linux is a pipe dream

My t61p arrived, and I have discovered that 64-bit Linux isn't ready for primetime in my book. Specifically, on Ubuntu 7.10 (Gutsy Gibbon) amd64, I could NOT get suspend to work at all. Actually, I could get it to suspend, but it refused to resume. I tried 8.04 (Bardy Heron) amd64 Beta as a live CD, and it appeared to have the same problems as Gutsy, so I didn't bother installing it. I've settled on Hardy Heron 32-bit, and things work MUCH better. Also, with 64-bit Gutsy, I had some strange problems, such as:

- the machine started to slow down for some unknown reason within the first hour of running.
- I could reliably lock up the system by trying to connect to a specific wireless network (!)

So it only sees about 3.1GB of RAM, which I'm going to convince myself is just fine. The display completely ROCKS at 1920x1200, and it's smokin fast. Plus, suspend and resume work just great.

Thursday, March 13, 2008

Maybe I'm the only person who likes a Thinkpad more than a Macbook

So I got my Macbook Pro in August and have been using it (pretty happily) as my primary laptop ever since. But then this week I've been using my older Thinkpad with Ubuntu and it has shown me some things that I really don't like about the Macbook Pro independently, and some things that I like better about the Thinkpad.

Specifically, the things I simply don't like about the Macbook Pro:

1. It runs HOT. Not quite surface of the sun hot, but too hot for your lap. And the vent is on the bottom (?), so the longer it's on your lap, the hotter it gets.

2. That only-slightly-different, but completely freaky feeling Mac keyboard. There are no single-button pgup, pgdown, home, end, or delete keys. Maybe I use those keys more than most people, but having to use both hands to delete (Ctrl-Backspace) doesn't seem right.

3. That single mouse button just doesn't do enough for me. Granted, I often run a Windows VM and need to use Ctrl-RightClick in it. And I do have the trackpad configured to send a right-click when I have 2 fingers on the pad and click.

4. The wrist-rest area isn't very comfy at all. Maybe this is just in comparison to the Thinkpad, but the hard edge of the front are just uncomfortable at times (whereas the Thinkpad edges are angled down and really comfy).

The things I don't like about the Macbook Pro as compared to the Thinkpad:

1. The keyboard and keys don't feel as sturdy as the Thinkpad. The TP really has what I think is the best keyboard out there.

2. The whole computer feels less sturdy than the Thinkpad. For example, the top/screen flexes/rocks a couple of millimeters when it's closed.

3. No option for a second hard drive. I rarely use a CD/DVD drive, so an external one works just great for me. The Thinkpad has the kinda neat UltraBay Slim, which (with an adapter) supports a second hard drive or battery. So with Samsung's new 500GB 9.5mm 2.5 inch drive arriving in a couple of weeks, I'll have 700GB of on-board storage, which should last me quite a while.

4. Bunch of ports that are of no use to me. All of my peripherals are USB 2.0, and I often have to give presentations on projectors that only support a VGA connector. So I don't get any benefit from the faster/newer firewire and DVI ports. It actually forces me to carry around the DVI to VGA adapter along with the laptop.

The things I don't like about OS X:

1. OS X has some strange features that my brain can't deal with easily. Other than the strange key combinations needed, the main thing I can point to is the fact that you can't create a new file in Finder.

2. While based on BSD Unix, it's still a proprietary OS, with a smaller support community than, say, Ubuntu. Also, there's no free version of VMWare that runs on OS X. I'm all for paying for software (I have so far paid for VMWare Fusion and VMWare Workstation for both Windows and Linux), but it would be nice to have a free version, like there are available for both Windows and Linux.

3. Everyone I've talked to or read about could not successfully upgrade from Tiger to Leopard. All of those people eventually just started from scratch and then were happy.

4. Google's Picasa isn't supported on OS X. iPhoto is great and all, but I really like Picasa.

The things I don't like about the Thinkpad:

1. The OS, and I'm gonna fix that by installing Ubuntu 64-bit (whether I install 7.10 [Gutsy Gibbon] or 8.04 [Hardy Heron] will depend on when the laptop arrives and when 8.04 is actually shipped).

That's it. For my uses, I like EVERYTHING physically about the Thinkpad. It's comfortable, sturday, has the best keyboard out there, has all of the ports I need, actually has a better resolution (1900x1200) than the 15 inch Macbook Pro, lets me get close to 1TB of disk in it, and runs VERY cool. The Macbook Pro is a nice looking machine, and I'm certain that it's great for a lot of people (I'm actually going to keep mine as a backup machine). But for me, none of the Macbook's physical design is a benefit. And while the OS is better than Windows, I find that it's not as good as Ubuntu. So I'll post again once the new Thinkpad arrives and I get switched over to it.

Thursday, January 24, 2008

Another new PC - Vaio UX390N

If you read this blog you know that I like mobile technology. I have the Asus Eee PC 701 and still love it, a Macbook Pro (awesome), a slew of BlackBerry devices and now a Sony Vaio UX390N Ultra Mobile PC.

The 390N is 1.1lbs with the standard battery. It uses a 1.33GHz ultra low voltage Intel Core Solo. One of the best parts is that it uses a 32gb Solid State Drive instead of a rotating hard drive. 32gb is adequate storage since this not my "primary" PC. I do have my email setup on it and a few other things - but still have 20gb free. I replaced the Windows Vista Business install with XP Pro - I don't care about hand writing recognition.

On the device itself is Wifi (802.11 a/b/g), WWAN from AT&T (very nice if you are already a subscriber), keyboard, touchscreen, pointer style mouse, 2 cameras, a fingerprint reader (I love biometrics, I don't have to type a password anymore), USB port, Memory Stick port (i wish it was an SD slot) and headphone/microphone jacks - of course there is a power port too. The included docking station adds 2 more USB ports, power, firewire, ethernet, VGA out. S-Video.

Using an Ultra Mobile takes a little time to get the handle on it. The keyboard is nice and if you are a BlackBerry user - you shouldn't have any problems. Some people say the keyboard stinks or needs improvement - but I like it.

Most of the time I use my Macbook Pro for software development and testing with 3 or 4 VMWARE virtual machines running at one time. Even now, I am using the UX390N while the Macbook is doing something else.

Best thing about the 390N, it's a real PC - no compromise on functionality and the weight. It comes with a protective case that could realistically be worn on a belt - but I'm not that geeky. The built-in WWAN is very convenient, it's still EDGE service - i get about 225k connection speeds, but for web based email and pop/imap services along with even remote desktop connections - it's OK. It's not a cable modem, but the speed is workable. AT&T did some upgrades to their EDGE equipment to maximize when the iPhone came out.

I bought the extended battery which increases the weight about 4 ounces, but it still fits in the same case and fits in the docking station. The battery life was about 2.5 - 3.0 hours on the standard battery when set to "Performance" power settings (I won't sacrifice speed for battery). The extended battery is giving me over of 5 hours, I dimmed the screen to 50% and got over 6 hours, some people have reported 9 hours - but even at 5 hours that's enough for me to use it to watch movies on a plane from Columbus, OH to Phoenix, AZ and still have an hour left. Not to mention I can actually use it on a plane, that time is no longer dead (non-billable) time - I can catch up on my documentation. With my Macbook and event the Asus Eee PC my elbows end up in very weird positions.

I got my UX390N from www.woot.com the price was awesome - check them out every day for a new deal.

Wednesday, January 23, 2008

The BlackBerry Pearl is a great smartphone

I just got another BlackBerry (8130 with Verizon) after using a Windows smartphone for a year, and I can tell you that the BlackBerry platform just rocks.

If you're considering a Pearl, I'm sure you've read mixed reviews about the SureType non-QWERTY keyboard. In my opinion, the thing works just great. Its predictive typing is really amazing - it learns new words from your contacts and your email. I've had some small problems with a couple of words, but really no more problems that I've had with my Treo. Also,

It's niiiiice and small. It's a nice break to have a normal-sized phone that can do everything I need. I was worried that the screen might be too small, but it's not. It's a great size, and superbly crisp. 

In my opinion, there's really no comparison with WM5 (I haven't used WM6). The BlackBerry suite of applications works amazingly well. The way that it highlights any phone number (for one-touch dialing) from any application is the way things SHOULD work. And the trackball is a great input mechanism. And RIM just announced today that an update this year will allow you to edit Word, PowerPoint and Excel documents. But even without that ability, the BlackBerry works just the way I want it to.

Thursday, January 10, 2008

How to learn new computer-related skills

I teach a lot of computer classes and deal mainly with people in IT departments, and I've found that a number of computer professionals actually have difficulty learning new computer concepts. I've thought about this quite a bit, and I have some pointers that may be able to help in these cases. There's definitely some hard work that's required, but it pays off as new concepts become easier and easier to acquire.

1. Learn some commands.

Windows and and all UNIX/Linux/BSD variants have a command line interface where you can type in commands to perform different operations. In Windows, you can run commands from the "command prompt" (aka "command.exe", "cmd.exe", "the DOS window", "command shell"). In UNIX variants this is called also called the "command prompt" (aka "the shell", "a terminal window", "a shell window", "console", "console window"). In Windows you can get information about a number of commands by typing "help" at the command prompt. On some flavors of Unix you can do the same thing, but mainly in Unix you use the 'man' command to get information on a particular command.

Your goal here is to learn how to read the help information well enough to be able to run any command. Some common commands you want to learn first are:

Windows

dir
cd
nslookup
move
copy
ping
telnet
ftp

UNIX

ls
cd
nslookup
mv
cp
ping
telnet
ftp

To find additional commands, you can look in the C:\Windows\system and C:\Windows\system32 folders on Windows, and in the /bin and /usr/bin directories on UNIX. Once you find a command, you can get more information on it in one or more of the following ways:

Windows

command /?
command -?
help command

UNIX

command -?
command --?
command -help
man command

2. Learn some programming language

This may sound weird to many of you, but there are quite a few people in the computer industry who don't know even one programming language. To have an idea about how computer programs work under the covers, you MUST know at least one programming language.

It doesn't matter which one you pick, but some are definitely easier than others for different reasons. Some languages need to be compiled, while others don't, and some languages can be run directly in a browser. So the language I would suggest that you learn first is ECMAScript, aka JavaScript (its previous/current name) or JScript (this is the MS-specific version understood by Internet Explorer). The reason I like it is that you don't have to compile it and you can run it directly in a browser. It doesn't natively have much eye candy, but that's not my fault. The goal is for you to figure out how to use the language.

3. Learn how to use an API in that programming language.

After you learn a programming language, you need to learn how to access other functionality from within your programs. Normally in ECMAScript an API is available as one or more objects, with one or more methods and attributes that can be used. For example, when you use ECMAScript in a browser, the browser makes the "document" object available to your program. This object supports methods and attributes that you can use to perform different functions. For example, you can use the following code to set the browser title of your ECMAScript document:

document.title = "foo";

See, easy as pie. That's the easiest case; you want to challenge yourself to find other APIs to use so that you're comfortable with the whole concept.

5. Learn another programming language.

Now that you know one way of doing things in a program, you need to learn how to do things another way. You may have some ways that you ALWAYS do things, but that's not a good attitude to have when you want to learn something new. You need to learn how different languages handle different things (like passing data, graphical components, event handling, etc.). A language that seems to be getting some traction these days is Jython, so that's one I might recommend. Jython is, to me, what you would actually expect "JavaScript" to be, as it allows you to access Java objects from a scripting language. I would also recommend Java itself as this second language.

6. Learn (AND IMPLEMENT) something new in any of the above.

I've seen many people who think they should be able to learn a new concept by simply reading about it. This is true in some cases, but not in nearly as many as most people think. You need to read about some new function and actually put it to use somewhere. For example, to learn the basic concepts of AJAX, I wrote a small ECMAScript that used the XMLHttpRequest object. I could basically understand the mechanics of it just by reading about it, but actually writing a small application to use it really taught me, with a very small amount of effort, a whole lot about AJAX.

7. Keep learning by reading and trying, and occasionally validating your previous knowledge.

Many people say things like "Oh, I did that a long time ago, but I'm sure I could pick it up again quickly". In my opinion, the time to pick that skill back up is now. It may just be that you research the topic again on Google to see what's changed, but you need to make sure your knowledge stays current (at least for the important stuff). For example, I don't really care if MS Word added a new menu option between versions. However, I definitely want to know if the structure of an "A" record in DNS has changed since I last configured a name server.

8. Define some point at which the details should be considered a "black box".

Some people may be interested in computers all the way down to how the electrons swim through the network card. However, I am proof positive that you don't need to know anything about the hardware to be an absolute expert on the software. So while you may think it's interesting to know exactly how a device driver works, that level of knowledge isn't absolutely necessary. Learn "enough" to help you solve the problem at hand and consider the rest just a black box.

OK, that's it for now. Happy learning!

Thursday, January 3, 2008

The Big Dipper is not a constellation!

Neither is the Little Dipper, Scorpio, nor most of the other identifiable shapes in the night sky. They are actually "asterisms". From Wikipedia, a constellation is:

"a group of stars that are connected together to from a figure or picture. The term is also traditionally and less formally used to mean any group of stars visibly related to each other, if they are considered as a fixed configuration or pattern in a particular culture."

And an asterism is:

"a pattern of stars seen in Earth's sky which is not an official constellation."

You can start here 
http://en.wikipedia.org/wiki/Big_dipper to start learning the truth.

I just thought it was interesting. Happy New Year! 

Sunday, December 9, 2007

The best satellite internet available

I live way out in the mountains, so my only choice for high-speed internet is satellite. I thought that all of the available ones were the same, until I found SkyCasters (
http://www.skycasters.com/). These guys offer plans that begin where the normal, consumer-level satellite providers stop. Their price is definitely higher, but the speed, availability, and level of customer service provided all combine to make it worthwhile, in my opinion.

For example, the consumer-level companies don't guarantee ANYTHING. If it's raining hard outside and you don't have a signal, their response will be "Oh, just wait until it quits raining". Skycasters, on the other hand, have a COMMITTED information rate, which they back up with "You can expect the ability to receive 110% of the stated CIR speeds or more at least 90% of the time, if not more!". And what I've found is if you have a problem, they will crank up the output of your receiver/transmitter to make sure your get the service you're paying for.

Also, the other providers have a "Fair Access Policy", which states how much bandwidth you can use per hour or per day. Go over that, and they punish you by throttling you back to 4Kbps until you're back under the FAP limit. Skycasters, however, has a maximum throughput allowance that's included in the rate. If you go over it, they just charge you more. No stupid throttling - you just pay more for what you use.

Now I realize that the minimum plan, at $149/month, AFTER purchasing the equipment, really can't make financial sense to a lot of people. But if your job is computers, and your only choice is satellite, I think that these guys have the best option in town. AND their customer service is top notch. You call in and you're talking to one of the engineers. I couldn't recommend them higher.