Wednesday, August 5, 2009
I like Balsamiq Mockups
Tuesday, July 21, 2009
Children's Ministry
"Let the little children come to me and do not hinder them, for to such belongs the kingdom of heaven." Matthew 19:14 (ESV)
The Lord Jesus Christ loves children. In this passage we see Christ rebuking the disciples for trying to keep the kids away. "Let them come... do not hinder them..."
It's easy to hinder children. We do it all the time. For example, when in church you hear that the children's ministries programs could use help, what do you ordinarily think to yourself?
I can't do that: I've never done it before.
I can't do that: the "Sunday school people" take care of them.
I can't do that: I don't relate to kids.
I can't do that: kids annoy me.
I can't do that: I'm involved in more important things.
I love Psalm 1: "Blessed is the man who walks not in the counsel of the wicked...He is like a tree..." So how do trees get there? Someone planted seeds.
Go find the children's leader at your church, and ask him how you can help. You'll be glad you did. I promise.
Friday, May 15, 2009
Get Yourself A Fraud Alert
(After reading up on the Fair Debt Collection Practices Act, my opinion is that he committed at least two violations: his phrases "relaying it to the attorney," and "wanting to play games" can both be interpreted as threats. Incidentally, the FDCPA makes for some interesting reading, and it's good to know what collectors are allowed and not allowed to do.)
We pulled a credit report on ourselves, and nothing untoward showed on them. Knowing that "Brian Smith" is a pretty regular name, we decide to place a Fraud Alert on our reports. It is fall-off-the-log easy:
- Call a toll-free number of one of the credit reporting agencies (Transunion, Experian, or Equifax).
- Using your touch-tone phone, follow the prompts which will ask you your SSN, house number, and a few other things.
- If you're married, call them again, and put an alert on your spouse's report as well.
- For continuing protection, set your favorite reminding mechanism to prompt you to renew the alerts in three months.
This takes less than five minutes.
You only have to call one of the credit reporting agencies; they will notify the other two, and you will receive in the mail an acknowledgement that you have a fraud alert placed on yourself. A fraud alert does not prevent you from continuing to use open credit accounts. A fraud alert does not prevent you from opening new credit accounts. What it will do, if you are going to open a new account, is force the creditor to take several extra steps to verify that it really is you who is trying to open the account. (We got to see this in action, and it was very cool; perhaps I'll describe that in a future post.) A fraud alert lasts for 90 days, after which you're free to place the alert again.
The FTC estimates that 9 million people have their identities stolen each year. It's a huge pain for victims, who spend tremendous effort to clean up the mess the criminals cause. So get yourself a fraud alert. It's quick, easy, and free.
Thursday, April 23, 2009
One Way To Uninstall Software
Catastrophic Failure?! Yikes. So I tried to repair my installation. Boy did I try. I uninstalled Platform Builder, hoping it would set my VS2005 back to rights. No such luck. I tried uninstalling VS2005. I tried a particular tool which offers to remove any vestiges of a previous install. After way too much time, I continue geting messages asking me to "Please repair Visual Studio." You have no idea how much I want to repair.
"The computer where you install Visual Studio 2005 should never have had any beta or release candidate Visual Studio product installed. If any one or more of these products were installed, you should rebuild the computer to verify that these products have been removed. To rebuild the computer, reformat the hard disk, and then install the operating system again."
Tuesday, April 14, 2009
No Tea For Me
Tomorrow is April 15. Tax day. The day you turn your paperwork in to the IRS to prove that you have paid enough income taxes for the year and either request a refund, or pony up what you still owe. Various gatherings are planned for the day: groups protesting taxes, the growth of government, wasteful government spending, etc. Many of these protests are being called 'tea parties," a name inspired by Rick Santelli's wildly famous rant on CNBC a few months ago.
There was a tea party in my neck of the woods about two months ago. It was put together by the Upstate Young Republicans. There is a tea party planned at our State Capitol tomorrow, and at other cities across our state.
I have a very hard time getting worked up about these tea parties. "We'll teach 'em a lesson! We'll buy them a TEA BAG!" Don't hurt yourself making that bold statement, guys. The issue is that these people think that if only their party were in power right now, then "none of this would be happening." And they are precisely wrong. There is only one difference between today's Republican and today's Democrat parties, and that is a difference of degree. If the Democrat party says "the Government is great and we want to quadruple its size," the GOP says "the Government is great and we want to triple its size" and they think that this position, being the lesser of two evils, makes them deserving of the conservative vote. Of course, the GOP won't actually say this. Especially when they are in the minority.
Venting a frustration with a bunch of friends might be fun way to spend an hour or two, but it doesn't actually accomplish anything. So no tea for me, thank you very much.
Saturday, March 28, 2009
The most fun I've had on a project.
One of the most enjoyable projects I've ever done involved all three of these things.
We had a customer who was using handheld barcode equipment in their remote locations, and they needed to upgrade that equipment; we were providing the new equipment and were tasked with writing code to essentially port their current functionality to the new devices. The existing devices used acoustic couplers to transmit data back to the home office. The particular setup at the home office was absolutely critical to their operations, and the customer was insistent that our work could not in any way affect their home office systems. The central office had a bank of modems to answer the data calls from the acoustic couplers deployed in the field. So we had to build a system, on new handheld barcode equipment running in their locations, which was "plug compatible" with their back office systems.
We found a hardware manufacturer who manufactured acoustic couplers for devices similar to the devices we were using, and we expected that the manufacturer would be able to write drivers and such so that we could use their couplers on the new hardware. In the meantime, I continued working on porting their application to the new platform.
We had continuous problems with the couplers. The manufacturer kept giving us new code to try, shipping us new devices, etc. Sometimes the couplers would make some noise when activated, sometimes the driver would fail. We were getting nowhere, and it was becoming more and more difficult to get status information from them. I started thinking "uh oh."
The customer used one-way acoustic couplers in their remote locations to transmit data to their central office. The acoustic coupler was essentially a speaker. I started thinking, "this thing is just making noise." Then it dawned on me that their new devices (they were Pocket-PC based) had built-in speakers, and could play WAV files, etc. I started wondering whether I could make noise with these things too. I figured the most straightforward way to do this was to write my own WAV file. So I learned about the format of the WAV file, and learned to write code to generate WAV files that would play tones of various frequencies. As a "proof of concept," I wrote code which would even generate DTMF tones, so I could put the device up to a phone's receiver and the device could dial the phone.
The challenge then was to take a file, break it into its component 0's and 1's, and then generate tones corresponding to each bit. I learned about Nyquist's Theorem, which describes how I need to build a sample to encode waves of particular frequencies. Very fun stuff. Took a while, but I figured it out. I could generate a WAV file which "sounded" like a real acoustic coupler, but my transmission wouldn't work with their host systems. It took me several days to realize that in C++, I needed to use the pow() function to raise a number to a power; I had inadvertently been using the ^ operator, I guess mixing that up from another language. When I figured this out, my transmission went through! Their system would give confirmation numbers on successful transmissions. My first confirmation number was "50." I wrote it BIG in my notebook that day.
For me, this is one of the most fun projects I've been involved in. An awful lot of fun. Very satisfying. Made the customer very pleased (they didn't need to buy hardware acoustic couplers). A great puzzle to solve.
Tuesday, March 17, 2009
The Escape Route
No temptation has overtaken you that is not common to man. God is faithful, and he will not let you be tempted beyond your ability, but with the temptation he will also provide the way of escape, that you may be able to endure it.Christians often look at this passage and think that "the way of escape" is some sort of magic door that appears to "show the way out." If we find ourselves in a particular sin, we think it's God's fault for not showing us the door. If I worry about financial problems, if God drops a Lotto ticket in my lap, then I won't have to worry any more. That would be convenient. Make my life easier.
So why is this way of escape so hard to find? After all, God promises that we'll not be tempted beyond our ability. Go grab your Bible. Read Matthew chapter 4.
Satan tempts Christ three times. The first time, he tempts Christ by challenging him to turn stones into bread. He answers with Scripture. The second time, he tempts Christ by challenging whether he is who he says he is. He answers with Scripture. The third time, he tempts Christ by challenging him to worship Satan instead of Christ. He answers with Scripture.
He answers with Scripture.
If you're holding your Bible, you're holding your way of escape.
We've got to know God's word. It's the way of escape.
