Apr
17

For the second year in a row I am speaking at DevLink. The organizers have selected my “Mocking the Customer” session, which I enjoyed presenting with positive feedback at two conferences last year:

In the past I have found that customers like to change their mind about what they want. This normally happens once they see the implementation of what they asked for during the first round of requirements discussion. Developers work hard to put together the user interface using the designers, but it is relatively expensive to the customer base if it gets thrown away. Sure there are times when we hit the nail on the head, but normally I find the real solution does not shine until the customer “spits on it.”

Balsamiq Mockups is a designer that lets developers and non-developers alike build wireframes/mockups. These are blueprints for how the application user interface can look or work. Developers and users can sit down and flow through the application before hours of development are completed. Balsamiq Mockups facilitates the creation of the wireframes with lots of controls developers are using from the toolboxes provided in the native application designers.

You will learn:
* What the benefits are when you wireframe with your users
* How you can leverage customers and designers/artists to create mockups
* How easy it is to create mockups
* That wireframing actually leads to more business, and doesn’t take away revenues from development
* The different ways Balsamiq Mockups makes you a more agile developer/team

I really enjoyed DevLink last year and I look forward to meeting up with old and new friends in Chattanooga (new home of the conference) August 17th to 19th, 2011.

Apr
17

Today I reviewed a new beta release of the VFP 9 SP2 Help file being prepared by Francis Faure on VFPX. I needed to compare it to the Help file for VFP 8 and when I tried to access the VFP 8 Help menu pad I got the following error:

OLE error code 0x8002801d: Library not registered.

To be clear, I got this error trying to get the Help menu to drop down inside of Visual FoxPro, not selecting the Help option on the menu, or by pressing the F1 key (which failed to bring up the Help file). Puzzled I ignored it and opened the CHM file directly in Windows Explorer. It opened fine and I was able to provide the feedback to Francis. I rarely use VFP 8 these days. Actually I mostly use it to compare behavior to VFP 9, which was exactly the case this afternoon, or to help other developers when I am mentoring or answer questions on the various forums.

I took a shot in the dark and tried using REGSVR32 to register the FoxPro Help EXE found in the Common Files folder. I found out immediately this was the incorrect approach as REGSVR32 barked at me that it failed. Fortunately the Visual FoxPro Wiki came to the rescue as it does so frequently for me. The correct way to register the FoxPro Help executable is to run the EXE with the /RegServer parameter.

FoxHHelp8.EXE /regserver

You can do this via the Windows Command Window, but if you are running Vista, Windows 7, or an earlier OS without Administrator rights, make sure to run the Command Window with administrator access.

[I documented this for my future self in case I need it for another machine - RAS]

Mar
26

One of the things I did at the Microsoft MVP Summit earlier in March was take part in an discussion about the FoxPro Community along with Alan Griver, Tamar Granor, Doug Hennig, and the co-hosts of the Community Megaphone podcast Andrew Duthie and Dane Morgridge.

This discussion boiled out of several discussions where Andrew and Dane kept running into former FoxPro people in the .NET community. They wanted to hear more about Fox Community and later found out that the root of the Microsoft MVP program was founded in the Fox Community as well. Our discussion covers a number of topics about developer communities and is what we find common and unique among them, as well as characteristics you find in people who are actively participating in a developer community. It was a fun hour.

The interview/discussion was recorded in the Microsoft Commons in a cafeteria. In the background was lots of MVPs eating and socializing so I am really impressed with the quality of the audio. I enjoyed participating. The only wish I have is that some of the other former Fox MVPs who have turned to the “dark-side” (Rod Paddock, Rick Strahl, Jim Duffy, Julie Lerman, Kevin McNeish, Markus Egger, Cathi Gero, and Craig Berntson to name a few) and other Fox people who are now .NET MVPs (Alan Stevens, Bonnie Berent, and David Giard) were not there. Although with that many people it would have been out-of-control. The list of people here is only part of the crowd though that have helped the .NET Community actually become more of community in the sense the Fox Community has known for more than two decades.

You can listen to the podcast here:

http://www.communitymegaphonepodcast.com/Show/26/FoxPro-Reunion

Thanks to Dane and Andrew for taking the time to talk with us.

Mar
26

This is just a quick reminder that session proposals for Southwest Fox 2011 are due by this Monday, March 28. For details, read the Call for Speakers document.

Now off to get mine polished up and sent in.

Mar
22

The Ceil Silver Ambassador Fund brings a developer to the Southwest Fox conference in the United States as an ambassador for the developers in his or her country. This gives the recipient the opportunity to meet and share experiences with developers attending Southwest Fox and gives other attendees the opportunity to learn about VFP development in the recipient’s country. Please see the Ambassador Fund page to get more information on the nomination process or to learn how to contribute to it.

The Ambassador selection committee consists of Southwest Fox organizers Rick Schummer, Tamar Granor, and Doug Hennig, former Ambassadors Emerson Santon Reed, Cesar Chalom, and Bernard Bout, and VFP community members Christof Wollenhaupt, Rick Bean, and Alex Feldstein.

We are looking for nominations from the VFP community for the 2011 recipient. To nominate someone you think is deserving to be selected, please email their name and a brief list of their contributions to the VFP community to ambassadorfund AT swfox.net. Names must be submitted no later than April 15, 2011.

Mar
14

I have long been a user of the fine SQL Server developer tools produced by Red Gate. My all-time favorite is SQL Compare. Red Gate also has sponsored the Southwest Fox Conference which I am an organizer. I have attended the last two Business of Software conferences co-hosted by Neil Davidson who is the CEO of Red Gate. And I participate in the Friends of Red Gate program, which allows me to provide feedback to the product groups at Red Gate. So you might say I have a nice relationship with the company.

