Saturday, April 30, 2011

Why Scrum Works

At work, we have been using Scrum methods for over two years. It has really been amazing how well this system works for us, at least for development. I only wish we could apply this technique more widely to our organization.

Perhaps some background would help. My employer, when I arrived here eight years ago, was one of the most disciplined software organizations I have ever seen. We produced a software release to the market every year, on time, with good quality. Every. Year. Features being cut before they were ever started, because there would be no time to finish them. It was truly amazing. 

However, this advanced waterfall process was slowly destroying our product. There were two key issues: 1) we'd never plan anything risky, so the releases were getting blander, 2) we had no flexibility should something arise, since everything was planned out. We needed to do something else.

One of the key revelations about software development is that it is, to some degree, unpredictable. Even in very disciplined organization, you reach a point where the most extensive planning process cannot pin down every possible variable. The unexpected lurks in every project -- particularly for those projects which involve something new and unique. Those very projects you need to do to stay competitive.

Classic management would dictate more precision in the planning process, more and more research up front to prevent these unexpected events. But at some point, the up-front costs outweigh the worth of the project. Shouldn't we expend our efforts on building software, rather than building perfect plans?

Scrum does not solve the unpredictability of software development. Scrum embraces that unpredictability. Scrum gives software development teams the tools to manage and control that unpredictability, so that it does not derail a project. Part of the secret is not trying to plan everything. Strictly speaking, only one sprint is planned at a time.

So, why does this work? Why does planning just 2-4 weeks at a time work better than trying to plan it all?

There are three principles that make Scrum effective:

1) Customer Focus - when writing a story, we write it from the perspective of the customer. Completing a story means delivering a concise bit of functionality to the customer. With a completed sprint, the software ought to be in a ready-to-ship state. It's actually very hard to write stories this way. In the end, this process tends to break down large features into tiny slivers of functionality. The beauty of this process is that each bit of functionality can be prioritized against the other. Instead of doing months of work to finish a feature, we're focused on the high-priority aspects every few weeks. This can result in leaving some low-priority aspects of the feature on the table, but on the whole it gets the important aspects built and finished first.

2) Narrow Scope - nothing kills a software project as bad as feature-creep. You start working, and the list of requirements gets longer as you go, until the project will never end. You can't do this with Scrum. Each sprint is fixed in time. Each team has only so many resources. The only variable is the scope. If you discover new requirements, it isn't automatically part of the work. Most likely, you write it up as a separate story to be prioritized against the other stories.

3) Vertical Delivery - the hardest aspect of Scrum is working in a vertical fashion. You can't divide stories by discipline (eg design story, coding story, QA story), you've got to do all the design, coding, testing in the same few weeks. This forces one to think very small for each story. Vertical Delivery also affects your software designs. Many software products have inter-dependent layers (eg database, business logic, user interface). You don't have the luxury of perfecting each layer before moving on to the next. Vertical Delivery means you have to do everything in each layer to deliver the bit of functionality to the customer. The big architecture in the sky is out. Instead, you must choose a more evolutionary approach, where you have just enough architecture to get the job done for the story.

While it may seem cumbersome at first, these principles are actually a very natural process. Imagine an independent software development organization of just one developer and his cat. How would he get things done? Given the very small development team, he's not going to go off for months (or years) doing major features. Instead, he'd focus on delivering something to the customer, keep the scope narrow so he doesn't get sidetracked, and deliver all the components vertically.

Once you've got those basic principles down, the real magic of Scrum happens between sprints. Each sprint, stories are getting done, and little bits of functionality are ready for the customer. The work that gets done has a major effect on the stories remaining. Maybe we've gotten enough of the value out of Feature A, and we can now focus on Feature B. Perhaps there's some new requirement that's come up, and we really need Feature C in order to compete, or comply with a new law, or support a new platform. Prioritization occurs constantly.

Scrum keeps development teams focused on the most important work, delivering working software for customers. It continues to do so even in the face of constantly changing requirements and conditions.

