Monday, December 11, 2006

Zoom23 Launched!

In October of this year I joined a very interesting project that I've been contributing all of my free time to. The project is called Zoom23 and can be found at www.zoom23.com.

The basic idea is very simple: "Reinvent online shopping".

These days you can buy almost anything online, if not everything. But the online shopping experience is far from shopping in brick and mortar stores. This is especially true if all you want is just to browse products, hoping that something will catch your eye. It is no fun to be clicking through pages of products and being flooded with lots of text that you don't really care for, when all you want is to have a look. Zoom23 displays all items in a slide show format, which is a pretty exceptional approach to displaying products online.

The second new experience that Zoom23 brings are social networking features that enhances the shopping experience. No longer will you be alone when shopping online. Zoom23 will enable you to share your favorite items and give recommendations to other through voting on items and sharing personal slide shows.

Do you often shop online at Amazon, Ebay or Yahoo? Then you can enjoy all the benefits of these stores while having unified access to all the products displayed in a unique way. This is because all of the products on Zoom23 come from these three popular online stores, with more stores to come in the future.

There is still a lot of work to be done especially in adding more social networking features, higher data quality and tighter integration with the original online store, but already now you can go to www.zoom23.com and easily shop for Christmas presents for your family and friends.

I'll come back to this project in the future and will write a little about all the Java, Ruby on Rails, PHP and Ajax that we used to put the site together.

Sunday, December 10, 2006

I'm back baby!

After couple of weeks, actually months, of administrative slip-ups I became a Sun employee again.

It feels great to be back. I don't have an experience of working for too many companies, but there is something special about being as Sun that gives me the warm fuzzy feeling that is sometimes hard to find elsewhere :-).

My first assignment is working on JSPWiki which seems to be popular choice when it comes to a wiki software at Sun. I'll post more stuff on this in the future.

Sunday, November 26, 2006

A Basket of Rotten Apples

Last week I went to an Apple Store in Santa Clara and I wanted to buy a MacBook as a Christmas present for my sister (It's a surprised so don't tell her about it!!!). At that time I had no idea what a terrible experience was that going to be.

I got the white box, paid and happily went home. When I unpacked the notebook, I put in the installation disk and was about to restart the computer to run custom installation when I heard that the DVD in the drive was getting scratched. Ironically I had the same and many others problems with my MacBook Pro. So I re-packed the notebook and the next day went back to the Apple Store.

When I arrived there, I grabbed a sales guy and told him about my problem. He asked me to demonstrate it to him, which I did. He had to admit that this was not a feature and took the notebook in the back office and came back with a new MacBook. After that, he went to the register, did some voodoo with the receipts and gave me the new box and a new receipt. I unwrapped the notebook in the store and checked if this one was OK. My test CD was unscratched after the test so I happily went home again.

When I arrived home I was going to do the custom installation again. After a couple of seconds of working with the notebook while having my palms resting on it, I noticed that this notebook was vibrating. The whole case was shaking as if the DVD was spinning at the maximum speed and the hard drive was doing some really heavy writing and reading at the same time. The thing was that at the time when this vibration was happening there was no disk in the superdrive and the hard drive was idle as well. With disgust I ceased all the activities with the notebook, put it into the box, and waited until I had the next opportunity to go to Apple Store again.

Couple days later I finally had time to go to the Apple Store. When I arrived I grabbed a sales guy again and told him my story. This guy told me that he has no authorization to do anything about this and that I had to see a Mac Genius with my problem. I guess that he saw that I was not very happy with his answer, so he took me to Mac Genius and asked him to look at my notebook immediately.

I explained the problem to this Genius, who took the notebook to the back office. In a few minutes he came out and told me that he needs to compare the vibrations from this notebook to the notebooks they have on display. For a second I thought that if all the notebooks are doing this then I'd get dismissed, but fortunately all the notebooks on display were making no vibrations at all.

