Who do you go to when disaster strikes? I’ve been told I’m a good problem solver, and am often a “go-to” person for others when there are difficult technical issues to resolve. What am I doing to be tagged in this manner? Note, I don’t know that I actually believe I am better at solving problems, I’m just aware that I do indeed work and get paid to do so, frequently.
I decided to put together a list of attributes that I think make for good problem solving in the technical world. I hope this perhaps helps others. I am more than open to feedback for improvement on this list – please weigh in if you see something missing or that can be improved.
Traits of a Good Problem Solver
- Has A Good Memory
If you can’t remember what systems are “touched” by a specific action, you’ll be forced to rely on others that do. Or you will have to look up and research these dependencies on your own first, or discover them in a longer, even more painful path.
- Has Persistence
Solving a technical glitch can be difficult, especially when it is something that is difficult to reproduce. The most difficult problems I encounter are the ones that appear to happen randomly. The reality is that with a technical issue, this is really never the case; the challenge is in determining what conditions must be met to reproduce the issue. Is it only happening on a specific server? Could it involve caching? Have we established the exact steps taken to create the issue? What conditions in our testing environment might be missing in the production environment that could be part of the cause? It takes persistence to work through all of these permutations.
- Has Patience
While similar to persistence, this is a different trait in my view. Perhaps an example will help highlight why I think so. Often in web development or other technical fields, we are working on custom code or at least an integration of something in a unique environment. How long will it take to figure out what’s wrong when you are diagnosing something that perhaps has not been seen by others before? It could be two minutes due to some clarity or luck, or two days, or even weeks. Being patient and persistent is what will get you through these sorts of problems.
- Documents Everything
Very similar to having a good memory, being one who documents everything, including problems and their resolution, really helps problem solving. Have we seen something like this issue before? What did we do to fix it before? There’s nothing worse to me than diving down the same rabbit hole because you forgot how your resolved an issue previously. Write it down in a tool that has good search features, like a wiki, or Evernote.
- Can Write Effective Search Engine Queries
Learning to broaden or restrict your search query is a skill. So is knowing what keywords to include in your search. LetMeGoogleThatForYou.com is often used as a joke by me as a none-too-subtle means of poking fun at someone’s poor attempt to solve a problem, but there are skills to using a search engine for sure. Develop them!
- Has a Process for Change Management
The first question I always ask when there’s a problem reported at work is “What’s changed?” Having a good change management system in place with a code repository as well as a testing->stage->production deployment path for your code makes answering this question easier. If code hasn’t changed, how about data? If neither, is there a new browser or an update that has been rolled out? Some other environmental variable change? Stable systems don’t usually just “break” — something has been changed that caused a problem or exposed an issue kept hidden previously.
What other traits make a good problem solver for you? Please let me know what you think.
For a time on December 30th, 2013, my hosting provider 1and1.com was redirecting all WordPress logins to 22.214.171.124 whenever one hit wp-login.php effectively blocking all attempts to login — and logout for that matter – from any WordPress installation on their servers.
Their response was less than desired; they stated that this issue was effecting only .5% of their customers. Even if that were to be true, which I would find doubtful given the widespread use of WordPress, and it seems to discount the severity of the issue for WordPress user, a program that they say they support completely. Read more
Simply put, hackers suck. Over the past six to eight months, I’ve had to deal with the hacking of many former (and a few current) client websites. All but one of the exploits came through older versions of Joomla, and the exception being an older WordPress site. Version 1.0 of Joomla is ancient by Internet terms, and there were several security exploits discovered with it. Add to this that there are often third party extensions with additional exploit possibilities. This environment makes it so any jackass who can write a script that searches source code on pages for specific components or Joomla references can then upload files to your server. Ugly. Really ugly.
The compromised websites in all cases continued to function, at least somewhat. One hacker injected a file into the site that would in turn alter the htaccess file adding mod_rewrite rules that would redirect anyone coming from Facebook, Google and just about any other search engine or social networking site. If one were to type the URL in directly, nothing happened. No URLs in the search engines were altered either; the redirects in the htaccess file hijacked only people who had headers from one of these sources. A couple of sites had files that were posting text on pages and adding new links. One hack destroyed the ability of using the administrator section of Joomla causing a 500 error upon login.
I don’t call myself a Search Engine Optimization expert, but at the same time, I do know a great deal about SEO and have had success in optimizing several sites. Search engine optimization is for most people a black art – or at least a dark one. But it’s really not hard to do some basic things that help, nor is there some sort of magically secret way to lift your ratings as your spam folder may be trying to tell you.
Over the years, experience has taught me a great deal about things that work and ways one can improve search engine rankings for specific keywords. Sometimes this learning was from trial and effort to do so, other times just luck. A past version of this website had an excellent rating for “osCommerce” and especially “osCommerce and Joomla” with rankings in the top 10, sometimes even the top 3, for several years. (Even today we’re ranking pretty high for these terms without effort behind it now.)
This post will focus on sharing what we’ve learned about SEO over the past 15 years. It’s not intended to be the be-all-end-all, but simply list some basics that everyone should do to optimize a website.
WordPress is not new to me, but I haven’t been a ‘constant user’ until recently. My favorite content management tool and site creation software has long been Joomla! and still is for most sites I build or work on. However, there are times that WordPress is simply the ideal choice — especially if the site’s main purpose is to be a blog, like this one is now. Thus my switch to WordPress for my own use; I need to eat my own dog food, so to speak.
One aspect of hosting a blog site, especially one running on a popular open source platform such as WordPress, is dealing with spammers. This isn’t because the open source software is somehow more vulnerable to such attacks, as I actually think the opposite, but more because hackers are going to develop automated scripts that will work with the largest segment that the they can. WordPress is very popular and thus a bigger target.
Cutting down or eliminating spam can be a major chore for anyone. Fortunately, there are several tools available that help filter out the spam from the legitimate comments submitted. Here are two that I have found to work extremely well and am using on several websites.
- Akismet – This is a WordPress standard and while far from perfect, a very useful tool to use. It will help identify a great deal of the spam messages that come your way.
I have done SEO work in my the past, and think that if one follows some pretty simple and straight forward plans of site construction, good content will be indexed well and lead to your site being found. With some previous versions of this website, when The Design Mission was actively recruiting new customers and freelance work, we were able to get some keywords and keyword combinations (things like “osCommerce” and “Joomla and osCommerce” for example) into the top five search results for Google. A future post or two may well focus on those past SEO efforts and what we did for clients, but this post is intended to be about a tool for analyzing not only how people are finding your website, but more importantly what they are doing on it once they get there; Google Analytics.
Need a great tool for bug reports? Want something that will help facilitate your quality assurance process? Mantis is simple open source tool that fits this bill quite nicely.
Mantis is both a wonderful tool, and at times a source of frustration for me. It’s very helpful in guiding reporters of issues during a quality assurance period. I like the tools ability to help get issues reported fully so that developers can understand fully what the issue is and how it can be recreated – assuming that the reporter has indeed completed the bug report form completely and accurately. If this is done correctly, this tool is great.
- User levels with different permissions
- File uploads for screenshots or other
- An intuitive interface with custom search refinements
- Email notifications
- Login / password protected management
- Public and private projects may be created
- An easy installation
It can’t stop people from submitting reports that are duplicates or incomplete, but it does do a good job of guiding all users to a well documented bug report.