Pages

Push notification for Google Voice 0.3.2

The most recent update of Google Voice for Android (0.3.2) brings real-time push notification to the phone. Previously it was a pull rather than push from the server, and Google Voice client needed to poll the server every 5 minutes. With this new feature, you can almost get rid of your wireless provider’s SMS service.

When not to put debug info on your production site

Title says it all.

http://outlet.lenovo.com/report/?id=-528847430&s=public

SQLSTATE[HY000]: General error: 5 Out of memory (Needed 25165796 bytes)
Trace:
#0 /chroot/home/lenovoco/lenovo.com/html/lib/Zend/Db/Statement.php(283): Zend_Db_Statement_Pdo->_execute(Array)
#1 /chroot/home/lenovoco/lenovo.com/html/lib/Zend/Db/Adapter/Abstract.php(457): Zend_Db_Statement->execute(Array)
#2 /chroot/home/lenovoco/lenovo.com/html/lib/Zend/Db/Adapter/Pdo/Abstract.php(230): Zend_Db_Adapter_Abstract->query('SELECT COUNT(DI...', Array)
#3 /chroot/home/lenovoco/lenovo.com/html/lib/Varien/Db/Adapter/Pdo/Mysql.php(281): Zend_Db_Adapter_Pdo_Abstract->query('SELECT COUNT(DI...', Array)
#4 /chroot/home/lenovoco/lenovo.com/html/lib/Zend/Db/Adapter/Abstract.php(761): Varien_Db_Adapter_Pdo_Mysql->query(Object(Varien_Db_Select), Array)
#5 /chroot/home/lenovoco/lenovo.com/html/lib/Varien/Data/Collection/Db.php(162): Zend_Db_Adapter_Abstract->fetchOne(Object(Varien_Db_Select), Array)
#6 /chroot/home/lenovoco/lenovo.com/html/lib/Varien/Data/Collection.php(188): Varien_Data_Collection_Db->getSize()
#7 /chroot/home/lenovoco/lenovo.com/html/lib/Varien/Data/Collection.php(174): Varien_Data_Collection->getLastPageNumber()
#8 /chroot/home/lenovoco/lenovo.com/html/app/code/core/Mage/Eav/Model/Entity/Collection/Abstract.php(928): Varien_Data_Collection->getCurPage()
#9 /chroot/home/lenovoco/lenovo.com/html/app/code/core/Mage/Eav/Model/Entity/Collection/Abstract.php(784): Mage_Eav_Model_Entity_Collection_Abstract->_loadEntities(false, false)
#10 /chroot/home/lenovoco/lenovo.com/html/app/code/core/Mage/Catalog/Block/Product/List.php(167): Mage_Eav_Model_Entity_Collection_Abstract->load()
#11 /chroot/home/lenovoco/lenovo.com/html/app/code/core/Mage/Core/Block/Abstract.php(642): Mage_Catalog_Block_Product_List->_beforeToHtml()
#12 /chroot/home/lenovoco/lenovo.com/html/app/code/core/Mage/Core/Block/Abstract.php(503): Mage_Core_Block_Abstract->toHtml()
#13 /chroot/home/lenovoco/lenovo.com/html/app/code/core/Mage/Core/Block/Abstract.php(454): Mage_Core_Block_Abstract->_getChildHtml('product_list', true)
#14 /chroot/home/lenovoco/lenovo.com/html/app/code/core/Mage/Catalog/Block/Category/View.php(81): Mage_Core_Block_Abstract->getChildHtml('product_list')
#15 /chroot/home/lenovoco/lenovo.com/html/app/design/frontend/default/outlet/template/catalog/category/view.phtml(75): Mage_Catalog_Block_Category_View->getProductListHtml()
#16 /chroot/home/lenovoco/lenovo.com/html/app/code/core/Mage/Core/Block/Template.php(144): include('/chroot/home/le...')
#17 /chroot/home/lenovoco/lenovo.com/html/app/code/core/Mage/Core/Block/Template.php(176): Mage_Core_Block_Template->fetchView('frontend/defaul...')
#18 /chroot/home/lenovoco/lenovo.com/html/app/code/core/Mage/Core/Block/Template.php(193): Mage_Core_Block_Template->renderView()
#19 /chroot/home/lenovoco/lenovo.com/html/app/code/core/Mage/Core/Block/Abstract.php(643): Mage_Core_Block_Template->_toHtml()
#20 /chroot/home/lenovoco/lenovo.com/html/app/code/core/Mage/Core/Block/Text/List.php(43): Mage_Core_Block_Abstract->toHtml()
#21 /chroot/home/lenovoco/lenovo.com/html/app/code/core/Mage/Core/Block/Abstract.php(643): Mage_Core_Block_Text_List->_toHtml()
#22 /chroot/home/lenovoco/lenovo.com/html/app/code/core/Mage/Core/Block/Abstract.php(503): Mage_Core_Block_Abstract->toHtml()
#23 /chroot/home/lenovoco/lenovo.com/html/app/code/core/Mage/Core/Block/Abstract.php(454): Mage_Core_Block_Abstract->_getChildHtml('content', true)
#24 /chroot/home/lenovoco/lenovo.com/html/app/design/frontend/default/outlet/template/page/3columns.phtml(74): Mage_Core_Block_Abstract->getChildHtml('content')
#25 /chroot/home/lenovoco/lenovo.com/html/app/code/core/Mage/Core/Block/Template.php(144): include('/chroot/home/le...')
#26 /chroot/home/lenovoco/lenovo.com/html/app/code/core/Mage/Core/Block/Template.php(176): Mage_Core_Block_Template->fetchView('frontend/defaul...')
#27 /chroot/home/lenovoco/lenovo.com/html/app/code/core/Mage/Core/Block/Template.php(193): Mage_Core_Block_Template->renderView()
#28 /chroot/home/lenovoco/lenovo.com/html/app/code/core/Mage/Core/Block/Abstract.php(643): Mage_Core_Block_Template->_toHtml()
#29 /chroot/home/lenovoco/lenovo.com/html/app/code/core/Mage/Core/Model/Layout.php(526): Mage_Core_Block_Abstract->toHtml()
#30 /chroot/home/lenovoco/lenovo.com/html/app/code/core/Mage/Core/Controller/Varien/Action.php(347): Mage_Core_Model_Layout->getOutput()
#31 /chroot/home/lenovoco/lenovo.com/html/app/code/core/Mage/Catalog/controllers/CategoryController.php(115): Mage_Core_Controller_Varien_Action->renderLayout()
#32 /chroot/home/lenovoco/lenovo.com/html/app/code/core/Mage/Core/Controller/Varien/Action.php(376): Mage_Catalog_CategoryController->viewAction()
#33 /chroot/home/lenovoco/lenovo.com/html/app/code/core/Mage/Core/Controller/Varien/Router/Standard.php(248): Mage_Core_Controller_Varien_Action->dispatch('view')
#34 /chroot/home/lenovoco/lenovo.com/html/app/code/community/ArtsOnIT/OfflineMaintenance/Controller/Router/Standard.php(46): Mage_Core_Controller_Varien_Router_Standard->match(Object(Mage_Core_Controller_Request_Http))
#35 /chroot/home/lenovoco/lenovo.com/html/app/code/core/Mage/Core/Controller/Varien/Front.php(158): ArtsOnIT_OfflineMaintenance_Controller_Router_Standard->match(Object(Mage_Core_Controller_Request_Http))
#36 /chroot/home/lenovoco/lenovo.com/html/app/Mage.php(459): Mage_Core_Controller_Varien_Front->dispatch()
#37 /chroot/home/lenovoco/lenovo.com/html/index.php(65): Mage::run()
#38 {main}