After this the Genius sent me to the sales guy and authorized the replacement. I got the replacement accompanied with the receipt voodoo. The sales guy gave me the notebook and told me to enjoy it because that was my last replacement. I was little surprised to hear that and told him that I want to test the notebook before I go home.

I was pretty surprised to see that this one was doing the same thing!!! I showed it to the sales guy and he was pretty shocked as well. Another sales guy came to us and told us that it is normal behavior after first boot because "The computer is thinking". Duh, that was a bit of an offensive explanation for me and I dismissed the guy.

After this, the sales guy brought yet another box (my 4th MacBook!) and opened it himself. It was not that surprising to me that this one was vibrating as well. The sales guy almost collapsed when he realized that the whole batch of MacBooks that they have in stock might be suffering from the same problem.

After few phone calls to other Apple Stores in the area and talking to the store manager the sales guy opened yet another box and with huge relief called me and told me that "Hey Igor, we have a notebook for you!". I touched the notebook and it was fine, no vibrations at all!

The sales guy did his receipt voodoo for the last time and then I went home with a present for my sister. I still can't believe that I had to go through 5 (five!!) MacBooks to find the one that was working.

If Apple wants to increase the market share so be it, but I hope that it is not going to happen by becoming more like other notebook maker who's name rhymes with Hell! If anyone sees similar issues he should immediately go to the Apple Store and return / exchange the product he bought, for his own sake (don't waste time with repairs) and for Apple's sake as well; they must realize that Apple customers are not going to tolerate flaky assembly!

Sunday, November 12, 2006

MacBook Pro Core Duo Versus Core 2 Duo Temperature Comparison

Yesterday I bought a brand new MacBook Pro Core 2 Duo for a friend, and since I'm going to keep it for few more days before I have to reluctantly hand it over to him, I've decided to see how much of the buzz is true that the new MBPs are cooler than the previous Core Duo version.

I used Core Temp Duo to retrieve the temperature from CPU thermal sensor. It's a really cool small app btw.

These are the results of running
$ yes > /dev/null&
$ yes > /dev/null&
for about 30minutes on MBP Core 2 Duo (C2D) 2.33GHz:
11/13/2006 00:12 : 23:09 - 10.1% - 2.33GHz - 45C
11/13/2006 00:13 : 23:10 - 100% - 2.33GHz - 70C
11/13/2006 00:13 : 23:10 - 100% - 2.33GHz - 71C
11/13/2006 00:13 : 23:11 - 100% - 2.33GHz - 72C
11/13/2006 00:14 : 23:11 - 100% - 2.33GHz - 75C
11/13/2006 00:14 : 23:11 - 100% - 2.33GHz - 78C
11/13/2006 00:17 : 23:14 - 100% - 2.33GHz - 73C
11/13/2006 00:17 : 23:14 - 100% - 2.33GHz - 72C
11/13/2006 00:18 : 23:16 - 100% - 2.33GHz - 72C
11/13/2006 00:20 : 23:17 - 100% - 2.33GHz - 74C
11/13/2006 00:22 : 23:20 - 100% - 2.33GHz - 72C
11/13/2006 00:23 : 23:21 - 100% - 2.33GHz - 71C
11/13/2006 00:25 : 23:22 - 100% - 2.33GHz - 70C
11/13/2006 00:27 : 23:24 - 100% - 2.33GHz - 69C
11/13/2006 00:27 : 23:25 - 100% - 2.33GHz - 68C
11/13/2006 00:29 : 23:27 - 100% - 2.33GHz - 67C
11/13/2006 00:31 : 23:28 - 100% - 2.33GHz - 66C
11/13/2006 00:32 : 23:30 - 100% - 2.33GHz - 65C
11/13/2006 00:34 : 23:32 - 100% - 2.33GHz - 67C
11/13/2006 00:36 : 23:33 - 100% - 2.33GHz - 68C
11/13/2006 00:36 : 23:34 - 100% - 2.33GHz - 66C
11/13/2006 00:38 : 23:36 - 100% - 2.33GHz - 66C
11/13/2006 00:40 : 23:37 - 100% - 2.33GHz - 66C
11/13/2006 00:40 : 23:38 - 100% - 2.33GHz - 67C
11/13/2006 00:43 : 23:40 - 100% - 2.33GHz - 67C
11/13/2006 00:43 : 23:41 - 100% - 2.33GHz - 67C
11/13/2006 00:44 : 23:41 - 1% - 2.33GHz - 52C
11/13/2006 00:44 : 23:42 - 1% - 2.33GHz - 51C
11/13/2006 00:45 : 23:43 - 2% - 2.33GHz - 50C
11/13/2006 00:57 : 23:55 - 8.9% - 2.33GHz - 48C
11/13/2006 01:01 : 23:58 - 1.5% - 2.33GHz - 47C
11/13/2006 01:01 : 23:58 - 1.5% - 2.33GHz - 47C
11/13/2006 01:08 : 1 day 6 mins - 13% - 2.33GHz - 47C
11/13/2006 01:08 : 1 day 6 mins - 13% - 2.33GHz - 47C

