Saturday, December 31, 2005

Best for the New Year!

Hope everyone has a great farewell to 2005 and a big welcome to 2006.

The new year looks to bring lots of cool stuff, including more from the FoxShow and a new site, Learning Visual FoxPro, a collection of links to great new ways where new developers can learn about Visual Foxpro.

Friday, December 30, 2005

Problems at Xdrive?

UPDATE: Effective 2/7/2006, I canceled my xDrive account after being told that my issue was still "hundreds, if not thousands" behind others in the support queue. If that isn't a reason why people should stay away from this company, I don't know what is.

Looks like I'm not the only one either with problems with xDrive.

I was looking for a reliable online backup facility. I agreed to pay them for the full year up front. Although my 5GB drive has approximately 1 GB free, one of my regular backups hasn't been successful since October.

I also received a nice little missive that said "we've moved to a large system upgrade intended to improve the overall performance. As a result, the service has been unreliable. We do not have an ETA as to when the site will be completely fixed."

Unreliable? I can't even back up or upload a file without an error.

I've been dealing with Henry Forrest who seems very interested in helping me but back on December 6th, I was told to be patient. My recent email from yesterday was greeted with a "Please provide me with your user name and password" - huh? That's a workaround answer and I know it. You HAVE my user name - it's on the case #. Their "superior customer service" list doesn't even note that there is a problem although the forums are fairly detailed with some flame comments.

According to the most recent post, Molson reports that their recent patch (from last week) had to be rolled back. Argh!

Patience has its limits. I hope 2006 brings a completely improved XDrive, otherwise it will suffer the same fate as those companies who just can't deliver what they promise.

Update: I think what bothers me most about this whole thing is that I prepaid the year for only 5GB and I could have put the same money towards a 200GB USB drive that would have allowed me to back it all up and more. And the bad reviews for xDrive keep on coming.

loose wire: Problems at Xdrive?

Thursday, December 29, 2005

Carbon footprint calculator

I've seen this ad on local TV but finally got to the site today.

Very interesting especially for those in the UK and US who are interested in how their lifestyle affects the environment.

They didn't have Canada so I had to settle for the US calculation but I'm about an 16. What was interesting was that if I travelled a bit more again, I shoot up to about a 20.

What's your carbon footprint?

Carbon footprint calculator

Top 10 Fox news stories of 2005

Craig does an excellent job of noting the top 10 Visual FoxPro stories of 2005.

Among his notes: the departure of Mike Stewart, John Koziol and Randy Brown from the FoxTeam, the shipping of VFP 9, the loss of Drew Speedie, and the reranking of VFP in the TIOBE list.

While he did note Whilfest 2006, he didn't mention Southwest Fox which is coming back in 2006 and will be sure to be a big hit and the SednaX site, which I'm sure will be showcasing an awful lot in the coming year.

The other thing that I think is still valuable to note, although not entirely VFP-related, is the elevation of Eric Rudder at Microsoft to focusing on the overall technical strategy for Microsoft. With that and Tod Neilson now running Borland, former Foxers seem to be everywhere, rather than nowhere.

Anyone have any Visual FoxPro predictions for 2006?

1. Ken Levy will sponsor the giving of Ultimate FoxEars headphones at Devcon 2006.

2. After a slow start, the SednaX site will start to show very cool technology like the Solution Explorer and a new FoxLINQ.

3. Urged on by Craig Boyd, FoxPro developers will ensure that FoxPro jumps another 5 points on the TIOBE rank.

4. The first self-sponsored FoxPro CodeCamp will be held somewhere in the world and will be streamed somewhere. Unlike typical conferences, the CodeCamp will be more of an "un-conference".

5. Someone will figure out how to make object-oriented menus work with a way-cool designer.

6. Bill Gates will actually say the words "FoxPro" and someone will take notice.

7. Someone will predict the death of FoxPro and will be flamed by the entire community.

