Wednesday, September 8, 2010

Roku rocks the world! I love it!

I love my Roku so much I own 3 of them now. These little guys are easy enough for my kids to use, and is really convenient when they want to watch "kid movies", and we don't have any in the house. Pandora streaming, Amazon.com video, and great wireless setup means you can put them anywhere.

Did I mention I love it? Get a great deal on the entire line - they're much cheaper this month!

Get $20 off a Roku Player!


Friday, April 30, 2010

Stupid fun with cygwin and sqlplus

So, I have Oracle 11g running on a RedHat Enterprise Linux box, and for some reason, after I switched to a new client workstation, the backspace key in sqlplus stopped working correctly, although it worked well in bash. Well, I reckoned, something must have been different in my Cygwin settings, right? The answer is *right*, of course. Figuring out the simple solution was really hard, given the ton of misinformation that came up on the net. I hope that someone might find this solution really useful one day.

The scenario: Using Cygwin on the client workstation, connecting via ssh to the RHEL box, and running bash and sqlplus on the linux box.

Bash works great on the local workstation and the remote RHEL box. However, sqlplus did not. When I typed a backspace key, the prior character was erased from the buffer, but a control character was echoed to the screen. It looked like a little house, but was actually ^? in stty-speak.

stty -a | grep erase shows that erase is mapped to ^?, which is the backspace key, and all should be good. Like I said, bash works! Vi works... Only sqlplus did not.

The solution is not trying stty erase ^H, like so many posts said. I think that is a remnant of times gone by now, or at least I hope so.

The reason that bash and vim (VI) behave differently from sqlplus is simple - they both do their own processing of input. bash uses readline, and is controlled by /etc/inputrc. sqlplus uses something else, I presume getty, although I don't know for sure, and really don't care.

If you look at the output of stty -a, look for some flags at the bottom of the output saying something like:
iexten echo -echoe -echok -echonl

To fix the borked sqlplus behavior, all I had to do was change the setting for echoe, like this:

~ $ stty echoe

Now when I type stty -a, near the end you will see:
iexten echo echoe -echok -echonl

echoe does the same thing as crterase, which the man page for stty says does this:
"echo erase characters as backspace-space-backspace"

Basically, when the backspace occurs, wipe the character off the screen in addition to removing it from the buffer. Problem solved! sqlplus works fine when I ssh to the RHEL box, and all is good.

Of course, to make sure it works the NEXT time you login, you have to do something like add it to your .bashrc or .bash_profile. I chose to do this on my cygwin box, and put stty echoe into my .bashrc. All works, and I am on to the real problems I am supposed to be solving. :)


Thursday, April 8, 2010

Bill's Law

THEOREM: Strategy, Tactics and Logistics can be considered separately only in the realm of theory.

COROLLARY: Design, without regard to implementation, is flawed in the real world.

I've had these on my white boards for about 15 years. I do it to remind myself that you need to remind yourself that you have a REAL environment that you will play in, and not just some make believe world where everything behaves the way you want it to.

Tuesday, January 6, 2009

99 Things to Do

I saw this list on another site somewhere. If you like this list, you should copy it and bold the things you've done! Make sure you revisit it next year and update it with any new things that you've done. :)

If you want to play too, bold the things that you've done and post on your blog now.