And the results of the same test on MBP Core Duo (CD) 2.0Ghz:
11/02/2006 15:30 : 22:08 - 15.3% - 2.0GHz - 47C
11/12/2006 15:28 : 22:09 - 100% - 2.0GHz - 57C
11/12/2006 15:29 : 22:09 - 100% - 2.0GHz - 63C
11/12/2006 15:30 : 22:10 - 100% - 2.0GHz - 64C
11/12/2006 15:35 : 22:15 - 100% - 2.0GHz - 64C
11/12/2006 15:37 : 22:17 - 100% - 2.0GHz - 64C
11/12/2006 15:39 : 22:19 - 100% - 2.0GHz - 64C
11/12/2006 15:40 : 22:20 - 100% - 2.0GHz - 64C
11/12/2006 15:42 : 22:22 - 100% - 2.0GHz - 64C
11/12/2006 15:45 : 22:25 - 100% - 2.0GHz - 64C
11/12/2006 15:52 : 22:32 - 100% - 2.0GHz - 64C
11/12/2006 15:55 : 22:35 - 100% - 2.0GHz - 64C
11/12/2006 16:09 : 22:49 - 100% - 2.0GHz - 64C
11/12/2006 16:10 : 22:50 - 8.8% - 2.0GHz - 56C
11/12/2006 16:10 : 22:50 - 9.3% - 2.0GHz - 54C
11/12/2006 16:10 : 22:50 - 9.4% - 1.5GHz - 48C
11/12/2006 16:12 : 22:52 - 14.2% - 1.5GHz - 48C
11/12/2006 16:12 : 22:52 - 10.3% - 1.5GHz - 47C
Keep in mind that I was not aiming for scientific precision when executing these test. Both test were done while the notebooks where plugged to AC adapters and the power management was set to "Better Performance".

I have to say that I was surprised by the results of my "old" MBP. The average temperature of 64C is the best that I've seen for MBP CD. And I know what I'm talking about because this is my 3rd MBP CD.

When it comes to MBP C2D, the results were much better than my expected peak temperature of 84C. Considering that one of the MBP CD 2.0GHz that I returned to Apple (see my older post) was able to easily reach 91C, these results are really good.

The results coming from my "old" MBP could most likely be considered exceptional, so I think in general I can say that the new MBP C2D is cooler than the early revisions of MBP CD. Both the peak temperature and the temperature with the fans running at higher RPM are lower than what I was used to seeing at MBPs CD.

After running the test for 30minutes I could feel that the cases of both notebooks were getting warmer, but only the bottom side of notebooks could be considered more than warm. Based on my previous experience with first generation MBPs, this is far from what I was used to feeling.

