Take the Advice you are Paying for

After you have been doing something well for a number of years, you begin to gain experience and wisdom regarding it. Generally, this translates to a higher salary and/or rate, as it should of course.

Companies pay this higher salary/rate because of that experience and wisdom. But it makes no sense to have that wisdom ignored by the people you work for. When that happens, it is nothing but a waste of your time, their money, and is demonstrative of complete ignorance of your experience.

And as usually the case, when other people come from a position of ignorance, they tend to inflict the problems it causes on others, instead if correcting their own problem (i.e. their ignorance) first.

The moral – if you are paying someone $167K (or more) a year, you are paying for their knowledge, experience, wisdom, and advice. Time to start getting your money’s worth – take the advice you are paying for; do not unnecessarily question it, and realize that despite your age and position, this person might know something that you do not.


Oh, and to clear it up, this is my point of view on the differences between knowledge, experience and wisdom:

  • Knowledge is what you get from schools and books, magazines, articles, training, self-study, etc. (e.g. learning C++, VB, COM and Java)
  • Experience is gain you get by applying that knowledge in real-life situations (e.g. using C++, VB and Java to solve particular problems)
  • Wisdom is what is learned from the results of the experience (e.g. learning when to use C++ over Java, Java over VB, and what things should and should not be a COM object, etc.)

Dumbass Masshole Driver

   OK – here is a little tip to drivers out there that have not yet figured this out: WHEN BRAKE LIGHTS COME ON, IT GENERALLY MEANS THAT THE VEHICLE IS SLOWING DOWN!

If you are behind said vehicle, it means that YOU will likely have to slow down as well. RIGHT NOW.


Today while driving in in I93 Northbound, a male Masshole in an SUV (which was much too big for him, BTW) rear-ended a pickup truck in front of him. It was light impact; looked something like a 20MPH difference to me.

The Stupid Masshole part is that this accident was completely avoidable. Traffic was coming to a stop, and the woman driving the truck was coming to a stop due to the other vehicles stopping in front of her. Pretty simple idea, huh?

However, the dumbass in the SUV, who could clearly see the brakelights in front of him (both on the truck and the other vehicles in front of that truck), seemed to be completely ignorant of the fact that brakelights generally mean STOP!

This Masshole, true to sterotypical form, continued to close on the truck until it was too late and then *BAM*!

So here is your little tip for the day. Generally, the further you are from an object, the harder it is to detect that you are closing in on it. As such, if you see brakelights on, SLOW THE PHUCK DOWN! Better to come to a stop a couple of car-lengths too soon than to end up in someone’s trunk.

Goindol

Problem: Board boots but does not complete POST. Halts with some on screen garbage displaying BAD ROM 5 on more often than not. ROMs were clearly marked on the board, so I yanked ROM 5, read it and ran it through ROMCMP. It came up as unknown. Sounds bad to me!

Located a replacement ROM image and burned to a new EPROM (uh, after finding a replacement EPROM that would erase and burn correctly – that took a good hour and change). Verified the new EPROM was correct, loaded it into the game and…

BAD ROM 5

OK… I pull the board and start a visual inspection. Notice a section of the board with about 5 or 6 scratched traces. Two of them are broken (no continuity). Jumped them with some wire-wrap wire and the board comes right up! I do not yet have a way to test inputs yet, though…

Solution: Reburned ROM 5, jumped two broken traces. (Inputs unknown.)

Finger Injury

While cutting carrots with my favorite knife (serrated and sharp as hell), I cleanly sliced off a small part of my index finger on my left hand! It did not hurt too bad – anyone that has cut themselves with something really sharp (or been cut by something really sharp) can understand. It is a strange feeling, not really painful. The pain… well, that comes after.

The bleeding was not severe, but I could not stem it after applying pressure for several minutes, so I had to revert to a little silver nitrate (looks a little like a matchstick). Now, that effing hurt! Never felt anything like THAT before.

Anyway… I had to keep my finger wrapped up for a few days, and one of the things I got used to rather quickly was typing without it. Now that it is almost healed over, I am trying to start typing with it again, and it takes conscious effort to do so! I type with it for a little while, and then I start keeping it lifted and hitting its usual keys with my middle finger!

Amazing how quickly our bodies and/or minds adapt to things like this…

Political Correctness is wrong – yer feelings do NOT matter!

As I write a post on Code Project Here, I think about how being PC has turned many of us into a bunch of wimps.

These days, you cannot even finish telling a joke without someone interrupting saying that they are offended by what you are saying, and after acknowledging them and then trying to finish the joke, they continue to interrupt you: “I don’t think I am comfortable with the content of this joke.