8. Someone will predict that FoxPro will become part of DotNet, or that DotNet will become FoxPro, or something like that. No one will confirm it - but the Fox team will continue to instigate creative data handling ideas into Microsoft development environments.

9. Microsoft will stop making presentations filled with bullets.

10. A completely different way of using FoxPro will be shown, prompting everyone to say in unison "Fox rocks!"

Wednesday, December 28, 2005

Handling buffered data in Visual FoxPro

Andy Kramek has done another one of his "and now let me explain how this works" posts with a great 6 page discussion on the two data buffering functions (TableUpdate and TableRevert) in Visual FoxPro.

His original article on data buffering (which explains what is buffering and the like) may be found here

Combining this with the other learning resources that the other FoxBlogs are offering and there is no excuse for knowing everything about Visual FoxPro!

Tuesday, December 27, 2005

The FoxShow Listener Survey

If you've been listening to
The FoxShow, please take our listener survey. This is something I am using to try and improve the overall quality of the show.


On Teachers, certification and tests

Jeez, I hate going from tangent to tangent but I was about to. On my last post about Tag Clouds, just as I started talking about the teachers cheating , I recalled a conversation I had this holiday season with a couple who are in the academic world and was amazed when they expressed outrage (yes, it was real outrage and incredulity) that a teacher had to pass a test to become a professor at a university, to gain a higher position. The conversion went so far as to even suggest that competitions for government positions was "beneath" someone who had gotten to a certain point and a certain age.

(ok - have you stopped laughing at this yet? Because it's true).

I used the opportunity to drop in the obligatory Doonesbury ID joke because it's based on the same premise - if things don't grow, learn or evolve, then yes, I agree - it only needs to be tested once but since things DO grow, learn, mutate or whatever, then YES, test early and test often, I say.

Small businesses may choose a database programmer, or a web designer based on their reputation or a portfolio of their past work but at some point, you will be competing with someone for a job. It's a ......test. Certification is a way to help bypass all of those tests so you're dealing with everyone at a similar level. And no, it's not perfect (think of the drivers who really shouldn't have passed their driving test) but it's a start.

I recently took an online MS Academy course. Unfortunately, I was disappointed. Not by the course, mind you but by the topic. There are certainly ways the course could be improved ( a topic for another post) . The topic looked very interesting but by the end of the course, I think everyone would agree that the technology involved was immature (or the tools involved were just not there yet) - to be used in a real business or complete software solution. But still, it was a technology to be learned about - which was great.

Only an industry that has not changed in 100 years would not benefit from recurrent training - and even then, even if the industry or technology did not change, the sad fact is, PEOPLE change. (people learn more, people forget more, peope grow) In the aviation industry, recurrent training is a requirement. In the software industry, where some look at development as art and others as science, certification is still there. And while there are some cases of people who were not "trained" in a particular field being able to teach things and revolutionize an industry, most fields require people who are able to prove their ability. So why wouldn't teachers believe this?

And just as one would be frightened to think that a doctor who operated on me suffered from a debilitating disease, there may be teachers who are on education's front lines who don't feel they should have to prove they are capable of learning themselves.

Are there other teachers that believe that they are beyond recurrent training?

The mind boggles at the thought.

Finding patterns...

So now that Rick has put up the FoxBlogs tag cloud, some may be asking "what's a tag cloud?"

Basically it's running the content analysis service from Yahoo (who knew they had one? Everytime Google talks about something, everyone's on it but Yahoo? Needs to do better job of marketing to developers- or maybe I should just listen better )

What does that do? Wow - no wonder no one likes to listen to developers ramble on...they talk and talk and talk but don't really say what it does... (this is because I just went through 5 minutes of links without a good "stand on its own" description.)

Essentially, it attempts to put things into context automatically. For example, when Ken Levy talkes about Headphones, , the entire set of threads are tagged with that term. Now how does it recognize that term? That's the trick.

From Yahoo's own Y!Q (context query), "Y!Q analyzes the context you provide and determines automagically the most important keywords to use." - so you can provide the context but it determines the keywords.

