WordCamp New York City 2009

November 14–15, 2009
...was awesome!

Blog Page 3

Getting hardcore with Jeremy Clarke.

Photo of Jeremy Clarke

Jeremy Clarke

Hey WordCampers, hope you’re having fun gearing up for what will undoubtedly be a pretty insane Saturday of website goodness. I’ll be doing two separate talks in the ‘advanced dev’ track so I’ll post both descriptions below. Remember they are not at the same time, you can come to one but not the other if you want.

Code Faster and Smarter PHP with IDEs and Other Free Tools

netbeans ide in action

This talk is aimed at people who are already writing PHP to some degree for their WordPress work. If you’re just writing HTML and CSS an IDE might be the right tool for you, but most of its features won’t apply. If on the other hand you are doing any of the following, and haven’t tried (or haven’t REALLY tried) an IDE you are missing out on industry-standard awesomeness:

  • Writing PHP functions
  • Creating PHP objects
  • Using the WordPress API seriously, reading the source to see how things work.
  • Creating custom plugins/complex themes
  • Getting frustrated with how dumb most tools are compared to smart tools you use for other things like word processing or spreadsheets.

Simple efficient tools are fast and easy to use, but they don’t understand the code you’re writing. I’ll talk about and show you how Integrated Development Environments (IDEs) like NetBeans or Eclipse (both are Free Software and cross-platform), can take care of a lot of the tedious annoying work to let you focus on getting things done with your code.

The switch to using Netbeans has changed the way I work and I don’t think I could ever go back. If you haven’t tried working with an IDE, or even if you have and got scared, this talk will walk you through the why and the how of saving time and headaches by committing to one. I’ll also cover using PHPXref, a simple alternative to IDEs that offers a lot of the same utility without changing any of your code workflow. If you’re planning to attend consider installing NetBeans beforehand so you can follow along.

Tuning WordPress and the LAMP for Speed and Stability

lamp-screenshot


Upgrading your hosting plan, your server hardware or your sysadmin budget are all acceptable ways of improving the stability and performance of your site, but with a little effort there is a lot you can do to squeeze more performance out of your existing setup without paying more.

This talk is targeted at site administrators who have control of their LAMP (Linux Apache MySQL PHP) server or are planning on upgrading to dedicated hosting soon but don’t really understand what they can do to make it go faster.

We’ll cover Apache and MySQL tuning and how to make sure your server isn’t misconfigured, a common problem with expensive repercussions:

  • What are the components of a LAMP stack
  • Tools for investigating server performance problems
  • Editing Apache/MySQL config files
  • Common Apache/MySQL config settings that need tuning
  • Brief overview of front-end/WordPress-level caching that will save your life.

Thanks for reading guys, hope to see you there, I know I won’t even be able to see all the talks I’m excited about.

Growing Community with BuddyPress – an Introduction and Overview

Photo of Lisa Sabin-Wilson

Lisa Sabin-Wilson

This weekend we’ll all be at CUNY in NYC for a weekend of learning, sharing, networking, eating, drinking and soaking in all the amazing WP goodness that comes out of every WordCamp across the world.  I’m excited, aren’t you??  The tireless organizers of WCNYC have worked hard to put together a really fantastic line up of sessions….simply something for everyone.  I know how challenging it is to organize and event such as this – hats off to them for what is sure to be a pretty phenomenal weekend in NYC!

bpSpeaking of sharing and socializing – – my session at WordCamp NYC is aimed towards introducing bloggers to the BuddyPress – a  suite of plugins available for the WordPress MU platform that is rich with features that allow you to take your WordPress MU site to the next level by engaging a community on your own web site  through dynamic features such as:

  • Extended Profiles
  • Friends
  • Private Messaging
  • Activity Wires
  • Blog Tracking
  • Status Updates
  • …and more!

