Democratizing Development is What Matters in Computing

May 24, 2016

Twenty five years ago I was lucky enough to be one of the people demonstrating the brand new Visual Basic development system at its launch event, Comdex Spring/Windows World in Atlanta.

In honor of that anniversary I’ve done some thinking about success of platforms in the computing world and have the following thoughts.

Where Microsoft has succeeded it has been when they catered to the casual developer, the hobbyist who tinkers with code, the tech savvy business person who has an itch to scratch.

The Altair could be programmed by "professional developers" without Microsoft BASIC but not by the average person.

The Apple ][, TRS-80 and Commodore PET could be programmed by "professional developers" without Microsoft BASIC but not by the average person.

MS-DOS could be programmed by "professional developers" without Microsoft QuickBASIC but not by the average person

Windows could be programmed by "professional developers" without Visual Basic but not by the average person

  • Windows 1 and 2 did not have tools the average person could use to develop software. They failed.
  • OS|2 did not have tools the average person could use to develop software. It failed.
  • Xenix did not have tools the average person could use to develop software. It failed.
  • Pocket Size PC did not have tools the average person could use to develop software. It failed.
  • Windows Mobile did not have tools the average person could use to develop software. It failed.
  • .NET did not have tools the average person could use to develop software. It failed.
  • Internet Explorer and IIS did not have tools the average person could use to develop software. It failed.

I’ll even go one step further.

Every time Microsoft has succeeded it has been when they catered to the casual developer, the hobbyist who tinkers with code, the tech savvy business person who has an itch to scratch. The person who needs to build "real apps, real fast".

Every time Microsoft has failed it has been because they forgot that lesson and catered to the professional developers’ existing skill set and power base and forgot the masses of users who want their computer/tablet/phone/browser to do a little something but who aren’t willing or able to learn massively complex tools to solve that small problem that really annoys them.

Visual Basic was that shining moment of remembering the point of personal computers for the GUI phase of the personal computer revolution. It enabled the millions of casual users to write that little tool they needed and share it out with their friends and co-workers. It was the synergy that ended the command line and moved the world to GUIs which led more people to using personal computers which led to more of those personal application which created the virtuous cycle that made Windows the dominant computer platform.

Frankly, what Microsoft needs right now is a Visual Basic for Universal Apps. I suspect Satya is bright enough to realize that – at least I hope he is.

Some Quick Thoughts on Charleston and Media

June 20, 2015

To call the mass murder in South Carolina anything but Terrorism is itself a crime.

The vast majority of terrorism in the United States is not from foreign right-wing religious fanatics. The vast majority of terrorism in the United States is, and has been for many years, the action of American White Christian Right-wing fanatics who are inspired in their actions by the promotion of their hatred by right-wing radio and Fox News and the Koch Brothers’ funded Tea Party and it’s long past time that we called those forces of hatred out and stopped pretending that they’re just "another view".

When we ignore the tacit support these "information" sources give we contribute to making their hatred and violence mainstream.

When we pretend that a White, Christian, Right-Wing terrorist is, over and over again, a "disturbed person the mental health system missed" we contribute to excusing the climate of hatred and violence these forces encourage and spread.

When we pretend that shooting doctors and blowing up clinics is merely "an excessive response" to perfectly legal medicine rather than acts of terrorism, we contribute to excusing those actions as not reflective of those whose idea of debate is to violently force their views on those who disagree.

When we do not demand the disownment of these terrorists by all those who have given normative voice to their hatred and violence, when we do not demand apologies from those who have encouraged the reduction of debate to the violence of the mob boss it is we as a culture that have failed to do our job of saying that the fruits of their actions lie partly at the feet of those who planted that fruit.

The cost of free speech and a free press is that those who speak share responsibility for the actions of those who are inspired by them and we have failed and failed miserably as a nation at holding those sources responsible.

And that must be recognized and that must be fixed.

A Concept Forgotten

April 26, 2014

The fourth in a series of posts to answer questions I’m tired of explaining over and over again. For the others see Flattened Taxpayers, I Won’t Pay for Your Star Trek V Collectors’ Plate and Some Answers on the "Rebel Flag" and Reality

Here’s something that a stunningly large number of Americans apparently never learned or perhaps forgot. I see it demonstrated every time somebody asks, “Why don’t those people need to prove they’re American before…” or “Why do we keep giving things to ‘illegals’”

Read the following, hopefully familiar, sentences:

We hold these truths to be self-evident, that all men are created equal, that they are endowed by their Creator with certain unalienable Rights, that among these are Life, Liberty and the pursuit of Happiness.

Notice that doesn’t say that “citizens” are given rights, it says all men.

Notice that doesn’t say that the government grants rights, it says those rights are endowed upon all men as a characteristic of their existing.

Those are not cases of poetic license.

Those are not cases of carelessness.

Throughout history governments had existed above the people run by the powerful who granted privileges on those who pleased them.

With the founding of the United States of America a new philosophy of government was tried for the first time. A government that was below the people, that was a tool of the people and not a cudgel held by the powerful or chosen few above the rest of humanity.

That concept of government meant that rights that were not gifts of the powerful as thanks for obedience and for peasants quietly knowing their place but as inherent parts of being human. A government whose power was not to grant or remove privileges but to protect these universal rights wherever it had authority for whoever was in land under their authority.

This is the biggest philosophical change that the founders of America instituted and one that surprisingly few ever understand. I guess it doesn’t get much discussion because the powerful still want to wield the power of kings and nobles over those they feel are their lessers.

The old ways die slowly but America has been teaching this new way to the world for almost a quarter of a millennium now. Perhaps it’s time we learned what we, as a nation, stand for and stand proudly for it.

A reply to a parent on Salon

March 29, 2014

Salon just published the thoughts of a parent of a profoundly gifted child asking for advice on how to deal with raising a child so far above average. See here for the article.

Here are my thoughts on “How do you give a kid a normal childhood, when his brain is so advanced?”:

You don’t try. He’s not a "normal" child so pretending he is or "not telling him" or "force him to be normal" will make his life worse.

He has gifts. Those should be encouraged. If he really is in the "profoundly gifted" category (about 1 out of every 3 million people – around the 180 IQ level) he will never really fit in so get used to it. He’ll have to get used to it no matter what you do. Recognize his talents and encourage them. Show pride in those talents to counteract all the misery he’ll have for not being "normal"

Realize that the latest studies show that social acceptance tends to drop 1.7% for females and 2.7% for males for every IQ point over 90 (yes, we as a society really do measure popularity on how closely you relate to a low-average IQ) so at a 180 IQ he’ll have had 1/11th the friends as a "normal", 1/11th the positive social relationships. When he gets older he’ll be 1/11th as likely to get dates, 1/11th as likely to have a girlfriend, 1/11th as likely to get invited to parties, etc.

That’s the reality of profoundly gifted people in this society. Pretending there’s a way for him to be treated as "normal" is not only useless but is damaging since you won’t have dealt with the emotional scars left by being so different from the ideal of "normal".

If he is bored in school, work with the school to get him moved up a grade every few years as needed. The argument that "he needs to be in his age group for social acceptance" is complete bull. He will NOT get social acceptance in any age group he’s in so you might as well accept that and stop trying to "fit in" and move to "encourage the extraordinary".

btw: I’m also in that "profoundly gifted" one in 3 million group so this is based on my own expriences.

Sanity Roll Call

September 28, 2013

Probably the most interesting vote this week was in the Senate where the GOP split along faction lines on whether to follow the House Republicans in blackmailing the people of the US to reverse the 40+ votes they’ve lost regarding Obamacare.

What made it interesting is that we finally have an on-the-record list of which Republicans are owned by the Looney Tunes fringe wing of their party and which still have at least a little respect left for the United States.

All 54 Democrats (including the two Independents who caucus with the Democrats) effectively voted to send the House’s blackmail note back to them as insane. It’s worth remembering that the next time somebody says "They’re all the same in Washington" or "Congress did…" when they really mean "The Republicans in Congress did…".

On the GOP side of the Senate it gets more interesting.

  • 25 Republican Senators (54%) voted with the Democrats against anti-democratic blackmail
  • 19 Republican Senators (41%) voted with the insane wing
  • 2 Republican Senators (4%) refused to go on the record

Congratulations to Kansas and Alabama for having 100% of their Senators in the Insane wing – What’s the Matter with Kansas, indeed.

A special award to Utah for having 1 under the Insane list and 1 under Cowardly. Who says there’s no diversity in Utah.

It is interesting to note that 79% of Senators are sane so we’re really having the global economy held hostage by a minority of a minority.

Here’s the list so you can see if your Senators are either insane or completely corrupt.


  • Alexander (R-TN)
  • Ayotte (R-NH)
  • Barrasso (R-WY)
  • Blunt (R-MO)
  • Boozman (R-AR)
  • Burr (R-NC)
  • Chambliss (R-GA)
  • Chiesa (R-NJ)
  • Coats (R-IN)
  • Coburn (R-OK)
  • Cochran (R-MS)
  • Collins (R-ME)
  • Corker (R-TN)
  • Cornyn (R-TX)
  • Graham (R-SC)
  • Hoeven (R-ND)
  • Isakson (R-GA)
  • Johanns (R-NE)
  • Johnson (R-WI)
  • Kirk (R-IL)
  • McCain (R-AZ)
  • McConnell (R-KY)
  • Murkowski (R-AK)
  • Thune (R-SD)
  • Wicker (R-MS)


  • Crapo (R-ID)
  • Cruz (R-TX)
  • Enzi (R-WY)
  • Fischer (R-NE)
  • Grassley (R-IA)
  • Heller (R-NV)
  • Inhofe (R-OK)
  • Lee (R-UT)
  • Moran (R-KS)
  • Paul (R-KY)
  • Portman (R-OH)
  • Risch (R-ID)
  • Roberts (R-KS)
  • Rubio (R-FL)
  • Scott (R-SC)
  • Sessions (R-AL)
  • Shelby (R-AL)
  • Toomey (R-PA)
  • Vitter (R-LA)


  • Flake (R-AZ)
  • Hatch (R-UT)

Some Answers on the “Rebel Flag” and Reality

August 10, 2013

The third in a series of posts to answer questions I’m tired of explaining over and over again. See Flattened Taxpayers for the first and I Won’t Pay for Your Star Trek V Collector’s Plate for the second.

Having lived in the deep south for well over a decade back in the late 1960s and 1970s when racism was slightly less hidden, I had to deal with racists who flew the Confederate Battle Flag or who wanted their state flag to contain some confederate emblem as a part of that flag’s design.

When something comes up over and over again and I’ve gotten tired of typing the same answers over and over again through the years, I put together some quick answers to the most common questions so that when it comes up yet again I can just point them back here.

No, flying a confederate battle flag isn’t about your love of  "Southern Heritage".

Southern regional history (at least European Southern regional history) goes back over 400 years. The “Confederacy” was 4 of those years. If you pick less than 1% of your history that’s defined by treason and murder justified by wanting to expand racism-based slavery (as the secession declarations clearly stated) then you’ve clearly picked the only 1% of Southern "heritage" that you actually care about and made what you treasure as “heritage” abundantly obvious.

No, the Southern Treason was NOT about "states’ rights".

The major states rights issue at the time was whether non-slave states could pass laws that overrode the Federal Fugitive Slave Act which required all states to arrest escaped slaves and return them to their "owners". Guess which side of the coming conflict said federal law supersedes the “rights” of states? Hint: It wasn’t the ones wanting state law to free slaves.

No, the Southern Treason was NOT about unfair tariffs impressed on the South by Northern Congressmen.

There are two tariffs that are occasionally brought up in this canard by people who think that once you move to a subject as exciting as trade tax policy their opponent will fall asleep without finishing the discussion. One of these tariffs was written by some of the slave states’ own Congressmen. The other was passed after the war had already started. Neither one was even mentioned in the various secession documents.

No, it wasn’t about anything that President Lincoln did.

Abraham Lincoln hadn’t even been inaugurated when the first six southern states declared themselves above the laws of the United States and started murdering US soldiers. The President at the time that the talk of treason turned to war against their own nation was James Buchanan. I’ve yet to hear anyone say that the war was a response to Buchanan, though.

No, it wasn’t a reaction to there being no mechanism for states to secede in the US Constitution.

There is a perfectly good mechanism for anything anyone wants in the US Constitution. It’s called Article V. It deals with the process for creating amendments. Want to do something the Constitution doesn’t describe? Fine. Amend the Constitution to give yourself that power.  It’s not “impossible”, it’s been done quite a few times now.

The usual response to this is “well, a Constitutional Amendment wouldn’t have passed”. Too bad. Laws apply to you when you lose and the other guy wins just as much as they do when you win and the other guy loses. Just because you don’t think you’ll win a vote doesn’t give you the right to start murdering people. That this isn’t blatantly obvious is a bit frightening.

No, there wasn’t a war between the Union and the Confederacy or a war between the Yankees and the Rebels or a war between the United States of America and the "Confederate States of America".

There was a war between the United States of America and a bunch of criminals who had decided that violating US law by stealing US property and killing American soldiers and sailors was a better course of action than trusting in democracy or rule of law. That’s about as noble a cause to be honoring as memorializing Timothy McVeigh or Charles Manson.

Deal with it.

Bill Maher Starts a Conversation

June 29, 2013


Somebody realizes that the GOP’s "Culture War" – from opposition to birth control to opposition to fact-based sex education to opposition to gay rights to opposition to Plan B to opposition to abortion – are NOT about "morality". Their actions and choices make it clear that their real problem and the basis for their policy plans are just them being upset that they’re not being praised for being the town scolds who think that children are God’s punishment for sex they don’t approve of. I have yet to see a Republican who claims to be "pro-life" come out in favor of measures that prevent unwanted pregnancy which would be the obvious stance for somebody who cares about minimizing abortion.

Oh, and to be "fair and balanced", note also that it’s not just the right that desperately wants to see people hurt by sex they disapprove of. You’ll notice there’s been no big public outcry on the left or right for making the HPV vaccine mandatory for boys even now that we’ve seen how it causes throat cancer in men. Apparently while the left has grown up enough to say that female sexuality is none of their business, male sexuality is still something they feel free to cluck their tongues and wag their fingers about. (Even before Michael Douglas’ throat cancer made HPV in men a topic of conversation, making the vaccine universally required in adolescence made great public health sense since even without the direct disease result it removes a disease vector)

Thanks to Bill Maher for getting the conversation started. Now lets keep it going until we see some meaningful action.

Bill Maher’s last New Rule for the June 28, 2013 episode of Real Time

For those who don’t like video, a transcript of Maher’s New Rule can be found at The Daily Kos.

Mike’s Tips for Cooking Salmon Filets

May 6, 2013

After years in the Pacific Northwest I’ve learned to appreciate a nice salmon filet. Unfortunately, I’ve seen most cooks ruin this king of fish by either overdoing their recipe with complex sauces and hiding the taste of the fish itself or overcooking the filet so that it is dry and grainy or treating salmon, not surprisingly, like they would a piece of fish.

Salmon, unlike most other fish, is best prepared almost exactly the way you would prepare a prime steak. When it doubt, think, “Would I do this to a dry aged prime porterhouse?” and follow that experience.


These tips apply to any filet but I’ve generally found that line-caught Alaska King Salmon is the most flavorful. When available, the salmon from the Copper River are the best due to their extra fat developed from the particularly cold water. Coho salmon is also excellent but being smaller the fillets tend to be less flat in shape and are harder to cook evenly. Avoid Keta or Pink salmon, these are really not in the same league as their cousins and avoid farm raised Atlantic Salmon (called that no matter where it actually was farmed) because their restricted diet, lack of exercise and lack of exposure to cold water tend to make them flavorless and dry.

Try to get a filet that’s about the right size for your meal. I usually plan on about ½ lb. per person but a 1/3 lb. portion may work for some people. Realize that you will lose water and fat in cooking so much less than this is going to be a snack and not a meal for the same effort.

Since you’re cooking the filet as one piece, try to get a filet that is as even in thickness as possible. This avoids having the edges overcooked by the time the center is medium rare.


If the filet is frozen, allow time for thawing. If this isn’t possible, carefully thaw it in a microwave.

Before you do any preparation work, let the salmon get to room temperature. This is very important in getting a filet that is medium on the outside with a good crust and a medium rare center. A cold salmon will end up with either an overcooked, dry exterior or a raw interior.

If needed, slice the salmon filet vertically (from spine to belly) to get the right size piece.

If your filet has a flap of thin belly meat, slice it off and cook it separately. If you leave it on it will not cook evenly. But do not throw it out or give it to the dog unless you are feeling very generous since if you cook it first, this thin strip can be a great treat for the chef to nibble on while the rest of the fish cooks.

Dry the salmon on all sides with paper towels. This keeps your heat going into the filet rather than being wasted in boiling off the water.

Remove any pin bones with a pair of needle nose pliers. (A typical kitchen tool here in the Northwest). These are the secondary rib cage and even the best fish monger occasionally misses one. Using pliers and pulling straight out allows you to remove the bones without tearing chunks out of the meat.

Liberally coat all sides of the filet with a neutral tasting, high smoke point oil. This isn’t for flavor but is to conduct heat and to help form a crust.

Salt all sides of the salmon and rub the salt into the oil. This will draw proteins to the surface and will also help to form a good crust. Yes, you should use more salt than you think you really should.


You should use a frying pan or other grill surface that can hold heat and is large enough for the filet. Cast iron works well.

Lightly oil the surface and bring to a very high heat.

Once the oil has reached the “shimmer” stage you should place the filet in the pan skin side up. This order matters for two reasons, the heat in the pan is highest at this time since the fish hasn’t cooled the pan yet and getting a crust on this exposed surface is easier now than when it is flaky from being cooked. (This is why you should always brown a filet before vacuum sealing it if you cook it sous vide)

Avoid the temptation of moving the filet or jiggling the pan. You should let it cook on this side until the sides are opaque and lighter colored at least 2/3rds of the way up the side. You will probably see little cream colored liquid beads form. This is a great sign. It is beads of melted fat escaping and is a sign of a good, fatty fish which is the mark of a juicy and flavorful filet.

Once you have reached the 2/3rds level, you should flip the filet with a good spatula being careful not to tear the browned surface. If possible, place the filet in an unused section of the pan but if there is not enough room for that to be possible, try rotating it 90 degrees as well so as much of the filet is on fresh hot surface.

If you have a thermometer you can gauge doneness by temperature (you are shooting for a rare temperature so that carryover heat will bring it to a medium rare temperature by the time the filet has rested). If not, you can tell by touch once you have some experience but you may just have to separate two of the flakes in the filet and look at the color. You want the internal color to be pinkish red in the center but not transparent. If it is a dark pinkish opaque color you’re ready to pull the fish.

At this point, place the filet skin side down on a plate or cooling rack for 3-5 minutes. You can tent it with aluminum foil to trap the heat but do not wrap the filet in foil or the moisture escaping will ruin the crust you spent time forming.

After the rest, put on a plate and serve.

Seventy Years Since Bermuda

April 19, 2013

Seventy years ago, on April 19th, 1943, the governments of the United States and the United Kingdom convened a conference in Bermuda with the intent of dealing with public outcry against the Nazi’s extermination of millions of Jews in Europe. Note that the intent was NOT to help stop the extermination.

Both nations wanted to fix their PR problem but neither wanted to face the option of having to deal with the possibility that Hitler would change his policy from extermination to exporting Jews to the UK or US – an option that neither nation found acceptable.

Both nations worked very hard to make sure that neither nation would have to do anything. The conference was held in Bermuda which under wartime restrictions was inaccessible to the press. No Jewish organizations were allowed to attend even as observers.

The agenda explicitly prohibited referring to the Nazi "Final Solution" and, in fact, prohibited discussing the Jews any differently than other refugees not targeted for extermination.

Neither nation increased their tight restrictions on Jewish refugee immigration. The US sent as a representative a man explicitly prohibited from actually signing anything that would bind the US. The British explicitly refused to lift, even partially, the blockade of Jews attempting to flee death by going to the "Jewish Homeland" in the British Mandate of Palestine promised by British Foreign Minister, Lord Balfour 25 years earlier. Neither nation was willing to bomb the rail lines or gas chambers or crematoria already known to exist.

As a PR move it failed. The response to the conference included protests, condemnations and suicide. The result did not save a single Jew targeted for death.

And after seventy years, we of both nations either have no knowledge and have accepted the rewritten history that "nobody knew it was happening" that protects the images of Churchill and Roosevelt or we hide this history away and pretend it didn’t happen.

But ignorance and willful self-deception do not prevent future genocides, only learning the hard reality of history does.

To learn some of that history see:

Today’s Filibuster of Background Checks

April 17, 2013

Today 5 Democratic Senators and 41 Republican Senators betrayed their constituents. Today these corrupt officials violated their oath of office and ignored the wishes of over 90% of the American public they’re sworn to represent.

Also today 4 Republican Senators singled themselves out for doing their jobs correctly. As much as that is ludicrous to call out, let’s start by giving them credit so they are not tarred by association with their party.

  • John McCain of Arizona
  • Susan Collins of Maine
  • Mark Kirk of Illinois
  • Pat Toomey of Pennsylvania

They, sadly, deserve the credit for doing their jobs.

But, the real story is that 46 Senators did not do their job and should not be returned to office.

Reality is that the public has a short memory and Senators have a 6-year term so roughly 1/3rd of them will be up for reelection next year, 1/3rd in 2016 and 1/3 get to stay in our employ for 5 more years.

Fifteen of those betrayers of the public trust are up for reelection next year and today begins the job of making this their last term in office. Saxby Chambliss (R-GA) has already announced he will not be running for reelection.

I suggest we contact not just the remaining 14 Senators and let them know we will make preventing their reelection our single-minded priority but that we also contact their major donors and let them know that a dollar in these coward’s campaign chests means a customer they’ve lost and a negative publicity campaign their PR firm will find themselves fighting for as long as their support for these embarrassments to our nation continues.

Those 15 “Senators” who are up for re-election in 2014 are:

  • Lamar Alexander (R-TN)
  • Max Baucus (D-MT)
  • Mark Begich (D-AK)
  • Saxby Chambliss (R-GA)
  • Thad Cochran (R-MS)
  • John Cornyn (R-TX)
  • Mike Enzi (R-WY)
  • Lindsey Graham (R-SC)
  • Jim Inhofe (R-OK)
  • Mike Johanns (R-NE)
  • Mitch McConnell (R-KY)
  • Mark Pryor (D-AR)
  • Jim Risch (R-ID)
  • Pat Roberts (R-KS)
  • Jess Sessions (R-AL)

Oh, and the other 29 Republican Senators and 2 Democratic Senators who betrayed the Constitution they swore to uphold? We’ll remember them in 2016 and 2018 if they haven’t resigned for other reasons before then.

%d bloggers like this: