Frogpond Badge

Contest! Free food from Timber Creek Farms! (must be in Chicagoland)

Froebe Fibers

Our contest for today is for the new, exciting WHOLE AND CHUNKY FRUIT BOX from TCF Organics.  The box contains a wide selection of fruits, some whole (obviously) and some already cut and prepped for you!  Anything that is appropriate to cut, like pineapple and melons, will arrive cut up and ready to eat.  Things that would turn brown, like apples, pears, and bananas, arrive whole, perfect for out-of-hand eating.

The box is normally a $35 value, including delivery.  And TCF is letting me give one away!

So, you want the details?  Not a problem!

To win this wonderful box full of fruit, delivered right to your door, you need to live within 100 miles of Chicago.  Please click this link to make sure that you are part of the delivery area.  If you enter, and aren’t eligible, I’m sorry to say that I’ll have to choose someone else.  So please, only enter if you can actually get the box.

Otherwise, all you have to do is leave a comment [at http://k2p2.net/blog2/2009/06/29/contest-time], saying what day TCF delivers to your area.  (You can find that out, conveniently enough, here.)


Delivering Affordable Organic Food to Homes in Illinois, Wisconsin and Indiana For 20 Years

Delivering Affordable Organic Food to Homes in Illinois, Wisconsin and Indiana For 20 Years

Because it is friday: Werewolf Bar Mitzvah

Robert Jordan’s The Wheel of Time: (Dragonmount) The Gathering Storm – US book cover

If you’ve been following the Wheel of Time series by Robert Jordan, you would know that the last “book” will be released in three separate volumes.  Why?  Because there is just so many plots and subplots and subsub plots and subsubsub plots ….  plots to wrap up.

Click on the image to pre-order the book from Amazon.

The Gathering Storm

The Gathering Storm

Brandon Sanderson will be taking over writing the last book as Robert Jordan died last year.  See the full size cover over at Dragonmount.  It will be released on November 3rd of this year (2009).  :)

Perl module Flickr::Simple2 v0.03 for the Flickr API released!

I just uploaded the Perl module Flickr::Simple2 version 0.03 to CPAN (PAUSE) so it might be a few minutes/hours before it shows up in the CPAN mirrors.

Revision history for Perl extension Flickr::Simple2.

0.03  Wed May 13 11:18:00 2009
- significant changes to the API to make more methods of the Flickr API available.
- using Iterator::Simple so we can retrieve one photo at a time and internalize the handling of Flickr Photo *pages*
0.02  Initial CPAN release
0.01  Thu Feb 12 11:33:35 2009
- original version; created by h2xs 1.23 with options
-XA -n Flickr::Simple2

Getting three monitors to work with Kubuntu (Ubuntu with KDE) on a Dell Optiplex GX520 – NVidia GeForce4 MX 4000 low profile video card and the onboard Intel 82945G/GZ video card

At work we have three generic LCD monitors mounted on a pole to view monitoring metrics for our Oracle & Sybase database servers. On a previous machine that was cannibalized for another task, we ran Microsoft Windows XP to drive the three monitors.

Last week we were given a hand me down desktop, a Dell Optiplex GX520 with integrated Intel 82945G/GZ video on the motherboard. When we added the NVidia GeForce4 MX 4000 low profile video card, Windows XP for whatever reason was unable to use both video cards. I proposed Kubuntu 9.04 Linux as an alternative. As it was only myself that I had to convince to make the attempt, I was hard pressed to say no ;-)

The Intel 82945G/GZ video card will be the primary card and must be attached to “Screen 0″ in the ServerLayout section.

The NVidia video card has two connectors:

  1. A standard VGA port driven by a GeForce4 MX 4000 GPU < - Primary nvidia port
  2. A super-video port driven by a Quadro NVS 110M

