3 New (& Nerdy) Things to Know in ‘09

Dec 17 2008

It’s that time again when we all make promises to ourselves for the upcoming year – “I’m going to quit smoking” or “I will lose 20 pounds” or “I will write more Fresh posts”.    This year I’m mainly focusing on expanding my geek knowledge – nothing gets me more excited than adding some badass new skillz to my nerd repertoire.

So, here we go!

[1] Get Down with OOP (Hey you know me)

My first encounter with an Object-Oriented Programming language was in my Java class in college.  Since then I’ve been mostly wrapped up in HTML, CSS and scripting languages.  For a while I thought I’d never need to touch OOP again – after all, who uses Java anymore!?  But man was I wrong… OOP isn’t just for writing ‘boring’ Java applications.  More and more I’m encountering OOP in scripting languages – PHP, Javascript and (especially) Actionscript.

So what’s so great about OOP?  For the non-programming-geeks out there, it’s easiest to understand the basic idea of OOP with an example referencing the real world.  Let’s say we have a thing, and that thing happens to be a dog.  That dog has certain properties and can do certain things. The actions and characteristics of the dog are defined in a dog class, like this:

Our dog is just one instance of this dog class.  Maybe our dog is a black lab.  Some other dog might be a grey chihuahua.  But all dogs have certain things in common – for example they all eat and the all bark.  When we create a new dog, it might look like this:

Ralph = new Dog(black, lab)

When he barks, it looks like this:

Ralph.bark()

As we’re writing this code, we don’t really see the specifics of how he barks (he inhales air into his lungs, and forces the air back out over his vocal chords), we just know that he has the ability to bark.  In other words, the dog object has access to the method of “bark”, as defined in the dog class.

I’m not going to go too much more in depth here – and I’m no expert so that would be difficult for me anyway – but hopefully you get the idea.  What’s so great about this method as opposed to other types of programming languages?  Man, that’s hard to explain in just a couple sentences – but let’s just say it can simplify complicated code into reality-based, easy-to-digest little bits.  Objects like our dog, with actions and characteristics, are generally easier to understand than line after line of abstract tasks.

With Actionscript 3.0 in Flash specifically, Object Oriented code can help in creating animations and effects tremendously.  So although I thought I was done forever with OOP – I’m diving head first back into the world of classes and encapsulation in 2009.

[2] Process Information Visually with Processing

If you use the new iTunes 8 visualizer you are already familiar with what Processing language can do.  Here’s what Processing is, according to processing.org:

Processing is a simple programming environment that was created to make it easier to develop visually oriented applications with an emphasis on animation and providing users with instant feedback through interaction. The developers wanted a means to “sketch” ideas in code. As its capabilities have expanded over the past six years, Processing has come to be used for more advanced production-level work in addition to its sketching role. Originally built as a domain-specific extension to Java targeted towards artists and designers, Processing has evolved into a full-blown design and prototyping tool used for large-scale installation work, motion graphics, and complex data visualization.

In short Processing is: cool.  Did I say Java applications were boring?  Oops, nevermind.

Let’s just get to some examples.  Remember, everything is generated with code and data.


Solar, with lyrics. from flight404 on Vimeo.


bubbletrouble_2 from lennyjpg on Vimeo.

Aside from making super sweet abstract visual art pieces, there are many other potential practical uses for Processing.  What are the practical uses?  Well, uh, I’m not really sure I know that yet.  But look at all the things it can do:

I’m really excited about Processing.  And not just because you can make awesome pictures like this, by lennyjpg on Flickr:

…but that’s part of the reason.

[3] Learn the Ins and Outs of WordPress – Plugins!

After much anticipation, WordPress 2.7 was just released this month.  There were huge changes to the dashboard and how you get around in the WP admin.  I haven’t had a chance to get my hands dirty in Coltrane yet but I’m looking forward to upgrading my personal blog and checking out all the changes.  But Coltrane isn’t the only thing I want to learn in ‘09.  I’m also ready to REALLY get into the nitty gritty of how WordPress works  – and write some freaking plugins already!

I only started using WordPress about a year ago, but I’ve been a WP addict from the very first blog theme I created.  I’ve written before on Fresh about my favorite WordPress plugins (Plugins every WordPress site should have, and WordPress Plugins XTREME Part 1) – and all those plugins were created by dedicated programmers and web developers who are just as (or probably more) crazy about WordPress than I am.  And they don’t even get paid to do that.  I’ve hacked my share of plugins to make them do exactly what I want, but I’ve never built one from scratch.  I think ‘09 is the time to do just that.  WordPress makes it so easy there really isn’t an excuse not to do it!

Part of learning how to create plugins is getting a better understanding of how WordPress as a whole works.  And there are so many functions and hooks already available in WordPress, it’s best to know about them all before I try and reinvent the wheel with some custom code in a plugin.  It’s a big project but I’m ready.  WordPress Codex, watch out.  Here I come.

And that’s it!  Those are my three new things to know in ‘09.  What do you want to learn next year?  Leave some comments up in here!  And stay tuned for the last two days of the 12 Days of Fresh.  It’s going to be epic.

Posted by Jill at 12:30 PM

Published in Development, eROI on Wednesday, December 17th, 2008

Tags: ,

3 Responses

  1. 1
    Meggan says:

    I want to learn plugins too! WP 2.7 is awesome so far – I haven’t had any issues and I looooove being able to customize what shows up in each page layout (write post, comments list, etc).

    The visualization stuff looks neat too. Wouldn’t have the foggiest idea how to get started there but I’m more interested in plugins anyway. :)


  2. 2
    verity says:

    Wow! Processing sounds VERY cool. I’m imagining the possibilities… exciting!


  3. 3
    josh says:

    Good start Jill. When you are ready to further understand any of these things, please hit us up in SysDev. We love the idea that people want to learn about OOP and new technologies.