fusebox 3.0 the framework, the methodology, the community nat papovich, fusium
TRANSCRIPT
![Page 1: Fusebox 3.0 The Framework, The Methodology, The Community Nat Papovich, Fusium](https://reader035.vdocuments.site/reader035/viewer/2022062407/56649dd95503460f94aceb99/html5/thumbnails/1.jpg)
Fusebox 3.0The Framework, The
Methodology, The CommunityNat Papovich, Fusium
![Page 2: Fusebox 3.0 The Framework, The Methodology, The Community Nat Papovich, Fusium](https://reader035.vdocuments.site/reader035/viewer/2022062407/56649dd95503460f94aceb99/html5/thumbnails/2.jpg)
Complexity
Amoebas at the startWere not complex;
They tore themselves apartAnd started sex.
- Arthur Guiterman
![Page 3: Fusebox 3.0 The Framework, The Methodology, The Community Nat Papovich, Fusium](https://reader035.vdocuments.site/reader035/viewer/2022062407/56649dd95503460f94aceb99/html5/thumbnails/3.jpg)
Agenda
• Basics• Benefits• Technical• Methodology• Community
We have a lot to cover!
![Page 4: Fusebox 3.0 The Framework, The Methodology, The Community Nat Papovich, Fusium](https://reader035.vdocuments.site/reader035/viewer/2022062407/56649dd95503460f94aceb99/html5/thumbnails/4.jpg)
Fusebox Basics:Free
• Fusebox will never be a for-purchase system.
• Just like the rest of ColdFusion, extras cost.
1. Custom Tags2. Example Applications3. Online Training4. Extensive Articles
![Page 5: Fusebox 3.0 The Framework, The Methodology, The Community Nat Papovich, Fusium](https://reader035.vdocuments.site/reader035/viewer/2022062407/56649dd95503460f94aceb99/html5/thumbnails/5.jpg)
Fusebox Basics:File Organization
• Fuses– Fusebox for files or templates – not Custom
Tags– Naming conventions (covered in Technical)– Each fuse performs a discrete task *– Small file size makes debugging easier
• Circuits– Mini-applications *– Directory-based– Aggregate similar functionality– Variables available across multiple files
![Page 6: Fusebox 3.0 The Framework, The Methodology, The Community Nat Papovich, Fusium](https://reader035.vdocuments.site/reader035/viewer/2022062407/56649dd95503460f94aceb99/html5/thumbnails/6.jpg)
Fusebox Basics:File Organization
![Page 7: Fusebox 3.0 The Framework, The Methodology, The Community Nat Papovich, Fusium](https://reader035.vdocuments.site/reader035/viewer/2022062407/56649dd95503460f94aceb99/html5/thumbnails/7.jpg)
Fusebox Basics:Fuseactions
• Control the flow of the application• Traditional model of a controller
file– MVC: Model-View-Controller in J2EE– main.c ?– A default fuseaction is set
![Page 8: Fusebox 3.0 The Framework, The Methodology, The Community Nat Papovich, Fusium](https://reader035.vdocuments.site/reader035/viewer/2022062407/56649dd95503460f94aceb99/html5/thumbnails/8.jpg)
Fusebox Basics:Fuseactions
<cfswitch expression = “#fusebox.fuseaction#”>
<cfcase value=“doSomething”><cfinclude template=“act_aFuse.cfm”>
</cfcase>….<cfcase value=“doSomethingElse”>
<cfinclude template=“dsp_anotherFuse.cfm”></cfcase>
</cfswitch>
dsp_anotherFuse.cfm
act_aFuse.cfmThe
fuseaction
The fuses
dsp_yetAnotherFuse.cfm
![Page 9: Fusebox 3.0 The Framework, The Methodology, The Community Nat Papovich, Fusium](https://reader035.vdocuments.site/reader035/viewer/2022062407/56649dd95503460f94aceb99/html5/thumbnails/9.jpg)
Fusebox Basics:Architectural Decisions
• With experience, you will be able to:– Lay out circuits– Nest circuits– Choose persistent variables– Create application settings
![Page 10: Fusebox 3.0 The Framework, The Methodology, The Community Nat Papovich, Fusium](https://reader035.vdocuments.site/reader035/viewer/2022062407/56649dd95503460f94aceb99/html5/thumbnails/10.jpg)
Fusebox Basics:Sites Using Fusebox
• AutoByTel.com– SuperBowl ad: massive (1900%?) growth
• RoomsToGo.com– Largest furniture retailer online– Cluster of 10+ servers
• eBags.com– First Fusebox implementation: 1997– Largest bag retailer online
![Page 11: Fusebox 3.0 The Framework, The Methodology, The Community Nat Papovich, Fusium](https://reader035.vdocuments.site/reader035/viewer/2022062407/56649dd95503460f94aceb99/html5/thumbnails/11.jpg)
Fusebox Basics:When To Use
• E-commerce sites– Easy to implement circuits
• Intranets– Plug-n-play new applications
• Web Applications– Massive size demands strict
architecture
![Page 12: Fusebox 3.0 The Framework, The Methodology, The Community Nat Papovich, Fusium](https://reader035.vdocuments.site/reader035/viewer/2022062407/56649dd95503460f94aceb99/html5/thumbnails/12.jpg)
Fusebox Basics:Terminology
• Circuits• Fuseactions• Fuses• SES
– Search Engine Safe URLshttp://www.mysite.com/index.cfm/fuseaction/user.login/
id/14.htm
![Page 13: Fusebox 3.0 The Framework, The Methodology, The Community Nat Papovich, Fusium](https://reader035.vdocuments.site/reader035/viewer/2022062407/56649dd95503460f94aceb99/html5/thumbnails/13.jpg)
Moving On… Fusebox Benefits
![Page 14: Fusebox 3.0 The Framework, The Methodology, The Community Nat Papovich, Fusium](https://reader035.vdocuments.site/reader035/viewer/2022062407/56649dd95503460f94aceb99/html5/thumbnails/14.jpg)
Fusebox Benefits:Speed Of Development
• Lower costs• First to market is the survivor
Russ Johnson and one co-worker built www.csx.com full content management system in 2 weeks from scratch, having never written a Fusebox application before.
![Page 15: Fusebox 3.0 The Framework, The Methodology, The Community Nat Papovich, Fusium](https://reader035.vdocuments.site/reader035/viewer/2022062407/56649dd95503460f94aceb99/html5/thumbnails/15.jpg)
Fusebox Benefits:Ease Of Maintainability
• Fusedocs– Documentation for initial creation
AND maintenance
• Simplified, obvious application flow– Fuseactions
• Component independence– Fuses– Circuits
![Page 16: Fusebox 3.0 The Framework, The Methodology, The Community Nat Papovich, Fusium](https://reader035.vdocuments.site/reader035/viewer/2022062407/56649dd95503460f94aceb99/html5/thumbnails/16.jpg)
Fusebox Benefits:Community-Owned
• Bug-free– Closer to Linux than Microsoft
• Not bound to a company
![Page 17: Fusebox 3.0 The Framework, The Methodology, The Community Nat Papovich, Fusium](https://reader035.vdocuments.site/reader035/viewer/2022062407/56649dd95503460f94aceb99/html5/thumbnails/17.jpg)
Fusebox Benefits:Reusability
• Reuse generic components across multiple applications
• Reuse fuses and fuseactions across the same application
![Page 18: Fusebox 3.0 The Framework, The Methodology, The Community Nat Papovich, Fusium](https://reader035.vdocuments.site/reader035/viewer/2022062407/56649dd95503460f94aceb99/html5/thumbnails/18.jpg)
Fusebox Benefits:Extensible
• Does not preclude Custom Tag use• Non-encrypted framework
– But!! Changes to core introduce compatibility issues
![Page 19: Fusebox 3.0 The Framework, The Methodology, The Community Nat Papovich, Fusium](https://reader035.vdocuments.site/reader035/viewer/2022062407/56649dd95503460f94aceb99/html5/thumbnails/19.jpg)
Fusebox Benefits:Established Framework
• Focus on the business requirements
• Focus on how to make the customer happy
• Do not focus on how to keep it all together
• Do not focus on technical issues
![Page 20: Fusebox 3.0 The Framework, The Methodology, The Community Nat Papovich, Fusium](https://reader035.vdocuments.site/reader035/viewer/2022062407/56649dd95503460f94aceb99/html5/thumbnails/20.jpg)
Fusebox Benefits:Fast Learning Curve
• Intermediate developers can pick up Fusebox in a day
• By learning Fusebox alongside ColdFusion, beginning developers can learn right from the start
![Page 21: Fusebox 3.0 The Framework, The Methodology, The Community Nat Papovich, Fusium](https://reader035.vdocuments.site/reader035/viewer/2022062407/56649dd95503460f94aceb99/html5/thumbnails/21.jpg)
Fusebox Benefits:The Anti-Benefits
• Debugging myth– Tracking down
variables– Separation of display
from action– Fewer lines per
template
• Overhead– Milliseconds penalty for
great gain– Scales to millions of
hits per day– Poorly architected code
does not scale
• No application.cfm use– <cfmodule> does
not call application.cfm again
• Commitment– All applications
grow– Plan ahead now– Five files in a .zip
![Page 22: Fusebox 3.0 The Framework, The Methodology, The Community Nat Papovich, Fusium](https://reader035.vdocuments.site/reader035/viewer/2022062407/56649dd95503460f94aceb99/html5/thumbnails/22.jpg)
Moving On… Technical Fusebox
Don’t forget that it’s free!
![Page 23: Fusebox 3.0 The Framework, The Methodology, The Community Nat Papovich, Fusium](https://reader035.vdocuments.site/reader035/viewer/2022062407/56649dd95503460f94aceb99/html5/thumbnails/23.jpg)
Technical Fusebox:Airlines: The Old Way
Point-to-point routing
San DiegoOrland
o
![Page 24: Fusebox 3.0 The Framework, The Methodology, The Community Nat Papovich, Fusium](https://reader035.vdocuments.site/reader035/viewer/2022062407/56649dd95503460f94aceb99/html5/thumbnails/24.jpg)
Technical Fusebox:Airlines: The New Way
In ~1960, United opened the first hub, in Chicago.
Orlando
New York
Minneapolis
Seattle
San Diego
![Page 25: Fusebox 3.0 The Framework, The Methodology, The Community Nat Papovich, Fusium](https://reader035.vdocuments.site/reader035/viewer/2022062407/56649dd95503460f94aceb99/html5/thumbnails/25.jpg)
Technical Fusebox:The Core File (fbx_fusebox_CFxx.cfm)
• Specific to each version of ColdFusion– ColdFusion 3.x not supported– UNIX, Linux versions available– Different versions mean faster execution
• Available for other languages– PHP, JSP
• Very Fast– <cfscript>ing
![Page 26: Fusebox 3.0 The Framework, The Methodology, The Community Nat Papovich, Fusium](https://reader035.vdocuments.site/reader035/viewer/2022062407/56649dd95503460f94aceb99/html5/thumbnails/26.jpg)
Technical Fusebox:The Core File (fbx_fusebox_CFxx.cfm)
• No Custom Tags– Fast– V2: formURL2attributes.cfm now in-line
• Copies all form and URL scoped variables to attributes scope
• Stable and frozen– Upgrades by the Standards Committee
![Page 27: Fusebox 3.0 The Framework, The Methodology, The Community Nat Papovich, Fusium](https://reader035.vdocuments.site/reader035/viewer/2022062407/56649dd95503460f94aceb99/html5/thumbnails/27.jpg)
• Developer doesn’t need to understand– But it is well-commented and easy to
follow
• Latest core file always available from Fusebox.org– Web service underway to check for
updates to core and download latest
Technical Fusebox:The Core File (fbx_fusebox_CFxx.cfm)
![Page 28: Fusebox 3.0 The Framework, The Methodology, The Community Nat Papovich, Fusium](https://reader035.vdocuments.site/reader035/viewer/2022062407/56649dd95503460f94aceb99/html5/thumbnails/28.jpg)
• API (“fusebox” structure)– fusebox.isCustomTag: is this request
coming from cfmodule?– fusebox. isTargetCircuit: is this the target
circuit for the request or is it just a nested circuit?
– fusebox. suppressLayout: should this request not contain the “wrapper”?
– fusebox. suppressErrors: yes during development, no during production
– …many more
Technical Fusebox:The Core File (fbx_fusebox_CFxx.cfm)
![Page 29: Fusebox 3.0 The Framework, The Methodology, The Community Nat Papovich, Fusium](https://reader035.vdocuments.site/reader035/viewer/2022062407/56649dd95503460f94aceb99/html5/thumbnails/29.jpg)
Technical Fusebox:The Core File (fbx_fusebox_CFxx.cfm)
• A glimpse at the core
But not an actual stare
![Page 30: Fusebox 3.0 The Framework, The Methodology, The Community Nat Papovich, Fusium](https://reader035.vdocuments.site/reader035/viewer/2022062407/56649dd95503460f94aceb99/html5/thumbnails/30.jpg)
Technical Fusebox:Other core files (fbx_file.cfm)
• Default web server document– Usually index.cfm– Handles any pre-processing– Includes the core file -
fbx_fusebox_CF50.cfm
![Page 31: Fusebox 3.0 The Framework, The Methodology, The Community Nat Papovich, Fusium](https://reader035.vdocuments.site/reader035/viewer/2022062407/56649dd95503460f94aceb99/html5/thumbnails/31.jpg)
Technical Fusebox:Other core files (fbx_file.cfm)
• fbx_circuits.cfm– Similar to J2EE’s JNDI concept– Provides mapping to directories via
circuit alias
“This circuit lives down this directory chain.”
![Page 32: Fusebox 3.0 The Framework, The Methodology, The Community Nat Papovich, Fusium](https://reader035.vdocuments.site/reader035/viewer/2022062407/56649dd95503460f94aceb99/html5/thumbnails/32.jpg)
Technical Fusebox:Other core files (fbx_file.cfm)
• Root-level fbx_settings.cfm– Serves similar purpose as
application.cfm– V2: app_globals.cfm deprecated by
this file
![Page 33: Fusebox 3.0 The Framework, The Methodology, The Community Nat Papovich, Fusium](https://reader035.vdocuments.site/reader035/viewer/2022062407/56649dd95503460f94aceb99/html5/thumbnails/33.jpg)
Technical Fusebox:Other core files (fbx_file.cfm)
• Children fbx_settings.cfm– If acting as a standalone circuit, this
file must include the functionality of the root fbx_settings.
– All fbx_settings.cfm files in the directory chain down to the target circuit get included in the call.
– Circuits tend not to nest more than ~4 deep
![Page 34: Fusebox 3.0 The Framework, The Methodology, The Community Nat Papovich, Fusium](https://reader035.vdocuments.site/reader035/viewer/2022062407/56649dd95503460f94aceb99/html5/thumbnails/34.jpg)
Technical Fusebox:Other core files (fbx_file.cfm)
• fbx_switch.cfm– Only the target circuit fbx_switch is run (not
like in V2)– Classic switch/case statement, switch on
#fuseaction#– Aim for less than 15 fuseactions per
fbx_switch.cfm– Try to have only simple CFML in the cases:
<cfinclude> <cfset> <cfif> <cflocation>
![Page 35: Fusebox 3.0 The Framework, The Methodology, The Community Nat Papovich, Fusium](https://reader035.vdocuments.site/reader035/viewer/2022062407/56649dd95503460f94aceb99/html5/thumbnails/35.jpg)
Technical Fusebox:Other core files (fbx_file.cfm)
• fbx_layouts.cfm– Does not do the actual displaying –
only chooses which display file to use– Allow Dreamweaver or other HTML
smarties to do their job outside the Fusebox framework
– Nesting layouts allows multiple fuseactions in different circuits to be displayed on one page
![Page 36: Fusebox 3.0 The Framework, The Methodology, The Community Nat Papovich, Fusium](https://reader035.vdocuments.site/reader035/viewer/2022062407/56649dd95503460f94aceb99/html5/thumbnails/36.jpg)
Technical Fusebox:Other core files (fbx_file.cfm)
• fbx_savecontent.cfm– Custom Tag version of
<cfsavecontent> for pre-CF5.0– V2: called cf_bodycontent by Steve
Nelson
![Page 37: Fusebox 3.0 The Framework, The Methodology, The Community Nat Papovich, Fusium](https://reader035.vdocuments.site/reader035/viewer/2022062407/56649dd95503460f94aceb99/html5/thumbnails/37.jpg)
Technical Fusebox:Fuse Prefixes
• dsp_– Display template– Display only
• Forms• Content
– As little CFML as possible– Often has an accompanying act_ file– dsp_login.cfm, dsp_NewsHeadlines.cfm,
dsp_SearchResults.cfm
![Page 38: Fusebox 3.0 The Framework, The Methodology, The Community Nat Papovich, Fusium](https://reader035.vdocuments.site/reader035/viewer/2022062407/56649dd95503460f94aceb99/html5/thumbnails/38.jpg)
Technical Fusebox:Fuse Prefixes
• act_– Action template– No display– Contains anything not database or display
• Form error checking and processing, back-end services, scheduled tasks, cfmail, verity, etc
– V2: inserts, updates, deletes– act_ValidateOnDomain.cfm,
act_PullNewsFromMoreover.cfm, act_VeritySearch.cfm
![Page 39: Fusebox 3.0 The Framework, The Methodology, The Community Nat Papovich, Fusium](https://reader035.vdocuments.site/reader035/viewer/2022062407/56649dd95503460f94aceb99/html5/thumbnails/39.jpg)
Technical Fusebox:Fuse Prefixes
• qry_– Query template– No display– All database interaction
• Update, insert, delete, select, etc• <cfquery> <cfstoredproc>
– V2: only for selects– Aim for reusability– qry_ValidateUser.cfm,
qry_CreateNewsItem.cfm, qry_GetUserPreferences.cfm
![Page 40: Fusebox 3.0 The Framework, The Methodology, The Community Nat Papovich, Fusium](https://reader035.vdocuments.site/reader035/viewer/2022062407/56649dd95503460f94aceb99/html5/thumbnails/40.jpg)
Technical Fusebox:Fuse Prefixes
• url_– Optional file to contain <cflocation> logic– Makes for cleaner fbx_switch.cfm– If not used, <cflocation>s occur in the
qry_ or act_ files– No display– url_Login.cfm, url_DeletedNewsItem.cfm,
url_VerityIndexed.cfm
![Page 41: Fusebox 3.0 The Framework, The Methodology, The Community Nat Papovich, Fusium](https://reader035.vdocuments.site/reader035/viewer/2022062407/56649dd95503460f94aceb99/html5/thumbnails/41.jpg)
Technical Fusebox:Fuse Prefixes
• app_– Application template– No display– V2: Deprecated in favor of fbx_settings.cfm
and act_files.– app_server.cfm
• Server-specific like machine name, etc
– app_secure.cfm– V2: Formerly app_locals.cfm and
app_globals.cfm
![Page 42: Fusebox 3.0 The Framework, The Methodology, The Community Nat Papovich, Fusium](https://reader035.vdocuments.site/reader035/viewer/2022062407/56649dd95503460f94aceb99/html5/thumbnails/42.jpg)
Technical Fusebox:Exit Fuseactions (XFAs)
• No hard-coded exit points– Maximum reuse of code
• In structure “xfa.”• Set XFAs to match exit points in fuses
like links, form actions, <cflocation>s• Extracts fuses from the application
– Fuses act as “black box” unaware of the big picture
– Always in the form “circuit.fuseaction”
![Page 43: Fusebox 3.0 The Framework, The Methodology, The Community Nat Papovich, Fusium](https://reader035.vdocuments.site/reader035/viewer/2022062407/56649dd95503460f94aceb99/html5/thumbnails/43.jpg)
Technical Fusebox:Fusedocs
• Defines all ins and outs for a fuse• Paradigm shift for some
– Write code from the documentation– Do not write the documentation from
the code– Just like blueprints for a house
• Accompanies every fuse– In comments <!--- ---> at the top
![Page 44: Fusebox 3.0 The Framework, The Methodology, The Community Nat Papovich, Fusium](https://reader035.vdocuments.site/reader035/viewer/2022062407/56649dd95503460f94aceb99/html5/thumbnails/44.jpg)
Technical Fusebox:Fusedocs, cont.
• Programming Definition Language (PDL)• XML based
– DTD available from fusebox.org– Don’t be scared of XML
• VTML tag helpers available– With CF Studio integrated help
• Due to XML structure, allows tools to read Fusedocs and validate code or even write code for you
![Page 45: Fusebox 3.0 The Framework, The Methodology, The Community Nat Papovich, Fusium](https://reader035.vdocuments.site/reader035/viewer/2022062407/56649dd95503460f94aceb99/html5/thumbnails/45.jpg)
Technical Fusebox:Test Harnesses
• Automatically created from completed Fusedocs using XML parsing and Fusedoc reading tools
• Unit test each fuse• Similar to Extreme Programming?• One harness for each fuse to allow
simple testing
![Page 46: Fusebox 3.0 The Framework, The Methodology, The Community Nat Papovich, Fusium](https://reader035.vdocuments.site/reader035/viewer/2022062407/56649dd95503460f94aceb99/html5/thumbnails/46.jpg)
Moving On… Fusebox Methodology: FLiP
![Page 47: Fusebox 3.0 The Framework, The Methodology, The Community Nat Papovich, Fusium](https://reader035.vdocuments.site/reader035/viewer/2022062407/56649dd95503460f94aceb99/html5/thumbnails/47.jpg)
FLiP:Building A House
• If the architect quits• If the contractor screws up• If all the carpenters get fired• If you need an addition
• Home building has a long history• Application development does not
![Page 48: Fusebox 3.0 The Framework, The Methodology, The Community Nat Papovich, Fusium](https://reader035.vdocuments.site/reader035/viewer/2022062407/56649dd95503460f94aceb99/html5/thumbnails/48.jpg)
FLiP:Initial Requirements Gathering
• No system for this – do as normal• Sales meeting to get rough ideas
down
![Page 49: Fusebox 3.0 The Framework, The Methodology, The Community Nat Papovich, Fusium](https://reader035.vdocuments.site/reader035/viewer/2022062407/56649dd95503460f94aceb99/html5/thumbnails/49.jpg)
FLiP:Wireframing
• First serious requirements gathering• A client knows what they want after they
see it• Show them a web site without spending
any time creating it• Extremely fast• Gets client buy-in early• Resist the urge to code• Fusium’s Rebar
![Page 50: Fusebox 3.0 The Framework, The Methodology, The Community Nat Papovich, Fusium](https://reader035.vdocuments.site/reader035/viewer/2022062407/56649dd95503460f94aceb99/html5/thumbnails/50.jpg)
FLiP:Prototyping
• HTML mockups• 100% identical to the finished
application• Resist the urge to code
![Page 51: Fusebox 3.0 The Framework, The Methodology, The Community Nat Papovich, Fusium](https://reader035.vdocuments.site/reader035/viewer/2022062407/56649dd95503460f94aceb99/html5/thumbnails/51.jpg)
FLiP:DevNotes
• Need to enable customer communication of the design
• Facilitates a client approval process
• Threaded discussion about each page– “Can I get this in
cornflower blue?”
![Page 52: Fusebox 3.0 The Framework, The Methodology, The Community Nat Papovich, Fusium](https://reader035.vdocuments.site/reader035/viewer/2022062407/56649dd95503460f94aceb99/html5/thumbnails/52.jpg)
FLiP:Prototype Lockdown
• Site is complete in HTML– Example credit card processing:
1. Approval2. Failure message 13. Failure message 24. Bad credit card number
![Page 53: Fusebox 3.0 The Framework, The Methodology, The Community Nat Papovich, Fusium](https://reader035.vdocuments.site/reader035/viewer/2022062407/56649dd95503460f94aceb99/html5/thumbnails/53.jpg)
FLiP:Architecting
• Using mind mapping software:– Identify each circuit– Identify each fuseaction– Identify each fuse– Determine exit points– Generate skeleton code
• Fuseminder.cfm
![Page 54: Fusebox 3.0 The Framework, The Methodology, The Community Nat Papovich, Fusium](https://reader035.vdocuments.site/reader035/viewer/2022062407/56649dd95503460f94aceb99/html5/thumbnails/54.jpg)
FLiP:Fusedoc’ing
• Copy prototype html page into display fuses• Write black-box fusedocs• Create test harness for each fuse to validate
– Act as a test routine– Use harness.cfm– QuerySims
• Coder should not need to know anything else about the application
![Page 55: Fusebox 3.0 The Framework, The Methodology, The Community Nat Papovich, Fusium](https://reader035.vdocuments.site/reader035/viewer/2022062407/56649dd95503460f94aceb99/html5/thumbnails/55.jpg)
FLiP:Coding
• Distribution of effort– Solve the Mythical Man Month?
• SecretAgents.com
• Coding is now a trivial matter• Distribution of database required
for qry_ fuses
![Page 56: Fusebox 3.0 The Framework, The Methodology, The Community Nat Papovich, Fusium](https://reader035.vdocuments.site/reader035/viewer/2022062407/56649dd95503460f94aceb99/html5/thumbnails/56.jpg)
FLiP:Assembly
• Architect gathers completed fuses• Ensure fuse meets requirements of
Fusedoc• Drop into correct directories• Verify exit points• No need to open up completed
fuses
![Page 57: Fusebox 3.0 The Framework, The Methodology, The Community Nat Papovich, Fusium](https://reader035.vdocuments.site/reader035/viewer/2022062407/56649dd95503460f94aceb99/html5/thumbnails/57.jpg)
FLiP:Testing
• No Fusebox-specific system for this• Use wireframe and prototype as
guide
![Page 58: Fusebox 3.0 The Framework, The Methodology, The Community Nat Papovich, Fusium](https://reader035.vdocuments.site/reader035/viewer/2022062407/56649dd95503460f94aceb99/html5/thumbnails/58.jpg)
Moving On…Fusebox Community
![Page 59: Fusebox 3.0 The Framework, The Methodology, The Community Nat Papovich, Fusium](https://reader035.vdocuments.site/reader035/viewer/2022062407/56649dd95503460f94aceb99/html5/thumbnails/59.jpg)
Fusebox Community:Best Practices
• Security model– V2: app_secure.cfm– Hal Helms: cf_secure
• QuerySims• cf_reuseForm
– Use one .cfm file for insert and edit form
• cf_returnFuseaction
![Page 60: Fusebox 3.0 The Framework, The Methodology, The Community Nat Papovich, Fusium](https://reader035.vdocuments.site/reader035/viewer/2022062407/56649dd95503460f94aceb99/html5/thumbnails/60.jpg)
Fusebox Community:Community Support
• Since the beginning, Fusebox is open to change and improvements
• Developer-created Custom Tags• Contributed example applications• Synthis.com - Adalon code
generation
![Page 61: Fusebox 3.0 The Framework, The Methodology, The Community Nat Papovich, Fusium](https://reader035.vdocuments.site/reader035/viewer/2022062407/56649dd95503460f94aceb99/html5/thumbnails/61.jpg)
Fusebox Community:Email Lists
• [email protected]– Beginners welcome– Heavily patrolled by active members
• [email protected]– FLiP methodology only
• [email protected] – For Fusebox future
![Page 62: Fusebox 3.0 The Framework, The Methodology, The Community Nat Papovich, Fusium](https://reader035.vdocuments.site/reader035/viewer/2022062407/56649dd95503460f94aceb99/html5/thumbnails/62.jpg)
Fusebox Community:Fusebox.org
• Whitepapers• Latest core files• Example applications
![Page 63: Fusebox 3.0 The Framework, The Methodology, The Community Nat Papovich, Fusium](https://reader035.vdocuments.site/reader035/viewer/2022062407/56649dd95503460f94aceb99/html5/thumbnails/63.jpg)
Fusebox Community:Other Sites
• www.halhelms.com– QuerySim, tutorials, etc
• www.fusium.com– Rebar wireframe editor, FEX core files,
developer tools, example applications
• www.secretagents.com– Online tutorials, fusecoders
• www.bombusbee.com– PHP Fusebox
![Page 64: Fusebox 3.0 The Framework, The Methodology, The Community Nat Papovich, Fusium](https://reader035.vdocuments.site/reader035/viewer/2022062407/56649dd95503460f94aceb99/html5/thumbnails/64.jpg)
Fusebox Community:Books And Articles
• Papovich and Peters, 2002• Fusebox Pulse newsletter
(fusium.com)• Hal Helms writes monthly articles
in CFDJ
![Page 65: Fusebox 3.0 The Framework, The Methodology, The Community Nat Papovich, Fusium](https://reader035.vdocuments.site/reader035/viewer/2022062407/56649dd95503460f94aceb99/html5/thumbnails/65.jpg)
Fusebox Community:Fusebox Conference
• In conjunction with Macromedia DevCon, October in Orlando
• ~20 speakers• Jeremy Allaire keynoted last year