Team Development Presented by HOnza Koudelka Milan Zach Michal Plachý Petr Konta
Jun 17, 2015
Team Development
Presented byHOnza KoudelkaMilan ZachMichal PlachýPetr Konta
Agenda
• Pros/Cons of Team Development
• Development Tools for Teams
• Developing with FileMaker Server
• Local vs Development Server vs Production Server
• Conventions, Technical Documentation
• Developer Collisions
• Tales for Males
• Open Discussion
Pros/Consof Team Development
⊕ Faster delivery
⊕ Learning from each other
⊕ Project focused atmosphere
⊕ Consulting fights blindness
⊕ One ship attitude
⊕ Out of the box thinking
⊕ Team responsibility
⊖ Not for small solutions
⊖ Speed growth not linear
⊖ Bigger team => higher costs
⊖ Team responsibility
Development Tools for Teams
• Inspector Pro / Base Elements
• FM Bench
• Project Management System
• Redmine
• Basecamp
• Custom
• FileMaker Server
• Evernote
Developing withFileMaker Server
• Separate servers for Development, Production, Testing
• Progressive backups
• Deployment
• Logs & Stats
• Remote access for customers
Local vs Development Server vs Production Server
• Strong visual indication
• Global fields behavior
• Hidden file settings
• Custom orders, window positions, toolbars, Inspector
• Security settings - fmapp
• allow for server, disallow for local
Conventions, Technical Documentation
• Same rules for the whole team
• Same rules for all solutions
• Developer replaceability
• References to PMS everywhere
• Comments, comments, comments...
• Takes a little, saves a lot (of time)
Developer Collisions
• Database design
• Security settings
• Editing Scripts
• Assign tasks to developers by type
• Save changes often
Tales for Males
• Stories about what we learned in our real projects:
• Compo Tech - Faster development via conventions
• NPÚ - wrong data, not code
• CIS - TO naming makes searching difficult
• FM Bench - QuickSort
Compo TechFaster parallel development via conventions
• First developer creating fields and relationships
• Second developer designing layouts
• Third developer writing calculations in scripts
• Strict naming conventions allow for referring to fields and related tables before they are created, then just commiting the finished calculation
NPÚ - wrong data, not code
• Deployed a new version of our solution at client’s site
• Client missed images in the new version
• After a stressful afternoon trying to find a bug in our code we discovered the source data were wrong
• Conclusion: Verify what you get from someone else before continuing the work - you are not the only one who makes mistakes
CIS - TO naming makes searching difficult
• Our own internal solution - started many years ago
• Originally, we though it was a good idea to prefix all table occurrence names with the solution name (cis_) to differentiate from external data sources
• Now it appears to be a bad idea
• It’s slow to find a TO in the graph
• It’s easier to make mistakes
FM Bench - QuickSort
• Our own optimization tool needed an optimization
• We identified one custom function as its bottleneck
• Then we replaced it with a plug-in function
• Overcoming the FileMaker developer’s natural hesitation to use plug-ins allowed us to take advantage of having plug-in developers in our team
• Don’t forget your team mates can help you
Our Team is Availableto help you with your challenges
•24uSoftware.com/CustomDev
•24uSoftware.com/DevSupport
•FMBench.com/berlin