Red Gate made a recent announcement in an open letter to the .NET Community, which detailed some future changes to the product with respect to the licensing and most importantly that it was no longer going to be free. I watched the reaction in the .NET Community via Twitter and on some blogs, and was not surprised how many developers were reacting. Developers are notorious frugal and love free stuff, and complained loudly how Red Gate was cheating them and going back on their word/intention of always having a free version.

Any developer with few exceptions, who makes a living developing software and finds use for a tool like .NET Reflector core to their development experience certainly can afford $35 for the standard edition. Here in the USA we are talking a few pizzas or a week’s worth of Starbucks coffee. I have talked with numerous .NET developers over the last few years including people who work with me and they find this tool indispensable. The top of the line version which allows you to step through third-party assembly code is only $95. To me, as a business owner who likes when our company delivers solid software, $95 is a steal to gain functionality like this.

I emailed one of my contacts at Red Gate giving my view point. I am in the slightly unique position of having a line of commercial and some free tools that I make available to the developer community. I have experienced the developers who complain that I charge for tools that have some premium features and how I should make the pro versions free to everyone. I explained to Red Gate that they can expect some heated posts and tweets. But in the big picture, people should understand that the survival of a product for the cost of a few pizzas is minor in the big scheme of things.

As a thank you for my feedback Red Gate has given me some .NET Reflector VSPro licenses to give-away. This came to me as a total surprise.

I gave away 10 licenses to members of the Detroit Area Fox User Group last Thursday. I have 10 licenses to give-away at the Michigan Great Lakes .NET Group on Wednesday, and I have 10 more licenses to give-away here via my blog. This is close to $3000 of software. As you can see, Red Gate is a super generous company.

Rules/Disclaimer

[Edit 15-Mar-2011] All licenses have been given away.

So if you are doing any .NET development, or expect to be doing some .NET development and would like a FREE copy of .NET Reflector VSPro please send me an email: DotNetReflector AT WhiteLightComputing.com with the subject: “.NET Reflector Please”. The first 10 people who I get an email from will get instructions on how they can get their license returned to them via email. If you don’t get a response from me in 24 hours, consider yourself too late. I am fairly certain these licenses will not be around for long.

One license per individual. All tax considerations are the responsibility of the winner (consult your tax accountant for specific details). No employees of White Light Computing, or any family members of the employees of White Light Computing are eligible. Your mileage may vary, some settling may occur during shipping. Not valid outside of planet Earth. All decisions made by me are final.

Thanks

Thanks Red Gate for the great tools and the terrific support of the developer community, you guys rock.

Mar
08

Today we released the Call for Speakers for Southwest Fox 2011. Anyone interested in presenting should visit the Call for Speakers page on the Southwest Fox website, read the complete Call for Speakers document (linked from that page), and download the proposal submission application. Session proposals are due by March 28.

As in the past few years, we plan to offer a good selection of topics in core VFP development, extending VFP, using VFP with other technologies, and VFPX, as well as technology sessions to help VFP developers become better developers, not just more expert at VFP.

If you think you have something to say to the VFP community, please submit session proposals, even if you’ve never spoken at a conference before. Our community is strengthened when more people take an active role. Do be aware that speaking at a conference is a serious commitment. Even for experienced speakers, preparing a new session takes 40-80 hours. Doing it well at the conference calls for several rehearsals beforehand, too. So make sure you can commit the necessary time–the Call for Speakers lays out all the deadlines.

We’re looking forward to seeing what you all come up with. Reading through the proposals we receive each year is really exciting, and choosing among them is always a challenge.

Feb
01

Today I tracked down a strange error “File does not exist.” triggered when the users were testing the built in Stonefield Database Toolkit (SDT) Reindexing capability inside their application. We just updated this application from SDT 5.x to SDT 6.2 so we did risk breaking some of the functionality. At White Light Computing we have an external utility (EXE) that runs the Reindexing, Updates, and Repairs. This utility works fine with the current set of metadata, which made me think it was an environment issue inside the application. Sure enough the code failing is in the DBCXMgr class in the FindProperty method.

lcLongName = padr(upper(alltrim(tcProperty)), ;
             fsize('cLongName', .cPropCursorName))

The FSIZE() function is one of the functions affected by SET COMPATIBLE ON (it defaults OFF). When the setting is ON the function is returning the actual file size. When the setting is OFF, the function is returning the size of the field. This is one of those design decisions you got to wonder about. I know Microsoft made it to make the code work for dBase developers, but I think it is crazy-nuts to reuse functions in this manner. It leads to time tracking down problems like this one.

The application we are supporting has a SET COMPATIBLE ON in the start up code for reasons unknown to me. This is a global setting and it would take a considerable amount of time to track down all the possible code I would break by turning it OFF making it high risk. One workaround I could have implemented around this problem is inserting the SET COMPATIBLE OFF before the call to the SDT code and resetting it ON after the call (low risk, but only fixes this application). I decided to modify the FindProperty method to set and reset because it could be called by other application that use the DBCX Manager code. I also sent the findings to Stonefield support for their consideration.

[EDIT * 2-Feb-2011]  I have since realized that the changes are necessary throughout the DBCX Manager code. After further consideration, both Doug and I have come to the same conclusion, there are to many places to fix the code in the DBCXMgr, and no good reason why SET COMPATIBLE should be set ON. So I have changed the application to toggle the setting before calling the SDT Reindexing, Update, and Repair functions.

Glad to have that one off the bug list for our customer.