WordCamp Phoenix 2011 recap

Ice Sculpture

A little more than a year ago I had the opportunity to speak at WordCamp Phoenix. That turned in to one crazy weekend as I ended up speaking at WordCamp New York that same weekend. I was really bummed not to have been able to stick around in Phoenix longer as the event was HUGE! So, when they announced they’d be doing another WordCamp, I cleared my schedule and planned to attend. The weekend did NOT disappoint!

Day 1 – Getting There, Meetup, Pubcrawl
We hopped in the car Friday morning and arrived by mid afternoon. We unpacked at the hotel and headed over to the San Tan Brewing Company where we met up with about a dozen WordPress developers, half of which I knew via twitter, but had never met in person. We spent a couple hours talking shop at San Tan before we headed back to the hotel for a quick change of close and then a half hour drive to attend a meetup at Co+Hoots (a creative co-working space). From there we piled 17 people (not a typo) in to my Tundra and drove to what was supposed to be the kickoff spot for a pubcrawl. Instead, the bulk of us hung out at an Irish Pub before heading back to the San Tan for a couple more beers (they make some great beers!) and a lot more shop talk. As a note to myself: maybe a couple less beers the night BEFORE WordCamp next time…

Day 2 – The Main Event
Saturday morning we got up early, grabbed some breakfast (underwhelming breakfast buffet at the hotel) and walked to the Chandler Center for the Arts where WordCamp was being held. We got there early to avoid the big lines I was expecting to see since there were 600+ expected to show up. It took the wife and I less than 5 minutes to get in and get our badges and t-shirts. After the opening remarks it was on to a great set of sessions. Here’s the ones I sat in and my take on each.

A/B testing the WordPress Way presented by Mitcho
I saw Mitcho give a very brief intro to A/B testing at WordCamp San Francisco last year, so I was really excited to see his presentation when he had a little bit longer to speak. After a quick slide presentation he hopped in to a live demo of a WordPress plugin he wrote called ShrimpTest. He gave me so many ideas on things I could be doing on my own sites not to mention what I could be offering to some clients we have who could really make use of this excellent plugin.

Follow mitcho on twitter at @themitcho

User Security presented by Dre Armeda & Brad Williams
This is a session that I think every person who runs a WordPress site should have to sit through at least once. The guys took turns showing some things you shouldn’t be doing (downloading free WordPress themes from untrusted sources) and a list of things you can do to secure your WordPress install. You’d be amazed at how many of these can be done in under 5 minutes each.

Follow Brad and Dre on twitter at @williamsba & @dremeda

Typography & WP presented by Chelsea Otakan
I don’t really do a heck of a lot of site design. Most of my time is spent writing code. Regardless, every time I have the opportunity to hear Chelsea give a presentation, I jump at the chance. I end up taking more notes in her design preso than I do in programming presos. I figure if I can pick up a tip or two from her extensive design knowledge, in a pinch I could maybe (just maybe) put something together that doesn’t completely suck.

Follow Chelsea on twitter at @chexee

I skipped the next round of sessions to head back to the hotel and pick up my laptop as I was scheduled to take part in the Genius Bar after lunch. When I get back from the hotel I spent some time chatting with and getting a demo from Andrew Norcross about some scripts he’s put together. (very handy, thanks!)

After lunch I missed the next two sets of sessions which is a bit of a bummer. I would have really liked to have seen Ryan Duff and Andrew Norcross as they were both presenting on different aspects of using Custom Post Types. We’ve been using CPTs a lot in our business lately and they are very powerful and flexible. It would have nice to have seen what these two really bright guys had in store. Hopefully I can find copies of their slides online.

Plugins for Designers presented by Cody Landefeld
Cody gave a quick introduction to about half a dozen plugins and how designers can use them for clients in their site design/development. He included some screenshot examples for each plugin used, the method of enhancement and the outcome achieved. Just like with Chelsea, this isn’t the stuff I do most often, but it’s nice to see good examples just the same!

I almost skipped out on the lightning sessions. I’m really glad I didn’t. I hope the videos from these sessions make it online as there were some really entertaining and informative sessions. It would be hard to recap them all as I wasn’t taking any notes, but just kicking back and enjoying.

Some of the WordCamp presenters have uploaded their slides to slideshare.net and you can find the bulk of them under the wcphx2011 tag. Hopefully more will follow suit.