Uh - "automagically?"

In short, it must look for patterns. Patterns are really quite interesting. I'm just starting to read as opposed to listen, to Freakonomics by Steven Levitt and Stephen Drubner.

(it was on my Audible wish list but I ended up getting the hard copy version)

In one chapter, they describe how they identified that some teachers in the Chicago Public System were cheating on standardized tests (yes, teachers, not students - read the book - very cool chapter on why a teacher would be motivated to cheat) - and they did it through patterns ( teachers "fixed" certain exams with the correct answers in a "pattern").

Now patterns aren't necessarily keywords but it would be very cool to take the TagCloud data at the end of, say, a year, and see if there are any patterns in the way people blog - kind of like a VFP ZeitGeist

I love finding patterns in data - it's one of the things I love about using FoxPro interactively. While the TagCloud application doesn't do the analysis automatically, it is very cool the way it highlights keywords that everyone is talking about (obvious ones like Microsoft, vfp and visual foxpro) and ones that have only been mentioned a few times or only on a particular site (like that all important word, "argh!")

Monday, December 26, 2005

FoxBlogs : A dynamic tag cloud for the FoxPro community

Very cool, Rick.

As Visual FoxPro developers start blogging about things, they instantly get tagged.

Very cool!

Thursday, December 22, 2005

Maybe France does get it after all..

After hearing about the strange laws being passed by France lately, this one really had me going.

So you can't have FREE software, but downloading " copyrighted files is legal as long as it is for private use only" - hmmm...maybe they don't get it after all. Then again, this was being reported from the Xinhua News Agency so who knows.

Craig Bailey's BBQ stage

While I have been known to barbeque in the middle of winter, Craig's post made me smile.

Because I woke up this morning and it really does look just like Christmas - there is white snow everywhere and soft snowflakes have just started to fall....

What a contrast to "The weather is warm, but not too humid, the days are long".

Saturday, December 17, 2005

Becoming a GMailer....

Gmail is slowly but surely taking over my life where a Microsoft product once held a very key place. (yes, this message has a lot of links just so you can see that it's no longer one product but several that does what needs to happen)

I used to live in Outlook but after having worked with various Outlook and Desktop search tools, NewsGator Outlook and the like - my Outlook just freezes or crashes all the time - and that's AFTER reinstalling. gMail allows me to send emails and specify the outbound email (so it can come from my aksel address instead of my gmail).

The Search is, not surprisingly, great (who needs to organize messages anymore?) but the biggest change just happened this week when they turned on mobile gmail at

Where I used to rely on ActiveSync to ensure my PDA had all my inbox messages and the like, now I can get and respond to my email whereever I am (yes, I have a data plan with Rogers, my communications provider). Send email to others? Why not just blog it?

Yes, I still need ActiveSync for syncing files but between gMail mobile, Trumba , Newsgator Online, Basecamp's WriteBoards, it's looking more and more like I could "live" on the web with minimal desktop software. I'm thinking of even downgrading my Newsgator account down to a non-business level - except that I couldn't store and review all of my downloaded feeds. (hmmm....when are they going to improve Desktop search to search within DATABASES?)

What I really need now is for 37Signals to make a more mobile friendly version of BaseCamp, Backpack or even just the TadaLists. Yes, the current versions are fairly light-weight on a web site but if they could do it more like mobile gmail or NewsGator mobile, that would be killer.

Update: They DO already (at least for BackPack!) Just add /mob to the end of any URL and the 37apps are instantly PDA friendly! Very cool guys.!

Am I relying too much on an Internet connection? Possibly, yes but once the Google Grid comes online, I may be ready to be assimilated.

Now I just need that online database...I'm not completely sold set on GoogleBase, Craig joked about it but hey, West-Wind lets you build the application with FoxPro, if I could build my rich front end with FoxML, and support online web reports via XFRX, I might be able to build that very cool Web app, right online!

Haven't tried gmail, ask me for an invite!

Friday, December 16, 2005

How ironic...

that Microsoft would name their foray into web 2.0 conferences Mix 06 when their most recent product features the most ridiculous DRM schemes around...

Oh sure, they like to get into the "mix" with CrossFader but come on!

Next thing you know their next Office or Development product will be dubbed "Open Sourcer" or "FavaBeans"...

Ya sure, I get that it's not aimed at the DRM community but rather developers but calling it Mix just sits wrong with me.

Cool logo though.

Not quite the end of COM....

I'm taking an online course about Developing Smart documents and one of the modules is on Developing DLL-based smart documents (with Visual Studio)

While obviously you have access to all of the core UI components (text boxes, lists, etc), one comment struck me:
If none of the built-in controls match your requirements, use an ActiveX one. Bear in mind that ActiveX controls written in .Net framework langauges are NOT (emphasis mine) directly supported and it is recommended that you use COM-based ActiveX controls.

Sigh - the more things change, the more they stay the same....

No Drag and Drop?

As much as I like talking about Drag and Drop, I'm not always sold on its usefulness. So I immediately found this little article (found via Yahoo) interesting:
Sesame Software: going against the flow | The Register

One thing that bugs me about reading news articles online - the real lame ones never put links to the COMPANY (because they want all the links themselves) so here's where you can find Sesame Software and their Relational Junction ETL Manager (uh, I'll just call it RJet!). a tool that lets you "Extract Transform and Load production data into your data warehouse. Integrate Oracle, SQL Server, MySQL, Sybase, and DB2 databases. Leverage your existing SQL skills with native SQL scripting, or use our SQL builder technology." - oh yeah, did I mention? They have Visual FoxPro support coming soon.