bp-commMy session introduces you to the features available, aimed toward helping you make the decision if BuddyPress is right for your site, and has features that you would like to add to enhance and grow a social community on your own domain.  Many people, wrongly, state that BuddyPress is “Facebook in a box…” – – I think even I have wrongly made that statement in the past.  It’s not Facebook, at all.  Running a Buddypress community on your own site makes it a good deal more targeted to your specific niche community, allowing you to build a full and interactive social network around the specific niche topic and interests that you have full control over on your own site.  Where Facebook covers everything from Farmville to Mafia Wars – – your (BuddyPress powered) community can hone in, and concentrate, on specific topics and interests that you determine and guide.

My session explores the types of communities that are using BuddyPress, and how they are taking advantage of the available features to build, grow and sustain their own social community on their sites.  I will gives you some suggestions on useful plugins that will help you extend the available features on your BuddyPress powered site for your community members to take advantage of as they socialize, network, engage and interact within your community.  Finally, I will provide an explanation on the BuddyPress theme framework and a few tips I’ve come across in my work with BuddyPress that will help you dig in and customize your BuddyPress templates to give your own community a unique look that is specific to you and your community.

I have been working with BuddyPress since its early, infant days in the summer of 2008 when I discovered how truly amazing and powerful it is for building communities.  The development of BuddyPress has grown in leaps and bounds over the last year and continues to keep getting better every single day, thanks in no small part to Andy Peatling and the group of devs over at BuddyPress.Org.  I have been so eyebrows deep in BuddyPress over the past several months that I sometimes forget that there is a great big community out there that doesn’t yet know its power and potential! I hope to bring some of that BuddyPress joy to WordCamp NYC this weekend and share with you the wonders that I’ve discovered.

I’m really looking forward to meeting everyone!  I love the opportunity to meet WordPress (and BuddyPress!) users whenever I get the chance – – ping me on Twitter @LisaSabinWilson so I can add you and we can stay in touch in NYC and beyond!

What can you do with WordPress MU?

Photo of Andrea Rennick

Andrea Rennick

Hi! I’m andrea_r everywhere online and on Saturday morning I’ll be speaking in two sessions.

In the first session, we’ll be showcasing some sites built with WPMU that are not simply blog farms. When many people first discover MU, they think of developing a site where members sign up for blogs. It does a great job at that, but it can do a lot more. I’ll be highlighting some popular sites as well as some hidden gems that are using this software in different ways. This should help get your creative juices flowing as you discover the possibilities you may not have known about.

In the second session, I’ll cover two techniques from two installations showcased in the first session. One runs multiple domains, as well as a second WPMU “site”. I’ll explain the differences between Sites and domains in MU, and cover the best plugins to use to accomplish this. I’ll also quickly go over the best server setup.

In the second half, I’ll highlight how we used WPMU to build a member directory. From the viewer’s side, the site shows a user profile and their recent blog posts. From the member side, I’ll show you what they have access to. I’ll also go over the plugin we used, how we put them together, and general tips on how you could build a similar site. This should be a great session for a how-to, if you ever wondered how we did it.

For both sessions, I’m also allowing time for questions.

Writing Plugins for WordPress/MUse

Photo of Ron Rennick

Ron Rennick

It has been about 6 months since Matt announced that WordPress & WordPress MU would be merged into a single codebase. It took Andrea & I few days to get used to the idea. But, it didn’t take long before we were excited and looking forward to it. Time flies. We are 6 months closer.

Although the final implementation hasn’t been sketched out, once the merge has taken place, it’s reasonable to expect that any WordPress install running the latest version will be able to turn on the multiple blog functionality in a few minutes.

WordPress 2.8 has been downloaded over 8.2 million times. The potential is there for any of those WordPress admins to turn the multiple blog feature on to try it out which means that eventually nearly all plugins will be tried in a multiple blog scenario.

Many of the plugins available in the repository work in both WordPress and WordPress MU. But, not all plugins written for WordPress work the way they were intended when they are activated in WordPress MU. In this session, we will look at tips, tricks & traps of writing plugins compatible with both WordPress and WordPress MU.

Newbie Track Is FULL!

FYI, the Newbie track has sold out, and it’s no longer an option when signing up for tickets.

I wish I was jQuery

Photo of Jim Doran

Jim Doran

I wish I was jQuery. Then, all the designers would love me.

