Monday, November 29, 2010

What if Christmas became a world-changing event again?

I came across the Advent Conspiracy today and I like it. And its ideas can be applied to any special day that has become poisoned by profit.

"What was once a time to celebrate the birth of a savior has somehow turned into a season of stress, traffic jams, and shopping lists.

And when it's all over, many of us are left with presents to return, looming debt that will take months to pay off, and this empty feeling of missed purpose. Is this what we really want out of Christmas?

What if Christmas became a world-changing event again?"

Tuesday, November 9, 2010

Word for the day: Disintermediation

From Wikipedia: the removal of intermediaries in a supply chain: "cutting out the middleman"

I've been working as a JIRA specialist for some larger consulting businesses recently and this matter has come up in discussion a few times. I'm glad to see there's a nice long word for such a nasty practice. It's a sensitive matter for everyone but I naturally err on the side of caution, even if I've had existing business with the same customer that is now using the other consulting business.

I wonder if I can get my 14-year old to use it correctly in class. I reckon it would make her English teacher's day.

Friday, October 29, 2010

Because it is awesome!


"Why did you bring it to share?"
"kus it is osum."

A standard part of US education is show-and-tell. Some classes have the children fill in a form before bringing something in, both to encourage their writing and stem the flow. My 6-year old Luke found a chunk of crystal and filled in a form. His quick and simple dude-style answer to the question "why?" was a lovely explanation of the wonders of our world.

Thursday, October 28, 2010

Another job that I have more respect for, the more I know of it

Gear Designers

Some clever people at NASA put together a document describing what goes into making a gear. The tooth shape and material questions I was aware of from my undergraduate days, but their calculations about just how different lubricants work around complicated shapes, expected gear lifetimes and dynamic force calculations are impressive. And it's all pretty modern knowledge apparently, mostly since the 1920's.

After reading it I'm amazed that helicopters don't crash more often!

Monday, October 25, 2010

I signed an oath



Alistair Cockburn is a well-known programmer who is fed up with
infighting in software development. So he came up with an Oath of Non-Allegiance.

"I promise not to exclude from consideration any idea based on its source, but to consider ideas across schools and heritages in order to find the ones that best suit the current situation."

Makes sense to me, and for more than software development.

Tuesday, September 28, 2010

Hidden depths, and Things That Will Never Be


A favorite xkcd cartoon and some things that will never be.

  • Unicode book that is both concise and useful
  • A protocol with "Simple" in its title that has remained simple - SNMP, SMTP, SDLIP are just a few that have not.
  • Revision control merges with absolutely no conflicts
~Matt

Friday, September 24, 2010

Appearances and Expectations


I've found that a spaghetti server is a great tool for scratching my back. We have one in the kitchen for food and different one on a shelf elsewhere. Of course, children like to copy their parents so 6 year-old Luke scratches his back just like his Dad, which I find rather endearing.

But sitting at the dinner table a few nights ago, he went very quiet, his eyes widened and asked "Dad, why is your back scratcher in the pasta?".

Just because two things look the same, they aren't necessarily the same.

Monday, September 20, 2010

Jobs that I have more respect for, the more I see of them

Statisticians

99% of everything written about statistics is wrong, including this. So when people really do understand how to set up proper clinical trials or fit their data to useful distributions, I'm impressed. What most of us learned in school and university really wasn't enough to understand the traps for the unwary and naive in this area.

Statisticians also get to use some great words like homoscedasticity and kurtosis.

~Matt

Thursday, September 16, 2010

Here comes AtlasCamp 2010!

If you develop or maintain Atlassian products (JIRA, Confluence, etc), this event is a great place to be (October 11th - 13th, California, $200).

I'm looking forward to it again with a relish I rarely find for many group events.

http://www.atlascamp.com

Wednesday, September 15, 2010

JIRA articles are now at jiradev.blogspot.com

I've started a new blog for JIRA-related posts over at jiradev.blogspot.com. Future technical JIRA content will appear there instead of in this blog

~Matt

Wednesday, September 1, 2010

My Review of Practical Development Environments

Originally submitted at O'Reilly

Everyone wants a good technical environment for developing their software, and Practical Development Environments contains helpful guidelines for how to create and maintain a great development environment. It discusses some of the current tools that are available, covering different areas...


Good advice, tools sections dated now

By Matt Doar from San Jose, CA on 9/1/2010

 

4out of 5

Pros: Concise, Well-written, Accurate

Cons: Partly outdated

Best Uses: Intermediate, Toolsmith, Novice

Describe Yourself: Consultant, Sys Admin, Developer, Author, Toolsmith

I'm the author and the book still works as intended. Each chapter has a section on using software development tools (version control, builds, bug trackers etc). The second half of each chapter refers to tools in each area that were current five years ago, so these parts have aged correctly.

I've run a consulting business for the past four years based around many of the ideas in this book and find that, for the most part, they are working well for my clients.

~Matt

(legalese)

Action, Expectation, Observation

I remember writing some parts of Practical Development Environments vividly, despite the sleep deprivation that writing a book and having a new child will produce. One such section summarizes what goes into a good bug report:

The three key points to bear in mind when creating a bug report should be:


  • How to reproduce the bug, as precisely as possible, and how often this will make the bug appear

  • What should have happened, at least in your opinion

  • What actually happened, or at least as much information as you have recorded