What does it do? It links data together so you can copy your data from one or more tables into a target table. Sounds a bit like BizTalk functionality but it does kind of cool. Because of the way it's built, it can move 2 million records an hour and only use 67 MB of memory. Is that a lot? Hard to say but I can certainly see why Drag and drop isn't a huge need here. Sure dragging and dropping makes for great demo - but when you're trying to integrate databases, it's not about the demo - it's about the DATA!!!

'The Perfect Fit'

This story keeps on getting more press.
VARBusiness Nielsen and Borland - 'The Perfect Fit'

Interesting because back in 1999, it was Tod who "leads Microsoft's Developer Group as it transforms the Web from a static tool into a vast network of personal and programmable services."

If you read the background story, it really is fascinating. Back in 1999, here was the comment ""If you're building applications, I'd love to meet you, find out what you are trying to do, tell you about the products and technologies we have, and figure out a way for us to work together so you can build the best applications," Nielsen says "That's the key to success for developers and for ________." - <---- enter company name here.

What's cool is that Tod is still completely committed to doing it. What's interesting is where he's doing it - he's just raised my interest level in Borland which had dropped off a fair bit when Philippe Kahn was the CEO, who liked to show off his arrogance.

Changing your community on the fly

Anil's Antisocial Behavior post is almost as good as all the comments under it as well.

The reason that Google gets more "free passes" than Microsoft? Maybe there is something to that "Don't be evil" thing

Why should I use FoxPro?

Andy and Craig have already pointed to this:TPCI - TIOBE Programming Community Index. What I like is this statement:

"The index can be used to check whether your programming skills are still up to date or to make a strategic decision about what programming language should be adopted when starting to build a new software system."

In other words, don't come to me with ignorant statements like "no one works in Visual FoxPro anymore" or "it's a dead language" - seems I heard that mentioned ten years ago when PowerBuilder was the tool of choice. Where is that now? Oh yeah, I think it's number 90 on the list. Even last year, Visual FoxPro was higher than that.

Sure the list is based on Google, MSN and Yahoo searches but hey - it's ALL about mindshare and the VFP community has plenty of it.

Ed Bott to Microsoft: Loosen Up