The official after party was a blast. page.ly brought in a photo booth where they took Red Carpet photos as people showed up and costumed tomfoolery photos after the alcohol had been flowing for a bit. There was some yummy tap beer from Four Peaks Brewery and some tasty food from Famous Dave’s BBQ. And, to make sure this WordCamp wouldn’t be outdone by any WordCamp any time soon, they had a bad ass WordPress ice sculpture / alcohol luge. Jager anyone?

After 2 long days of driving and talking pretty much none-stop, we called it an early night (after stopping off at San Tan for a quick bite and more beer, of course). And, if this had been the end of it and we headed home on Sunday morning, I would have called it a really good event and been content.

Day 3 – Dev Day
On Sunday morning I got up and headed over to Gangplank which is an absolutely awesome co-working space. Our friend Abbie Sanderson was teaching a class called WordPress for Kids to a group of about a dozen kids that looked like they ranged in age from 8 to 13. It was a really unique event and I’m glad I had a chance to see it in action. Just before lunch, the kids headed home and a couple dozen WordPress developers took the place over. It started off with a BBQ in the back alley and some chit-chat. After everybody was finished we all took seats back inside.

It started off with a bunch of the WordPress core developers helping several developers get their development environments set up to be able to work on WordPress locally. It was awesome to see everybody pitching in to help get others up to speed.

Next, Andrew Nacin gave a presentation about how to contribute to the WordPress project. He cover, in detail, how to find tickets to work on, how to submit patches and how to submit tickets to TRAC. Since I had recently submitted my first ticket, I followed along looking at my ticket and seeing all the things I did wrong. :) I asked a bunch of questions and it even had a few discussions about the ticket with Mark Jaquith, Aaron Jorbin and Nacin. For me it wasn’t so much about the one specific ticket, but way more about the process of dealing with a ticket. The ticket had been closed at one point, I’ve since reopened it and there has been some debate about the ticket. Todd Huish wrote a patch for the ticket and it looks like unless things change, my ticket and Todd’s patch will end up as part of the software that MILLIONS of people use every day. Seriously, how cool is that?

In Closing
This was the 20th WordCamp I’ve been to in 2 years and it was by far the most valuable. Late last year I submitted my first patch to the WordPress project and it got accepted and it will be part of WordPress 3.1. This has whet my appetite and I’m itching to submit more often. Getting this first hand knowledge on the how to do it properly is invaluable.

HUGE thanks to everybody who had a hand in putting on WordCamp Phoenix. You did an amazing job and you should be very proud!

Twitter Comments

dremeda RT @vegasgeek: Here's my WordCamp Phoenix recap post: http://vegasgeek.com/wcphx #wcphx
Re-Tweet | Reply | View Tweet
scottbasgaard RT @vegasgeek: Here's my WordCamp Phoenix recap post: http://vegasgeek.com/wcphx #wcphx
Re-Tweet | Reply | View Tweet
vegasgeek Here's my WordCamp Phoenix recap post: http://vegasgeek.com/wcphx #wcphx
Re-Tweet | Reply | View Tweet

WordPress United – Las Vegas

After WordCamp Las Vegas in January 2009 a group of us started up our own branch of Beer n Blog. It jumped out of the gate with some really solid numbers. For the first 4-6 weeks we were averaging somewhere near 40 attendees and there was some honest to goodness blogging going on along with some blog training and assistance. I was stoked! I tried to figure out ways to expand on the technical stuff. But, for whatever reason, it just never really worked out. Our #bnblv group still meets up almost every week, but it’s down to a core group of half a dozen or so, and it’s definitely more about the beer than the blog. Not that there’s anything wrong with that. I do love me some beer!

Since that time I have been approached by several people asking me if I was interested in starting up a WordPress users group. With WordCamp Vegas happening a month or so back, I was getting asked this question more and more. Everybody who asked me got basically the same response; “I am very interested in attending, presenting at and helping to promote a WordPress users group here in Las Vegas, but I do not have the time or energy to be in charge of finding a venue and everything else that goes in to being the organizer. So, if you start one up, let me know and I’ll be happy to shout it from the mountain tops!” (yes, I know I live in a valley… work with me here)

WordPress User’s Group, Vegas Style!

Finally, somebody has taken me up on that offer! John Pollard took the initiative and found a WordPress related group on Meetup.com that seemed to be dormant, he worked some magic and is now the organizer for WordPress United – Las Vegas. He did his part, so I’m doing mine! I’ve already joined the group and if you are in Las Vegas and interested in a WordPress users group, I urge you to join, too. I currently have no idea what the plans are, when meetings will be, what shape they’ll take, etc. But I am so excited for the possibility of having a group that meets regularly to share ideas and knowledge about WordPress that I’m happy to jump on board and see where the ride takes me!

