Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

Where to start with application development for your startup


Published on

In this quick guide Cyber-Duck introduce Laravel as an 'engine' and backend for developing extendable backend systems to power web applications, mobile apps and websites.

Published in: Engineering
  • Be the first to comment

Where to start with application development for your startup

  1. 1. Where to start with application development for your startup 1 by Desmond Walford 1 An introduction to Laravel
  2. 2. Contents 1 About this presentation 2 Advantages of using a framework 3 What to look for in a framework 4 Why a robust framework is important 5 What is Laravel 6 Reasons to choose Laravel 2 7 Examples of Laravel projects 8 Get in touch with Cyber-Duck
  3. 3. About this presentation 3 Who is this presentation for? This presentation is aimed at entrepreneurs, founders, CEOs and organisations that are looking to develop robust systems, applications and next generation software as a service (SaaS). What do startups or enterprises have in common when they look to develop a next level application? They need a backend engine (or framework) to support existing and future requirements and business logic so they can develop robust, secure, scalable web and mobile products and services that work anywhere.
  4. 4. Advantages of using a framework 4 1. A predefined structure to your application helps to be more organised: • Arranges your application code in an organised manner • Handles configuration of all common functions such as email settings • Organises assets by default (Images, CSS, JS, etc.)
 2. Decisions are already made for you: • The coding style is pre-defined giving multiple developers consistency • Autoloading is built-in • Frameworks include inversion of control / dependency injection
 3. Common tasks are already completed: • Database connections are preconfigured • Routing for clean URLs from the outset • Templating helps to reduce future support work and optimise the application • Session Management to handle user sessions • Testing strategy to help automate QA
 4. There is a lot more and this will depend on the framework!
  5. 5. What to look for in a framework 5 1. Open source - Most PHP frameworks are open source and this allows you to view the underlying code yourself (and contribute to it) 2. Actively developed - A lot of projects are started then abandoned or only worked on in spare time, good projects will have several contributors working on the framework regularly 3. Strong community - An open source project lives or dies by it’s community, this applies to frameworks as much as any other project. You can gauge the community by looking at forums, Stack Overflow, GitHub, IRC, etc. 4. Feature set - Does the framework provide the bare minimum or is it very feature rich. Do the features tie you in to a specific way of doing things or can they be swapped out? 5. Logical code structure / style - To use a framework efficiently you need to be able to understand the inner workings. If the way it has been developed required a steep learning curve it will restrict how quickly you can have new developers working on projects efficiently. Does the framework require one coding style when your developers prefer another?
  6. 6. What to look for in a framework 6 6. Extensible - On any large project you will have some requirements that are unique and would have no place in a framework’s feature set, does the framework you have chosen make it easy to add this functionality? Do they have a way of installing user created extensions to carry out tasks that are common but, not in the core?
 7. Tested / Testable - Does the framework have a good test suite? Is there support for writing tests for your own code?
 8. Secure - Has this framework been used by large projects that require security testing? Have they ever released a security patch, what mechanism do they use?
  7. 7. Why a robust framework is important 7 Below are 6 key reasons why a robust framework is critical to system and application development success: 1. Gets a project off the ground quickly - Important decisions are already made with well tested solutions
 2. Removes repetition - Common tasks have already been done
 3. Creates familiarity across projects - In large teams you can do more from project to project knowing what to expect from the framework
 4. Scalability - By using a robust and versatile framework, you can scale your application and system easily and reduce maintainability 
 5. Security - Proven frameworks will include security management built in.
 6. Community support - Frameworks that are mature will include plugins and add- ons to build upon saving time and money
  8. 8. What is Laravel? 8 Voted the best PHP framework in 2015 by Sitepoint, Laravel is taking the PHP community by storm. It is a high quality framework with many of resources out of the box including an eloquent for model repositories, swiftmailer for the mailing, blade engine for templates, a system to create your migrations, a cache component to cache everything you want, a monolog logger, and much more. Laravel is a free, open-source PHP web application framework, intended for the development of web applications following the model–view–controller (MVC) architectural pattern LARAVEL VOTED BEST PHP FRAMEW ORK 2015
  9. 9. Reasons to choose Laravel 9 1. It is open source and actively developed by a large community: • Almost 300 contributes on GitHub • Five major version releases since 2011 • Provides a Long Term Support (LTS) version • Laravel tag on Stackoverflow has 3.1k followers and 24k questions • Very active conversations on IRC and Slack
 2. Standards compliant:
 Follows the PHP Framework Interoperability Group’s (FIG) recommended standards known as PHP Standards Recommendations (PSR)
 3. Easy to start with but extremely powerful and scalable:
 Low barrier to entry with advanced features available for experienced developers: • Start off using the Façade Pattern to easily access all the features of the framework • Option to use Inversion of Control (IoC) container and other advanced patterns when necessary
  10. 10. Reasons to choose Laravel 10 6. Huge feature set out of the box including: • Database connectivitiy • Object Relational Mapper (ORM) called Eloquent • Sessions, Authentication, Caching, Blade template engine, Routing, etc. • Easily replace features, for example we sometimes use Doctrine ORM instead of Eloquent
 7. Full test suite for each framework module
 8. Support PHPUnit out of the box:
 Easy to substitute for Codeception, PHPSpec, etc.
 9. Extensible using Composer package manager
 Released security patches in the past and widely used enough that security researchers have taken an interest and tested it.
  11. 11. Examples of Laravel projects 11 Trusted by top brands
 Some of the worlds top brands use Laravel as the ‘engine’ of choice within mission critical applications and web portals:
  12. 12. We’re the Laravel experts, get in touch 12 +44 (0)208 953 0070 Herts office 12 High St Elstree, Herts WD6 3EP London office 85 Cowcross St London EC1M 6PF