Well then… If the problem is that you are not comfortable with the content, then the problem is that you are not comfortable with the content, and you (not everybody else) should maybe do something about it… Like… Oh, I dunno, maybe

LEAVE!

-And leave the grown-ups alone so that the joke can be finished and someone can get a laugh from it? It is completely OK if you cannot take the joke. And for the most part, other people will be comfortable with your limitation(s), as well. However, it is inappropriate to steal the enjoyment of the joke just because you cannot take it.

Here is a little fact: it is OK to be offended! Really! If you are walking down the street and see a billboard for a movie that shows a little too much skin for your taste and you get offended, all you have to do is BE OFFENDED, stop looking at the billboard, and just keep walking down the street minding your own business. No need to call a press conference to bitch about it. Something on the radio or TV that you do not like? Fine, STOP LISTENING, WATCHING, or just get off your butt and change the channel/station. You will be OK… The world will go on. Really. Trust me. It is OK if you cannot handle anything, but try not to involve others in your limitations.


IMHO, Political Correctness is based on a flawed assumption: everyone’s feelings matter. Why is this a flawed assumption? Because it fails to take into account one very simple and all-too-true concept: some people are just too sensitive. Sometimes, you just have to learn to deal with it, and not expect the rest of the world to change for you.

Parents of small children understand this. Just because your son took a toy from his big sister is not a reason for her to start screaming and crying. It is not that big of a deal, and it does not require all that drama. So while we correct the son so that he learns not to steal things, we also teach the daughter that some things are just not worth crying about. The old saying about not crying over spilled milk comes to mind. As the daughter grows up, we hope she learns which things are worth crying over and which are not.

If your child got upset and started crying each time someone spilled something on the table, would you go out to a restaurant and instruct all patrons sitting next to your family not to spill anything while your daughter is around? Of course not! You would teach her that spilling (or having something spilled) it is not a big deal, and not worth crying over. Political Correctness does the opposite – it not only requests, but REQUIRES that no one spill anything while your daughter is around! Does that not sound a little stupid to you?

Here is a little-known fact – I am generally offended by organized religion. Actually, I find most forms of religion greatly offensive. But I do not go around work demanding that people stop wearing crosses and/or remove pictures of Jesus from their workspaces. Trust me – if I can handle seeing crucifixes and the Jesus Fish everywhere, YOU can handle the crude joke!

The worst thing about the concept of PC is that far too many people are naive enough to believe that bring PC is the same as being professional. This is just plain stupid. Here is a small example – assume you have someone suffers from mental retardation. You can refer to them them in a few different ways:

  • As ‘Tard
  • As special
  • As Mentally Retarded

Calling someone that suffers from this condition “‘Tard” is not professional, nor PC, nor even close to correct. In fact, it is idiotic. That much we can agree on. Moving on.

“Special” is the PC or nice way to put it. But as far trying to provide proper assistance to this person, it does nothing! Why? Because it fails to correctly identify the condition that the person has. And if you do not know exactly what is wrong, you cannot render proper assistance.

“Mentally Retarded” is the professional way to put it. It does not sugar-coat the truth, nor does it obfuscate the underlying problem. As such, it puts the problem right out in the open, where it can then be addressed correctly.

You do nothing for this person by calling them special. If anything, you only do something for yourself by making yourself feel better about how you address that person’s problem. That is a bit selfish, if you ask me. Additionally, you actually might end up hurting them by doing so, because they may not get the assistance they require. Imagine having a school called Foster’s Institute for the Special. If you had one child that suffered from Asperger Syndrome and another that suffered from mental retardation, can you tell if that school is able to help either or both of your children?

Now, some people with limited facilities actually consider it derogatory to identify someone that is mentally retarded as “Mentally Retarded”, or someone that has autism “Autistic”. Where does it end? Does short become “vertically challenged“? Do those that are bullies become “nice challenged“? If you cannot type, are you then “keyboard impaired“?

This is not the fault of the words themselves, it is the fault of those that would use them in a derogatory fashion, and those that are too sensitive to handle it. But as is the case with many things, the solution is education, so that these people better fit into the world. Not trying to change the world to accommodate those people. After all, it is a great big world out there.

Short People and Big Cars

Having driven a decent amount of miles for my age, in a variety of vehicles ranging from motorcycles to my mom’s double-cab dually with a six-horse gooseneck trailer, I can truthfully say that one of the most scary things out there are people driving vehicles that are way to big for them.

