arguments.callee web design & development blog  


JavaScript Optimization: Eliminate Nested Functions
Learn how nested or inner functions affect the speed of your JavaScript. SPOILER: They hurt it.
Tags
Continue reading about JavaScript Optimization: Eliminate Nested Functions (takes 3 minutes, 42 seconds)

Webcomic Wednesday: Learned 2 Play
This Webcomic Wednesday is brought to you by Nerf NOW!
Tags
Continue reading about Webcomic Wednesday: Learned 2 Play (takes 0 minute, 8 seconds)

The New Yahoo Mail - Inside Out
An inside look at the new Yahoo Mail public beta from a developer on the project.
Tags
Continue reading about The New Yahoo Mail - Inside Out (takes 2 minutes, 31 seconds)

Webcomic Wednesday: Working at Home
Copyright 2010 Matthew Inman of http://theoatmeal.com/
Tags
Continue reading about Webcomic Wednesday: Working at Home (takes 0 minutes, 8 seconds)

Review: YUI 2.8 Learning the Library
Book review for the new Packt Publishing book by Daniel Barreiro and Dan Wellman.
Tags
Continue reading about Review: YUI 2.8 Learning the Library (takes 3 minutes, 13 seconds)

Recursive Find-in-Files on Linux or Unix
Quickly find in files on Linux or UNIX operating systems using this one-liner.
Tags
Continue reading about Recursive Find-in-Files on Linux or Unix (takes 0 minutes, 53 seconds)

Unselectable Text Using CSS and JavaScript
How can you stop someone from selecting text in an HTML element? Here are two cross-browser methods using CSS and JavaScript.
Tags
Continue reading about Unselectable Text Using CSS and JavaScript (takes 1 minutes, 22 seconds)

My First Week at Yahoo!
A look at my first week (actually two weeks) as a Tech Yahoo!
Tags
Continue reading about My First Week at Yahoo! (takes 1 minutes, 29 seconds)

Importing Blog Comments to Disqus
Want Disqus on your custom blog? Don't lose your existing comments, import them using the Disqus API.
Tags
Continue reading about Importing Blog Comments to Disqus (takes 3 minutes, 21 seconds)

Running Apache and Node.JS Together
Transparently pass individual paths to Node.JS without changing your URLs or the way your existing content is served.
Tags
Continue reading about Running Apache and Node.JS Together (takes 2 minutes, 6 seconds)

Mysql_fetch_all: PHP's Missing Function
Need to fetch ALL rows from a MySQL result? Why isn't that built into PHP? No idea, but here's a quick solution.
Tags
Continue reading about Mysql_fetch_all: PHP's Missing Function (takes 0 minutes, 56 seconds)

Convert ZIP code to a Yahoo! WOEID
Want to use Yahoo's Weather API, but only have a ZIP code? Here's how to convert that ZIP code to a Yahoo! WOEID.
Tags
Continue reading about Convert ZIP code to a Yahoo! WOEID (takes 2 minutes, 20 seconds)

Multiple cURL Requests with PHP
Learn how to make more than one cURL request at a time in PHP.
Tags
Continue reading about Multiple cURL Requests with PHP (takes 3 minutes, 29 seconds)

Webcomic Wednesday: Google Buzz Trick
This Webcomic Wednesday is brought to you by thedoghousediaries.
Tags
Continue reading about Webcomic Wednesday: Google Buzz Trick (takes 0 minutes, 10 seconds)

Easy CSS Minification on Client and Server
Learn how to easily minify your CSS stylesheets. Examples in JavaScript and PHP for client and server.
Tags
Continue reading about Easy CSS Minification on Client and Server (takes 1 minutes, 27 seconds)

JavaScript Design Patterns: Lazy Initialization
Improve JavaScript performance by using the "lazy initialization" design pattern family.
Tags
Continue reading about JavaScript Design Patterns: Lazy Initialization (takes 3 minute, 29 seconds)

Quick Tip Regarding Google Chrome Frame
When switching on Google Chrome Frame for your IE visitors, make sure you have the right syntax.
Tags
Continue reading about Quick Tip Regarding Google Chrome Frame (takes 1 minutes, 15 seconds)

Webcomic Wednesday: Design Hell
This one's a biggie, but a goodie. Copyright 2009 Matthew Inman of http://theoatmeal.com/
Tags
Continue reading about Webcomic Wednesday: Design Hell (takes 0 minutes, 16 seconds)

