A collection of WordPress snippets to make developers' lives just a bit easier. I'm not found of the current UI as it's not easy to skim, but the filter capability helps and I'm sure the site will improve as it grows.
JavaScript
CSS3 PIE
CSS3 PIE (Progressive Internet Explorer) is an IE behavior that extends it's capabilities by providing support for several CSS3 features such as border-radius, box-shadow, border-image, multiple background images and linear gradients for background images.
Selectivizr
A "JavaScript utility that emulates CSS3 pseudo-classes and attribute selectors in Internet Explorer 6-8."
jQuery Enlightenment, A Review
A few months ago Cody Lindley asked if I would review his new book, jQuery Enlightenment after he saw me tweet about it. I jumped at the chance, but due to many other projects, this review has seen many delays. My apologies to Cody and to you for not posting this review sooner. That said, I’m very happy to share my thoughts now that time permits and I think you’ll find it useful.
The Short Review
jQuery Enlightenment is great for anyone who has some experience with jQuery and wants to step up their game or is familiar with another JavaScript framework like Prototype or Dojo and wants to ramp up on the increasingly popular jQuery framework. The book is not for complete beginners, but if you have a foundation, you’ll be able to jump right in and learn.
At $15 for the PDF ebook, it’s a no-brainer. Buy a copy.
Two Quick Notes
First: when Cody released this book, jQuery was at 1.3.2. Between then and the time of this writing, jQuery 1.4 has been released. While there are some key differences introduced in 1.4, I don’t think they detract from Cody’s work.
Second: Cody gave me a copy of the book in return for this review. Luckily, I really like the book, so I feel confident in staking my reputation on the recommendation. I’m not receiving any form of affiliate payment for encouraging you to buy the book.
A Longer Review
So, obviously I like it. Here’s why.
It’s Accessible
Cody’s writing style is friendly and he has a knack for transforming complex concepts into understandable knowledge that you can quickly apply. He’s included a wealth of code, even better, he’s posted all the samples on JS Bin for easy access.
Additionally, as the file is a PDF, it is easy to take it with you on your phone, or using my favorite method – DropBox, which maintains the file across multiple machines. Keeping your copy open makes it easy to search for a particular event, effect or method while you’re working.
It Covers What You Need to Know
jQuery Enlightenment starts by explaining core jQuery concepts, quickly moving into more detailed and advanced topics. While I won’t reiterate everything (check out the table of contents on the site), I think it’s important to list some of the key concepts he does cover to show the breadth of the book:
- Traversing the DOM
- HTML manipulation, including a chapter on forms
- Events and Effects
- AJAX
- Performance Best Practices
- Writing a jQuery plugin
Yeah, Cody covers a lot in this book. While I’m by no means an expert, I’m comfortable with jQuery and I learned a lot. For example, I had somehow missed the existence of preventDefault()
and stopPropogation()
, so I’ve relied on return: false
. This works most of the time, but now I know that there’s extra granularity available to me should I need it. Nice.
Oh and don’t miss the gems in Chapter 12 (Miscellaneous Concepts) as he’s thrown in some very useful knowledge there at the end.
Wrapping Up
So, as I noted at the beginning, I think this is a great book and an easy purchase decision if you are familiar with JavaScript and are interested in jQuery.
Grab a Copy and Tell Us What You Think
I’d love to hear your opinion on the book. Would you recommend it too? Let me know in the comments.
SproutCore: Apple’s Flanking Move?
I wasn’t all that familiar with Sproutcore, Apple’s JavaScript framework prior to reading this article, but after thinking the arguments over, I think Apple has been flanking the other players in the application marketplace (both online and desktop) for a while. The article Cocoa for Windows + Flash Killer = SproutCore provides some very good reasons for Apple’s moves onto Windows with Safari and other apps; I highly recommend you read it if you’re the least bit interested in development on the Web, the iPhone and/or Rich Internet Applications (RIAs).
Being based on open web standards and being open source itself means SproutCore will enable developers to develop cross platform applications without being tied to either a plugin architecture or its vendor.
Sitting on top of web standards will also make it easy for Apple and the community to push SproutCore ahead without worrying about incompatible changes to the underlying layers of Windows, a significant problem for the old Yellow Box or some new Cocoa analog. SproutCore also lives in a well known security context, preventing worries about unknown holes being opened up by a new runtime layer.
Daniel Eran Dilger – Roughly Drafted
These developments are exciting for oru industry, but also for the world as a whole – a solid platform that can be as portable and accessible as the Web, yet have the power of the desktop has long been sought. We may finally have it in our grasp.
Redesign ‘007
Redesign ‘007 has hit the site, it’s first form known as Ashes. In time I plan to add its alter-ego, Frost. For now though, let me provide a quick write-up on what has changed beyond the obvious aesthetic shift.
The Engine
The site continues to run on WordPress, but now utilizes the new hotness that is version 2.1. The upgrade is most significant in the speed increase for building and delivering the pages that you see. The connections to the database have been vastly improved which translates into faster load times. Rejoice!
Tags
I have begun to apply tags (information labels) to individual entries to improve the classification of my content without expanding my categories to the nth degree. This cloud displays the tags I have used on my site and provides a rough visual representation of how often each has been used. I’ve also added the capability to search by tag for those who are interested. At this point I have only added tags to a small fraction of the 900+ entries on this site, but the number will improve over time.
Syndication Feeds Powered by Feedburner
I’ve updated the entry and comment feeds on this site to use Feedburner as it provides some great statistics and functionality beyond the standard feed set up. If you subscribe to my main feed, you will now see a daily summary of new links added to my Ma.gnolia bookmark list. The process was surprisingly smooth, especially with the help of Steve Smith’s Feedburner plugin.
Ma.gnolia
I love Ma.gnolia, and am very active, managing several groups, including those focused on Web Design and Austin. With my recent integration of my Ma.gnolia bookmarks you can see an up-to-date list of the sites that interest me. Even better, when browsing archives, you will see bookmarks specifically related to that archive’s topic. If you use Ma.gnolia, please add me as a contact as I’d love to see what you bookmark as well!
BrowseCap
I’ve used browser detection to serve up browser-specific pages and style sheets for a number of years now to avoid the use of CSS hacks. This site design is no different, though I no longer use the BrowserSniff class, having switched to Browscap as it does a great job of avoiding the “the limitations of get_browser() and… offers methods to update, cache, adapt and get details about every supplied user agent on a standalone basis.”
Moo.fx
The moo.fx Javascript library, built upon Prototype, is responsible for adding two fundamental bits of functionality: the tool tips used throughout the site (most notably in the side bar blocks) and the sliding navigation drawer. The library was simple to implement and is a small download, so it was a no brainer to integrate it with the site. While I am not currently utilizing its AJX functionality, I will soon.
sIFR
The headers displayed in the sidebar and used to present each entry’s date and comment count on the home and archive pages make use of sIFR 3 (beta at the time of writing), providing me the ability to use the font I want without forcing you to download a ton of images.
Modifications to WordPress Core and Plugins
The majority of changes revolve around modifications made to HTML output by WordPress or its plugins to add the nice tool tip functionality you see throughout the site, most especially visible in the side bar.
wp-includes/bookmark-template.php
I modified the HTML output to the browser in order to add tool tip capabilities.
Previous Posts Plugin
I changed the Previous Posts plugin in a couple of ways. First, I altered the function, allowing me to pass values for markup to be used before and after each line of output and the ability to set a minimum and maximum value. This has given me the ability to show the five most recent posts throughout the site, while ensuring I don’t show duplicates on the home page, which will show the five most recent plugins that aren’t displayed on the page already. I also modified the output to implement tool tips and grab comment counts to be used within the tips.
Amazon Media Manager
I added a new output format to AMM in order to use the tool tip functionality.
Ma.gnolia Plugin
I’ve modified the Ma.gnolia plugin to use the tool tip functionality and made changes to the output format of the date. I also included a link to my Ma.nolia account. I may well adopt this plugin as its creator, Barry Price has stated that he won’t be updating it.
Recent Comments Plugin
Recent Comments is another plugin modified to make use of tool tips.
SilverSpider Play List
I added another output format to my recent song list package to make use of tool tips.
Site Cleanup
I am reviewing each post on the site to clean up old formatting issues, many due to the period in which I used Markdown (a mistake, I really should have kept to HTML). So, individual posts will look nicer in time, though I am specifically not updating the content as I do not want to inadvertently re-write my own bits of history.
In Closing
The overarching goal of this redesign was to ensure the site stays fresh. As the archives show, I often go through periods where I don’t post to the site. Yet, during that time I am actually pretty active in various spots on the Net. This redesign adds focus to the conversations that occur on the site (please add your comments to this and other posts) and my interests, as can be seen in the recent bookmark, music and reading lists. While the Web is a often a one-way medium, it doesn’t have to be. So, welcome to the site, please jump into a conversation!