Sat Nov 14

Marvel Cinema intro built using only JavaScript

During my recent JavaScript capstone course at Westlake, I got an idea. We were doing an exercise on animation, using things like JavaScript’s setTimeout and adjusting the CSS clip property on a few divs. For some reason one of the blocks reminded me of the animation at the beginning of all Marvel movies, when it looks like someone is flipping rapidly through a bunch of comic pages. I envisioned being able to accomplish this animation using only JavaScript.

Here’s a sample of the original animation, from the Spider-Man intro. I also found a few samples of other obviously homemade versions of the Marvel intro, like this After Effects version.

The below is built using JavaScript only, and relies heavily on jQuery’s animation effects. There’s even a cool soundtrack for those with newer browsers (its embedded using HTML 5’s audio element). The font isn’t exactly the same, and the music is courtesy of Dredg (everyone go out and pick up “The Pariah, The Parrot, The Delusion” right now), but I think its as close as you can get with JS to the original. Click the play button to check it out.

If you’d like to see a tutorial for how this was accomplished, leave a comment. If I get enough requests, I’ll put together a how-to.


Sun Sep 13

How Fluid.app will Change the World

Are you the type of web surfer who has tons of tabs open all the time? Do you get frustrated when one web page causes all your other tabs to crash, or even just slows your productivity when you install a plugin and have to restart your browser?

How many of the tabs that you typically keep open all day are web apps? How many of them do you frequently revisit or refresh, constantly checking their status?

If you can identify with any of the questions above (and you have a Mac), get ready to experience a revolution. Fluid.app allows you to insert any web app URL, give it a title and icon, and voila, you’ve got an application (or SSB: Site Specific Browser) running like an application in OS X.

You can dock all your new web apps (I’ve got Yahoo Mail, Finance, Basecamp, Facebook and Google Reader setup here):

web-apps

You can also convert your SSB into a MenuExtra SSB, which exists only as an icon in your OS X Status Bar:

stats-bar

Fluid.app is based on Safari’s Webkit rendering engine, and all the SSB’s you create are true Cocoa OS X applications.

Once the coolness factor wears off, you may start to realize what this all means.  People have been talking for years about how once web apps get to the point where they’re as robust as desktop apps, we’d see a major paradigm shift in the way people use computers.  With this single application, you are now able to convert any web app you use into a desktop app.

While web apps still have a ways to go before they truly offer the same functionality as desktop apps, this is the first major move in that direction.

Grab Fluid.app today.  Its changed the way I use my Mac in less than 24 hours since I got it.

Sat Jul 11

Review: ProBlogger by Darren Rowse and Chris Garrett

Book review of ProBlogger by Darren Rowse and Chris Garrett

ProBlogger by Darren Rowse and Chris Garrett

While not a book covering strictly web design or development, ProBlogger is relevant in many ways.  Authors Darren Rowse and Chris Garrett walk the reader through the very basics of blogging, right through more advanced topics like blog promotion, advertising and blog “flipping”, the digital version of TLC’s Flip that House.  The fact that they detail the various blog publishing platforms, but express their tendency to lean toward WordPress for all their personal sites was appealing to me.  Also, just about every designer or developer comes across the issues of having to drive traffic, monetize pages, and analyze site performance at one point or another in their career.

I took some rather lengthy notes while reading the book, to make implementation on my personal sites a bit easier after completion of the book, and I’ll share some of those notes with you here.

1. Websites You Should Investigate

These are a few tools that I realized I should be using while reading the book.  These cover the main bases that every web site should be using to monitor or enhance their site:

  • Alexa – for researching hot topics and competitor sites
  • Technorati – add your blogs to the Technorati index, and monitor popular tags
  • Quantcast – track your site’s performance and compare to competitor site performance
  • Google Webmaster Tools – discover keywords that people are already using to find your site through Google

2. Tools to Target Hot Topics

Staying on top of industry news is an important task for a lot of web sites, from newspaper sites, to sporting sites, to the latest Hollywood gossip.  Here are some of the best:

