Archive for Opensource
First Post With My Nokia N800
It’s been three days since I got my N800. I’m am still trying to find comfort when using this device for text entries (like this post). Screen keyboard is not my thing since I am used to Qwerty keyboard like what my Palm Treo 650 have.
Misconceptions. Like what other N800 users who blogged about their gadget, this device is NOT A PHONE. This is more like a laptop companion. N800 device as well as Nokia 770 are called Internet Tablet. The wireless capability is really good. It can detect WLAN accesss point better than my laptop.
Power Computing. I must say that this device is a complete powerful system. It is Linux under the hood courtesy of Debian, SSH client and server courtesy of Dropbear, VOIP functionality provided by Skype, IRC and instant messaging using Pidgin (GAIM), Wordpress client using MaemoWordPy, web browsing using Opera. FM tuning is an added bonus!
This is definitly handy and lightweight than carrying laptop. I’m keeping my faith on this device. Should I say, “If it’s Linux it must be fun!”?
Google Gears: The rise of JavaScript-powered offline applications
Following emerging development in online/offline computing like Adobe’s Apollo platform or Microsoft’s Silverlight platform, Google releases Gears which will allow developers to create applications using JavaScript that will run in offline mode and could synchronize to a remote application (e.g. server application) when available.
Google Gears group writes:
Google Gears allows developers to enhance their AJAX applications to be able to run even when their users are offline. This is the official discussion group for web developers interested in using Google Gears in their applications.
Google Gears provides application programming interface (APIs) for offline application access and data storage (using SQLlite). Licensed: BSD
More on Google Gears
Defensive Programming Best Practices (in PHP)
Manuel Lemos of PHPClasses.org writes about his eight defensive programming best practices focusing on the context of PHP/web newsletter delivery system.
- Handle unexpected conditions
- Process external systems data properly
- Test your code
- Monitor your site errors and act upon them
- Do not disclose errors to the users
- Damage control
- Backup
- Do what you can as you can never get defensive enough
This is definitely worth everyone’s time. I highly recommend this for budding PHP developers as well as those with higher-level experience. By the way, you can vote for his post on digg.
Google Releases Patches For MySQL
The patches includes a few significant features and many enhancement on the manageability and reliability of MySQL database server.
The features are:
- SemiSyncReplication - block commit on a master until at least one slave acknowledges receipt of all replication events.
- MirroredBinlogs - maintain a copy of the master’s binlog on a slave
- TransactionalReplication - make InnoDB and slave replication state consistent during crash recovery
- UserTableMonitoring - monitor and report database activity per account and table
- InnodbAsyncIo - support multiple background IO threads for InnoDB
- FastMasterPromotion - promote a slave to a master without restart
Enhancements include:
- LosslessFloatDump - support dump and restore of float/double without loss of precision
- Use 8X less memory for account and table privileges
- Use fastest compression rather than the default level for client/mysqld networking
- InnodbSampling - control the number of leaf blocks sampled for optimizer statistics
- InnodbStatus - display more statistics in show innodb status
- Reduced number of calls to fsync when the InnoDB background IO thread is active
- Changed InnoDB to recover when InnoDB and MySQL data dictionaries are inconsistent
- NewSqlFunctions - functions for checksums and floating point to string conversion
- Backported START SLAVE UNTIL
- Sort float columns with the order: -INF < negative < 0 < positive < +INF < NaN
- Change long_query_time to be dynamic and log all queries that run for greater than or equal this number of seconds rather than greater than.
- Count connection attempts tha are denied because of max_connections and display the count as denied_connections
- MoreLogging - log actions done on specified tables and SUPER users
- rpl_always_enter_innodb boosts the priority of the slave SQL thread (for replication) in InnoDB by making it ignore the InnoDB concurrency limits
- rpl_event_buffer_size sets the fixed size buffer that is allocated in the master for each connected slave. The buffer is used for replication events smaller than the buffer. This reduces memory allocation done to copy replication events from the master.
- Backported sync-binlog
- Added reserved_super_connections to reserve the final N connections for users with the SUPER privilege
- NewShowStatus - many new variables in SHOW STATUS
OpenMoko Is The Next BIG Thing
A group of developers all over the world are into something big that will soon be in your next phone. OpenMoko is an attempt to create an open/free software stack for mobile phones.
At the moment, there is an actual live phone (Neo1973) being used by developers to further the development of the OpenMoko Framework. Most of the user interface specifications supports stylus and finger based input. The phone functions just like the Apple iPhone but I would think that OpenMoko based phones will be very customizable as it is most likely to run on embedded Linux and QT.  Some more links for your reading pleasure..
- Â iPhone and Neo1973 Comparison
- Some photos
- Look and Feel Specs
- Planet OpenMoko - where developers’ blog are aggregated
All in all, their wiki page is very impormative and worth checking out.