I still like what I wrote. And now I think it's good advice for other situations. For example,

  • Action: I was taking my brother's toy from him. It was his new toy.

  • Expectation: He should have let me take it because he wasn't using it anymore

  • Observation: He hit me!



Maybe I'll get it printed on my next batch of business cards:
Action, Expectation, Observation.

~Matt

Wednesday, August 18, 2010

Distribution of Scrabble word scores

If you take each word in /usr/share/dict/words (OSX 10.5) that is 7 letters or fewer and can be created with the standard set of Scrabble letters, and calculate its simple value in Scrabble, then the histogram of the data looks like this.


1 | 10
2 | 52
3 | 240
4 | 753
5 | 1541
6 | 3061
7 | 4744
8 | 6220
9 | 7462
10 | 7043
11 | 6439
12 | 5276
13 | 4061
14 | 2959
15 | 2078
16 | 1713
17 | 979
18 | 714
19 | 414
20 | 255
21 | 171
22 | 90
23 | 47
24 | 32
25 | 22
26 | 5
27 | 6
28 | 3
29 | 1

The most valuable word? "jackbox".

Tuesday, August 17, 2010

Marking ALL mail in gmail as read

To mark all Google mail as read without having to page through lots of old messages

1. In the search box, type "is:unread", no quotes
2. In the dropdown that looks like a checkbox (yes, it does) select "All"
3. A link will magically appear that says "Select all conversations that match this search". When clicked, it selects all the messages that are not shown as well as the ones that are shown.
4. Finally, select "Mark All as Read" from wherever it is for you and wait a few minutes.

(via http://www.woodwardweb.com/technology/marking_all_mai.html)

It turns out that the search doesn't select messages in your Drafts folder.

~Matt

Monday, August 16, 2010

A fine and confusing error message from Java


public String myFirstMethod() {
String result = "Hello world";
return result;;
}


A straightforward piece of code that rudely produces a compile-time error "unreachable statement at line 3". "What's so unreachable about that line?" you might ask. Those experienced in the way of Java compilers simply smile and point out the double semi-colon. Accordingly to the compiler, there is an (empty) Java statement between the two semi-colons and it is never reached because the methods always returns before it reaches it.

If I had written writing that error messages, I might have made it say "double semi-colon on line 3".

Thursday, August 12, 2010

What price is a company's reputation worth? Answer: $4600

A reputation once broken may possibly be repaired, but the world will always keep their eyes on the spot where the crack was.
- Joseph Hall

I've been lucky for the last four years as a consultant to not have any major problems with getting paid. So the story of the first client to behave really badly is worth telling.

Back in January 2010 I contracted with an organisation to do $12,000 worth of consulting work for them over the next few months. After two months I sent an intermediate invoice for $9,600 for the work completed so far. Around then the organisation decided due to a strategy change that they no longer wanted the work that I was doing. So they simply went quiet on me and wouldn't acknowledge any email or phone calls. I didn't know what was going on, just got a bit annoyed at the late payment and lack of communication.

Last week I dropped by their offices to sort this out. I received a rather chilly reception and was offered $5,000 as a final payment. Fed up with the five month delay and their lack of communication, I took the offer.

So I lost $4,600, and they lost all my trust and respect. When future clients ask me about that particular organisation's products, I'll probably say "tech is ok, but terrible business practices". Would I work for the same organization again? I'm a pragmatist so probably yes, but with 50% payment or more up-front.

Companies spend thousands of dollars on trade shows and advertising then throw the resulting gains away by treating another business badly. Crazy.

Friday, July 2, 2010

How irritated customers obey a power law



There are over 4000 open issues about JIRA that people have voted for. The most popular vote has 592 votes but most issues have zero votes. I found a suprisingly good line to fit the data with a correlation coefficient 0.9882, if Excel is to be believed. I'm not sure that I actually believe in predicting what people vote for, but I guess this is one way of measuring your progress is how the coefficients of the predictor change over time. The flatter the line, the better job you are doing of evenly spreading out customers' irritation with your product.

As of July 2010, the coefficient of irriration for JIRA is -0.65.

Thursday, July 1, 2010

ASCII art in log files and showing my age



What is that? Well, let me tell you. It's supposed to be some ASCII art that my new-fangled JIRA bug tracker spits out into its log file at start up. It's supposed to serve some useful purpose. It fails (fails, I tell you) because when you view ASCII art that is longer than 80 characters in a terminal (this is a log file, remember) that text art just wraps around and resembles line noise. Yes, line noise like they used to have in the last century.

What's that? You think ASCII art is cool? Well so do I, in it's place. Which isn't my darn log files. What am I going to do about it? I'll tell you, I'll show 'em! Now get off my lawn.

Friday, June 25, 2010

My wife as a sea star




Vacation Bible School ended today with the inimitable Banana Slug String Band. Katherine was their guest Sea Star. It opened up a whole new echinodermic side of her character to me. She certainly was moving around.

Tuesday, June 22, 2010

Drawing a line in the sand

Joel Spolsky writing on his latest project concludes with

"Area 51 is not for everyone. If you don’t know what it’s for, or why it’s going to work, or you can’t figure it out, it’s not, actually for you."


Snark programmer, snark!