See, jQuery makes using JavaScript so easy that it feels like cheating. My presentation practically wrote itself (Code is Poetry, after all).

WordPress and jQuery have a lot in common – both have large communities of smart people extending, sharing and developing ideas around these tools. WordPress is flexible and allows people to publish their words, photos, ideas and magic without getting in the way of that process. jQuery makes it a snap for developers AND designers to enhance a Web site/user experience in a standards complaint way. JavaScript has become invaluable in a world where IE6 is still a reality.

jQuery LogoOver the years, I’ve tinkered with Prototype, script.aculo.us, Moo, Dojo and Spry. The documentation can be obtuse at times – which sucks when you are in a hurry to solve a problem.

And then I met jQuery – within 5 minutes, I was able to get it working. My students are able to get something working within about 15 minutes – imagine all we’ll get done during my 30 minute talk! It’ll go something like this:

  • A look at the current state of jQuery
  • A look at DOM manipulation and some popular aspects of jQuery
  • An overview of some handy plugins, including browser fixes, gallery tools, AJAX/JSON, etc.
  • Adding jQuery to WordPress themes

I am beside myself with excitement for WordCamp NYC09! Feel free to say “hi” before then – @jimdoran on Twitter.

Miscellaneous Updates

Hi everyone. A bunch of updates:

Name Badges. The name badges are being printed today, so time is up for asking for fixes to company names, twitter IDs, etc. If you provided the wrong information when you signed up, you’ll have to just write over it with a sharpie or something at the event.

Competition. If you submitted a theme or plugin by the end of November 11th, NYC time, with an allowance of an hour for Daylight savings timestamp since we didn’t manually update the settings for standard time, then your submission is being looked over. We’ll get in touch with the finalists on Saturday and let you know that you’ll be on stage on Sunday. If you don’t make the top 3, we’ll let you know that too.

Refunds. If you bought a ticket but can’t make it, we’re sorry, but the site clearly states that tickets are non-refundable and non-transferable. Please consider your ticket a donation to the cause, and catch the sessions on wordpress.tv in a couple of weeks.

Unconference. If you’ve ever been to a BarCamp, you will be familiar with the “wall of sessions” concept. We’ll have the same thing, and people will indicate interest in unconference sessions by marking on the proposal sheets. We’ll allot rooms to the proposals with the most marks. Due to concern that people would miss out on things, we will not do any unconference sessions on Saturday (8 tracks of content should be enough, yeah?), so ALL unconference planning will happen live at the event Saturday, for sessions to occur Sunday morning.

Emails. If you didn’t receive the attendee email yesterday, you probably made an error when you entered your email during signup. If you are listed on the Attendee page, just show up between 8-9, and we’ll steer you in the right direction. If you are not listed on the Attendees page, it could be that your PayPal payment didn’t go through, or that you entered an invalid email address (which would mess up the script generating the Attendees page) (you didn’t think we were updating that by hand, did you?). If you send an email to say you signed up but don’t see yourself on that page, SEND YOUR PAYPAL RECEIPT. Without proof of payment, we can’t look you up. Bear in mind, what seems like an emergency that must be dealt with RIGHT NOW to you, may be lower on the priority list for us, as we have to get many things done today and tomorrow to be ready for Saturday, so please be patient if you don’t get a reply right away because there are other things more crucial to making sure the event happens. If you don’t get any reply, just show up Saturday morning and we’ll figure it out.

WiFi. We have very recently discovered that WiFi at Baruch is not all-encompassing as we thought, but is actually very limited. There will be a WiFi username and password for WordCamp NYC people to use, but there are limited access points and each one only supports 20-45 people surfing the web at a time. In addition, we’ll be sharing these access points with regular classes and other events in the college, so unless you are giving a presentation, don’t count on internet access at the event (presentations will have wired connections). If you have EVDO, bring it. If you have an iPhone, use 3G instead of WiFi. Or be a rebel, and realize that the point of WordCamps is to spend time with people face to face, and leave your laptop at home altogether. You can google them later.