Thank You John for getting this rolling! I wish you a ton of success and I’m looking forward to the first meetup!

Twitter Comments

ToddRLevy RT @vegasgeek: If you missed it last night, new WordPress user group starting up in Las Vegas! http://vegasgeek.com/9io
Re-Tweet | Reply | View Tweet
vegasgeek If you missed it last night, new WordPress user group starting up in Las Vegas! http://vegasgeek.com/9io
Re-Tweet | Reply | View Tweet
Sara_Mooney RT @vegasgeek: A WordPress User's Group starting up in Las Vegas! http://vegasgeek.com/9io I must be dreaming!
Re-Tweet | Reply | View Tweet
schachin RT @vegasgeek: A WordPress User's Group starting up in Las Vegas! http://vegasgeek.com/9io I must be dreaming!
Re-Tweet | Reply | View Tweet
vegasgeek A WordPress User's Group starting up in Las Vegas! http://vegasgeek.com/9io I must be dreaming!
Re-Tweet | Reply | View Tweet

Getting the most out of WordCamp

wclv

After roughly 3 months of planning, WordCamp Las Vegas is happening tomorrow. I’m currently filled with mixed emotions. I’m very excited for tomorrow, it’s going to be a lot of fun. But, Sunday morning I’ll wake up and it will all be over for another year. Wait a sec, that sounds pretty awesome, too! :)

One of the things that I spend a fair amount of timing doing is answering emails from people who are planning on attending. While some of the questions are unique to our event tomorrow (i.e. where’s the best place to park), many of the questions are universal to WordCamps and most any tech conference. So I thought it might be useful to share some of those questions and answers with you.

What should I bring with me to WordCamp?
Grand Canyon backpack
For starters, if you look like this guy, you are doing it wrong! I’ve been to a few dozen conferences over the past two years and on a few occassions I have tried to pack my laptop, SLR camera and lenses and a jacket. The best advice I can give you is to pack as light as you can. Bring something to take notes and maybe a sweatshirt (conference halls have a way of getting chilly) that you can tie around your waist, and leave the rest back at the hotel. Last weekend I went to BlogWorld and carried only my iPad and it was one of the best conference experiences I’ve had in a while.

There are multiple sessions going on at the same time I want to see, which should I go to?
Major rule coming up… DO NOT STRESS OUT! Most WordCamp events are recorded, so even if two speakers you want to see are going on at the same time, you’ll likely be able to catch the other a short time later online.

Sticking with the no stress rule, when you are in a session, don’t spend the entire time with your head down frantically trying to dictate every word or slide. Most speakers will make their presentation materials available almost immediately following the event. Instead, pay attention and jot down short notes about items you want to research further when you get back home. You aren’t going to learn everything about a topic from a 45 minute presentation anyway.

I’d really like to meet (speaker), will they be available to talk to?
One of the biggest values of a WordCamp (or any conference, for that matter) is the networking. Not just for the attendees, but for the speakers, too. I know when I’m speaking at a conference, I spend as much time as I can chatting with people between sessions, at lunch and at the after parties. On very rare occassions a speaker may have other commitments and won’t be able to stick around. But that’s the exception, not the rule. So don’t be shy, step up and say hello!

In closing, the 3 most important rules are:
- Keep stress low
- Meet as many new people as you can
- HAVE FUN!

(photo by pagedooley, used via Creative Commons)

Twitter Comments

digibomb RT @ryancduff: RT @vegasgeek: Just posted: getting the most out of WordCamp. http://vegasgeek.com/ktq
Re-Tweet | Reply | View Tweet
ryancduff RT @vegasgeek: Just posted: getting the most out of WordCamp. http://vegasgeek.com/ktq
Re-Tweet | Reply | View Tweet
vegasgeek Just posted: getting the most out of WordCamp. http://vegasgeek.com/ktq
Re-Tweet | Reply | View Tweet

How to get started as a WordPress developer for hire

WordPress Rocks!

A friend of mine sent me the following message on Facebook today:

I have a buddy of mine that is an aspiring WordPress dev. I was curious if you had any linkage or inside info on perhaps ways for my buddy to find work.

While I don’t have any inside information, I can tell you a few of the things I’ve done over the past 18 months to build up business for my company, 9seeds.

These are in no way scientific and in no specific order:

