Archive | 2003

He who knows cannot say, he who says cannot know

Mark Michaelis, a SourceSafe MVP, posts to his blog the following:

Unfortunately I can’t comment on the future of Visual Source Safe except to say that significant work is being done in this area. If this MSDN chat is any indication, the demand is huge as the entire chat is essentially consumed with, “will the next version support…” type questions.

It’s great to hear that there’s some progress being made. As the author of the only currently-available book, Essential SourceSafe, I’ve contacted aa number of Program Managers at Microsoft trying to get involved in new versions, and finding out if a revision to the book might make sense. I was surprised at finding SourceSafe 6.0d in my latest MSDN shipment without a word it was coming.

Day Two at DevCon

Saw great sessions today:

  • Using Web Services with Visual FoxPro 8 – Doug Hennig
  • Using Visual FoxPro 8 to Provide and Consume XML – Toni Feltman
  • Graphing with Visual FoxPro – Ted Roche
  • Lunch with the Speakers for me. Had a great time with the team at Omnicell, Inc.
  • Building a Data Access Layer with Visual FoxPro 8 – Toni Feltman
  • How to Be an Independent Consultant – Mac Rubel

Next comes the DevCon dinner party.

Reprise: Did I just feel the earth move?

Steve Gillmor talks about the Allchin Tax in this article in Computer Reseller News. The punchline:

Microsoft’s RSS engineers are already hard at work–they need buy in from the leadership and a core authoring object that plays fair across the XML blogosphere.

Sounds like quite the challenge.

Bonus Session One Notes

Europa goals
Based on wish list customer feedback
Enhance database language and types
Additional end user UI features
Increase developer productivity
Improve report writer significantly
Extend XML, .NET and SQL Server interop
More designer hooks for extensiblity

UPDATE: Thanks to Tamar Granor for a few updates. 

Top 10 ER Rejections
Object oriented puzzle
Localized Pig Latin version
ACTIVATE WINDOW mywindow NOWINDOW WAIT WINDOW NOWAIT WINDOW IN WINDOW whatwindow
Help rewritten in Dr. Suess Language (Fox In Box)
DWIM() function
More product bugs and perfomance impediments
XCMD support
SET RTFM ON/OFF
BROWSE wizard
CreateObject(ãFoxClippyä)

Europa Reporting
Protect existing FRX investment
Added output flexibility
Open architectures
Better resuse story
Design-time improvements
Access to report objects at runtime

Design-Time Improvements
International
FontCharSet ö font script support
Grid Scale dialog ö inches, centimeters
Design-time labels
PROTECTED design mode
Tooltips
Better DataEnvirnonment story
_REPORTBUILDER, Design-time events
_REPORTDESIGNER

Runtime Improvements
Object Oriented syntax
More flexibility with Report Chaining
New output types (e.g., XML, HTML) and open architecture to plug-in 3rd party output engines.
Report processing events.

Europa has no limits...

Calvin video
USE Customer, IntelliSense kicks in, now color changing as it is being typed, compiling in the background.
Randy demos
New limits: arrays > 64k
Program code (individual procedures) unlimited
Huge number of features of SQL: 
    No limit on joins No limit on subqueries No limit on UNIONs No limit on # of tables No limit on IN() args Multiple subquery nesting GROUP BY in correlated subquery Sub-select in FROM clause Subquery in select list projection ORDER BY using field name with UNION clause Optimize LIKE "sometext%" Optimize TOP N UNIONs in INSERT INTO ·.SELECT Subquey in UPDATE Correlate INSERT/DELETE Optimize deleted tags
New data types ö VarBinary, timestamp, VarChar (field width actually returns VarChar length), CAST() function ICASE() function Binary index÷smaller than existing indexes (up to 30x). Size maintained during replace, only increases on append. Toolbox feature with dock-ability for native VFP form Anchoring for resizable forms- no code running Button graphic alignment with text ö spacing between graphics and text: PictureMargin, PictureSpacing Example of graphical button with hotkey Checkboxes with multi-line text Listboxes can hide the scrollbar if there aren't enough items to fill the list Listbox RowSourceType of ãCollectionä Grid MousePointer and MouseIcon property in Column and Header properties Themes in labels support ãGroupBoxCaptionä GDI support for labels ö let's you specify an angle or rotate at runtime! Polylines and Polygons Bells and Whistles, arrow and shapes Project manager will allow you to open Class Library in Class Browser. When docked, there are many more items on the context menu. Can load PRGs in Class Browser. Property sheet: cursorschema string was limited to 255 characters from CursorAdaptor builder Zoom dialog supports extended characters, like carriage return for captions ExpressionBuilder with syntax coloring and background compiling Add property features with default value! Calvin video: new property dialog, default value, no longer limited to 255 characters, too.

