Monday, November 19, 2007

Visual Studio 2008 baked

Visual Studio 2008, formerly codenamed Orcas is done. MSDN Subscribers, download the bits while they're still fresh.

Friday, November 16, 2007

Book Review: Patterns of Enterprise Application Architecture

I first heard of Martin Fowler several years ago at Whilfest in Milwaukee when I attended a session on Refactoring. The session material was based on Martin Fowler's book of the same name. This past summer, I finally got around to reading a book that been on my list for at least two years, Patterns of Enterprise Application Architecture by Martin Fowler. Holy crap! Why did I wait so long. This book has lots of great information about creating large enterprise systems. However, many of the topics are applicable to smaller applications. There are chapters on web presentation, session state, distribution, domain logic, data source architecture, three just on object-relational mapping and behavior, and lots, lots more. This book should be required reading for anyone developing anything more than small, simple systems. HIGHLY RECOMMENDED.

Thursday, November 15, 2007

Crystal Reports 2008 -- Don't bother

Business Objects has released Crystal Reports 2008 with some exciting new features such as support for embedded Flash. However, the use of CR2008 for thousands of users is not possible because the RDC component has been removed. If you aren't familiar with the RDC, it is the COM server that you use from COM-based tools such as Visual FoxPro and VB6. IMO, this is a very poor business decision from BO. So, if you're using Crystal Reports with your VFP or VB6 apps, don't bother with Crystal Reports 2008.

Stop Auto Reboot

I normally don't read PC World and PC Magazine, but usually pick them up at the airport when I travel. I usually find something new or great reviews in them. Once again, I was not disappointed. The best tip I found was in PC World. They referenced a utility that will stop the automatic reboots after running Windows Update.

Now, I know I can configure Windows Update to manually run, but I like the auto download, installation, and notification. What I don't like is being forced to reboot when I'm in the middle of work. The utility is supposed to stop that. The web site says it's for XP, SP2. I've installed it on Vista, but I didn't get it on until after yesterday's updates, so I'll have to wait a month to see if it works.

Download Auto Reboot Remover here.

German DevCon Followup

The German DevCon ended last Saturday. I had two sessions, Windows Communication Foundation with Visual FoxPro and Windows Presentation Foundation with Visual FoxPro. Saturday night we had the annual Speaker's Dinner. In the past Rainer had such exotic foods as giraffe, zebra, sprinbock, and other things. This year did not disappoint.

Sunday was goose dinner at the home of Hans and Gabby Lochman. They are great hosts and the food and conversation was great. Sunday evening I had a late dinner with Andy and Marcia.

Monday morning breakfast was again with Andy and Marcia. They left for the airport shortly after and I went back to my room and napped. About 11:00 I took the streetcar to downtown Frankfurt for some sourvenir shopping, then returned back to the hotel about 3:00.

Rainer picked me up early in the evening and we made the 30 mile drive to his new home. Rainer and Kirsten have a fabulous home in the German countryside. Kirsten made apple pancakes for dinner. I then enjoyed hearing Kirsten's boys play coronet and guitar and I entertained them with a magic trick. After the boys were in bed, there was good conversation with us adults. About 10:00, Kirsten drove me back to the hotel.

I left Frankfurt mid-day Tuesday, filled with great memories and good technical information. It was great to see old friends again and make new ones. The German DevCon is a unique event and one you should not miss. I hope to be back again next year.

Friday, November 09, 2007

German DevCon: Design Patterns 2

In the next session, Andy continued his discussion of design patterns. He covered some more complicated patterns, but again backed each up with real, usable examples. The patterns he convered are: facade, factory, memento, decorator, wrapper, and hook operations. When I get home, I will definately read Andy's white papers and add some of his information to the design patterns topics on my personal wiki.

German DevCon: Design Pattern 1

Andy Kramek is doing two sessions on Design Patterns. I've studied Design Patterns for sometime and have seen several conference presentations on this topic. Andy always has excellent sessions and I was looking forward to this one. As I expected, he did not disappoint. In fact, he did the best job of explaining Design Patterns that I've ever seen. Instead of trying to cover many different patterns, he concentrated on a handful, bridge, strategy, chain of responsibility, mediator, decorator, and wrapper. He presented each one in order, defined what they do, then showed a very clear and simple example of how the pattern is used. He then talked about pros and cons of the pattern. Part is coming up and I am looking forward to it.

German DevCon: WPF

This morning I sat through a session on WPF presented by Uwe Habermann and Venelina Jordanova. It was supposed to be another German session. All the slides were in German and Uwe spoke German, but Venelina spoke in English.

They had in interesting approach to using WPF from VFP. They had data and business rules all in VFP and all the UI in WPF. The WPF form would interact with a VFP COM object that handles passing data to/from the form.

My WPF session tomorrow takes a different approach. I show how to mix WPF with VFP or create an ActiveX to host WPF on a VFP form.

I will definately look closer at Uwe and Venelina's code when I get home.

Thursday, November 08, 2007

German DevCon: Guineu

FoxPro is alive and well!!!!

And running in .Net!!!!!

And in SQL Server 2005!!!!

