github.com/dahs81/otto@v0.2.1-0.20160126165905-6400716cf085/website/source/intro/index.html.markdown (about)

     1  ---
     2  layout: "intro"
     3  page_title: "Introduction"
     4  sidebar_current: "what"
     5  description: |-
     6    TODO
     7  ---
     8  
     9  # What is Otto?
    10  
    11  Otto knows how to develop and deploy any application on any cloud
    12  platform, all controlled with a single consistent workflow to maximize
    13  the productivity of you and your team.
    14  
    15  ## A Developer's Dream
    16  
    17  Otto automatically builds a development environment tailored specifically
    18  for your application, with zero or minimal configuration.
    19  
    20  Otto isolates all your applications into their own local virtualized
    21  development environments. It detects the type of application you're developing and
    22  configures that development environment for you. For example, if you're
    23  developing a PHP application, Otto will automatically install PHP and
    24  other related tools for you.
    25  
    26  Otto supports application dependencies as a first class feature. This makes
    27  developing microservices a breeze. Otto automatically downloads, installs,
    28  configures, and starts dependencies in your development environments for you.
    29  
    30  Developers that are new to a team or are context switching to a new
    31  project can get up and running in a single command with minimal friction:
    32  `otto dev`.
    33  
    34  ## Best-in-Class Infrastructure, Automatically
    35  
    36  Otto automatically builds an infrastructure and deploys your application
    37  using industry standard tooling and best practices, so you don't have to.
    38  
    39  There are hundreds of how-to guides to deploy applications. Unfortunately,
    40  all of these how-to guides are usually copying and pasting outdated information
    41  onto a server to barely get your application running.
    42  
    43  Deploying an application properly with industry best practices in security,
    44  scalability, monitoring, and more requires an immense amount of domain
    45  knowledge. The solution to each of these problems usually requires
    46  mastering a new tool.
    47  
    48  Due to this complexity, many developers completely ignore best practices
    49  and stick to the simple how-to guides.
    50  
    51  Otto solves all these problems and automatically manages all of the
    52  various software solutions for you to have a best-in-class
    53  infrastructure. You only need to learn Otto, and Otto does the rest.
    54  
    55  ## Key Features
    56  
    57  The key features of Otto are:
    58  
    59  * **Automatic development environments**: Otto detects your application
    60    type and builds a development environment tailored specifically for that
    61    application, with zero or minimal configuration. If your application depends
    62    on other services (such as a database), it'll automatically configure and
    63    start those services in your development environment for you.
    64  
    65  * **Built for Microservices**: Otto understands dependencies and versioning
    66    and can automatically deploy and configure an application and all
    67    of its dependencies for any environment. An application only needs to
    68    tell Otto its immediate dependencies; dependencies of dependencies are
    69    automatically detected and configured.
    70  
    71  * **Deployment**: Otto knows how to deploy applications as well develop
    72    them. Whether your application is a modern microservice, a legacy
    73    monolith, or something in between, Otto can deploy your application to any
    74    environment.
    75  
    76  * **Docker**: Otto can use Docker to download and start dependencies
    77    for development to simplify microservices. Applications can be containerized
    78    automatically to make deployments easier without changing the developer
    79    workflow.
    80  
    81  * **Production-hardened tooling**: Otto uses production-hardened tooling to
    82    build development environments ([Vagrant](https://www.vagrantup.com)),
    83    launch servers ([Terraform](https://www.terraform.io)), configure
    84    services ([Consul](https://www.consul.io)), and more. Otto builds on
    85    tools that power the world's largest websites.
    86    Otto automatically installs and manages all of this tooling, so you don't
    87    have to.
    88  
    89  ## Next Steps
    90  
    91  Continue onwards with the [getting started guide](/intro/getting-started/install.html)
    92  to see how easy Otto makes it to develop and deploy a real application.