Using Confluence Office Connector in Mac / Firefox

A lot of you have been using Confluence from Atlassian, which is a great tool for content collaboration. In order to get users involved in the process of collaboration, the system has to be made simple enough to use. Cumbersome software drives normal people away.

One key point is the ease of editing wiki pages. Few of us can remember all the wiki markup tags correctly. Atlassian has addressed this problem by introducing the office connector. With the help from this connector, you could use your native Office editor to edit wiki pages. To make things even better, Confluence provides Office connector support on multiple OSes, including Windows, Linux, and Mac, which talks to Microsoft Office, Open Office, and/or NeoOffice.

Sounds exciting? Yes, except the default WebDav Launcher plug-in from Confluence does not work under Firefox 3.5 (I am using 3.5.7 as of this writing). Luckily, there is a fix for it. You can download the latest Firefox add-on from here.

Another issue for Mac users. Apparently only NeoOffice is support in Mac OS X. Microsoft Office for Mac 2008 does not work. I tried to change the doc handler to Office for Mac in the WebDav Launcher, but Word always open an empty page. Could this mean WEBDAV is not directly supported in Office for Mac?

Restful Web Service for Java

RESTEasy, CXF, Jersey, or Restlet?

yuan, yen, and won

Renminbi
Image via Wikipedia