Job Boards
There are several sites out there like jobs.wordpress.net and rent-acoder.com that have a stead stream of WordPress related projects up for grabs. Since you’ll be bidding against several other developers, be prepared to work for less money than you normally would on the initial project. But once you prove yourself to a client, you may be able to turn it in to a longer term relationship.

Give Away Free Help
There is no better way to endear yourself to somebody than by teaching them something! Hang out in the WordPress IRC chat or use a program like TweetDeck to monitor several search terms on Twitter. When somebody has a question on how to fix something in WordPress, answer it! Send them a link to a tutorial or to the codex or whatever seems appropriate. Heck, if you have the time, write a blog post about the solution and respond with a link to your own site. We’ve had several people ask for assistance up front and then pay to have us do additional work down the line. By giving away free help you are letting them know that you know your stuff. That’s way better than any resume could ever do.

Write A Plugin
Did you know that anybody who wants to can submit a plugin to the WordPress repository? Write a plugin that will help somebody do something quicker/better/faster/etc and release it to the repository. Yep, give it away for free. Next time you have a client asking for examples of work you’ve done, you can point them to the repository to see check out your work.

As an aside, after you write the plugin and release it to the repository, submit it to WebLogToolsCollection.com. They constantly post about newly released plugins and their feed is seen by 20,000+ people.

Network, Network, Network
Stop what you are doing right now and go check out wordcamp.org. View the schedule and find an upcoming WordCamp event near you. Now go register for that event.

WordCamp events are an excellent opportunity for you to meet other WordPress developers. Notice that I didn’t say potential clients? While meeting clients is the ultimate goal, getting to know other developers in the space is FAR more important. The developers who have been around longer than you probably have more work requests than they can handle. Take 9seeds for example. When a request comes in that we can’t handle at that time or isn’t a good fit for our skill set, we try and match that client up with one of the many developers we’ve met at WordCamp events around the country.

Twitter Comments

bryanjkay RT @vegasgeek: Blogged: How to get started as a WordPress developer for hire. http://vegasgeek.com/9cn
Re-Tweet | Reply | View Tweet
devinsays RT @vegasgeek: Blogged: How to get started as a WordPress developer for hire. http://vegasgeek.com/9cn
Re-Tweet | Reply | View Tweet
shaynesanderson RT @vegasgeek: Blogged: How to get started as a WordPress developer for hire. http://vegasgeek.com/9cn
Re-Tweet | Reply | View Tweet
vegasgeek Blogged: How to get started as a WordPress developer for hire. http://vegasgeek.com/9cn
Re-Tweet | Reply | View Tweet

WordCamp Los Angeles 2010 Wrap-up

WordCamp LA


It’s Tuesday afternoon and I’m just now getting caught up after spending the weekend in Los Angeles for WordCamp LA 2010. Trips to LA for me are always nice as I have a bunch of family there so I get to use WordCamp as an excuse to go and visit. Not to mention getting to have dinner at my favorite restaurant on the planet!

As usual, when left to myself, I will somehow find a way to get lost. I left my sister’s house with plenty of time to spare. I found LMU no problem, but then parked in the wrong parking lot so I wandered around the campus for 30 minutes until I realized my mistake, reparked and then found the proper building. And for all of you who point out that the event is going on in the EXACT same spot as it was last year… shut it.

I got registered and quickly headed upstairs to catch the last half of Bill Heaton’s talk on jQuery. Wow, if there is a subject I know the least about, jQuery is it! The session was informative (probably more-so if I caught the whole thing, huh?) and it’s a subject I’d like to learn more about. I’ll have to catch the video for the session once it’s posted online later.

Next I sat in the Optimizing WordPress session given by Josh Highland. There are so many tips to learn from his session. Honestly, I think it would be so beneficial to have a full-day workshop just talking about how to optimize your WordPress installs. Going through Yslow and figuring out what’s costing you the most performance and having somebody like Josh there to help point you in the right direction would be amazingly valuable. (hint hint Josh!) Not to mention getting CDN set up and such.

I followed that up with the session talking about developing fast and scalable servers. While most of this info isn’t something I get my hands dirty with directly, it’s still great information as we have clients who can definitely benefit.

The final session before lunch was Thom Meredith talking about using Custom Fields. His talk centered around two pretty cool WordPress plugins, Magic Fields and Pods. I have to be honest, I’m not entirely sure how portable the end results of what you build with these plugins would be. But, for building a system that you don’t plan on duplicating across multiple sites, or sending to somebody else to use, there are a LOT of cool things that could be done with these two plugins. Definitely worth checking out, that’s for sure.