In general, I have always believed that you should never drive a vehicle that is taller than you are unless you have a real reason for doing so. For example, if you have to haul a fully loaded four-horse trailer, you are likely not going to be pulling it with a Neon! Likewise, if you have to (read: it is your job to) drive a bunch of kids to and from school, a school bus fits the bill. If hauling large amounts of cattle, a semi/tractor-trailer is appropriate. Got three kids? The Dodge Grand Caravan makes for a safer bet than a Navigator, and is easier to park, especially when all you are doing is bringing the kids to and from Chuck-E-Cheese’s.

However, if simply taking your little 5’2″ ass on an all-blacktop 20 minute drive to and from work, you do not need to be driving an Escalade, H2, or Land Rover. If you are driving an SUV that is taller than you, and the most off-roading you have ever done was pull it into the backyard to drop off bags of mulch, or the most camping you do is when you are taking a nap in the backyard, you are likely in the wrong vehicle.

Nothing is scarier than driving at 75+ MPH on the highway and seeing someone closing in on you who can barely see over the steering wheel let alone over the side of their car when doing a lane change. That is real fear. At nighttime, when it is already hard enough to correctly gauge distance, the last thing you need is some dumbass on your tail illuminating your interior due to the height of their headlights.

Have we gotten so stupid that everyone needs to be driving a surrogate penis now? Even when their travel is so limited that nobody of any significance will see it? Oh, and how is that fuel bill treating you these days?

Geeze…

You know you are fat when…

If you are one of those people that deep-down really knows that they are fat, but still kinda hope that you are not as fat as you think, or worse yet, you are one of those people that really is fat, but you do not think that you are, here is a real simple acid test to try:

Casually mention to someone that you know that you are starting a diet. They are likely to respond in one of two ways:

  1. “Hey, that’s great!”
  2. “Diet? What do you need a diet for?”

If you get the first response… Well, you already know what that means.

Nothing like the shattering of denial to brighten yer day!

NULL != NUL

I continue to find it rather amusing that even (so-called) experienced developers will use fundamentally different concepts interchangeably, even after doing this for so long.

For example, I have seen documentation by developers that mention nul values in a database table, or worse yet, NULL-terminated strings, and NUL pointers.

Now, some that simply miss the point will be saying something like: “In C++, NULL is zero, and the NUL ASCII code has a value of zero, so they are the same thing!”

Wrong.
Continue reading NULL != NUL

Resources

Arcade Repair-Related Resources

PAC-MAN Information (similar hardware) http://www.csh.rit.edu/~jerry/arcade/pacman/
Arcade Game Over http://www.arcadegameover.com/board_repair.html
Coin Operated Video Game Conversions http://www.marvin3m.com/video/
Pac Man Info (very detailed and very technical) http://users.erols.com/mowerman/pacfile.htm
Pac-Man Hacks http://www.purecope.com/pacman/index.htm
Romident http://www.system16.com/romident.html

Continue reading Resources

Unknown Atari Kangaroo Board

I bought two or three sets of unknown/untested/bad boards sometime last year. I have recently started going through them to determine the severity of their problem(s). (This is taking a surprisingly long amount of time due to the time it takes to create a JAMMA adapters for each unique interface! :/ )

Anyhoo, I came across a complete, intact Kangaroo board last weekend! After creating a minimal adapter (Power and Video), the board came right up! I tried its self-test and it passed. After watching the attract mode for a little bit (~30 seconds), the game started to show some visual artifacts on the RHS of the screen. They were horizontal blurbs that looked like multicolor static. However, each of the blurbs, while in a random vertical location, were identical.

Continue reading Unknown Atari Kangaroo Board

Top of the Food Chain, Baby!

Something that has always bothered me… I have always considered Software Developers to be pretty much at the top of the food chain when present in a software company. And that is not just because I happen to be one! Please allow me to explain…

If you are a software company, then your whole business is about software. Hence, your most valuable asset is your group of software developers! Yet many software companies treat their developers as disposable items, when they should be treated as the least disposable asset.

Another thing: software developers are generally the only ones present within an organization that can be fully productive (and make money) on their own, taking on the roles of almost all other members of an organization. For example, a single software developer can start their own company, do market research and design, architect, develop, test, manage, package (for deployment), and market a software product. They can also do their own user support. Now, of course, they may not be at good at marketing, as a large organization’s marketing group, but they at least CAN do it to some degree. Can people in the marketing group do that? How about the H.R. or Sales groups?

On the other hand, almost all other people/groups present within a software organization need the presence of a software product (hence, duh, the software developers) to do their jobs. Without a product, the marketing department has nothing to sell. The QA department has nothing to test. Project/Product management have nothing to manage. And without all that, the CEO has no company to lead. It all starts with the developers!