After the base install of the operating system, XWindows was only able to see the Intel video card. After much tinkering with the /etc/xorg.conf file, I was able to get all three LCD monitors to work with Xinerama. There are a number of gotchas that you might run into:

  • If the integrated Intel video card is set to Auto in the BIOS, the card will be completely disabled. You need to disable Auto
  • You need to know which Nvidia Device entry drives the VGA connector. It must be initialized prior to the S-Video port.
  • Disable NVidia’s TwinView and metamodes option lines in the Screen Section.
  • Use sudo lspci to identify the pci bus ids. You will need to put them in the Device Sections.
  • The integrated Intel video card must use the vesa video driver as the intel video driver will stacktrace when used with xinerama.
# nvidia-settings: X configuration file generated by nvidia-settings
# nvidia-settings:  version 1.0  (buildd@palmer)  Sun Feb  1 20:21:04 UTC 2009

Section "ServerLayout"
    Identifier     "Default Layout"
    Screen      0  "Screen0" 0 0  
    Screen      1  "Screen2" Above "Screen0"
    Screen      2  "Screen1" Above "Screen2"
    InputDevice    "Keyboard0" "CoreKeyboard"
    InputDevice    "Mouse0" "CorePointer"    
    Option "Xinerama" "On"                  
EndSection                                  

Section "Files"
    ModulePath      "/usr/lib/xorg/modules/extensions"
    ModulePath      "/usr/lib/xorg/modules/drivers"  
    ModulePath      "/usr/lib/xorg/modules"          
EndSection                                            

Section "Module"
    Load           "glx"
EndSection              

Section "ServerFlags"
    Option         "xinerama" "true"
    Option         "DefaultServerLayout" "Default Layout"
EndSection                                              

Section "InputDevice"
    Identifier     "Keyboard0"
    Driver         "kbd"      
EndSection                    

Section "InputDevice"
    Identifier     "Mouse0"
    Driver         "mouse"
    Option         "Protocol" "auto"
    Option         "Device" "/dev/psaux"
    Option         "Emulate3Buttons" "no"
    Option         "ZAxisMapping" "4 5"  
EndSection                              

Section "Monitor"
    Identifier     "Configured Monitor"
EndSection                            

Section "Monitor"
    Identifier     "Monitor0"
    VendorName     "Unknown"
    ModelName      "CMO CMC 17 AD"
    HorizSync       30.082.0  
    VertRefresh     50.075.0  
EndSection                        

Section "Monitor"
    Identifier     "Monitor1"
    VendorName     "Unknown"
    ModelName      "CMO CMC 17 AD"
    HorizSync       30.082.0  
    VertRefresh     50.075.0  
EndSection                        

Section "Monitor"
    Identifier     "Monitor2"
    VendorName     "Unknown"
    ModelName      "Seiko"  
    HorizSync       30.075.0
    VertRefresh     60.0      
EndSection                    

Section "Device"
    Identifier     "Configured Video Device"
    Driver         "nvidia"                
    Option         "NoLogo" "True"          
EndSection                                  

Section "Device"
   Identifier  "Device0"
   #Driver      "intel"
   Driver      "vesa"  
   VendorName  "Intel Corporation"
   BoardName   "82945G/GZ Integrated Graphics Controller"
   BusID       "PCI:0:2:0"                              
   Screen          0                                    
EndSection                                              

Section "Device"
    Identifier     "Device1"
    Driver         "nvidia"
    VendorName     "NVIDIA Corporation"
    BoardName      "Quadro NVS 110M"
    BusID          "PCI:4:0:0"
    Screen          1
EndSection

Section "Device"
    Identifier     "Device2"
    Driver         "nvidia"
    VendorName     "NVIDIA Corporation"
    BoardName      "GeForce4 MX 4000"
    BusID          "PCI:4:0:0"
EndSection

Section "Screen"
    Identifier     "Default Screen"
    Device         "Configured Video Device"
    Monitor        "Configured Monitor"
    DefaultDepth    24
EndSection

Section "Screen"
    Identifier     "Screen0"
    Device         "Device0"
    Monitor        "Monitor0"
    DefaultDepth    24
    SubSection     "Display"
        Depth       24
    EndSubSection