Lunch was it’s own little slice of awesome. After we placed our orders the fire alarm went off and they cleared everybody from the campus cafeteria. It only took 5-10 minutes to get sorted out, but still made for an amusing interruption.

After lunch I sat in on the Designer’s Panel. The 4 designers each showed off a bit of their work and the crowd asked some good questions that helped drive the conversation nicely.

Austin Passy then did a session where he talked about posting on the go. This session was a blast. He showed how to set up Postie and configure it to do a photo blog from your phone (or any email source). He set up an email account and encouraged the folks in the audience send photos to it. Give a group of geeks this kind of freedom and you know it’s going to end up being silly. You can see resulting site at photos.wordcamp.la.

The final session before the keynote was Brandon Dove talking about pluggable plugins. As a plugin developer, this session was definitely eye opening as to the possibilities for plugins. This is another session where I’m going to need to catch on video!

The day finished up with Luke Pilon talking about WordPress, GPL and VC. A lot of what he was saying really hit home since I run a small development company. VC money, bank loans, borrowing from friends/family. Yeah, lots of scary stuff in that session. Good though. Makes you think about what’s important, what direction you want to go and what your end game is.

I ended up meeting several new people and had some great conversations. One of my favorite parts about going to WordCamps is listening to people who are all doing really cool and inventive things with WordPress. I’m not even talking about the BIG GUYS. I’m talking about the people who work for small companies that have turned to WordPress as a way to take their idea and make it a reality. Such great stories!

Congrats to Austin for putting on another great WordCamp event! I’m already looking forward to next year!

Twitter Comments

qtcmedia RT @vegasgeek: WordCamp Los Angeles 2010 Wrap-up http://vegasgeek.com/27a #MicroBlog #Photo
Re-Tweet | Reply | View Tweet
wordcampla RT @vegasgeek: WordCamp Los Angeles 2010 Wrap-up http://vegasgeek.com/27a #MicroBlog #Photo
Re-Tweet | Reply | View Tweet
vegasgeek WordCamp Los Angeles 2010 Wrap-up http://vegasgeek.com/27a #MicroBlog #Photo
Re-Tweet | Reply | View Tweet

WordCamp Utah Wrap-Up

campfire-w-words

I’m just getting back to my desk after spending the better part of 3 days in Salt Lake City to attend and present at WordCamp Utah. I had an absolute blast! Here’s a bit about the weekend.

The Stay
I can not say enough good things about the Chase Suite Hotel. When we arrived at the airport, we called and asked if they had a shuttle. We hadn’t requested the shuttle ahead of time and yet they showed up in about 20 minutes to pick us up. We mentioned we were planning on going out to dinner and our driver said, “just let us know when you are ready.” Sure enough, 30 minutes later they gave us a ride to dinner. The rooms are very reasonably priced, they have a full kitchen, complementary breakfast and free internet access. They rocked!

OK, speaking of dinner, Todd and I hit up The Pie for an awesome pizza. Todd ordered us a Cheese Pull-A-Part and a Mountain of Meat pizza. They serve the pull-a-part with their home made ranch dressing. Seriously, it was the best ranch I’ve ever tasted. If you’ve never been to The Pie before, you have to stop in as you pass through Salt Lake.

WordCamp Utah
We spent all day Saturday at WordCamp. It took place on the U of U campus in the Skaggs Biology building. Excellent venue! The main room had power outlets under each seat, and for probably the first time at any WordCamp I’ve ever attended, the free wifi worked the entire time. Those two things alone make this a successful WordCamp in my opinion. But wait, there’s more!

During lunch I was chatting with somebody who was attending their first WordCamp event. I mentioned that it was roughly my 15th. He asked, “Don’t they get repetitive?” I said, “Sure, but that doesn’t mean I don’t learn something new at every event I go to!” This one was no different. I picked up a couple tips in the first two sessions I went to in the morning. (I’ll be doing a follow-up post to talk about a plugin I wrote at the airport based on something I learned in Jake Suprlock’s presentation.) Plus, every WordCamp has something unique to offer. Just after lunch we were treated to a session with Tom from BlendTec, the company who makes the blender used in the WillItBlend.com videos. Tom is a very entertaining guy with some great stories to share on how they used social media to raise their online sales by 700%.