Using the above example about how a developer can successfully take on all those other roles in the organization, when is the last time you met someone in marketing that can do all that? Or in support? Or QA? Or any levels of senior management or executives?

Also, when is the last time you saw a corporate announcement (from a software company) that seems to credit/mention all other groups in the company except for software development? Dunno about you, but I sure see that shit a whole lot more than I should. Developers do not ask for much; we expect to get recognized for doing our part, and expect to get rewarded accordingly. Sounds pretty simple, huh?

Writing code for 8+ hours a day takes a bit more work and brain power than cold-calling someone, taking a client out to lunch, or bitching at developers about missing a milestone after you “adjusted” their estimates without their permission or guidance!

Something for managers/executives to think about the next time they are tying to figure out how to spend their budget or distribute the allocated raise/bonus money:

Never Forget Where Your Bread Gets buttered!

7th-Day Laws…

One of the things I never understood were the so-called “7th-day laws”, at least from the religious side of things. Now, I am by no means a fan of (US) organized religion, but if you believe that God created man in His own image, then would He not want man to grow? To accomplish greater and greater things and thus become more like Him?

If so, then how more like God could we be than to create life ourselves?

Or maybe I just do not get it – anyone want to clear it up for me?

Just a thought…

C-Hash, C-Pound, C-WHAT?

A recent discussion raised the fact that C#, often called “See Sharp” is technically incorrect because the symbol used is not the musical symbol sharp, but is the octothorpe, also known as Pound, Hash, Splat, Number Sign, etc.

An example of the differences is shown here (provided your browser and current font set support it).  The character above the 3 key on most US keyboards is this: # – but the musical sharp symbol is this: .  See the difference?  Simply, one has angled vertical lines (“pound”), but the other has angled horizontal lines (“sharp”).

Continue reading C-Hash, C-Pound, C-WHAT?

Educated Opinion .vs. Knee-Jerk Reaction