After this test I ran a quick battery life test: I unplugged the MBP C2D from the AC adapter, set the power management to "Better Battery Life", set the LCD brightness to half and started listening to iTunes streaming radio (via WiFi). I left the bluetooth on as well. The resulting time was exactly 3 hours. Since this was the first discharge of the battery, I would not be surprised to see slightly better results after a few charge cycles. This result is also a slight improvement compared to MBP CD.

Tuesday, October 17, 2006

Sun Unveils Project Blackbox

Fully contained datacenter in a shipping container, why not! Check out Project Blackbox.

This is so cool! :) I almost wish to have one of these on my balcony.

Changing Font Size in NetBeans

I submitted a bug few weeks ago in hope that the default font size for Mac version of NetBeans can be set to something smaller compared to what it currently is.

When I started using NetBeans on Mac I felt that the font is just way too huge and text as well as menu and tab controls take a lot of space that could be used to display more code which means less scrolling.

The bug I submitted seems to attract attention of NetBeans developers these days so hopefully something will be done about it.

For now, I found out that you can control the font size with a command line parameter --fontsize <number>. Or even better you can put this in the netbeans.conf file that can be found in /Applications/NetBeans.app/Contents/Resources/NetBeans/etc/ directory. I prefer to use font size 11 (the default is 13). To set this you need to append the setting to the net so the netbeans_default_options variable.
netbeans_default_options="........ --fontsize 11"
Btw the version 5.5RC2 is out, this release doesn't contain the AIOOBE bug that was giving me a lot of trouble on my intel mac.

Friday, October 13, 2006

SafeSleep (a.k.a. Hibernation) for Intel Macs

Don't you just love how easy it is to put your Mac to sleep when you close the lid on your notebook? And how instantly your Mac can wake up when you open the lid later on? It's just great and it is very reliable.

But while the computer is in the "sleep" mode it still consumes some energy. Usually it's nothing worth considering, but when you are traveling for couple of days you might want to save every bit of battery energy possible.

Both Windows and Linux offer you an option of hibernation. Of course MacOS supports hibernation as well but Apple refers to this feature as "SafeSleep". While experimenting with my Macbook Pro I've noticed that SafeSleep is used every time the battery is totally drained and there is not enough energy for powering the Sleep mode. When you plug in the laptop, ahem notebook, to the power adapter, it will use the hibernation file to recover the content of the RAM and thus the OS state. In fact the hibernation file is created every time the computer goes to Sleep mode so taking out the battery while the computer is in the Sleep mode will have the same effect.

I was pointed to this article that discusses the pmset command line tool and describes how to use it to prevent Macs notebooks from waking up on opening the lid or setting up the power button to put the computer to sleep without displaying the "shutdown menu".

pmset tool can be used to set the hibernation/sleep mode:
pmset -a hibernatemode 0 # Sleep mode, but don't create a hibernation file
pmset -a hibernatemode 1 # SafeSleep (Hibernation) mode
pmset -a hibernatemode 3 # Sleep mode + create hibernation file (Default)
When putting MacOS to sleep it will do whatever hibernatemode is set to.

I also found this article that describes how to create an apple script that will enable you to hibernate the computer but launching it (without having to fiddle around with terminal). But unfortunately this script doesn't work for me so I fixed it a little:

do shell script "/usr/bin/sudo -k;/usr/bin/sudo /usr/bin/pmset -a hibernatemode 1; /usr/bin/sudo -k" with administrator privileges
ignoring application responses
tell application "Finder" to sleep
do shell script "(/bin/sleep 25 && /usr/bin/sudo -k && /usr/bin/sudo /usr/bin/pmset -a hibernatemode 3 && /usr/bin/sudo -k) &> /dev/null &" with administrator privileges
end ignoring
Store this 5-line script via script editor as "Application Bundle" with "Run Only" option checked and you are good to go. I've noticed that when you save it as "Application" it still doesn't work.

One last note for PowerPC MacHeads: Some Powerbooks support SafeSleep as well, but it involves a little more work. Check out this article for more details.