techzim surge: important considerations for hosting web or mobile apps
DESCRIPTION
TRANSCRIPT
![Page 1: Techzim Surge: Important Considerations for Hosting Web or Mobile Apps](https://reader034.vdocuments.site/reader034/viewer/2022051411/54786fe0b4af9f56268b45b1/html5/thumbnails/1.jpg)
Anthony Somerset
IMPORTANT CONSIDERATIONS IN BUILDING AND HOSTING WEB AND MOBILE APPS
![Page 2: Techzim Surge: Important Considerations for Hosting Web or Mobile Apps](https://reader034.vdocuments.site/reader034/viewer/2022051411/54786fe0b4af9f56268b45b1/html5/thumbnails/2.jpg)
ABOUT
• Owner, Somerset Technical Solutions
• Started company in 2009
• Worked with and in 2 Startups in that time
• ello group
• W3 EDGE
• Primarily focused on managing webserver infrastructure
• Day to day work is supporting clients & manage there servers
• Some web hosting too
• Motorsport Nut (the 4 wheel variety!)
![Page 3: Techzim Surge: Important Considerations for Hosting Web or Mobile Apps](https://reader034.vdocuments.site/reader034/viewer/2022051411/54786fe0b4af9f56268b45b1/html5/thumbnails/3.jpg)
ROADMAP
• Good Coding Principles• Security• Hosting Considerations• Q & A
![Page 4: Techzim Surge: Important Considerations for Hosting Web or Mobile Apps](https://reader034.vdocuments.site/reader034/viewer/2022051411/54786fe0b4af9f56268b45b1/html5/thumbnails/4.jpg)
GOOD CODING PRINCIPLES
“There are two ways to write error-free programs; only the third one works.”
Alan Perlis, "Epigrams on Programming"
![Page 5: Techzim Surge: Important Considerations for Hosting Web or Mobile Apps](https://reader034.vdocuments.site/reader034/viewer/2022051411/54786fe0b4af9f56268b45b1/html5/thumbnails/5.jpg)
GOOD CODING PRINCIPLES
• Use Open Source where possible – chances are its easier to find developers
• We all like free right?
• Try to stick to known good coding standards
• Use a code framework - They usually have a mature code base
• Often allows you to get to writing your code quicker without worrying about low level stuff
• Think about the future where you can - Avoid Technical/Code debt
• Use Revision Control Systems like Git or SVN
• http://www.bitbucket.org - free for small teams
• Use GitHub if your project is open source – most people will have accounts
![Page 6: Techzim Surge: Important Considerations for Hosting Web or Mobile Apps](https://reader034.vdocuments.site/reader034/viewer/2022051411/54786fe0b4af9f56268b45b1/html5/thumbnails/6.jpg)
GOOD CODING PRINCIPLES
• Backup!• Put your code on an external disk or memory
stick• If its just another folder on disk that’s not
backup!• Useful as a basic way to copyright your code
if needed
![Page 7: Techzim Surge: Important Considerations for Hosting Web or Mobile Apps](https://reader034.vdocuments.site/reader034/viewer/2022051411/54786fe0b4af9f56268b45b1/html5/thumbnails/7.jpg)
SECURITY
“Securing an environment of Windows platforms from abuse - external or internal - is akin to trying to install sprinklers in a fireworks factory where smoking on the job is permitted. —
Gene Spafford (in e-mail to organizers of a workshop on insider misuse)”
Anonymous
![Page 8: Techzim Surge: Important Considerations for Hosting Web or Mobile Apps](https://reader034.vdocuments.site/reader034/viewer/2022051411/54786fe0b4af9f56268b45b1/html5/thumbnails/8.jpg)
SECURITY
• Start with Good Quality Frameworks
![Page 9: Techzim Surge: Important Considerations for Hosting Web or Mobile Apps](https://reader034.vdocuments.site/reader034/viewer/2022051411/54786fe0b4af9f56268b45b1/html5/thumbnails/9.jpg)
SECURITY
• Start with Good Quality Frameworks
• Make it easy to update core components in future
• Don’t overwrite core framework components (extend/override them as required)
• Make sure your code is as modular as possible – have clear small tasks to solve
• Don’t Forget – Keep the core framework up to date too!
• Plan to accept payments via your web app? – HTTPS/SSL Certificates are a MUST!
• Secure your computers
• Hard Drive encryption – TrueCrypt or BitLocker for Windows, FileVault for Mac
![Page 10: Techzim Surge: Important Considerations for Hosting Web or Mobile Apps](https://reader034.vdocuments.site/reader034/viewer/2022051411/54786fe0b4af9f56268b45b1/html5/thumbnails/10.jpg)
SECURITY
• Backup!
• Make sure your backup is physically secure
• Encrypt your backup volume if possible
• Make sure you keep your backup device as physically separate from your computer as much as you can
![Page 11: Techzim Surge: Important Considerations for Hosting Web or Mobile Apps](https://reader034.vdocuments.site/reader034/viewer/2022051411/54786fe0b4af9f56268b45b1/html5/thumbnails/11.jpg)
HOSTING CONSIDERATIONS
Q: how many programmers does it take to change a light bulb?
A: none, that's a hardware problem
![Page 12: Techzim Surge: Important Considerations for Hosting Web or Mobile Apps](https://reader034.vdocuments.site/reader034/viewer/2022051411/54786fe0b4af9f56268b45b1/html5/thumbnails/12.jpg)
HOSTING CONSIDERATIONS
• Location – Get it as close as you can to your target audience
• Reliability – more critical in Zimbabwe/Africa
• Don’t assume you can run a server off your consumer grade connection
• Security
• If its plain shared hosting – check that your host is keeping key software up to date
• If it’s a Dedicated or Virtual Hosting – its usually your responsibility
• Scaling – Treat your infrastructure like your code
• Use tools like Chef or Puppet (Infrastructure as Code)
![Page 13: Techzim Surge: Important Considerations for Hosting Web or Mobile Apps](https://reader034.vdocuments.site/reader034/viewer/2022051411/54786fe0b4af9f56268b45b1/html5/thumbnails/13.jpg)
SHARED, VIRTUAL OR DEDICATED HOSTING?
• In the bootstrap phase get the minimum needed to fulfill the requirements
• You can always upgrade later
• Try and avoid lengthy contracts or commitments - avoid anything longer than 12 months
• Physical Hardware has its own constraints and caveats
• Hardware failure takes longer to recover
• You cant be as flexible to quickly changing demand
• The sweet spot for most tends to be Virtual Servers
• If you know you will need a lot of servers over several locations – Amazon Web Services is your friend
![Page 14: Techzim Surge: Important Considerations for Hosting Web or Mobile Apps](https://reader034.vdocuments.site/reader034/viewer/2022051411/54786fe0b4af9f56268b45b1/html5/thumbnails/14.jpg)
HOSTING CONSIDERATIONS
• Backup!
• Confirm who is responsible for it? You or the Host
• Shared Hosting – usually backing up your code, environment specific files and database are enough
• Ideally automate your process to store it offsite – Something like Amazon S3
• Virtual or Dedicated – more complex as you have to backup server configuration as well
• Puppet or Chef help you here!
• Speak to your host – they may have good deals on reliable backup solutions
![Page 15: Techzim Surge: Important Considerations for Hosting Web or Mobile Apps](https://reader034.vdocuments.site/reader034/viewer/2022051411/54786fe0b4af9f56268b45b1/html5/thumbnails/15.jpg)
CONCLUSION
• Code to known standards and utilize popular open source frameworks as your base
• Try to make your code easy to maintain and secure – avoiding Technical Debt
• Choose a reliable host as close as you can get to your target market
• Make sure you have regular backups of everything valuable to you, and keep them just as safe too
![Page 16: Techzim Surge: Important Considerations for Hosting Web or Mobile Apps](https://reader034.vdocuments.site/reader034/viewer/2022051411/54786fe0b4af9f56268b45b1/html5/thumbnails/16.jpg)
QUESTIONS?