Archive for the ‘Personal’ Category.

Recruiter Dos and Don’ts

It’s certainly no secret that people in my profession are often targeted by recruiters. I may not get as many such communications as some of my peers, but I do receive them sporadically. There’s a fairly common format to them:

“Hi, my name is [name] and I work for [company]. I have [one or more positions] available in [one or more cities I don't live in]. I would like to schedule some time with you to begin the interview process.”

Having been through such interview processes on numerous occasions, I can speak to several things that I’d like to see more recruiters and companies do going in.

  1. Get to know us especially what motivates us like things we value more than money and the culture inherent to our vocation.
  2. Be aware that corporate perks may be important to some of us, but that’s certainly not a universal truth.
  3. Be aware that we tend to change jobs often. Understand why so you can curb this trend. Don’t offer lame engineering jobs.
  4. If you get as far as an actual interview, know what to look for or how to look for it.

These are some common situations I see when recruiters make first contact:

  1. I have positions you’re not qualified for based on your skill set. Take the time to read my résumé!
  2. I have a position, but won’t tell you anything other than the desired skill set. If you can’t at least tell me the industry or types of projects I’d be working on, I can’t tell if I’m interested or not and we’re at a stalemate.
  3. The positions I have open are in cities nowhere near you and working remotely isn’t a possibility. I have no economic ability or desire to relocate. Being open to a remote working arrangement for a candidate who can function well in one will set you apart.
  4. 50+ hour weeks or late nights are frequent and commonplace. Such hours are not conducive to work-life balance, which is important.
  5. The daily schedule is fairly strict. Some guaranteed hours are understandable, but I require trust that I’ll put in the time required to get the job done around family and other obligations.
  6. Travel lasting more than a week is frequently required. I appreciate the value of face time, but spending a significant portion of my life on planes and in airports isn’t something I’m signing up for.
  7. You would be reporting to a manager who has no programming experience. If someone doesn’t understand what I do, I think it significantly impedes their ability to manage me.
  8. No support is provided for professional development, such as attending industry conferences. If I’m not growing, I’m stagnating, and any other opportunity for growth with eventually supersede the position I’m in.

While I can’t speak for everyone in my field, I think these circumstances don’t apply to just me:

  1. I’m a husband and a father of small children. I have family in the area where I live (where family is a large element of the local culture), they have close relationships with my children, and they provide most of the only consistent familial support we have in raising my children.
  2. My family has a weekly routine. I often have to get my kids to school in the morning and get them off the bus or pick them up in the afternoon. This isn’t always conducive to being in at 8 AM on the dot, being at a keyboard every minute until 5 PM, working after 5 PM, or being away from home for long periods.
  3. The cost of living where I live is low. This is offset by the cost of raising three children, but it is better than moving to a major city where it costs two to three times as much to live what I would view as just as well.
  4. The current state of the real estate market makes relocation a losing proposition. It’s a buyer’s market. To sell and relocate would in all likelihood require a five-figure loss that’s unlikely to be mitigated by a relocation package.
  5. Companies where I’m not growing and learning as a professional don’t stay appealing very long. Coworkers and managers who contribute directly to this and companies that allow me opportunities to learn from and network with others in my profession do.

The point of this post isn’t to discourage recruiters from contacting me (though they should understand that I like where I’m working now and I’m not on the market). We all know time is valuable. Rather than spend it repeatedly reiterating all the things I’ve written in this post to each recruiter who comes along, I’d rather write it once and point them to it. If they still want to talk, that’s fine. Otherwise, that’s time we can both spend furthering our respective careers in other ways.

Recruiters and developers alike are invited to leave their comments on this post.

Speaking at Confoo and php|tek

2011 seems to be a year of multiple firsts for me.

First, I’ve been invited to speak at Confoo. I’ve submitted there before, but this year is the first time I’ve been accepted. This will be my first trip outside of the United States, as Confoo is held in Canada, more specifically Montreal. I’ve never spoken at a conference on a topic that wasn’t PHP-related, but this time I’ll be venturing outside of my comfort zone to speak on developing REST web services with Jersey, a framework written in Java that I used as part of a work project at Synacor for the latter half of last year.

Second, I’ve also been invited back to speak at php|tek. I spoke there last year on the new SPL features available in PHP 5.3. I haven’t spoken at the same conference twice, but I’ll be happy to return to this one as I consider it one of the best PHP conferences in this hemisphere. I’ll also be giving two presentations, one on web scraping accessing web resources in PHP (thanks Cal) and the other on creating applications with Titanium and PHP.

If you plan on attending either of these conferences, please take the opportunity to say hello and introduce yourself. I look forward to seeing you!

Why I Write

Someone I know recently sent me a question that I found interesting.

“I’m… exploring why I continue to pursue the insanity that is writing, and I want to get some views from people who write in other disciplines. Got any insight to share on why you wrote your book?”

I’m unfortunately still seeing delays in the print edition of my book being published. My apologies to those of you who have been asking after it; trust me when I say that I’m doing everything I can at this point to make it happen.

Unpleasantries aside, I decided to take a blog post to answer this question. I’ve actually written on this subject in the past with respect to technical publishing in particular, if you’d like more background on that.

As far as my personal reasons go, they certainly didn’t relate to money. Technical publishing may not be as saturated a market as mainstream fiction, but it’s also not as lucrative for authors.

Its relatively limited audience also eliminates fame as a reason, at least outside of that audience. A book may complement an existing reputation, but it’s more rare to establish a substantial level of notoriety through being published. Respect within that community — colleagues, peers, and prospective employers — is a more feasible goal.

That leads me to my personal main reason for writing my book: credentials. My knowledge and skills were vetted by a publisher respected within the industry for the quality of the books they publish. While it may not be directly monetary, that respect has value and there are few ways for an individual to attain it. Publishing a book is one such method.

Lastly, I felt I had something to share with an audience with whom I had a common interest. The topic of my book may be a bit niche, but prospective readers are all the more likely to be fervorous about studying or otherwise pursuing it. Readers of science fiction and technical books have this trait in common. If I ever end up publishing a fiction piece, it will likely be in the former genre.

It’s one thing to publish a blog post or an article in a professional magazine, but a book signifies a higher level of commitment, dedication, and perseverance. If writing is insane, it’s in the same boat with getting married and going to college. I doubt there are enough padded rooms and straitjackets in the world for all its college students, married couples, and writers.

Leaving K-fx2

There are times in life when things don’t go to plan. You may start a new job and then, after some time in the position, come to find that it’s just not a good fit for you. Regretfully, that’s been a recent experience of mine: I’ve decided to leave my position at K-fx2. I wish my coworkers well; they have my thanks for the experiences I had in my time there. If you are a PHP developer; live within the Lafayette, Baton Rouge, or New Orleans areas; and are looking for work, consider joining them.

As for what’s next for me, I’ve accepted a position with Synacor as a Senior Engineer on their Content Management Platform team. I will be traveling to their offices in Buffalo, NY for orientation on April 26th. The team seems excited about me coming on board and I’m looking forward to meeting them in person. If you live near the area and would like to see me while I’m in town, just let me know.

Ada Lovelace Day and Amazing Grace

So, if you hadn’t already heard, today is Ada Lovelace Day. If you aren’t familiar with it, it’s is an internationally observed event during which its participants use blogs, podcasts, videos, and all other forms of internet media to celebrate the achievements of women in the fields of technology and science. Read more about the event and its namesake or take a look at this timeline of major female figures in computing from its beginnings with Ada Lovelace to present day.

Many people choose a friend or colleague who’s helped them to excel in the field. I myself have a number I could name, but with this being the first year I’m participating, I chose instead to veer from the beaten path and write this blog post about someone I’ve admired since I began serious study of computer science in high school. The very first computer science course I took began with a unit on the history of the field. Among the other Big Names included in that unit was that of Rear Admiral Dr. Grace Hopper, also sometimes referred to as “Amazing Grace.” And did she ever live up to that name.

The first reason I admire Grace is because she was no stranger to failure or perseverence. When she applied to Vassar College at the age of 16, she was rejected because her test scores in Latin did not meet admission requirements. She persisted and was admitted the following year, going on to earn a bachelor’s degree in mathematics and physics from Vassar College and a Master’s degree from Yale. She would eventually return to Vassar to share her knowledge as an associate professor of mathematics.

While my own academic achievements are an understated far cry from hers, I relate to this quality because it took a large amount of persistence for me to complete my own degree, partly due to my admittedly lacking abilities in mathematics as compared to the requirements of the curriculum under which I graduated. I struggled, had to retake several classes due to not meeting grade requirements, but persevered and earned the degree that hangs on my wall today.

The second reason I admire Grace is the magnitude of her aspirations. In a time period when not all colleges in the country accepted women, women were mainly relegated to “lace-collar jobs” in the workforce, and the right to suffrage for women had not yet been won, Grace chose to pursue her education in a field that to this day is still predominantly occupied by men. Not only did she participate in the field, she excelled in it, contributing to technological breakthroughs that literally became the stuff of legend and the foundation for the technology that we enjoy today. Hers is truly a story for the history books, one of defying stereotypes and overcoming adversities of society to achieve something spectacular.

The final reason that I admire and even envy Grace is her contributions to the innovations of her era. In 1944, during her service in the US Navy Reserve, she served on the programming staff for the Harvard Mark I, the first large-scale automatic digital computer in the country, and coauthored papers on it and its two successors. In 1949, she became senior mathematician for the team that developed the UNIVAC I, the first commercially available computer in the country. The work she did between 1950 and 1980 resulted in the first compiler, an accomplishment to which many professional software developers today owe their livelihood. In the 1970s, she pioneered standards for testing computer components and systems for which administration would later be assumed by the National Institute of Standards and Technology. She was right there in the thick of the industry’s beginnings, making contributions that would echo in the decades to come.

Sadly, Grace passed away six years before I came to know the significance of her accomplishments to my future career and the technological state of the entire world. She was laid to rest with full military honors in Arlington National Cemetery on January 1, 1992. I regret never having had the chance to shake her hand and tell her in person all that you’ve read here just now. So Grace, I salute and thank you for the immense impact that your life and service have had on the planet you left behind. No matter where technology may take our race in the generations to come, I sincerely hope that they carry your memory with them.

Where I’ve Been

Things have been rather busy in my life recently, even though this blog doesn’t really reflect that. I thought I’d take a short post to share with any readers who may have wondered where I’ve been the past month or so.

I changed jobs a few weeks ago and the new one has kept me fairly busy learning processes, writing proposals, and beginning to work on projects. I’m getting acclimated to actively using Zend Framework again, which I’m enjoying.

I also recently launched Phergie 2.0, which was very well-received. Moving the project over to GitHub, launching the new project web site, and helping with the first round of bug fixes has kept me busy.

The ball has started rolling on getting my book published again. The ISBN has been obtained, the last round of edits is happening now, and the digital edition should be available for sale before the TEK-X conference in May. I’m hoping to have a few dead tree copies to distribute at the conference.

Speaking of which, I’ll be speaking at TEK-X, so I’ve also been working on preparing my presentation on new SPL features in PHP 5.3. I’m planning on putting my presentation content into (fairly long and embellished) blog post form, so keep an eye out for that.

I’ve been under the weather with a cold over the past week. I’ll try to find more time to blog once I’ve recovered and things have settled down a bit.

A New Chapter

This will be my last post on this blog [ishouldbecoding.com]. I’ve decided to both move my blog domain to matthewturland.com and switch to using WordPress.

For now, I’m not migrating the existing content on this blog over. I’m still debating that, and I’ll likely end up doing it, but for now I’d like to focus on getting new content out there.

This blog has served me well for nearly two and a half years, but it’s time to make a change and move on to something new. Thanks to all my faithful readers; I hope my writings prove useful to you following this transition.

A Summary to End a Decade

Tonight we reach the end of the 2000s or, as some people like to call it, the “ones.” As is customary among most of my peers, I’ve reviewed last year’s summary to reflect on what I accomplished this year. So, here are the high points in no particular order.

  • Draw: The writing and technical editing for my book was done by May. The publisher was able to get it proofread, but it’s still in layout due to delays from CodeWorks and the holidays. I’m really hoping things will come together next month, but as it stands now, I’m not able to hold a copy of my book in my hands just yet. In terms of writing books, there may be new developments come next year, but I’m keeping those under wraps for now until I have more definitive news to pass along.
  • Win: A number of things changed with the Acadiana Open Source Group this year including our regular meeting format and where our web site is hosted. Additionally, we’ll be moving the meeting location to the LITE Center beginning next month, which is a very exciting development. I’m looking forward to continued success with the group as it approaches its third year.
  • Win: I published not one, not two, but three articles between the January and June issues of php|architect Magazine. I’ve also continued to serve as a Technical Editor for several issues.
  • Win: Even though I wasn’t accepted to speak at any conferences that were held this year, I did get confirmation that I will be speaking at php|tek in 2010. Given how I originally worded this goal, I’m going to call it a win.
  • Draw: I did actually purchase the MySQL Certification Study Guide, read it, schedule the test, and show up to take it. Through an error on the part of the testing provider, however, the exam was pulled prematurely and I wasn’t allowed to take it that day. In hindsight, this goal doesn’t seem as important to me now as it did when I originally set out to do it.
  • Fail: I didn’t find time to learn more about the C programming language and PHP internals to make any sort of contribution. Hopefully I can make amends on that in the coming year.

So, more successes than failures. Not too shabby, all in all. Again, there were also some accomplishments that weren’t on the list, but that I feel are significant.

  • I’ve marked the end of my first year with Blue Parabola. It’s been an interesting year and I think the coming year holds a lot of new and exciting developments. (Dun dun dun!)
  • I gave webcasts for both php|tek and CodeWorks. I’ll be giving an extended version of the latter presentation as a session at php|tek 2010.
  • I helped to organize the Hackathon at php|tek, an idea which has gone on to inspire a Hack Track at php|tek 2010. This is definitely an event to look forward to!
  • While Phergie isn’t ready for stable release just yet, I think the core is mostly done and what remains is porting plugins and fixing any issues or filling in any gaps that present themselves. In addition to wrapping that up, I also plan on getting some sort of proper web site (maybe a MediaWiki installation) up for the project this year.
  • I just barely got this in today, but I made my first contribution to the PHPUnit project in the form of a commit that adds support for the mysqldump XML format to PHPUnit’s Database extension.

Happy New Year (and Decade) everyone and I hope you have many more!

Breadth-First Thinking

A surprisingly frequent occurrence in my day-to-day life goes something like this: I’ll get into IM or IRC conversations with friends when one technical topic or another will come up. Sometimes the conversation just branches from one tangent to another until that happens, other times the friend will ping me to ask a particular question on the topic. Some friends have even come to know this as a notable quality of mine.

The phrase that I’ve used to describe this quality in my head is “breadth-first thinking.” I thought I’d take a blog post to describe it in a bit more depth. You can find some of this information in the 2007 PHP Advent Calendar entry that Ben Ramsey did, but I’ll reiterate some of it here to bring it into context with my personal methods.

Social Bookmarking

Get an account on a social bookmarking service. I personally like Delicious as its Firefox addon makes bookmarking and tagging (which is extremely important for making things easy to find) a Ctl+D and Alt+S away in Firefox. You’re only as likely to use this service as it is easy to use and this is going to comprise a significant part of your personal database.

Feed Reader

Find a feed reader you like. I use Google Reader myself as it’s relatively frills-free and allows me to use all the functionality I need from the keyboard. Given only a few minutes, it’s easy to make a pass and mark off items that don’t interest me.

Everything Bucket

While Alex Payne may be against them, I think everything buckets are still potentially useful tools. Originally I was using Google Notebook, but when that got shut down I had to shop around for an alternative. I had issues with Evernote consistently retaining formatting in information I saved to it. I tried a few others and finally settled on using private posts on Tumblr.

News Sites

Subscribe to relevant new sites for topics that interest you, but in particular aim for sites that host a variety of information. I find PHP Developer, Planet PHP, and Zend Developer Zone to be excellent on both counts because they often put the spotlight on experiences using PHP and software based on it in conjunction with other technologies. Don’t let it stop there, though. Further explore blogs that they syndicate and subscribe to the ones that carry a lot of subject matter you like.

Social Media

Finally, participate in social media. If you follow people who share your interests on IRC, Facebook, or Twitter, links to interesting content are unlikely to be in short supply. If you use a Twitter client like

Lethargy

I don’t generally use this blog to write about personal matters. However, I feel the need to clear the air a bit about something that’s been weighing on me lately. If you’re reading this, chances are that I’d like you’re advice about how to deal with this situation I’m in.

Those who know me are aware that I’d been working on a book up until recently. The manuscript for that book is now in the hands of my publisher’s editor. At this point, there’s nothing for me to do but sit back and wait for it to be reviewed so any residual editing can be done before the book goes to print.

I worked toward this state of completion for many months. It sapped nights, weekends, and other moments that might otherwise have been free. The feeling of it being completed, at least until editing starts, was understandably a relief of sorts. What followed, though, wasn’t something I’d expected.

I thought that, after a period, I would reconstitute myself and get back into the ring, so to speak. Whatever the next project was, be it working on Phergie or Zend Framework, I would start.

But I can’t seem to find motivation. There’s this ever-present feeling of lethargy where there used to be enthusiasm. I remember feeling similar to this when I graduated from college. As long as I had been waiting for time to work on other projects, my own projects, it felt like I didn’t have it in me when the time finally became available.

I’m not sure that state ever went away or, if it did, how I got rid of it the last time. All I know now is that I’m not sure what to do about it. Maybe it’s burn-out? I don’t know. It’s not a feeling I like, but I’m not sure how to rid myself of it. It’s like an angst to do something, a restlessness, but nothing that comes to mind seems enticing.

Have you ever felt something like this? If so, how did you get past it?