Sometimes people are confused over the currency names from east Asia – Chinese Yuan, Japanese Yen, and Korean Won. These names sound similar.

They do sound alike for a reason – they came from the exact same Chinese character 元(everyday form),圆(simplified Chinese),or 圓(traditional Chinese). In Japan, the corresponding Kanji has a new form of 円.

As of today, 1 Yuan (Renminbi) = 12.94 Yen = 168.55 Won = 0.1465 USD

Chrome for Mac beta (4.0.249.30) is out

Google Chrome Icon

Image via Wikipedia

Google Chrome for Mac’s recent dev update 4.0.249.30 was promoted to Beta today. This means you can directly download Chrome for Mac from Google’s main Chrome site instead of dev channel.

I have been using the dev version since it was out. There have been a lot of issues in the beginning but the Chrome team has managed to get rid of major ones. I would recommend Chrome for Mac for everyday work.

Gizmo5 now part of Google

According to TechCrunch, Gizmo5 is part of Google now. That implies Google Voice will have more features.

Yes, it also means I might be able to make VoIP calls on my Droid soon.

Verizon Wireless Droid Test Drive

Cellco Partnership D/B/A Verizon Wireless

Image via Wikipedia

This morning I picked up a Droid from my the local VZW store. My iPhone was out of contract and I have been looking forward to an android phone.

Overall, I like this phone

  • It seems to be more responsive compared to my iPhone.
  • Plus it has two apps I have been wanting – Google Voice and Google Maps Navigation.
  • I like android os.

Issues I am having:

  • Verizon Wireless’s 3G coverage is worse than AT&T in my basement, contrary to what they claimed in the commercials.
  • It seems only one Google calendar is supported (sync-ed), although multiple gmail accounts can be added into the phone.
  • (normal) Yahoo mails are not supported by default.
  • On iPhone, you can see the number of unread emails, texts, etc, in a red circle attached to the application. There is no such information on Droid.
  • I actually do not need the built-in keyboard since I have been used to iPhone’s software keyboard.
  • Lack of (other) decent apps, compared to what I had on my iPhone.

I will try it for some more time and decide whether to keep it.

Amazon’s MySQL and more EC instances

One of the major offerings from Amazon Web Service (AWS) is Simple DB, similar to Google’s bigtable, which is not a relational database. Some people have managed to migrated their applications to SDB in order to move their application to the Amazon cloud. Many other people who could not/would not convert their relational DB back-end to SDB installed MySQL on the EC2 instances instead, then again, they started to worry about how to persist the data directory on Amazon EBS. It was some additional pain indeed.

Nice thing is that Amazon today announced Amazon Relational DB Service(rdf), based on MySQL. Now people do not have to google the “best practice” to persist on EBS without compromising performance. Hopefully this will drive more people to Amazon’s AWS.

Chrome 4.0.222.5 for Mac released

If you are on the dev channel, your Chrome will be upgraded automatically.

There are some new features as well as some bugfixes. New features include enabling “Edit Search Engine” menu item,  and “default browser”.

Performance-wise, it seems this version has a smaller toll on the CPU compared to previous ones.