How a Screen Full of Garbage can be a Diagnostic Indicator

(This is essentially a copy of something I posted in a Facebook arcade repair group not too long ago.)

I was replying to a post that had to do with a game that was showing garbage on screen but was otherwise not working. The type of garbage you see on screen can actually be a good diagnostic indicator. At least, it is a better diagnostic indicator than nothing on screen at all. Continue reading How a Screen Full of Garbage can be a Diagnostic Indicator

Lithium Battery Replacement for Williams and other CMOS Systems

So you have decided to reduce the risk of battery leakage damaging your precious Williams arcade or pinball board by replacing the existing AA batteries with a lithium (CR2032) replacement.  Great!  Lithium batteries like the CR2032 tend to leak much less than alkaline batteries so this is a good generally a good idea.

Note that I said much less than alkaline batteries – lithium batteries can still leak causing damage to your PCB!
You need to maintain them like any other battery system.

So now the question is, how long will the lithium battery last before it needs to be replaced?  I would suggest that you replace the battery as soon as it voltage-under-load drops to 2.8v.  Why 2.8?  Two good reasons.  First, here is a discharge graph pulled from the Energizer CR2032 datasheet: Continue reading Lithium Battery Replacement for Williams and other CMOS Systems

+43 Volt Error on a Alltek Systems Replacement MPU Board

So I was helping another collector in the area try to get a Bally Star Trek Pinball running. It had a Alltek MPU replacement board it in that would start to boot but then stop with 5 diagnostic flashes which indicate a problem with the +43v supply. However, when metered at the test point, the +43v looked grossly normal.

Got in touch with Alltek Systems support and the person suggested disconnecting the sound board and seeing what happened. The game came up with it disconnected, and the support person said there was something wrong with the +43v stuff on the sound board. Right where it comes in there is a diode (CR3) that the collector tested open one way, and about 94k ohms the other.

So a good diagnostic step for this kind of hardware, perhaps even with the original boards in it, is to completely disconnect the sound board and see if the behavior of the game changes.

Update: when I returned to that collector’s house, we lifted one end of the diode and tested it again.  Tested open one way but with a lower-than-expected forward voltage drop of about .350v where we expected more for a standard 1N4004 diode.  I called it bad and pulled the diode.  Had the collector solder in a replacement and the Star Trek came right up!

New Language and Compiler for the Fluke 9010A

I have always been fascinated with the older Fluke 9010A microprocessor troubleshooter. I have owned a few through the years and my current bench one has the serial port on it for transferring programs and data between the unit and a PC.

However, I never found its programming language (usually referred to as 9LC, the name of its compiler) very appealing. It feels more like a cross between assembly and script, and does not seem as flexible as it should be but that might be due to its age. So I sought out to “fix” that.

(The rest of this post was moved to the History page of the 10LC wiki.)

Frogger Problems

So I visited the arcade of someone I have come to know and while taking a look around and playing a few games, I stumbled across this screen on a Frogger:

Not exactly playable, if you catch my drift.  Went over the usual stuff, power, reseating, etc.  Voltage was a little low, and the power supply could use some maintenance because of a bit of ripple.  But was able to get it back up again.  When it booted, it booted into an odd screen and I realized it had some kind of HS kit in it.  This was actually nice because it included a RAM and ROM test that showed everything passed.

Went into the game and coined it up to play, and saw this:

Pretty sure that we do not want that many lives per game.  Seeing that this was a pretty strange issue, I thought to reconfigure things in the HS kit.  After readjusting things to 3 lives per game, saving the changes and restarting the game:

Much better, eh?

After fixing something, always be sure to actually try to play it and make sure everything is working right.

Dead Vanguard Board

So I came across a dead Vanguard that was for sale.  Described as only producing a boom sound effect and then a rumbling/static-y noise.  Bought the thing home along with 1.5 spare boards and did the usual checks: Power, Sockets (reseat), etc.  Logic probe on the CPU indicated that it was briefly running and then getting hung up and it looks like there is no watchdog on this game.  The sounds being made were from the sound board, which produces its noises without the main CPU being present at all.

Power takes a little longer than I would like to stabilize (several seconds), and was a tad low on the board, but adjusting it did not change anything.  It looks like the factory switching supply so it likely could use a cap job.