EndSection

Section "Screen"
    Identifier     "Screen1"
    Device         "Device1"
    Monitor        "Monitor1"
    DefaultDepth    24
    Option         "TwinView" "0"
    SubSection     "Display"
        Depth       24
    EndSubSection
EndSection

Section "Screen"
    Identifier     "Screen2"
    Device         "Device2"
    Monitor        "Monitor2"
    DefaultDepth    24
    Option         "TwinView" "0"
    Option         "TwinViewXineramaInfoOrder" "CRT-0"
    SubSection     "Display"
        Depth       24
    EndSubSection
EndSection

Section "Extensions"
    Option         "Composite" "on"
EndSection

How to clean up Oracle archive logs when you don’t have a RMAN catalog (10g/11g)

If you’re not using Oracle’s RMAN for backup management but you have turned on archive mode for hot backups, you can create a job in Enterprise Manager (Maintenance -> Manage Current Backups).

Recently I ran into a problem with one our Enterprise Manager installs where scheduled jobs would not run. So, I wrote a very simple RMAN script to clear out the references to any archive files that I’ve moved elsewhere or deleted:

RMAN=/oranr/10g/bin/rman

$RMAN nocatalog target / < <EOF
crosscheck backup;
crosscheck archivelog all;
delete noprompt expired archivelog all;
delete noprompt expired backup;
delete noprompt obsolete;
EOF

FW: Ted Talks – Sarah Jones: One woman, eight hilarious characters

Are you receiving the “Useless localization of scalar assignment” error when using Exception::Class::TCF with Perl 5.10? I have a fix for you!

The following is a patch for bug 45563 in Exception::Class::TCF:

Useless localization of scalar assignment at Exception-Class-TCF/lib/Exception/Class/TCF.pm line 255.

Index: lib/Exception/Class/TCF.pm
===================================================================
— lib/Exception/Class/TCF.pm (revision 83)
+++ lib/Exception/Class/TCF.pm (working copy)
@@ -251,8 +251,11 @@
my($block,@catches) = @_;
my($exc,@args,$res);
&$pushFrame;
- $HANDLE_WARN &&
- local ( $SIG{’__WARN__’} = sub { throw Exception::Class::TCF::Warning @_; } );
+
+ if ($HANDLE_WARN) {
+ local ( $SIG{’__WARN__’} ) = sub { throw Exception::Class::TCF::Warning @_; };
+ }
+
$dTHROWING = 0;
$res = eval { &$block() };
$exc = $EXCEPTION;

How to contact Yahoo!’s Customer Service Department

Toll Free USA: 1-800-318-0631
Toll Free USA: 1-866-562-7219
Toll Free Canada: 1-877-722 3755
Direct Number: 1-408-349-1572
Yahoo Fax Number: 1-408-349-3301

Excellent Training Videos from India’s National Programme of Technology Enhanced Learning (on YouTube)

India’s National Programme of Technology Enhanced Learning provides technical lectures from all seven Indian Institutes of Technology and Indian Institute of Science, Bangalore.

The Video Courses are organised as PLAYLISTS under the following Categories:

  1. Core Sciences
  2. Civil Engineering
  3. Computer Science and Engineering
  4. Electrical Engineering
  5. Electronics and Communication Engineering
  6. Mechanical Engineering

Lecture 21 PERL – Part I from the Computer Science & Engineering’s Internet Technologies course is an excellent example of these training videos:

How to enable font anti-aliasing for Windows XP Sp3 remote desktop connections

Microsoft quietly added the capability for font anti-aliasing (font smoothing) in Windows XP Service Pack 3.  This applies to Terminal Services (Remote Desktop / Remote Assistance) connections. This is very easy to do.  Just open up regedit (Start->cmd -> regedit) and make the following change:

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Terminal Server\WinStations]

New DWORD Key: AllowFontAntiAlias

Value: 00000001

That’s it :)



So you want to tweet to Twitter from *WITHIN* Oracle 11g? Here’s how!

