Tuesday, December 26, 2017

New White Papers for 2017

I added eight new white papers to my web site, all from sessions or articles I wrote in 2016: http://doughennig.com/papers/default.html. The new ones are:

  • Need Help? HTML Help Builder to the Rescue: Creating documentation for an application is something most developers dread. However, using West Wind Technologies' HTML Help Builder makes working on a help file almost fun!
  • Working with Microsoft Excel, Part 1: Microsoft Excel is one of the most widely-used applications ever. Because of its popularity, other applications often need to read from or write to Excel documents. This document, the first of two, discusses several mechanisms for outputting VFP data to Excel.
  • Working with Microsoft Excel, Part 2: Part 1 discussed several mechanisms for outputting VFP data to Excel. This document looks at ways to read Excel documents into VFP.
  • Advanced Uses for Dynamic Form: Dynamic Form is an under-used project in VFPX. Its ability to create forms quickly and dynamically isn't something every developer needs but if you need it, Dynamic Form is indispensable. In this document, Doug discusses some advanced uses for Dynamic Form, including data driving the markup code.
  • A Generic About Dialog: In "Advanced Uses for Dynamic Form", Doug discussed a couple of dynamic dialogs built with the assistance of Dynamic Form. In this document, he presents another dynamic, generic dialog, this time to display application information.
  • Processing Whole Words: Visual FoxPro has many text processing functions, including ATC() and STRTRAN(). However, these functions suffer from one flaw: they are character-based rather than word-based, so they can find substrings you may not have wanted. In this document, Doug presents replacement functions that word on whole words.
  • Creating Beautiful Web Sites Easily Using Bootstrap: Laying out a web page using HTML and CSS can be challenging. Botstrap is a free, open source framework for developing responsive, mobile-first web sites. It solves many problems web developers typically face and makes it easy to create beautiful web sites in record time, even for inexperienced developers. his document shows how to get started with Bootstrap, examines using its grid system to easily layout your page elements, and discusses how Bootstrap components add attractive and functional elements to your web site. We'll do a "makeover" of a real web site to show how easy is it to make it more attractive, functional, and mobile-friendly.
  • Lessons Learned in Version Control: Rick Borup's sessions at previous Southwest Fox conferences really helped me get started using version control for my application development. Since then, I've made a ton of mistakes and learned a lot of lessons the hard way. This document discusses what has evolved into my team's best practices for version control. It's intended for those who are familiar with version control but are looking for ideas about how to improve their processes.

Wednesday, November 22, 2017

Photos of German DevCon 2017

Jean Maurice from France took a lot of photos at the recent German DevCon 2017, November 16-18. They’re available in a Google Photos album at https://photos.app.goo.gl/GHEjwRIP8vobz6tw2.

Tuesday, November 07, 2017

Issue Accessing Microsoft Excel Spreadsheets

A Windows update on October 10, 2017 caused the Microsoft Excel ODBC driver (specifically, the “Microsoft Excel Driver (*.xls)” driver) to stop working correctly. Many of our customers use the ODBC driver to report on Excel data in Stonefield Query, including combining data stored in Excel with data stored in traditional databases such as Microsoft SQL Server in a single report, something Stonefield Query can easily do.

The solution is to use the “Microsoft Excel Driver (*.xls, *.xlsx, *.xlsm, *.xlsb)” driver instead. However, this requires installing the latest Microsoft Access Database Engine components, which you can download from https://www.microsoft.com/en-ca/download/details.aspx?id=13255.

Friday, November 03, 2017

2017 VFPX Administrators’ Award

Congratulations to Greg Green for being awarded the 2017 VFPX Administrators’ Award at Southwest Fox 2017. He was awarded this for his work on the VFPXWorkbookXLSX project, a tool that allows VFP developers to read from and write to Excel XLSX files quickly and easily without needing Excel installed. I’ve used VFPXWookbookXLSX for several years and can attest to it usefulness.

Monday, October 16, 2017

VFP's Weird File Naming Rules

