Post on 25-Nov-2021
transcript
© 2018 FileMaker, Inc.
FILEMAKER DEVCON 2018AUGUST 6-9 | GRAPEVINE, TX
Steve’s top ten tips to being a better developerAnd a sales pitch for free stuff!
CWP User Group
Steve Winter Matatiro Solutions@SteveWinterNZ
#FileMakerDevCon© 2018 FileMaker, Inc.
- One of those people the CBP don’t like - FileMaker, web application and software developer >20 years!- Run Matatiro Solutions- Regular DevCon speaker
Who am I?
Steve Winter
ride.bluecrocodile.co.nz
#FileMakerDevCon© 2018 FileMaker, Inc.
1. Use an IDE
• Code completion (type less code)• Linting (validate what you’ve written)• Built-in debugging (find problems more easily)
#FileMakerDevCon© 2018 FileMaker, Inc.
2. Use version control
• Know the state of your code at any point in time• Go back to that point if you need to• Share, distribute and deploy easily
#FileMakerDevCon© 2018 FileMaker, Inc.
3. composer install, yarn (npm) install
• Know versions of all dependencies• Dependency resolution• Don’t reinvent the wheel• Add you libraries to Packagist / npm if they aren’t already there
• API: composer require matatirosoln/filemaker-api • https://github.com/matatirosolutions/filemakerapi
#FileMakerDevCon© 2018 FileMaker, Inc.
4. Use a (modern) framework
• And modern coding practices!• PSR-2, PSR-12 from Framework Interoperability Group (FIG)
#FileMakerDevCon© 2018 FileMaker, Inc.
5. Test your code
• Unit tests• Integration tests• Functional (UI) tests
#FileMakerDevCon© 2018 FileMaker, Inc.
6. Use a DBAL / ORM
• Create models (entities) in your code the match the business domain• CWP Doctrine driver
• https://github.com/matatirosolutions/doctrine-filemaker-driver
• Data API Doctrine driver• https://github.com/matatirosolutions/filemaker-data-api-bundle
#FileMakerDevCon© 2018 FileMaker, Inc.
7. Use data separation
• Dedicated interface file (deployed from version control)• Dedicated layouts (with only the fields you need)• (Heavily) restricted access
#FileMakerDevCon© 2018 FileMaker, Inc.
8. Package your assets
• Use (something like) webpack to package your assets• Only deploy to production final builds• Minify and compress• Fewer files, from fewer domains, with smaller file sizes aids
performance
#FileMakerDevCon© 2018 FileMaker, Inc.
9. Automate all the things
• From IDE -> version control -> staging -> production• Chef, Puppet, Ansible• post-commit (to run tests)• post-receive (to deploy to staging and run tests)• Jenkins to make things simpler
#FileMakerDevCon© 2018 FileMaker, Inc.
10. Sharpen your skills
• You should be embarrassed by the code you wrote 2 years ago!• Use modern coding practices • Go to user groups, meetups, conferences
#FileMakerDevCon© 2018 FileMaker, Inc.
One more thing - Come to my session!
• ITG01 - Introduction to the FileMaker Data API• Data API provides significant opportunities (particularly if you’re
good with JavaScript)• https://msdev.co.uk/fms-cross-origin
#FileMakerDevCon© 2018 FileMaker, Inc.
FILEMAKER DEVCON 2018AUGUST 6-9 | GRAPEVINE, TX
Thank You!
Oh - and come to my session tomorrow!!