You couldn't plan for that.

Thursday, March 31, 2011

Six-Band Worked All States

When I was a novice, I really wanted to earn the Worked All States (WAS) award. I wasn't an ARRL member at that time, but I figured I could go ahead and work the states and get the cards. Well, I did get confirmations for 30-some states, but never quite completed that award before moving to Georgia.

In the late 80s, I married, bought a house and set up a modest station, the dream of earning WAS came back. But then something happened. During SS Phone in 1988, I managed pull a sweep -- working all ARRL sections (76 at the time). I didn't just work all states, but I had worked all states in a single weekend.

Earning WAS didn't seem like enough any more. What I really wanted was five-band worked all states (5BWAS). What I'd missed though, was that you can work all the states in a weekend, but getting the cards to confirm that takes some doing. When I moved in 1994, it was far enough to reset my WAS efforts, and I hadn't even collected enough cards for basic WAS.

Logbook-of-The-World (LoTW) changed all that. Soon after signing up, the confirmations poured in. By the time the site supported the WAS award, I soon had enough to qualify for Basic and Phone WAS in march 2006. By next year, I had CW, 20m and 40m, and added RTTY in the fall of 2008, and 160m shortly thereafter.

Working all states on each band takes a little patience. The process can be accelerated by operating contests: North American QSO Party (NAQP), RTTY Round-up, and ARRL Sweepstakes (SS). It certainly helps to work all three primary modes: CW, Phone, RTTY.

Each band has its own character and challenges:

20m - easiest band to work all states. During one NAQP, I had a fabulous run on 20m, and later realized I had worked every state on 20m during that contest.

40m - certainly the second easiest. With the right conditions, 40m can be just as productive as 20m. Probably a bit of a challenge without a directional antennas.

160m - if you operate the ARRL 160m contest, as well as the CQ 160m contests, it is surprisingly easy to get 160m WAS. You don't need huge antennas. I worked all states with just a short, shunt-fed tower.

10m - if you operate the ARRL 10m contest, you can make a lot of headway on this band. The tricky part is the close-in states. Ground wave may not be effective for more than a few dozen miles, so you either have to look for backscatter opportunities, or wait for those rare conditions during the sunspot maximum where we have shorter skip.

80m - this would be easier than 160m, except that there aren't dedicated contests for this band. The hardest states are probably those farthest away. For me, this was AK and HI.

15m - short-skip makes this just as hard as 10m, but without the benefit of a dedicated contest. My last state for this one was SC.

After years of operating contests and collecting confirmations on LoTW, I just needed two to finish 5BWAS: 15m SC, 80m AK. I did some data-mining of my log books, and found I had three QSOs with SC over the years. I mailed out QSL cards with SASEs, and was lucky enough to get one station to confirm me. I'm currently waiting for 15m WAS to be awarded.

Alaska on 80m presented an interesting challenge. But, I had worked KL7RA on 160m using both CW and Phone. Seems I just had to look for AK on 80m this winter. Despite watching for spots and coming close a couple of times, I started to get worried -- spring was almost here, and it would soon become hard to work anything that far away on 80m due to summer noise.

I finally broke down an e-mailed KL7RA and asked him when he'd be on 80m. While he was QRV for the ARRL DX, I managed to miss him again. Finally, Rich agreed to a schedule.

The trick is to find a darkness path between GA and AK. The most optimum time would be right at Georgia sunrise -- but I couldn't ask Rich to get up in the middle of the night. Instead, we opted for about an hour and a half after his sunset -- which is 2:30 AM for me.

It took three tries, but we finally made the connection with readable signals. Thank you Rich!

With the confirmations in hand, I now just have to wait for the ARRL to process my 15m WAS, apply for 80m WAS and ask for the 5BWAS as well. So, very soon I will have accomplished what I set out to do over 20 years ago.

Saturday, February 12, 2011

iPad