I love this post of Ed Bott's"
Scoble can talk about Office 12, but I can’t

As with all those great NDAs: "This information blackout applies to everyone except Microsoft employees, apparently."

He forgot - and CNet employees too as it turns out. (granted Cnet is a news site - but since when is journalism and blogging not the same? - oh right, as of January of this year!)

I'm with Ed. From the VFP perspective, it's nice that the Fox team has opened up a lot more. Some users in the "private" forums are wondering "where is everyone?" because they're all out talking abou FoxPro and what they're doing. That said, it would be nice if they joined Craig's latest goal": Today position 20, tomorrow the world!

Now Craig...about that SednaX discussion and the FoxShow interview....

Congrats Rod and Jessica!

DevBlog: Daddy Rod Paddock

The pictures don't seem to be coming up though...

Whil's back: Moving from Windows to Linux and now back to Fox....

Whil just announced the return of the Great Lakes Great Database Workshop 2006 with one track of 14 sessions covering every major aspect of Fox development.

Sounds like he's gotten 10 speakers all set and ready to go for for developers not looking for the faint of heart developer conferences - his original email said (updated):

"What can you, the developer who is committed to VFP as a long term development platform, do to optimize the next ten years of your life?

This is the question that GLGDW 2006 is going to answer.

This is not a marketing conference masquerading as a technical conference. This is not FoxPro for Dummies. There are no 'Intro to X' pre-cons or 'How to use feature Y' sessions here. This is an advanced workshop - for experts.

This is a workshop for thoughtful people with attention spans. This is an event about wisdom."

Sounds ambitious - but Whil usually pulls off a great conference and it's nice that it's focused directly on FoxPro and seeing it through for the next 10 years....

But it also sounds like there's now also an opportunity for that "Beginner to FoxPro" series that Craig is doing.

The Dates:
Opening Keynote starts at 7 pm on Friday, April 21.
Regular sessions start at 8 am on Saturday, April 22.
Closing Keynote ends at 12:15 pm Monday, April 24.

The Sessions:
Session Topics include Best Practices for...
Development Environment Setup, Error Handling and Reporting
Class Design, User Interfaces
Data Access, Refactoring, Coding Standards
Debugging and Scaffolding, Reporting
Project Management, Deployment, Performance
Professional Developer's Toolkit

Monday, December 12, 2005

Craig expands on the bar graphs...

Craig takes Calvin's original post and produces a revised set of classes, using GDI+ or not to great online bar graph examples.

The SPS Weblog - Bar Graphs - Part II

Who thinks too fast?

Richard comments on my original post about misinformation, really promoting planning:

"I usually spend two weeks (and sometimes even more) in the planning phase which includes the creation of the database structures and overall flow. "

I'm not sure I agree that "thinking fast" is necessarily a bad thing but I certainly agree that "thinking deeply" is required with it.

Consider watching Rick, Markus, Ken or Steve demonstrate a concept at a presentation - these guys think fast - yet they also think deeply at the same time.

Just as there are too many consultants and IT specialists who act too quickly, there are also far too many consultants and IT specialists who prefer to get paid for "thinking" instead of "doing".

The end result? Their project takes forever to get done and by the time it's done, they haven't really "thought" of what happens in the interim. Yet they get the reputation of being "great analysts".

I certainly don't advocate stopping at the first thought and then moving ahead on it - as Richard notes, there are too many people who do that. But you need to be able to
carry that thought through to its inevitable conclusion without spending days doing it. Then if it doesn't work - you move onto the next idea.

That's definitely a skill - and there are tools that can really help do it for you! Both in software and project management.

Nothing wrong with saying "let me think about it" and then coming back with something that is truly innovative - but wasting time on thought without having anything to show for it - is just plain bad. You may "feel" good about your introspection but in the end, what you just did was, in fact, nothing.

Foxpro.catalyst :: FoxPro workBLOGS and more

Another Oz Fox Blogger: Scott Scovell