3. Content Tips

For bloggers that are just starting out, Rowse and Garrett offer a fantastic intro to formatting blog posts so that they will rank well in search engines.  This happens to coincide with HTML standards and best practices, so this section is doubly worth your time:

  • Post regularly (1x/day or 1x/week)
  • Titles are important!
  • Vary long posts (reviews), with shorter posts (news)
  • Use h2 and h3 tags
  • Number paragraphs (helps with web audiences that typically scan pages)
  • Break longer posts into series
  • Write your entire post first, then go back and edit

4. Types of Blog Posts

ProBlogger contains a wealth of ideas.  Here are some of their recommendations for varying the style of your posts, so as not to become repetitive and stale:

  • Tutorials
  • Reviews
  • Lists
  • Profiles (pick an idol of yours or industry mogul and write a review of their life)
  • Links (microblogging)
  • Rants
  • Memes (idea virus, further explanation)

5. Link Bait Ideas

Further depth on content ideas is detailed in ProBlogger, and the issue of link baiting is discussed.  My thoughts on link baiting are that if the content is original, helpful, or insightful, its a good practice.  The content really has to come first.  Here are some ideas that you could potentially build content around:

  • Tools
  • Quizzes
  • Competitions
  • Awards
  • Freebies
  • Interviews

6. Blog Valuation Factors

Rowse and Garrett even get into the topic of buying existing blogs, and “flipping” them, or turning around and selling them for a profit.  The main benefit of blog flipping is that domain age is a major factor in Google’s evaluation of web sites.  Most of the most popular blog sites on Technorati have a domain age of three years or more.  If you purchase an existing domain, with an existing audience, you skip the work involved in starting from scratch.  Here are some factors to use while evaluating a blog purchase or sale:

  • Audience
  • Content
  • Search Rankings
  • Traffic
  • Inbound Links
  • Brand
  • Profit
  • Design
  • Domain

7. Blog Promotion & Marketing

After you’ve got your blog up and running, and feel that your content is good enough and regular enough to warrant an audience, you’ll want to promote or market it in some fashion.  The Field of Dreams mentality does not apply in the blogosphere.  Here are some of the promotion ideas I found in ProBlogger:

  • Build “content magnets”
  • Comment on other niche blogs (1x/day)
  • Encourage comments through questions in your posts
  • Add “blog carnival” posts that link to many other industry/niche blogs
  • Promote subscription via RSS
  • Join a blogging community or forum in your industry, and participate regularly
  • Request links from relevant industry blogs

I’m not going to get into further detail on any of the ideas here, to do that you’ll have to purchase ProBlogger.  I’ve only listed a sampling of the ideas Rowse and Garrett reveal in their book.  There are many more topics and ideas within, as well as much more detail and explanation.

Overall ProBlogger is a invaluable book for anyone with their own website.  Its an idea starter, and that’s a huge part of running your own website.  The other is finding time to actually do everything.  Then again, that’s where Brickwork could help you out.

You can purchase ProBlogger over at Amazon.com.

Rating

  • Overall: 9 out of 10
Sat Jul 4

Blogs with Balls, June 13, NYC

I was in New York on June 13 with NESN, visiting the Blogs With Balls conference, which is a conference for people involved in both blogging and sports.  The conference is still in its infancy, with an attendance of around 250, and it was held in the basement of Stout, which wasn’t all bad, since the Guinness 250 lunch started around 11:30. Rockin’ good times.

The conference was an eclectic mix ranging from CEO’s of blog networks like YardBarker and SBNation to individual bloggers who have taken the leap from corporate life to the risky world of independent blogging.  Conference topics ranged from leveraging social media and working with content networks, to getting down to business with making money with your blog.  I especially enjoyed Kathleen Hessert’s discussion about how Sports Media Challenge proposed Twitter to Shaq, and not only did he embrace the technology, but his Tweets now have a circulation larger than the daily circulation of the New York Times.  Simply astounding.