Visual FoxPro was written for Windows, which is a filename case-insensitive operating system. So, startup.PRG and startup.prg are the same thing. However, there's a lot of inconsistency in how VFP names files:

  • If you don't specify the extension in the MODIFY command when you edit a file, edited files end up with uppercased extensions. For example, for files named form1.scx and form1.sct, MODIFY FORM form1 results in files named form1.SCX and form1.SCT when you save.

  • If you do specify the extension in the MODIFY command, the extension of the main file is set to whatever you specify and the extension of the memo file is uppercased. For example, for files named form1.scx and form1.sct, MODIFY FORM form1.scx results in files named form1.scx and form1.SCT when you save. If instead you specify MODIFY FORM form1.SCX, you end up with form1.SCX and form1.SCT.

  • The MODIFY command also respects the specified case of the stem name. For example, for files named form1.scx and form1.sct, MODIFY FORM Form1.scx results in files named Form1.scx and Form1.SCT.

  • The extension rules don't apply to VCT files: their extension doesn't change when a class is saved; if it was lowercase before, it's still lowercase after.

  • The extension rules are different for tables. The DBF extension doesn't change case when the table structure is changed or records added, modified, or deleted, or the table packed. CDX files are created with an uppercased extension but if you rename it to a lowercased extension, it isn't changed back to uppercase when you change the index structure, add, modify, or delete records, or PACK or REINDEX the table. FPT files are also created with an uppercased extension but if you rename it to a lowercased extension, it isn't changed back to uppercase when you add, modify, or delete records, or PACK the table. However, it is changed back to FPT if you modify the structure of the table.

Why is this important? Because if you use Git, you may have problems when VFP renames a file behind your back because Git is case-sensitive for filenames. Fortunately, it can be configured to be case-insensitive by executing these commands from a Command or PowerShell window:

git config --global core.ignorecase true
git config --system core.ignorecase true

Here's do a little experiment in VFP to test the case-insensitivity:

md c:\testcase
cd c:\testcase modify command startup.prg && enter some text, save, and close ! git init ! git add startup.prg ! git commit -m "Initial commit" modify command startup && notice no extension specified: when change text, save,
&&and close, file is renamed to startup.PRG ! git status --porcelain > status.txt modify file status && shows that startup.prg has been modified ! git commit startup.prg -m "Saved changes" ! git status --porcelain > status.txt modify file status && shows that startup.prg is no longer modified

Tuesday, October 03, 2017

New VFPX Project: Project Explorer

Project Explorer is a new VFPX project that replaces the VFP Project Manager with a modern interface and modern capabilities. It has most of the features of the Project Manager but adds integration with DVCS (including built-in support for FoxBin2PRG and optional auto-commit after changes), support for multiple projects within a “solution,” allows you to organize your items by keyword or other criteria, and has support for easy “auto-registering” addins that can customize the appearance and behavior of the tool. It includes extensive documentation.

I’m presenting sessions on Project Explorer at both Southwest Fox 2017 and German DevCon 2017.

I’m looking forward to feedback on this project. Please create issues for any problems you experience or any suggestions you have for improvements.

Wednesday, August 30, 2017

VFPX Has Moved

As I mentioned in my earlier blog post, VFPX had to move off CodePlex to somewhere else and the VFPX administrators chose GitHub. The migration is now complete: all projects have been moved, with the exception of a few that were dropped because they never had any source code and were abandoned by their project managers. The new link for VFPX is https://vfpx.github.io/.

Thanks to the project managers who assisted with the migration, and especially to Steve Black, who provided a lot of advice and guidance.

Wednesday, August 09, 2017

Southwest Fox 2017 Early-Bird Discount Extended

Oops, we goofed! One of us went on vacation and completely forgot to schedule the end of July reminder to get registered before the Southwest Fox 2017 early-bird deadline. So to make up for this colossal mistake, we have decided to extend the early-bird discount of $50 through August 21st.
The conference takes place October 26-29, 2017 in Gilbert, Arizona and we really hope you can be there. Head over to the registration Web site today.

If you've already registered, we thank you. Can you help us remind your fellow developers who have been procrastinating about the looming deadline by sharing this message, drop a hint at your local user group, or tweet about it? Spread the word by telling others you going on our Facebook event.

Check out our list of amazing speakers and dig into our session tracks. Follow the news about the conference on our blog.

Monday, June 19, 2017

Southwest Fox 2017 Super-Saver Deadline Approaches

Listen to Andrew MacNeill’s FoxShow podcast featuring Rick, Tamar, and I talking about Southwest Fox 2017.

Registration for Southwest Fox 2017 has been open for a few weeks and there’s less than two weeks until the Super-Saver Registration deadline. If you register before the end of June, you save $125 and we’ll throw in a pre-conference session worth $99. Not only that, but you’ll be entered in the drawings for up to three scholarships that will reduce your costs some more.
Check out the speakers and topics on the conference website.

Please beat the rush so we still have some fingernails left when July begins! No need to wait, we won’t charge your card or cash your check until August!

Thursday, June 01, 2017

Southwest Fox 2017 Registration Now Open

