My Answers to the Art & Logic Questionnaire

I was cleaning out my Google Drive and found this questionnaire that I filled out when applying for a position with Art & Logic(@artandlogic) back in 2012. As I read through this I was quite surprised with some of my answers. It’s often embarrassing to read through thing you wrote so long ago you almost don’t remember writing them. This is one instance where I thought, “I should share some of this.” Here are a few of the questions and my responses.

Do you prefer open-source or proprietary technologies, and why?

It depends. For most aspects of development projects I prefer open-source software. I think that the open-source community is full of ridiculously smart people who are more interested in solving problems than padding the bottom dollar. There’s nothing wrong with making money, but it’s nice to see communities of people working together to make software perform better or be more usable. There are less constraints on open-source software which tends to make it feel more edgy. That point is why for some things I prefer proprietary technology. For example, I have an iPhone not an Android, I prefer MS Office over Open Office. Sometimes that control that someone/a company has over the product makes it more usable or more reliable. Database software is one of those areas that I might consider using a proprietary DB as opposed to an open-source one, it depends on the project.

What do you think of formal design methodologies?

I think that formal design methodologies have their place and time but strict adherence to those methodologies can stifle both creativity and productivity. I understand that their purpose is to control reliability and maintenance as well as provide a structure for the design process which is important especially in a team environment. I just think that common sense should be used when deciding to adhere strictly to those process and if the project could be completed faster by using a more iterative or streamlines design process it should be used. I’m a big fan of “Getting Real”, by 37Signals. I think that their approach to software and business is smart, efficient and to the point. Formal design processes seem to be filled with fluff, some of it is necessary, some of it isn’t.

What technologies would you choose to develop a high performance, highly scalable web application and why?

The thing I like about this question today is that hardware is so much faster today than it was when I was first getting into the IT field. It’s cheap and easy to replace slower hardware with faster hardware and mask performance or design issues. Having said that, it’s no excuse to be sloppy in your design/code or not diligent in choosing the proper technologies, but to my point earlier, you could spend a TON of time coming up with just the right design to fix a performance issue that $5k in hardware could have resolved just as easily. It comes down to what’s important to the client/project.

To answer the question, I’d go with x64 hardware running a flavor of Linux. I like Ubuntu, but depending on database choice Redhat or SUSE might be required for support. I really like Ruby on Rails for the language/framework which would infer that MySQL is the database to be used, but MySQL has scaling difficulties. I think I’d prefer Informix for the database of choice because it’s fast, reliable, easy to maintain and scales well, but it’s somewhat unknown. I’d use Memcache for sure, especially if I were using MySQL to boost performance. I know for a fact that this technology stack can build a very large, and reliable website. Using MySQL as the database limits scaling without using multiple databases from the very beginning which in turn creates more up-front coding or more re-coding once the database outgrows hardware limitations.

Where do you think most software projects go wrong?

Scope creep is the killer of all projects, but it’s also the one that everyone is paying attention to. Poor communication between everyone involved in the project is probably next, especially between the business owners and project managers. Keeping everyone in the loop is critical. The other thing that I think has a negative effectaffect on a projects success is including too many features that are just not important. This can have the effectaffect of putting focus on the wrong areas for too long. Keeping the design and feature requests clean and simple will go a long way towards a successful project.

Describe something in your life that you haven’t yet accomplished but would like to.

I mix live music for my church and occasionally a friend as a hobby of sorts. I REALLY enjoy it both from the technical and artistic perspectives. I hope to one day have the opportunity to mix for a large band in a real venue. That would be pretty darn amazing.

There’s nothing too terribly profound here, but I hope it stirs some inner conversation within you if nothing else.

Ch-Ch-Changes

I find it interesting how stressful it is to change jobs. I see so many people stay in one job for way longer than they should because they fear change For them it’s easier to just stay in an unsatisfying job than to deal with the stress and uncertainty of change. Others seem to embrace change and hop from job to job to job looking for the one that will satisfy them and make them happy.

I’m somewhere in between. Constantly looking, rarely accepting. I’ve attempted to start a business on the side several times over the last 8 or 10 years, but none of them have ever panned out into something that made money. I’d have to classify them as hobbies at this point, fun to work on, took a lot of my time, but ultimately they went nowhere. I still love the idea of working for myself, building web apps that attract thousands of users who need the solution that I’ve created. There’s just something about that idea that sounds massively gratifying.

I’m changing jobs for the third time in 12 years (2nd this year) and it feels very strange. I know I’m doing the right thing by leaving my current job (lots of resistance from the CEO for me even being here..it’s a complicated story), but there’s a looming fear that I’ll be unhappy with the new job 6 months from now even though it looks promising on the surface and they really want me there. I should be able to immerse myself in my work, show my value and probably find avenues for promotion since the company is growing fast. But I can’t shake the feeling that it’s still not the thing I’m supposed to be doing.

So it looks like I’m one of those people who fear changing jobs but not the way most people fear it. I fear changing from having a job to not having one and working for myself. In all honesty it’s the fear of losing my house and comfortable way of life that my family has come to enjoy. If I were single and didn’t have so much financial obligation it would be an easy choice to make. I fear change just like the guy who’s afraid to change jobs, our fear just looks a little different.