1. Started your own blog
2. Slept under the stars
3. Played in a band
4. Visited Hawaii and danced on a lava cliff with the roar of the Pacific below
5. Watched a meteor shower
6. Given more than you can afford to charity
7. Been to Disneyland
8. Climbed a mountain
9. Held a praying mantis
10. Sang a solo
11. Bungee jumped
12. Visited Paris
13. Watched a lightning storm at sea
14. Taught yourself an art from scratch
15. Adopted a child
16. Had food poisoning
17. Walked to the top of the Statue of Liberty
18. Grown your own vegetables
19. Seen the Mona Lisa in France
20. Slept on an overnight train
21. Had a pillow fight
22. Hitch hiked
23. Taken a sick day when you’re not ill
24. Built a snow fort
25. Held a lamb
26. Gone skinny dipping
27. Run a Marathon
28. Ridden in a gondola in Venice
29. Seen a total eclipse
30. Watched a sunrise or sunset
31. Hit a home run
32. Been on a cruise
33. Seen Niagara Falls in person
34. Visited the birthplace of your ancestors
35. Seen an Amish community
36. Taught yourself a new language
37. Had enough money to be truly satisfied
38. Seen the Leaning Tower of Pisa in person
39. Gone rock climbing
40. Seen Michelangelo’s David
41. Sung karaoke
42. Seen Old Faithful geyser erupt
43. Bought a stranger a meal at a restaurant
44. Visited Africa
45. Walked on a beach by moonlight
46. Been transported in an ambulance
47. Had your portrait painted
48. Gone deep sea fishing
49. Seen the Sistine Chapel in person
50. Been to the top of the Eiffel Tower in Paris
51. Gone scuba diving or snorkeling
52. Kissed in the rain
53. Played in the mud
54. Gone to a drive-in theater
55. Been in a movie
56. Visited the Great Wall of China
57. Started a business
58. Taken a martial arts class
59. Visited Russia
60. Served at a soup kitchen
61. Sold Girl Scout Cookies
62. Gone whale watching
63. Got flowers for no reason
64. Donated blood, platelets or plasma
65. Gone sky diving
66. Visited a Nazi Concentration Camp
67. Bounced a check
68. Flown in a helicopter
69. Saved a favorite childhood toy
70. Visited the Lincoln Memorial
71. Eaten Caviar
72. Pieced a quilt
73. Stood in Times Square
74. Toured the Everglades
75. Been fired from a job
76. Seen the Changing of the Guards in London
77. Broken a bone
78. Been on a speeding motorcycle
79. Seen the Grand Canyon in person
80. Published a book
81. Visited the Vatican
82. Bought a brand new car
83. Walked in Jerusalem
84. Had your picture in the newspaper
85. Kissed a stranger at midnight on New Year's Eve
86. Visited the White House
87. Killed and prepared an animal for eating
88. Had chickenpox
89. Saved someone’s life
90. Sat on a jury
91. Met someone famous
92. Joined a book club
93. Lost a loved one
94. Had a baby
95. Seen the Alamo in person
96. Swam in the Great Salt Lake
97. Been involved in a law suit
98. Owned a cell phone
99. Been stung by a bee

Saturday, October 18, 2008

Facebook Rocks!

I'm having a blast so far with Facebook. I don't have a ton of friends yet, and probably won't ever get HUGE numbers, but I hope to have good ones. :)

It seems pretty cool though. I'm considering writing applications, but first I need to figure out what that entails, and what people seem to want. Right now, it seems that most folks just want new and interesting things to share. That's easy enough to write, of course, if you have something interesting to provide.

Aye! There's the rub!

Monday, May 19, 2008

Crappy Windows Server 2003 R2 x64 problem with corrupted .NET 2.0

Man, I just spent hours today googling around to find the answer to failing updates of Service Pack 1 to .NET Framework 2.0. The error, 0x643, told me to try the update again, which was useless.

This server was running Data Protection Manager 2007, so it had SQL Server 2005 installed also, which was crashing on startup. This seemed to indicate a corrupted install of .NET Framework 2.0.

Well, luckily, or so I though, that is what the built in "Repair" option is for under change/remove in Add/Remove Programs. Unfortunately, it failed, saying that there were invalid characters in the path "Program Files". This was a hint, but not a very good one. I spent hours trying to find other ways to "repair" the problem, since I couldn't really uninstall the Framework.

Finally, I stumbled across a single blog post from a user named "favorini" which had the magic hint, especially given the message I received when I first tried to repair it.
Aaron Stebner's WebLog

The answer to this problem was to run regedit, find all of the references to D:\Program Files, especially the ones with "D:\Program Files\Common Files\Microsoft Shared\DW", which is a leftover from a bug where Dr. Watson was installed on the D: drive instead of the C: drive, even though D: was a CD drive. Find all of those and change them to reference "C:" instead of "D:".
Just ick.

As always, be careful editing the registry, etc. etc. yada yada.

I hope this helps someone out there.

Wednesday, February 6, 2008

The election season seems to be heating up!

I saw this cool primary leaderboard over at MSNBC and I had to snag it. It's pretty cool, and keeps updating.