The Winnipeg Scrum Experience Presentation Schedule

I just finished creating a presentation schedule for The Winnipeg Scrum Experience. The idea with a “presentation schedule” is that there are planned topics for the next several presentations, and hopefully there will be volunteers to speak on those topics. If not, I will present the topic.

Upcoming presentations

After a great line-up last time around, I’m again scheduled to attend a number of very promising presentations. I hope you can attend some too!

Shortcomings of the 2013 Winnipeg WordCamp

The 2013 Winnipeg WordCamp was a great success ( 1, 2, 3 ). We can all, with good reason, be proud of the show we put on, and grateful to the local people who spent their time working on making it the great experience that it was ( 1, 2, 3, 4, 5, 6, 7, 8, 9 – sorry if I missed you! ).

You can even see the WordCamp Winnipeg presentations for yourself. An outsider/visitor ( read: ~ 85% of people who attended ) could only conclude that it would be hard to find ways to make it better. But since I like hard challenges…

I would like to tell you about the things I found, as an insider, to be possible to improve.

Sponsor Promotion

The sponsor information should have gone up on the site sooner, and in combination with a basically non-existent marketing strategy, the sponsors got pretty much no electronic coverage before the event. In print and online, the sponsor logos were not sized as promised. There was minimal attention given to most sponsors at the event, and basically we did not deliver on most of the promises we made to our sponsors.

The offer for sponsors, at the level I got my company to sponsor was:

  • Medium logo and link on the WordCamp Winnipeg website
    • OK, there’s a logo. Is it medium? Anyway, for good effort, see my company’s sponsor page, vs. a sponsor page I did not put love into. Note that “100 percent hosting company” paid for a small logo on website, and their logo is bigger than ours on the site. It also seems that it would have been better to have the sponsor logos on every page, like it is for Code Poet – see sidebar.
  • Medium logo on all printed material
    • Here’s the printed material I have a photo of. Not so different than most others who paid for a smaller size. If you have a pic of other printed material, please let me know whether logo sizes are different there.
  • Text link on all email communication sent to attendees prior to the event
    • “All” ended up meaning “none”. Did I forget about any communication here?
  • Blog post on the event blog written by the YWG WC Team
    • Is this it? Or this, perhaps? Or the individual pages? Again, contrast the thing we basically did for everyone except for FBC with what we did for FBC, and you will see the opportunity for more.
  • Acknowledged three times throughout the event
    • Although this promise was fulfilled, we probably could have done more. For example, the Winnipeg Agile user group does: When they mention sponsors at each presentation, they ask whether there are any people in the audience who are employees of the sponsor company, and offer them to come up to the stand and tell the attendees about the company. With the amount of experience with what other WordCamps do in the organizer group, I bet we can come up with other “best practices”.
  • Placement of 1 item on swag table (self serve)
    • Didn’t see any of this for any sponsors. I guess perhaps the sponsors themselves botched this one? In hindsight, perhaps even a business card, or a small brochure about the company and an HR contact point would likely have been useful to my company to promote them further.
  • Four tickets to WordCamp
    • This was also met in my case.

Marketing Strategy

There were 10-ish “bloggers” on our organizer team, and the WordCamp Winnipeg website only put out 5 blog posts. We could capitalize on this opportunity next year.

It seems that we could provide more opportunities, to attendees and potential attendees, to get excited about the WordCamp in the months leading up to the event. We could pop up in people’s inboxes several times leading up to the event, excitedly telling them about some aspect of the event we just arranged. Other people who have experience with arranging a successful communication and marketing campaign for an event could be asked to provide us with an outline.

Even I would have wanted to receive updates, via email, when a new blog post is posted on the website, but that feature just was not available, though it is a WP plugin I always use for my sites, provided by .com, inside JetPack.

Engaging the Community

Not sure this one deserves to live outside of marketing, but I guess it does. Basically, you engage people by letting them have their say. You enable them to put their signature and be a part of the WordCamp. “You made this possible” is empty words when you did not do anything other than let them pay $20, which was a negligible amount compared to total funds raised. What would I have done differently?

  • Publicize decisions being made and options considered, and ask for feedback
  • Every Winnipeg WordPress user is offered 5 minutes to introduce themselves, and briefly say what makes them tick, with relation to WordPress. Not enough time? Then offer the option only to those who have attended at least one/two/three monthly meetups.

IMHO unnecessary spending on VIP after-parties and pre-parties, etc.

Would you rather send money to the WordPress foundation, or give it to me to stuff my face with food at an expensive restaurant, and to get drunk on all kinds-a fancy liquor at the after-after-party?

What do you think? Any good points? Have anything to add?

wcwpg-nametag

The Serenity Prayer

I’ve lately had the opportunity to consider the possibility that I am being “negative” about various things, on several occasions, because I complain about many things. I’d rather think I am being brave 🙂

Today, I saw the serenity prayer, and was reminded it talks about that space. The serenity prayer says:

God grant me the serenity to accept the things I can not change, the courage to change the things I can, and the wisdom to know the difference.

When it comes to reasons for “being negative”, frustration seems to be a common cause. This frustration would be brought about by not achieving goals we want over an extended period of time. The two causes for this frustration, that the serenity prayer talks about are:

  • not giving up on trying to achieve something that is impossible
  • being scared, and ultimately giving up on, working toward something we want and could achieve

It seems that ideally, you want to complain about, and work toward changing, the things you can change, and be comfortable with giving up on things that we are not able to achieve.

Something hard to achieve, which usually includes most things worth achieving, will likely not be possible the first time we try. We need to be comfortable with failing, but at the same time, since many of those things are ultimately possible, we should definitely not give up on giving it a shot from time to time when we feel ready.

Good luck!

Jaquilyn Shumate Photography Website

Check out this photo story about birth, part of the story-rich Jaquilyn Shumate blog.

This is featured on the website I implemented for Jaquilyn Shumate, a Tacoma-based photographer, my favorite documented portfolio item.

The designer made such a great design, and the great photography is what really makes the website what it is, as it should be for a photographer’s website. I always enjoy viewing the site, and am happy I was part of creating it. I hope you enjoy it as well!

 

Stepwise Refinement, and such

As you may have already heard from me, I feel like I’ve made some significant progress in the quality of the code I am able to produce over the past few months. I haven’t written about it yet, as I’ve been exploring the specific implications and applications of what I’ve stumbled upon.

I’ve had a chance to tell a few new people about it yesterday, and again it’s hard to communicate the kind of benefit that I see potential for, and frankly, it’s hard for a person who has not seen it to believe it. So I’m hoping to be able to communicate to Josh Leuze, author of Meteor Slides, and to Reid and Peter – who, as I understand, both read the source code of The Events Calendar – some of the techniques through the source code of their systems.

Here’s the first example of code that implements some of these principles. I think the refactoring / diff format in which the examples are presented fit well with what I’m trying to communicate, which is basically a collection of changes to how code I commonly read is written. Here it goes:

https://github.com/dbernar1/Meteor-Slides/commit/93cd6b91fc72e8fb8d3413ae366a79af4bcee3c5 is a very good example of where a function is commented to express the functionality. I find it better to just simply name the function using those words – comments very often get out of date.

https://github.com/dbernar1/Meteor-Slides/commit/d80dab8c855a1d918c95d7aec8c64583e44df705 shows using a static variable for a value that is obtained from the database, and doesn’t change during the execution of a program. I like this in part because of use of the uncommon static keyword, in part because it enables removing duplication ( for cases such as when I want to change the option name ), and I find it is a nice way of encapsulating something that needs to get initialized once, like getting a database connection.

https://github.com/dbernar1/Meteor-Slides/commit/35fcb3ac1254bd290a44f4a75b3e8702eac181a9 shows a technique I use to name parameters to functions that take several parameters. Especially nice for naming those “true”/”false” parameters to functions that even the WordPress coding standard suggests trying to avoid. It says: “Since PHP doesn’t support named arguments…”, but I think this example proves otherwise. Of course, python-style named parameters, where order does not matter any more, do not exist in PHP, but it is entirely possible to name parameters to functions as I show there.

https://github.com/dbernar1/Meteor-Slides/commit/7bab45bb35760a7fa5827542a57c556ccbe66ddb is the meatiest example of the bunch. I could have done several smaller refactorings. I suggest reading it by reading the change to meteor-slides-plugin.php first. An important thing to note is that it would have been much easier to express the functionality with well-named function stubs, like the new version does, when originally writing the software. This is because it is easier to express the algorithm of using the overrides if they exist without at the same time having to think about what the implementation of “is this file overridden in the child theme” is. It is also easier to read, because it is in English, not in “WordPress”. It is also important to note how at least one level of implicit meaning has been replaced by explicit meaning, with naming functionality such as “if ( the_child_theme_has_overridden_css_for_meteor_slides() ) {“. I’ll leave you with that for now.

What do you think? I’d love to get feedback from other software developers.