Saturday, September 29, 2007

What "soda" are you?

Amanda Congdon lead me to this. I could have predicted the answer!

And it is "pop" not "soda."

(the thing itself is really stupid, I just liked that it said I was Coke.)

What soda are you???



You're just pretty normal, you should try something new for a change! Indulge

Full Story

Friday, September 28, 2007

Windows XP to be sold through June 2008

InformationWeek reported today that Windows XP will continue to be available to computer manufacturers and retailers through June of next year. This is great news. Whenever anyone asks me about buying a new computer, I recommend they stick with XP as I don't know anyone yet that has liked moving to Vista.

Just to be sure, I checked Microsoft's life cycle page and it shows June 30, 2008!

Full Story

Wednesday, September 26, 2007

I got email from Matt Prentice today.

I was pretty excited to see email come into our general "info@" mailbox from Matt Prentice of the Matt Prentice Restaurant Group. This company owns several restaurants including the very good Coach Insignia high atop the RenCen in downtown Detroit.

So, I eagerly opened up his email, only to see that it was an out-of office reply to a message I never sent regarding a 401k. So much for my dreams of signing on a new high-profile customer.

Email Etiquette Faux Pas #1

Some bonehead from Merrill Lynch scraped and collected a whole bunch of email addresses and sent out the following SPAM:

Hello everyone,

This is just a quick reminder that Merrill Lynch is conducting 401k reviews
and offering free for life IRAs.

We have been working with a lot of the downtown businesses and finding that
there is a lot of value to be added. Please contact for further

Okay, so it is bad enough that (name withheld to protect the incompetent) sent this unsolicited message, but completely unacceptable that he put over 70 other email addresses in the TO and CC sections.

Email Etiquette Faux Pas #2

Why on earth would Matt Prentice's out-of-office reply be set to "reply to all" where exactly this kind of unintentional dissemination of information can happen. So, now all 70 of these complete strangers know that Matt is out of the office - and even why. His Administrative Assistant thought it wise to let anyone at all that sent email to him know where he was and how long he'd be gone.


Full Story

Thursday, September 13, 2007

DAFUG - Toni Feltman and eTecnologia .NET Tools

We got a special sneak preview of some of the stuff Toni's going to show at Southwest Fox.

Toni showed us two products from eTecnologia.

First we saw the .NET Compiler for VFP which allows us to create a .NET Assembly from a PRG. This is compiled to pure IL code. Currently, the compiler supports about 1/2 of the VFP commands, but "they" are actively working on more.

The authors consider the current product to be in the "alpha" stage and there should be a new release soon.

Toni showed us a simple demo PRG which scanned through records and printed a field to the desktop. She ran the PRG in Fox and printed 3 names to the screen then compiled the PRG and ran the .NET assembly from a command line and it printed the same 3 names! Cool!

I won't give away too much of Toni's presentation - you'll have to wait until Southwest Fox to get all the details, but suffice it to say that eTecnologia is making great progress on their compiler. We saw many things that are already supported and some language "enhancements" that have been added.

One of the DAFUGers commented that the author took this opportunity to change the language a bit according to his own preferences.

We then spent some time discussing what things might make for good demonstrations for Southwest Fox and the real world potential for this product.

Toni then went on to show the .NET extender which allows us to include .NET controls on VFP forms. She demoed both UI controls and non-UI controls. Although I don't fully have my head around how this actually comes together, I think there is a great deal of potential here.

Full Story

Sunday, September 9, 2007

FoxForward Wrap up

FoxForward 2007 - Alpharetta, GA USA - September 7th-9th

Kevin Cully put together a great conference that far exceeded my expectations. There were many great sessions and equally great opportunities for networking with other VFP developers to learn even more about the technological and business issues related to what we do on a daily basis.

If in the future FoxForward and Southwest Fox can figure out how to space their conferences about 6 months apart from each other, I could easily justify sending the Geeks and Gurus VFP developers to both conferences. The content was great and very worth attending. The hotel was good, but the lack of a bar on-site is always a problem at a VFP conference. We were able to use the lobby and restaurant space to gather and that worked out pretty well.