Running user code in the property window reads a memo field and can execute script (IntelliSense in the memo field!) wrapped in XML. Example of Inputbox() call to prompt for custom properties. This might support Capitalization for custom properties or ãFavoritesä tab for property sheet.

Visual FoxPro DevCon keynote raw notes

Hope to polish these up a little later, but here’s the raw typing, no spell-checking. About 300 attendees at the 8 AM keynote.

Taskpane
Toolbox
Empty class
AddProperty() and RemoveProperty()
Collection class
Structured Error Handling
TRY/CATCH/FINALLY
Event Binding
BINDEVENT() and RAISEEVENT()

enhanced getfile dialog
now auto-increment for tables
enhanced view designer
cihild member subclassing
vcs support for more classes
many new features for Grid control
Code Refences tools

Beyond XMLToCursor/CursorToXML
Hierarchical XML support
Multiple VFP data cursors to XML
XML to multiple VFP data cursors
XML diff grams
VFP data cursors, tables, DBC
ADO.NET compatible
XMLTable and XMLField classes
Full control of XSD schema used

CursorAdaptor Class
Similar to DataAdapter in ADO.NET
ADO/OLEDB
ODBC
Native VFP cursors
XML and XML Web services
Programmable events
Stored procedures control

New Data Features
DataEnvironment subclassing
DataEnvironment Builder
CursorAdapter class
CursorAdapter Builder
XMLAdapter class
Form BindControls property
Enhanced VFP OLE DB Provider
VFP 8.0 and VS .NET interoperability

VFP 8.0 Performance

LOCAL a1[10000]
x1=SECONDS()
FOR i = 1 TO 10000
	a1[i]=CREATEOBJECT("Custom")
ENDFOR
RELEASE a1
x2=SECONDS()
? x2-x1

VFP 7.0 = 24.5 seconds
VFP 8.0 = 0.45 seconds

DevCon Tips-of-theDay
This is the 14th DevCon conference
msdn.com = msdn.microsoft.com
Free GenScxrnX suppot expires in 2004
dot prompt still works in VFP 8.0
VFP 8.0 runs great on Tablet PCs
VFP 8.0 is hotter than Palm Springs
Europa is a moon of the planter Jupiter
Microsoft is working on Europa!

Works well with Visual Studio .NET
Greatly enhanced XML support
XML Web services
ADO.NET
VFP OLE DB Provider
ASP.NET Web forms
.NET Windows forms
Visual FoxPro Toolkit for .NET
VFP and .NET teams working together

.NET 
Software for connecting information, people, systems and devices
(video)

8:32
Building Connected Applications
Connected business, connected experience, connected development
clients, experiences and solutions, tools, services, servers, 
.net in the center, web services wrapped around all

Visual Studio .NET 2002 (last version)
.NET Framework 1.0
Simplified deployment - no DLL Hell, no need for Registry, version DLLs
All language under one roof
All application types under one roof (web, windows, devices)
Single development paradigm
Language enhancements- object-orientation to VB.NET, C#
ENterprise lifecycle support
ACT, Enterprise templates, Microsoft(r)Visio

.NET Framework 1.1
increases scalability and performance
side-by-side execution with .NET Framework 1.0
Enables no-touch deployment from the internet
code access security in ASP.NET
ASP.NET mobile controls
Native ODBC and Oreacle DB 7i/8i support
IPv6
.NET Framework version 1.1 included with Mocrsosft WIndows Server 2003

Buildeing connected Applications
Mobile development
mobile web browser - visual studio.net, ASP.NET mobile controls
PocketPC devices used .NET Compact Framework - can use WinForms 

