June 29 2007

PHP-GTK

PHP-GTK is an extension for the PHP programming language that implements language bindings for GTK+. It provides an object-oriented interface to GTK+ classes and functions and greatly simplifies writing client-side cross-platform GUI applications.

PHP-GTK 2 is the second major release of PHP-GTK. PHP-GTK 2 combines the power of PHP 5 with the flexibility of Gtk+ 2 to allow developers to create extremely rich desktop applications with relative ease. PHP-GTK 2 not only simplifies the process of building applications with PHP, but also provides greater flexibility and more features than its predecessor.

Features

  • Powerful Object Oriented Programming
    Because PHP-GTK 2 is built ontop of PHP 5, it makes heavy use of the improved object model. PHP-GTK 2 applications can implement Object Oriented practices such as inheritance, interfaces, overloading and exceptions.
  • Improved Garbage Collection
    PHP-GTK 1 suffered from memory allocation issue because it was built ontop of PHP 4, which was not designed with long running applications in mind. Improvements in PHP 5 have minimized memory leaks allowing for long running applications without the fear of excessive memory consumption.
  • Unicode Support
    Text in PHP-GTK 2 is always UTF-8 encoded making for applications which can easily be internationalized. PHP-GTK 2 will seamlessly handle conversion of input and output strings based on a global code-page setting freeing the developer from worrying about most encoding problems.
  • Model-View Architecture
    Gtk+ 2 implements a Model-View architecture to separate data from the display. This allows for multiple representations of the same data in different ways and greater control over the data itself. The separation of data from display makes working with complex data like trees and multi-line text much easier than before.
  • Improved Graphics Support
    Improvements in image support in Gtk+ 2 make displaying and manipulating images and animations much easier with PHP-GTK 2. Aside from an extensive collection of stock images, loading and manipulating custom images is relatively simple when compared to working with images in PHP-GTK 1.

Click to continue reading “PHP-GTK”
Go straight to Post

May 14 2007

Database Normalization And Design Techniques

Database Normalization And Design Techniques

One of the most important factors in dynamic web page development is database definition. If your tables are not set up properly, it can cause you a lot of headaches down the road when you have to perform miraculous SQL calls in your PHP code in order to extract the data you want. By understanding data relationships and the normalization of data, you will be better prepared to begin developing your application in PHP.

Whether you work with mySQL or Oracle, you should know the methods of normalizing the table schema in your relational database system. They can help make your PHP code easier to understand, easier to expand upon, and in some cases, actually speed up your application.

Basically, the Rules of Normalization are enforced by eliminating redundancy and inconsistent dependency in your table designs. I will explain what that means by examining the five progressive steps to normalization you should be aware of in order to create a functional and efficient database. I’ll also detail the types of relationships your data structure can utilize.

Let’s say we want to create a table of user information, and we want to store each users’ Name, Company, Company Address, and some personal bookmarks, or urls. You might start by defining a table structure like this:

Click to continue reading “Database Normalization And Design Techniques”
Go straight to Post

March 07 2007

XML-based Internet operating system

Xcerion’s Internet Cloud Forms Over Google and Microsoft


The company plans to offer an XML-based Internet operating system and development platform that replicates the desktop computing experience from inside a Web browser and adds the benefits of cloud-based computing.






In the third quarter of 2007, an all-but-unknown Swedish software company plans to release a new, free operating system that has the potential to radically alter the economics of software development. If successful, it may be able to further erode the power Microsoft derives from control of the desktop, to beat Google at its software-as-a-service play, and to make commodity Linux boxes more viable as a computing platform for the masses.

“What Skype did for telephony, we want to do for software development,” said CEO Daniel Arthursson. “We’re enabling the ‘Long Tail’ for business software.”

For the past five years, Xcerion has been working on an XML-based Internet operating system (XIOS) that runs inside a Web browser. In a way, XIOS is an abstraction layer that sits atop a true operating system like Linux, Mac OS X, or Windows, just as does Transmedia’s Flash-based Glide Next media sharing environment.

But XIOS aims to provide lower-level functionality. It’s not simply an interface for media sharing. Rather, it’s a complete XML-based operating system and development platform that replicates the desktop computing experience from inside the browser and adds the benefits of cloud-based computing, where applications and data are available over the network.

Watch it in action and you’ll see a visual representation of the threat it poses to Windows: Double-click on the application and the familiar desktop interface appears inside the browser window. Expand the browser window in full-screen mode and the Windows desktop vanishes beneath it. Of course the XIOS environment could just as easily look like the Mac OS desktop or something else entirely. This is what Microsoft feared Netscape would do, turn its main asset, the operating system, into middleware.

There are several reasons why one might want to run an XML-based operating system in a Web browser: security, data portability, freedom from hardware and platform lock-in, cost, built-in collaboration, and development productivity.

Click to continue reading “XML-based Internet operating system”
Go straight to Post