***A repeat warning from the email that went to all attendees yesterday***

The access we do have is very limited. Please do not attempt to stream audio or video or download/upload torrents over the WordCamp NYC WiFi. If you do, and it clogs the network, we will shut down the username and password, and NO ONE will have web access. Please respect your fellow attendees and limit your internet use to light web browsing. Note: You will not be able to send outgoing SMTP mail over the WiFi as all ports are blocked, per Baruch.

Drinks. Just in case you didn’t get the email yesterday or you’re a late sign up, the deal on an afterparty is that there is no afterparty. No official afterparty anyway. All the money is being spent on the actual event. That said, we’ve scoped the local bars (most of which are small), and found one that has enough room for us and will offer WordCamp people the “game night” drink specials from 6-8. So if you want to go out after Saturday’s sessions, it’s not a sponsored event, but we recommend going to Tonic East, on 3rd Ave at E 29th St.

Roll Your Own Contact Manager With RoloPress

Do you need a Contact Manager or a Customer Relationship Manager? And why would it matter, since all the available ones really stink. They’re too difficult to use, or too simple to be useful. I want all my contacts in one place, my business and my personal. And I want it to work the way I do… look the way I want it to look… work great on my iPhone… and be easily expandable. Am I really asking for too much?

You would think so when you look at the available offerings. I’ve tried Outlook, Salesforce, SugarCRM, vTiger, Highrise, Google Contacts, Yahoo Contacts, Plaxo, and many others. And none of them make my life easier.

So I built my own.

RoloPressRoloPress is a web application. An online Contact Manager that is infinitely expandable, because you can easily create themes or write plugins. It’s powerful and simple, and has a 1-click install. If this all sounds like WordPress, then it should. RoloPress is a web application that uses the WordPress platform.

What’s the “WordPress Platform” you ask? Well, we all know that WordPress is a state-of-the-art publishing platform. But it really is something more. It’s an expandable platform that can be used to build web applications, like RoloPress.

RoloPress, uses core WordPress to create a contact manager. RoloPress is not a separate application tied to WordPress. It is an application built ON WordPress.

Using the standard Parent/Child theme framework, RoloPress allows you to customize the look of your contact manager by just creating a new theme. As long as you have “RoloPress Core” (the parent theme) in your Themes directory, any RoloPress child theme will work. Here’s the one-click install part; activate a RoloPress child theme and you have a contact manager. No plugins to install, no configuration. Just activate a theme. Think you can do that?

Once RoloPress is activated a few things happen. First, RoloPress automatically creates two pages for you, names them, and assigns custom template files to them. Then it creates all the necessary custom fields, and two custom taxonomies for you; “RoloPress-Type” and “RoloPress Company”. Yup, all automatic… no configuration from you.

Creating a contact or a company is all done from the front-end of RoloPress. Even editing is done inline on the front. You really don’t every have to log into the admin section if you don’t want to. Your contacts and companies are regular posts (or in Rolospeak “items”), with custom fields and custom taxonomies… all standard WordPress, just displayed differently for a contact manager.

The custom taxonomies are the secret behind RoloPress, and one of the reasons it’s infinitely expandable; when you create a company, let’s say “ABC Corp”, two things happen. The “RoloPress-Type” taxonomy is assigned a value of “Company”, and then the “Company” taxonomy is assigned a value of “ABC Corp”. Now let’s add a contact that works for ABC Corp, say “Mike Jones”. “RoloPress-Type” is assigned a value of “Contact”, and the “Company” taxonomy is assigned of value of “ABC Corp.”.

So this is sort of what it looks like:
ABC CORP
RoloPress-type = company
RoloPress company = ABC Corp

Mike Jones
RoloPress-type = contact
RoloPress company = ABC Corp

The relationship between Mike Jones and ABC Corp is handled within the “RoloPress company” taxonomy.

Ok, here’s the fun part. The WordPress platform automatically handles the urls for us when using custom taxonomies. So if we view “www.mydomain.com/company/abc-corp” both ABC CORP and STEVE BRUNER show up. It’s an archive for ABC CORP.

If you view “www.mydomain.com/type/contact” all your contacts will show up, and “www.mydomain.com/type/company” will show all your companies. The WordPress platform handles all this for us.

Using custom taxonomies in this way allows us to create an infinite amount of relationships between items. Future versions of RoloPress can have Task Lists, Events, Cases, Deals and Invoices, all related to Contacts, Companies or both. Real relationships can be defined between your contacts, like spouse, parent, child and friend. Just by adding another custom taxonomy. Are you getting excited yet? I hope so!

Since we’re using the WordPress platform for our web application, building plugins for RoloPress is the same as WordPress, but you now have a few more functions and fields to play with. We even include the template tag “rolo_type_is” to help you identify the taxonomy type. If you want something special to happen when viewing a contact just use:  if(rolo_type_is('contact')){// do something

If you’re interested in rolling your own contact manager, then RoloPress is for you. Stop by our session on Saturday and learn how to use and expand RoloPress, to keep you’re contacts in order.

Using BuddyPress to Beef Up Hyperlocal Citizen Journalism

Photo of Ted Mann

Ted Mann

The term “hyperlocal” is popping up more and more on the interwebs lately. When you hear it, what do you think of?

– Town-based blogs?
– A reinvention of journalism as we know it?
– Big media’s latest desperate ploy to save their eroding business?
– CitySearch for the ‘burbs?

    All true. All fair ways to describe what has become one of the hottest trends in the media industry in the past year.

    Picture of New Jersey map with words "What's all the hype about hyperlocal?"Everybody from AOL (Patch.com) to MSNBC (Everyblock) to the New York Times (The Local) is attempting to get a piece of the hyperlocal pie. And whether or not you think one of these sites holds the promise of becoming Facebook for small towns — or the misfortune to become Microsoft Sidewalk 2.0 — it’s clear that they’re helping cover city council meetings in a way they haven’t been in years., and at the same time, bringing the power of the blog format to citizen journalism.

    There is one problem most of these sites face, though: How do you empower the community and get them to join your blog, while preventing the whole thing from devolving into a forum-like free-all-all? (Apologies to all bbPress and forum enthusiasts out there.)

    (more…)

    Advanced WordPress Development Environments

    Photo of Beau Lebens

    Beau Lebens

    Wow, pretty dry title huh? There’s no hiding from the fact that this will be a very technical session, but that’s what the people asked for, so that’s what they’ll get. I’ve been involved in web development for around 13 years now, with 10 of them being in PHP/MySQL development. The last 4 years have seen me spending inordinate amounts of time working specifically on WordPress/WPMU projects. I’ve picked up a few tricks along the way, and I’d like to share some of them with you in this session.

    The plan is to take you all through some of the tools, tips, tricks, techniques and approaches towards development that might make your life a little easier, more efficient and generally less frustrating. We’ll look at, amongst other things:

    • Setting up a local development environment the easiest way possible
    • Database management
    • Working with Subversion (specifically in relation to WordPress)
    • DNS tricks
    • Advanced WordPress installations
    • Working with WordPress code
    • Secure development environments
    • Developing for multiple versions of WordPress
    • Testing code and UI

    The assumption is that people in this session are already developing themes or plugins, and that they’re looking for a little something extra to up their game. I have a LOT to cover in 30 minutes, so I’m going to blaze through what I’ve got and then take some questions, but slides will definitely be available afterward, as well as the outline I used to put this together (some parts didn’t make the cut). I’m hoping there are some folks attending who have a few tips of their own that we can collect as well.

    If you’ve got anything in particular you’d like to see covered then feel free to post it in the comments here, and I’ll see you all in a few days now!

    Recent Posts

    Post Categories

    RSS #wcnyc

    Platinum Sponsors

    Silver Sponsor

    Bronze Sponsors

    Small Business Sponsors



    Mojofiti logo



    Fusebox logo


    Cacoo logo


    Consultant Sponsor

    WordCampNYC has no relationship to public radio station WNYC, and we apologize if our abbreviation-based logo has caused any confusion.

    Visit WordCamp Central


    Code is Poetry.