Zero to Awesome - Predevelopment Templating

Duplicate, duplicate, duplicate. Yes, it's true, we live in a world of copy and paste (darn those iPhone developers). When you don't need to type it a second time there's no reason to do so. Especially, when each time you type it again you increase the chances of error.

In this video, I walk through some of the templating steps you can take as part of your predevelopment stage. Even as an experienced developer, I often find myself creating a layout or table from raw FileMaker elements. When I find myself doing it, I make myself stop and create (or add to) a previous template and copy from it. It's truly the quickest way to your desired result.

Make your own suggestions about possible template fields, layouts, tables, elements in the comment area!

Comments

Its great to see the direction you are taking with the templating. Your core fields are certainly an improvement over the ones I suggested. Another area you might want to consider adding is a data driven dynamic navigation system. When built in at the outset it accelerates the speed of development dramatically while making the solution infinitely more flexible and hence easier to maintain. You can see an example of this system, which also works well in Instant Web Publishing, at www.iapprentice.com. (Use the guest account to log in). I am sure you have an even more clever way but whatever way is used this is a really powerful feature that I have found useful to use as a basis for all my solutions in conjunction with an interface table for the various graphic elements.

I look forward to your next episode.

Best regards,

Ralf

P.S. The iapprentice opportunity is not current so this is just an example solution.

Best regards,

Ralf

Yes, a data-based navigation system will be used in the template. I've been using one myself for all of my solutions. The system I'll be using is a derivation of these articles.

http://www.filemakermagazine.com/videos/smart-layouts-a-new-way-of-doing-things.html

and here

http://www.filemakermagazine.com/videos/smart-layouts-revisited.html

I've modified what is shown in the videos to use a table based navigation model.

-- Matt Petrowsky - ISO FileMaker Magazine Editor

Hi Matt, since you mention these articles based on my product LayoutProperties, let me point a link to them : http://www.bh-a.com/downloads_1.1.html
A version 3 is now in a beta phase, and will bring some outstanding new features, such as animated transitions, conditional modal windows, window elasticity...

Fabrice Nordmann,
BH&A

Dear Matt,

That's great news indeed especially as I suspect you will tie things into the graphic elements that you provide though the excellent Scriptology Theme Library.

One technique that I use regularly in a dynamic navigation system addresses the problem of users knowing where exactly they are. The easiest way to make this apparent is by either making the current section bold or underlined or, my preference, by changing the color so that the unselected sections are in black text while the selected one is blue or red or whatever. This is very easily achieved, assuming that globals are used to effect the navigation, by having a field in the related table called "NameDisplayCalc" or something like that which is a calculation that merely compares the value of the name field with the name global field. If the values match the content of the name field is displayed in the RGB color specified otherwise it simply displays the name value as is. The benefit of this arrangement is that it does not require special relationships and of course the RGB values can further be tied into separate data fields so the user can change them without having to have admin access to the solution.

The reason I mention this is because it is so powerful and convenient and I don't see it, or anything like it, implemented in the Scriptology solution. Anyway. I hope this is helpful and I can't wait to see what you come up with which may be even better.

Best regards,

Ralf

Best regards,

Ralf

Matt,
I noticed that even though you are using a set of 'standard' fields that you copy/paste from table to table, you don't use prefixes or suffixes to add any metadata to the names. That is, ways to tell what sort of data are in each field. For example, for my 'standard set' I use:

pkey_n
__created_by_t
__created_on_s
__updated_by_t
__updated_on_s
__record_stats_t (calculation that shows "Record n of m (x total) [sort state]" )

(where 'n' is number, 't' is text, 's' is timestamp, 'b' is a container blob, etc.)
This is based partly on the FileMaker Development Conventions doc. and has really helped me to quickly remember what each field was for and its datatype.
Do you typically not use conventions like this? Or do you drop them for the videos (for simplicity)?

Thanks again for all the help yo've given through the videos. It seems like I'm always back-porting something I've learned into my databases to make them more efficient or capable :-)

Regards,
Derek

I will be using some conventions to indicate metadata about fields. Primarily, I'll be using lowercase vs UPPERCASE to differentiate data vs environment. Although in a data separation model this isn't as necessary.

In the previous video in this series I talked a little bit about how I'll be using Simple Naming for fields - but I'm not above breaking out of convention when it makes sense.

I find this to be the most easy to understand and I'm not personally fond of adding a lot of extraneous metadata to the fields themselves. I prefer having a reference resource for looking up fields. Such as using the Print option in the fields listing and using field comments efficiently. I'll have to talk about this in the series.

http://www.filemakermagazine.com/videos/zero-to-awesome-predevelopment-conventions.html

-- Matt Petrowsky - ISO FileMaker Magazine Editor

Hi Matt,

As you point out repeatedly in your series, it is easier to copy and paste and duplicate whenever possible rather than to start from scratch. I am certainly a convert on that front which however begs the question why not use your awesome solution, when it is done, as a starting point for one's one solution? This is certainly what I would be inclined to do since it makes every sense though of course it depends on the kind of final solution that one is creating.

Can you please elaborate on your policy with regard to the above. I suspect it is ok for subscribers to use the template freely for in-house solutions while some kind of license seems appropriate if the final solution is intended to be commercial. If that is correct please advise what kind of cost one is talking about for such a license.

Best regards,

Ralf

Best regards,

Ralf