Soudersize the Web
Did Steve Souders moving from Yahoo to Google spark Google's "speed up the web" push?
Tags
Continue reading about Soudersize the Web (takes 2 minutes, 39 seconds)

Digital Signage Application Launch
It has been a big month at work. Today we launch the next major version of this digital signage application.
Tags
Continue reading about Digital Signage Application Launch (takes 2 minutes, 39 seconds)

Basic Server Authentication with PHP
Quick and easy way to secure individual webpages with a username and password. Use HTTP's built in authentication.
Tags
Continue reading about Basic Server Authentication with PHP (takes 1 minutes, 14 seconds)

Quick Query String Parsing with JavaScript
Used to PHP's $_GET variables? Here's a simple method to add that functionality to JavaScript.
Tags
Continue reading about Quick Query String Parsing with JavaScript (takes 1 minutes, 27 seconds)

The Three Cs of Fast CSS and JavaScript
Drastically speed up your website by using PHP to combine and compress your CSS and JavaScript files on the fly, then automatically cache the result.
Tags
Continue reading about The Three Cs of Fast CSS and JavaScript (takes 2 minutes, 39 seconds)

Adobe AIR vs Appcelerator Titanium: Round Two
How Appcelerator Titanium 0.6.2 compares with Adobe AIR 1.5.2 for building desktop and kiosk applications.
Tags
Continue reading about Adobe AIR vs Appcelerator Titanium: Round Two (takes 2 minutes, 6 seconds)

Webcomic Wednesday: Behind Schedule
This Webcomic Wednesday is brought to you by Not Invented Here, a brand new webcomic from the creators of Unshelved and Ugly Hill.
Tags
Continue reading about Webcomic Wednesday: Behind Schedule (takes 0 minutes, 12 seconds)

Wampserver 2 and AMFPHP Service Browser
Getting an eregi_replace is deprecated error when using AMFPHP in Wampserver 2? Here's the fix!
Tags
Continue reading about Wampserver 2 and AMFPHP Service Browser (takes 0 minutes, 41 seconds)

Saving Drawn Images with Canvas and Cake.js
Save drawn images using the HTML5 Canvas tag, the Cake.js library, and a few simple lines of PHP.
Tags
Continue reading about Saving Drawn Images with Canvas and Cake.js (takes 5 minutes, 0 seconds)

Introduction to AMFPHP Web Services
AMFPHP lets you use PHP to write web services that Adobe Flash clients can consume.
Tags
Continue reading about Introduction to AMFPHP Web Services (takes 3 minutes, 3 seconds)

Webcomic Wednesday: Basic Truths
Sponsored in part by recent posts elseblog that spurred no small amount of nerd rage.
Tags
Continue reading about Webcomic Wednesday: Basic Truths (takes 0 minutes, 12 seconds)

Virtual Desktops with VirtuaWin
VirtuaWin: Virtual desktop software for Windows. Long story short, I like it.
Tags
Continue reading about Virtual Desktops with VirtuaWin (takes 0 minutes, 45 seconds)

Corrupted EncryptedLocalStore in Adobe AIR
Strange errors when you try to access EncryptedLocalStore in Adobe AIR? It may be corrupted.
Tags
Continue reading about Corrupted EncryptedLocalStore in Adobe AIR (takes 1 minutes, 7 seconds)

JavaScript Design Patterns: Module, Singleton
Learn about the Revealing Module and Singleton design patterns using JavaScript.
Tags
Continue reading about JavaScript Design Patterns: Module, Singleton (takes 2 minutes, 42 seconds)

Webcomic Wednesday: High-Five
For my personal safety, consider this one a general observation and not representative of any particular project...
Tags
Continue reading about Webcomic Wednesday: High-Five (takes 0 minutes, 12 seconds)

Adobe AIR vs Appcelerator Titanium: Round One
HB Stone's first thoughts about the Appcelerator Titanium beta, and how it compares to Adobe AIR 1.5.1
Tags
Continue reading about Adobe AIR vs Appcelerator Titanium: Round One (takes 4 minutes, 9 seconds)

Appcelerator Titanium Beta Launch
Join Appcelerator in San Francisco for the Titanium Beta launch party, June 9, 2009.
Tags
Continue reading about Appcelerator Titanium Beta Launch (takes 0 minutes, 34 seconds)