Three Things You Need to Know

My largest takeaways from the conference:

  • Become a portal.  If your site can be the start of a discussion, you can increase users and traffic exponentially.
  • Join a blog network.  If you haven’t considered it, joining a blog network can be a tremendous benefit to your traffic.  I’m going to get into more detail on this in a future post (I’m reading “ProBlogger” right now…)
  • Integrate related industry content gracefully.

Become a Content Ninja

I’d like to get into a bit more detail on that last one.  It seems to me that there are a lot of large blog sites out there that do one of the two following items, and do them well, and lead their category or niche because of it:

  1. Offer original content.
  2. Offer aggregate content.

It also seems that the tendency of companies that already do one is to stick with that one, and not designate much focus to the other.  What I heard resoundingly at this conference is that if you can master both, and do it with a little flair, you can likely top your niche or category.  The trick is finding enough original content to come up with, and being tech-savvy enough to incorporate the aggregate content.  Of course, there are new web services like Yahoo! Pipes that are making this easier to accomplish practically daily.

Definitely Check it Out

Overall, this was an extremely beneficial experience, and I would recommend it to anyone in the New York area who has an interest in sports on the web.  Definitely check it out next time around.  They’re supposedly going to post video from the show on the BWB site, so keep an eye on it over the coming weeks.

Sat May 16

How to Setup a Page-Driven Nav in WordPress 2.7

I’ve been working with WordPress for years now, and I thought it might be a good time to start sharing my knowledge of WordPress best practices.  One item that I think a lot of people just getting started using WordPress might find handy is how to build a navigation that is driven by pages.  Having a navigation driven by pages has numerous benefits, including having the nav written out as an XHTML compliant unordered list, being able to include or exclude any pages you’d like, being able to sort the list items to your preference, and being able to style the current page’s nav button differently.

Create those Pages

The first thing you need to do to setup a nav driven by pages is create the pages themselves.  The title you give the page will be the text that appears in the nav.  Also note that by default the nav items will be sorted alphabetically, but you can prioritize them setting the “Order” field from within each individual page.

The Magic of Template Tags

After you’ve created all the pages you’d like to include in the navigation, all that’s left to do is add the template tag to your template (usually in header.php).  The template tag that lists pages in WordPress is, you guessed it, wp_list_pages. Here’s a sample template tag included in my header.php file that passes a few parameters to the function:

<?php wp_list_pages('include=2,7,9,11&title_li='); ?>

The above block of code includes an opening php statement <?php, the function call wp_list_pages('');, and the arguments to be passed to the function include=2,7,9,11 and title_li=.

Let’s take a look at the two arguments I passed to the wp_list_pages function, starting with include=2,7,9,11.

This tells the function I’d like to include only pages with the id’s of 2, 7, 9 and 11. To find the page id’s that match your specific pages, go to your pages>edit screen and hover over the link for the title of the page, and (if you’re using Firefox) look at the bottom of your browser. At the end of the link you’ll see something like post=7. The number here is your page id. Plug in the page id’s for any pages you’d like to include, and you’re good to go!

The other argument I pass to the wp_list_pages function is to remove the title that would appear by default. By passing title_li= you’re essentially saying “set the title to blank”, and the function does not return a title list item. Generally you won’t want the title, which is up one level in the document tree, to appear if you’re making a navigation that you’ll end up floating to the left with CSS.

The ampersand between the two arguments just allows you to string together multiple arguments. You can string together as many as you’d like to further develop your own custom WordPress queries using any of the further options detailed on the WordPress.org wp_list_pages template tag page.

Check out the Coolness

The last, and probably most worthwhile thing about building your nav in WordPress using pages is that while navigating your site, the list will be auto-updated with a class that allows you to style the current page’s button to look different than the other nav buttons.  After you’ve got your nav set up and working, visit one of the pages and then view the page source.  You’ll see the class of current_page_item applied to the list item for the page you’re currently on, automatically generated by WordPress for each page.