Registration for Southwest Fox (http://www.swfox.net/register.aspx) is now available. See http://www.swfox.net/speakers.aspx for a list of speakers and http://www.swfox.net/sessionsswfox.aspx for a list of sessions. Super-Saver Registration, which saves you $125, is available only through June 30th, so don't wait.

Putting on a conference is a risky endeavor. Conference centers require a guaranteed minimum income to block the dates of a conference; for a conference like Southwest Fox, that minimum is in the tens of thousands of dollars. We have to commit to the conference center by July 2nd and need your support by July 1st to make that commitment. We will not send out any "We need your help" appeals so please do not wait; register by June 30th! We know most of you like to wait until the last minute to avoid the credit card bill arriving too soon. We will not charge any attendee credit cards or cash any checks until we have committed to going forward (sometime after July 2), so this is not is a reason to wait.

Rick, Tamar, and I look forward to seeing you in October!

Monday, May 01, 2017

Southwest Fox 2017 Speakers and Sessions Announced

Speakers and sessions for Southwest Fox 2017 have been announced. We're happy to have Toni Feltman back as a speaker this year.

Some sessions I’m personally looking forward to seeing are:
  • Tamar's Turning Data Sideways: Crosstabs and Pivot Tables. I've always been interested in cross-tabs and Excel PivotTables so seeing Tamar (the Queen of VFP SQL) present her take on this is high on my list.
  • Rick Schummer's Data Corruption, the Bane of Our Existence. I was actually the one who convinced (arm twisted, cajoled, forced under threat of blackmail) Rick to do this session, as I think it's very important for VFP developers.
  • Phil's Google Is Your Friend. I always get a lot of great marketing and business ideas from Phil's sessions and this one sounds like another winner.
  • Christof's Optimizing and Debugging. Christof is a "speaker's speaker"; his depth of knowledge of the innards of VFP are unmatched. His subtle sense of humor always makes his sessions fun, too.
I’m also really pumped about my Introducing Project Explorer session. In fact, I’m so stoked, I’ve already started working on the white paper!

Registration opens soon; send an email to info@geekgatherings.com if you want us to email you when it’s ready. See you in October!

Tuesday, April 11, 2017

No Southwest Xbase++ in 2017

Geek Gatherings LLC, the organizers of Southwest Fox and Southwest Xbase++, have partnered with Alaska Software and the best speakers from the Xbase++ community to run Southwest Xbase++ for the past five years. Last November, Alaska Software informed us their core staff members would not be presenting at conferences in 2017, in order to focus on their other commitments including the LEAP program, which tests Visual FoxPro source code projects in Xbase++.

After hearing the news, we initially thought we would put the Xbase++ conference on hiatus for a single year as Alaska expects to have speakers available again in 2018. But after talking with others in the Xbase++ Community (including Alaska), we decided to try to run the conference without speakers from Alaska. We issued the Call for Speakers for both conferences. Unfortunately, we did not receive enough session proposals to put together an Xbase++ conference this year. We are naturally disappointed, but Alaska will continue to sponsor Southwest Fox and we are sure Southwest Fox will be a terrific conference on its own as it was for eight years before we incorporated the Xbase++ conference. In 2018, we hope to return to our usual dual conference format.

We look forward to announcing the session topics and speakers and to getting registration rolling for 2017 very soon. Thank you for your continued support of Southwest Fox.

Monday, April 03, 2017

VFPX is Moving

Microsoft recently announced they are shutting down CodePlex. Since CodePlex is the home of VFPX, the open source site for add-on projects for Visual FoxPro, VFPX has to move. The VFPX administrators (Rick Schummer, Craig Boyd, Jim Nelson, and I) started planning the move as soon as we saw the announcement. We don't have a lot of details yet, but we'll be moving all VFPX projects to GitHub. One thing that'll change is the structure: each project will have its own repository rather than all projects being in one place, which is the way modern open source projects are managed. Stay tuned for more details in the coming weeks.

Monday, March 20, 2017

Southwest Fox 2017 Call for Speakers Deadline Extended

We’re still looking for a few more speaker submissions for Southwest Fox 2017. If you have something to share with our developer community, read the Call for Speakers and then use the Submission site to send us your ideas. Please let us hear from you by next Monday, March 27.

Monday, February 27, 2017

Southwest Fox/Xbase++ 2017 Call for Speakers

Anyone interested in speaking at this year's conferences is invited to submit topics. See the Call for Speakers page for details.

Wednesday, February 22, 2017

What Do You Want to Learn in 2017?

We're getting close to releasing the Call for Speakers for the 2017 conferences; be sure to watch the News page for the announcement. Our blog post offers prospective speakers ideas for topics taken from suggestions from previous years' attendees. There are a lot of cool topics there so "I can't think of anything to present" isn't a valid excuse for not submitting your proposals to speak this year.