Craig pointed this out but his partner in crime on the FoxTabs and Solution Explorer also has a blog where he goes through some of his trials and tribulations in coding with VFP.

Great examples on this site!

Scott Scovell on Visual FoxPro

Friday, December 09, 2005

Scaling VFP applications

So after my last post, I thought "hmmm---how does one ensure their application IS scalable?"

Here's a good definition.
Rick talks about it here but it's all about the web.

Kevin talks about it when discussing the Mere Mortals framework here but again all about the web.

The BlackBean site has a great repository of these and other articles.

But once again, most of the articles deal with web-based VFP applications. No surprise there, I suppose. The fundamentals are typically the same and if you really want a scalable application, why not deal with an environment where there may be a million users coming in from all areas instead of your standard applications.

What's great though - is the summary of Rick's To SQL or not to SQL. Using VFP data was recommended as a local data source for retrieving data.

"When we converted from local data to a SQL backend data access turned more between 2-3x slower for short requests and up to 5-10times slower for complex queries. "

The downside: "The site needs to import new Inventory data several times a day and it was necessary to import it while the site was still running in live mode, while people were reading this data. This tended to corrupt indexes frequently causing mysterious crashes and data consistency errors. "

Ah, the index - the glory and bane of a FoxPro developer's existence!

But to note: "Overall performance of the site applications dropped by about 50% when the move to SQL Server occurred. This is something you should plan on if you make the move from local data." However "The main reason for the move to SQL at Surplus was for better stability."

After you take away, it's the design of the system that counts - and as Randy Jean noted in a comment on the original post, "it's not just code design , poor database design (and management) will cause all sorts (of) scaleability issues."

So how should you work with server data? Consider the ideas noted here and here on the Wiki

Of course as with the Wikipedia, all information shown here is deemed to be true until proven false.

How misinformation feeds FoxPro myths

So, Mary-Jo Foley calls VFP the "Rodney Dangerfield" child of Microsoft's solution and we wonder why there are mixed messages.

Steve Black emailed me this post where the supposed "Head of information technology" at an Indian company had to upgrade because "the software was not scalable as it had been developed on FoxPro".

Excuse me? The older software was probably not scalable because this guy, or the person who worked there before him, who had originally commissioned the software likely wrote it not to scalable. Yes, it was written in FoxPro - but it could likely have been written in Visual Basic.Net or Delphi or anything.

Applications are not inherently "not scalable" because of the platform but more because of the design.

Near the end of the article , the comment "Compared to legacy systems, which needed to be changed every six or seven years, SAP solutions are expected to prove effective for 20 to 25 years and beyond." - - "are expected to"???

SAP has only been in business since 1972 and while they have commendably only had 3 core versions but even so, R3 was only released in 1990 and I'm sure there have been upgrades since then. And is SAP written in the same language as it was back in 1979? I don't THINK so!

But why is it successful ? Because it was designed properly. (and I'm not an SAP expert - so I'm sure there are those who would say otherwise as well)

I've seen this before in lots of organizations. It sounds to me like the "head of IT" was likely someone who designed poorly written systems in the past, recognized it, became a manager who preferred "third party" vendors who would have to do the real scalable design work and then blamed their past failures on the product. Have you ever run across those kinds of people before?

By contrast, some businesses have been running the same FoxPro applications for years. One Canadian government agency refused to support FoxPro - their IT department thought that Paradox would be the next big thing - in the early 90's , even though their survey applications and many internal office systems were running with FoxPro. Their IT department changed and went to Visual Basic and SQL Server solutions. While the SQL database may have been fast, their programmers designed the new survey applications poorly and as a result, they went back to the ten-year old FoxPo program which wasn't just reliable but faster as well.

Craig Bailey posted this about the new MS certified Architect - this sounds like something that every head of IT should have BEFORE spreading mis-information.

General programming rule: It's not about the product - it's about the DESIGN!!!

