Word Camp Kansas City (KC) 2012 main event took place Saturday, June 2. The event started out with muffins, yum. After a few housekeeping announcements it was time to head to our session of interest. The day and a 1/2 conference offered several of speaking sessions on a variety of WordPress topics. The speaking sessions was divided into three main tracks, designer, developer and publisher. Although each track may have been geared towards a specific group, it seemed everyone, inducing myself, would end up attending at least one session in each of the different tracks. And although I would consider myself a designer, turns out the topic I would be speaking on would fall under the publisher track, which makes sense given the topic, but more on that later. Below is a quick outline of the Word Camp KC 2012 schedule.
The first session of the day I planed on attending was “PSD to WordPress” presented by Kristin Falkner (@KristinCodesWP). The session was really good, she provided a sort of work flow on where to begin when moving from a mock-up to a custom theme. The question of using child themes or build from scratch came up, Kristin, said to use whatever was most comfortable for you, however she always worked from scratch to avoid confession and bloated code. She also commented how it can be helpful to create a static HTML version of the site, get it working, them break it apart for a WP theme. Interestingly this how I work, starting with a psd mockup then code from scratch, code HTML, them break up for WP theme. Some key tips I picked up from Kristin’s presentation was:
- a hand custom field plugin called “
- use page id’s instead of page names for certain theme styling this will prevent error if the client changes the page naming structure
- Rockablepress is a good resource
Lastly if you want a copy of Kristin’s presentation you can view it at: PSD to WordPress prez
The next presentation I attended was “Sensational CSS: How to Show Off Your Super Sweet Skills!”, presented by Karen Arnold (@karenalma). Karen is a happiness engineer for WordPress. Her presentation was about how to create child themes by editing a custom CSS. The first the you’ll want to do is install the “safecss, this plugin comes at of an upgrade feature from WordPress.com. The “safecss” plugin allows one to override the mater theme’s CSS and creating a custom one. I always find this tricky, Karen explained that the browser extension Firebug allows one to easily find the CSS id or class names of the main theme in order to edit them. Personally, I still think this method can confuse me, because everyone has a different method of naming CSS id and classes, but if your only making simple changes, then a child them is probably quicker an easier. As for the “safecss” plugin, Karen, hinted to some new updates coming soon, including:
- syntax highlighting
At this point it was time for me to present, I could into detail about that, however I plan on making a separate post, which also includes a link to my power point. Overall, I would say the presentation went well and and I got some good feedback. I was a little nervous, since this my first speaking session outside of ones I’ve presented at on campus. I think it went well and hope to continue speaking at other events.
After my presentation, lunch was provided, this is where I began rewriting my notes into this post. The rest of this post I’ll post after the final round of presentations.
Okay, so after lunch, there was a group panel session that allowed attendees to ask questions related to WP and E-commerce, Security and Hosting. The panel included Pippin Williamson (@pippinsplugins) a plugin in developer, Tom Jenkins (@techguytom) a developer and Buddy Press expert, Calvin Robertson (@eveofcreativity) and Austin Gunter (@austingunter) from WP Engine. The MC was Josepha Haden (@JosephaHaden) who was also the one of the main event organizers. Josepha, started the panel session by introducing each of the panel members and there after would prompt questions, since the audience seemed a little sluggish after lunch to ask any of their own. A few prominent questions and answers are listed below:
- Favorite E-commerce plugin:
- Favorite Mobile Theme:
- Favorite Membership plugin:
- What to do if you get hacked?
- Make sure you have been keeping regular updates of your site database (db)
- Reinstall back db
- Do a malware check at http://sucuri.net/
- Change the wp login url with CLAU plugin
- Lock down admin access using the Lock down WP Admin plugin
- Don’t be afraid to check your root directory for any suspicious files that are not part of the main WP core, and delete them.
- Also, note that deactivated plugins can cause vulnerability, don’t detective remove any none used plugins
- Helpful Tips:
- Note that the WP core is more secure than ever before
- To prevent security risks update WP install with each new update release
- Some E-commerce plugin can cause errors for Internet Explore (IE), no real way around this, just educate your users to find a better browser (DOWN WITH IE)
- There are some really good hosting / security management services like WP Engine
- When looking for good plugins, WP Plugin star ratings are not reliable
- Get involved in the WP community for help and other things, check out the WP forums
After the panel session, the afternoon speaking sessions began. I choose for my first afternoon session to attend the “Creation of Plug-in’s A-Z” presented by Jonathan Wondrusch (@bybloggers). Jonathon began his presentation by talking about his background, which turns out to be similar to mine. He started building websites in his teens, but would later go to college studying 3D computer Animation. After graduating he worked various jobs in animation, but continued to develop for the web. Currently he develops custom assets such as plugins for bloggers and other web designers. Jonathon’s talk was interesting because it focused on the workflow to creating WP plugins and how it compared to creating animations.
Animation workflow for animator:
- Shot assignment
- Research (consider poses, video self, use models)
- Planning (sketching, thumbnails)
- Blocking (key poses)
- Refinishing (adding animation0
- Polish (add details, eye blink, hair movement)
Web Developer workflow:
- Creative Brief
- Research ( what is already out there? what are others doing)
- Planing (how will this be developed and used? What is the best method for making this?)
- Alpha (pilot of site)
- Beta (live pilot of site)
- Official Launch
Jonathan points out that even though the workflow is the similar the amount of time for each is different. In animation there is a lot of money on the line, if the project fails so 30-40% of the time is spent in planning and research to make sure everything is just so before costly work is started. However, in the web development work (or I’d even say designer world) only 10% of time is spent on planning and research. Ultimately the little time given to these areas can cause problems down the road, like going over budget or not producing exactly what the client wanted. If more time is put into planning and research then such problems could be avoided and remember to keep your project simple.
Jonathan also provided some helpful tips for getting started with plugin development:
- It’s really no harder than developing themes
- Use the WP Codex
- Take breaks from your projects, so you can look at it with fresh eyes
- Follow the WP Plugin Best Practices
- Great artist steel (don’t reinvent the wheel, see what’s been done and then improve upon it)
- Stay organized
- Comment Comment Comment in your CODE
- Handel errors gracefully
- Consider how it will work with different themes
The next session I attended was ” Responsive Design” presented by Justin Kopepasah (@kopepasah) and was probably the most helpful for me because it offered a lot of simple tips and practices in theme development that solved a lot of problems and makes you want to go “well duh, why didn’t I think of that”. Justin talk was about developing WP themes that respond instead of creating a separate mobile site. Creating a separate mobile site not only doubles a web developer/designers workload, but you are now controlling what type of viewer sees what content on your site, and more than likely a mobile user, will see less. This argument about not showing users content just because they are viewing from a mobile device is a hot and heavy one on the net, and I would agree as a web user, I hate it when I can’t see all the site options from my iPhone. Thus, Justin’s answer was to create a responsive design, that allowed for all users to see all content all time.
The key to developing a well designed responsive site is to use percentages, but at this point I was getting nervous because percentages scare me and how do I know what percent do I need, and what if I want to use a basic grid? Well, here comes the “well duh” moment, Justin explained that you start off by setting up a grid layout, 960 for example. Consider your sizes for your columns and such and then use the this magic formula:
This formula makes perfect sense and why didn’t I think of it? Why did I never hear about it online when I searched responsive design? The way it works is say for example you are following a 960 grid and your content area is 540, you take 540/960 and the results is 0.5625, thus the percentage is 56.25%. The question did come up why not round, well it turns out each browser rounds slightly different, so using the entire percentage value (up to 12 decimal places) yields the best results. The same formula is used for type as well, consider your base (content) font size, then divide by your target size the end decimal value should be used in your CSS using EM units.
Justin’s other tips included:
- Set the main container to use max-width of grid this allows to never go over the size of the original grid layout
- Develop your media (images, video and etc.) at the maximum size, in the example case no larger than 960 pixels, then set the CSS to use max-width = 100%, this allows the browser to scale the image
- Note that modern browser do a good job at scaling images
- Delete any width and height settings in the image tag in the html
- Discourage the use the !important rule in CSS, if your using this something else is wrong.
- Use the media queries to override the main style, mainly for viewing on phones, otherwise the basic formula will work for all other devices.
The last session I attended was “Custom Theme Creation” presented by Chip Bennett (@chip_bennett), who happens to be on the WP theme review committee. In his presentation, Chip provided some helpful tips to consider when developing themes, based off what the theme review committee look for. The main key stressed during this session was to keep it simple, and to know what elements go into a theme and what should be a custom plugin. Chip went into a lot of dev talk here about what scripts should go where when developing themes, the main things to keep in mind are:
- Don’t clutter up the header.php
- Put all call backs in the functions.php
- Create a filter in the functions.php for custom classes
- Comment forms before action hooks
- Don’t create theme templates, if they are used in your theme
- Things to put in plugin and not theme:
- Fave icons (this way it doesn’t change with themes)
- Google Analytics
- SEO meta tags
- Core bundle scripts
And that was pretty much the end of the conference, after the last session the whole event just sort of dissolved. Attendees were asked to turn in their lanyard in return for their commemorative t-shirt. Overall, I learned a lot and met a lot of interesting people, however, I would have to say that the event could have been managed a little more professionally. The details of where the event would be and the schedule weren’t provided until late April. Also, the communication with the speakers about how it was all going to play out was limited. Then at the actual event, there was little guidance on what was where, it seemed everyone just kind of winged it. The opening keynotes, was more less some quick tips and ate into the first speaking sessions time, wasn’t on the schedule, and some didn’t even know it was going to take place. The same for the wrap up for the day, no real end details. Also, the speakers had no introductions and limited guidance on when to present. When it was time to present we simply when to our designated locations plugged in our computers, and waited at least 3-5 minutes after the session was to start to begin, without any introductions to the audience. There was always an event organizer around to help and ask questions, but it seemed kind of causal for a conference, but that may be my opinion, having organized events like this in the past, and having done them much differently. Overall though I think the event was worth going to and hope the organizers will continue to put on quality Word Camps in the future.