![James Hibbard](https://uploads.sitepoint.com/wp-content/uploads/2019/02/1550836753jim1-150x150.jpg)
Network admin, freelance web developer and editor at SitePoint.
James's articles
![Quick-Tip: Show Modal Popup after Time Delay](https://uploads.sitepoint.com/wp-content/uploads/2016/09/1477382703popup-300x167.png)
James Hibbard demonstrates how to open a modal window with a time delay — a potentially useful technique to highlight a call to action on your site.
![How Did You Get Started? A Look at the Best & Worst Web Design Tools](https://uploads.sitepoint.com/wp-content/uploads/2016/07/1469440531Fotolia_115983695_Subscription_Monthly_M-300x200.jpg)
Spurred on by the news that Dreamweaver is making a comeback, James Hibbard looks at the best (and worse) web design tools he has worked with over the years
![jQuery’s JSONP Explained with Examples](https://uploads.sitepoint.com/wp-content/uploads/2016/06/1469194391server-with-cogs-300x193.jpg)
How to use jQuery's JSONP to get around the cross domain issues when loading external scripts by using an AJAX request that has a callback function.
James Hibbard demonstrates how to persist checkbox checked state (useful for remembering users' preferences) and implement a check/uncheck all button.
James Hibbard demonstrates the advantages of persisting multiple checkbox data to a database in Rails by means of a has_and_belongs_to_many_association.
This article shows how JavaScript can be used to create a simple style switcher. Local storage is used to remember the user's style preference.
In this tutorial James Hibbard demonstrates how to use FXRuby to make a GUI password manager.
Code to load images from Flickr public gallery images using the Flickr JSONP API.