You can be an Apple user and not be in the Cult of Apple

Ron and I have been geeks for a long time, and I remember way back when we first were together, my aunt and uncle showing me their Apple computer.

Weird. Boxy thing. Rainbow logo. You could point and click and pictures and stuff and not type things in. Huh. That was cool.

Fast forward through the debacle of Windows versions and our Linux usage. We are super geeks after all, of course we forayed into Linux.

All that time I would look at Apple from the outside and think they were shiny and overpriced.

Meanwhile, I was realizing buying cheap goods multiple times because they wore out wasn’t working. Shoes, appliances, clothing, toys. Stuff.

While working at Copyblogger doesn’t mean Apple use is mandatory, I did get a Mac Air. Ron got a Macbook Pro. Recently I got an ipad.

We LOVE them. I mean, unabashedly LOVE. THEM.

Thought Steve Jobs was pretty smart. Didn’t like him much as a person. Not into the cult of Apple itself.

But we can and do appreciate good design. I cna also say the last two laptops we purchased before any Mac products did not last six months before things like missing keys and wonky behaviour. If anyone remembers me from WC NYC and my little netbook, that thing bricked at about a year. Nice doorstop.

Ron has some minor fine motor skills issues and on a Mac laptop, the usability is such that navigation is *easier* on a Mac than any other laptop he has ever used.

The ipad? Took my 2 and a half year old granddaughter minutes to use. We got her family their own for Christmas, and I heard the other day she saw her daddy (our son) do the five finger swipe maybe twice, and now rage-quits with a five finger swipe when she gets frustrated with an app. :D Oh snap! On the positive side, watching her read along to stories and do shape games is mind boggling. Can’t wait the see HER future.

I thought I would use the ipad as a second screen, but honestly I actually like using it as a single task device. Mostly leisure, and yes I do wind up troubleshooting help desk tickets on it as well. (“Why does ny site not look right on the ipad?” Oh here, lemme check..) And I habitually have multiple windows open on my Air.

So yes, we like them. We just bought a new Air for one of our daughters, upgrading her from a $500 two year old craptop. Three times the price yet I know it will last three times as long (or more) with far less issues.

How is liking well-made easy to use durable products a cult? I mean, we’re not out there oogling the next announcements because we’re not interested in getting the latest and greatest of everything all the time. We just wan Things That Work and Work Well.

We found them.

No shame in that.

Why I need your URL

I do a lot of forum support. Actually, it’s the main part of my day. One of my most frequent responses is some variation of, “Can I get your URL so I can go look?”.

Most people just paste in their URL and we go on our merry way, solving problems together.

Sometimes it doesn’t go so well. Some people are confused. “You mean you want a backlink from my site?” No, I just want your url so I can click on it. Some people are shy. “Well it’s in development and doesn’t look very good.” I know, I expect this. You’re not asking me to critique your design, you’re asking me to help fix something that went wrong. Some people forget. “Well it’s linked in my username!” Yes, but the site being worked on is not always the one associated with a user profile, so I can’t assume.

Some people – thankfully only a handful – get irate. “WHY ARE YOU ASKING ME USELESS QUESTIONS??? I JUST WANT HELP!” (paraphrased to protect the guilty)

So in order to lessen those times, I thought I’d write this post in the hopes that some light bulbs may come on and we can all get back to the yellow brick road of problem solving happiness.

I ask for your URL to cut down on the amount of educated guessing and to cut down on the amount of back-and-forth questions I might need to ask otherwise. Maybe you’re having a hard time explaining the issue as a non-tech person. As a tech person, it’s actually *easier* for me to just go look and use tools I have at my disposal (like Firebug) or poke around the actual file structure or look at the rendered HTML of the page.

YES! i can do that! And once I’ve done that, I would very much love to show you how I did it so hopefully you can learn too. Here’s an example:

User: “I made some css changes to my site but they don’t show up.”

Choice 1: “Can you give the the URL to your site please?”

Choice 2: “Are you sure you edited the right file? Are you using a caching plugin? (some people say no and they actually ARE using one and forgot) Is your css syntax correct?”

Choice 2 can be done all at once or in tiny steps, pulling each piece of information out.