Now just start styling your way to a dynamic WordPress page-driven navigation! If you need more info on the CSS required to float a list to the left that creates a horizontally oriented navigation out of an unordered list, check out this tutorial at 456 Berea St.

I hope this can help you to build your own navigation, and take it even further using the WordPress.org template tag page.

Sun Apr 12

Review: Simply JavaScript by Kevin Yank and Cameron Adams

Book review of Simply JavaScript by Kevin Yank and Cameron Adams

Simply JavaScript by Kevin Yank and Cameron Adams

I read Simply JavaScript a few months back, and couldn’t help but include it in my reviews here at withinsight.com.  Its simply too good not to.  I’ve got a decent amount of JavaScript experience, although not necessarily through practice.  JavaScript has always been that part of my web design arsenal that I’ve wanted desperately to add, but has never seemed to work its way into regular usage in my day-to-day work.  You can’t say its for lack of trying, as I’ve read the first half of O’Reilly’s JavaScript, The Definitive Guide, which while full of great info, is not necessarily the best introduction to JavaScript for the beginning scripter.  I then found DOM Scripting by Jeremy Keith, which offers a very, very introductory level explanation of JavaScript before digging into the basics of DOM Scripting.  I had a decent picture of what else was out there in terms of JavaScript books.

Jeremy Keith is actually the one who recommended Simply JavaScript on his website a while back, which is how I originally heard about it.  He stated that his book DOM Scripting was intended for a very specific audience, and that there really weren’t any other books that did it as well as he does, until Simply JavaScript was released.  Very big of an author to acknowledge the competition with a tip of the hat.

Meet Your New Friend, JavaScript

If I could, I would probably go back and start from scratch originally with Simply JavaScript.  It is a perfect introduction for the web designer looking fill out the third leg of the XHTML/CSS/JS stool that we all sit upon.  Yank and Adams present the material in a way that anyone with a little XHTML and CSS experience will not only understand, but really find themselves enjoying.  I literally found myself laughing out loud at a few points, such as:

The popularity of regular expressions has everything to do with how useful they are, and absolutely nothing to do with how easy they are to use – they’re not easy at all. In fact, to most people who encounter them for the first time, regular expressions look like something that might eventuate if you fell asleep with your face on the keyboard.

Fantastic!  There are a number of moments like this that brighten up the pages.

Simply JavaScript is written in a progressive tutorial format, so you can move through it chapter by chapter, rather than using it as a reference.  The one exception to this is the chapter on “Errors and Debugging” which falls fairly late in the book.  I was okay without it for the first few chapters, but once I got into chapters 4, 5 and 6 on events, animation, and form enhancements, respectively, I think I could have done with reading that chapter first.  In chapter 7, they introduce the Firebug Firefox extension, and how to use it to pause the state of JavaScript at selected lines in your code, which I definitely could have used a little earlier in the book while troubleshooting projects.

JavaScript Libraries Galore

Another great aspect of Simply JavaScript is how they relate the tutorials completed in each chapter to the respective current JavaScript library.  So if you’ve heard about all the cool stuff web designers and developers have been doing with libraries like Prototype & script.aculo.us, MooTools, Dojo, jQuery, or Yahoo’s YUI, but haven’t been able to find practical uses for any of them in your projects, here’s where you can make the connection.

Yank & Adams build a very nice core library that you can use to power a few solutions to design problems that have faced web designers for years, like building stripey tables on the fly, or validating form information.  They even get into more advanced topics like animation and AJAX.  Actually, after you read this book, you’ll probably realize how non-advanced these topics are.  This book truly does make JavaScript simple!

I feel like a lot of JavaScript is like a catch-22 in that until you read a book like this, you have a very limited arsenal.  You may know how to pop open a new window or change the behavior of a few links, but you don’t truly have a grasp of the potential of what you can accomplish with JavaScript.  Reading a book like Simply JavaScript, even if you don’t go into all the details and grasp every last concept, at a bare minimum lets you know what you can do, which will help you tremendously in future projects.