I got memory map information from MAME to try to figure out the memory map, and got a manual for the game.  The manual actually includes a memory map as well as which RAM chips are use in which RAM areas, which is really nice.

Connected up the Fluke 9010 and hit the Learn function.  When it was done, I noticed that the results did not match the memory map in the manual.  The first RAM section (CPU Work RAM) was not identified at all.  Turns out that section had stuck bits (2 & 3).  Replaced the socket and the RAM and the game mostly roared to life, with the exception of the power stabilization issue – it takes a few seconds after being initially powered on before the game will run stable so you have to cycle power several seconds after initially powering it up.  Monitor could use a cap kit but is in decent condition for its age.

Gonna hit that second board in the near future, initial tests show bit 8 is stuck high.

Quick Fluke 9010 Tip

If you use the Learn function on a board, and it seems to ignore an certain part of the memory map that you know for sure is a certain type (e.g a section of the memory map allocated to RAM), run the appropriate test on that area. Bet it will detect a problem with it.

I recently performed a Learn on a board and it failed to identify an area I knew to be RAM. Turns out that the RAM had stuck bits, which must have made the Learn function think it was something other than RAM.  So now I understand that the Learn function can also be used to spot problems with a board.

So-called Web “Developers”

So, I have been seeing this more and more.  I see the term “Web Developer” being applied to anybody that can do basic HTML5 and CSS scripting.  Even worse, I see the term being applied to people that do not know enough to understand how the back end works, or cannot even spell LAMP.

If you can do your job just using Notepad and Chrome (i.e. no compiler), with no back end services, you are just a “scripter.” Just make peace with that, and stop trivializing what real developers do.  And no, you are not writing a “web app,” you are scripting web pages (although maybe for someone else’s actual app).  Does PHP executing DB queries count?  Maybe – if you also (properly) designed the database it is working with.

Continue reading So-called Web “Developers”

Williams Hardware, Switchers and CMOS

So this keeps coming up a few times a year, almost like people completely forget about how to use Google every now and then.

Someone has a Williams 6809 hardware game like Defender, Stargate, Joust, etc.  They install a switcher instead of repairing the existing linear supply (which is  OK, people have their reasons), and everything works great, except for the fact that they occasionally get CMOS corruption and lose things like settings, bookeeping, and scores.

Is something wrong with the switcher?  No, something is just wrong with the CPU.

Continue reading Williams Hardware, Switchers and CMOS

Watchdogging and Corrupted Centipede (Bad POKEY)

Got to work on a busted Centipede that booted to a white background screen that briefly showed the start of the attract mode (things drawn in green or purple) before crashing, watchdogging and doing it all over again.  Test mode would do the same thing as well.

Disabling the watchdog (by grounding the WDDIS test point) did not help as the game would just essentially do the same things but just not reset after it crashed.

Continue reading Watchdogging and Corrupted Centipede (Bad POKEY)

Words to Watch Out For When Buying Arcade Games or Pinball Machines

I have learned through many years of posts, sales, people, auctions, and similar experiences that there are certain words and phrases that you need to watch out for when buying games, boards, etc.

Untested

The first one, and it is a biggie – UNTESTED.  Here is the truth: if dealing with a whole game, and it has an intact power cord, it is never “untested” – somebody tried to plug it in and power it on, guaranteed.  When dealing with intact games, presume “untested” means “I plugged it in, it did not work” – in other words, “broken.”

Now, sometimes “untested” really does mean untested.  For example, if someone just got a great bulk deal on a bunch of boards, and want to move them quickly, they may not want to go through the time and effort of testing each one.  For example, it is not worth building an adapter for a board that sells for $50 working when I can sell it for $30 untested – I would spend more than $20 of my time and materials building that adapter.

Things like power supplies may legitimately be untested because they might not want to risk damaging a board because of a bad power supply (not everyone has a rig to properly test supplies under load).  Same goes for controls, coin mechs, etc.  Might not be worth the time to connect and try out each one.

In general, just presume that Untested means the same as Broken.  That way, you are never disappointed.

Worked [time] ago when I put it into storage, on the shelf, etc.