Choice 1? I visit the site. I see they are running a caching plugin and suggest they disable it or clear the cache. I use Firebug on the front of the site and can’t find the css they insisted they changed I view the source of the page, find the URL to the stylesheet and see they also made a typo, so the css change isn’t rendered anyway.

Choice 2 results in a thread 20-30 posts long that lasts from a full day to a week. The user gets frustrated because their issue isn’t solved in a timely manner. I get frustrated too.

Choice 1 usually results in a thread a few posts long – anywhere from 4 or 6 to maybe 10. We wind up the issue as resolved within the afternoon. We’re both happy.

Another reason why I ask for a URL is because I get asked a lot of css/design type questions. It is extremely difficult to troublshoot css paddings and margins from a screenshot alone. Even the best designer (of which I will freely admit I am not) will still have difficulty explaining exactly what element you need to find and exactly how many pixels of padding will fix that gap, just from looking at a screenshot. At best it would be an educated guess, even from the theme designer, who knows the code inside out, but does not know exactly what else you did to it.

So, with your URL, I can quickly visit your site, open up Firebug, find the *exact* element you are asking about. I look at the right pane and see it had padding-bottom (for example). I change that number and the gap you asked about goes away.

I go back and answer your question with, “Find #nav in your stylesheet and adjust the padding down by 5px.” See? Exact. Everyone is happy.

And it’s not just theme related – with multisite issues, I can just go look at your site and see exactly what you meant by a blank theme on sub sites, or with domain mapping I can run some diagnostics on your DNS records when I have your URL and see where it’s failing.

And because Ipstenu and I share a brain sometimes, I told her I was going to write this post, so she wrote about asking good questions.

But I will still ask you for your URL. ;)

The sauce in your site

I like to cook a lot of foods from scratch, and back when we had 3 or 4 growing and constantly hungry children underfoot, I spent a lot of time at it. At one stretch, we even grew many of the ingredients ourselves. This meant I had acquired a lot of kitchen gadgets, many tools to do different things to make the process of getting the vegetables to the table easier.

Over the years, the kids have grown up, our needs have changed, and many of the neat kitchen gadgets and weird tools have been cleaned out. there are some, however, that I’ve kept – even though I use them once a year or less. I have a pasta maker I whip out for special occasions – and they have to be really special, because taking 3 hours to make homemade ravioli that disappears in less than 15 minutes can be a little daunting. I also have a tomato strainer. It’s large, has many pieces, and the box frequently gets in the way unless I keep it on top of the fridge.

But keep it I do. Why?

Well, once a year, maybe two, we either grow, buy, or get gifted with more tomatoes than we can handle or even eat in a week. And our family loves tomato sauce. Yes, you can buy tomato sauce cheap, and we go through a lot of it. But until you’ve tasted fresh homemade sauce, you have not truly tasted tomato sauce. The way this machine works, it gets the whole family involved. Someone clamps it to the table and put the thing together, someone starts quartering tomatoes, and one of the kids starts tossing the pieces in and turning the crank. Seeds and pulp come out one end, and beautiful crushed tomatoes come out the other, right into the pot. Then I give it a simmer, add spices and there we go.

making tomato sauce

So why go through all this effort, and maybe more to the point – why talk about tomatoes on my business blog? ;)

Underlying all this is a process that highlights where something comes from. It’s easy to buy a jar or can of tomato sauce. It’s harder still to grow the tomato, process it and make the sauce yourself. My tomato machine helps me in that. But mostly it helps me, and the children, understand how involved that final product came to be.

And today that got me thinking about WordPress. Sure, I could hand-code an entire website in HTML – and I’ve done so. It takes an enormous amount of time. WordPress, on the other hand, is like my tomato machine. I set it up and just.. crank.

There are other tools I’ve used in my work life that also make my job easier. Sometimes I go back and do things the hard way, just to keep my skills sharp. Yesterday, I coded. I could have asked Ron to do it for me. And he could have done it in 20% of the time it took me to do it. But I wrote that function so I could still remember how to write a function, and thus get better at explaining it to others. Even if it was a really simple 3 line function. (Two of them, in fact. Go me!) I had tools at my disposal like the codex and forums to help me.