Lewis Cunningham Twitterhas once again given us a gem from the world of Oracle’s relational DBMS!  This time, he has written ORA_Tweet, an API to send/receive Tweets (microblog posts) from within Oracle 11g.  Major kudos to Lewis Cunningham for writing and releasing ORA Tweet to Sourceforge.net :)

Call the Twitter API from within an Oracle database. ORA_Tweet uses the UTL_HTTP API within Oracle to call the update_status API. It is written completely in PL/SQL.

So, my question is…  Will someone write a Flickr API for Sybase ASE?

BASH: How to retrieve multiple ip addresses for a host name and put them into a BASH array

#!/bin/bash

servers=( pop.bizmail.yahoo.com smtp.bizmail.yahoo.com forums.sybase.com )

for server in ${servers[@]}
do
  # declare that variable ip_addresses is an array.  not strictly needed but makes it a bit more readable IMHO
  declare -a ip_addresses

  # read has the capability of stuffing an array (ip_addresses) with the tokenized STDIN.  The three less than signs "< <<" tells BASH to redirect the stdout output of the following statement.
  read -a ip_addresses <<< $( host $server | awk ‘ $3 == "address" { print $4 }  ’ )
 
  for ip in ${ip_addresses[@]}
  do
    sudo route add -host ${ip} gw 192.168.0.1 dev bnep0
  done
done

We can see the output of the script:

pop.bizmail.yahoo.com is 68.142.224.70
pop.bizmail.yahoo.com is 209.191.119.134
pop.bizmail.yahoo.com is 68.142.198.20
smtp.bizmail.yahoo.com is 206.190.48.12
smtp.bizmail.yahoo.com is 68.142.200.11
forums.sybase.com is 192.138.151.106

Retraction and an apology for my article in the January/February 2009 issue of the ISUG Technical Journal

The article I submitted (migration to Oracle from Sybase and surviving in the workplace) was so very different as to the article that was published.  My piece was too controversial for ISUG to release (Sybase to Oracle) so it was changed, not be me and not by the editor.  It became a weird Unix to Windows rant.  Yup, I agreed to the revised article but was trying to calm a screaming toddler and pamper a pregnant lady… not excuses just explaining where my brain was when I agreed to it.  ugh what a mess.

Ultimately, the publication of the article was my fault.  So please, just ignore my article in the Jan/Feb 2009 issue of the ISUG Technical Journal.

Sybase Workspace 2.1: Do NOT update Data Tools Platform (DTP) from Eclipse’s website!

Sybase Workspace

Sybase

Sybase

is an Eclipse distribution that uses highly customized Data Tools Platform (DTP) plugins.  Updating the Sybase version of DTP with the standard DTP release from Eclipse will break Sybase’s Workspace.

Last night I updated Workspace’s DTP with the standard DTP release from Eclipse’s website.  Several oddities started showing up when accessing the DTP releases:

Configuring the db connection

Configuring the db connection

Testing the connection worked fine but when you open the database connection to a Sybase ASE database errors are reported:

Multiple errors have occurred

Multiple errors have occurred

and

Connection errors

Connection errors

If you run into this issue, you will need to uninstall Sybase’s Workspace (delete the %SYBASE%/Workspace directory after the uninstall is complete) to resolve it.

I’ve created feature request CR 565285 with Sybase:

Workspace’s DTP (data tools platform) should be updated with the DTP current release from Eclipse. This will allow developers that work in a mixed environment to use Workspace with non-Sybase DBMS’s (view stored procedures, triggers, etc).

If you believe that this feature request is desired, please let Sybase know.

Podiobooks.com: Earth Core review

Earth Core

Earth Core

I’ve been listening to the free audio book, Earth Core, by Scott Sigler on Podiobooks.com.

The premise is when a mysterious double sided platinum blade is found in a cave,  the largest deposit of platinum (multi billion $$$) on the planet is discovered three miles under a mountain.  A mining company, called Earth Core, needs not only to stake a claim but find a way to extract the platinum.   The miners have their hands full when the platinum ‘deposit’ fights back.