This is another one.  “It worked 6 months ago when I put it into storage,” or “it last worked two years ago before I put it on the shelf.” Same as above – play it safe and consider that to mean untested or just broken.

It Just Needs This One Inexpensive Part…

This is another favorite of mine.  “It is broken and I am selling it for $100.  It just needs this one little inexpensive $30 part and then it will be worth $400, so this is a great deal!” Continue reading Words to Watch Out For When Buying Arcade Games or Pinball Machines

Perceived Hostility Between Hearing and Deaf Communities

So this is something that has been picking up recently. It feels like an aggressive cultural surge is forming in the deaf community.  The last one I was cognizant of was almost 15-20(?) years ago where there was this large push to try to eliminate initialized signs from ASL because they viewed as being too connected to English, which AFAICT was being viewed by some as a type of undue influence or control over, or oppression of, ASL.

This surge finally died down seemingly with the realization that an initialized handshape is an important and intrinsic part of certain signs, and probably should be left alone. That is not to say that some changes were not made, for example, I remember the sign for LIVE/LIFE changing so that it no longer uses an L handshape, while LIBRARY still uses the L handshape. Continue reading Perceived Hostility Between Hearing and Deaf Communities

Thoughts on Teaching ASL (ASL Instruction Opinions)

[Permalink: https://tinyurl.com/totasl]

So, first off, I love the Deaf community and have been a student of the Deaf World for about 25 years now. Now, I know that sounds like the beginning of racist rant that starts with something like “I don’t have a problem with black people, I even have black friends!” but please hear me out. Continue reading Thoughts on Teaching ASL (ASL Instruction Opinions)

Dead Gorf

So I found a dead Gorf on Craigslist.  It was an older ad, but was still available when I inquired.  Dude I picked it up from had done some pretty impressive restorations on some other games.

Anyway – it was dead alright.  Shows a blank screen that looked overly blue due to how the monitor was adjusted, no starfield was visible.  Slid the test switch over and power-cycled, but this made no difference either.

The previous owner had mentioned that he had done some work on it.  I saw some of his other previous work on other boards of his and while not perfect (some cold joints, or not enough solder in some places leaving “pits”), it was not horrible and definitely no worse than what I was doing when I started out.

Anyhoo, starting with the power PCB – the previous owner said he had already replaced the caps, but I wanted a second look at it, JIC.  On the solder side of the board, some larger traces has been lifted off the board during some previous repair work (I do not think it was his, maybe someone before him?).

It looked like the someone used a serious soldering gun to do the work, because there were scorch marks on the board(!) and flux was all over the older work too.  Continuity was where it was supposed to be, so I guess that while it was ugly, it worked. Continue reading Dead Gorf

Bringing Joust Back to Life

So it came to pass that I ended up with three cabinets for $100 each.  A Great Golf in a Midway cabaret, some Toaplan run-n-gun in a Taito Qix cabinet, and… A Joust(!) in its original cabinet.

I agreed to purchase all three sight-unseen.  When I get them all home, the golf game worked except for a rolling screen, the run-n-gun has an board issue where some sprites are being displayed at the wrong horizontal locations, and the Joust?

Well, the Joust was dead.  Simple static video (monitor needs a cap kit, too), watchdog barking, no response to  inputs, nothing on the LED on the ROM board.

Image-She's dead, Jim!
She’s dead, Jim!

Continue reading Bringing Joust Back to Life

Joust Showing 1 3 5 and a REALLY Effed-Up Screen

[This was extracted from a large article about getting a dead Joust operational.  I thought it made sense to put this part in its own post to help anyone else with a similar issue.  This post may reference content from an earlier post, so keep that in mind when reading.]

So at this point the Joust will run through its self-tests, show 1 3 5 on the LED, and will eventually enter attract mode and can even be coined up and it will play for a few seconds before crashing again.  While the screen is AFU, you can actually read text on it if you look carefully (just turn the audio off).  Pay attention to how the left 1/3 screen is being drawn differently than the rest – this becomes important later:

Continue reading Joust Showing 1 3 5 and a REALLY Effed-Up Screen

Joust With an Input Problem – 1st Player Always Runs Left

[This was extracted from a large article about getting a dead Joust operational.  I thought it made sense to put this part in its own post to help anyone else with a similar issue.  It may reference content from the previous two posts here and here.]

…So now I have a Joust that boots correctly and comes up into its attract mode normally.  However, after coining it up and starting a game, I still have some issues – player 1 starts running to the left non-stop!

Opening the control panel shows the switch is not stuck, and disconnecting its harness did not change the behavior, so I have another board-level issue to resolve.  The input board multiplexes two sets of switches into a 6821 PIA, and the switches come in through one of two header connectors on the board.

Continue reading Joust With an Input Problem – 1st Player Always Runs Left

How to Sell Your Arcade Game

Correctly Manage Your Expectations Before You Try to Sell Your Arcade Game

Something I see far too often are outlandish prices when uninformed people try to sell a game.  I usually see this with someone that originally overpaid (badly) and is trying to make their money back or thinks all games appreciate in value.   For example, “I bought this Street Fighter II 10 years ago for $1500(!) and I am sure it is worth $2500 now!

First: It Is Not Worth What Google Tells You

Occasionally I see someone that has a busted-ass Pac-Man, in a generic converted cabinet with water damage, and a dim monitor, and they Google “Pac-Man Sale Prices” and then think that they can sell it for $1200.  And have the audacity to believe they are getting low-balled when someone offers $250.

No, you are not getting low-balled.  You just did your search (“research”)  incorrectly.  You shoulda Googled something more like “converted damaged Pac-Man prices.” But hey, you did not know any better.  Take the advice of people that know more than you about things like this.

Also, just because someone paid $xxx for that game in the past does not mean that anyone will now.

Second: It Is Not Worth What eBay Tells You

Some people search eBay for prices and use the final sale price.  But before you do that, make sure your game matches up perfectly with the listing you are looking at for your “research.”  Do not try to compare your “home use only” Star Trek pinball with one on eBay that was clean, shopped, with new rubbers and no peeling paint on the backglass or playfield.

And, remember: that price is the price that ONE person was willing to pay.  Look at the bidding history, if you can, to see what most people were willing to pay.

Bigger is Not Better

Continue reading How to Sell Your Arcade Game

Sanyo 20EZ Video Inversion (Parts Kit) Searchable Page

On Bob Roberts site, there is (or was, if the link is broken by the time you read this) a scan of a page that details how to add the missing parts to the Sanyo 20-EZ monitor chassis to allow it to perform video inversion.  Since the page was scanned and not run through an OCR process, the text is not searchable.  As a service to the arcade collecting/repair community, I provide this HTML based, searchable version of the document.

(Note that I am not responsible for the use or misuse of this information, and I might have copied something incorrectly!  No warranties expressed or implied, and the risk of use lies with YOU!  YMMV.) Continue reading Sanyo 20EZ Video Inversion (Parts Kit) Searchable Page

Merit Megatouch 5 Issues

Offered to help out a friend whose husband had an upright Megatouch 5 (CRT-260 motherboard) that had some issues:

  1. Would randomly crash when touching the touchscreen
  2. Would randomly hang or crash even when left alone
  3. After left running for a little while (like, 15 minutes) calibration would “drift,” causing touches to track incorrectly

After opening it up, the touchscreen was covered in dust and the neoprene strips on the edges of it were pretty torn up and had a bunch of debris on them.  Cleaning the screen, strips, and then reapplying the strips with some thin double-sided tape cleared up the touch-the-screen-and-it-dies problem. Continue reading Merit Megatouch 5 Issues

Hopper Error (HE) on Sammy Aladdin Pachislo Machine

I picked this one up last year with a generic E1 error code for $50.  Reseating all connectors and performing a master reset (reset key in and turned, internal power switch cycled, reset key removed) brought it right up.  Been working fine for a little over a year then the hopper quit working.  Display would show “HE” when it tried to spit out tokens.

Removed hopper and inspected it – nothing jammed up, and all switches/optos in the bottom were functioning correctly.  When the hopper is started (using the switch within the cabinet), it moves just a slight amount.  Removing the motor shows that the motor spins about 1/3-1/4 rotation and then stops, with no resistance on the gear/spindle when I turn it manually.  If I leave the motor powered, I can start to smell that electrical smell that tells me something is bad within the motor. Continue reading Hopper Error (HE) on Sammy Aladdin Pachislo Machine

Understanding ASL Students Signing Songs

There is a big backlash with ASL students practicing by attempting to translate (note: translate, not interpret) songs into ASL.  Much of the reaction is negative and often mentions things like how the translation is poor, does not make sense, does not follow proper ASL grammar, etc.  And all of that might be 100% true – but that does not necessarily mean that the translation is inherently wrong.

Sometimes, the reactions are completely over-the-top hostile  – and fail to offer constructive criticism or suggestions other than “don’t do that you audist asshole!” and then blame a negative response to that behavior on “hearing fragility.”  Reacting negatively to negative behavior is not “fragile,” you would do the same.  Remember these people are likely grown adults yelling at teens and early 20-somethings that are still in school.  (I will also suggest that this behavior is probably is not the best way to normalize the use of ASL and help with its acceptance, especially when dogpiling takes place and people just pile on the insults.)

Anyway, before we go any further, one has to understand that songs are a really big part of initial language acquisition and development for hearing people.  As babies we are even exposed to language and songs being sung to us while still in the womb!  After birth, we are sung to by our parents and exposed to songs all the time.  We have a strong affinity for songs and will often try to find ways to utilize songs when trying to learn a new language, like translating an English song into Spanish (or French, or Arabic, or Navajo, etc.) or vice-versa.

Now, songs are complex things.  They are more than just words (vocals) that are are spoken with music playing in the background.  Yes, in the most basic sense, a song is melody and vocals.  Buy how that melody is played and how those vocals are sung is a significant part of the song.  Is it fast or slow?  Are the notes high and happy, or low and somber?  How does the vocal artist present the vocals?  Crisp and sharp, or long and lingering?  How are the words actually sung?   Use of octave, vibrato, length of a tone/word, etc. all play a part.  In some cases, the vocals might not make much sense on their own!  (More on this below.)

All of these things come together in the song, and can usually invoke an emotional response – for example, it can make you feel happy, sad, wistful, triumphant…  complex songs can invoke a combination of emotions at different times in the same song, just by changing the way the music is played or how the vocals are sung.   Sometimes, even the exact same words can evoke a completely different emotion just by how they are sung.

Now try this – think of ASL poetry.  What makes an ASL poem different than just normal conversational signing?  Think about the various parts of it that come together to actually make it happen: meter, rhyme, rhythm, alliteration, etc.   The nuance of an ASL poem might include how a sign is formed, how it moves, how it transitions to the next sign… an ASL poem might just have something in it that is hard to describe – a je ne sais quoi quality.  If you have a favorite ASL poem, think about it now,

Now, I want you reduce the first few seconds of that ASL poem to gloss.  As an example, I will use the first few seconds of Moon in my Bedroom:  NIGHT DARK BEDROOM BED I LAY ON EYES-CLOSED.  Even written in prose: In a dark bedroom at night I lay on my bed with my eyes closed, the poem looses something, right?  The words are just not the same as the poem – it looses the emotion, the expressiveness,… the je ne sais quoi.  Written English cannot easily capture or replicate all of the things that change simple signs into ASL poetry.

Well, the same thing happens when students try to translate a song to ASL.  The first step is usually to reduce the song to its lyrics, which is just like reducing an ASL poem to gloss – something is GUARANTEED to get lost in the translation.  (Just as written English cannot easily replicate the entirety of an ASL poem, it cannot easily replicate the entirety of a song.)  After that is usually an attempt to find the corresponding signs to go with the gloss, and then possibly an attempt to modify the production of the signs to try to match some of the nuance of the original song.

In some simple cases, this works well.  Pretty much every first year ASL student can successfully do ROW ROW ROW YOUR BOAT.  But with more complex songs, the result will just be missing something and that contributes to the ineffectiveness and quality of the result.

Along that example, I present to you parts from two of my favorite songs from one of my favorite groups: Bury My Lovely and Take Me As I Am from October Project.

First, Bury My Lovely:

Cover the mirror, hide in your dreams.
Forget what they told you, forget what it means.
A picture worth a thousand lies
The memory and the mirror
Nothing but what came before
Nothing but a closing door

Now, those words on their own might not make all that much sense. – you have to look at them with a little poetic license in mind.  But the point is that the appeal of a song can be more than just its vocals – the way this particular singer sings these vocals in intoxicating in my opinion.

Now how about Take Me As I Am, sung by two different vocalists, indicated by 1 and 2:

1: Take me as I am
2: Someone you don't know
1: Even in the dark
2: You may not be sure
Both: Take me while you can
1: I can see you standing in the smoky entrance
Both: Giving up your good intentions

Now this song would really require two performers, or at least a left-right-center role-shift.  But again, looking at just the words, much of the song is lost.

An inexperienced ASL student might just translate the words as they are.  And the result might look incorrect, or even like gibberish, but that is what those words actually are, so in a broad sense, the translation might actually be correct, although the interpretation might not be.  It is also easy to make similar mistakes if you are unfamiliar with the source material.

You have to remember that ASL students are not necessarily interpreting students (especially first and second year ones that are just trying to practice and trying to get over performance anxiety) – not everyone takes ASL classes with the goal of becoming an interpreter, just like how not every Spanish language student wants to be a Spanish interpreter.  You might have to lower your expectations and raise your tolerance a bit, and not make the ASL/Deaf community appear as unforgiving as some people (unfortunately) can make it out to be.

Outlook Taking Hours to Download Email

JIC it helps anyone else out there.  For no apparent reason, Outlook 2010 started taking hours to download emails that usually came down in minutes.  And when I say hours, I mean 3-5 hours!  The app would remain responsive for the most part, but would consume 100% of a CPU/core.  It would download a number of messages and then just pause for 45 minutes or more.

Turns out that the problem was my configured %TEMP% directory was filled up with almost 65,000(!) entries.  An automatic update of my Antivirus software failed, and started looping retry attempts.  This filled up the temp directory with little 1KB  files until it crashed.  It also filled up my event log.

Seems that Outlook gets really cranky when it has trouble with its temp directory.

So if you suddenly start having strange issues like this with Outlook, make sure your temp directory is not too full.

Dig Dug with Floating Pins

Going through my boards, I came across a second Dig Dug board.  This one boots to static garbage and no sound.    Watchdog is barking.

Removing one of the CPUs gets different garbage.  Tried replacing with a known good one, no change.

Checking the pins shows me that a couple of the data lines, from D3 to D6 (I cannot remember which ones right now) are completely floating!  Rarely see that.  On a hunch, I replace the CPU’s socket, but this changes nothing.

Board traces go two a few chips (a 7474 and some other multiplexers or demultiplexers), and the floating lines seem to follow them.  But following the traces is tricky, so I gotta dig up some schematics to see what the Hell is going on.

Roc’N Rope PCB Issues

Got an interesting problem with a Roc’N Rope board that I recently connected up to the new JAMMA test rig.  It has all its sounds, and plays correctly, but the text and tiles (e.g. the title graphics and the graphics used to build the levels) are all upside-down!

When the screen is flipped for cocktail mode, the text/tiles are still upside down.

Going digging through the schematics to see what’s what…

Update!

Mark Spaeth gave me a lead on a couple chips on the board that may be the cause of the problem.  That, combined with the schematics lead me to find out that I had a 74174 with a stuck output (pin 10).  I first clipped and lifted the pin for that specific output to ensure that nothing else was pulling the output and confirmed that the chip was bad.

After clipping and desoldering  the chip and replacing it with a socketed NOS 74174, all of the text and tiles are right side up again!

RnR Fixed

Also, I found out that I have another RnR board, this one with a graphics issue involving the sprites.  Should be able to get that one fixed as well, and then I will have two original RnR boards (both with their original serial number stickers on ’em).

OK – this other RnR board just had to have some of its chips cleaned and/or reseated.  It is looking good now as well:

Second RnR Board

 Nutshell: Flipped tiles and text, cause was a 74174 at location G15 with a stuck output @ pin 10.

Manager Red Flags

(Attention lawyers and previous employers: the following information does not specifically identify a particular entity. 
You have nothing to worry about unless you think this represents you or your company and you know there is some truth to it.)

As I have worked with a few different kinds of managers/supervisors throughout the years, I have encountered one or two that had various red flags that I ignored but should have paid attention to.  Here, I share some of these red flags with you in the hopes that you do not end up getting screwed.  Not saying I got screwed (well, much), but you may! :mrgreen:

Red Flag # 1 – People tell you to watch out for her/him.
That should be obvious, but sometimes your first impression (which was good, in my case) clouds your better judgement.  Pay attention to what other people are saying about this person.  Even if you treat it as rumor, keep it in the back of your mind.

Red Flag # 2 – She/he has a long history of dismissing or demoting employees with excuses of “no confidence.”
When this manager joined us, it was because of a merger with another company.  My current manager was demoted in short order because of “no confidence.”  Note that he had been with the original company from the start and had been supervising/managing developers (quite successfully, I might add), up to that point.  Other people in the company (the new one in the merger) often mentioned her/his tendency to do this.

(As an aside, I strongly believe that one of the things that would greatly benefit the business world in general is a process for employees to call for no confidence in their manager/supervisor.  Once managers/supervisors realize that they can be called to task for the otherwise unknown shit they pull on their subordinates, things may change for the better.  Companies need to realize that most of the real work is done by those that have not yet reached their level of incompetence.  It is time to move out the ones that are not just incompetent, but possibly abusive and reduce the productivity of their subordinates.)

Red Flag # 3 – She/he exhibits bipolar behavior.
Not in the clinical sense, but you notice that she/he can run hot and cold at the drop of a hat.  Be more caution if this flipping between states is a result of perceiving you as a threat.  For example, she/he once asked if I wanted to be a manager “because I was good at it,” referring to how I worked with developers.  But when I put on my yearly review form that I wanted to become a lead/manager of the team, I was informed that she/he did not think that I would be good at it.  WTF?

Red Flag # 4 – She/he takes credit for things that she/he has nothing (or very little) to do with.  These types may exaggerate their involvement in the conception and implementation of (novel) solutions, or have their name placed on things that were conceived and implemented long before they were even around.

Red Flag # 5 – She/he is personal friends with one or more people in upper management.  By “personal friends,” I do not mean taking the occasional plane ride together, I mean things like frequently getting together on weekends, crashing at each other’s place, etc.  In some (less professional) companies, this can end up being Carte Blanche to do just about anything.  People in this position can become assholes to their subordinates, just because they can, and they have in the past without being called on it.  As as you may find out, the human resources department is sometimes just upper management’s bitches, so people like this are never correctly identified by their pattern of behavior and removed from the company.

Red Flag # 6 – She/he will undermine your authority over, or the respect you receive from, other developers. 
One specific case I can recall is with a problem one of our plug-ins had with another plug-in from another group.  Both worked fine separately, but when loaded into the same application, the other plug-in would sometimes not cleanup its interface correctly and would leave a window on screen that was broken, and would raise exceptions whenever it was touched.
Now, we had access to that other plug-in’s source code, so I wanted to load it up in the debugger to see what was causing the crash.  My manager at the time effectively berated me for this idea, that it was not the way to do things, and saying that “in her/his time,” we never blamed stuff on other developers.  (I never said it was the other group’s fault, I just wanted to get more details on what was happening.)  And then she/he had me make (random) changes to our code to see if we could get the exception to go away.
After a couple of days(!) if no results, she/he then stated in an open conference call “I guess we will have to find someone that thinks outside the box, then,” with other members of my development team present.

Well, I hope that helps… someone…

Agile Development – Scrum Pitfalls

I have been subjected to a few so-called agile development methodologies over the years.  Most recently, Scrum was the one in question.  Well, it was kinda-sorta-almost Scrummish, which means it was not really Scrum at all, but we will ignore that for now.

All in all, the use of stories and a Wiki to keep track of development, testing, etc. was a really good thing.  It kept developers (er, me) focused on what needed to be done, keep straight how it was gonna get done, and identify any problems that would prevent it from getting done.

Add to that the daily 10 minute standup meetings, which was the place to specify to everyone else on the team what you were going to be working on today, and what, if anything, was standing in your way.

However…

There were also some things that got in the way of using all of these tools, and those things tended to be the immediate (and sometimes upper) management, and the business side people.  Here are the three biggest problems we (I) had with things.

Problem 1 – everyone needs to use the Wiki!

More often than not, stories were written by our immediate supervisor/manager after getting verbal(!) information from our business side person.  The resulting stories were usually spot-on for what the business side had in mind, but not always.  When they did not jive with the expectations of the business side person, the developers were to blame, even though we were just following the story!  The supervisor rarely took direct responsibility for any miscommunication.  This would not have been a problem if the business side (and any other interested parties) used the Wiki for its intended purpose.  At a minimum, they should have looked at the stories written by the supervisor to make sure that everything was kosher.

Problem 2everyone needs to use the Wiki!

The Wiki was used for just about everything development-related.  What needed to be done, how it was going to get done, how it was going to be tested (the QA team members would also use the same Wiki), and, most importantly, show the progress of a story and its tasks.  This was good.

What was bad, is that developers often would get contacted directly by either our supervisor or our business side person to check on the status of things, or get details on what was being done or how it was being done.  We just spent 10 minutes updating our stories so that anyone could find out what is going on just by clicking a few links.  Now we get to spend more time updating this person or that person.  It is not that the time taken is a big deal.  It is the act of being distracted away from whatever we were working on.  Having to switch gears throughout the day to answer questions that have already been answered on the Wiki is not just a waste of our time, it shows a lack of respect for our time and what we do.

Problem 3Everyone…  Needs…  To…  Use…  The…  Wiki!!!

Meetings further exacerbated this problem.  Sometimes, questions would be asked during the standup meeting that were already answered on the Wiki.  Sometimes, hours prior to the standup.  Not only does this show a lack of respect for the developers, it shows a lack of respect for other people in the meeting as well — their time is being wasted here, too.  It also shows a lack of respect for the development process — we have the Wiki there for a reason.  Use It!  If our examples (anyone above us in the food chain) do not respect the system, then why should we?

Standups were not the only problem.  If any meetings were called that involved other people (like the business side), we would often get stuck answering information that was not just recently on the Wiki, but stuff that may have been answered at the start of the iteration, which may have been more than a week ago!  This is not just disrespectful, but it is a waste of money as well.

Assume that we have a 7-member team that has 5 developers, one supervisor and one business side person.  Assume an average salary of $100K for each developer, $175 for the supervisor and $200 for the business side person.  If the business side person takes up 15 minutes of a meeting asking a question (and getting answers) for something that was already on the Wiki, that costs the company $$$ (remember: time is money).  How much money?  Well, going by contractor’s math, a salaried person’s corresponding hourly rate is ~salary * .0005.  Examples:

$100,000/year ~=  $50/hour.   Rational: assume ~250 working days in a year (including 2 weeks vacation), at 8 hours a day, that comes out to 2000 hours.  So, 2000 hours * $50/hr = $100,000/yr.

If the business person spent 15 minutes reading the Wiki, that would only be 15 minutes of their time, so that would cost the company $25.  By wasting 15 minutes of time in a meeting with the developers and the supervisor, this costs the company $109.37.  ($84.37 of everyone else’s time plus the $25 for the business person’s time.)  Check the math yourself if you do not believe me – more than 4 times as much time and money is wasted!  Big difference, eh?  Even by calling a single developer, and chatting for 15 minutes, this costs the company more than necessary – it costs the business person’s time, the developer’s time, and the time for them to switch gears back to whatever they were doing before the unnecessary interruption.  At a minimum, this is $37.50, and 15 minutes of developer time where they were doing something other than development.

A simple way to avoid this problem – everyone in a meeting should assume that everyone else’s time is at least as valuable/important as their own.  Once you start thinking like this, you may stop wasting other people’s time as easily as you once did.

Conclusion: using any agile development methodology and its tools is probably a good thing.  But you must get everyone involved to buy-in and use the system.  Having anyone (including those higher up on the food chain) refuse to use the system can make others wonder why.  If anyone is too good for the system, then why are we saddled with the burden of using it?  If there is a senior-level manager that thinks that they are too important to click a few links on a web page, then fine.  But this should be handled by a lower manager, not by the developers themselves.

The developers have a job to do – let them do it.

Blog Site for myself, and my friends


Spam Karma 2 has sent 0 comments to hell and 0 comments to purgatory. The total spam karma of this blog is 0. What's your karma?