Friday, December 29, 2006

Kara's sixth birthday

Happy birthday, Kara!



and friends ...



and brothers ...



The Lord's blessing is so exceedingly abundant.

Thursday, December 28, 2006

And the next day ...

It's a wonderful life ...



Laughing ...



at each other ...



and just relaxing ...



God is good.

Wednesday, December 27, 2006

The Day After Christmas

They opened more gifts ... Yay!



Lauren ...



Kara ...



In the play room ...



In mommy's arms ...

You Are My Hiding Place ... Chôn Nương Thân

How can you be both strong and gentle at the same time? This song is both ... I would call it meekness. I've been told that meekness does NOT mean weakness, but in fact the opposite ... so much strength, that there is enough strength left over to keep it all under control.



A link to some lyrics and chords I'm using.
Direct link to the mp3 via Odeo.
Direct link to the mp3 via podomatic.

He is meek.

Saturday, December 23, 2006

Dare To Be A Daniel

My daughter loves this song.



Link to some lyrics and chords I'm using.

Direct link to the mp3 via Odeo.
Direct link to the mp3.

As the Deer ... Khát Khao Dòng Nước

People just love this song ... it is requested often. Too bad I cannot sing it well. Anyway, the ideas in this song are only a few thousand years old, and are stronger now than they ever were.



Link to some lyrics I'm using.
Direct link to the mp3.
Here is a newer version of this song.

You Made Me Love You

One of the great oldies ... This one is fun to sing.



Link to some lyrics and chords I'm using.
Direct link to the mp3 via Odeo.
Direct link to the mp3 via podomatic.

Yellow Bird

What's up with this song? Well one thing is for sure ... The melody for this song is popular and has been used in other songs such as Chỉ Là Giấc Mơ Qua.


Link to some lyrics and chords I used.
Direct link to the mp3 via Odeo.
Direct link to the mp3 via podomatic

UPDATE: I recently added the chords that I used to record this song on the wiki. I thought I had sung it near the key of C ... well it was in the key of A so I fixed it.

Thursday, December 21, 2006

Chỉ Là Giấc Mơ Qua

Another sad but lovely Vietnamese love song, imagine that. The melody for this song is popular and has been used in other songs such as Yellow Bird.



Link to the lyrics and chords I'm using:
Direct link to the mp3 via Odeo.
Direct link to the mp3 via podomatic.

Indeed.

Wednesday, December 20, 2006

Amazing Grace

Mandatory gospel song.



Link to the lyrics and chords I'm using:
Direct link to the mp3.
UPDATED: Also the lyircs in Vietnamese

Praise GOD!

Lord, I Lift Your Name On High

Just a great gospel song ...



Here are some chords and lyrics I used here ...

And here is a direct link to the mp3 via Odeo.
And here is a direct link to the mp3 via podomatic.

Praise the Lord.

Tôn Cao Danh Chúa

Blogger không cho chữ việt (lúc mới đánh vô).
Coi chừng ... Tôi sắp hát bằng Tiếng Anh song rồi bằng Tiếng Việt



Lời bài đây ...
Nhạc mp3 đây.

Praise the Lord.

Tuesday, December 19, 2006

Lòng Em Vui (I'm Just Jolly)

Here is a fun gospel song for kids ...



Here are the lyrics and chords I used in vietnamese.
And a link directly to the mp3.

Monday, December 18, 2006

Hava Nagila

My Hebrew is, uh ... terrible? But if anyone cares enough to correct it, I will re-record it after they "fix" my pronunciation. Think of this blog entry as a sort of singing wiki.



Everything else is a wiki these days ... why not a song?
As usual, here is a direct link to the mp3.
http://vsingleton.podomatic.com/enclosure/2006-12-18T19_51_23-08_00.mp3

Here are the lyrics and chords I've been using over here.

Saturday, December 16, 2006

Still dreaming ...

Another great song about dreaming. Singing it made me feel good. When I first heard this song, I knew I'd never forget it. What a day for a daydream ...



As usual, here are the chords and lyrics I've been using.
Here is a direct link to the mp3.

It's just an easy song to remember.

Thursday, December 14, 2006

I'll see you in my dreams ...

There is something about sad songs ... this is an oldie that my dad taught me. The melody is bright, but the words bring out the joy in the sadness. I cannot sing it without thinking of someone close to my wife and I ... and she cannot bear to hear this song.

If it happened to you the way it did in the song, you would not be able to hear it either. May the Lord bless her and keep her.



If you would like the lyrics and/or chords, just let me know.
UPDATED: Here are the lyrics I've been using ...

Direct link to the mp3 via podomatic.
Direct link to the mp3 via Odeo.


Until then,
I'll see you in my dreams ...

Wednesday, December 13, 2006

Tickets on the Jesus Train

It's so great to finally have recordings of even some of my dad's singing. The Jesus Train is the one he wants us to publish next here.



What a treat.

As usual, here are the links to the original post on the Jesus Train with the lyrics and chords:
http://vsingleton.blogspot.com/2006/01/jesus-train.html
http://lightcloud.verns.net/mediawiki/index.php/The_Jesus_Train

Tuesday, December 12, 2006

UPDATED: more on apt-spy

Well, If I had just read the file it would have told me that "the following list can always be found at" debian.org ... So the mirrors.txt that comes with the latest version of apt-spy is the one you want to use, but you want to use the older version of apt-spy as follows:

# cp -p /var/lib/apt-spy/mirrors.txt .
# apt-get --purge remove apt-spy
# wget -c http://ftp.debian.org/debian/pool/main/a/apt-spy/apt-spy_3.1-13_i386.deb
# dpkg -i apt-spy_3.1-13_i386.deb
# cp -p ./mirrors.txt /var/lib/apt-spy/.
# echo "apt-spy hold" | dpkg --set-selections

And the newest list of mirrors only generated 59 errors, which
is far fewer than the one from 3.1-13 will give you. So again, you'll still probably want to use the -f ls-lR.gz something like this:

# apt-spy -d unstable -f ls-lR.gz -o ./output.sources.txt -w outputFile.txt -n 20

Following up on my previous notes about errors with apt-spy ...

Here is a recent version of mirrors.txt with all of the erroring sites meticulously removed as of today.

And here is a sources.list that apt-spy has generated for me.

If you are like me you feel better when you have a list of mirrors that does not waste time generating a bunch of errors and time outs, even if it's only good for a day or so before the errors start to creep back in.

Wednesday, December 06, 2006

a simple jsp SOAP proxy

Some time ago, I wrote a SOAP proxy in jsp using axis.
Please don't ask why we needed it. But maybe it would be useful to you. If the code below is exciting for you, maybe I'll send you a version that includes the dynamic fetching of the wsdl, and the handling of soap faults.

Incidentally, since this jsp might ignore the http headers from a SOAP fault, this type of proxy can help when you are encountering errors like this, or maybe even these:

So you could either, buy flash remoting, or use the following jsp proxy. Or you might be like us, we have already purchased Flex and flash remoting, and still insist on doing things the hard way :-)
<%@ page import = "
java.util.*,
java.io.*,
java.net.*,
org.apache.axis.*,
org.apache.axis.message.*,
org.apache.axis.message.SOAPFault,
org.apache.axis.server.*,
org.apache.axis.soap.SOAPConstants,
org.w3c.dom.Document,
org.xml.sax.InputSource,
java.io.StringReader,
org.apache.axis.utils.*,
org.apache.axis.client.*,
org.apache.axis.encoding.*
" %><%