And on the Pocket PC!!!!

And on Linux!!!!

Don't believe me? Check out Gunieu. This a a cool, cool project being developed by Christof Wallenhaupt (sp). Imagine writing VFP code using the VFP IDE, then compiling it into .Net and running it on one of the above platforms. That's what Guineu does for you.

I sat throught Christof's session on Guineu this afternoon. He presented it in German, so if I get something wrong from my translation of the slides and demos, I'm sure he'll correct me. (All the German I know I learned from watching Hogan's Hero's on TV.)

After you install Guineu from the .ZIP file, simply DO GuineuIDE.exe. Currently, Christof has implemented about 70 commands, pver 150 functions, and 13 classes.

This is very, very cool stuff. Go check it out.

German DevCon: Keynote

After Doug's Vista session, the room filled again for the keynote, "Visual FoxPro 9 and Beyond", presented by yag. Wait! Didn't Microsoft end VFP development? What is this "Beyond" stuff?

Before Alan got started, he talked about Rainer and gave him the Visual FoxPro Lifetime Achievement Award. Well done and deserved, Rainer!

Now yag moved onto the meat of the keynote. First, review of the announcement earlier this year. No more development on core VFP. SP2 has been released. Sedna will be released soon. VFPX shared source. The "Beyond" is the community support from VFPX and the upcoming Sedna release.

Unfortunately, Alan had a hard drive failure and could not show his demos.

German DevCon: Developing apps for Vista

The conference kicked off this morning with Rainer's welcome. Then, Doug Hennig had the first session, Developing Applications for Vista. He recommends not turning off UAC (I agree). Doug spent quite a bit of time discussing virtulization of program files, user files, and registry values. He showed where to save program data so that it can be found later...and not virtualized.

Even opening files in the FFC causes virtualization, even if you don't save the file. The problem comes when you install SP2. If you previously opened the file, it was virtualized. Then install SP2. If you try to use FFC files, you'll get the old virtualized copy of the file. So, you need to delete the files from the virtualization area after installing SP2. There are lots more issues regarding virtulization. You should refer to Dougs posts (search the web) to find out what you need to do.

The RUN command in VFP does not support elevation, so you can't use it in Vista. The solution is to use ShellExecute with "RunAs" instead.

Installing a program has special needs. If the words "setup" or "update" appead in the name, Vista assumes it will require elevation. If the installer does any user-specifc tasks, it will run for the wrong user (ie the administrator) rather than the standard user. If you also allow the user to launch the application after setup has run, the app will run as administrator. You may need to rethink some of your install process. You may need to handle updates differently because standard users can't write to Program Files.

There are some issues with VFP 9.0 on Vista. The best solution is to upgrade to VFP 9.0, SP2.

After Doug spent lots of time talking about Vista issues and how to overcome them, he spent some time talking about how to take advantage of new Vista features.

The first is to use Segoe font rather than MS Sans Serif. I've said for many years that you should avould MS Sans Serif as it doesn't scale well.

Don't use GETFILE() or MESSAGEBOX(), but instead use VistaDialogs4COM that ships as part of Sedna. This gives the Vista dialogs and your application looks better.

Vista uses higher resolution icons. You need to be able to create and use icons up to 256x256 and .png files.

Windows Search is built into many Vista dialogs. Windows Search has an OLEDB Provider and Sedna has a test bench to help you get started and test Windows Search.

Even if you're not using Vista today, your customers will be, so you need to start testing with Vista and you need to do this today.

German DevCon: Welcome

Last night at 9:00, the speakers gathered in the conference area of the hotel for a welcome buffet and get together. Rainer Becker, the conference organizer, welcomed us to the conference and gave us last minute news. Jim Booth, who had been scheduled to speak could not make it. In addition, yag had to leave early. This required some last minute schedule changes. We then had the first of many large meals. The German DevCon is known for it's fabulous food and last night's buffet was no exception. My first time here (two years ago), I remarked to Rainer that I couldn't go home because after eating all the food I was over the airlines weight limit.

Wednesday, November 07, 2007

Arrived in Germany

I'm sitting in the lobby of the Lindner Congress Hotel in Frankfurt, Germany where the German FoxPro DevCon starts tomorrow. It was an uneventful, but long flight (16 hours...18 if you count from when I got to the airport in Salt Lake City). After I arrived, I had lunch with Steven Black, Rick Schummer, Doug Hennig, and yag. I hope to be able to report here daily on what's happening, but in years past the Internet access hasn't bee so great. So far, it seems better this year.

Utah Code Camp

I meant to post this earlier, but last Saturday I spoke at the Utah Code Camp. It was a great day of technical sessions. My presentaiton was on Continuous Integration and I've received some feedback that is was a great session. Yay! My session is the most downloaded of all the ones from the conference. Watch for the next Utah Code Camp next spring. If you sign up at www.utcodecamp.com, you'll get notified about it.

And in this corner....

... we have Cathy Pountney. Cathy is now blogging at cathypountney.blogspot.com. Welcome to the blogosphere.

This page is powered by Blogger. Isn't yours?

Subscribe to Posts [Atom]