Pad Strings in PHP and JavaScript
Convert PHP's native str_pad function to JavaScript and pad strings with ease.
Tags
Continue reading about Pad Strings in PHP and JavaScript (takes 1 minutes, 50 seconds)

JavaScript Design Patterns: Mediator
Implement the Mediator design pattern in Javascript to facilitate code reuse and maintainability.
Tags
Continue reading about JavaScript Design Patterns: Mediator (takes 3 minutes, 54 seconds)

Exceptional Performance: YSlow Update
Learn all about the new update to YSlow, Yahoo's developer plugin for Firefox.
Tags
Continue reading about Exceptional Performance: YSlow Update (takes 1 minutes, 48 seconds)

SCAN Web Design Principles: N is for Navigation
N is for NAVIGATION in part four of this series on web design principles.
Tags
Continue reading about SCAN Web Design Principles: N is for Navigation (takes 2 minutes, 57 seconds)

SCAN Web Design Principles: A is for Accessibility
A is for ACCESSIBILITY in part three of this series on web design principles.
Tags
Continue reading about SCAN Web Design Principles: A is for Accessibility (takes 4 minutes, 26 seconds)

Click and Drag to Toggle Checkboxes
JavaScript tutorial: Click and drag to toggle multiple checkboxes at once.
Tags
Continue reading about Click and Drag to Toggle Checkboxes (takes 2 minutes, 25 seconds)

SCAN Web Design Principles: C is for Content
C is for CONTENT in part two of this series on web design principles.
Tags
Continue reading about SCAN Web Design Principles: C is for Content (takes 3 minutes, 34 seconds)

SCAN Web Design Principles: S is for Scanning
S is for SCANNING in part one of this series on web design principles.
Tags
Continue reading about SCAN Web Design Principles: S is for Scanning (takes 2 minutes, 37 seconds)

SCAN Web Design Principles
Introduction to HB Stone's SCAN interface design principles series.
Tags
Continue reading about SCAN Web Design Principles (takes 1 minutes, 50 seconds)

Permission denied to call method Location.toString
Getting "Permission denied to call Location.toString" errors? Here's why.
Tags
Continue reading about Permission denied to call method Location.toString (takes 0 minutes, 40 seconds)

Adobe AIR: Call JavaScript from a SWF (also win money)
Cash prize if you have a solution! How to call JavaScript functions from a Flash .SWF in Adobe AIR.
Tags
Continue reading about Adobe AIR: Call JavaScript from a SWF (also win money) (takes 3 minutes, 15 seconds)

Google vs. Firebug Console
Google appears to delete Firebug's window.console, but why?
Tags
Continue reading about Google vs. Firebug Console (takes 1 minutes, 18 seconds)

Adobe AIR: Why won't my SWF load?!
For HTML / AJAX developers using Adobe AIR, here's one reason you might not be able to load external SWF files.
Tags
Continue reading about Adobe AIR: Why won't my SWF load?! (takes 1 minutes, 10 seconds)

HTTP, HTTPS, and SSL via PHP
How to transport data via HTTP, HTTPS, and direct SSL using PHP. Socket and non-socket methods.
Tags
Continue reading about HTTP, HTTPS, and SSL via PHP (takes 1 minutes, 58 seconds)

Choosing a Valid DOCTYPE
A collection of valid DOCTYPEs for your HTML or XHTML websites.
Tags
Continue reading about Choosing a Valid DOCTYPE (takes 3 minute, 3 seconds)

Synchronous SQLite Singleton
Sychronous SQLite database abstraction that is object-oriented and easy to use.
Tags
Continue reading about Synchronous SQLite Singleton (takes 1 minute, 14 seconds)

Adobe AIR 1.5: GUI-less Application Updates
Your Adobe AIR 1.5 applications can self-update with no user interaction. Find out how.
Tags
Continue reading about Adobe AIR 1.5: GUI-less Application Updates (takes 2 minute, 9 seconds)

AJAX Phrasebook
AJAX Phrasebook of ready-to-use JavaScript and PHP code. Learn the basics of AJAX and XMLHttpRequest.
Tags
Continue reading about AJAX Phrasebook (takes 3 minutes, 54 seconds)

Seamless Application Updates with Adobe AIR 1.5
Seamlessly update your Adobe AIR 1.5 apps with the new ApplicationUpdater and ApplicationUpdaterUI frameworks.
Tags
Continue reading about Seamless Application Updates with Adobe AIR 1.5 (takes 2 minutes, 18 seconds)