response.setContentType("text/xml;charset=UTF-8");

String wsdl = (String) request.getParameter("wsdl");
if (wsdl != null) {

%>Your wsdl xml goes here<%

} else {

String endPoint = "http://localhost:8080/axis/services/Version";
int timeout = 60000;

String method = (String) request.getMethod();

if (method.equalsIgnoreCase("POST")) {

String soapAction = (String) request.getHeader("soapaction");
int contentLength = request.getContentLength();

byte ba[] = new byte[contentLength];
request.getInputStream().read(ba);
ByteArrayInputStream inputStream = new ByteArrayInputStream(ba);
StringBuffer sb = new StringBuffer();
sb.append(new String(ba));

System.out.println("==== soapRequest ====");
System.out.println(sb.toString());

SOAPEnvelope soapRequest = new SOAPEnvelope();
SOAPEnvelope soapResponse = new SOAPEnvelope();

try {
soapRequest = new SOAPEnvelope(inputStream);
Service service = new Service();
Call call = (Call) service.createCall();
call.setMaintainSession(false);
call.setTargetEndpointAddress(new URL(endPoint));
call.setTimeout(new Integer(timeout));
if (soapAction == null) {
call.setUseSOAPAction(false);
} else {
if (soapAction.equals("")) {
call.setUseSOAPAction(false);
} else {
call.setUseSOAPAction(true);
call.setSOAPActionURI(soapAction);
}
}
soapResponse = (SOAPEnvelope) call.invoke(soapRequest);
} catch (Exception e) {
e.printStackTrace();
} finally {
inputStream.close();
}

System.out.println("==== soapResponse ====");
System.out.println(soapResponse.toString());
%><%=soapResponse.toString()%><%
}

if (method.equalsIgnoreCase("GET")) {
%>method="GET" is not implimented here<%
}
}
%>
You can test this jsp pretty easily with something like http://www.soapui.org/ We also have a version of soapui written in flash, so you can put that swf in those hard to get to places on your network for trouble shooting, or when soapui will not authenticate easily in the "https only" areas of your network.

Have fun.

apt-spy ... Segmentation fault ... sigh

Well, one of my favorite programs that I had been using on most of my debian boxen has been broken for some time now. The program is apt-spy. With the latest version 3.1-14.1 you might get something like this:
# apt-spy -d unstable -o ./output.sources.txt -w outputFile.txt -n 20
Couldn't find country LU . Skipping.

SERVER: ftp.at.debian.org
Benchmarking FTP...
Downloaded 4770019 bytes in 12.55 seconds
Download speed: 371.05 kB/sec
Benchmarking HTTP...
Downloaded 4770019 bytes in 11.22 seconds
Download speed: 415.06 kB/sec
Segmentation fault

Well, since I am an idiot, this is how I started dealing with this issue as root:
# cp -p /var/lib/apt-spy/mirrors.txt .
# apt-get --purge remove apt-spy
# wget -c http://ftp.debian.org/debian/pool/main/a/apt-spy/apt-spy_3.1-13_i386.deb
# dpkg -i apt-spy_3.1-13_i386.deb
# cp -p ./mirrors.txt /var/lib/apt-spy/.
# echo "apt-spy hold" | dpkg --set-selections

Now I do not get the Segmentation fault. But another long standing issue with apt-spy, as one poster has mentioned, is that
apt-spy ... will report 6 out of 7 servers as non-functioning, while in reality all except 1 are functioning

Well after investigating this issue a bit, it looks like the default file that apt-spy uses to test each repository is "/debian/ls-lR", while the repositories usually have no such file. More of the repositories appear to have a file called "/debian/ls-lR.gz" instead, imagine that.

So now my command line is something like this:
apt-spy -d unstable -f ls-lR.gz -o ./output.sources.txt -w outputFile.txt -n 20
And most of the servers get a hit off of this file.

You may also want to read my next post on this subject. Hope this helps someone.