First Impressions Make Such an Impact

One last thing that I need to mention is the production quality of this book. Sitepoint really went all out.  I’ve got six Sitepoint books, everything from HTML basics to PHP, and Simply JavaScript is the only one that is full color. In addition to brightening up the pages with color, the footnotes are all located at the bottom of each page.  I was recently reading the O’Reilly book AJAX Design Patterns, and found it extremely annoying to have to continually skip over URLs in the middle of the text.  Sitepoint places URL footnotes where they should be, at the foot of each page, making it easier to concentrate on the text and code, and reference the footnotes when you want to.

Overall, this is absolutely the best starting point for the beginner JavaScript student, and I would recommend it to any web professional who works with code on a daily basis.  It will teach you to apply the same unobtrusive principles that you hopefully already apply of CSS to XHTML documents, instructing you how to do the same with JavaScript.

You can purchase Simply JavaScript over at Amazon.com.

Rating

  • Overall: 9 out of 10
Mon Mar 16

SXSW and jQuery

So right about now I’m wishing that if I could be anywhere, it would be at SXSW (South by Southwest).  For those of you who don’t know, its about the coolest festival on the planet.  And I don’t know from experience, just from colleagues and coworkers and podcasts and industry moguls giving me an earful.

In addition to being a hotspot for web design, SXSW boasts an impressive musical lineup each year, and this year I’ll be disappointed that I’ve missed The Everyday Visuals, Madi Diaz, and the undisputable heavyweight of soul, Miss Erykah Badu.

I’ve been hearing about it for weeks, from Paul Boag blabbering about it on his Boagworld podcast, to having to postpone projects with colleagues who are attending, to CSS guru Eric Meyer tweeting, “If you’re not going to SXSW, tweet like you’re there.  Nobody will know the difference.”  Yeah, that almost makes up for not being able to attend.

But alas, I am not one to linger, and the time spent here at home has given me the opportunity to start exploring jQuery, which was recommended to me by Alex King, famed author of the WordPress Popularity Contest plugin, and another item that Paul Boag has been going on endlessly about for months now.  I finally broke down and downloaded the library and started playing with it.

From my first impressions, Paul has reason to be going on endlessly.  It seems that the potential of what a web designer or developer can accomplish with the JavaScript library is in fact endless.  The first item that caught my eye was the fact that on the jQuery homepage they offer the expanded, developer version of the library, along with the compressed, production version.  I was immediately reminded of the hours I’ve spent testing the best method to minify, compress and serve my Prototype and Scriptaculous libraries.  jQuery does this for me?  Fantastic.

Second, I was really impressed with the quality and quantity of documentation.  Compared to Prototype, jQuery blows it out of the water in terms of a working online manual.  I think I’ve officially moved the “Prototype and script.aculo.us” book to the back of my “must read” list.  I’ve actually read the first half of it already, but it was cryptic and would have required re-reading on my part to fully absorb the material.  jQuery is the complete opposite.  There are video tutorials explaning the beginner steps.  Video tutorials.