Developer productiviity
increased IDE perforamnce
startup time reduced - now using a native control
improved IntelliSense(r)
Dynamic help faster
Object browser faster
Code editor drop-down menus faster

Upgrading applications
run multiple versions of VS side-by-side
- VS 6.0, 2k2, 2k3
upgrade from VS 2k2 to 2k3
only the project files are updated
doesn't change any of your sources
application configuration

Enhanced "Add Web Refernce" dialog
Code editor enhancements
net components
debugging enhancedments
community support and search

Languages
VB.NET 
fullu oo, free threading, structured error handline
host vb 6.0 controls in WinForms
Improved IntelliSense

C++: managed extensions
ISO C_++ conformance

C# component-oriented, type-safe
J# Java-language syntax, full integration with VS,NET

Microsoft Visual SOurceSafe
Application Centter Tes
Enterprise Templates and Policies
Enterprise InstrumentationFramework
Visio - UML tools 
Code Obfuscation

More information:
New .NET Framework certifications
MCAD
MCSD
Self-paced book/resources
Upgrade from VS 2003: $29

Empowerment through Ecosystem
Partners and community
150 VSIPs and compoent vendors, 300+ tools
.NET Code Wise Community
Third-party .NET community "influentials:
online communities reach 4.5M user sessions/month
Authors, publishers, trainers, speakers
INETA (International .NET Association)
200+ INETA user groups worldwide representing 66,0000
700+ MSDN user 

Demo: VFP 8.0 and .NET
VFP Business Tier, COM object accessed bother from VFP Form and using ASP.NET XML We Services to connect to .NET WinForm, .NET WebForm, Pocket PC, Cell Phone

Happy birthday to me

Got a surprise birthday party, cake and all, when friends interrupted my pre-conference session wth 5 minutes to go to sing “Happy Birthday.” Attendees seemed amused. After one refrain, they let me get back to finishing the presentation, only 10 minutes late or so. Carrot cake, a clever card and a golf club cover in the shape of a fox made it a fun birthday surprise.

The conference starts in earnest in two hours, with an 8 AM keynote. Reception tonight and a bonus session, an outdoor dinner and another bonus session tomorrow night will round out the schedule. We’ll be busy.

A switcher speaks

All my bags are packed, and I’m ready to go… (to OS X). I read David Weinberger’s account of PC woe today, and a smile ran across my face.  Not because I wish ill on David; I most certainly don’t (and I feel his pain).   I smile because his account of having to reinstall software on his Windows machine coincides with my re-reading for the second time David Coursey’s Macintosh OS X for Windows Users: A Switcher’s Guide.


You see folks, I can now admit it.  I am deep into the planning stage of making my next computer purchase, which will be an Apple 15″ Powerbook with OS X.  I’m not going to get into the Windows bashing.  I like Windows 2000 and Windows XP.  They’re pretty stable and it’s not Microsoft’s fault that it has to make its products compatible with every grain of sand on the beach.


But I have several computers in my home and it’s not my fault that they require constant rebooting and reinstallation of software.  Or that they attract viruses like horses attract flies.  Even when they work as they are supposed to they require tweaking and configuring. 


Of course, all computers require maintenance, and I’m glad for the very thorough education in this process that the various versions of Windows have afforded me.  So now I stand before you today a very technically savvy man, with a great respect for Microsoft engineers, as I say: I don’t have the time or inclination to do it any more.  I’ll always have at least one computer that has Windows in my home, but starting soon I’m going to have at least one that has OS X and I suspect that will be the beginning of a beautiful friendship.


And I will always feel a tremendous sense of loss for the poor souls who will have chosen to remain behind, toiling in the fields of configuration and reinstallation.  I’d stay behind and help, but I just can’t.  I’m lazy and I don’t want to fight my computer anymore.  When I put it to sleep I want it to go to sleep and when I open the case I want it to wake up quickly. 


I have the feeling that switching to Mac OS X will be an awakening of sorts for me to.  It’s not a panacea, but I will be that I won’t be rebooting as often as I do now.  I’ll let you know….

[Ernie the Attorney]

Powered by WordPress. Designed by Woo Themes

This work by Ted Roche is licensed under a Creative Commons Attribution-NonCommercial-ShareAlike 3.0 United States.