OK, I'll admit. I have been an Apple fan for more than 25 years. I first laid hands on the Lisa and the Macintosh in the summer of 1984, and I began programming the Mac in August of 1984. I've been an Apple developer off and on since then. Virtually all my home computers are Macs, and I've encouraged my friends to buy Mac for years.

However, I 'm not what you call a raving Apple fan-boy. I thought the iPhone was interesting, but I wasn't one of those who stood in line for the original 2G, or the 3G,  or the 3GS release. My biggest problem was that I felt I already spent far too much each month for my cellular wireless service, why spring for $30 more each month for the data service?

My wife convinced me to get an iPhone 3GS Christmas 2009. I've been using it for a over and year, and I'm pretty impressed with it. However, the screen being small there's really a limit to what you can do with it. After a year, though, I'm not going back to a feature-phone.

My wife surprised me this year with a special present for my birthday: an iPad. I had tried them out at the Apple store before, but hadn't spent a lot of time with it. After a week of using this little device, I find I am way more impressed with it than with the iPhone. The iPad may well-be a game changer. I'll say something that you shouldn't take lightly from this long-time Mac user:

The iPad redefines the paradigm of computing, the same way the Macintosh did in 1984.

Your first impression may be that the iPad is just a bigger iPod Touch. But there's a profound difference. The bigger screen invites a more immersive computing experience. Touching the screen directly creates a very intimate connection with the applications. And the use of gestures dramatically reduces the visual clutter required to drive our mouse-and-keyboard machines.

It is very hard to articulate, but I am convinced that the computing experience 20 years from now will look remarkably like the iPad, and not as much like the Macintosh. I felt the same way 25 years ago, after using the Macintosh -- and that feeling was correct. The Macintosh, Windows and even Linux machines offer a roughly equivalent computing experience: a graphical user interface, driven with a mouse and keyboard.

Saturday, January 8, 2011

Straight Key Night 2011

The operating desk set up for SKN 2011.
Since building the "Novice" transmitter in December 2006, I have enjoyed operating it every Straight Key Night since. It's probably the only time I have this transmitter on the air all year, which is something of a pity, I suppose. 

The transmitter is paired with an equally interesting receiver. The two work pretty well together for 40m contacts

About a week before SKN, I fired up the transmitter to confirm everything is ready and found I could get no power out. I could hear the oscillator pretty well, but there was no grid current and no plate current.

Opening up the base plate immediately showed the problem: a 2.2 k 2 watt resistor in the oscillator plate circuit had overheated, and it had unsoldered itself from the terminal strip on which it was mounted. I replaced it with a 3.3 k 2 watt resistor, mainly because it had shifted in value to over 4.5 k! After that quick fix, the transmitter worked as it should.

This year was fortunate that I had my pick of operating time for SKN. As you can see in the picture, I had merely to ignore the modern equipment on the desk and enjoy exercising the homebrew year with my 35+ year old Japanese J38 clone key.

One of the consequences of being crystal controlled in the modern era is the certainty you must call CQ. This was not a problem this year at all. With 50 or so watts out, I had no trouble getting answers on my dipole. In fact, several times, I was called after finishing up a QSO.

My biggest difficulty was my arm kept getting tired. After about an hour of QSOing, I needed to take a short break to let my arm rest. Using a straight key is a lot of work.

In all, I worked an even dozen contacts. Six of those were stations in Texas. I enjoyed working Bob, KE5LYW, who I found out was a fellow pilot. I also had a great QSO with N4HAY, who was using a homebrew single-tube 6L6 transmitter running about 2.5 watts.

Close up of the homebrew receiver and transmitter. Note the
convenient location of the crystal holder this year.
Attentive readers should notice the transmitter sports a new front panel feature -- a crystal socket. This is much easier than reaching around the back of the rig to plug in a crystal when changing frequencies.

Only glitch I had was a bit of stability problem with the receiver. On a couple of frequencies, it would drift around a bit when the headphone cable was moved. If you note the very long set of adapters I used for the headphones, that may have contributed to the problem. I'll have to sort that one out for next year. Other than that, the receiver was a real pleasure to listen to, most likely due to the addition of a few capacitors.