My Presentation
Right after Tom blended up a WordPress mug, it was time for me to give my presentation on beginning plugin development. While I’ve given a similar presentation several times in the past, this one was completely different. Normally I would just use a browser and text editor to show a live demo of how to build a plugin. But for this one, I used Keynote to create slides and did it more like a “normal” presentation. I have to say, I really enjoyed giving the presentation this way. I found that being able to maintain eye contact with the audience rather that staring at my screen made it easier to engage the crowd. This led to the audience asking a bunch of questions which turns it into more of a conversation than just a presentation. Based on the feedback I received after the presentation, I’d say the audience appreciated that as well. You can check out the slides from my presentation on slideshare.net.

Overall it was a terrific weekend. Congrats to Joseph Scott and his team of volunteers for organizing an excellent event! I’m already looking forward to next year’s event.

RoloPress review

RoloPress Layout

Since starting 9seeds back in October, we’ve collected a fair amount of contact information for clients and prospects. The trouble is, we don’t really have a single place where we can keep that information and share it between our geographically diverse team. I’ve tried a few CRM programs like Sugar CRM and Highrise, but a CRM is way more than what we need. I’m just looking for a simple way to store my contacts and make them available to the people in our company.

I entertained the idea of building my own contact manager as a theme for WordPress using Custom Post Types and Taxonomies. But before I wrote my own, I sent a request on Twitter asking if one already existing. That is when I was introduced to RoloPress.

From their About page:

RoloPress is an Open Source Contact Manager, licensed under GPL v2, and built on the WordPress platform (also, Open Source). That means that you can download it, modify it, do whatever you want to it. Isn’t Open Source great!

I took a quick look at their demo site, and at first glance, it appears to be exactly what I’m looking for. So far, so good. Time to test it out myself. After downloading the core theme and the child theme I was ready to get started!

Installation:
I had a little trouble, albeit self-inflicted, with the installation when I tried running the theme on an existing WordPress install on my development server. It did not care for the existing content in my database. So to install it, here is what I suggest:

  1. Set up a fresh install of WordPress
  2. Delete all default pages and posts
  3. Upload the RoloPress core and child theme
  4. Activate the child theme

Side note: If you are planning to run RoloPress on a server accessible via the internet and don’t want to give everybody access to your information, you should install a plugin like Force User Login.

Setup:
RoloPress is VERY customizable. After the install the first you need to do is select one of the many (13) page layout options by going to Appearance -> Layout from the WP dashboard. I messed around with a few but settled on “2 columns, primary on top right, secondary on bottom right” which looks something like this:

The content for each layout is handled by widgets. Again, there are many to choose from and you’ll likely want to play around with the placement and order of the widgets. After you have a few contacts in the system, try moving the widgets around and viewing the results to find the configuration that works best for you.

After the install and setup are completed, you won’t be back to the WordPress dashboard unless you want to tweak more settings. Everything else from this point forward takes place on the front end of the site.

Adding Data:
When you first install RoloPress, it creates a few pages automatically. Two of those are used for data entry; Add Company and Add Contact. When I first viewed the page I instinctively clicked Add Contact. The Add Contact page is really straight forward. It has all the requisite fields you’d expect in a contact management system, including a field marked Company. I’ll come back to that in a second.

I filled in all of the contact information for one of my clients. I clicked the Add Contact button and then headed back to the home page to check out my handy work. Here is what my results looked like:

The form saved my contact just fine, but it also created a record for a new company. The trouble is, the company record was entirely blank. I clicked Edit for the company, updated the information and saved it and everything was fine. This is obviously just a bug and I expect they’ll clean this functionality up in a future version.

One other small bug I found on the Add Contact page also has to do with the company field. I entered 9seeds, LLC as the company name, and when I saved the page, it assumed the comma was a delimiter and it created 2 company records. I removed the two blank company records and decided to try the Add Company page first. I filled in all of the information about the company and saved the entry. I then went back to the Add Contact page to test it out again. In the screenshot below you can see that the form auto-suggested the company name. This worked perfectly and was really simple now that I had the process down.

Finding Contacts:
Once I had a few contacts in the system, I was really curious how well the search functionality was going to work. If you have a ton of data in the system, how good is it if you can’t get to it easily? I have to say that the search functionality in RoloPress is excellent! I tried a bunch of different searches; first name, last name, part of an address, city, on and on and on. Here’s an example of a search I ran for “hen”. It returned 3 results where ‘hen’ was found as part of a street name in the first record and part of the city name in records 2 and 3. You’ll also noticed that it returned 2 contacts and a company record.

