I jumped back into the world of contracting after working as a regular employee for organizations for a number of years, and I am beginning to recall why I had put it on my Murtaugh List. Some contracts are a bit like a grand adventure, and some are not.
Companies hire contractors for a number of reasons, and frankly, they are typically eager to get someone who has years of experience in the field because we tend to be a good bet, especially when the topic of software development is involved. Software development, whether we're talking about for mobile phones, desktops, tablets, or web, requires the developer to understand the problem well enough to tell a computer how to solve it, and when people have a greater depth of experience, they tend to understand problems faster, have a greater understanding of what tools and resources are generally available. In many cases, they will have developed many of the tools and resources others use.
One of the problems contractors face, however, is that some companies who hire contractors want not only what work the contractors can legitimately provide, but any work they've previously done, or work they do outside the contract. Such is the case with one of my recent contracts.
Many years ago I worked on a dating website - sort of like Christian Mingle except for LDS singles - and the website had a nifty little feature that would take a person's location and search for potential matches with a mile range. The equation I used to do the calculation to determine whether or not a potential match was within range was based on the Great Sphere...and was nowhere near as easy as it sounds. I, however, was hooked - and when I started writing JavaScript libraries a few years later, I wrote as many related functions as I could - lunar calendar functions, distance-related functions, time-related functions - anything that related to maps and planets. As a bonus, this little hobby dove-tailed nicely with my interests in globalization, the internationalization of websites, and travel. One of the products of years of this work was the creation of the Cathmhaol Earth library - cjl-earth - which I recently updated to leverage D3. Note: you can read about that update here.
The reason in have shared this portion of a more than 15 year journey - which has in reality included the development of a vast array of JavaScript libraries (50+ so far) - is a situation that arose with a company where I was a contractor. I was informed today that I need to take down the prototype page (on my portfolio website) that demonstrated how to use the Cathmhaol Earth library. It is their opinion that I was using their code on my site, when in fact it was the exact opposite - they are using my code, just like they're using bootstrap and jQuery.
I have no problem with the fact they are using a version of my code - I willingly added it - along with the required D3 libraries - to their site to complete a project they had asked me to code. I willingly added it because the Earth library, like all my libraries, is available freely and without restriction both because I'm interested in teaching others how to code (all my libraries are extensively commented, because the cathmhaol is also a teacher) and because coding is fun.
I'm generally disinclined to follow the demands of the incompetent or bullies, but right now I don't have time to fight Limelight Networks - and because dealing with bullshit companies is on my Murtaugh List. (Yep, I called them out for the bullies they are - though there is the possibility they're simply incompetent.) I may bring the page back up in the future, but it's coming down this weekend - my respect for Limelight Networks is already gone.
One final thought - if you're contracting, make sure you know the company you're contracting with and the company that represents you, or you could end up on a little trip under the bus...and even those little trips are a PITA.
No comments:
Post a Comment