2011 was a great outing for this homebrew gear. SKN is always a blast, and  a dozen contacts this year beats any previous year. Join me on the air next year.

Tuesday, November 16, 2010

Bencher BY-1

"I hate CW!" I heard a voice at a hamfest flea market recently. As I strolled up to his table, he followed up with, "You gotta help me by buying these keys."

I didn't feel like debating the finer points of operating CW with him. I was more interested in what was on the table: three sets of keyer paddles. The first was a a Heathkit HD-1410, which I knew to have a reputation for horrible feel. One other was a single-lever paddle, which I had no interest in. The third looked to be a Bencher BY-1.

I generally go to a flea market with a list of all the different things I'm looking for. I didn't this time, but I did remember I was looking for an inexpensive set of keyer paddles. The Bencher looked like it might fit the bill.

Back in 1979, when I was licensed as N8BHE, I found the progression of dits in my call difficult to send, so I opted to upgrade from a straight key to an electronic keyer. I bought a Ham-Key iambic paddle and built my own CMOS keyer. Now, the Ham-Key isn't the greatest paddle design. The base isn't quite heavy enough, the paddle arms pivot on large pins, which leaves some slop in the feel. But in 1979, it was only $30, and I've been using that same unit for 31 years.

I figure it is about time to get a second set of paddles. If you look around, you'll find they are not cheap.  There are none you can buy for less than $50, and most of them are well over $100. The item on my list read "cheap paddles." That meant finding something used, hopefully in reasonable shape.

I had used a Bencher before, back in 1980 in the Georgia Tech club station W4AQL. I remember my first experience touching those paddles. I slapped the handles so hard the armature came off the pivot. I suppose you have to use a more delicate touch than with the Ham-Key.... But I did have some success using it. This fellow had this unit marked $20. I offered him $10, then $12, and finally we agreed on $15.

As I walked away from the table with my purchase, another fellow suggested I tear the unit down completely and clean it, and it should work great. That's just what I had in mind.

Once I got home, I put the Bencher on the workbench. It was far grimier than I remembered, with a telltale film of yellow tobacco on the base and armature. During disassembly, I found the hold screws to be hopelessly bent, and one of the screws holding the round armature pedestal nearly impossible to remove. With vice grips I removed it, but this destroyed the head of the screw.

All of the metal hardware went into a small container filled with WD-40, which did a good job of removing the latent grime. I cleaned the base and plastic parts with Windex. This took off the grime, but some of the paint came off as well -- likely due to a long-standing chemical reaction of the dirt with the paint.

No matter, a couple of coats of flat-black spray paint and the base looks good as new. Then the tedious process of putting the components back together. I replaced the four screws that I could not reuse, and quickly re-assembled the unit and adjusted it to suit my fist. I followed the excellent instructions compiled by N1FN here.

The result you see pictured above. It looks great and the feel is good, too. I'm not as ham-fisted as I was back in 1980, so I haven't had any trouble springing the mechanism. The base is way heavier than the Ham-Key, so it doesn't tend to wander as much. I believe I'm really going to enjoy working CW with my Bencher paddles.

Thursday, November 4, 2010

How to Bust a Pileup

I've had a great time this past month chasing the four new entities from the dissolution of the Netherlands Antilles. Even with a modest station with a small amplifier, I've been quite successful in getting through the pileups. Sure, some hams don't even have a tribander or amplifier at their disposal -- but there's no reason they can't work DX. It may just take a little more effort.

The key to busting pileups is to listen. That's what the DX experts will tell you -- and they are right. The first thing about busting pileups is not to transmit. You can't listen when you are transmitting. 


But just telling someone to listen doesn't help if they don't know what to listen for. There are several things you need to listen and find before you begin to transmit.


First, you have got to hear the DX station. If you can't hear the DX, and hear him well enough to tell exactly what he is doing, there is no use transmitting at all. This can be very frustrating when you hear him work your buddies all around, but its the truth. If you can't hear 'em, don't even try to work 'em.