In Summary:
From a developer’s standpoint, since RoloPress stores contact data as metadata attached to posts, building add-on functionality that uses that data for things like mass emailing your contact list would be pretty straight forward if you are already comfortable building WordPress plugins that interact with post data. And, if you can’t find a layout that matches your exact needs, taking the existing parts and creating a new template would also be pretty simple.

RoloPress isn’t ready for enterprise level Contact Management, but, if you just need a place to store some contacts, it does a solid job. I’m definitely going to continue using it as it fits my needs perfectly. The small bugs I found have easy workarounds so I don’t see them being any trouble whatsoever.

From Shoe to WordPress Theme

Vans

You know how easy it is to switch themes in WordPress, right? Click Appearance > Themes and then activate the new one you want. Simple. Give me something that easy to switch around and I’m going to use it. A lot.

I’ve been wanting to mess with creating a child-theme using the new WordPress default theme, twentyten for a while now. I didn’t really have anything specific in mind, but wanted to go through the process to get myself familiar with it.

For those who may not know what a child-theme is, it’s a way to use an existing theme as a base while overriding the pieces that you want to change with your own elements. The great part is, you can change as much or as little as you want. Making your edits in your own child theme makes it simple to upgrade the parent theme down the line.

So how does a shoe become a theme?

Last week I bought a pair of old-school Vans that have this cool white stitching. I liked the look and that was enough to kick start the idea for my theme. There’s no better way to learn something than by diving in and trying it out and now that I had an idea in mind, it was time to dig in.

There are already a bunch of theme frameworks available specifically designed for using as a base for child themes. I made the decision to use the new twentyten theme as my base as I knew it already had many of the basic design elements I wanted. Personally, if I was going to use a theme framework, I’d likely go with the Genesis Framework from Studiopress.

What I learned during the process

  • Creating a child theme is ridiculously simple.
    I won’t bother you with a tutorial here, but if you want to learn more about how-to, the tutorial at op111.net is pretty solid.
  • Me and CSS are not friends.
    If you want to develop themes these days, you need to know CSS. But seriously, the stuff just pisses me off at every turn. If it was up to me, I’d just use tables to lay out the theme. But that didn’t go over well.
  • I really enjoy the development process.
    I have been building websites for over 15 years and one thing that never gets old is the feeling I get when hit save on a file, open a browser and first see my work come to life. I’m not even talking about the whole site all at once. I’m talking about the detail work. Tweak this or that, hit save, refresh the page and Bang, there is your little slice of success.

I don’t think I’m 100% finished with the theme. I think there are still some things I’d like to tweak. It’s not winning any awards, but I’m really liking the new theme.

Credit where due

I owe a ton of thanks to Shayne for his help with the new theme. Every time I ran in to a CSS issue I wasn’t able to solve, Shayne was there to get me back on track. Have you ever heard the phrase “It’s not what you know, it’s who you know”? I proved that over and over again this weekend. Thanks, Shayne.

WordCamp Boulder session review; WordPress Consulting

Last weekend I had the pleasure of attending WordCamp Boulder. Just like last year’s WordCamp in Denver, it was organized by the guys at Crowd Favorite. They had done a great job last year and I expected nothing less this time around.

This year’s event had two main tracks, but also included a 3 set of sessions that were more of a discussion than presentation. One of the sessions that interested me most was the WordPress Consulting discussion led by Alex King from Crowd Favorite and Nick Gernert from Voce Communications. It was held in a coffee shop around the corner from the main WordCamp venue and we squeezed roughly 40-50 people in for the discussion.

I’ve been doing WordPress consulting work for the past couple years. Initially I was doing it as a side project on nights and weekends. In January I started working for 9seeds (the company I run with two friends) full time. Heading to the session I felt that I had information to share, but even more to learn myself. Here are a few of the topics from the session that really hit home for me, along with some of my own thoughts sprinkled in.

Do you present your company in a way that makes it seem larger than it is?
This is a topic I’ve always found interesting. When you create your company’s website, you want to give the impression that you can handle your client’s needs. But, does that mean making it seem like you have a large staff? I’ve never been a fan of trying to make it seem like we are a corporation with hundreds of employees because I feel it would be very hard to maintain that facade. Plus, if you ‘trick’ a client in to hiring your company, when they do find out it’s just you in your basement, how is that going to make them feel? Are they going to be comfortable that you are telling the truth on everything else?

For me it always comes down to being personal. When I write blog posts on our company site, it’s still ME that’s doing the writing. I try and use “I” instead of “we”. When I talk to clients (or prospects), I mention who’s going to be working directly on the project.