.htaccess: Cache Rules Everything Around Me
How to control visitor cache for your webpages, JavaScript and CSS stylesheets, images and other content. Examples in .htaccess and PHP.
Tags
Continue reading about .htaccess: Cache Rules Everything Around Me (takes 3 minutes, 2 seconds)

Exceptional Performance: Image Optimization
Drastically improve your website response time by optimizing your images. Here's how.
Tags
Continue reading about Exceptional Performance: Image Optimization (takes 5 minutes, 20 seconds)

jQuery Time Picker
A cool, fast time picker using the jQuery JavaScript library.
Tags
Continue reading about jQuery Time Picker (takes 0 minutes, 47 seconds)

Passing Arguments to setTimeout and setInterval
Various ways to pass arguments to JavaScript's setTimeout and setInterval. Includes a fix for IE to allow it to accept extra arguments like other browsers.
Tags
Continue reading about Passing Arguments to setTimeout and setInterval (takes 2 minutes, 31 seconds)

Generate Social Bookmarks with PHP
Automatically populate social bookmarking links using PHP and CSS sprites.
Tags
Continue reading about Generate Social Bookmarks with PHP (takes 2 minutes, 27 seconds)

Order of Operations in JavaScript
Simple table displaying the order of operations in JavaScript.
Tags
Continue reading about Order of Operations in JavaScript (takes 1 minutes, 12 seconds)

Specificity in CSS
Understanding specificity in CSS, and tips on using CSS selectors effectively.
Tags
Continue reading about Specificity in CSS (takes 1 minutes, 50 seconds)

Generating Unique IDs with JavaScript
How to generate unique IDs using the characteristics of scope and first-class functions in JavaScript.
Tags
Continue reading about Generating Unique IDs with JavaScript (takes 0 minutes, 59 seconds)

Checking Network Availability in Adobe AIR
A simple module to detect whether your Adobe AIR app can access the internet.
Tags
Continue reading about Checking Network Availability in Adobe AIR (takes 1 minutes, 12 seconds)

JavaScript in Action: thesixtyone.com
Learn how thesixtyone.com uses JavaScript to provide a rich front end experience.
Tags
Continue reading about JavaScript in Action: thesixtyone.com (takes 0 minutes, 26 seconds)

Exceptional Performance: Styles Up, Scripts Down
A tip about placing stylesheets and scripts. Related to Yahoo's Exceptional Performance tips.
Tags
Continue reading about Exceptional Performance: Styles Up, Scripts Down (takes 1 minutes, 21 seconds)

Zapping Trailing Commas Using Regular Expressions
Use regular expressions to eliminate trailing commas from your lists.
Tags
Continue reading about Zapping Trailing Commas Using Regular Expressions (takes 1 minutes, 28 seconds)

I'm a PC, and I'm a Mac
What do you get when you cross 50 Mac Minis, a case of Monster energy drinks, and a bunch of programmers in the Geekworks basement? Check it out!
Tags
Continue reading about I'm a PC, and I'm a Mac (takes 0 minutes, 45 seconds)

AJAX: Cross-Browser XMLHttpRequest
Make AJAX cross-browser compatible, whether it supports XMLHttpRequest or IE's proprietary AJAX DLLs.
Tags
Continue reading about AJAX: Cross-Browser XMLHttpRequest (takes 1 minutes, 27 seconds)

(function(){})(); and Scope
Scope and the (function(){})(); construct, and some tips on reusing JavaScript code and avoiding scope problems.
Tags
Continue reading about (function(){})(); and Scope (takes 2 minutes, 27 seconds)

arguments.callee
An introduction to the arguments.callee JavaScript blog.
Tags
Continue reading about arguments.callee (takes 1 minutes, 24 seconds)

search blog
categories & tags
random posts
about hb stone

I'm a Senior Culinary Software Developer at Yummly working on various front-end and middle-tier tasks, primarily using JavaScript. I blog about web design and development topics including accessibility, usability, performance, and developing HTML / CSS / JavaScript applications on Appcelerator Titanium and Adobe AIR.

If you're a web developer, you might enjoy Jelo, my JavaScript library.

copyright

All original work on this site is covered by a Creative Commons Attribution 3.0 license unless otherwise specified.

You may share or use any code or images from this site in any manner, for free, so long as reasonable effort has been made to give credit where due.

showing 70 posts

The views expressed in the posts and comments on this blog do not necessarily reflect those of my current or former employers.