<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Pixel Art &#187; Web Development</title>
	<atom:link href="http://www.thepixelart.com/category/web/web-development/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.thepixelart.com</link>
	<description></description>
	<lastBuildDate>Fri, 26 Mar 2010 14:03:59 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.9.1</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>Ruby Frameworks: What Are They And Why Should You Choose One (Which One?)</title>
		<link>http://www.thepixelart.com/ruby-frameworks-what-are-they-and-why-should-you-choose-one-which-one/</link>
		<comments>http://www.thepixelart.com/ruby-frameworks-what-are-they-and-why-should-you-choose-one-which-one/#comments</comments>
		<pubDate>Fri, 22 Jan 2010 10:48:08 +0000</pubDate>
		<dc:creator>Editorial Team</dc:creator>
				<category><![CDATA[Articles]]></category>
		<category><![CDATA[Tools]]></category>
		<category><![CDATA[Web]]></category>
		<category><![CDATA[Web Development]]></category>
		<category><![CDATA[application]]></category>
		<category><![CDATA[architecture]]></category>
		<category><![CDATA[business]]></category>
		<category><![CDATA[Choosing]]></category>
		<category><![CDATA[community]]></category>
		<category><![CDATA[Controller]]></category>
		<category><![CDATA[Data]]></category>
		<category><![CDATA[database]]></category>
		<category><![CDATA[deploy]]></category>
		<category><![CDATA[deployment]]></category>
		<category><![CDATA[design]]></category>
		<category><![CDATA[development]]></category>
		<category><![CDATA[experience]]></category>
		<category><![CDATA[flexibility]]></category>
		<category><![CDATA[framework]]></category>
		<category><![CDATA[frameworkThe]]></category>
		<category><![CDATA[functionality]]></category>
		<category><![CDATA[html]]></category>
		<category><![CDATA[implementation]]></category>
		<category><![CDATA[importance]]></category>
		<category><![CDATA[interact]]></category>
		<category><![CDATA[interface]]></category>
		<category><![CDATA[intervention]]></category>
		<category><![CDATA[kind]]></category>
		<category><![CDATA[Model]]></category>
		<category><![CDATA[MVC]]></category>
		<category><![CDATA[need]]></category>
		<category><![CDATA[number]]></category>
		<category><![CDATA[outline]]></category>
		<category><![CDATA[part]]></category>
		<category><![CDATA[piece]]></category>
		<category><![CDATA[planning]]></category>
		<category><![CDATA[post]]></category>
		<category><![CDATA[programming]]></category>
		<category><![CDATA[project]]></category>
		<category><![CDATA[question]]></category>
		<category><![CDATA[request]]></category>
		<category><![CDATA[road]]></category>
		<category><![CDATA[role]]></category>
		<category><![CDATA[Ruby]]></category>
		<category><![CDATA[scratch]]></category>
		<category><![CDATA[search]]></category>
		<category><![CDATA[sense]]></category>
		<category><![CDATA[separation]]></category>
		<category><![CDATA[skeleton]]></category>
		<category><![CDATA[stage]]></category>
		<category><![CDATA[style]]></category>
		<category><![CDATA[success]]></category>
		<category><![CDATA[support]]></category>
		<category><![CDATA[system]]></category>
		<category><![CDATA[team]]></category>
		<category><![CDATA[time]]></category>
		<category><![CDATA[user]]></category>
		<category><![CDATA[variant]]></category>
		<category><![CDATA[View]]></category>
		<category><![CDATA[Web-browser]]></category>

		<guid isPermaLink="false">http://www.thepixelart.com/?p=490</guid>
		<description><![CDATA[Ruby is one of the most versatile object oriented programming languages, which was designed explicitly to have a human focus, as compared to the machine focus of many other languages. Developed in the mid-90’s, initially in Japan and then elsewhere, Ruby is based on the “principle of least surprise” (POLS) which states that when two elements of an interface conflict, or are ambiguous, the behavior should be the one that will be least surprising to a human user or programmer. Ruby-on-Rails is perhaps the most popular (certainly the most well-known) of the Ruby frameworks that is in use today, but there are also many others such as Nitro, Sinatra, Merb, and Camping. There are a number of things to consider when deciding on a framework. We will look at some of these things in detail before moving on to a description of some of the most common in use today, including the ones mentioned above. Since Ruby is primarily used for web programming, implicitly that will tend to be our focus.]]></description>
			<content:encoded><![CDATA[<p><img src='http://www.thepixelart.com/wp-content/plugins/simple-post-thumbnails/timthumb.php?src=/wp-content/thumbnails/490.jpg&amp;w=132&amp;h=132&amp;zc=1&amp;ft=jpg' alt='post thumbnail' /></p>
<p>Ruby is one of the most versatile object oriented programming languages, which was designed explicitly to have a human focus, as compared to the machine focus of many other languages. Developed in the mid-90’s, initially in Japan and then elsewhere, Ruby is based on the “principle of least surprise” (POLS) which states that when two elements of an interface conflict, or are ambiguous, the behavior should be the one that will be least surprising to a human user or programmer. In simple terms that the most obvious behavior is the one that will result. And this is perhaps what gives Ruby its power and in turn has caused Ruby to become one of the most widely used programming languages for the web. There are of course many other useful features in Ruby, including but not limited to Dynamic Typing, Duck Typing, Automatic Garbage Collection, First Class Continuations, an Interactive Ruby Shell, variable scope at four different levels (global, class, instance, local), facilities to support metaprogramming and a standard set of object oriented features (inheritance, metaclasses, exception handling, operator overloading etc.). Finally, Ruby supports a number of programming paradigms: other than object oriented, also functional, imperative, and reflective.<br />
<span id="more-490"></span><br />
But in addition to all the things that the native Ruby language can do (and Ruby carries a pretty large standard library), perhaps what makes it so suitable (and useful) for programming of various types, and especially web programming, is the existence of a number of Ruby frameworks. A Ruby framework is collection of pre-written libraries, functions and controls that can be downloaded and used to make your programming task easier. In addition to a time saving, there is also a significant benefit in terms of programming efficiency and implicitly a more consistent programming style (since so much is pre-defined, one begins to use or utilize the paradigm of the underlying framework when writing a program).</p>
<p>Ruby-on-Rails is perhaps the most popular (certainly the most well-known) of the Ruby frameworks that is in use today, but there are also many others such as Nitro, Sinatra, Merb, and Camping. There are a number of things to consider when deciding on a framework. We will look at some of these things in detail before moving on to a description of some of the most common in use today, including the ones mentioned above. Since Ruby is primarily used for web programming, implicitly that will tend to be our focus.</p>
<h2>Why Ruby in the first place?</h2>
<p>Now, we have touched upon this a little bit in our introduction, obviously POLS and the sheer flexibility of the programming language makes it a natural choice for a number of programming tasks. There is also the fact that Ruby is in philosophy (and in other ways, syntactically) similar to a number of other programming languages such as Perl, Smalltalk, Lisp, Ada, and Eiffel &#8211;  languages on which Ruby was based during its development. This makes it easy for programmers comfortable using these languages or their programming styles to quickly adapt to using Ruby. The same is true of programmers working with Python, Dylan, and CLU because Ruby is also similar to these in many respects. The strong focus on the object oriented paradigm makes it easier for anybody with a strong grasp of object oriented principles to quickly get cracking in Ruby. Finally, as mentioned before there is the flexibility of different programming paradigms, such as the functional, imperative and reflective (obviously in addition to the Object Oriented) that makes it attractive to programmers.</p>
<p>But there are other things going on under the hood that make Ruby such a popular choice, especially for web programming. It would be instructive to go into a detailed discussion of this, but we know this is neither the time or place for this so we will just mention two of the things that we think are most important. The first is something that is pretty obvious to most people experiencing a language like Ruby versus an extremely popular language like Java, and that is the scripting-like programming, which in addition to making code more human-friendly, also renders other advantages – everything in Ruby is an expression and everything is imperatively executed. What is less obvious and perhaps more important is the fact that with Ruby a strict adherence to the <a href="http://en.wikipedia.org/wiki/Model-View-Controller"> MVC</a> (Model-View-Controller) architecture is possible. In fact, the power of the MVC architecture, and the capability of the Ruby frameworks to inherently support it (all 5 mentioned in the introduction above do so) is what makes Ruby so suitable for web programming.</p>
<h2>A bit about the MVC</h2>
<p>The core principle of the MVC architecture is to separate application logic from the user interface (UI). The View part, as the name suggests, refers to the UI part of the software, and this is completely separated from the application logic which along with the domain-specific data constitutes the Model. The Controller is in charge of receiving input from the UI and initiating an appropriate call on Model objects. Data is then returned by the Model which is directly delivered to the View (without any intervention from the Controller).</p>
<p>In the Web domain, the UI is HTML and the inputs received by the Controller are the GET and POST requests. The Controller then hands this over accordingly to certain Model objects, which then how to handle the request. The separation allows for a great deal of flexibility and the individual implementation of each piece of the architecture can be replaced without affecting the other pieces as long as the same interface is offered. This is especially important in business/commerce applications where policy changes can easily be applied by creating a different Model object, without touching the UI side.</p>
<h2>MVC and Ruby frameworks</h2>
<p>This kind of separation is what not only enables flexibility but in turn allows for rapid development of Web applications using Ruby frameworks. Most often the task of choosing the right Ruby framework boils down to the task of designing the proper MVC architecture (i.e. the individual pieces required for your particular application) and once these are well specified, this can guide you towards making more informed decisions regarding which framework to use.</p>
<p>To begin with it’s important to describe what the application domain is, that is what will the data look like. Are they records or are they files? What relationships, if at all, exist between different data elements and so on? This in turn will lead you to creating a new database for the application’s needs. Of course in many cases, you may already have the database available and that will automatically answer many of these questions for you.</p>
<p>The next task is to identify what can happen to this data. Can records be updated? Can they be deleted? And so on. It makes sense to spend a lot of time planning out all the possible ways in which you want user’s to be able to interact with data. Although, the Model part can be replaced easily, remember that the interfaces will still need to be consistent. Policy also plays a big role here.</p>
<p>Once you have elucidated all that you want the Model to do, you can proceed with the UI design. How do you want the application to appear in the Web-browser?</p>
<p>Ruby frameworks that support MVC (and most of them do) make the actual implementation of each of these pieces a breeze, because each of the three pieces of the architecture is handled by a specific sub-system, and if you have spent the requisite amount of time in planning you can pick and choose the specific functionality that you need for each sub-system. The skeleton is already implemented, you need to decide the details and you are away.</p>
<h2>Choosing the right framework</h2>
<p>The importance of the planning stage cannot be overstated, because the planning stage giving give you a road map as to what kind of framework you need. Essentially, this begins with the question of what you need to get done. What are the features and capabilities that are essential to the success of your project. This then gives you the outline for what you need.</p>
<p>Once you have the outline, there are several other things that you need to consider. Does a given framework have a strong support system and community? Is it used by a number of people? (Usually a more popular variant, or one that has been around for longer is also more likely to have a stronger support system and community.) Another related consideration is how well a framework is documented. In many cases there might be situations where your development team either has previous experience working with a certain kind of framework, or a certain style of Ruby programming, and this can direct your search for a framework.</p>
<p>If starting from scratch, then things such as how easy a particular framework is to use and understand, as well as how easy is it to develop and deploy, become important considerations. The development and deployment speed are also important considerations when not starting from scratch depending on the project timeline. Perhaps one of the things that is sometimes underrated is how comfortable you are using a particular framework.</p>
<p>Generally, to avoid errors/bugs and to ensure the stability of your web application, it makes sense to use a popular solution since finding answers to common questions and fixes for common solutions is easy. The most popular solutions (and those that have been around for a long time) have also been extensively tried and tested, ensuring a certain peace-of-mind for developers using it. And this, clearly, has something to do with that comfort aspect.</p>
<p>Compatibility checks (before installing a framework), and making sure that the framework has been installed and is functioning properly will ensure that once the development cycle is underway it will be relatively smooth sailing – at least in terms of the framework aspects – the problems of debugging the non-framework parts, and ensuring that you are using the framework in the right/desired way will remain, but don’t worry, these will surely get resolved as your project progresses (more so in the case of readily available documentation and strong support).</p>
<h2>Ruby Frameworks</h2>
<h3><a href="http://rubyonrails.org/">Ruby on Rails</a></h3>
<p><a href="http://rubyonrails.org/"><img src="http://www.thepixelart.com/images/ruby-frameworks/rubyonrails.jpg" border="0" alt="Ruby on Rails" width="550" height="329" /></a></p>
<p>Ruby on Rails is perhaps the most popular Ruby framework that is in use today, and with good reason. Ruby on Rails was the framework that popularized the MVC approach as it relates to the task of web programming. This is done primarily by the Ruby on Rails MVC framework that consists of the Model (ActiveRecord), View (ActionView) and Controller (ActionController) sub-systems. It is open source and comes with a rich set of features including: AJAX support (via Prototype/script.aculo.us JS frameworks); a host of testing (Unit, Functional and Integration), security, caching and form-validation frameworks; internalization and localization functionality; and there are also pretty standard features such as DB migration frameworks, MVC Push capability, etc.</p>
<p>Ruby on Rails emphasizes agile development, “Convention over Configuration” (developer only needs to concentrate on the non-conventional aspects of application development) and “Don’t Repeat Yourself” (information is located in a single, unambiguous place). Since it has been around for a while, there is a well-defined API, extensive documentation as well as tutorials all over the web and finally a vibrant and supportive community.</p>
<h3><a href="http://raa.ruby-lang.org/project/nitro/">Nitro</a></h3>
<p><a href="http://raa.ruby-lang.org/project/nitro/"><img src="http://www.thepixelart.com/images/ruby-frameworks/raanitro.jpg" alt="" width="550" height="330" /></a></p>
<p>Nitro is actually a framework that was around before Ruby on Rails became popular. There are a number of web developers who still swear by it. One of its finest features is a powerful template system that has a pipeline of configurable transformation steps. It is open source and along with the template style programming, there is the option of using the MVC approach as well. Og is the persistence layer (or object relational data mapping; ORM) that works with Nitro.</p>
<p>Nitro is comparable in its feature set to Ruby on Rails including AJAX support, testing frameworks, MVC Push, caching frameworks, security frameworks, internalization and localization, DB migration and more. However, its support and documentation is suspect, and in recent times interest in Nitro seems to have waned.</p>
<h3><a href="http://merbivore.com/">Merb</a></h3>
<p><a href="http://merbivore.com/" target="http://merbivore.com/"><img src="http://www.thepixelart.com/images/ruby-frameworks/merb.jpg" border="0" alt="Merb" width="550" height="330" /></a></p>
<p>Merb is probably the second most popular framework in use after Ruby on Rails these days. One of the most interesting things about Merb is that it chooses not to make ORM, Templates, etc. frameworks/functionality part of the native system. These can be added via extension plug-ins and this allows the developer the flexibility to use whichever solution he/she prefers (or what makes sense for a given project). It does have a good feature-set that is part of the base system. It is an MVC based framework and has some of the best documentation (including useful getting-started tutorials).</p>
<h3><a href="http://camping.rubyforge.org/files/README.html">Camping</a></h3>
<p><a href="http://camping.rubyforge.org/files/README.html"><img src="http://www.thepixelart.com/images/ruby-frameworks/camping.jpg" border="0" alt="Camping" width="550" height="330" /></a></p>
<p>At less than 4kb code size, Camping is one of the lightest Ruby frameworks around. In fact, it is one of the developers’ stated goals to always keep it below 4kb code size. It once again follows the MVC philosophy and provides a single file in which to carry out the development of the entire application (although the separation between each sub-system is still maintained). The developers also suggest that once initial or prototype development is completed in Camping the project can easily be migrated to Ruby on Rails. So in some cases Camping is a precursory development environment for Ruby on Rails.</p>
<p>Camping does not have AJAX support, internalization and localization frameworks, nor security, caching and form-validation frameworks, but has pretty much other necessary functionality such as DB migration, Testing frameworks, ORM, etc.</p>
<h3><a href="http://ramaze.net/">Ramaze</a></h3>
<p><a href="http://ramaze.net/"><img src="http://www.thepixelart.com/images/ruby-frameworks/ramaze.jpg" border="0" alt="Ramaze" width="550" height="328" /></a></p>
<p>Ramaze’s emphasis is on simplicity. Ramaze also has a strict adherence to modular design and having minimal dependencies between different modules. Ramaze comes with a templating system called Ezamar and also has a fairly full-featured support for MVC applications.</p>
<h3><a href="http://www.sinatrarb.com/">Sinatra</a></h3>
<p><a href="http://www.sinatrarb.com/"><img src="http://www.thepixelart.com/images/ruby-frameworks/sinatra.jpg" border="0" alt="Nitro" width="550" height="329" /></a></p>
<p>Sinatra is a Ruby framework which like Camping is perhaps more suited for prototype development than actual business applications. It does, however, have a pretty standard set of features including MVC support, DB migration, Template and Caching frameworks. It does not have AJAX support, nor security and form-validation frameworks.</p>
<h3><a href="http://iowa.swiftcore.org/">IOWA</a></h3>
<p><a href="http://iowa.swiftcore.org/"><img src="http://www.thepixelart.com/images/ruby-frameworks/iowa.jpg" border="0" alt="IOWA" width="550" height="329" /></a></p>
<p>IOWA is another framework that has been around for a long time. It has support for both Event based and Cluster based modes of operation. Interest in IOWA has also slacked in recent years.</p>
<h3><a href="http://halcyon.rubyforge.org/">Halcyon</a></h3>
<p><a href="http://halcyon.rubyforge.org/"><img src="http://www.thepixelart.com/images/ruby-frameworks/halcyon.jpg" border="0" alt="Halcyon" width="550" height="329" /></a></p>
<p>Halcyon is another lightweight framework whose aim is to support service-oriented applications (SOA). It has AJAX support through the JSON interface, and overall is a very well documented project and has a strong support community.</p>
<h3><a href="http://rubywaves.com/">Waves</a></h3>
<p><a href="http://rubywaves.com/"><img src="http://www.thepixelart.com/images/ruby-frameworks/waves.jpg" border="0" alt="Waves" width="552" height="331" /></a></p>
<p>Waves seeks to provide an alternative solution for applications that do not need an MVC architecture. Thus, it has support for such things as AJAX, Adobe Air, mashups, OpenID, rich-client mobile apps, etc. This is done through a rich DSL. Waves’ developer speaks of the concept of <a href="http://rubywaves.com/more-about-request-mappings/">request lambdas</a> which are basically request mapping into a certain block, which results in a certain level of flexibility by removing some of the responsibilities of the Controller and placing the emphasis more on mappings. However, note that this is a subtle or implicit modification to the MVC pattern, and so use only after you have a good grasp of what’s going on and are confident that this is exactly what you need.</p>
<h3><a href="http://sourceforge.net/projects/ruby-waf/">RubyWAF</a></h3>
<p><a href="http://sourceforge.net/projects/ruby-waf/"><img src="http://www.thepixelart.com/images/ruby-frameworks/ruby_waf.jpg" border="0" alt="RubyWAF" width="550" height="329" /></a></p>
<p>Ruby Web Application Framework (RubyWAF) is based on Jakarta Structs and enables web/wap application development. It can also serve as a starting point for developing custom Ruby frameworks.</p>
<h3><a href="http://rubyeventmachine.com/">Ruby/EventMachine</a></h3>
<p><a href="http://rubyeventmachine.com/"><img src="http://www.thepixelart.com/images/ruby-frameworks/rubyeventmachine.jpg" border="0" alt="Ruby/EventMachine" width="550" height="330" /></a></p>
<p>It is a Network I/O and Event Management system for Ruby.</p>
<p><a href="http://rubyeventmachine.com/"></a></p>
<h3><a href="http://webby.rubyforge.org/">Webby</a></h3>
<p><a href="http://webby.rubyforge.org/"><img src="http://www.thepixelart.com/images/ruby-frameworks/webby.jpg" border="0" alt="Webby" width="550" height="330" /></a></p>
<p>Webby is a Content Management System, which the publisher’s call a website management system because they think it is not big enough.</p>
<h3><a href="http://radiantcms.org/">Radiant</a></h3>
<p><a href="http://radiantcms.org/"><img src="http://www.thepixelart.com/images/ruby-frameworks/radiant.jpg" border="0" alt="Radiant" width="550" height="330" /></a></p>
<p>Like Webby Radiant is an open source Content Management System.</p>
<h3><a href="http://ruby-gnome2.sourceforge.jp/">Ruby-GNOME2</a></h3>
<p><a href="http://ruby-gnome2.sourceforge.jp/"><img src="http://www.thepixelart.com/images/ruby-frameworks/rubygnome2.jpg" border="0" alt="Ruby-GNOME2" width="550" height="330" /></a></p>
<p>And finally little off-beat, for Linux enthusiasts: Ruby-GNOME2, a set of Ruby language bindings for the GNOME 2.0 development environment.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.thepixelart.com/ruby-frameworks-what-are-they-and-why-should-you-choose-one-which-one/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Take Your HTML Tables to a New Level with JavaScript Frameworks</title>
		<link>http://www.thepixelart.com/take-your-html-tables-to-a-new-level-with-javascript-frameworks/</link>
		<comments>http://www.thepixelart.com/take-your-html-tables-to-a-new-level-with-javascript-frameworks/#comments</comments>
		<pubDate>Sat, 02 Jan 2010 16:10:03 +0000</pubDate>
		<dc:creator>Editorial Team</dc:creator>
				<category><![CDATA[Articles]]></category>
		<category><![CDATA[Tools]]></category>
		<category><![CDATA[Web]]></category>
		<category><![CDATA[Web Design]]></category>
		<category><![CDATA[Web Development]]></category>

		<guid isPermaLink="false">http://www.thepixelart.com/?p=465</guid>
		<description><![CDATA[With basic HTML tables, the structure and the way the table are presented inherits the native html style. And if you like to change it then you need to change the underlying HTML code or spend time in adding attributes to all tables tags, in order to style it with CSS . But what if you want to make the tables more interesting, more dynamic, more visual appealing without spending so much time. JS libraries/frameworks will allow you to add a range of dynamic behavior to your tables and manipulate it for better presentation on a webpage without spending much time. We decided to list a few for the benefit of those who intend to use tables with JavaScript(JS).]]></description>
			<content:encoded><![CDATA[<p><img src='http://www.thepixelart.com/wp-content/plugins/simple-post-thumbnails/timthumb.php?src=/wp-content/thumbnails/465.png&amp;w=132&amp;h=132&amp;zc=1&amp;ft=jpg' alt='post thumbnail' /></p>
<p>With basic HTML tables, the structure and the way the table are presented inherits the native html style. And if you like to  change it then you need to change the underlying HTML code or spend time in adding attributes to all  tables tags, in order to style it with CSS . But what if  you want to make the tables more interesting, more dynamic, more visual appealing without spending so much  time. Yes you  can certainly use JavaScript for this, but coding it from scratch will be time  consuming and it’s not worth. But JS libraries/frameworks will allow you to add a range of  dynamic behavior to your tables  and manipulate  it for better  presentation on a webpage without  spending much time. We decided to list a few for the  benefit of those who intend to use tables with JavaScript(JS). Most of these are for  the popular jQuery, MooTools and Prototype/script.aculo.us JS frameworks. Since  most of the JS frameworks mentioned below are plug-ins that work on top of  existing JS frameworks, it is recommended that you take a look at those base  frameworks first.&nbsp;But there are a few others that do not require an  existing JS frameworks.</p>
<p><span id="more-465"></span></p>
<h2> Solutions Based on jQuery</h2>
<h3><a href="http://flexigrid.info/">Flexigrid</a></h3>
<p> Flexigrid is a lightweight plug-in for jQuery that converts an ordinary HTML table into an extremely flexible and feature-rich datagrid (or Flexigrid). Resizable columns, ability to connect to an XML data source through AJAX, data scrolling, search, pagination, themes, and the ability to add a toolbar are some of its features.</p>
<p><a href="http://flexigrid.info/"><img src="http://www.thepixelart.com/images/table-js/image9.png" alt="Flexigrid" width="550" height="308" /></a></p>
<h3><a href="http://tablesorter.com">tablesorter</a></h3>
<p>  tablesorter is a jQuery plug-in for turning a standard HTML table with THEAD and TBODY tags into a sortable table without page refreshes. tablesorter can successfully parse and sort many types of data including linked data in a cell. It has a number of interesting features including: multi-column sorting; support for secondary hidden sorting; preloaded sorters for text, URLs, integers, currency, etc. – your own can be added easily; cross-browser support (except Chrome); and the system is easily extensible via the widget system.</p>
<p> <a href="http://tablesorter.com"> <img src="http://www.thepixelart.com/images/table-js/image10.png" alt="tablesorter" width="550" height="142" /></a></p>
<h3><a href="http://pure-essence.net/2008/02/26/jquery-plugin-tablerowcheckboxtoggle/">TableRowCheckboxToggle </a></h3>
<p>This is a plug-in that generically adds the toggle checkbox function to any table rows you specify based on the css class names. It will by default toggle any checkboxes within the table row. You can also manually exclude checkboxes based on various criteria: name, id, or CSS classes. And more. See the live Demo<a href= "http://pure-essence.net/stuff/webTips/jqueryTableRowCheckboxToggle.html"> here</a>.</p>
<p><a href="http://pure-essence.net/2008/02/26/jquery-plugin-tablerowcheckboxtoggle/"><img src="http://www.thepixelart.com/images/table-js/image30.png" width="501" height="166" /></a></p>
<h3><a href="http://dev.iceburg.net/jquery/tableEditor/demo.php">TableEditor</a></h3>
<p>  TableEditor provides flexible in place editing of HTML tables.  </p>
<p> <a href="http://dev.iceburg.net/jquery/tableEditor/demo.php"><img src="http://www.thepixelart.com/images/table-js/image11.png" alt="TableEditor" width="550" height="202" /></a></p>
<h3><a href="http://reconstrukt.com/ingrid/"> ingrid</a></h3>
<p>  ingrid is a jQuery datagrid plug-in. It makes it possible to achieve a number of datagrid behaviors such as column resizing, paging, sorting, row and column styling, etc. Take a look at the <a href="http://reconstrukt.com/ingrid/src/example1.html">examples</a> page to see some of the possibilities.</p>
<p><a href="http://reconstrukt.com/ingrid/"><img src="http://www.thepixelart.com/images/table-js/image29.png" width="550" height="262" /></a></p>
<h3><a href="http://p.sohei.org/jquery-plugins/columnmanager/"> columnManager</a></h3>
<p> columnManager is a jQuery plug-in that enables you to toggle the visibility of table columns (collapsing / expanding) and also to save the state of the table until the user’s next visit to the webpage.</p>
<p><a href="http://p.sohei.org/jquery-plugins/columnmanager/"><img src="http://www.thepixelart.com/images/table-js/image28.png" width="471" height="126" /></a></p>
<h3><a href="http://www.datatables.net/"> DataTables</a></h3>
<p>DataTables is a plug-in that adds advanced interaction tools to your HTML tables. These include: on-the-fly sorting; multi-column sorting with automatic detection of data types; variable length pagination; and an extensible API to add more features of your own. It can display data from almost any data source – DOM, JS array, AJAX files and supports Server-side processing (PHP, C#, Perl, Ruby, AIR, Gears, …). Tables can also be themed by CSS or jQuery UI ThemeRoller.</p>
<p> <a href="http://www.datatables.net/"><img src="http://www.thepixelart.com/images/table-js/image12.png" alt="DataTables" width="550" height="366" /></a></p>
<h3><a href="http://gregweber.info/projects/uitablefilter"> uiTableFilter</a></h3>
<p> uiTableFilter by Greg Weber is a jQuery plug-in for filtering table rows. The arrows at the top of each column enable you to sort accordingly. He has also created another great plug-in <a href="http://gregweber.info/projects/uitableedit">uiTableFilter</a>, which  makes tables editable by users.</p>
<p><a href="http://gregweber.info/projects/uitablefilter"><img src="http://www.thepixelart.com/images/table-js/image27.png" width="550" height="268" /></a></p>
<h3><a href="http://www.webtoolkit.info/scrollable-html-table-plugin-for-jquery.html"> Scrollable HTML Table</a></h3>
<p> Convert ordinary HTML tables into Scrollable HTML Tables.</p>
<p><a href="http://www.webtoolkit.info/scrollable-html-table-plugin-for-jquery.html"><img src="http://www.thepixelart.com/images/table-js/image26.png" width="430" height="195" /></a></p>
<h3><a href="http://www.hanpau.com/index.php?page=jqtreetable"> JQTreeTable</a></h3>
<p> JQTreeTable enables you to have a tree-view for an ordinary HTML table. It also has graceful degradation inasmuch as, once the browser’s JS is turned off, the plain HTML table view is maintained.  </p>
<p> <a href="http://www.hanpau.com/index.php?page=jqtreetable"><img src="http://www.thepixelart.com/images/table-js/image14.png" alt="JQTreeTable" width="424" height="266" /></a></p>
<h3><a href="http://plugins.jquery.com/project/csv2table"> CSV2Table</a></h3>
<p> A plug-in that helps to load a <a href="http://en.wikipedia.org/wiki/Comma-separated_values">CSV file</a> and load the data values directly into a table.</p>
<p><a href="http://plugins.jquery.com/project/csv2table"><img src="http://www.thepixelart.com/images/table-js/image25.png" width="461" height="241" /></a></p>
<h3><a href="http://neoalchemy.org/tablePagination.html"> Table Pagination</a></h3>
<p>This can help to create a pagination element at the bottom of a table. </p>
<p> <a href="http://neoalchemy.org/tablePagination.html"><img src="http://www.thepixelart.com/images/table-js/image15.png" alt="Table Pagination" /></a></p>
<h3><a href="http://www.isocra.com/2008/02/table-drag-and-drop-jquery-plugin/"> Table Drag and Drop</a></h3>
<p> Pretty self-explanatory name: enables users to reorder rows according to their own criteria (for example priority). Individual rows can be marked as non-draggable and/or non-droppable (i.e. other rows cannot be dropped on to them).</p>
<p><a href="http://www.isocra.com/2008/02/table-drag-and-drop-jquery-plugin/"><img src="http://www.thepixelart.com/images/table-js/image24.png" width="491" height="234" /></a></p>
<h2> Solutions Based on MooTools</h2>
<h3><a href="http://www.omnisdata.com/omnigrid/">OmniGrid</a></h3>
<p>  OmniGrid is a plug-in for the MooTools JS framework that can add a rich set of functionality to your data grids and HTML tables. These functionality include: pagination; Server-side and Client-side sorting; resizable columns; connection to back-end databases through AJAX; multiple selection and more. It has been inspired, according to its author, Marko Šantic, by Flexigrid (see above) and PhatFusion’s sortableTable (see below).</p>
<p><a href="http://www.omnisdata.com/omnigrid/"><img src="http://www.thepixelart.com/images/table-js/image16.png" alt="OmniGrid" width="550" height="218" /></a></p>
<h3><a href="http://andrewplummer.com/code/tablegear/">TableGear</a></h3>
<p> TableGear is a MooTools+PHP powered component that enables you to manipulated data on the web in various ways. It helps you easily create interactive HTML tables. Features include: sorting; the ability to add and delete rows on-the-fly; keyboard shortcuts; graceful degradation to simple tables in the absence of JS capability on a browser; data loading through AJAX and POST; and is fully XHTML compliant.</p>
<p><a href="http://andrewplummer.com/code/tablegear/"><img src="http://www.thepixelart.com/images/table-js/image23.png" alt="TableGear" width="550" height="156" /></a></p>
<h3><a href="http://www.phatfusion.net/sortabletable/">Phatfusion Sortable Table</a></h3>
<p> Phatfusion’s sortableTable enables you to sort and filter HTML tables. Sorting can be done on numbers, strings, dates and currency. Filtering can be done on columns.</p>
<p><a href= "http://www.phatfusion.net/sortabletable/"><img src="http://www.thepixelart.com/images/table-js/image17.png" alt="Phatfusion Sortable Table" /></a></p>
<h3><a href="http://davidwalsh.name/mootools-zebra-tables-plugin">Zebra Tables</a></h3>
<p> Zebra Tables, developed by David Walsh, is a MooTools plug-in that implements “Zebra” presentation on ordinary tables (i.e. alternate rows are different colors).  </p>
<p> <a href="http://davidwalsh.name/mootools-zebra-tables-plugin"><img src="http://www.thepixelart.com/images/table-js/image18.png" alt="Zebra Tables" /></a></p>
<h3><a href="http://joomlicious.com/mootable/"> mootable</a></h3>
<p> mootable enables conversion of an ordinary HTML table into what the author’s call a mootable, which is simply saying that the table now will have interactive capabilities such as sorting, resizable columns, and the ability to hide/show columns. They degrade gracefully because they are still simple HTML tables at heart.</p>
<p><a href="http://joomlicious.com/mootable/"><img src="http://www.thepixelart.com/images/table-js/image22.png" width="550" height="290" /></a></p>
<h2> Solutions Based on Prototype</h2>
<h3><a href="http://www.millstream.com.au/view/code/tablekit/">TableKit</a></h3>
<p>  This is a whole set of enhancements for HTML tables. It implements a number of functionality including: column sorting, column resizing, row striping, user cell editing using AJAX, and more. </p>
<p><a href="http://www.millstream.com.au/view/code/tablekit/"><img src="http://www.thepixelart.com/images/table-js/image19.png" alt="TableKit" width="550" height="305" /></a></p>
<h2> Solutions Based on Yahoo! UI</h2>
<h3><a href="http://developer.yahoo.com/yui/datatable/">YUI DataTables</a></h3>
<p> The Yahoo! UI (YUI) people provide their own control for making powerful HTML tables which is called DataTable. YUI DataTables has pretty advanced functionality: sorting; user cell editing; pagination; scrolling; row, cell and column selection; ability to hide, show, insert or delete columns; and more.</p>
<p><a href="http://developer.yahoo.com/yui/datatable/"><img src="http://www.thepixelart.com/images/table-js/image20.png" alt="YUI DataTables" /></a></p>
<h2>Solutions that Do Not Depend on an Existing Framework</h2>
<h3><a href="http://www.sprymedia.co.uk/article/KeyTable">KeyTable</a></h3>
<p> Although KeyTable has a couple of jQuery components, since they are just two it can be easily be made to work with other JS frameworks. It takes any simple HTML table and is able to add things such as keyboard-based navigation and event bindings. The author (Allan Jardine) calls this Excel style navigation, because the table entries can be edited without the use of a mouse. The current cell is highlighted (see below) using event handling functions through the API: “focus” – when a cell is highlighted; “blur” – when user navigates away from the highlighted cell; “return” – when user hits a return key for the current cell; and “esc” – when user hits the escape key. </p>
<p><a href="http://www.sprymedia.co.uk/article/KeyTable"><img src="http://www.thepixelart.com/images/table-js/image1.png" alt="KeyTable" width="550" height="285" /></a></p>
<h3><a href="http://cssglobe.com/lab/tablecloth/">Tablecloth</a></h3>
<p> Tablecloth is a lightweight, easy to use, and unobtrusive way to add style and behavior to html table elements. Tablecloth searches your HTML source for table elements and processes each one individually. It is easily extensible with the function that gets called when the user clicks on a table cell being editable.</p>
<p> <a href="http://cssglobe.com/lab/tablecloth/"> <img src="http://www.thepixelart.com/images/table-js/image2.png" alt="Tablecloth" width="550" height="233" /></a></p>
<h3><a href="http://www.leigeber.com/2009/03/table-sorter/">TinyTable </a></h3>
<p>At a 2.5KB download size this is an extremely lightweight solution, that adds a number of attractive features to simple HTML tables which include the following: alternate row highlighting; header class toggling; auto data type recognition; selective column sorting; column highlighting; optional pagination; support for links; and date/link parsing. See the live demo <a href="http://sandbox.leigeber.com/table-sorter/index.html"> here</a>.</p>
<p><a href="http://www.leigeber.com/2009/03/table-sorter/"><img src="http://www.thepixelart.com/images/table-js/image3.png" alt="TinyTable" /></a></p>
<h3><a href="http://www.drasticdata.nl/DDHome.php?m=3">DrasticData</a></h3>
<p> This is an exciting PHP/JS/MySQL based open source package with an AJAX-based datagrid, which comes with editing support, a configurable tag cloud and even a Google Mapping component. See the host of examples for what is possible. The example below shows reverse sorted “Continent” column and hitting the  red “x” on row 6 has brought up the dialog box. Check out other examples at the <a href="http://www.drasticdata.nl/DDHome.php?m=3"> homepage</a>.</p>
<p> <a href="http://www.drasticdata.nl/DDHome.php?m=3"><img src="http://www.thepixelart.com/images/table-js/image4.png" alt="DrasticData" width="550" height="292" /></a></p>
<h3><a href="http://javascriptools.sourceforge.net/"> JavaScripTools</a></h3>
<p> JavaScripTools is a collection of useful JS components, functions, and classes with the aim of simplifying the web developer’s task. Its features include parsers/formatters for various data types. In particular, it comes with a dynamic table function that is useful for creating sortable HTML tables.</p>
<p><a href="http://javascriptools.sourceforge.net/"><img src="http://www.thepixelart.com/images/table-js/image21.png" width="344" height="163" /></a></p>
<h3><a href="http://www.workingwith.me.uk/articles/scripting/standardista_table_sorting"> Standardista Table Sorting</a></h3>
<p> This is a JS module that allows to take an HTML data table and make it sortable by any column. Sorting can be done on various data types including IP addresses, Currency, numbers, Plain text, and dates. The example shows the “price” column sorted.</p>
<p> <a href="http://www.workingwith.me.uk/articles/scripting/standardista_table_sorting"><img src="http://www.thepixelart.com/images/table-js/image5.png" alt="Standardista Table Sorting" /></a></p>
<h3><a href="http://www.frequency-decoder.com/2007/11/15/unobtrusive-table-actions-script"> Unobtrusive Table Actions Script</a></h3>
<p> The author’s goal was to create a solution which was not tied to any underlying JS framework and so we get the Unobtrusive Table Actions Script. This has a number of useful features including: “Zebra” striping of rows; row hover, cell hover, and column hover effects; table rows can be selected on click and the behavior on click can be programmed via a callback function, allowing for flexibility for the web developer; row and column highlighting and selection; and the ability to hyperlink cell contents. See example below: row 6 has been selected; the mouse pointer is actually on row 10 and column 2 causing that to be highlighted as also the entire row; finally, there is a hyperlink at cell (1,1). </p>
<p> <a href="http://www.frequency-decoder.com/2007/11/15/unobtrusive-table-actions-script"><img src="http://www.thepixelart.com/images/table-js/image6.png" alt="sortable" width="550" height="308" /></a></p>
<h3><a href="http://www.kryogenix.org/code/browser/sorttable/"> sorttable</a></h3>
<p> sorttable is a JS framework that enables you to convert all your HTML tables and make them sortable (see example below – name column is reverse sorted). sorttable uses DOM, sorts a number of different data types and it is completely unobtrusive. </p>
<p> <a href="http://www.kryogenix.org/code/browser/sorttable/"><img src="http://www.thepixelart.com/images/table-js/image7.png" alt="Unobtrusive Table Actions Script" /></a></p>
<h3><a href="http://www.danvk.org/wp/dragtable/"> dragtable</a></h3>
<p> As its name suggest dragtable makes table columns draggable. Users can now change the order of table columns by dragging them wherever they need to. Enable users to change order of table columns by simply dragging them. It can and is meant to be used in conjunction with sorttable.</p>
<p> <a href="http://www.danvk.org/wp/dragtable/"><img src="http://www.thepixelart.com/images/table-js/image8.png" alt="dragtable" /></a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.thepixelart.com/take-your-html-tables-to-a-new-level-with-javascript-frameworks/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>Path Specific Re-direction using JavaScript</title>
		<link>http://www.thepixelart.com/path-specific-redirection-using-javascript/</link>
		<comments>http://www.thepixelart.com/path-specific-redirection-using-javascript/#comments</comments>
		<pubDate>Sat, 26 Dec 2009 15:49:07 +0000</pubDate>
		<dc:creator>Vailancio Rodrigues</dc:creator>
				<category><![CDATA[Web]]></category>
		<category><![CDATA[Web Development]]></category>
		<category><![CDATA[detect redirection]]></category>
		<category><![CDATA[JavaScript]]></category>
		<category><![CDATA[redirection url]]></category>
		<category><![CDATA[sc]]></category>
		<category><![CDATA[script]]></category>

		<guid isPermaLink="false">http://www.thepixelart.com/?p=450</guid>
		<description><![CDATA[You might have seen and used lot of JavaScript redirection before. What sets this JavaScript apart from others is that it redirects to a new location only on chosen page. This can come in handy if you don’t have access to sever-sided scripting, which is usually used for such path/URL specific re-direction. Like most of the weblogs – blogger, Wordpress MU, etc.]]></description>
			<content:encoded><![CDATA[<p><img src='http://www.thepixelart.com/wp-content/plugins/simple-post-thumbnails/timthumb.php?src=/wp-content/thumbnails/450.jpg&amp;w=132&amp;h=132&amp;zc=1&amp;ft=jpg' alt='post thumbnail' /></p>
<p>You might have seen and used lot of JavaScript redirection before. What sets this JavaScript apart from others is that it redirects to a new location only on chosen page. This can come in handy if you don’t have access to sever-sided scripting, which is usually used for such path/URL specific re-direction. Like most of the weblogs – blogger, Wordpress MU, etc.</p>
<pre class="brush: plain;">
&lt;!--Path Specific Re-direction from www.thepixelart.com--&gt;
&lt;script language=&quot;JavaScript&quot;&gt;
var currentpage=location.href;
var spage=&quot;http://pixelart.com/web&quot;;
if(currentpage==spage)
 setTimeout(&quot;location.href = 'http://www.example.com';&quot;,10000);
&lt;/script&gt;
</pre>
<p>Here <strong>“spage”</strong> is the page which needs to be redirected to new location. www.example.com represents the new location and the number “10000” is the time delay.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.thepixelart.com/path-specific-redirection-using-javascript/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Useful Processing Applet Source Codes</title>
		<link>http://www.thepixelart.com/useful-processing-applet-source-codes/</link>
		<comments>http://www.thepixelart.com/useful-processing-applet-source-codes/#comments</comments>
		<pubDate>Tue, 10 Nov 2009 09:27:28 +0000</pubDate>
		<dc:creator>Vailancio Rodrigues</dc:creator>
				<category><![CDATA[Articles]]></category>
		<category><![CDATA[Tools]]></category>
		<category><![CDATA[Web]]></category>
		<category><![CDATA[Web Development]]></category>
		<category><![CDATA[Applet]]></category>
		<category><![CDATA[art]]></category>
		<category><![CDATA[Below]]></category>
		<category><![CDATA[browser]]></category>
		<category><![CDATA[cannot]]></category>
		<category><![CDATA[check]]></category>
		<category><![CDATA[ClothBase]]></category>
		<category><![CDATA[code]]></category>
		<category><![CDATA[Codes]]></category>
		<category><![CDATA[community]]></category>
		<category><![CDATA[EleganceSea]]></category>
		<category><![CDATA[EyeBubblesTwinkleMorphMonsterBounceShellBarebonesSegmentmonster]]></category>
		<category><![CDATA[GalaxyFauDropFontMappaBirch]]></category>
		<category><![CDATA[input]]></category>
		<category><![CDATA[Java]]></category>
		<category><![CDATA[language]]></category>
		<category><![CDATA[Line]]></category>
		<category><![CDATA[loveTube]]></category>
		<category><![CDATA[MachineRibonsFluidsAlso]]></category>
		<category><![CDATA[Motion]]></category>
		<category><![CDATA[processing]]></category>
		<category><![CDATA[programming]]></category>
		<category><![CDATA[project]]></category>
		<category><![CDATA[RaycoasterMagnetsStripesSwingingGlowHairballBugsEye]]></category>
		<category><![CDATA[share]]></category>
		<category><![CDATA[Source]]></category>
		<category><![CDATA[ThingFall]]></category>
		<category><![CDATA[tool]]></category>
		<category><![CDATA[TreeCherry]]></category>
		<category><![CDATA[TreePerlyburlyMeshyWashing]]></category>
		<category><![CDATA[use]]></category>
		<category><![CDATA[Useful]]></category>
		<category><![CDATA[work]]></category>

		<guid isPermaLink="false">http://www.thepixelart.com/?p=246</guid>
		<description><![CDATA[Processing is great tool for programmers for creating graphics which can be manipulated with any given input. It’s free and open source and uses Java programming language which in itself is great. There is very little you cannot do with Processing. Besides producing graphics for videos, art installations and concerts, it can be used for web (within browser) like flash. It has a vibrant and creative community of developers, teachers, and artists that share their work, contribute ideas, and expand the features of Processing.]]></description>
			<content:encoded><![CDATA[<p><img src='http://www.thepixelart.com/wp-content/plugins/simple-post-thumbnails/timthumb.php?src=/wp-content/thumbnails/246.jpg&amp;w=132&amp;h=132&amp;zc=1&amp;ft=jpg' alt='post thumbnail' /></p>
<p><em><a href="http://processing.org/">Processing</a></em> is great tool for programmers for creating graphics which can be manipulated with any given input. It’s free and open source and uses Java programming language which in itself is great. There is very little you cannot do with Processing. Besides producing graphics for videos, art installations and concerts, it can be used for web (within browser) like flash. It has a vibrant and creative community of developers, teachers, and artists that share their work, contribute ideas, and expand the features of Processing. <span id="more-246"></span> Below we feature <strong>useful free source code of various web applets created with processing</strong>. And it’s not limited  for use of web only,but you can use the code to create amazing interactive static and motion graphics in any project.</p>
<p><a href="http://www.jrc313.com/processing/cloth/">Cloth</a></p>
<p><a href="http://www.jrc313.com/processing/cloth/"><img src="http://www.thepixelart.com/images/pro_web_applets/1.jpg" alt="" width="500" height="250" /></a></p>
<p><a href="http://toxi.co.uk/p5/base26/">Base26</a></p>
<p><a href="http://toxi.co.uk/p5/base26/"><img src="http://www.thepixelart.com/images/pro_web_applets/2.jpg" alt="" width="500" height="250" /></a></p>
<p><a href="http://kitdashit.com/processing/lineOfElegance/">Line of Elegance</a></p>
<p><a href="http://kitdashit.com/processing/lineOfElegance/"><img src="http://www.thepixelart.com/images/pro_web_applets/3.jpg" alt="" width="500" height="250" /></a></p>
<p><a href="http://levitated.net/daily/levSeaThing.html">Sea Thing</a></p>
<p><a href="http://levitated.net/daily/levSeaThing.html"><img src="http://www.thepixelart.com/images/pro_web_applets/4.jpg" alt="" width="500" height="250" /></a></p>
<p><a href="http://www.complexification.net/gallery/machines/substrate/appletl/index.html">Fall in love</a></p>
<p><a href="http://www.complexification.net/gallery/machines/substrate/appletl/index.html"><img src="http://www.thepixelart.com/images/pro_web_applets/5.jpg" alt="" width="500" height="250" /></a></p>
<p><a href="http://www.bit-101.com/p5/">Tube Galaxy</a></p>
<p><a href="http://www.bit-101.com/p5/"><img src="http://www.thepixelart.com/images/pro_web_applets/6.jpg" alt="" width="499" height="250" /></a></p>
<p><a href="http://www.bandajamoncrudo.com/Other/FauConcretePoem/">FauDropFont</a></p>
<p><a href="http://www.bandajamoncrudo.com/Other/FauConcretePoem/"><img src="http://www.thepixelart.com/images/pro_web_applets/7.jpg" alt="" width="500" height="250" /></a></p>
<p><a href="http://www.bioillogic.com/Processing/mappa/applet/index.html">Mappa</a></p>
<p><a href="http://www.bioillogic.com/Processing/mappa/applet/index.html"><img src="http://www.thepixelart.com/images/pro_web_applets/8.jpg" alt="" width="500" height="250" /></a></p>
<p><a href="http://www.blprnt.com/processing/birchtree/">Birch Tree</a></p>
<p><a href="http://www.blprnt.com/processing/birchtree/"><img src="http://www.thepixelart.com/images/pro_web_applets/10.jpg" alt="" width="500" height="246" /></a></p>
<p><a href="http://www.blprnt.com/processing/cherrytree/">Cherry Tree</a></p>
<p><a href="http://www.blprnt.com/processing/cherrytree/"><img src="http://www.thepixelart.com/images/pro_web_applets/11.jpg" alt="" width="500" height="250" /></a></p>
<p><a href="http://www.davebollinger.com/works/perlyburly/applet/">Perlyburly</a></p>
<p><a href="http://www.davebollinger.com/works/perlyburly/applet/"><img src="http://www.thepixelart.com/images/pro_web_applets/12.jpg" alt="" width="500" height="250" /></a></p>
<p><a href="http://www.flong.com/storage/experience/meshy/">Meshy</a></p>
<p><a href="http://www.flong.com/storage/experience/meshy/"><img src="http://www.thepixelart.com/images/pro_web_applets/13.jpg" alt="" width="500" height="250" /></a></p>
<p><a href="http://www.jbox2d.org/demos/washingmachine.html">Washing Machine</a></p>
<p><a href="http://www.jbox2d.org/demos/washingmachine.html"><img src="http://www.thepixelart.com/images/pro_web_applets/14.jpg" alt="" width="500" height="250" /></a></p>
<p><a href="http://www.openprocessing.org/visuals/?visualID=1079">Ribons</a></p>
<p><a href="http://www.openprocessing.org/visuals/?visualID=1079"><img src="http://www.thepixelart.com/images/pro_web_applets/15.jpg" alt="" width="500" height="250" /></a></p>
<p><a href="http://memo.tv/files/memotv/msafluid_for_processing/index.html">Fluids</a></p>
<p>Also check <a onclick="window.open('raycoaster_applet.php','popup','width=300,height=400,scrollbars=no,resizable=no,toolbar=no,directories=no,location=no,menubar=no,status=no,left=0,top=0'); return false" href="http://incubator.quasimondo.com/processing/raycoaster.php" target="_blank">Raycoaster</a></p>
<p><a href="http://memo.tv/files/memotv/msafluid_for_processing/index.html"><img src="http://www.thepixelart.com/images/pro_web_applets/16.jpg" alt="" width="500" height="250" /></a></p>
<p><a href="http://www.flight404.com/p5/magnets2D/">Magnets</a></p>
<p><a href="http://www.flight404.com/p5/magnets2D/"><img src="http://www.thepixelart.com/images/pro_web_applets/17.jpg" alt="" width="500" height="250" /></a></p>
<p><a href="http://www.mostpixelsever.com/examples/stripes/">Stripes</a></p>
<p><a href="http://www.mostpixelsever.com/examples/stripes/"><img src="http://www.thepixelart.com/images/pro_web_applets/18.jpg" alt="" width="496" height="246" /></a></p>
<p><a href="http://jbox2d.nfshost.com/processing/examples/index.html">Swinging</a></p>
<p><a href="http://jbox2d.nfshost.com/processing/examples/index.html"><img src="http://www.thepixelart.com/images/pro_web_applets/19.jpg" alt="" width="500" height="250" /></a></p>
<p><a href="http://www.ghostagency.net/processing/glow/index.html">Glow</a></p>
<p><a href="http://www.ghostagency.net/processing/glow/index.html"><img src="http://www.thepixelart.com/images/pro_web_applets/20.jpg" alt="" width="500" height="250" /></a></p>
<p><a href="http://www.wxs.ca/applets/hairball/">Hairball</a></p>
<p><a href="http://www.wxs.ca/applets/hairball/"><img src="http://www.thepixelart.com/images/pro_web_applets/21.jpg" alt="" width="500" height="250" /></a></p>
<p><a href="http://grahamgrafx.com/thesis/applications/beta9/">Bugs</a></p>
<p><a href="http://grahamgrafx.com/thesis/applications/beta9/"><img src="http://www.thepixelart.com/images/pro_web_applets/22.jpg" alt="" width="500" height="250" /></a></p>
<p><a href="http://robotacid.com/PBeta/eye4anEye/index.html">Eye for an Eye</a></p>
<p><a href="http://robotacid.com/PBeta/eye4anEye/index.html"><img src="http://www.thepixelart.com/images/pro_web_applets/23.jpg" alt="" width="500" height="250" /></a></p>
<p><a href="http://informationandvisualization.de/blog/bubbles-built-processing/demo">Bubbles</a></p>
<p><a href="http://informationandvisualization.de/blog/bubbles-built-processing/demo"><img src="http://www.thepixelart.com/images/pro_web_applets/24.jpg" alt="" width="500" height="250" /></a></p>
<p><a href="http://jonasmansson.com/processing/twinkle/applet/">Twinkle</a></p>
<p><a href="http://jonasmansson.com/processing/twinkle/applet/"><img src="http://www.thepixelart.com/images/pro_web_applets/25.jpg" alt="" width="500" height="250" /></a></p>
<p><a href="http://www.rmx.cz/monsters/morph_monster/index.html">MorphMonster</a></p>
<p><a href="http://www.rmx.cz/monsters/morph_monster/index.html"><img src="http://www.thepixelart.com/images/pro_web_applets/26.jpg" alt="" width="500" height="250" /></a></p>
<p><a href="http://www.kummerow.org/processing/bounce/bounce.html">Bounce</a></p>
<p><a href="http://www.kummerow.org/processing/bounce/bounce.html"><img src="http://www.thepixelart.com/images/pro_web_applets/27.jpg" alt="" width="500" height="250" /></a></p>
<p><a href="http://www.ssdesigninteractive.com/g2/applets/shell3D_1/index.html">Shell</a></p>
<p><a href="http://www.ssdesigninteractive.com/g2/applets/shell3D_1/index.html"><img src="http://www.thepixelart.com/images/pro_web_applets/28.jpg" alt="" width="500" height="250" /></a></p>
<p><a href="http://www.andrewberman.org/projects/p5barebones/">Barebones</a></p>
<p><a href="http://www.andrewberman.org/projects/p5barebones/"><img src="http://www.thepixelart.com/images/pro_web_applets/29.jpg" alt="" width="500" height="250" /></a></p>
<p><a href="http://www.rmx.cz/monsters/segmentmonster/index.html">Segmentmonster</a></p>
<p><a href="http://www.rmx.cz/monsters/segmentmonster/index.html"><img src="http://www.thepixelart.com/images/pro_web_applets/30.jpg" alt="" width="500" height="250" /></a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.thepixelart.com/useful-processing-applet-source-codes/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Displaying Random Images in Wordpress</title>
		<link>http://www.thepixelart.com/displaying-random-images-wordpress/</link>
		<comments>http://www.thepixelart.com/displaying-random-images-wordpress/#comments</comments>
		<pubDate>Thu, 29 Oct 2009 17:07:09 +0000</pubDate>
		<dc:creator>Vailancio Rodrigues</dc:creator>
				<category><![CDATA[Tutorials]]></category>
		<category><![CDATA[Web Design]]></category>
		<category><![CDATA[Web Development]]></category>
		<category><![CDATA[cms hacks]]></category>
		<category><![CDATA[hacks]]></category>
		<category><![CDATA[html]]></category>
		<category><![CDATA[image]]></category>
		<category><![CDATA[image rotator]]></category>
		<category><![CDATA[php]]></category>
		<category><![CDATA[post hacks]]></category>
		<category><![CDATA[random]]></category>
		<category><![CDATA[random image]]></category>
		<category><![CDATA[random image php]]></category>
		<category><![CDATA[random image script]]></category>
		<category><![CDATA[wordpress]]></category>

		<guid isPermaLink="false">http://www.thepixelart.com/?p=215</guid>
		<description><![CDATA[Small code snippet that will allow you to display random images, every time the page loads.]]></description>
			<content:encoded><![CDATA[<p><img src='http://www.thepixelart.com/wp-content/plugins/simple-post-thumbnails/timthumb.php?src=/wp-content/thumbnails/215.jpg&amp;w=132&amp;h=132&amp;zc=1&amp;ft=jpg' alt='post thumbnail' /></p>
<p>Small code snippet that will allow you to display random images, every time the page loads. Major advantage of using it is that you no longer have to make use of scripts (JavaScript) which can be bulky, especially on the older browsers. Though  we have used this code with images only, it can be easily used for any other object to be displayed in random order. It’s more of PHP than Wordpress.</p>
<p><span id="more-215"></span></p>
<h2>Code</h2>
<p>Place this code anywhere in your Wordpress template – header, footer, etc, with appropriate changes to CSS.</p>
<pre class="brush: xml;">
&lt;div id=&quot;image&lt;?php echo rand(1,4); ?&gt;&quot;&gt;&lt;/div&gt;
 </pre>
<p>Change (1,4) depending upon the number of images.</p>
<h2>CSS</h2>
<p>Add this CSS code to the Wordpress template CSS file.</p>
<pre class="brush: css;">
#image1 {
background:url(img/image1.jpg);
width:500px;
height:100px;
}
#image2 {
background:url(img/image2.jpg);
width:500px;
height:100px;
}
#image3 {
background:url(img/image3.jpg);
width:500px;
height:100px;
}
#image4 {
background:url(img/image4.jpg);
width:500px;
height:100px;
}
 </pre>
]]></content:encoded>
			<wfw:commentRss>http://www.thepixelart.com/displaying-random-images-wordpress/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Create a Typing Text Effect using jQuery</title>
		<link>http://www.thepixelart.com/create-a-typing-text-effect-using-jquery/</link>
		<comments>http://www.thepixelart.com/create-a-typing-text-effect-using-jquery/#comments</comments>
		<pubDate>Wed, 26 Aug 2009 12:20:04 +0000</pubDate>
		<dc:creator>Vailancio Rodrigues</dc:creator>
				<category><![CDATA[Tutorials]]></category>
		<category><![CDATA[Web]]></category>
		<category><![CDATA[Web Design]]></category>
		<category><![CDATA[Web Development]]></category>
		<category><![CDATA[code]]></category>
		<category><![CDATA[effect]]></category>
		<category><![CDATA[function]]></category>
		<category><![CDATA[html]]></category>
		<category><![CDATA[JavaScript]]></category>
		<category><![CDATA[jquery]]></category>
		<category><![CDATA[jTicker]]></category>
		<category><![CDATA[language]]></category>
		<category><![CDATA[script]]></category>
		<category><![CDATA[sourcecode]]></category>
		<category><![CDATA[Text]]></category>
		<category><![CDATA[ticker]]></category>

		<guid isPermaLink="false">http://www.thepixelart.com/?p=3</guid>
		<description><![CDATA[You must have seen typing text Effect on many flash websites. jTicker jQuery plugin  can used for such effect with the use of flash. This effect comes in handy when you want to force the visitor to reader the text. ]]></description>
			<content:encoded><![CDATA[<p><img src='http://www.thepixelart.com/wp-content/plugins/simple-post-thumbnails/timthumb.php?src=/wp-content/thumbnails/3.png&amp;w=132&amp;h=132&amp;zc=1&amp;ft=jpg' alt='post thumbnail' /></p>
<p>For long now flash has been dominating the interactive web animation, using JavaScript was a daunting task. But introduction of frameworks like jQuery, MooTools, Scriptaculous, etc have made animating web component much easier. Another advantage of using these frameworks over flash is that they are search engine friendly. Though search engine do not index JavaScript, actual content is present in html or other SEO friendly code.<br />
<span id="more-3"></span><br />
You must have seen this text effect on many flash websites. jTicker is a jQuery plugin that can be used for creating such effect without the use of flash. This effect comes in handy when you want to force the visitor to read the text. But should be used wherever necessary, as the usability suffers. jTicker can be declared on any element and can be stylized using CSS. You can also use event buttons to play, stop and control the speed of the effect.</p>
<h2>HTML</h2>
<p>Let us start with html markup. Make sure that you have linked the .js files correctly.</p>
<pre class="brush: xml;">
&lt;!DOCTYPE html PUBLIC &quot;-//W3C//DTD XHTML 1.0 Strict//EN&quot; &quot;http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd&quot;&gt;
&lt;html xmlns=&quot;http://www.w3.org/1999/xhtml&quot; xml:lang=&quot;en&quot; lang=&quot;en&quot;&gt;
&lt;head&gt;
&lt;meta http-equiv=&quot;Content-Type&quot; content=&quot;text/html; charset=utf-8&quot; /&gt;
&lt;title&gt;jticker | Demo&lt;/title&gt;
&lt;script type=&quot;text/javascript&quot; SRC=&quot;js/jquery-1.3.2.min.js&quot;&gt;&lt;/script&gt;
&lt;script type=&quot;text/javascript&quot; SRC=&quot;js/jquery.jticker.js&quot;&gt;&lt;/script&gt;
&lt;/head&gt;
&lt;body&gt;
&lt;div id=&quot;content&quot;&gt;
  &lt;h2&gt;jTicker Demo  &lt;/h2&gt;
  &lt;div id=&quot;ticker&quot;&gt;
    &lt;div&gt;
      &lt;h3&gt;What does jTicker do?&lt;/h3&gt;
        &lt;p&gt;jTicker takes an elements' children and displays them one by one, in sequence, writing their text 'ticker tape' style. It is smart enough to ticker text from an element heirarchy, inserting elements back into the DOM tree as it needs them. That means almost any content can be 'tickered'.&lt;/p&gt;
        &lt;p&gt;It can be controlled with jQuery events.&lt;/p&gt;
        &lt;a class=&quot;next&quot; href=&quot;#&quot;&gt;next&lt;/a&gt;
    &lt;/div&gt;
    &lt;div&gt;
      &lt;h3&gt;Not my cup of tea, really, ...&lt;/h3&gt;
        &lt;p&gt;annoying little blinky things trying to distract attention when you want to get on with the serious business of reading a website, but if it's your thing, here it is.&lt;/p&gt;

        &lt;a class=&quot;next&quot; href=&quot;#&quot;&gt;next&lt;/a&gt;
    &lt;/div&gt;
    &lt;div&gt;
        &lt;h3&gt;jTicker has some neat features:&lt;/h3&gt;
        &lt;ul&gt;
        	&lt;li&gt;jTicker can be declared on any element, and it respects that element's DOM tree, printing it back out with the same hierarchy.&lt;/li&gt;
            &lt;li&gt;jTicker handles any number of alternating cursors (or just one).&lt;/li&gt;

            &lt;li&gt;jTicker's cursor container is styleable using the class .cursor, or can be defined as your own jQuery object&lt;/li&gt;
            &lt;li&gt;jTicker reacts to jQuery events &quot;play&quot;, &quot;stop&quot; and &quot;control&quot;. You can try them out below.&lt;/li&gt;
        &lt;/ul&gt;
        &lt;a class=&quot;next&quot; href=&quot;#&quot;&gt;next&lt;/a&gt;
    &lt;/div&gt;

    &lt;div&gt;
        &lt;h3&gt;There is one caveat:&lt;/h3&gt;

        &lt;ul&gt;
            &lt;li&gt;&lt;span&gt;jTicker can't understand text and children at the same level (I don't know how to do that yet), so if you want some text and then a link, you have to wrap the text in, say, a span, like this:&lt;/span&gt;
                &lt;code&gt;|span| some text |/span| |a|and then a link|/a|&lt;/code&gt;
            &lt;/li&gt;
            &lt;li&gt;But obviously not with those brackets. That's another thing, jTicker is not good at handling html character entities. So make that two caveats.&lt;/li&gt;
        &lt;/ul&gt;
        &lt;a class=&quot;next&quot; href=&quot;#&quot;&gt;next&lt;/a&gt;
    &lt;/div&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;/body&gt;
&lt;/html&gt;
 </pre>
<h2>CSS</h2>
<p>Add this code to your CSS file or to the &lt;style&gt;</p>
<pre class="brush: css;">
  #ticker
    {height: 12em; padding: 0.6em 0; margin: 0 0 1.8em 0; border-top:3px solid #efefef; border-bottom:3px solid #efefef; position: relative;}
  #ticker .cursor
    {display: inline-block; background: #565c61; width: 0.6em; height: 1em; text-align: center;}
  #ticker p
    {margin-bottom: 0.8em;}
  #ticker code
    {margin: 0.4em 0.4em; display: block;}
  #ticker .next
    {position: absolute; bottom: 1em;}
</pre>
<h2>JavaScript</h2>
<p>Now initialize jTicker by adding this JavaScript to &lt;head&gt; between &lt;script type=&#8221;text/javascript&#8221;&gt;&lt;/script&gt;</p>
<pre class="brush: jscript;">
&lt;!--
  jQuery(document).ready(function(){
    // Instantiate jTicker
	jQuery(&quot;#ticker&quot;).ticker({
 		cursorList:  &quot; &quot;,
 		rate:        10,
 		delay:       4000
	}).trigger(&quot;play&quot;).trigger(&quot;stop&quot;);

    // Trigger events
    jQuery(&quot;.stop&quot;).click(function(){
        jQuery(&quot;#ticker&quot;).trigger(&quot;stop&quot;);
        return false;
    });

    jQuery(&quot;.play&quot;).click(function(){
        jQuery(&quot;#ticker&quot;).trigger(&quot;play&quot;);
        return false;
    });

    jQuery(&quot;.speedup&quot;).click(function(){
        jQuery(&quot;#ticker&quot;)
        .trigger({
            type: &quot;control&quot;,
            item: 0,
            rate: 10,
            delay: 4000
        })
        return false;
    });

    jQuery(&quot;.slowdown&quot;).click(function(){
        jQuery(&quot;#ticker&quot;)
        .trigger({
            type: &quot;control&quot;,
            item: 0,
            rate: 90,
            delay: 8000
        })
        return false;
    });

    jQuery(&quot;.next&quot;).live(&quot;click&quot;, function(){
        jQuery(&quot;#ticker&quot;)
        .trigger({type: &quot;play&quot;})
        .trigger({type: &quot;stop&quot;});
        return false;
    });

    jQuery(&quot;.style&quot;).click(function(){
        jQuery(&quot;#ticker&quot;)
        .trigger({
            type: &quot;control&quot;,
            cursor: jQuery(&quot;#ticker&quot;).data(&quot;ticker&quot;).cursor.css({width: &quot;4em&quot;, background: &quot;#efefef&quot;, position: &quot;relative&quot;, top: &quot;1em&quot;, left: &quot;-1em&quot;})
        })
        return false;
    });

  });

//--&gt;
</pre>
<p><a title="jTicker Demo" href="http://www.thepixelart.com/demo/jticker/" target="_blank">View Demo</a></p>
<p><a title="Source files" href="http://www.thepixelart.com/demo/jticker/files/jticker.zip" target="_blank">Download Files</a></p>
<p><a title="Visit Author Website For Latest Release" href="http://webdev.stephband.info/jticker/" target="_blank">Visit Authors Website</a></p>
<div id="_mcePaste" style="overflow: hidden; position: absolute; left: -10000px; top: 0px; width: 1px; height: 1px;"><img src="file:///C:/Users/admin/AppData/Local/Temp/moz-screenshot.jpg" alt="" /></div>
]]></content:encoded>
			<wfw:commentRss>http://www.thepixelart.com/create-a-typing-text-effect-using-jquery/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
	</channel>
</rss>