Remember this: Companies don’t do business with companies. People do business with people. No matter what, the finial decision to work with your company comes down to a PERSON making the choice to work with YOU.

Do you provide and charge your clients for project plans, documentation and test cases?
During the session, the following question was posed; When you have completed a project and are ready to show it to your client, do you send them a one line email telling them their site is up?

Think about that for just a second. How many times have you completed something and then just fired off that one line response? Your client may have just spent hundreds or even thousands of dollars and you tell them their site is up and provide virtually nothing more. Yikes. I’ve done this on several occasions, but hopefully I’ve done it for the last time.

This topic spawned in to the discussion about documentation and how much you provide to your client. The first type of documentation was the contract and statement of work. I had to agree 100% when somebody else suggested that they typically only write a contract and SOW for larger projects while the smaller (4-8 hour) projects, they typically don’t bother creating a contract. We weren’t alone. Most everybody in the room was nodding their head. The point was then made that it’s those smaller projects (or the clients on the tightest budgets) who end up being the ones who need that documentation the most. If for no other reason than to get an agreed upon list of functionality that makes up the project.

How do you find the bigger clients who will pay for documentation?
As the discussion about documentation continued to roll on, it seemed that the larger the project, the more time was being spent on documentation. That is when a lady in the crowd asked the one that all of us face as consultants, How DO you find clients with a budget? We all shared a bit of a laugh because no matter how long you are in the consulting business, we will never really have that question answered. There is no perfect formula.

That being said, there were several excellent suggestions on how to market yourself. Really, that’s what this question boils down to anyway; marketing. Word of Mouth was by far the most popular way that people are finding clients. Your past work speaks for itself, and if you did great work, the hope is that your client will tell their associates about you. Networking was another big response. Attending events like WordCamp or local meetup groups is a great way to meet people. But for me, the biggest source of requests comes from being a presenter at an event. I have been lucky enough to be invited to speak at several WordCamp events, but even before that, I would give 15-30 minute presentations to local groups. Not a presentation about my company, but topics like “How WordPress can help you and your business.” If you show somebody a way to help their business or accomplish a task, you instantly become an authority to them and when they need assistance, guess who they are likely to call first. You!

Your client doesn’t just pick you, you have to pick your clients!
When you first go in to business, you are thrilled any time ANYBODY is willing to work with you. You take on any project thrown your way because you need to do silly things like pay the rent and buy food. When you are struggling to make ends meet, your ability to be choosy is limited. There are still times when you should step back and ask yourself if taking on this client is the right thing to do.

It’s OK to take on projects that are a LITTLE above your experience level, but taking on a project way over your head early on can be devastating. You may want to consider handing off a client who’s needs are out of your reach (for now) to one of the other developers you’ve met at a WordCamp event. Believe me, referring business to another developer/agency is a great way of getting yourself some incoming referrals. Remember, not every client who contacts that other developer is going to be a perfect fit for them either.

There are definitely other reasons you may want to consider passing on a particular client. The best thing I can tell you is to listen to your gut. If something just doesn’t feel right before you agree to the project, make sure that there aren’t warning signs of a bigger issue coming down the tracks. If you can’t see a clear start, middle and end to a project (or at least a specific phase of the project), have another look at your contract and your estimate and ask yourself if you think you are going to have trouble completing the project for the amount you quoted or how easy it will be to add to that quote if the project gets off track.

How much to charge?
One of the hardest things in the world to do is estimate how long something is going to take to complete. Think about the last time you set out to clean your garage. “oh, this will only take a few hours” turns to 2 full weekends pretty easily. The same is definitely true for web development.

There are several ways to charge you clients, but the two most common are; flat rate for an entire project, and hourly billing. No matter which you go with, you’ll still have to do some sort of time estimate to gauge how long the project is going to take you. No client is going to blindly accept hourly billing not having any idea how long a project should take. Just like you aren’t going to come up with a flat rate without having a general idea of how much time it’s going to take.

How much you charge per hour is entirely up to you. You will have to play with your pricing over time. One of the suggestions was that every six months raise your prices. If you aren’t seeing a rise in clients turning you down for being too expensive, then you likely weren’t charging enough before.

Conclusion
It was very comforting to hear a room full of people who were all on much the same path as we are, but at different points in their own journey. I feel that we (9seeds) are still in the early stages of our companies development and still have a ways to go before we really find our stride. I left this session with a ton of ideas and am looking forward to implementing several of them very soon!