Next, once you can hear the DX well enough, you've got to know where he's listening. This is easy if he's working stations simplex. But, more than likely, for any reasonably sized pile-up, he'll be operating split. And that makes things more challenging.

If you have a fancy radio that allows you to listen to two frequencies at the same time, this the next step will be easier. Basically, what you have to do is listen to the DX station on his frequency, and then find the station he's working on his receive frequency.

You don't have to have the fancy radio -- you just need two VFOs and some nimble fingers. On the Elecraft K2 I use, you can hold down the A/B button, which activates the REV or reverse feature. This causes the radio to swap the VFOs it is using for receive. So, one moment you are listening to the DX station come back to someone, then you press REV to switch to the other VFO, and then hold it down while you tune around for the station being worked. But, don't hold it too long, or you'll miss the DX station's next transmission.

Sounds complicated, eh? Well, maybe. Figure also there's no guarantee you can actually hear the station the DX is coming back to. You might have to do this over and over again until you hear one. Then you have to worry that the DX station is staying in one spot -- he might be tuning around in the pileup. But the best place to be when you start transmitting is right around the place the DX station was listening last.

Once you've done this, it is probably time to start calling. If you need to tune your amp, please move a few kHz off the DX frequency before you start.

Your calls should be short -- just your full callsign, and then go back to listening. Perhaps you do this cycle two or three times, depending on the pileup. Once the DX station comes back to someone, there's no sense in continuing to transmit -- unless that stations is you.

Even though you start transmitting, you don't stop listening.

Who is the DX station working? Is he working stations in your area, or are they all on another continent? Perhaps he's working folks from all over. Listen closely to figure this out.

Who are the stations he responds to? Are they the earliest, strongest callers, or is he picking later in the pileup when the calls die down? Is he accepting or ignoring tail-enders? Figure out the pattern that the DX station is using, and use that information to place your calls better and better.

OK, you've done all that? Now is the time to have patience. Pileups can be huge random events, and if you keep on listening and carefully transmitting, you'll eventually get through. It may be on the first or second call, or it may take a half and hour of calling with no joy. Don't get discouraged.

Even so, there are a few that get away. Propagation will change, or the station will QSY or QRT. You can't help that, so don't worry about it. Most of all, don't let your worry interfere with your operating.

Careful listening can make all the difference. I've broken several pileups on the first or second call after listening to them to for several minutes. Good listening should tell you where to transmit, and precisely when.

Don't allow yourself to get frustrated and learn to enjoy the hunt.

Good DX!

Tuesday, August 31, 2010

Radial Clip Jig

Finished Radial Clip
When I was first putting down radials, I bent a few "clips" by hand. Once I figured out that I had to have one clip every 3-5 feet of radial, I needed a better solution.

Basically, a clip consists of about 4" of 12-14 gauge copper wire, bent double, with a large enough bend radius to allow a 12-14 gauge copper wire to fit between it. The resulting clip is about 2" tall, which is about right. Any taller, and you may have difficulty pushing it into the soil without bending it.

What I needed was a jig that would make it easier to cut the wire to the right length, and then bend the clip perfectly each time, perhaps creating more than one at a time. Grabbing a scrap piece of wood and a few nails, I quickly fashioned the jig you see photographed.

The jig consists of a large 16-penny nail and a row of small wire brads. A extra wire brad is placed about 4" away from the 16-penny nail, and serves as a measuring point.

Cutting the wire
First step is to slide the wire up to the 16-penny nail, and cut it just behind the furthest brad. One can do this several times in succession to create a bunch of wires the correct length to be bent into clips.

Next the wire is inserted between the brads and wrapped around the 16-penny nail. Several wires can be stacked at once and bent at the same time. I have the best success with about three at a time.

There you have it. With the jig it is no problem cranking out 50 to 100 clips with just a few minutes of work.
Bending the clip