Archive for the ‘About Me’ Category.

Resurrecting a Laptop for Development

I have an old single core laptop that doesn’t get a whole lot of use anymore, partially because it is dated (purchased in 2006) and partially I’ve never really adapted to using a laptop as a general purpose computer. Increasingly, however, I find myself in need of a laptop either when I want to get some work done when I’m away from home, or when I need to take my work with me. This being the case I decided to re-purpose my old laptop as a dedicated development machine.

I could have just put a fresh copy of Windows XP on it and gone from there, but given the circumstances that might not have been the best route. All I needed to run was apache, MySQL, PHP, subversion, and something to write code in. Clearly something more lightweight than Windows could accomplish this. In addition to this I wanted something that would mirror my production server, which is running ubuntu. I ended up installing lubuntu, a lightweight distribution based on ubuntu (if you plan on trying lubuntu bear in mind that it is still in beta). Other than some very minor bugs, lubuntu seems to be perfect for my needs: I could configure it to be almost identical to my production server, it is easy on resources (even on my ancient laptop), and I immediately noticed a big improvement with regard to battery life.

New Host

I’m in the process of moving this site from my awful shared host to a shiny new VPS. Expect downtime, errors, unexpected behavior, and sudden explosions.

That Time of the Quarter

F.I.N.A.L.S.
F%*k I never actually learned s&^t.

Back in one week.

Happy Birthday To Me

BWI, blogging while intoxicated.

Feedback

After the release of SimpleMail I immediately experienced a problem that I imagine is shared by many developers: lack of feedback. Though I greatly appreciate all of the comments, suggestions, and bug reports (especially the bug reports) I know that for every one person that experienced a problem and reported it, five people experienced a problem, uninstalled the plugin and never thought about it again.

I found myself constantly worried about the bug reports I was not receiving, and in fact there were bugs that had existed since the original version that went unreported until recently. This was a learning experience of course and I have since taken steps to ensure that any application I release in the future is more robust. In addition to this I think that having experienced all of this I am must more likely to report issues I am having with any piece of software. I strongly encourage anyone reading this to do the same.

As I mentioned this was a learning experience, so I’ll offer some tips to developers so they don’t make the same mistakes I did:

  • Test your applications in multiple environments
  • Maintain portability in your code
    • Read the documentation for whatever feature, function or library you are using to ensure that it will work on whatever platform you expect it to
    • Don’t use language features that are not necessarily enabled or available to all users (ie PHP short tags)
  • Make providing feedback easy
    • Add a link, button, or form to your application that either directs the user somewhere where they can provide feedback or allows them to send feedback from the application itself

EverythingDev

As I mentioned in a few previous posts, I am interested in finding tech writers and starting a group blog. The site is now up, though it is somewhat lacking in content (partially because I am still searching for writers).

You can find information on how to apply to be a writer on the site: EverythingDev.com

Looking for Writers

I’m interested in starting a programming and development blog. Rather than going it alone as I am with this blog, I’d like to have a few writers working with me to generate new content. I will be providing the domain and hosting (I’m in the process of setting up the new site now). Requirements are as follows:

  • Strong writing and communication skills (in English)
  • Interest in web development, programming, or computer science
  • Able to post new content semi-regularly (I’m stressing new here, I’m not interested in copy and paste jobs)
  • Able to provide a sample of your writing

Notice that I don’t require you to be an expert in any particular field. If you are in the process of learning a new skill and want to write about your experiences that is fine. Some experience, however, is necessary. Contact me if you are interested.

By the way…
The reason I am setting up a separate blog is so that I can focus more on personal projects and activities on this blog.

I Just Took a PHP Test…

So I was going through the process of signing up on a freelancers website, and the site offered various tests meant to prove proficiency in a given subject. I decided I’d give it a try so I took the PHP5 test. 30 minutes later I found out that I passed and did better than 66% of people that have taken the test. The only problem is that of the 40 questions, I can only think of one that was relevant to PHP programming. The remaining questions were completely obscure and pointless.

You might think that I’m just upset about not knowing the answers, but I actually did know the answers to most of them. That, however, doesn’t make them any less pointless. Let me give you an example. One of the questions asked what the output of the following code:

$arr = 'a';
$arr[0] = 'b';
echo $arr;
echo $arr[0];

The options were ‘ab’, ‘bb’, ‘b’, and an error. This is actually one of the better questions, but the reason why it is ridiculous is because you would never encounter code like this. What the question is attempting to determine, is your understanding of strings in PHP (strings are character arrays). The answer happens to be ‘bb’, but if you couldn’t figure that out don’t worry.

Here’s another example:

$x = 99;
$y = 9;
$z = 8;
echo $x++/$y++ + --$z;

If you can’t figure this out, that problem is not with you, but with the jackass that wrote this code. I honestly don’t know what this question is trying to show, other than your ability to stare at terrible code for 5 minutes trying to figure out what it does. I recall from my freshman year of college, taking intro to programming. Within the first week of this course, which assumed you had no knowledge of programming, everyone knew that this was bad code. In fact I recall a professor explicitly writing code similar to this on the board and telling us if we write our code like this, he won’t grade it. By the way I think the answer is 17.

Want another one? Okay, which of the following is a function that can help you determine if a function exists:

is_function ()
function_exists ()
fexists ()
None of the above

Even if I had never seen a line of PHP code in my life I could answer this by tabbing over to google. Every question on the test (with the exception of the one that I mentioned) fell into the category of completely pointless and obscure, or “Do you know how to look up what a function does using google”.

the one question that I mentioned that was actually a good question, was about outputting each value of an arbitrary list, that is a list that contain sub-lists as well as individual elements. The correct way to do this is with a recursive function and is_array().

So what’s the point of this rant you say? My point is that if you are a PHP programmer don’t waste time with these tests and definitely don’t spend money to take one. If you are looking for a PHP programmer don’t place any merit on the results of one of these tests. The only way to tell if someone is a good programmer is to see and run their code. Furthermore, the only way to become a good programmer is to write lots of code of your own, look at other people’s code, and get advice from experienced coders.

Organic

I take no issue with cage free eggs or vegetables grown without exposure to pesticides, but I do take issue with the word organic when used to describe food.

“I can’t eat that cheeseburger because it is not organic.”

“Really!? Its not relating to or derived from or having properties characteristic of living organisms? To think that I went my whole life thinking beef was from cows.”

Will Code For Food

A few months ago I quit my day job in favor of dedicating more of my time to school. Seeing as how after three months my cash reserves are all but depleted I’ve decided to offer my services to anyone in need (PHP, Java, SQL etc).

Check out the For Hire page for more info.