From the super ex-CIA agent to the spelunking uber-geologist, the story is a wild one.  I’m very impressed with Mr. Sigler’s ability to make the characters and the scenario seem very real.

If you are into adventure stories and a little gore won’t phase you, treat yourself to a good time by reading or listening to Earth Core.  You won’t forget it. :)

How to upgrade the Acer Aspire One (model 110) BIOS using a USB thumb drive

Note that upgrading the BIOS using an USB thumb drive is NOT needed if you have Windows XP or Windows Vista installed on your Acer Aspire One netbook.

Prepare the USB thumb drive (need 64MB or larger):

  1. Install FreeDOS on your USB thumbdrive by using Unetbootin.
  2. Download the latest (currently 3309) BIOS from Acer’s ftp server
  3. Extract all the files in the zip file onto your USB thumb drive

On the Acer Aspire One machine:

  1. Insert the prepared USB thumb drive into an USB port on the Aspire One
  2. Reboot
  3. Hit the “F12″ button every second or so until the boot drive menu appears
  4. Choose the option for USB HD or similar
  5. Hit enter when presented with a PC Linux boot screen (it will boot into FreeDOS)
  6. When the FreeDOS boot menu shows up, choose “safe mode” (no drivers loaded)
  7. From the dos prompt, change to the c drive by typing “C:” and enter
  8. Type “dir *.bat”, you should see 3309.bat (if you downloaded the 3309 BIOS).  Run that by typing “3309.bat”
  9. If all goes well, reboot

Above is a variant of the instructions found on Macles website.

First official release of Flickr::Simple2 to Perl’s CPAN repository :)

Flickr

Flickr

Flickr::Simple2 is an XML::Simple based Perl API to communicate with Flickr.  It is in the early phases of development… comments are welcome :)

You will need to supply your own Flickr API key.

I released version 0.02 to Perl’s CPAN repository this morning after several delays related to the birth of my son a week ago.  As always, comments and constructive critism are welcome.

Introducing QweryBuilder, a Developer GUI for Sybase ASE, SQL Anywhere, Microsoft SQL Server and Oracle 10g/11g

qwerybuilder_reflectedimageQweryBuilder uses innovative ideas to provide developers with the ability to easily insert, extract and modify data from a variety of databases.

The goal of QweryBuilder is to increase a database developer’s productivity. It contains many time saving features.

SQL Editor

QweryBuilder - SQL Editor

QweryBuilder - SQL Editor

  • Script auto complete
  • Custom auto complete lists
  • Code Templates
  • Display column list for tables and views in editor
  • Display procedure parameters in editor
  • Keyboard shortcut to open procedures
  • Generate and insert new GUIDs
  • Syntax folding
  • Auto indenting

Criteria Query

QweryBuilder - Criteria Query

QweryBuilder - Criteria Query

  • Form view criteria screen for easy data retrieval
  • Updateable result set
    • Insert nulls, GUID’s, and computed values into results
    • Insert, delete and update data rows
    • Generate insert statements from results
    • Create graphs from result data

Graphic Query

QweryBuilder - Graphic Query

QweryBuilder - Graphic Query

  • Create queries graphically
  • Cross table querying without writing SQL

Other Features

  • Support for Microsoft SQL Server, Sybase ASE, SQL Anywhere and Oracle
  • DDL Browser
  • Database Search
  • Visual Difference
  • Code Formatter
  • Getting Started Window
    • Displays last used connections, files and database objects
    • Easily navigate to the last thing you were working on
  • Clipboard Saver
  • File Browser
  • Object Browser

Linux Journal 2009 Archive cdrom is now available :)

Linux Journal Archive 2008 CDROM

Linux Journal Archive 2008 CDROM

The Linux Journal has just made their yearly Archive CDROM available for purchase.  It includes EVERY Linux Journal  article from March 1994 to December 2008.  At $32 USD, it is a real bargain!