Ever make a comment regarding the performance of applications written for the .NET platform, or about Java’s performance and/or, God forbid, the current system requirements of most large-scale J2EE implementations, only to have some dumbass jump on you about how your comment is just the typical knee-jerk, “C/C++ elitist” reaction to the word “Java” (or “C#”, or whatever), never stopping to think that you might actually have an informed opinion about it based on actual experience?

And funny how they never consider their reaction to be a knee-jerk reaction to your comment?

Dumbasses…

$0.02 to buy a clue: Remember “HotSpot”? Do you think it was created because Java was already fast enough, or because there was an actual performance problem it was supposed to address? Think about it…

9000A-Z80 Pod (Fluke)

Bought this Pod in “tested good” (yeah, right!) condition from a surplus company. Pod passes its self test without any problems, so I naturally trusted the results and thought that the Pod was working correctly. Turns out that the pod was not working correctly, but I did not figure this out until tearing apart a Galaxian board based on what the Pod was telling me.

The Pod would always report that the Address lines were tied together, and stuck low. Would fail the Bus Test immediately when placed into a UUT. Once I realized that the Pod was not working correctly, I tried replacing all socketed components in the Pod (CPU, EPROM, 6532A, 74LS00, etc.) before I tried swapping the UUT cable (the one that connects to the CPU socket on a UUT) and then everything worked great!

During my troubleshooting efforts, Art Mallet, AKA Artfromny, provided invaluable assistance and was even nice enough to send me a working Z80 Pod, and parts from a physically damaged one, to help me troubleshoot and repair my broken Pod! I cannot say enough good things about him – but I can say this: thank you very much, Art; you are definitely one of the best out there!

Solution: Replace UUT cable.

To Design or Not To Design?

One of the things I have noticed is that the ideals of design are often misused or misapplied.  More often than not (in my experience), this happens more often with developers that have more academic experience than real-world experience.

Nothing is worse than a recent CS graduate with a masters degree that has less than 2 years real-world experience creating a 23-page detailed design document for something as simple as a word-counting application.

Schools may teach software design, but they may fail to teach when it is best to forgo the design and start coding, letting let the design evolve naturally from the code, and not the other way around.

When designing first, inexperienced developers are more likely to over-engineer a solution.  They may see entire objects with rich hierarchies where a simple basic-type variable would work fine.  Only with experience does one realize to spot the situations where spending too much time on design is detrimental to a software project.

When I was younger, I learned: Think First, Code Later.  However, wisdom is what caused me to realize that thinking before coding is not necessarily the same as designing before coding.

Cook Race (bootleg Burgertime)

Some sprites are missing, but still in the game. For example, when you throw the Pepper, it is not drawn on the screen, but it still stuns the bad guys. One or two of the bad guys are also invisible, so Peter Pepper can effectively get killed by nothing!

Game does not draw garbage where these graphics/sprites should be, they are just never drawn at all, and they do not disrupt the background graphics (i.e. they are completely transparent) so I do not think that it is a ROM or RAM problem.

Not knowing too much about this kind of problem, my first guess is that the specific sprite(s) are not getting their data placed in the appropriate spot when it comes time to draw the required sprites. For example, they are not getting selected by a latch that determines if it should draw the sprite’s colors, or draw the background (in transparent parts of the sprite). So into the schematics I go…

Solution: None yet.

Update #1: Well, fat lot of good that did. I could only find schematics for Burgertime, and not even the cassette version (which the Cook Race hardware seems to follow) for that matter. This one is starting to collect dust on the shelf.

Update #2: David Widel said on his web page (www.widel.com) that he was looking for a Cook Race board. I contacted him about it and he said that he would be interested in it so I gave it to him. Better to further the arcade/multigame cause than to have it sitting on my shelf collecting dust.

Dig-Dug (“Has a ROM Error”)

Purchased described as “Has a ROM error“. Started by creating a JAMMA adapter, and then read the EPROM at 2E, it was not found under Romident, burned and installed a replacement. No change. Removed and read all ROMs in row/column 2, and all but one of them failed to be identified by Romident, burned and installed 5 more replacements, working! Still have to wire up an amplifier to correctly test the sound, but looks good so far.

[07/30/03] I finally found the brain cell that got me to realize that I could use my inductive listener (a telecom tool, often used with a tone tracer) to test the sound. It works!

Solution: Replaced bad ROMs

(Recently, the board is starting to develop an intermittent problem with a bad socket. I am going to replace it as the first use of my soon-to-be-here combination soldering/desoldering station.)

Gyruss (Konami, bootleg)

Boots and passes self-test, but immediately coins itself up and starts playing itself(!), although not too well.

Well, it looks like some of the inputs are firing rapidly and randomly. Grounding one of the enable pins on one of the 74LS253s seems to make it settle down for a few seconds, so I will try playing with it.

[07/30/03] Update #1: OK, it looks like one of the outputs (za) is always low on the 74LS253, regardless of its inputs. Will try swapping it out.

Solution: None yet.

Kicker (Konami)

Random garbage (no sprites) and occasional random sounds, reboots randomly. Clock looks good, CPU and bus address and data lines have what appears to be otherwise normal activity (i.e. nothing appears stuck or floating). Pulled EPROMs and Romidented them; Romident does not identify all but 2 of them, and the two that are identified are not identified as Kicker ROMs!

OK, so I pull the EPROM archive for Kicker, and match them up that way. Three of them match up, four do not. Hmmm… One of the EPROMs does not erase(!). Going digging for a replacement…

Solution: None yet.

Galaxian – “Dead”

Purchased described as “dead”. Started by creating a JAMMA adapter (I hate creating adapters, it is tedious work). Well, the description was correct – she is dead alright: screen has static garbage and required some tweaking to sync correctly on my test bench monitor.

Watchdog is barking, disabling it has no effect on the screen’s contents. Board already had some previous work done in it, solder-side contains more than 20 jumps to connect some RAMs back onto the bus. The Parts side shows the missing/removed/blown traces being jumped.

Started by checking the daughterboard, seems OK. Next I remove, socket and replace the 74LS245s on the board because word has it that they tend to be the cause of most problems, the Galaxian Trouble Shooting Logic Board manuals lists similar symptoms connected to those chips, and the Fluke 9010 troubleshooter says that the address lines are tied. Other than that, I cannot come up with a good way to check them! 🙂

Gotta wait for some replacement sockets and chips to come in…

Continue reading Galaxian – “Dead”

PAC-MAN (Midway, single board)

Board 1


Flashing “1” in corner of screen. Took a look at the Pac-Man troubleshoot by picture guide and that pointed me to “4R video RAM bad”. Swapped it, no good!

Tried swapping other RAMs, no change either. Started pulling all socketed chips and found a bent pin on the ROM at 6E! straightened it, and reinserted, Pac lives once more.

That will teach me to try the simple checks/fixes before the more complex ones…

Solution: Fixed bent pin on a ROM chip.

Board 2

Game would boot normally, but would then start getting random lines/glitches through the screen after running for a couple of minutes; they did not otherwise effect gameplay. Immediately suspect video RAMs, start hitting ’em with the freeze spray and sure enough, got a bad one. Replaced it, and all is well!

Solution: Replaced bad RAM chip.

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?