31 Mar
Ajax4jsf was a project for an open source framework that added AJAX capabilities to the JavaServer Faces web application framework.
It was an early entrant to the JSF space, but did implement a still-rare feature, that of skinning.
Ajax4jsf is now contained entirely within the RichFaces project.
History
Ajax4jsf was created by Alexander Smirnov in early 2005. “Hot” new technologies of the time were AJAX and JavaServer Faces. Smirnov figured to merge the two, so that it would then be easy to have AJAX functionality within a JSF application.
The project began on SourceForge.net under the name Telamon (from the Shakespeare play, Antony and Cleopatra).
Later that same year, Smirnov joined Exadel and continued to develop the framework. The first version was released in March 2006, as part of Exadel Visual Component Platform or Exadel VCP. Later in 2006 it was split into the Ajax4jsf framework and RichFaces. While RichFaces provided a “component-centric” AJAX approach (components do everything you need), Ajax4jsf provided what’s called “page-oriented” AJAX support. The developer specifies what parts of the page should be processed on the server after some client-side user actions, and what client-side parts should be updated afterwards. Ajax4jsf became an open source project hosted on Java.net, while RichFaces became a commercial JSF component library.
In March 2007, JBoss and Exadel agreed a partnership where Ajax4jsf and RichFaces would now be under the JBoss umbrella and be called JBoss Ajax4jsf and JBoss RichFaces. RichFaces would now also be open sourced and free. In September 2007, JBoss and Exadel decided to merge Ajax4jsf and RichFaces under the RichFaces name. This made sense as both libraries now had the same free, open source licence. Having just one product also simplified versioning and compatibility issues.
Although now part of JBoss RichFaces, the code still contains references to the identifier ‘a4j’ .
31 Mar
AJAX.OOP is an open source JavaScript framework distributed under MIT License. Providing with OOP-style coding engine and AJAX requests handling functionality to create web2.0 components. Due to OOP paradigm AJAX.OOP library can be easily extended with additional functionality or used as core for other projects.
The JavaScript OOP Library
AJAX.OOP is a fast and scalable JavaScript Library for create JavaScript/AJAX components in an object oriented way.
Main feature – strong OOP paradigm implementation.AJAX.OOP engine allows the programmer to:
Create classes with object-like defining syntax
Inherit classes (both AJAX.OOP-style defined and created with native JavaScript code)
Aggregate classes (including aggregation of self and parent class with special operators this.$_self and this.$_super)
Define constructors as they are (name = ‘constructor’)
Override parent class properties and methods (but call parent if you need by using special access operator this.$super)
Access/call any parent properties and/or methods from any method of child class (just use this.$super accessor whenever you need to access parent properties and methods)
Use strict defined objects with workable ‘instanceof’ operator on them when instantiating an exemplar of AJAX.OOP classes
31 Mar
Reverse Ajax refers to an Ajax design pattern that uses long-lived HTTP connections to enable low-latency communication between a web server and a browser. Basically it is a way of sending data from client to server and a mechanism for pushing server data back to the browser.
This server–client communication takes one of two forms:
Client polling: the client repeatedly queries (polls) the server and waits for an answer.
Server pushing: a connection between a server and client is kept open and the server sends data when available.
Reverse Ajax describes the implementation of either of these models, or a combination of both. The design pattern is also known as Ajax Push, Full Duplex Ajax and Streaming Ajax.
Examples
The following is a simple example. Imagine we have 2 clients and 1 server, and client1 wants to send the message “hello” to every other client.
With traditional Ajax (polling):
client1 sends the message “hello”
server receives the message “hello”
client2 polls the server
client2 receives the message “hello”
client1 polls the server
client1 receives the message “hello”
With reverse Ajax (pushing):
client1 sends the message “hello”
server receives the message “hello”
server sends the message “hello” to all clients
Less traffic is generated with Reverse Ajax and messages are transferred with less delay (low-latency).
31 Mar
ASP.NET AJAX is a set of extensions to ASP.NET developed by Microsoft for implementing Ajax functionality. It is released under the Microsoft Public License.
Road Map
In its early development stages, ASP.NET AJAX was given the code name Atlas. Initial releases were made public to the development community in the form of CTPs (Community Technical Previews). The production version, ASP.NET AJAX 1.0 RTM; was released on January 23, 2007 as an extension to ASP.NET 2.0.
Important release milestones for ASP.NET AJAX are as follows:
CTPs – October, December 2005, January, March, April, June, July 2006
Beta – October, November 2006
Release Candidate (RC) – December 2006
ASP.NET AJAX 1.0 RTM – January 23, 2007
ASP.NET AJAX 3.5 – November 19, 2007 (as part of ASP.NET 3.5)
The next version, ASP.NET AJAX 4.0; will be part of the ASP.NET 4.0 framework release.
Browser support
ASP.NET AJAX runs on the following browsers:
Microsoft Internet Explorer (>= 6.0)
Mozilla Firefox (>= 1.5)
Opera (>= 9.0)
Apple Safari (>= 2.0)
Google Chrome
ASP.NET AJAX Suite
At present, the ASP.NET AJAX suite consists of the following components and packages:
Microsoft Ajax Library 3.5, which is a JavaScript library that provides the client-side features of the ASP.NET AJAX framework. Integrated in ASP.NET 3.5, the library is also available as a separate download for use in other environments, such as PHP.
A server framework – included in ASP.NET 3.5 – for building Ajax-enabled ASP.NET server controls. These components are also available for ASP.NET 2.0 in a separate package called ASP.NET 1.0 Extensions.
ASP.NET 2.0 AJAX Templates, a package with a set of Visual Studio templates for building ASP.NET AJAX applications with ASP.NET 2.0 and Visual Studio 2008.
ASP.NET AJAX Preview, a package with the new features that will be part of the future versions of the framework.
Microsoft Ajax Library
The Microsoft Ajax Library is a JavaScript library that provides the features for the client portion of the ASP.NET AJAX framework.
Components. The library provides an infrastructure to build either visual or non-visual JavaScript components. A global JavaScript object – Sys.Application – is responsible for managing the lifecycle of client components.
JavaScript extensions – An enhanced type system is introduced to emulate object-oriented constructs such as namespaces, classes and interfaces; and to perform reflection on client types.
Abstraction API – Common operations on the DOM (retrieving elements, setting styles and other manipulations) are automatically translated by the library into browser-specific calls.
Ajax – A set of client components is provided to handle Ajax requests and web-service calls.
Application Services – The library allows accessing the ASP.NET Membership, Authentication, Roles and Profile services from the client side.
Recently, new features have been announced as part of the ASP.NET AJAX 4.0 release:
Template Engine – Allows displaying data on the client side by using HTML templates and a custom binding notation. This approach avoids to perform page rendering on the server side.
Declarative instantiation of client components – Allows registration, instantiation and configuration of client components using markup code, without writing any imperative JavaScript code.
Live Bindings – Synchronize element properties.
The UpdatePanel Control
The UpdatePanel is an ASP.NET server control that updates portions of a web page without reloading it. Through a mechanism called asynchronous postback, the HTML for the region of the page wrapped by the control is sent by the server asynchronously through an Ajax request.
The ASP.NET controls that have been specified as content in an UpdatePanel are able to cause either synchronous (traditional) or asynchronous postbacks, by means of triggers.
A trigger is an event coming from an ASP.NET control that causes an UpdatePanel to refresh its contents. Through triggers, an asynchronous postback can be started also by controls that are declared outside the region of the ASP.NET page wrapped by the UpdatePanel control.
In the following code, only the content of the UpdatePanel control (the span element that displays the current date and time) is re-rendered every time the button is clicked.
<asp:Button ID=”Button1″ runat=”server” Text=”Refresh” />
<asp:UpdatePanel ID=”UpdatePanel1″ runat=”server”>
<Triggers>
<asp:AsyncPostBackTrigger ControlID=”Button1″ EventName=”Click” />
</Triggers>
<ContentTemplate>
<span><%= DateTime.Now %></span>
</ContentTemplate>
</asp:UpdatePanel>
Script Controls and Extenders
The server portion of the ASP.NET AJAX framework introduces two categories of ASP.NET server controls for adding client capabilities to server controls.
An Extender is used to add client functionality to an existing ASP.NET control, without the need to create a new server control.
A Script Control is a standalone ASP.NET control that offers both server and client functionality.
Web-services and JSON
ASP.NET AJAX framework brings JSON serialization features to the ASP.NET web-services and allows calling web-services from client-side Javascript, even using third-party Javascript-libraries like jQuery.
31 Mar
An Ajax framework is a framework that helps to develop web applications that use Ajax, a collection of technologies used to build dynamic web pages on the client side. Data is read from the server or sent to the server by JavaScript requests. However, some processing at the server side may be required to handle requests, such as finding and storing the data. This is accomplished more easily with the use of a framework dedicated to process Ajax requests. The goal of the framework is to provide the Ajax engine and associated server and client-side functions.
Types of frameworks
Ajax frameworks can be loosely grouped into categories according to the features they offer and the skills required of the user:
Direct Ajax frameworks
These frameworks require HTML, CSS and Ajax expertise: a developer is expected to author pages directly in HTML, and framework APIs deal directly with HTML elements. Cross-browser APIs are provided for a variety of purposes, commonly including communications, DOM manipulation, event handling, and sizing/moving/animating HTML elements.
These frameworks are generally smaller. They are commonly used for a web site such as a shopping experience, but not for a web application such as web-based email, at least not without further frameworks layered on top.
Indirect Ajax frameworks
These frameworks are based on compiler technology, where, instead of writing direct Ajax and Javascript, a high-level language is used instead, along with a compiler that turns the high-level language into Javascript. Indirect frameworks therefore require knowledge of the high-level language, CSS and HTML, and do not necessarily require a great deal of Ajax or Javascript expertise. The Indirect frameworks are typically accompanied by convenient libraries, modules and classes (written in the high-level language) that take care of communications, DOM manipulation including HTML element manipulation, and event handling.
The advantages of Indirect Ajax frameworks – compilation to Javascript – are:
the developer can effectively create their own Ajax framework using programming concepts and techniques appropriate to the high-level language (e.g. modules and classes) which are simply not present in the Javascript language.
the to-javascript compiler can enforce strong type-checking and definition rules that standalone javascript does not
a developer can program the web front-end in the same programming language as that which the server-side code is written in.
the high-level web widget sets of the Indirect Ajax frameworks have far more in common with Desktop widgets than they do with “traditional” web development.
the framework, through the compiler, can create code that takes care of browser incompatibilities at run-time, and thus can present a common browser-independent API to the developer.
Indirect Ajax frameworks have distinct and significant advantages:
Compared to Ajax component frameworks, the developer can use the available base class widgets to create their own widgets, in the high-level language with which they are familiar, instead of trying to get to grips with javascript.
The developer is therefore neither burdened by the bloat of Ajax component frameworks nor bound by their rigidity.
The developer has both the advantages of the Ajax component frameworks, and their associated widgets, as well as the advantages of the freedom of Direct Ajax frameworks.
Indirect Ajax frameworks can be used to even greater effect in combination with a Server-driven framework (typically using JSONRPC or XMLRPC).
Interestingly, Python and Ruby are a good match for compilation to Javascript, and a far better match than Java, because Java (and Java Virtual Machines) lack some of the run-time dynamic capabilities of Javascript, Python and Ruby. Fortunately for Java (and for GWT), it’s Java that is less dynamically capable than Javascript. The “class” capability of these high-level languages can be emulated using Javascript “prototype”. kalpesh
Ajax component frameworks
These frameworks offer pre-built components, such as tabbed panes, which automatically create and manage their own HTML. Components are generally created via JavaScript or XML tags, or by adding special attributes to normal HTML elements. These frameworks are generally larger, and intended for web applications rather than web sites.
Some component frameworks require the developer to have extensive HTML/CSS/Ajax experience and to do cross-browser testing. For example, grids, tabs, and buttons may be provided, but user input forms are expected to be authored directly in HTML/CSS and manipulated via Ajax techniques. Other frameworks provide a complete component suite such that only general XML and/or JavaScript abilities are required.
Ajax component frameworks can enable more rapid development than direct Ajax frameworks, but with less control, hence it is key that an Ajax component framework provides the following:
customization APIs, e.g., an event that fires when the user stops editing within a grid
skinning facilities, where appearance can be changed without affecting behavior or layout
programmatic control, e.g., dynamically adding tabs or dynamically creating components based on user data
extensibility—creation of new components based on other components, so that the benefits of a component-based framework are not lost
Server-driven Ajax frameworks
Several frameworks offer a server-side component-based development model with some degree of Ajax support.
Components are created and manipulated on the server using a server-side programming language. Pages are then rendered by a combination of server-side and client-side HTML generation and manipulation. User actions are communicated to the server via Ajax techniques, server-side code manipulates a server-side component model, and changes to the server component model are reflected on the client automatically.
These frameworks offer familiarity and efficiency for server-side developers at the possible expense of power and performance. Ajax frameworks that handle presentation completely within the browser may offer greater responsiveness if they handle more user interactions without server involvement. In a server-driven model, some UI interactions can react slowly, for example when an input field is dynamically enabled based on server-requests. Furthermore, server-dependent Ajax frameworks can not offer offline support. The approach is still popular for situations where the benefits of a full Ajax architecture can’t be captured or where server interaction is needed anyway.
Extending a framework may require the developer to understand which parts of the presentation are handled on the client vs on the server, and to code in JavaScript/Ajax as well as server-side code (an issue which can be overcome through the use of an Indirect Ajax framework, by choosing an Indirect Ajax framework with a compiler that accepts the same language as the server-side code).
31 Mar
Ajax (shorthand for asynchronous JavaScript and XML) is a group of interrelated web development techniques used on the client-side to create interactive web applications. With Ajax, web applications can retrieve data from the server asynchronously in the background without interfering with the display and behavior of the existing page. The use of Ajax techniques has led to an increase in interactive or dynamic interfaces on web pages. Data are usually retrieved using the XMLHttpRequest object. Despite the name, the use of XML is not actually required, nor do the requests need to be asynchronous.
Like DHTML and LAMP, Ajax is not a technology in itself, but a group of technologies. Ajax uses a combination of HTML and CSS to mark up and style information. The DOM is accessed with JavaScript to dynamically display, and to allow the user to interact with, the information presented. JavaScript and the XMLHttpRequest object provide a method for exchanging data asynchronously between browser and server to avoid full page reloads.
History
In the 1990s, web browsers and web sites were based on static pages and each user action required that the page be re-loaded from the server (or a new page loaded). This could slow down user interaction considerably.
Asynchronous loading of content first became practical when Java applets were introduced in the first version of the Java language in 1995. These allow compiled client-side code to load data asynchronously from the web server after a web page is loaded.[3] In 1996, Internet Explorer introduced the IFrame element to HTML, which also enables this to be achieved. In 1999, Microsoft created the XMLHTTP ActiveX control in Internet Explorer 5, which is now supported by Mozilla, Safari, Opera and other browsers as the native XMLHttpRequest object. The utility of background HTTP requests to the server and asynchronous web technologies remained fairly obscure until Google made a wide deployment of Ajax with Gmail (2004) and Google Maps (2005).
The term “Ajax” was coined in 2005 by Jesse James Garrett. However, a patent application covering this type of user interface was filed on September 3, 2003, thus predating the term itself by two years. This application resulted in US Patent #7,523,401 being issued to Greg Aldridge of Kokomo, IN.
On April 5, 2006 the World Wide Web Consortium (W3C) released the first draft specification for the object in an attempt to create an official web standard.
Technologies
The term Ajax has come to represent a broad group of web technologies that can be used to implement a web application that communicates with a server in the background, without interfering with the current state of the page. In the article that coined the term Ajax, Jesse James Garrett explained that the following technologies are required:
HTML or XHTML and CSS for presentation
the Document Object Model for dynamic display of and interaction with data
XML and XSLT for the interchange, and manipulation and display, of data, respectively
the XMLHttpRequest object for asynchronous communication
JavaScript to bring these technologies together
Since then, however, there have been a number of developments in the technologies used in an Ajax application, and the definition of the term Ajax. In particular, it has been noted that:
JavaScript is not the only client-side scripting language that can be used for implementing an Ajax application. Other languages such as VBScript are also capable of the required functionality. However JavaScript is the most popular language for Ajax programming due to its inclusion in and compatibility with the majority of modern web browsers.
XML is not required for data interchange and therefore XSLT is not required for the manipulation of data. JavaScript Object Notation (JSON) is often used as an alternative format for data interchange, although other formats such as preformatted HTML or plain text can also be used.
Classic Ajax involves writing ad hoc JavaScript on the client. A simpler if cruder alternative is to use standard JavaScript libraries that can partially update a page, such as ASP.Net’s UpdatePanel. Tools such as Echo2 and ZK enable fine grained control of a page from the server, using only standard JavaScript libraries.
Rationale
In many cases, related pages on a website consist of much content that is common between them. Using traditional methods, that content would have to be reloaded on every request. However, using Ajax, a web application can request only the content that needs to be updated, thus drastically reducing bandwidth usage and load time.
The use of asynchronous requests allows the client’s Web browser UI to be more interactive and to respond quickly to inputs, and sections of pages can also be reloaded individually. Users may perceive the application to be faster or more responsive, even if the application has not changed on the server side.
The use of Ajax can reduce connections to the server, since scripts and style sheets only have to be requested once.
State can be maintained throughout a Web site. JavaScript variables will persist because the main container page need not be reloaded
Drawbacks
Owing to their dynamic nature, Ajax interfaces are often harder to develop when compared to static pages.
Pages dynamically created using successive Ajax requests do not automatically register themselves with the browser’s history engine, so clicking the browser’s “back” button may not return the user to an earlier state of the Ajax-enabled page, but may instead return them to the last full page visited before it. Workarounds include the use of invisible IFrames to trigger changes in the browser’s history and changing the anchor portion of the URL (following a #) when Ajax is run and monitoring it for changes.
Dynamic web page updates also make it difficult for a user to bookmark a particular state of the application. Solutions to this problem exist, many of which use the URL fragment identifier (the portion of a URL after the ‘#’) to keep track of, and allow users to return to, the application in a given state.
Because most web crawlers do not execute JavaScript code, publicly indexable web applications should provide an alternative means of accessing the content that would normally be retrieved with Ajax, to allow search engines to index it.
Any user whose browser does not support JavaScript or XMLHttpRequest, or simply has this functionality disabled, will not be able to properly use pages which depend on Ajax. Similarly, devices such as mobile phones, PDAs, and screen readers may not have support for the required technologies. Screen readers that are able to use Ajax may still not be able to properly read the dynamically generated content. The only way to let the user carry out functionality is to fall back to non-JavaScript methods. This can be achieved by making sure links and forms can be resolved properly and do not rely solely on Ajax. In JavaScript, form submission could then be halted with “return false”.
The same origin policy prevents some Ajax techniques from being used across domains, although the W3C has a draft of the XMLHttpRequest object that would enable this functionality.
Like other web technologies, Ajax has its own set of vulnerabilities that developers must address. Developers familiar with other web technologies may have to learn new testing and coding methods to write secure Ajax applications.
Ajax-powered interfaces may dramatically increase the number of user-generated requests to web servers and their back-ends (databases, or other). This can lead to longer response times and/or additional hardware needs.
31 Mar
Read most landing pages touting a software application or script and you’ll often be left feeling that the product can do everything, including cure cancer.
Puffery is a very common form of marketing strategy, but one we need to look beyond when considering the purchase of a software package. By observing the following tips, you can help ensure that the package you select is right for you and if it turns out not to be, that you’re not out of pocket.
What you pay for..
.. is often what you get. This certainly applies to software and scripts. If you don’t have a lot of cash to spend, don’t expect to get a package that will have all the bells and buzzers you want; and if it does, be prepared for glitches or extensive editing.
This is often the case with software applications that were developed overseas and are being sold by overseas vendors. They tend to be cheaper and while the functionality may be there, often what suffers is the language; so be prepared for some tweaking of templates and language packs.
Don’t trust demos.
Often a software vendor will have a demo of their application available to try out on their site. This is a great way to get a general feel of a script, but how it operates on the vendor’s server and how it works on yours can be a totally different ball game; so don’t rely on a demo alone when making a purchasing decision.
Read the requirements.. carefully
Most software vendors will have a compatibility/server requirements page – review that carefully and bear in mind that just because (for example) an application is compatible with php5, it doesn’t mean it’s compatible with php4. Some applications will also need additional modules installed on the server that may be uncommon, so you need to be wary of those.
Know thy server
If you’re not sure what sort of operating system or modules are installed on your server or the versions, one of the easiest ways to find out is using a feature of php called phpinfo. That is assuming your server supports php, which most do.
phpinfo() is used to check configuration settings and for available predefined variables on a server.
It’s really easy to implement, simply open notepad or a text editor and add the following:
<?php
phpinfo();
?>
That’s it. Save the file as phpinfo.php and then upload it to your server, then view the file through your browser – you’ll be astounded at the degree of information it provides.
Don’t be distracted
Before going shopping for a software application or script, jot down a list of essential functions you need it to perform. Sometimes we can be dazzled by other features of software so much, we part with our cash and then discover that a critical element is missing.
Free trials
This is a great safeguard – just ensure that you install and use the software within the free trial period. I feel that a 7 day free trial isn’t enough to thoroughly put an application through its paces, so look for 30 days as a minimum.
Money back guarantee
Like a free trial, this provides reassurance that if the application doesn’t work or you’re not satisfied with its performance, you can get your cash back.
However, refund guarantees can be slippery beasties so check the fine print in the terms. For example, there may be a condition that the only case for a refund is if the script doesn’t work on your server. It may perform poorly, but unless it’s not working at all, you’re unlikely to get your money back. Also, as with a free trial, ensure the refund guarantee is good for at least 30 days.
Support and updates
Cheap applications and scripts can sometimes mean expensive, poor or non-existent support and software updates. It’s not unusual for companies to charge for support after X period of time, so it pays to look into this aspect and also the company generally. For example, when was the last time the product was updated with bug fixes or new features? What do others have to say about the company and their support?
It’s rare to purchase a script or software application that works straight out of the box so to speak – there’s usually some tweaking to do or little bugs to iron out, but by following the above tips, you can reduce nasty surprises to a minimum.
31 Mar
Maybe its people’s increasing comfort with the Internet and the anonymity it provides coupled with their increasing general despondency about life; but comment quality seems to be rapidly deteriorating.
I visit all sorts of blogs and forums and I’m noticing people confusing civil debate with garden-variety ad hominem exchanges. Many are just getting involved in conversations to disagree for the sake of disagreeing, hurl abuse or peddle their own products. Comment threads commonly also go way off topic.
Even at the academic level it’s a problem. I was reading a post on an environmental site frequented by scientists about dealing with folks who have problems understanding climate change. It started off fine, then a battle broke out between two seemingly very well educated participants regarding whether climate change was real. This was ubergeek stuff and much of it went over my head. However, the bickering became the focus and even these two masters’ degree-level fellows wound up swearing at each other. In doing so they both lost the argument and destroyed a good thread.
The noise to signal ratio is becoming very unsettling. There has been many occasions where I’ve had an interest in a topic and then had to claw through pages and pages of static; trying to learn more from the few people participating in the thread who have some genuine expertise in the topic and were trying to convey information rather than massage their own egos.
Something needs to be done and as site/forum/blog owners, we all play a role in addressing the issue.
If you take a look at forum guidelines, usually you’ll find general housekeeping rules such as:
- be polite
- stay on topic
Unfortunately, often these aren’t enforced. Ad hominem attacks have become the norm, but the problem is that most people do not understand what this term means. Essentially it means attacking the person, rather than addressing the issue and sometimes the attacks can be very subtle. You can learn more about ad hominem arguments here.
Perhaps we should be making it a privilege to contribute to a converstation rather than convey a message that it’s a right. Perhaps we need to attach status to comments being published, much like “letters to the editor” sections of newspapers were viewed. It’s not like being able to leave comments is the novelty it was a few years ago.
We shouldn’t be afraid to censor or moderate to keep things on track and keep user generated content useful. If someone is being a pain in the ass and won’t take notice of polite and gentle coaching – don’t put up with it. Zap ‘em. If their buddies kick up, zap them too. Keep zapping/moderating until you have the sort of community you want. If you end up with no-one commenting as a result – that may not be the disaster you think it will be – as long as your site’s focus isn’t a forum of course.
The problem is that if the trolls, self-promoters and whingers are the majority of your commenting population for whatever reason – that’s exactly what you’ll keep attracting. The best way to discourage trolls is to not feed them.
Freedom of speech is all well and good, but if folks are going to say something, they should make it useful and relevant – depending on the nature of the blog or forum of course.
.
If you’re scared of losing revenue, consider this. If threads on your blogs are getting bombarded with me too’s, trolls, nutters and general negativity, it can not only drive others from your site, it takes the focus away from your own products and services or those you advertise.
Not everything has to be open for comment and in some cases you’ll gain more than you lose by switching the feature off altogether. If you don’t want to do that or take an iron fist approach and you’re running a content site; try sticking an AdSense block or an ad for your products in where your comments would usually appear and stick the comments below that – I think you’ll soon see what I mean.
31 Mar
It’s 2010 and it’s high time that businesses and other organizations put their forms online. I don’t mean just a PDF download – people should be able to complete most forms online too.
In this day and age there is very little reason why anyone should have to print anything out or put a pen to paper when it comes to forms, nor have to fiddle around with PDF forms with funky encoding in a PDF editor.
My frustration with forms you have to download reached a peak after spending 2 hours tussling with a PDF form recently that would have taken 10 minutes if the form had been put online. In other circumstances, I wouldn’t have bothered and the merchant would have lost thousands of dollars of my business, simply through not having the signup process online.
If you really need paper copies of form data, print them out at your end. This idea about needing a “real” signature is just rubbish in most scenarios. An electronic signature *is* a legal signature.
Signatures are easily forged digitally or on paper. Try signing a document “Darth Vader” in an illegible scrawl and unless a check is being done against a drivers license or a credit card, it will pass the sniff test fine. Sometimes it will even if it is compared; that’s how much attention folks pay to this kind of thing.
If it’s good enough that we can spend thousands using credit cards online, then it should be good enough to be able to electronically sign any other type of form that doesn’t require personal sighting and witnessing. Good form implementations will usually provide identification details such as the user’s IP should the submission ever come into question.
Technology was meant to create the paperless office. It’s created more paper as we haven’t applied the technology properly.
The tools are there to build online forms of any kind. It’s time we all started using them.
If your HTML editor/web site builder doesn’t offer much in terms of form building options, all is not lost – there are many generators available and best of all, you don’t need to be a programmer to use them!
Free form builders and online business
There’s a stack of free form generators available online that can serve the needs of some businesses; but bear in mind that your visitors and customers will be submitting data via a third party; so you need to be sure that the service provider is trustworthy and secure.
Using a premium or free online form generator and processor service can also leave you high and dry should the company suddenly shut down. For some businesses, a day or two of downtime while you scrabble to find alternative provider can mean the loss of thousands of dollars in sales.
Locally hosted form builder software
Another option is installing a form builder on your own domain. These scripts are usually fairly simple to set up and provide you with a lot more flexibility, plus total control over the sensitive data being submitted by your valued customers.
One such form generator software I looked at today is Instant Form Pro. Some of the many features include:
Free live support
Easy to install and customize – one click install
Drag and drop interface
Full source code
Create unlimited number of forms
Multi page forms
Options to store submissions in a database, send via email or both
CSV export functionality
Form validation features
Full design and layout control via CSS
Publish preview functionality
Easy field adding and editing
CAPTCHA features to prevent spam submissions
IP Manager
Feature to allow forms to be printed
Submissions Manager
Web form templates
‘File upload’ field
Calendar features
Personalized email messages using data from fields to populate the message
Tell A Friend functionality
One year money-back guarantee
Instant Form Pro can build most types of web forms, whether it’s a simple contact or feedback for or a complex multi-page form allowing for file uploads or survey applications. There’s a demo of the generator on the Instant Form Pro site so you can get a better idea of how it works.
Related:
Web site builder software review
Creating online surveys
Michael Bloch
Taming the Beast
http://www.tamingthebeast.net
Tutorials, web content, tools and software.
Web Marketing, Internet Development & Ecommerce Resource
In the interests of transparency and disclosure, please note that the owner of Taming the Beast.net often receives goods and services reviewed for free, or may receive payments or affiliate commissions for advertising or referring others to merchants of products and services mentioned.
Copyright information…. This article is free for reproduction but must be reproduced in its entirety, including live links & this copyright statement must be included. Visit http://www.tamingthebeast.net for free Internet marketing and web development articles, tutorials and tools! Subscribe to our popular ecommerce/web design ezine!
29 Mar
By Kelsey Allen
The field of Human Resources is an important one to any company. As the liaison between the employees and upper management, the HR department is often responsible for making sure hiring, communication, relations, motivation, and more are operating smoothly. As with any good business manager or HR professional, you probably want to find out the latest trends, advice, and suggestions for ways to ensure your HR department is working as well as it can. The following blogs offer the wisdom that comes with experience, so take advantage of this opportunity to expand what you know.
General Human Resources Information
From HR directors at large corporations to consultants to companies around the world, these blogs offer advice that can be used by companies of any size.
1. Evil HR Lady. With experience at a Fortune 500 company, the Evil HR Lady takes all sorts of HR questions and answers them on her blog. This is a popular blog for good reason.
2. About.com Human Resources Blog. Read about a variety of topics pertaining to HR in this informative blog that includes posts on employee complaints, effective meetings, and celebrating holidays in the office.
3. TriNet’s HR Blog. Performance anxiety, confidence, performance feedback, and more are all topics discussed on this blog.
4. Talent Junction. For businesses of any size, this blog offers suggestions and tips to help companies prevent and solve HR issues.
5. Guerilla HR. Help the Guerilla HR “stamp out bad management” by reading this fun blog. Advice includes management through understanding, watching your language in the workplace, and motivating those in a slump.
6. Human Resources 101. This HR blog focuses on Human Resources in Canada with topics including employer branding, developing an employee handbook, and safety tips for hiring younger workers.
7. Performance and Talent Management Blog. Writing about how companies can make the most of their employees, this blog pays particular attention to strategic HR.
8. HR Funda. Diversity, salary compensation, employee performance management systems and more are among the subjects of this HR blog.
9. HR and Strategy. From aging to information overload, check out the posts on this blog that discuss issues important to HR departments everywhere.
10. HR Web Cafe. Sponsored by the ESI Employment Assistance Group, this blog offers fantastic topics that will be of use to small businesses or HR departments within large corporations
11. Diggings. While this blog from JobDig focuses on other topics in addition to HR, many of the posts are of interest to those in the HR field and frequently cover job searches, trends in specific fields, and more.
12. KnowHR. A consultant to some of the top companies, this blog from iFractal offers great tips for businesses hoping to straight talk on the subject of HR and ways to improve employee motivation through communication.
For Small and Mid-Sized Businesses
Small and mid-sized businesses have unique needs when it comes to HR issues. Learn from these blogs to find out how to help your business run smoothly.
14. YourHRGuy.com. Discussing such subjects as office politics, bad credit and the job search, and Generation Y, this blog is written by a practicing HR guy working for the past five years in Oregon.
15. EffortlessHR. From dealing with economic downturn to employee references to going green, the posts in this blog are all designed to help the small business person with their HR efforts.
16. The Human Resources Blog. Focusing on the needs of small and mid-sized businesses, this blog addresses such issues as implementing a drug-free workplace, effective time management techniques, and flex time.
17. Chief Happiness Officer. Find out what you can do to make your business the place that inspires workers to do a great job and have fun at the same time with this inspiring blog.
18. Consultant’s Desk. Find topics on communication, outsourcing, conflict of interest, and much more in this blog written by an experienced consultant who shares her knowledge through her blog.
19. Inc.com Human Resources Blog. Especially focused on the needs of entrepreneurs, this blog offers helpful advice on motivating staff, creating handbooks, and more.
20. HRjungle. With a variety of topics that are designed specifically to help the small business person, this blog offers plenty of information, suggestions, and tips.
Blogs for HR Professionals
Good HR professionals like to stay on top of the trends, news, and issues occurring in their field. Read these blogs to do just that.
21. HRTrainingCenter.com. Enjoy articles on topics such as negotiating workplace conflicts, hiring tests, and workplace taboos from this blog.
22. The HR Blog. Find news and fun articles that contribute to the life of an HR professional in this blog from BostonWorks.
23. The HR Capitalist. Participate in this blog by reading the articles and commenting. Meant to be a community effort, the posts here are timely and relevant to those in the HR field.
24. HR Resource for HR Professionals and Trainers. Find links, resources, and more at this blog designed just for HR professionals.
25. HR Thoughts. This HR Director at a medical center shares her experience and looks for response from readers to share theirs on the topics in her blog.
26. Human Resources Executive Search. Read these blog posts to learn how you can find and hire the best professionals for your company.
27. HRIM Mall. Get articles, news, job postings, tools, and more to help your department succeed in HR management with this resource.
28. Breaking Human Resource News. Get all the latest news designed specifically for professionals in the field of HR.
29. Green & White HR & Mgmt. The topics in this blog are excellent discussion points for those in the HR field. Join in a chat with others reading the same articles right on the blog page.
30. HR-Ambience. Though the posts have slowed on this blog, it is worth reading for the thought-provoking articles that deal with HR professional issues.
31. HR View. Use the blog posts here as starting points for discussion or thought when considering the dynamics of your department and company.
32. Human Resource Blog. This blog works for a community feel with a sharing of knowledge between HR professionals. Discuss topics such as unused vacation time, vacation policies by state, and if meals are required to be provided by employers.
Other HR Resources
From ideas outside the normal HR box to HR situations that don’t fit with the rest to topics just a bit different from the norm, these blogs are HR in focus, but with that little extra twist.
33. Seasonal Human Resources Blog. From Cool Works, this blog reports on networking, recruiting, and other HR topics important to both seasonal employers and those requiring less change-over.
34. Slow Leadership. The idea behind this organization is that management should slow down and think through decisions rather than reacting to situations. The blog includes topics from connecting vs. relating to thinking through why you feel you must be right.
35. Zealize Blog. The goal of this blogger is to put the “human” back into HR with companies tapping into the resources available in their employees.
36. Hidden Mojo. Find the potential hidden among your employees with the suggestions offered in this blog with tips for motivation, helping employees accept decisions they didn’t make, ways to make the workplace happier, and more.
37. HR Lawyers Blog. Writing about the legal issues surrounding HR, this blog offers news bits and advice for business people, those in the HR field, and HR lawyers.
38. Strategic HR Lawyer. This blog from an HR lawyer is both a news and information aggregator with relevant links to information that pertains to HR and the law.
39. Dr. Mercer’s Pre-Employment Testing & Hiring Expert Blog. Learn what you need to know about pre-employment testing and hiring strategies to ensure you are getting the best employees possible.
40. Past Five. Offering career advice and more, this blog is all about workplace and career development both during office hours and afterward.
41. Beyond HR. Reaching beyond the typical HR scope, this blog highlights HR issues and offers solutions in a “revolutionary” way.
42. Gruntled Employees. Prevent your employees becoming disgruntled with the tips available at this blog focused on keeping the workforce happy.
Recruitment Blogs
It’s own special section of HR, recruiting is an important element to finding the best employees for a company. These blogs will help recruiters, employers, students and job-seekers alike.
43. Cheezhead. This popular recruitment blog offers a main course of recruitment issues with a nice side dish of other HR topics.
44. Recruiting Fly. From applicant tracking systems to specific corporate job opportunities, this blog covers the latest news in recruiting.
45. Magic Pot of Jobs. These IT recruiters have put together a blog to help job searchers know what steps to take to give themselves the best advantage when it comes to landing the interview and the job.
46. Recruiting Animal. This collaborative blog, an extension of The Recruiting Animal Show, offers posts with timely topics that relate to the world of recruiting.
47. Amitai Givertz’s Recruitomatic Blog. This recruiting specialist shares his expertise through original blog posts including topics offering recruiting help as well as news about the recruiting industry.
48. Research Goddess. Get the latest news from the recruitment world brought to you in the posts at this blog.
49. A Recruiter Diary. This IT recruiter shares his knowledge with news and tips collected from several sources.
50. Recruiter Guy Blog. Stay on top of recruiting trends with information about what recruiters are using and what job-seekers find helpful with this fun and flashy blog.