All in all, I'd recommend this conference to anyone considering attending.

Blogging: The one thing I learned is that I'm not the best at capturing the details and relaying them back to the general public. I'm more than happy to share what I can, but I don't think I'll ever be the "go-to guy" for conference blogging.

Full Story

FoxForward - Day 3

In case you were wondering, I did have more than 2 people in my session yesterday afternoon. I had a good crowd that seemed to enjoy learning what MapPoint has to offer. (wow, Tod McKenna even blogged about it here and didn't say anything like "wow, this session really sucked") Tod's got a great blog that I only discovered because of this conference.

Last night's dinner was good, but the service paled in comparison to Friday night. We went to Taco Mac which is a small chain with locations in Tennessee and Georgia. The food was good and the beer selection was fantastic - probably close to 200 options. (But don't ask our waitress about it because she clearly didn't know anything about beer, or even care about it.)

Michael Babcock - Developing in n-Tier Fashion.

This morning I caught the second half of Michael's session where he walked through some of the basics of developing an n-tier application. He discussed the "Chain of Responsibility" pattern and demonstrated separating logic into UI, business objects and data objects. Michael had a simple "customer" form that he used to demonstrate how separating the logic allowed him to easily change the back end from VFP to MySQL and even CSV without changing any code at all.

One of the things I got out of the session was that he uses record objects for the control sources of the controls on his forms.

Near the end of the session Michael discovered that in his demo code he cheated a bit and had some business logic in the form. He was able to fairly quickly (as is the point of the session) move that logic to the business object and then run the same form with the desired effect. (And the crowd got to watch him debug his own code under pressure!)

Alan Stevens - How to OGLE your application.

Alan started this session out by saying that this was the complete opposite of his Test Driven Development session. Where as that session was all about being humble and disciplined, this session was all about grand and visionary thoughts.

The goals of OGLE are to make applications Future Proof, Data Source Agnostic, Location Independent and .NET Accessible.

Alan did a great job of walking through the various factories he's created and he also did a great job explaining and justifying why he's approaching application development in this fashion.

Alan showed us his error handler which he is very proud of. He billed it as "the greatest ideas of the best VFP developers" all put together in one place.

I'm going to do a terrible job of explaining this, but Alan finished by talking about how XMLTOCURSOR chokes on XML larger than 10 or 11 MB. He then showed us how he's gotten past this problem by looking at the XML Document and basically stripping out the data to clone the schema into an empty document. Then he basically processes 500 records at a time and he's done 15,000 records with no trouble at all. This also gives him a point in the execution to update the user.

I really enjoyed this session and I'm really looking forward to seeing his Unit Testing session at Southwest Fox.

Bo Durban - Custom Report Controls with Sedna.

After Bo's Dell and the projector decided to work together, Bo showed us some of the reporting features in SP2. He started by showing us some new advanced features for report controls, particularly the new HTML output features. These new features make it incredibly easy to make HTML reports and include HTML tags and anchors.

Bo did a good job of explaining on how we as VFP developers can extend VFP long into the future. He said that Sedna is an example of how this can be done and mentioned that these new tools will be released on VFPx.

Bo then showed us the new Dynamics tab where he entered a condition that when true will apply new formatting properties. In his example he created rows with alternating colors.

Next, Bo showed us a feature in SP1 where we can use the configuration table to add our own tabs to the control property sheet. He pointed out that the "Library" column is limited to so many characters and can be too small for long paths. Bo recommended that you just put your stuff in the VFP directory so it can find it and you don't need to specify a directory.

He started with a simple demo for a new tab but then showed us a more complex example tied into the GDIPlus library. The "Custom Shape" tab he created was a good practical example of where we might create our own tabs. Bo pointed out that even though we have some great new hooks, the report designer still won't show us what things will look like.

Dave Bernard - Does your application understand you?

I had the opportunity to see this session a couple years ago, but wanted to see it again to refresh my memory about Microsoft English Query and Microsoft Speech Server.

Dave showed a demo where he brought up a page in a browser and clicked on a "speak" button and then said "list the artists" His speech was translated and converted to a query which returned a list of artists. The application "spoke" back to him "I understood you to say 'list the artists'" and prompted him to click "ok" before it listed the artists. He did several examples of asking different questions and having the system kick back various replies and data sets.

He then demonstrated more of the Microsoft English Query tool using a web-based interface (that was not voice driven)

Dave mentioned that they haven't had a "soup to nuts" deployment of these technologies, but it sure looks like there would be great potential for these technologies. He also mentioned that the Microsoft English Query product has been deprecated but he still believes there's a business opportunity worth pursuing.

Full Story

Saturday, September 8, 2007

FoxForward - day 2, part 2

FoxForward 2007 - Alpharetta, GA USA - September 7th-9th

I had lunch with Tod McKenna, Michael Babcock and Paul Ray. I got the chance to ask Tod more about his session and his background. Tod has great ideas about Data Warehousing and what it means to VFP developers. As usual, the conversations outside of the sessions can be as valuable as the sessions themselves.

Subversion - Garrett Fitzgerald

Garrett gave us a soup to nuts session on Subversion.

I have to tell you, my initial reaction was "yuck." Although I've had my share of troubles with VSS, I'm not sure I'd ever chose a tool that required command line setup and configuration.

Garrett did a good job of explaining the differences in approach between VSS and Subversion in terms of check-in and check-out behind the scenes. He also talked about how the revision numbers are handled differently. (VSS: 1,2,3, Subversion doesn't need to be sequential.)

Ok, I can't take anymore - I'm a GUI kinda guy - Subversion is not for me. Hey, the guy in the front row just said "this could really use a GUI front end." Garret mentioned that there is an API so it could be done.

Between VSS and Source Off Site I'm happy. It was a one time investment and it pays off a little more often that it should!

Off to the last session of the day - and it's mine.

Labels: ,

Full Story

FoxForward - Day 2, Part 1

Did I mention I'm in Atlanta? Perhaps the best thing about this conference for me personally is that the hotel serves Coke, not Pepsi. :)

I got up on time and got set up for my 8:00 session without any trouble. There are two "big" rooms and one small room. I was in the small room. There are about 56 people here including speakers. I had 2 in the room at 8:00. (It was early, right?) Before I got started one of the attendees said that reason she was at this conference was to see my session. (No pressure there!) She's working on an international application where color-coding regions based on certain values would be beneficial. We looked at the MapPoint site and it doesn't look like MapPoint Europe fully supports Ireland so she might be out of luck.

A few minutes into the session I was up to 5 people.

The session went ok. My newly rebuilt tablet wasn't quite as snappy as I'd hoped for, but it did ok. (My impatience and double clicking slowed things down too) Everyone stayed until the end except for Kevin Cully who had to go get ready for his session or run the conference or something like that.

We had some great questions and discussion during the session and it helped me remember why I think MapPoint is such a cool, underrated tool.

Although I really just wanted to sleep, I went to see Brian Marquis' Fox Trails session which discussed his approach for VFP web development which is based on concepts from the Ruby on Rails framework.

For the third session this morning I went to Tod McKenna's Data Warehousing with VFP. Tod's session was great and targeted at people like me who have only heard of "Data Warehousing." Tod did a really good job of explaining the concepts behind data warehousing and showed several examples of VFP code that is used in the process. If you've never seen an "intro to Data Warehousing" session, I'd highly recommend Tod's session. (I'm also going to recommend that he get on DAFUG's agenda at some point in the future.)

Next up - lunch.

Labels: ,

Full Story

Friday, September 7, 2007

FoxForward - Day 1

I went down and picked up my name tag, conference book and various other goodies from Kevin Cully's wife, Kim, and joined the crowd for the "Get to know you session" over beer, cheese, crackers and cookies. I had a chance to chat with Dave Bernard, Michael Babcock, Ed Leafe, Kevin Ragsdale, Kevin Cully and others.

Kevin Ragsdale opened with part one of a two part "VFP 101 Crash Course" which I've heard was very good from at least one attendee. It was described as "how to be a 10-year veteran in 3 hours" by this attendee.

I'd seen Dave's session on "Instrumenting your application" so I took advantage of the time to practice my session a little more. I really needed the time because I rebuilt my machine from scratch late this week and hadn't actually tested every example. (I know, I broke a cardinal rule for speakers.)

So, I worked through my examples and everything was going great until I fired up one VFP form and the installer dialog popped up. I don't have any idea what I needed, but I'm sooo glad that I brought my MSDN disks with me.

I did come down to see Stein Goering's Web Connection Revisited. Stein did a great job of walking us through version 5. Some of the highlights include Rick's integration with Visual Studio's IDE for easier building of pages. Actually - it looks just as if you were working on a ASP.NET page with a C# or VB code behind page - except that the code behind page is a PRG! Way cool.

Stein walked through several aspects of Rick Strahl's framework including security. He also talked about Rick's "panels" which can be made visible or not through code. (In this case he showed how a user's details were not visible until after the proper credentials were supplied.)

Stein mentioned that the new framework is very backward compatible and indicated that he brought forward his entire code-base which he started in 1997. He said it only took him 2-3 hours to convert the entire application.

I couldn't count how many times Stein said "Rick makes this easy"

Late Evening Session

After the session we all walked across the parking lot to the Loafing Leprechaun that did a really great job of taking care of us - and even provided separate checks for everyone. There were at least 30 of us, maybe more and one waitress took care of the whole crowd. (I think, anyway)

The conversation was great - as it usually is at a VFP conference. I sat with Dave Bernard, Alan Stevens (whom I hadn't met before), Michael Babcock and Brandon Harker. I particularly enjoyed hearing Dave's ideas on the future of his company and some of his clients. I also enjoyed talking with Alan about his Unit Testing session, which unfortunately is scheduled opposite my session. (I thought i might get a chance to see it yet since he's added a second session to fill an opening created by a speaker that couldn't be here. Unfortunately - it is opposite me again!) Fortunately I'm already signed up to see him present it as a pre-conference session at Southwest Fox.

I left a bit earlier than some of the others so that I could walk through my sample code one last time.

Labels: ,

Full Story

FoxForward - getting here

Made it to the airport on time for my 7:09 AM departure. Whew.

Slept on the plane.

Landed, got my luggage, picked up my rental car. (Remind me never to get the cheapest no-name rental from Orbitz again.) The service was a bit slow and at one point the clerk asked where I worked and looked at the Geeks and Gurus logo on my shirt and asked If I could take a look at her computer, which was on the fritz. I told her I really write custom software and don't spend so much time fixing computers - which is mostly true these days. Anyway, got the hand-written paperwork (since the computer wasn't working) and followed her instructions to take a U-turn around the counter and cross the street and wait in the "orange" section. Fortunately a shuttle was there waiting and off we went.

The shuttle took me to the off-airport lot where my car was ready and waiting. I was told it was a purple Cobalt in space B5. I couldn't see any markings for the spaces, but I did see two Cobalts. One I'd call blue and one gray - no purple. The keys didn't work in the blue one so I tried the gray one and lo-and-behold it is actually purple in the right light. These cars we all so beat up I couldn't believe they'd rent them. Anyway, other than the fact that I was parked in I haven't had any problems with the car so far.

The hotel has been great so far. Very courteous help checking me in - keys were ready upon arrival. Took my stuff up and came back down to move the car - leaving the room keys in the room. The front desk kindly made me another set and told me to bring the first set down when I had a chance. A little while later I went across the hall to get a coke and discovered I took the old set of keys which didn't work any more! Back downstairs where they kindly made the original set work again.

So I'm here and need to spend some time reviewing my session. The conference starts today, but I don't present until tomorrow at 8:00 am.

Labels: , , ,

Full Story