What kind of rarely-used tools do you have that can make your work easier? Even on tasks you don’t do that often? What tasks do you do occasionally to keep your work brain sharp?

Why All Computer Users Will Benefit

Andrea bought me Free Software Free Society by Richard Stallman (RMS) for Christmas. I haven’t been reading it that fast. It’s one of those books that is much better to read a bit and then mull it over for a bit.

The title of this post is the title of the RMS essay that I’ve given some thought to and had my own thoughts that I wanted to add. What RMS explains in the essay is how he feels restrictive licensing is detrimental to both society and the software/technology industry.

Arrangements to make people pay for using a program, including licensing of copies, always incur a tremendous cost to society through the cumbersome mechanisms necessary to figure out how much (that is, which programs) a person must pay for. And only a police state can force everyone to obey them. – p 36

Over the last decade there was a huge amount of effort (and money) put into preventing the distribution of licensed materials which for the most part was not successful. By design, the Internet is a distributed fault tolerant network which routes around blocks (as any fault tolerant system will). RMS is spot on that the only way licensing can be enforced is through a police state. The costs of administering and enforcing restrictive licensing systems outweigh the benefit of those systems for both society in general and the industry itself.

Secondly, at a base level, restrictive software licensing is essentially an industry regulating system. Whether you agree with regulating industries or not, in theory there is some merit in regulating a profession like engineering. The principle behind engineering certification is to ensure that the people working in that profession have the training and skills to competently practice that profession. There are two significant differences between restrictive licensing and industry regulation. Restrictive licensing does not regulate the software industry, it regulates the consumers/end user. It does not do anything to assure the quality of the profession or product. Secondly, software licensing is determined by the software developer where most regulated professions are regulated by the profession itself.

Some easily rebutted objections to GNU’s goals:

“Won’t everyone stop programming without a monetary incentive?”
Actually, many people will program with absolutely no monetary incentive. Programming has an irresistible fascination for some people, usually the people who are best at it. – p 39-40

I taught college level programming for a few years, and I think RMS has it backwards. Some people are fascinated by programming. Those who pursue that fascination are the ones who become the best at it. The only consistent factor in my students that correlated to how their skill as programmers developed was how much they liked it. Fortunately most of the students who started in one of the programs I taught in and discovered that they didn’t like programming dropped out part way through their first year.

Restrictive licensing does not help people who program because they love doing it. Restrictive licensing sets out to extend the financial mileage that can be made out of every line of code. Instead of doing something that they love, a programming ends up spending time doing something that they most likely do not enjoy.

A good programmer will look at something they had written at some point in the past that’s mediocre, scrap it and start over. On the other hand, in my experience as a teacher & working in the industry, a mediocre programmer will try to salvage any work they’ve done for as long as they can. While that sounds strange it make sense if you look at it from the perspective that the mediocre programmer doesn’t like to program. What’s unfortunate about that is that in most instances, salvaging mediocre programming to continue making money from it takes more work than scrapping it and starting over.

“Competition makes things get done better.”
The paradigm of competition is a race: by rewarding the winner, we encourage everyone to run faster. When capitalism really works this way, it does a good job; but its defenders are wrong in assuming it always works this way. If the runners forget why the reward is offered and become intent on winning, no matter how, they may find other strategies—such as, attacking other runners. If the runners get into a fist fight, they will all finish late. – p 39

A programmer wins at programming competition by writing the best program (for a particular purpose or range of purposes); but in programming there isn’t a starting pistol or a finish line. A programmer is only a winner until another one writes a better program. The aim of restrictive licensing is to make as much mileage as possible out of each win. The competitors who garner no benefit from the restrictive licensing are the ones who love to program (ie. the best programmers). The programmers who gain the most are the ones who only program when they have to (ie. the mediocre programmers).

In a straight up competition, mediocre products/programmers will gradually fall further and further behind the the best ones. Like my students, some will realize programming isn’t for them and they will drop out of the race and look for something that they will enjoy more. Those that don’t often turn to taking swipes at their competition. I’d love to be able to say that the FOSS community is free of that, but it isn’t entirely void of it. I do think over time the FOSS community does shed those who turn to that sort of thing though. By taking the low road, a person or business is elongating their stay in the competitive market. But there must come a point where what they are offering is no longer competitive.