The last thing about jQuery that really hooked me was the ease with which a web designer can pick up the library.  A lot of the arguments you pass to the library are the same as in CSS.  So if you’re looking for a div with the id of conference, you pass (”#conference”) as the argument.

It seems like its going to be really easy to quickly get up to speed with the library, and that it has a lot of power in terms of what you can do with it.  If you’re interested, check out the jQuery site, the jQuery UI site, as well as some of the video tutorials. Really, really, really cool stuff.

Sat Feb 28

Installing WordPress MU on Mac OS X Leopard

I’ve run through this process a few times now, so I thought I’d document my steps for anyone who’s interested in setting up the multi-user version of WordPress on their local box for testing purposes.  The power of the multi-user version of WordPress is impressive, especially when combined with BBPress for forums, and the teetering-on-official-release BuddyPress for social aspects.  Ready to dig in?  Lets go.

The first thing you need to ensure prior to installing WordPress MU locally is that you have the underlying technologies installed.  WordPress and WordPress MU run on LAMP, or in this case MAMP.  There are all-in-one packages out there that install all three for you, and OS X does come with versions of Apache and PHP, but we want to learn how to get our hands dirty and be able to fix anything ourselves in times of crisis, right? So we need to make sure you’ve got Apache running, MySQL installed with a dedicated database setup, and PHP installed.

Turning on the Apache Web Server

First, we’ll tackle Apache.  This sentence will probably take longer to write than it will for you to turn on Apache on your Mac.  Go to System Preferences > Sharing > Web Sharing.  Checking of the “Web Sharing” checkbox here toggles the Apache server.  If you ever need to restart Apache, its as easy as coming in here, unchecking the “Web Sharing” checkbox, and checking it again.  Cake.

Installing MySQL

On to MySQL.  You’ll need to download the most recent version of MySQL, which can be found at the MySQL downloads page. Click “downloads” under the MySQL Community Server section.  Scroll down to the “Mac OS X (package format)” link and click.  Here is where you’ll have to ensure you download the proper package based on your Mac.  I chose the 10.5 (x86) since I’m running an Intel MacBook Pro, which ias the x86 processor. After you determine which package suits your Mac, click the “pick a mirror” link, and if you’ve never downloaded anything from the MySQL site before, you’ll have to register quickly.  Once you’ve registered and downloaded the dmg (named mysql-5.1.31-osx10.5-x86.dmg in my case), you’re ready to run the installer.

Once you’ve opened the dmg, you’ll see two .pkg files we’ll be interested in.  First, run the installer pkg file, which will walk you through a simple install.  After the initial install you’ll want to launch MySQLStartupItem.pkg, which will ensure that MySQL starts each time you restart your Mac. You’ve now got MySQL installed on your Mac!  Note the install location, as we’ll need that later on to create the database for WordPress MU.  Mine installed at /usr/local/mysql/bin/mysql.

Another item worth mentioning is that working with MySQL, PHP and Apache requires you to have access to a lot of OS X’s hidden files.  I recommend a great OS X app called FileXaminer, which I read about in MacWorld a while back.  FileXaminer lets you browse all the hidden files in Finder, and chmod the permissions on files and folders directly from Finder, rather than the command line.  Definitely a great solution for 10 bucks.

Installing PHP

The final piece of our MAMP stack is PHP.  PHP installation is fairly straightforward, and the best package online is located at Entropy’s PHP download page. There’s a box on this page titled “PHP 5 on Mac OS X 10.4, PPC and Intel”, and you can select the “PHP 5.2.4 for Apache 2″ package.  Its definitely worth reading through this page first, but most users will have the default setup of Apache, and won’t need to make any changes prior to running the install.

After running the entropy installer, you can run a test to make sure everything went well.  Create a file titled test.php, and stick the following code in it: <?php phpinfo() ?>. Put test.php in your /Sites folder (/Users/yourusername/Sites), and then open up http://10.0.1.2/~yourusername/test.php.  The IP used in this example is found in System Preferences > Sharing > Web Sharing.

The phpinfo function is a great way to quickly check all the settings of your PHP install, so save this test file for reference in the future.

There’s one final tweak to PHP that’s really a best practice.  You’ll want to navigate to your php.ini file, and open it in your favorite text editor.  My php.ini is located at /private/etc/php.ini.  Make a duplicate of this file (sometimes the original will be called php.ini.default, so make a dup called php.ini).  Once you’ve opened the php.ini file, search for “register_globals = On”, and switch it to register_globals = Off”.  Also, search for “magic_quotes_gpc = Off” and switch it to “magic_quotes_gpc = On”.  In the php.ini file, all lines that start with a ; are commented out, so you’ll want to search for these two lines that are not commented out and then make the changes.

Save the changes in php.ini, then restart Apache in System Preferences.  Then open your test.php file again, and look for the changes to make sure they were made.

Installing WordPress MU

Finally, its time for the money melon.  Download the latest version of WordPress MU from the download page.  Unzip the package and stick it in your /Sites directory, and rename (I chose “wpmu”).  The first thing you’ll want to do before attempting to install WordPress MU is to open the README.txt file that is in the root directory of the unzipped WPMU package.  You’ll want to read this carefully and cater the specific files you your specific install case, but they basically touch upon the php.ini file that we’ve already edited, and the httpd.conf file, which is Apache’s root config file.  I found mine located at /private/etc/httpd.conf.  You can find a better understanding of the Apache httpd.conf file, the directives contained within, and an explanation of the .htaccess files you can use to override the httpd.conf file in your local sites at the Apache web site.  I found that after reading a few short pages here, that the Apache config file cascade is very similar to the cascade of CSS files and rules.  Cool stuff.

Creating a MySQL database

Once you’ve read through the README.txt and made appropriate changes to your php.ini and httpd.conf files (and taken decent notes, hopefully), you’re ready for the install.  Since you’ve already got the files unzipped in your /Sites directory, the next step of the install is creating the database. Open the Terminal application (Applications > Utilities > Terminal), and type the following command:

/usr/local/mysql/bin/mysql -u root -p

where the path matches the MySQL path I mentioned to remember earlier.  The -u root tells MySQL that you want to login as “username root”, and the -p tells MySQL to prompt you for a password. If you’ve never logged into MySQL in terminal before, the username for root will either be root or blank.  After you’ve successfully logged into MySQL, you’ll know as the command prompt will have changed to:

mysql>

To create a database, type the following command:

CREATE DATABASE wpmu;

where wpmu is the name of the database.  You can name the database whatever you’d like, but make sure to follow it with the semi-colon, and remember the name of your database.

While we’re in here, its probably a good idea to change your root username.  Type the following command:

UPDATE mysql.user SET Password=PASSWORD(”new password”) WHERE User=”root”;

Replace the new password with your desired password.  Once we’ve created the database, and updated the root MySQL user’s password (and noted both), we can exit MySQL by typing:

exit

Running the WPMU Installer

You can now open the index.php from your wpmu folder in your web browser.  It may tell you that you have to change the permissions on a few folders prior to running the install.  If this occurs, it is extremely easy to modify the permissions using FileXaminer.  The two folders you’ll have to mod are the root /wpmu folder and the /wp-content folder, changing the permissions on both from 755 to 777.  After you’ve made these changes, refresh the index.php file, and enter the proper information.

Since WPMU doesn’t allow you to install at “localhost”, and you have to use “localhost.localdomain”, I had to make a change in my hosts file as well.  The file is located in /private/etc/hosts, and I changed:

127.0.0.1 localhost

to

127.0.0.1 localhost.localdomain

and resaved the file.  Also note that I set the database location to “localhost.localdomain”.  The other information on the install screen should be pretty simple; the database name and password we just created in MySQL.  Once you’ve filled out the form, submit and you should be looking at a nice, fresh, local install of WPMU.

If you do get stuck, the WPMU Forums are a big help, as most likely users have run into your same problem. The steps above worked for me, but there may be variables with your certain configuration that you’ll need answered in the Forums.

Good luck, and happy WPMU’ing!

UPDATE 3/4/09: If you’d like to configure OS X Leopard to host multiple local Wordpress instances, follow this great tutorial at O’Reilly.  I’ve spent hours piecing together solutions from various articles, but this O’Reilly article sums it up great.  Basically, I’ve now got WPMU running locally at test.wpmu.local, and WordPress running locally at test.wp.local.  Apache’s Virtual Hosts are really powerful, and essential if you’re going to be working on multiple client websites that run on WordPress.

Sun Feb 22

Review: Web Standards Solutions by Dan Cederholm

Book review of Dan Cederholm’s Web Standards Solutions

Web Standards Solutions by Dan Cederholm

Web Standards Solutions: The Markup and Style Handbook is just that: an essential guide and reference that builds upon the theory presented in Jeffrey Zeldman’s Designing with Web Standards with real-world practices.  Dan Cederholm is a designer working full-time in the field, and he presents practical and easily understood examples in a light tone.  This book is nothing less than essential for today’s working web designer.  Oh, and did I mention the 2nd edition is just around the corner, slated for release in May 2009?

Part One: Get Down with Markup

The book is split into two sections: the first reviews markup and creative methods of implementation, the second delves into CSS and solves many of the issues facing the modern CSS designer.  I’ve got over ten years of experience in the web design field, and I was simply amazed at some of the practical solutions to problems that I had faced.  Covering the essentials, from lists, headings, tables and forms, to expanding their usage through markup minimization and the application of Microformats, Web Standards Solutions contains inventive methods that are not only web standards compliant, but will save you time in your day to day projects.

One of my favorite chapters was the one covering anchors.  Countless times I’ve used semantically meaningless empty anchors to have the user jump lower in an HTML page.  This solution seems almost rudimentary, but gives meaning to my markup.  Its really almost comical how many decisions you make while coding without stopping to consider the implications when working a full-time job.  Another favorite that I put into immediate practice over at NESN.com was the chapter on tables, and the relations we can establish between data.  Taking the knowledge I took from Dan’s review of table markup, I combined it with the hCalendar chapter from my Microformats book and built the team calendars on NESN.com.  Check out the Red Sox schedule as an example.

Part Two: SimpleBits of Style

The second section of the book covers practical usage of CSS.  The one chapter I have referred to frequently is the section on building CSS layouts.  Cederholm breaks down CSS layout into four distinct methods, communicated in their most simplistic format, to ease the learning curve and also simplify the transition of using them as skeletons for your site designs.

Another technique I’ve pulled from this book is the “faux columns” created by repeating a background image vertically.  I’ve used this on just about all my sites I’ve designed since reading the book, and would recommend the investment so you can do the same.

The fact that Web Standards Solutions: The Markup and Style Handbook is an essential piece of the web designer’s arsenal is undeniable.  I have a personal connection to the book, as Dan makes reference to and uses in some of the book’s examples the Boston Red Sox, and their path to the title in 2004, when the 1st edition was originally published.  Being from the Boston area and working for NESN I definitely found the examples delightful.  Also going to Endicott college in Beverly, MA, I spent a good amount of time in Salem, where Dan’s SimpleBits studio is located.

The second edition of Web Standards Solutions is set for release in May, 2009. You can purchase Web Standards Solutions over at Amazon.com.

Rating

  • Overall: 8 out of 10
Thu Dec 18

Keeping The Creative Spark

Sometimes it’s just as easy as getting out of your chair and hopping around like a weirdo.

How can we keep creativity around? Is it possible to call up at any point?

Between being a web designer at work and a musician at home. How do I balance the need to stay creative?

I believe that it is possible to be creative at any point in time, even when you feel all is lost and you cannot make one more brush stroke or hum one more tune. Here I’ll offer up a few tips on staying creative.

Score it

Add some music to change your mood. If you’re already listening to music, change the tune or listen to a different genre. One good way to go about changing your mood with music is listening to the ol’ iPod on shuffle.

Reset

The idea here is to get your mind off of whatever is distracting it. Lets get back to that quote about hopping around like a weirdo. My favorite way to get out of any negative feelings that are holding me back from my work is to get out of my chair and go for a lap around my building. I usually skip at some point on this walk. Yes, I may look like an idiot, but who really cares? It makes me laugh at myself uncontrollably. Laughing enough that by the time I get back to my desk, I’m ready to go with a clear head and clear mind.

Prime it

Figure out what gets your mind going creatively when you are at your peak and surround yourself with it. Is it a certain painting? A lucky penny? Calling a good friend for a laugh? Whatever it is, keep it around when you are working.

Don’t forget about this great article over at A List Apart titled “Staying Motivated“, which I have pinned to the wall right next to my desk at work.

Good luck!