I even recall hearing someone who worked at Microsoft say exactly the same thing. Internal systems at Microsoft weren't always written to be scalable and thus had to be re-architected.

Heck! I'm in the middle of re-architecting an older application to be more scalable and run under SQL Server. The older application used indices and filters to show information to a user. Could it run with a million records? sure! Should it? No! So the issue is one of how do you redesign it? In VFP or under another language?

In the most recent FoxShow (to be posted today I hope), John Petersen noted how he was interested to see how the arguments for FoxPro actually worked in a business meeting.

After reading this article and the mis-information spread around through it and other journals and by otherwise 'well-meaning" "IT experts", you can start to see a pattern. It isn't bad marketing that FoxPro is up against - it's ignorance, plain and simple.

How do you fight ignorance? By making BETTER applications (yes, I've said this before)

Some have noted that Ruby on Rails doesn't follow along the path of traditionally designed n-tier applications, choosing speed over architecture. Uh, tell that to 37Signals, the group behind Basecamp. Not sure how many users they have using it, but sure feels like a scalable application to me.

So once again, let me repeat: It's not about the product - it's about the DESIGN!!!

Thursday, December 08, 2005

Visual FoxPro 9.0 Service Pack 1 Released

Visual FoxPro 9.0 Service Pack 1 has been released.

Be sure your version gets updated. Here's what they fixed.

Yea! MindManager does OPML!!

My favorite Mind Mapping tool, MindManager, now directly supports OPML files with both Imporing and Exporting!

Looks like my show notes for the FoxShow are about to get completely OPML'ized!

It even includes support for the new Simple Sharing Extension for shared RSS!!

MindJet - thanks for listening!!

Using DABO to build an application

Check out this Flash-based screen cast (the WMV version will be uploaded to the FoxShow shortly) about how the DABO Application Wizard works. It was done through an hour-long demo with Ed Leafe.

Buliding Building an Application with Dabo

I have some more casts on this technology that I'm just editing but I wanted to put this up so you could see it.

Craig Bailey's thoughts on stylish apps

"Anthony Hopkin" FoxPro apps? I have a vision of a Fox head with a muzzle on it..."yes, I ate the SQL with some fava beans and a nice Chianti...."

Wednesday, December 07, 2005

Bug Bash

And this says it all for a Friday!

Too bad it's only Wednesday...

XFRX now exports to OpenOffice

What is a harbinger of things to come from more tools I'm sure, Eqeus just announced that the new version of XFRX, a very awesome reporting engine for FoxPro, now exports to OpenOffice.

So not only can you run your report (formatted) to Excel, Word and the rest of the world but now you can use your reports in the state of Massachusetts!

Great stuff, Martin!

Tuesday, December 06, 2005

Johnny Carson Podcasts!

So maybe podcasts aren't going to be around to stay but you can at least enjoy classic bits of the master on your favorite MP3 player...

Monday, December 05, 2005

Redmond | Column: FoxPro Not an Endangered Species

In case you haven't seen it yet, here's a direct link to the Mary Jo Foley column on FoxPro.
Send her an email with your thoughts.

There's not a lot of new news in the article - what's more interesting is that a journalist is covering it with the attitude of "maybe Microsoft sees that not everything is a DotNet world". Funny, because I think most FoxPro developers see Microsoft's attitude as being the opposite, despite the ongoing efforts but kudos to M-J for the article and the possible follow-ups it may generate.

Let's make no bones about Sedna though: it's about making FoxPro play nicer in the DotNet and Vista sandbox. You can easily tell a bunch of VB developers to recompile their COM component in VS and now it's a DotNet piece. You can't say that to FoxPro developers because there's no upgrade path so for those developers who believe that "COM is the answer" (a mantra by Microsoft prior to DotNet) and are now stuck in DLL version hell.

I think with the Sedna initiative, they are trying to show an openness and possible support for future development. A few years ago, expecting MS to open the Office file formats would have been considered sacrilege - now it's happening. As she notes in the article, the success of Ajax is forcing MS to re-evaluate "smart-client or nothing" approach (I'm currently taking a course on Smart client so I'll report back on that in a separate post).

Does Microsoft have bigger things in mind for FoxPro? I think Ken's words on the Fox show were not "no" but "not at this time" and as we've seen, things have a way of changing. Want to enforce change? Get involved in the SednaX projects (Craig et al - are you guys simply doing it all or going to provide templates for how you want it done?)

Now then, as to the comment "less than sexy database tool"? What is "sexy" about a database tool? Is it the interface design tools? Is it the applications that you can build with it? After seeing a demo on DABO, I'm beginning to think that the reason FoxPro is considered "less than sexy" is because developers treat most of these applications as "data entry" applications. You're not building data entry applications - you're building BUSINESS applications.

Excel made number-crunching sexy - it didn't mean spreadsheets sexy though. It's what you can do with it. Look at Basecamp - project management can be boring - but it made it exciting by inviting everyone to see it. Microsoft would do well to make MS Project a more community based tool (Project Central just didn't do it right) just like BaseCamp.

The FoxTeam has shown with stuff like the Task Pane and Project Environment that you can make a cool looking interface with a typical application. That's where developers should be jumping to. As long as we show a boring "data entry" application when someone says "what can you do with FoxPro?" - then it will always be considered less than sexy.

Make it exciting - make your users excited - make the managers excited - make everyone excited about your product. That's not Microsoft's job - as the developer, that's mine and yours.

Friday, December 02, 2005

Learning VFP 102: Scope

Craig Boyd just posted his Learning VFP 102 : All about Scope (not the mouthwash), he also discusses arrays.

Great stuff Craig!

One of the things I wish he had for this was a "take-away" or some kind of call-out that popped out on top to tell people what he was saying about important rules. Sure he gives out the source code but cheat sheets would be really helpful!

One note: great example for using DEBUGOUT.

So I'll start doing some on these take-aways. Although you may also want to refer to Andy Kramek's two part article as well.

Part I

His Guidelines
1. Stay away from public variables. Use screen properties instead for global objects or create a property on your form. Try and avoid them.
2. Also avoid private variables. (huh? - and he really didn't explain why.) Ah - he did mention on the side - send them as parameters instead.
3. Always remember to declare your variables. Just because you can, doesn't mean you should. ( I just did a screen cast with Ed Leafe about Dabo where they don't call them non-strongly typed variables, they call them "Dynamic" instead.)
4. Use Local Arrays. If you need to share arrays, don't use Private - send it in as a parameter. Ah, Andy Kramek had a better suggestion a while back - pass it as an object!

One other suggestion - run the online on a high resolution - I was set to 1024x800 and I still couldn't see it well at all. The videos are available online and in SWF format.

Thursday, December 01, 2005

Trumba Lets others see what's Coming Up

I used to live in Outlook for all of my scheduling but somewhere between Outlook crashing, hanging, syncing with my PDA and using gMail for more of my regular email, I've really started getting into Trumba's Online Calendar tool.

I can have both private and public calendars (or as many as I want). To protect privacy, I typically name the events fairly generically except as they relate to public endeavours such as podcasts, screencasts or public conferences.

When users are looking at my public calendar, they can click the calendar icon and it will add it automatically to their own calendars (iCalendar, HotMail Calendar, Outlook, email or whatever)

You can even allow others to update your calendar as well by sharing it. Or publish it as a Conference Schedule for easy access.

Another very cool feature is the ability to synchro with Outlook so that my Pocket PC can always be up to date.

Still - it's not perfect.

Some things I wish it could do:

a) allow others to request meetings with me via email after they see the schedule
b) allow users to switch between other views instead of just the monthly or something else
c) have private meetings simply blocked out on the calendar instead of just being hidden.
d) RSS Feeds (don't even get me started on this one)

Let me know if you'd like to try it out. I think it's a by-invite only but I'm able to invite others to join.