WordPress Hacking

A couple weeks ago I took an afternoon to read up on how to create a WordPress theme, and was surprised to learn how much there was to it. Re-doing this site’s theme has been on my TODO list for about 3 years though, and I felt it was important to give the site a fresh coat of paint.

From a user’s perspective, I’ve always loved WordPress. It’s intuitive, has a great interface, and has all of the blogging features I could want. However, under the hood, I’d heard it was a mess. After poking around a bit, I didn’t really find anything that was discouraging, but I did find myself spending way too much time researching how to make minor adjustments. So rather than toil endlessly, I decided to take a different approach and took the popular Twenty Ten theme and made a bunch of modifications to it (most notiably mixing in some elements from the Responsive theme). This was actually pretty painless, and I’ll probably continue to make more modifications. If you’re thinking about creating a theme, it’s worth reading up on how to do it, but using an existing theme as a launching pad will make your life a lot easier. Anyway, I hope the new design is easier on the eyes, please let me know if you have any issues!

Thoughts on PHP

WordPress is powered by PHP, and as of late, I’ve noticed a hand full of articles deriding the language, and another hand full vigorously defending it. I don’t like to consider myself a language specific programmer, but I do a fair amount of PHP development at work, and also find myself reaching for it when I do non-work related projects.

As of late I’ve been wondering if I should dive deeper into PHP, or instead try to look into getting good at Python or Ruby. The inelegance and quirks of PHP are a big turn off, but the fact that it’s used for so much (WordPress, Wikimedia, and lots of other popular software), and is so convenient to write and deploy, makes quitting it hard to do. I’ve sort of been in this weird stalemate about where I want to go. So while it’s not my favorite language, I don’t dislike it enough to throw the baby out with the bath water – for now at least.

6 thoughts on “WordPress Hacking”

  1. Thank you for such kind words about Responsive and it makes me very happy to learn that Responsive was easy to work with.

    Emil

    1. Hi Emil,

      No problem, Responsive is a pretty awesome theme, and since I used pieces from it, I wanted to make sure and give it a shout out.

      – Pat

  2. I like the new, clean design. Very nice!

    I’ve had similar feelings about PHP.. I continue to do all my personal stuff in it because of the ease of use and wide breadth of capabilities, but it truly is the Pig-Pen of web development languages. It is funny how irresistable the dark side can be, when it offers so many capabilities at your fingertips. Do you find it as hard to resist when you just want to get something done?

    Have you done any Ruby or Python yet? All I’ve done is some Ruby on Rails, but that was back in college 2 or 3 years ago… I’ve heard good things about both Ruby and Python, but unfortunately all I have to offer on these subjects is this strip which you may’ve already seen: http://xkcd.com/353/

    1. I’ve done a little with Python. I have version 2.6 installed on my computer, and for a time had version 3 installed and was reading Dive Into Python (this was around 2-3 years ago). However, I was a little confused by the v2/v3 split, and I was interested in writing web apps. And for web stuff, I wasn’t sure where to start. Compared to PHP, it just wasn’t easy to install and use right away. So I dropped it when I got busy with other projects.

      About a month ago I did some intro tutorials on Ruby, and it seems like a neat language, however, I just haven’t gotten back to it. PHP has stuck because it’s so easy pick up and do stuff with. The docs are great and it always seems to have everything I need.

      The past 9 months I was doing a lot of work with Java Spring at work (I basically adapt to whatever they throw at me), and while there were some cool things I liked about Spring, it made me realize how much I like the dynamic nature of PHP. In PHP I can iterate changes quicker, look up information easier, and there’s a larger community available for assistance (the Java app took minutes to compile and startup, ugh).

      Additionally, I know there’s a lot of .NET work in my office, and I’ve heard .NET developers make a lot of money. But I’m not sure I’d want to chase a technology for that reason. However, I learned to program with VB 3.0, so it might sort of be like coming full circle to jump into a .NET stack, but I don’t know.

      Anyway, for personal projects – for simple scripts or experiments, I find myself reaching for PHP or JavaScript since they’re convenient and familiar. For web apps, I’ve found myself focusing on keeping things on the client side and trying to use the backend as an API (thus hopefully making what language its in not that important).

      Sorry if I’ve babbled for a bit, this is something I think about quiet a bit. Also, that xkcd is one of my favorites :).

  3. Hi Pat (or JK),

    I like you started with AOL progs and the like – I just happened to come across your blog and it reminded me of those old days!

    I highly recommend Ruby, Ruby on Rails and associated tools. I started with VB (didn’t everyone in the AOL scene?) and I’ve worked through VB, PHP, Tcl, ASP, C#, C/C++ and many others. I picked up Ruby in a job where I was doing C# and haven’t looked back.

    I know you can get a lot done with PHP but it does truly bring out the worst in a developer. Ruby makes it easy to do things the right way.

    A lot of people say Ruby and Python are the way to go – I’ve looked in to Python, learnt a bit and played with it for a while and it is a step up from PHP but I still think Ruby is far better in terms of community, extensibility and pretty syntax.

    1. Ruby is actually where I was leaning the most, I even installed it and picked up a book on it, I just haven’t had the time to get back to it. With all the new languages and frameworks coming out, I sometimes feel like I’m spreading myself too thin, and it’s hard to know where to focus.

      Since writing this post my feelings have changed a little on PHP. I ended up doing a major project in it at work the past few months and it was able to make something that came out pretty nice. Though then again, the worst code bases I’ve worked with were done in PHP, and it does lend itself to bad practices.

      I’m taking off three weeks at the end of the year though, so I may take another stab at Ruby.

Comments are closed.