{"componentChunkName":"component---src-templates-blog-list-jsx","path":"/blog/3/","result":{"data":{"prismic":{"allFeaturedblogs":{"edges":[{"node":{"featured_blogs_enabled":true,"heading":[{"type":"paragraph","text":"Featured posts","spans":[]}],"featured_blog_1":{"__typename":"PRISMIC_Blog","_linkType":"Link.document","blog_header_image":{"dimensions":{"width":790,"height":395},"alt":null,"copyright":null,"url":"https://images.prismic.io/www-static/6d8d81b1-971a-4313-b033-b4e125cb14a0_MondoDB-blog-header-790x395.PNG?auto=compress,format"},"blog_headline":[{"type":"heading1","text":"Introducing DigitalOcean Managed MongoDB – a fully managed, database as a service for modern apps","spans":[]}],"blog_post_date":"2021-06-29","blog_post_content":[{"type":"paragraph","text":"MongoDB is one of the most popular databases, and it’s ideal for apps that evolve rapidly and need to handle huge volumes of data and traffic. It offers advantages like flexible document schemas, code-native data access, change-friendly design, and easy horizontal scale-out.","spans":[{"start":22,"end":44,"type":"hyperlink","data":{"link_type":"Web","url":"https://db-engines.com/en/ranking","target":"_blank"}}]},{"type":"paragraph","text":"However, building and maintaining MongoDB clusters from the ground up can be a huge undertaking. Developers often complain that they have to spend their valuable time and resources on database management. Well, we’ve been listening and have some great news: accessing and managing MongoDB on DigitalOcean just got a lot simpler!","spans":[]},{"type":"paragraph","text":"We are excited to announce that DigitalOcean Managed MongoDB is now in General Availability. Managed MongoDB is a fully managed, database as a service (DBaaS) offering from DigitalOcean, built in partnership with and certified by MongoDB Inc. It provides you all the technical capabilities that make MongoDB so beloved in the developer community. Together we have ensured that you will get access to all the latest releases of the MongoDB document database as they become available.","spans":[{"start":32,"end":91,"type":"hyperlink","data":{"link_type":"Web","url":"https://www.digitalocean.com/products/managed-databases-mongodb/"}},{"start":230,"end":241,"type":"hyperlink","data":{"link_type":"Web","url":"https://www.mongodb.com/","target":"_blank"}}]},{"type":"paragraph","text":"Managed MongoDB simplifies the MongoDB administration. Developers of all skill levels, even those who do not have prior experience in databases, can spin up MongoDB clusters in just a few minutes. We handle the provisioning, managing, scaling, updates, backups, and security of your MongoDB clusters, allowing you to offload the complex, time consuming –yet critical – database administration tasks to us. This empowers you to focus on what really matters: building awesome apps.","spans":[]},{"type":"embed","oembed":{"height":113,"width":200,"embed_url":"https://www.youtube.com/watch?v=NvHQSV7jnKA","type":"video","version":"1.0","title":"Create a MongoDB Database on DigitalOcean","author_name":"DigitalOcean","author_url":"https://www.youtube.com/c/Digitalocean","provider_name":"YouTube","provider_url":"https://www.youtube.com/","cache_age":null,"thumbnail_url":"https://i.ytimg.com/vi/NvHQSV7jnKA/hqdefault.jpg","thumbnail_width":480,"thumbnail_height":360,"html":"<iframe width=\"200\" height=\"113\" src=\"https://www.youtube.com/embed/NvHQSV7jnKA?feature=oembed\" frameborder=\"0\" allow=\"accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture\" allowfullscreen></iframe>"}},{"type":"heading2","text":"Benefits of Managed MongoDB","spans":[]},{"type":"paragraph","text":"","spans":[]},{"type":"list-item","text":"Easy set up and maintenance: We create the database clusters for you. Simply choose the cluster configuration (e.g., memory, disk size, number of nodes, etc.), and the data center in which you want to host the database. Follow a few simple steps and your database cluster will be up and running in a matter of minutes. You can spin up clusters using the cloud control panel, CLI, or API.\n\n","spans":[{"start":0,"end":28,"type":"strong"}]},{"type":"list-item","text":"Automatic daily backups with point in time recovery: Data is one of the most important assets of an app, so it’s critical to backup your database. We take backups of your entire clusters automatically on a daily basis, for free. We also provide a point in time recovery for 7 days, that way if things go wrong due to human error, machine error, or some combination of both, you can easily restore the database as it was at any point in the previous 7 days. \n\n","spans":[{"start":0,"end":52,"type":"strong"}]},{"type":"list-item","text":"Automatic updates and access to latest MongoDB releases: You get access to MongoDB 4.4. This is the latest release of MongoDB and comes packed with numerous enhancements like hedged reads, rust, and swift drivers. Since we have developed Managed MongoDB in partnership with MongoDB Inc, you will always get access to new releases as they become available. With Managed MongoDB, the updates happen automatically. Just select a date and time for the updates and we take care of the rest. This makes it easy to stay up to date with MongoDB releases without disrupting your business.\n\n","spans":[{"start":0,"end":56,"type":"strong"},{"start":148,"end":169,"type":"hyperlink","data":{"link_type":"Web","url":"https://www.mongodb.com/new","target":"_blank"}}]},{"type":"list-item","text":"High availability with automated failover: If your database goes down, it can take down the entire app, leading to bad customer experiences. With Managed MongoDB, you can easily minimize the downtime for your database and make it highly available with standby nodes. Standby nodes add redundancy, so if for example the primary node fails, the standby node is immediately promoted to primary and begins serving requests while we provision a replacement standby node in the background.\n\n","spans":[{"start":0,"end":42,"type":"strong"}]},{"type":"list-item","text":"Scale up easily to handle traffic spikes: As your app gains traction and the usage grows, it’s important to have a database that can keep up with the increased demand. With Managed MongoDB, you can easily scale up the size of database nodes when needed.\n\n","spans":[{"start":0,"end":41,"type":"strong"}]},{"type":"list-item","text":"Secure by default: Since data is critical, it also needs to be secure. We encrypt data at rest with LUKS and in transit with SSL. When you create a new cluster, it’s placed in a VPC network by default that provides a more secure connection between resources. You can also restrict access to your nodes to prevent brute-force password and denial-of-service attacks.","spans":[{"start":0,"end":18,"type":"strong"},{"start":178,"end":189,"type":"hyperlink","data":{"link_type":"Web","url":"https://www.digitalocean.com/docs/networking/vpc/"}}]},{"type":"heading2","text":"The need for Managed Databases","spans":[]},{"type":"paragraph","text":"DigitalOcean’s mission is to simplify cloud computing so developers, startups, and SMBs can spend more time building software that changes the world. While databases are a critical component to any application, building, maintaining, and scaling them can be complex and time consuming. For developers that are building apps for their business, database administration is often not a core focus area. But it’s quite common to find developers that write the code and then also roll up their sleeves to maintain databases. Such users would rather offload the tedious database administration and focus their limited time and energy on building and enhancing their apps. ","spans":[]},{"type":"paragraph","text":"With this in mind, we introduced Managed Databases a couple of years ago and are excited to add Managed MongoDB to our portfolio. With this release, DigitalOcean Managed Databases now supports the following engines:","spans":[{"start":33,"end":50,"type":"hyperlink","data":{"link_type":"Web","url":"https://www.digitalocean.com/products/managed-databases/"}}]},{"type":"image","url":"https://images.prismic.io/www-static/87745cc1-1c5f-4463-b104-104b7fc30dc7_managed-databases-logos.png?auto=compress,format","alt":null,"copyright":null,"dimensions":{"width":849,"height":104}},{"type":"paragraph","text":"Managed MongoDB launch comes on the heels of DigitalOcean App Platform, a modern, reimagined PaaS (Platform as a Service) that we released a few months ago. App Platform makes it very easy to build, deploy, and scale apps and static sites. You can deploy code by simply pointing to your GitHub and GitLab repos, and App Platform will do all the heavy lifting of managing infrastructure, app runtimes, and dependencies. App Platform, along with Managed Databases, helps fulfill DigitalOcean’s mission by empowering developers, startups, and SMBs to focus more on their apps, and less on the underlying infrastructure and databases.","spans":[{"start":45,"end":70,"type":"hyperlink","data":{"link_type":"Web","url":"https://www.digitalocean.com/products/app-platform/"}}]},{"type":"heading2","text":"How Managed MongoDB works","spans":[]},{"type":"paragraph","text":"DigitalOcean provides you with various compute options to build your apps like:","spans":[]},{"type":"list-item","text":"Droplets: On-demand, Linux virtual machines suitable for production business applications and personal passion projects.","spans":[{"start":0,"end":8,"type":"hyperlink","data":{"link_type":"Web","url":"https://www.digitalocean.com/products/droplets/"}}]},{"type":"list-item","text":"DigitalOcean Kubernetes: Managed Kubernetes with automatic scaling, upgrades, and a free control plane.","spans":[{"start":0,"end":23,"type":"hyperlink","data":{"link_type":"Web","url":"https://www.digitalocean.com/products/kubernetes/"}}]},{"type":"list-item","text":"DigitalOcean App Platform: A fully managed Platform as a Service.","spans":[{"start":0,"end":25,"type":"hyperlink","data":{"link_type":"Web","url":"https://www.digitalocean.com/products/app-platform/"}}]},{"type":"paragraph","text":"No matter which compute option you choose to build your apps, you can easily add Managed MongoDB to it. In addition to this, Managed MongoDB also integrates with the Node.js 1-Click App from DigitalOcean Marketplace making it a lot easier to build Node.js apps.","spans":[{"start":166,"end":215,"type":"hyperlink","data":{"link_type":"Web","url":"https://marketplace.digitalocean.com/apps/nodejs"}}]},{"type":"heading2","text":"Simple, predictable pricing","spans":[]},{"type":"paragraph","text":"Just like all DigitalOcean products, Managed MongoDB provides simple, predictable pricing that allows you to control costs and prevent any surprise bills. You can spin up a database cluster for just $15/month, or a highly available three-node replica set for $45/month. Click here for more information.","spans":[{"start":270,"end":301,"type":"hyperlink","data":{"link_type":"Web","url":"https://www.digitalocean.com/pricing/#managed-databases"}}]},{"type":"heading2","text":"Regional availability","spans":[]},{"type":"paragraph","text":"Managed MongoDB is currently available in the following regions:","spans":[]},{"type":"list-item","text":"NYC3 (New York, USA)","spans":[]},{"type":"list-item","text":"FRA1 (Frankfurt, Germany)","spans":[]},{"type":"list-item","text":"AMS3 (Amsterdam, Netherlands)","spans":[]},{"type":"paragraph","text":"We will be making Managed Mongo available in other regions soon. Please check out the release notes for most up to date information on regional availability.","spans":[{"start":86,"end":99,"type":"hyperlink","data":{"link_type":"Web","url":"https://www.digitalocean.com/docs/release-notes/"}}]},{"type":"heading2","text":"Join us at deploy, DigitalOcean’s virtual user conference","spans":[]},{"type":"paragraph","text":"Today we have deploy, DigitalOcean’s signature user conference, which focuses on celebrating, educating, and connecting awesome builders from all over the world.","spans":[{"start":14,"end":20,"type":"hyperlink","data":{"link_type":"Web","url":"https://deploy.digitalocean.com/home"}}]},{"type":"paragraph","text":"Check out the keynote session from DigitalOcean's CEO, Yancey Spruill, in which he talks about where we're headed as a company and shares some exciting product updates. His keynote will be followed by sessions from community members, engineers, customers, and other experts that are building technologies and businesses powered by the cloud. With live Q&A and an active Discord server, there’s ample opportunity to engage and learn something new. Click here to attend the deploy conference.","spans":[{"start":14,"end":69,"type":"hyperlink","data":{"link_type":"Web","url":"https://deploy.digitalocean.com/agenda/session/552806"}},{"start":347,"end":384,"type":"hyperlink","data":{"link_type":"Web","url":"http://do.co/deploy-discord"}},{"start":461,"end":489,"type":"hyperlink","data":{"link_type":"Web","url":"http://do.co/deploy"}}]},{"type":"paragraph","text":"We are also launching a hackathon for DigitalOcean Managed MongoDB. Learn how you can participate, submit an app and get a t-shirt.","spans":[{"start":24,"end":66,"type":"hyperlink","data":{"link_type":"Web","url":"https://www.digitalocean.com/mongodb-hackathon"}}]},{"type":"paragraph","text":"We hope you will give Managed MongoDB a try. Here are some sample datasets and sample apps that you can use to kick the tires. Check out the docs and let us know what you think!","spans":[{"start":22,"end":43,"type":"hyperlink","data":{"link_type":"Web","url":"https://cloud.digitalocean.com/databases/new?engine=mongodb"}},{"start":59,"end":90,"type":"hyperlink","data":{"link_type":"Web","url":"https://github.com/do-community/mongodb-resources","target":"_blank"}},{"start":141,"end":145,"type":"hyperlink","data":{"link_type":"Web","url":"https://docs.digitalocean.com/products/databases/mongodb/"}}]},{"type":"paragraph","text":"If you’d like to have a conversation about using DigitalOcean and Managed MongoDB in your business, please feel free to contact our sales team.","spans":[{"start":120,"end":142,"type":"hyperlink","data":{"link_type":"Web","url":"https://www.digitalocean.com/company/contact/sales/"}}]},{"type":"paragraph","text":"Happy coding!","spans":[]},{"type":"paragraph","text":"André Bearfield","spans":[]},{"type":"paragraph","text":"Director of Product Management","spans":[]}],"tags":[{"tag1":{"__typename":"PRISMIC_Tag","tag":"Product Updates","_linkType":"Link.document","_meta":{"uid":"product-updates"}}}],"author":{"__typename":"PRISMIC_Author","author_name":"André Bearfield","author_image":{"dimensions":{"width":553,"height":547},"alt":"André Bearfield","copyright":null,"url":"https://images.prismic.io/www-static/fdc7c85186f0a850b04083e1d4306bd1c19772e8_andre-bearfield.png?auto=compress,format"},"_meta":{"uid":"andre-bearfield"}},"_meta":{"uid":"introducing-digitalocean-managed-mongodb"}},"featured_blog_2":{"__typename":"PRISMIC_Blog","_linkType":"Link.document","blog_header_image":{"dimensions":{"width":790,"height":400},"alt":"Droplet Console","copyright":null,"url":"https://images.prismic.io/www-static/710499ae-78cc-4179-afc1-15793637b200_DODX3727-790x400-logo-2.jpg?auto=compress,format"},"blog_headline":[{"type":"heading1","text":"Securely connect to Droplets with SSH key pairs using a new Droplet Console","spans":[]}],"blog_post_date":"2021-08-10","blog_post_content":[{"type":"paragraph","text":"The famous author Ken Blanchard once said, “Feedback is the breakfast of champions.\" This is something we truly believe at DigitalOcean, and we always strive to enhance our products based on customer feedback.","spans":[]},{"type":"paragraph","text":"With this goal in mind, we are excited to introduce a new Droplet Console that will make it much easier to connect to your Droplets securely. The new Droplet Console provides one-click SSH access to your Droplets through a native-like SSH/Terminal experience. It also eliminates the need for a password or manual configuration of SSH keys. Starting today, we’re pleased to announce that the new Droplet Console is now available to all Droplet users.","spans":[]},{"type":"heading2","text":"Why you should be using Secure Shell (SSH) ","spans":[]},{"type":"paragraph","text":"Password-based security is notoriously insecure due to password fatigue and the overuse of passwords such as ‘123456’. Secure Shell or SSH is a network communication protocol that solves this by using passwordless solutions for encryption, enabling two computers to communicate and securely share data. At a high level, SSH works by creating cryptographic key pairs consisting of a public and private key, which are computer generated and stored separately to ensure their security. ","spans":[{"start":80,"end":117,"type":"hyperlink","data":{"link_type":"Web","url":"https://cybernews.com/best-password-managers/most-common-passwords/"}}]},{"type":"paragraph","text":"SSH has become the default encryption protocol for many industries, but it was difficult to use SSH keys with DigitalOcean’s current Recovery (VNC) console, which is why we developed our new Droplet Console. The new Droplet Console is backed by an agent that security supervises the key pair, while also providing one-click SSH access to our users. You can see the full list of features below.","spans":[]},{"type":"heading2","text":"The new Droplet Console: More time saving, less time wasting ","spans":[]},{"type":"paragraph","text":"The new Droplet Console is for everyone who is looking to build fast, secure apps and avoid hassles with SSH access & usability issues.","spans":[]},{"type":"paragraph","text":"In addition to easier SSH access, the new Droplet Console comes with:","spans":[]},{"type":"list-item","text":"Copy/paste text: Instead of typing lengthy key pairs and text manually, you can use copy/paste to save time. ","spans":[{"start":0,"end":17,"type":"strong"}]},{"type":"list-item","text":"Multi-color support: Multi-color support makes the console more useful and intuitive, and breaks the conventional standard appearance which is black text on a white background. ","spans":[{"start":0,"end":41,"type":"strong"}]},{"type":"list-item","text":"Multi-language support: DigitalOcean’s new Droplet Console supports multiple languages, meaning you can now type and view any content in any language that is supported by UTF-8","spans":[{"start":0,"end":24,"type":"strong"}]},{"type":"list-item","text":"OS/images supported: Linux distributions (Ubuntu(16.04 - 20.04), Fedora (32 & 33), Debian (9), CentOS (7.6 & 8.3), CentOS 8 Stream, Rocky Linux and Marketplace images.","spans":[{"start":0,"end":20,"type":"strong"},{"start":148,"end":159,"type":"hyperlink","data":{"link_type":"Web","url":"https://marketplace.digitalocean.com/"}}]},{"type":"paragraph","text":"The new Droplet Console is available by default on any new Droplets you spin up. You can also enable it manually on older Droplets. Click here to learn more!","spans":[{"start":132,"end":157,"type":"hyperlink","data":{"link_type":"Web","url":"https://docs.digitalocean.com/products/droplets/how-to/connect-with-console/"}}]},{"type":"paragraph","text":"Check out this short walkthrough video that shows the new Droplet Console in action: ","spans":[]},{"type":"embed","oembed":{"type":"video","embed_url":"https://www.youtube.com/watch?v=Qt7QihVuxiE","title":"Access Your Droplet Terminal Through the Web Console","provider_name":"YouTube","thumbnail_url":"https://i.ytimg.com/vi/Qt7QihVuxiE/hqdefault.jpg","provider_url":"https://www.youtube.com/","author_name":"DigitalOcean","author_url":"https://www.youtube.com/c/Digitalocean","height":113,"width":200,"version":"1.0","thumbnail_height":360,"thumbnail_width":480,"html":"<iframe width=\"200\" height=\"113\" src=\"https://www.youtube.com/embed/Qt7QihVuxiE?feature=oembed\" frameborder=\"0\" allow=\"accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture\" allowfullscreen></iframe>"}},{"type":"paragraph","text":"We hope you’re excited about the new Droplet Console. You’re welcome to spin some Droplets up right now, and try out the new Droplet Console – why wait?","spans":[{"start":72,"end":103,"type":"hyperlink","data":{"link_type":"Web","url":"https://cloud.digitalocean.com/droplets/new"}}]},{"type":"paragraph","text":"Happy coding!","spans":[]},{"type":"paragraph","text":"Harsh Banwait, Senior Product Manager","spans":[]}],"tags":[{"tag1":{"__typename":"PRISMIC_Tag","tag":"Product Updates","_linkType":"Link.document","_meta":{"uid":"product-updates"}}}],"author":{"__typename":"PRISMIC_Author","author_name":"Harsh Banwait","author_image":{"dimensions":{"width":600,"height":399},"alt":null,"copyright":null,"url":"https://images.prismic.io/www-static/e83ff690-b20c-4d88-a2b6-57e562558cd6_download.png?auto=compress,format"},"_meta":{"uid":"harsh-banwait"}},"_meta":{"uid":"new-droplet-console-ssh-support"}},"featured_blog_3":{"__typename":"PRISMIC_Blog","_linkType":"Link.document","blog_header_image":{"dimensions":{"width":790,"height":400},"alt":null,"copyright":null,"url":"https://images.prismic.io/www-static/588e28d3-d41e-480b-937b-8c3b19201f6e_DODX3568-790x400-Blog.jpg?auto=compress,format"},"blog_headline":[{"type":"heading1","text":"How to scale your SaaS product without breaking the bank","spans":[]}],"blog_post_date":"2021-06-22","blog_post_content":[{"type":"paragraph","text":"These days, if you are in the business of software, chances are you are delivering or plan to deliver your services using a Software-as-a-Service (SaaS) model. A combination of internet-based delivery, subscription-based pricing, and low-friction product experiences have made SaaS solutions valuable tools for their users, and an excellent vehicle for software builders looking to distribute their products.","spans":[]},{"type":"paragraph","text":"These factors have made SaaS solutions ubiquitous; SaaS is the largest segment in the public cloud market, and is used to provide functionality ranging from personal finance apps for consumers, to productivity software for businesses, and even tools and services for software developers themselves to compose their applications and simplify their workflows. It is also not uncommon to find micro-SaaS applications being built for specific industries such as retail, job functions such as accounting or marketing, or tasks such as event management. ","spans":[]},{"type":"paragraph","text":"The best thing about this SaaS wave has been that it has allowed a new generation of software builders to build and monetize applications and participate in the digital economy. Previously, you had to be a big company with lots of resources, name recognition and distribution networks to successfully sell software products. Now, irrespective of whether you are a single person working on a passion project, a small team of developers in a startup, or a small and medium-sized business (SMB), the SaaS model enables you to express your ideas in the form of software and deliver them to customers anywhere in the world.","spans":[]},{"type":"heading2","text":"The unique challenges of building SaaS solutions","spans":[]},{"type":"paragraph","text":"","spans":[]},{"type":"paragraph","text":"Despite the opportunities that come with the widespread adoption of SaaS products, software builders still have to answer key questions in their journey to building successful SaaS products. Understanding what customers to target, features to prioritize, how to price your product, and how to acquire customers are all critical questions to figure out while you are also doing the important job of actually building and operating the product. ","spans":[]},{"type":"paragraph","text":"Writing the code, testing, deployment, monitoring the usage in production, and ensuring that your apps are able to handle the additional demand when customer base and usage grows are all essential and time-consuming tasks.","spans":[]},{"type":"paragraph","text":"Additionally, being able to test multiple ideas, pivot, and double down on the ideas that actually work is critical in early stages of SaaS development. Once growth comes, it is equally important to scale up without compromising on performance or reliability. Needless to say, all of this needs to be economically viable as well, since not everyone has the resources of large SaaS providers like Salesforce or Adobe.","spans":[]},{"type":"heading2","text":"Cloud Computing enables builders but also poses challenges","spans":[]},{"type":"paragraph","text":"","spans":[]},{"type":"paragraph","text":"Fortunately, for the act of building and operating your apps, cloud computing can help take some load off your shoulders. Unless you have the scale and resources of Facebook, chances are you are not going to set up your own data centers to host the computing infrastructure that powers your SaaS company. Public cloud infrastructure providers can bring great value to SaaS builders by providing on-demand computing services with usage-based pricing. However, just like how the legacy software companies weren't built for the SaaS model, the early (and big) cloud computing services were not optimized for the unique needs of small SaaS building teams. ","spans":[]},{"type":"paragraph","text":"Smaller SaaS teams face challenges with large cloud computing providers, including:","spans":[]},{"type":"heading4","text":"Too many technology options","spans":[]},{"type":"paragraph","text":"There are just too many options for tech stacks on which to build your SaaS - programming languages, application development frameworks, libraries, runtime environments, architectural patterns, and deployment models - and the list is growing by the day.","spans":[]},{"type":"heading4","text":"Complexity of cloud computing services","spans":[]},{"type":"paragraph","text":"Even when you have decided on a technology stack, there is a lot of cloud vendor-specific terminology you need to learn and heavy lifting you need to do to build on the cloud, not all of which contributes to making your SaaS applications successful.","spans":[]},{"type":"heading4","text":"Unpredictable costs","spans":[]},{"type":"paragraph","text":"The experimentation necessary in early stages of SaaS development, as well as the scaling of applications required during the growth phase, call for affordable and predictable pricing from your cloud provider. The last thing SaaS teams want is surprising and indecipherable bills from your cloud provider. Unfortunately, smaller businesses often experience unpredictable costs with cloud providers who are busy serving only the large enterprises.","spans":[]},{"type":"heading2","text":"DigitalOcean provides a simple, cost effective solution for SaaS builders","spans":[]},{"type":"paragraph","text":"Fortunately, at DigitalOcean we have a laser focus on small software development teams, who are trying to build the next generation of applications. Today, DigitalOcean customers are already building SaaS applications which serve all kinds of customers.","spans":[{"start":191,"end":217,"type":"hyperlink","data":{"link_type":"Web","url":"https://www.digitalocean.com/solutions/saas/"}}]},{"type":"paragraph","text":"We believe SaaS builders should focus on building apps that power their business, and not spend their valuable time on managing infrastructure. That is exactly what we have been able to enable through our intuitive products that are built for scale and reliability.","spans":[{"start":205,"end":223,"type":"hyperlink","data":{"link_type":"Web","url":"https://www.digitalocean.com/products/"}}]},{"type":"list-item","text":"Vidazoo is an advertising technology company specializing in video streaming and serving. It serves video ads to thousands of websites and handles close to 10 billion requests per day. \n\n“We are as much a data company as an adtech company. Our business relies on speedy and accurate data processing at massive scale. DigitalOcean provides us the perfect set of tools to operate our SaaS business profitably, while not making us feel the need to become full time system administrators. We plan to move a lot of our apps to DigitalOcean App Platform and other fully managed products.” - Roman Svichar, CTO of Vidazoo","spans":[{"start":0,"end":7,"type":"hyperlink","data":{"link_type":"Web","url":"https://vidazoo.com/"}},{"start":187,"end":583,"type":"em"}]},{"type":"paragraph","text":"We believe in meeting customers where they are. If they already have an understanding of cloud infrastructure technologies, they should be able to leverage that knowledge and get started with our products without any further ramp up.","spans":[]},{"type":"list-item","text":"Whatfix is an enterprise SaaS provider that offers a digital adoption platform to businesses. The company helps enterprises gain the full value of their investments in enterprise applications by providing real-time, interactive, and contextual guidance to users of those applications. \n\n“What we really love about the DigitalOcean platform is the ease of use. We feel like we know infrastructure and can handle most of the configuration and management. What we needed from a cloud was not bells and whistles but efficiency and reliability. DigitalOcean provides us a platform to build our apps and then gets out of the way. Just how we like it.” - Achyuth Krishna, Director of Engineering of Whatfix","spans":[{"start":0,"end":7,"type":"hyperlink","data":{"link_type":"Web","url":"https://whatfix.com/blog/driving-the-future-now-were-excited-to-announce-our-90-million-series-d-funding/"}},{"start":287,"end":648,"type":"em"}]},{"type":"paragraph","text":"We understand that scaling while maintaining reliability of applications and profitability of business is important, so we provide robust solutions which minimize downtime.","spans":[]},{"type":"list-item","text":"Centra is a SaaS-based e-commerce platform for global direct-to-consumer and wholesale e-commerce brands. Centra provides a powerful e-commerce backend that lets brands build pixel-perfect, custom designed, online flagship stores. \n\n“How do we enable our customers to create differentiated online experiences? How do we ensure their e-commerce apps stay up and running at all times? How do we scale on-demand when traffic grows or new customers come in? These are the questions that we ask ourselves every day. Thankfully, we have a partner in DigitalOcean that provides just the platform to answer those questions enabling us to guarantee 99.9% uptime for our clients.” - Martin Jensen, CEO of Centra","spans":[{"start":0,"end":6,"type":"hyperlink","data":{"link_type":"Web","url":"https://centra.com/"}},{"start":233,"end":673,"type":"em"}]},{"type":"paragraph","text":"These are just a few examples of SaaS businesses finding success on DigitalOcean. We are constantly amazed by the creativity and innovation that software builders are utilizing our platform for. If you are interested in learning more about product updates, technical deep-dives and best practices for building SaaS products and businesses, please contact us to learn how we can help you get started. ","spans":[{"start":340,"end":357,"type":"hyperlink","data":{"link_type":"Web","url":"https://www.digitalocean.com/migrate/?utmmedium=blog","target":"_blank"}}]},{"type":"paragraph","text":"Come build with DigitalOcean!","spans":[]},{"type":"paragraph","text":"Looking to migrate your SaaS to DigitalOcean? Leverage free infrastructure credits, robust training, and technical support to ensure a worry-free migration.","spans":[{"start":0,"end":156,"type":"strong"},{"start":0,"end":156,"type":"hyperlink","data":{"link_type":"Web","url":"https://www.digitalocean.com/migrate/?utmmedium=blog","target":"_blank"}}]},{"type":"paragraph","text":"","spans":[]},{"type":"paragraph","text":"Raman Sharma","spans":[]},{"type":"paragraph","text":"Vice President, Product & Programs Marketing","spans":[]}],"tags":[{"tag1":{"__typename":"PRISMIC_Tag","tag":"Developer Relations","_linkType":"Link.document","_meta":{"uid":"developer-relations"}}}],"author":{"__typename":"PRISMIC_Author","author_name":"Raman Sharma","author_image":{"dimensions":{"width":512,"height":512},"alt":null,"copyright":null,"url":"https://images.prismic.io/www-static/497b4b14-d192-493a-8b66-7ae176ba99f3_raman.png?auto=compress,format"},"_meta":{"uid":"raman-sharma"}},"_meta":{"uid":"how-to-scale-your-saas-product-without-breaking-the-bank"}}}}]}}},"pageContext":{"limit":12,"skip":24,"numPages":33,"currentPage":3,"data":[{"node":{"author":{"_linkType":"Link.document","author_name":"Ryan Pollock","author_image":{"dimensions":{"width":3000,"height":1996},"alt":null,"copyright":null,"url":"https://images.prismic.io/www-static/704b7a40-827e-4dc0-8b8b-5f30e43d6625_ryan-pollock.jpg?auto=compress,format"},"_meta":{"uid":"ryan_pollock"}},"blog_header_image":{"dimensions":{"width":791,"height":395},"alt":null,"copyright":null,"url":"https://images.prismic.io/www-static/498f9a21-a094-42af-983c-32f2d816e292_Premium_Droplets_Blog_BNR.jpg?auto=compress,format"},"blog_headline":[{"type":"heading1","text":"Introducing Premium Droplets with faster Intel and AMD CPUs and NVMe SSD","spans":[]}],"blog_post_content":[{"type":"paragraph","text":"Rockstar Tom Petty put it this way: “the waiting is the hardest part.”","spans":[]},{"type":"paragraph","text":"What a simple and profound statement that we all know to be true.","spans":[]},{"type":"paragraph","text":"Every nanosecond your customers wait is hard on them, and can ultimately be so frustrating that they quit using your app in search of a faster or more responsive alternative. ","spans":[]},{"type":"paragraph","text":"That’s why we’re introducing Premium Droplets with faster Intel and AMD CPUs, along with NVMe SSD. With these new Droplets, you can be certain that you’re running your apps with modern hardware that delivers the fast performance your customers demand and deserve.","spans":[]},{"type":"heading2","text":"Our latest, greatest CPUs and modern, high performance disks","spans":[]},{"type":"paragraph","text":"Premium Droplets are guaranteed to utilize some of the newest CPUs we have in our fleet.","spans":[]},{"type":"list-item","text":"Intel Premium Droplets currently run second generation Intel Xeon Scalable processors, which feature what’s commonly referred to as the Cascade Lake architecture. These Intel CPUs operate at a base frequency of 2.50 GHz and max turbo frequency of 3.90 GHz.","spans":[{"start":37,"end":85,"type":"strong"},{"start":37,"end":85,"type":"hyperlink","data":{"link_type":"Web","url":"https://www.intel.com/content/www/us/en/products/docs/processors/xeon/2nd-gen-xeon-scalable-processors-brief.html"}},{"start":136,"end":161,"type":"hyperlink","data":{"link_type":"Web","url":"https://en.wikipedia.org/wiki/Cascade_Lake_(microarchitecture)"}}]},{"type":"list-item","text":"AMD Premium Droplets currently run 2nd Generation AMD EPYC™ processors, based upon the “Zen 2” architecture, which feature what’s commonly referred to as the Rome architecture. These AMD EPYC CPUs operate at a base frequency of 2.0 GHz and a max turbo frequency of 3.35 GHz.","spans":[{"start":35,"end":70,"type":"strong"},{"start":35,"end":70,"type":"hyperlink","data":{"link_type":"Web","url":"https://www.amd.com/en/processors/epyc-7002-series"}}]},{"type":"paragraph","text":"One important aspect of our new Premium Droplets is their enhanced memory performance, which can play a significant factor in workloads like in-memory databases and server-side caches for web apps. Our Premium AMD Droplets feature memory frequency of 3200 MHz, and Premium Intel 2933 MHz.","spans":[]},{"type":"paragraph","text":"As for the disk aspect of your Premium Droplets – NVMe SSDs take advantage of parallelism to deliver disk performance that can be an order of magnitude faster than regular SSDs. If you’re running workloads that require a large number of transactions, you’ll achieve much lower latency with NVMe SSDs.","spans":[]},{"type":"heading2","text":"More speed, same simplicity","spans":[]},{"type":"paragraph","text":"Our commitment to simplicity is reflected in all we do, and we’ve applied our usual developer-friendly aesthetic to these new offerings. With today’s launch, when you go to the control panel to spin up Droplets, you’ll see new options for Premium Intel and AMD within our Basic plan. You can also find slugs for Premium Droplets for use with our CLI, API, or extensions like our Terraform provider.","spans":[{"start":167,"end":210,"type":"hyperlink","data":{"link_type":"Web","url":"https://cloud.digitalocean.com/droplets/new"}},{"start":297,"end":328,"type":"hyperlink","data":{"link_type":"Web","url":"https://slugs.do-api.dev/"}},{"start":346,"end":349,"type":"hyperlink","data":{"link_type":"Web","url":"https://github.com/digitalocean/doctl"}},{"start":351,"end":354,"type":"hyperlink","data":{"link_type":"Web","url":"https://developers.digitalocean.com/documentation/v2/"}},{"start":375,"end":397,"type":"hyperlink","data":{"link_type":"Web","url":"https://registry.terraform.io/providers/digitalocean/digitalocean/latest/docs"}}]},{"type":"embed","oembed":{"type":"video","embed_url":"https://www.youtube.com/watch?v=cO9lk2kUX5M","title":"Introducing Premium Intel and AMD CPU Droplets on DigitalOcean","provider_name":"YouTube","thumbnail_url":"https://i.ytimg.com/vi/cO9lk2kUX5M/hqdefault.jpg","height":113,"width":200,"version":"1.0","author_name":"DigitalOcean","author_url":"https://www.youtube.com/c/Digitalocean","provider_url":"https://www.youtube.com/","cache_age":null,"thumbnail_width":480,"thumbnail_height":360,"html":"<iframe width=\"200\" height=\"113\" src=\"https://www.youtube.com/embed/cO9lk2kUX5M?feature=oembed\" frameborder=\"0\" allow=\"accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture\" allowfullscreen></iframe>"}},{"type":"paragraph","text":"You can also use Premium Droplets as worker nodes with DigitalOcean Kubernetes.","spans":[{"start":55,"end":78,"type":"hyperlink","data":{"link_type":"Web","url":"https://www.digitalocean.com/products/kubernetes/"}}]},{"type":"image","url":"https://images.prismic.io/www-static/eddfcc1f-766c-4870-9b93-396a9ff55638_premium+kubernetes.png?auto=compress,format","alt":null,"copyright":null,"dimensions":{"width":1502,"height":774}},{"type":"heading2","text":"Get started with Premium Droplets today","spans":[]},{"type":"paragraph","text":"With today’s launch, Premium Intel Droplets are available in all of our global data center regions. AMD is in three locations to start, with more coming in the months ahead.","spans":[]},{"type":"image","url":"https://images.prismic.io/www-static/2616e800-1416-4af9-9dc5-cbca24ba5cd5_premium+droplet+availability.png?auto=compress,format","alt":null,"copyright":null,"dimensions":{"width":600,"height":121}},{"type":"paragraph","text":"We hope you’re as excited about these new Premium Droplets as we are. You’re welcome to spin some up right now, or resize from Regular to Premium Intel – why wait?","spans":[{"start":88,"end":110,"type":"hyperlink","data":{"link_type":"Web","url":"https://cloud.digitalocean.com/droplets/new"}},{"start":115,"end":151,"type":"hyperlink","data":{"link_type":"Web","url":"https://www.digitalocean.com/docs/droplets/how-to/resize/"}}]}],"blog_post_date":"2021-02-23","tags":[{"tag1":{"tag":"Product Updates","_linkType":"Link.document","_meta":{"uid":"product-updates"}}}],"_meta":{"uid":"premium-droplets-intel-cascade-lake-amd-epyc-rome"}}},{"node":{"author":{"_linkType":"Link.document","author_name":"Shantanu Kedar","author_image":{"dimensions":{"width":96,"height":96},"alt":null,"copyright":null,"url":"https://images.prismic.io/www-static/17e306fb-0754-418d-8606-e7b481c613c0_shantanu-kedar.png?auto=compress,format"},"_meta":{"uid":"shantanu_kedar"}},"blog_header_image":{"dimensions":{"width":1200,"height":600},"alt":null,"copyright":null,"url":"https://images.prismic.io/www-static/72bd2f14-1db1-4e37-a5a1-8f71e4e1994b_latest-at-do-blog-img.png?auto=compress,format"},"blog_headline":[{"type":"heading1","text":"Latest products and features at DigitalOcean: February 2021 ","spans":[]}],"blog_post_content":[{"type":"paragraph","text":"February was a busy month at DigitalOcean as we introduced Premium Droplets, plus updates to many other products. Here are the highlights for this month:","spans":[]},{"type":"paragraph","text":"","spans":[]},{"type":"heading2","text":"Infrastructure as a Service (IaaS)","spans":[]},{"type":"paragraph","text":"","spans":[]},{"type":"heading4","text":"Introducing Premium Droplets with faster Intel and AMD CPUs and NVMe SSD","spans":[]},{"type":"paragraph","text":"We are excited to introduce Premium Droplets with faster Intel and AMD CPUs, along with NVMe SSD. Premium Droplets are guaranteed to utilize some of the newest CPUs we have in our fleet.","spans":[{"start":28,"end":75,"type":"hyperlink","data":{"link_type":"Web","url":"https://www.digitalocean.com/blog/premium-droplets-intel-cascade-lake-amd-epyc-rome"}}]},{"type":"list-item","text":"Intel Premium Droplets currently run second generation Intel Xeon Scalable processors, which feature what’s commonly referred to as the Cascade Lake architecture. These Intel CPUs operate at a base frequency of 2.50 GHz and max turbo frequency of 3.90 GHz. ","spans":[{"start":37,"end":85,"type":"hyperlink","data":{"link_type":"Web","url":"https://www.intel.com/content/www/us/en/products/docs/processors/xeon/2nd-gen-xeon-scalable-processors-brief.html"}},{"start":136,"end":161,"type":"hyperlink","data":{"link_type":"Web","url":"https://en.wikipedia.org/wiki/Cascade_Lake_(microarchitecture)"}}]},{"type":"list-item","text":"AMD Premium Droplets currently run second generation EPYC processors, which feature what’s commonly referred to as the Rome architecture. These AMD CPUs operate at a base frequency of 2.0 GHz and a max turbo frequency of 3.35 GHz.","spans":[{"start":35,"end":68,"type":"hyperlink","data":{"link_type":"Web","url":"https://www.amd.com/en/processors/epyc-7002-series"}},{"start":119,"end":136,"type":"hyperlink","data":{"link_type":"Web","url":"https://en.wikipedia.org/wiki/Epyc#Second_generation_Epyc_(Rome)"}}]},{"type":"paragraph","text":"In contrast, our Regular Intel Droplets feature a mix of first generation Intel Xeon Scalable processors and older Intel Xeon processors. Check out this short video to see how easy it is to spin up Premium Droplets.","spans":[]},{"type":"embed","oembed":{"height":113,"width":200,"embed_url":"https://www.youtube.com/watch?v=cO9lk2kUX5M","type":"video","version":"1.0","title":"Introducing Premium Intel and AMD CPU Droplets on DigitalOcean","author_name":"DigitalOcean","author_url":"https://www.youtube.com/user/DigitalOceanVideos","provider_name":"YouTube","provider_url":"https://www.youtube.com/","cache_age":null,"thumbnail_url":"https://i.ytimg.com/vi/cO9lk2kUX5M/hqdefault.jpg","thumbnail_width":480,"thumbnail_height":360,"html":"<iframe width=\"200\" height=\"113\" src=\"https://www.youtube.com/embed/cO9lk2kUX5M?feature=oembed\" frameborder=\"0\" allow=\"accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture\" allowfullscreen></iframe>"}},{"type":"heading4","text":"Spaces are now available in SFO3","spans":[]},{"type":"paragraph","text":"Spaces are now available in SFO3, meaning you can now create new Spaces in that region. Note that the creation of new Spaces in SGP1 is temporarily disabled while we update capacity in this region. Existing Spaces in SGP1 will be unaffected, and you can create new Spaces in regions like AMS3, NYC3, SFO3, and FRA1.","spans":[{"start":136,"end":156,"type":"hyperlink","data":{"link_type":"Web","url":"https://www.digitalocean.com/docs/release-notes/upcoming/spaces-sgp1-update/"}}]},{"type":"heading4","text":"Creation of new resources in SFO2 is disabled for new customers","spans":[]},{"type":"paragraph","text":"Due to capacity limits in the region, we have disabled the creation of new resources in SFO2 for new customers. Existing customers with resources in SFO2 are unaffected and can still create and destroy resources in SFO2.","spans":[]},{"type":"heading4","text":"Reminder - End of life for FreeBSD 12.1","spans":[]},{"type":"paragraph","text":"FreeBSD 12.1 has reached its end of life. Per our image deprecation policy, you can now only deploy the FreeBSD UFS and ZFS image via the API. We will remove the images from the platform on 11 March 2021.","spans":[{"start":50,"end":74,"type":"hyperlink","data":{"link_type":"Web","url":"https://www.digitalocean.com/docs/platform/image-deprecation/"}}]},{"type":"heading2","text":"Platform as a Service (PaaS)","spans":[]},{"type":"paragraph","text":"","spans":[]},{"type":"heading4","text":"App Platform now available in BLR, SGP, and SFO regions","spans":[]},{"type":"paragraph","text":"We are excited to announce the availability of DigitalOcean App Platform in BLR (Bangalore, India), SGP (Singapore), and SFO (San Francisco, CA) regions. This enables you to deploy code closer to your customers. In addition to this, App Platform is also available in AMS (Amsterdam, Netherlands), FRA (Frankfurt, Germany), and NYC (New York, NY) regions.","spans":[{"start":47,"end":72,"type":"hyperlink","data":{"link_type":"Web","url":"https://www.digitalocean.com/products/app-platform/"}}]},{"type":"heading4","text":"Marketplace updates","spans":[]},{"type":"paragraph","text":"We launched many preconfigured 1-Click Apps in the DigitalOcean Marketplace to help you save time and remove the hassle of provisioning servers.","spans":[]},{"type":"list-item","text":"Budibase - Enables you to build internal tools, such as; dashboards, admin panels, CRMs, approval apps, employee wikis, and everything in between!","spans":[{"start":0,"end":8,"type":"hyperlink","data":{"link_type":"Web","url":"https://marketplace.digitalocean.com/apps/budibase"}}]},{"type":"list-item","text":"WebMaker Server - A scalable hosted environment for publishing WebMaker applications created using the WebMaker Design Studio.","spans":[{"start":0,"end":15,"type":"hyperlink","data":{"link_type":"Web","url":"https://marketplace.digitalocean.com/apps/webmaker-server"}}]},{"type":"list-item","text":"OpenBoxes - Supply chain management system. ","spans":[{"start":0,"end":9,"type":"hyperlink","data":{"link_type":"Web","url":"https://marketplace.digitalocean.com/apps/openboxes"}}]},{"type":"list-item","text":"Kubernetes 1.19 - Provides the necessary tools to initialize or join CAST AI managed multi-cloud Kubernetes cluster.","spans":[{"start":0,"end":15,"type":"hyperlink","data":{"link_type":"Web","url":"https://marketplace.digitalocean.com/apps/kubernetes-1-19"}}]},{"type":"list-item","text":"NetBox - An open source IP address management (IPAM) and data center infrastructure management (DCIM) tool developed specifically to address the needs of network and infrastructure engineers.","spans":[{"start":0,"end":6,"type":"hyperlink","data":{"link_type":"Web","url":"https://marketplace.digitalocean.com/apps/netbox"}}]},{"type":"list-item","text":"Decentralized Internet - An SDK and library for building decentralized web and distributed computing projects.","spans":[{"start":0,"end":22,"type":"hyperlink","data":{"link_type":"Web","url":"https://marketplace.digitalocean.com/apps/decentralized-internet"}}]},{"type":"list-item","text":"ThePlanMinder PostgreSQL - PostgreSQL 12 server with a script to quickly create a database for The PlanMinder.","spans":[{"start":0,"end":24,"type":"hyperlink","data":{"link_type":"Web","url":"https://marketplace.digitalocean.com/apps/theplanminder-postgresql"}}]},{"type":"list-item","text":"WebDNA Server - A scripting language application that connects with web servers for the purpose of adding dynamic and database-driven qualities to websites. ","spans":[{"start":0,"end":13,"type":"hyperlink","data":{"link_type":"Web","url":"https://marketplace.digitalocean.com/apps/webdna-server-8-6-4"}}]},{"type":"heading2","text":"Developer experience","spans":[]},{"type":"paragraph","text":"","spans":[]},{"type":"heading4","text":"Updates to DigitalOcean CLI ","spans":[]},{"type":"paragraph","text":"","spans":[]},{"type":"paragraph","text":"We have released two new versions for doctl, the official DigitalOcean CLI:","spans":[{"start":38,"end":43,"type":"hyperlink","data":{"link_type":"Web","url":"https://github.com/digitalocean/doctl/"}}]},{"type":"list-item","text":"v1.55.0 - This release adds Docker Hub and GitLab support to App Platform's create and update commands.","spans":[{"start":0,"end":7,"type":"hyperlink","data":{"link_type":"Web","url":"https://github.com/digitalocean/doctl/releases/tag/v1.55.0"}}]},{"type":"list-item","text":"v1.56.0 - This release includes support for database firewalls management, Kubernetes cascading deletes, and installing Kubernetes 1-Clicks to existing clusters.","spans":[{"start":0,"end":7,"type":"hyperlink","data":{"link_type":"Web","url":"https://github.com/digitalocean/doctl/releases/tag/v1.56.0"}}]},{"type":"paragraph","text":"You can check out the release notes to get up to date information about product updates, and read about updates from the previous month here. ","spans":[{"start":22,"end":35,"type":"hyperlink","data":{"link_type":"Web","url":"https://www.digitalocean.com/docs/release-notes/"}},{"start":104,"end":140,"type":"hyperlink","data":{"link_type":"Web","url":"https://www.digitalocean.com/blog/latest-products-and-features-at-digitalocean-january-2021"}}]},{"type":"paragraph","text":"We hope you’ll give the new products and updates a try. If you have an idea for improving our products or want to vote on other user ideas so they get prioritized, please submit your feedback. And if you have any questions, please feel free to ask them here. ","spans":[{"start":171,"end":191,"type":"hyperlink","data":{"link_type":"Web","url":"https://ideas.digitalocean.com/"}},{"start":244,"end":257,"type":"hyperlink","data":{"link_type":"Web","url":"https://www.digitalocean.com/community/questions"}}]},{"type":"paragraph","text":"Until next month, ","spans":[]},{"type":"paragraph","text":"Happy coding!","spans":[]},{"type":"paragraph","text":"","spans":[]},{"type":"paragraph","text":"Shantanu Kedar","spans":[]},{"type":"paragraph","text":"Senior Manager, Product Marketing","spans":[]}],"blog_post_date":"2021-02-22","tags":[{"tag1":{"tag":"Product Updates","_linkType":"Link.document","_meta":{"uid":"product-updates"}}}],"_meta":{"uid":"latest-products-and-features-at-digitalocean-february-2021"}}},{"node":{"author":{"_linkType":"Link.document","author_name":"Community Team","author_image":null,"_meta":{"uid":"community_team"}},"blog_header_image":{"dimensions":{"width":1000,"height":500},"alt":null,"copyright":null,"url":"https://images.prismic.io/www-static/74d05a5f-563e-4dd2-8cb3-0e64be7d3b0c_Github+Blog+Header.png?auto=compress,format"},"blog_headline":[{"type":"heading1","text":"Learning on the Cloud: Expanding DigitalOcean’s partnership with the GitHub Student Developer Pack","spans":[]}],"blog_post_content":[{"type":"paragraph","text":"DigitalOcean has offered students the opportunity to build in the cloud through the GitHub Student Developer Pack since 2014. We are pleased to announce that we have increased our offering to **$100 worth of credits to use on the DigitalOcean platform for one calendar year**. This will support students in building, sharing, and collaborating on software projects as they spin up Droplets, learn about scaling infrastructure, or host their apps on DigitalOcean App Platform.","spans":[]},{"type":"paragraph","text":"Since its inception, DigitalOcean has been committed to education, so students who are looking for learning resources are encouraged to join our Community, peruse our nearly 4,000 technical tutorials, download one of our free eBooks, or follow our Introduction to the Cloud self-guided course.","spans":[{"start":145,"end":154,"type":"hyperlink","data":{"link_type":"Web","url":"https://www.digitalocean.com/community"}},{"start":174,"end":199,"type":"hyperlink","data":{"link_type":"Web","url":"https://www.digitalocean.com/community/tutorials"}},{"start":217,"end":232,"type":"hyperlink","data":{"link_type":"Web","url":"https://www.digitalocean.com/community/tags/book"}},{"start":248,"end":292,"type":"hyperlink","data":{"link_type":"Web","url":"https://www.digitalocean.com/community/curriculums/introduction-to-the-cloud"}}]},{"type":"paragraph","text":"How to claim the offer as a student","spans":[{"start":0,"end":35,"type":"strong"}]},{"type":"paragraph","text":"If you are currently a student enrolled in a formal educational program, you can check to see if  you are eligible for, and then apply to the GitHub Student Developer Pack program. Once you do so, you will be able to claim your DigitalOcean offer, and can follow the instructions on our website, which will walk you through how to enter your promotional code upon signup. ","spans":[{"start":129,"end":179,"type":"hyperlink","data":{"link_type":"Web","url":"https://education.github.com/discount_requests/student_application"}},{"start":256,"end":294,"type":"hyperlink","data":{"link_type":"Web","url":"https://www.digitalocean.com/github-students/"}}]},{"type":"paragraph","text":"With $100 worth of credits over the course of a year, you can build a developer portfolio, host group projects, and get a hands-on understanding of cloud infrastructure. You’ll be deploying in no time!","spans":[]},{"type":"paragraph","text":"Educators and teachers","spans":[{"start":0,"end":22,"type":"strong"}]},{"type":"paragraph","text":"If you are an educator or teacher, we are looking forward to connecting with you, too! We have several programs to support teachers, including our Spin Up program, our Workshop Kits that will support you in teaching, and our open-educational resources, including eBooks that can serve as free textbook replacements for your students.","spans":[{"start":147,"end":162,"type":"hyperlink","data":{"link_type":"Web","url":"https://www.digitalocean.com/the-spin-up/"}},{"start":168,"end":181,"type":"hyperlink","data":{"link_type":"Web","url":"https://www.digitalocean.com/community/tags/meetup-kits"}},{"start":225,"end":251,"type":"hyperlink","data":{"link_type":"Web","url":"https://www.digitalocean.com/community/tutorials"}},{"start":263,"end":269,"type":"hyperlink","data":{"link_type":"Web","url":"https://www.digitalocean.com/community/tags/book"}}]}],"blog_post_date":"2021-02-18","tags":[{"tag1":{"tag":"Community","_linkType":"Link.document","_meta":{"uid":"community"}}}],"_meta":{"uid":"learning-on-the-cloud-expanding-digitaloceans-partnership"}}},{"node":{"author":{"_linkType":"Link.document","author_name":"Armando Migliaccio","author_image":null,"_meta":{"uid":"armando_migliaccio"}},"blog_header_image":{"dimensions":{"width":1200,"height":600},"alt":null,"copyright":null,"url":"https://images.prismic.io/www-static/ebe1bdb1-55ad-4b26-a4ca-b3429aa2855b_DODX-1941-header-option-4.jpg?auto=compress,format"},"blog_headline":[{"type":"heading1","text":"A glimpse into network availability","spans":[]}],"blog_post_content":[{"type":"heading2","text":"A simple yet effective approach to network monitoring","spans":[]},{"type":"paragraph","text":"As a Cloud Service provider, DigitalOcean takes a lot of care in designing and implementing infrastructure and services that are both fault tolerant and highly available. We make sure that services are well monitored so that when failures do occur, we can anticipate and minimize the impact to our customers. ","spans":[{"start":207,"end":216,"type":"hyperlink","data":{"link_type":"Web","url":"https://www.digitalocean.com/blog/observability-and-metrics/"}}]},{"type":"paragraph","text":"The same guiding principles apply to monitoring Droplet networking: while we pride ourselves for the simplicity of the solutions we offer to our customers, simplicity is a core design principle we take seriously, especially when looking at the state of networking infrastructure (which is known to be complex and multi-dimensional). ","spans":[]},{"type":"paragraph","text":"In this blog post, we share the journey that took us from realization to revelation: we will go through the steps that have taken us from an incomplete picture of the network state experienced by customer Droplets to a near real-time EKG-like signal for each and every single Droplet that runs on our infrastructure.","spans":[{"start":233,"end":234,"type":"em"}]},{"type":"heading2","text":"The premise","spans":[]},{"type":"paragraph","text":"When it comes to our ability to look into the state of our global network, we realized that a preliminary step towards a more scalable and manageable architecture was a necessary prerequisite to having a solid strategy in place for monitoring the state of our network. It is common knowledge that layer-2 topologies, especially large ones, are inherently hard to monitor, and as we recently transformed our data center networking to more closely resemble layer-3 fabrics, that meant that it suddenly became easier to understand packets as they flow through our physical and virtual pipes to and from their targets. ","spans":[{"start":391,"end":402,"type":"hyperlink","data":{"link_type":"Web","url":"https://www.digitalocean.com/blog/scaling-droplet-public-networking/"}}]},{"type":"paragraph","text":"When we say easier, we do not necessarily mean that there were no challenges left for us to tackle; network traffic takes place at many layers of the well-known ISO/OSI stack, involving multiple application protocols and distributed endpoints. There are literally hundreds (if not more) of companies out there whose core business is to provide networking monitoring solutions for small and large enterprises, so why did we believe that none of them could help us in having a crisp picture of the state of our network? Because, as cloud providers, we typically have additional challenges given the scale, and the level of customization employed to achieve such scale. ","spans":[]},{"type":"paragraph","text":"It is noteworthy that we do leverage a number of such solutions already, but the cost of acquiring and operating a monitoring solution to achieve high fidelity are just as important to us. As a cloud provider, we have an intimate knowledge of how our network operates: we are the ones in charge of deploying and maintaining the hardware, software, and the automation required to literally stitch the logical path to and from our droplets as they come to life in our infrastructure. That puts us into an incredibly compelling vantage point when it comes to instrumenting the network.","spans":[]},{"type":"paragraph","text":"To understand what we mean by that, let us consider our attempt at capturing the cloud networking universe the way we see it. One could say that when it comes to delivering packets in such a world, there can be an awful lot of things that can go wrong. As each dimension is not independent from another, this only makes matters more complicated. ","spans":[{"start":81,"end":106,"type":"em"},{"start":81,"end":106,"type":"strong"}]},{"type":"image","url":"https://images.prismic.io/www-static/31cbe501-729f-4e6b-96f5-a65bc1075c7c_The+Universe+of+Cloud+Networking.png?auto=compress,format","alt":null,"copyright":null,"dimensions":{"width":1048,"height":1193}},{"type":"paragraph","text":"We initially focus on how Droplets, one of our core product offerings, connect to the internet via their public address (it being IPv4, IPv6 or floating IP). That means that packets have to traverse a number of stacks: the Droplet virtualization stack, the Droplet’s OS networking stack itself, and so on. As packets flow through a layer-3 fabric, there are routing decisions involved at each step, and the forwarding plane must be programmed in advance for these decisions to be taken correctly. ","spans":[{"start":136,"end":140,"type":"hyperlink","data":{"link_type":"Web","url":"https://www.digitalocean.com/docs/networking/ipv6/"}},{"start":144,"end":155,"type":"hyperlink","data":{"link_type":"Web","url":"https://www.digitalocean.com/docs/networking/floating-ips/"}}]},{"type":"paragraph","text":"If we manage to efficiently introduce instrumentation points in each of these steps, and we can do that without overhead and without perturbing the path under instrumentation, we can then coalesce the collected data into something succinct to verify our customers are experiencing  their expectations being met in best-of-class cloud infrastructure.","spans":[]},{"type":"heading2","text":"The journey toward our solution","spans":[]},{"type":"paragraph","text":"To articulate how we went on with our journey towards a solution, let us take a step back and attempt to define what we mean by the status of the network. Also, as you go deeper in this section, you may see it gets heavy on the math side: do not let that scare you! All we have attempted to do was to break down the complexity into smaller more tractable problems that are easier to reason about.","spans":[]},{"type":"heading3","text":"Reliability and Availability","spans":[]},{"type":"paragraph","text":"Reliability, according to the ANSI Standard Glossary of Software Engineering Terminology, is defined as the ability of a system or component to perform its required functions under stated conditions for a specified period of time. Availability is defined as the degree to which a system or component is operational and accessible when required for use. ","spans":[{"start":0,"end":12,"type":"em"},{"start":103,"end":104,"type":"em"},{"start":104,"end":229,"type":"strong"},{"start":230,"end":243,"type":"em"},{"start":257,"end":258,"type":"em"},{"start":258,"end":351,"type":"strong"}]},{"type":"paragraph","text":"While both indicators can be expressed in the form of a probability function, the subtle difference between the two is that reliability factors in the aspect of specification while availability does not. In other words, one can say that:","spans":[]},{"type":"paragraph","text":"A reliable system is also available, but an available system is not necessarily reliable. ","spans":[{"start":0,"end":90,"type":"em"},{"start":0,"end":90,"type":"strong"}]},{"type":"paragraph","text":"Now, if we look at these definitions in the context of networking, and in particular in the context of cloud networking at DigitalOcean, we could say that in order to measure network reliability we may need to have the specification of what we consider the correct conditions under which the network is deemed reliable. As that implies the aspect of performance (latency, throughput, and jitter), that is a much bigger problem in itself and best left for another blog post.","spans":[]},{"type":"heading3","text":"Mastering the meaning of Availability","spans":[]},{"type":"paragraph","text":"As it made sense for us to focus on measuring network availability first we know that availability is commonly defined as the probability that a status function X(t) is 1 at time t > 0:","spans":[{"start":46,"end":66,"type":"em"},{"start":46,"end":66,"type":"strong"},{"start":111,"end":118,"type":"hyperlink","data":{"link_type":"Web","url":"https://en.wikipedia.org/wiki/Availability"}},{"start":160,"end":165,"type":"em"}]},{"type":"image","url":"https://images.prismic.io/www-static/7625df20-6352-4b7d-aa19-4f07eb390b86_Image1.png?auto=compress,format","alt":null,"copyright":null,"dimensions":{"width":592,"height":202}},{"type":"paragraph","text":"The evaluation that “the system functions at time t” is the result of the execution of a number of finite and deterministic steps performed on the system under observation at time t. X(t) is therefore a boolean function, and boolean functions are easy to compute, right? The hard part then is to measure such a status function taking into account the complexity presented in the cloud universe shown before. In abstract terms, one attempt at defining such status function can be the following:","spans":[{"start":21,"end":51,"type":"em"}]},{"type":"image","url":"https://images.prismic.io/www-static/cf8cc118-59ad-47b7-b1d3-c46c6887e5a8_CodeCogsEqn.gif?auto=compress,format","alt":null,"copyright":null,"dimensions":{"width":103,"height":39}},{"type":"paragraph","text":"𝞪 is the subsystem in which the overall cloud networking universe can be broken down into. But, what does the above formula mean exactly?","spans":[]},{"type":"paragraph","text":"The next paragraph will make that clear.","spans":[]},{"type":"heading3","text":"Plain English","spans":[]},{"type":"paragraph","text":"The status function X is the combination of status functions for each of the elements 𝞪 that make up the cloud networking universe.","spans":[{"start":0,"end":131,"type":"em"},{"start":0,"end":131,"type":"strong"}]},{"type":"paragraph","text":"This product formula can be more or less accurate depending on how many independent elements of the cloud networking universe are known and efficiently computable in near real-time. For instance, when focusing on DigitalOcean’s Droplet network connectivity, there are a number of status functions that we looked to implement:","spans":[]},{"type":"list-item","text":"𝚪(𝞪) = Software Networking, namely the active presence of OpenFlow rules (Open vSwitch is a foundational open source component in use at DigitalOcean) that are the result of the combination of services aimed at providing connectivity to the droplet public interface, as well as the operation of service daemons involved in the processing of flow rules. For instance, these may entail flows that enable all the use cases associated to public networking, namely v4 connectivity, v6 connectivity and FLIP connectivity (optionally), and all the access-level services that make v4 and v6 connectivity functional like DHCP, ARP, NDP, ICMP, or metadata access. If this status function is 0, then there is no way that anything can pass through the droplet OS networking stack correctly.","spans":[{"start":8,"end":28,"type":"strong"},{"start":76,"end":88,"type":"hyperlink","data":{"link_type":"Web","url":"https://www.openvswitch.org/"}}]},{"type":"list-item","text":"𝚪(𝞪) = Hypervisor vSwitch, namely that the datapath is operational, i.e. the vSwitch kernel module is indeed passing packets to and from userspace. For example, this may require that periodic probing be performed to validate that well-known traffic above all else is processed correctly (e.g. ARP, NDP, DHCP, ICMP, etc).","spans":[{"start":9,"end":27,"type":"strong"}]},{"type":"list-item","text":"𝚪(𝞪) = Hypervisor OS networking stack, namely that the hypervisor is connected to the networking fabric: for Layer-3 enabled data centers, this means that the HV-as-a-router is reachable for both the IPv4 and IPv6 protocol families on the respective data center VLANs.","spans":[{"start":9,"end":39,"type":"strong"}]},{"type":"list-item","text":"𝚪(𝞪) = Host Route advertisement, namely the existence of host route advertisement(s) for the droplet in the region’s RIB (routing information base), with the next-hop pointing to the hypervisor where the droplet is running, implies that packets are meant be routed to the HV (barred from other networking misconfiguration/failures).","spans":[{"start":9,"end":42,"type":"strong"}]},{"type":"paragraph","text":"As we found ways to measure, record, and export telemetry data associated with each of these functions, we were then able to distill that into a simple indicator that over time plots the level of availability experienced by each customer Droplet. The snapshot below shows the network availability for the public IPv4 path of a real customer droplet that has experienced some downtime due to a failed software upgrade on our hypervisors. As the Droplet was evacuated, its network availability was promptly restored. The monitoring solution we put in place was able to catch the failure in the act, and supply our support team with near real-time data to assess and mitigate the outage.","spans":[]},{"type":"image","url":"https://images.prismic.io/www-static/1fff9f2f-6d2b-4754-8348-1d9ca1818c41_Droplet+availability.png?auto=compress,format","alt":null,"copyright":null,"dimensions":{"width":1600,"height":795}},{"type":"paragraph","text":"The versatility of this tool, built on standard and open source technologies, not only helped our support team in having better visibility during an outage, but it helps across the entire organization as we get more and more aware of the true potential of underlying the data which can be drilled down by region, hypervisor, Droplet, as well as rolled up globally.","spans":[]},{"type":"heading2","text":"Final considerations","spans":[]},{"type":"paragraph","text":"The proposed formalization can be seen as an attempted factorization of the complex problem of network availability in the cloud: rather than looking at networking end-to-end, the proposed approach aimed at breaking down the various elements that affect network availability into smaller more tractable problems that are addressed individually. This has a number of positive implications: i) it helped limit the engineering effort to deliver a minimum viable solution, ii) it allowed us to iterate through consecutive levels of refinement, iii) it helped us handle the scale at which our infrastructure operates, and last but not least, iv) it helped us deliver value to our customers fast!","spans":[]}],"blog_post_date":"2021-02-11","tags":[{"tag1":{"tag":"Engineering","_linkType":"Link.document","_meta":{"uid":"engineering"}}}],"_meta":{"uid":"a-glimpse-into-network-availability"}}},{"node":{"author":{"_linkType":"Link.document","author_name":"Daniel Zaltsman","author_image":{"dimensions":{"width":188,"height":188},"alt":"Daniel Zaltsman","copyright":null,"url":"https://images.prismic.io/www-static/663d428f56c46eeb165c811add8f1f60402aa451_daniel_zaltsman-c47f4847.png?auto=compress,format"},"_meta":{"uid":"daniel_zaltsman"}},"blog_header_image":{"dimensions":{"width":790,"height":395},"alt":"Welcome to Navigators Blog Header Image","copyright":null,"url":"https://images.prismic.io/www-static/0b6aad92-0ed2-4684-88fb-ea99190db336_DO_Navigator+Assets_Blog.jpg?auto=compress,format"},"blog_headline":[{"type":"heading1","text":"Welcome to Navigators: DigitalOcean’s Ambassador Program ","spans":[]}],"blog_post_content":[{"type":"paragraph","text":"It’s a new year but the DigitalOcean team remains set on fulfilling the same mission guided by the same set of values that has always driven us: to simplify cloud computing so developers and businesses can spend more time creating software that changes the world. The way we deliver on this mission is by starting with community and simplicity and ending with love. ","spans":[]},{"type":"paragraph","text":"One of the challenges any growing community faces is how to reach and support tens of millions of people. For us, we make this connection with developers and startups across the world with our modest but powerful team of DigitalOcean staff.","spans":[]},{"type":"paragraph","text":"Building on the lessons of our community, we’re excited to officially launch our ambassador program called Navigators (http://do.co/navigators).  With this program we hope to prove this hypothesis: that DigitalOcean customers can contribute content, code, and community engagement to help others build and grow and get recognized and rewarded in turn.","spans":[{"start":107,"end":118,"type":"strong"},{"start":119,"end":142,"type":"hyperlink","data":{"link_type":"Web","url":"http://do.co/navigators"}},{"start":143,"end":145,"type":"strong"}]},{"type":"heading2","text":"Understanding Navigators","spans":[]},{"type":"paragraph","text":"DigitalOcean would not be where we are today - serving as many customers and communities around the world as we do - without the ongoing support and effort of a brilliant community of developers, community organizers, speakers, writers, video creators, open source maintainers, and more. The people around the world who are motivated by helping others learn and grow with the DigitalOcean ecosystem are what we call Navigators, like Sammy the Shark here, Navigating the vast ocean ecosystem of technologies and tools.","spans":[]},{"type":"image","url":"https://images.prismic.io/www-static/90030266-5e51-4424-a4cc-7607524e732b_Screen+Shot+2020-12-11+at+10.07.26+AM.png?auto=compress,format","alt":null,"copyright":null,"dimensions":{"width":2858,"height":1940}},{"type":"paragraph","text":"These are the people who write hundreds of tutorials, contribute to countless tools and libraries, build our Meetup community to over 60,000 members, produce hundreds of helpful videos and talks, and create so much more. We all know someone who is a Navigator. These are the people in communities all over the world who are trying to be the best writer, speaker, creator, organizer, or educator. ","spans":[{"start":31,"end":52,"type":"hyperlink","data":{"link_type":"Web","url":"https://www.digitalocean.com/community/tutorials"}},{"start":68,"end":97,"type":"hyperlink","data":{"link_type":"Web","url":"https://www.digitalocean.com/community/tools"}},{"start":109,"end":148,"type":"hyperlink","data":{"link_type":"Web","url":"https://www.meetup.com/pro/digitalocean"}},{"start":158,"end":184,"type":"hyperlink","data":{"link_type":"Web","url":"https://www.youtube.com/results?search_query=digitalocean"}}]},{"type":"paragraph","text":"If this is your goal, we want to work with you.","spans":[]},{"type":"paragraph","text":"\"I use my experience to help other developers. My advice to all DigitalOcean Navigators is to help each other work together while engaging the community. The community DigitalOcean offers is unique, warm, and great. And I loved DigitalOcean for it’s community and tutorials before I even used any of its resources.\"  - Mouhsen Ibrahim","spans":[{"start":0,"end":334,"type":"em"}]},{"type":"heading2","text":"Perks of being a DigitalOcean Navigator","spans":[]},{"type":"paragraph","text":"As a Navigator you will be expected to contribute to the community on a consistent basis. To make this as easy as possible,  here are the perks of the program that we believe will keep Navigators engaged and going above and beyond to guide people around the world to learn and grow with the help of DigitalOcean. ","spans":[]},{"type":"paragraph","text":"When we were dreaming up the Navigators program we kept asking ourselves, “with so many other priorities for our customers and community members, how do we make this program worthwhile for them?” We don’t take lightly the efforts that are involved in contributing code, content, and community engagement with a focus on high quality. This is why we’re offering a list of benefits that tap into your intrinsic and extrinsic motivators. ","spans":[{"start":409,"end":412,"type":"em"}]},{"type":"paragraph","text":"For the intrinsic motivation we know that our most active community members are inspired by the opportunity to help others, which we’ve learned from many years of running the Write for Donations program. We also know that these folks are motivated by learning and personal growth: with more knowledge and experience comes the opportunity to help more people, which brings more knowledge and experience, continuing the cycle. The Navigators Program is here to support this growth. As a Navigator you will be eligible to receive:","spans":[{"start":175,"end":202,"type":"hyperlink","data":{"link_type":"Web","url":"https://www.digitalocean.com/community/pages/write-for-digitalocean'"}}]},{"type":"list-item","text":"Early access to DigitalOcean technologies (betas for upcoming product launches).","spans":[]},{"type":"list-item","text":"Direct line of communication with DigitalOcean developer advocates and product managers.","spans":[]},{"type":"list-item","text":"Monthly calls to discuss community, content, and code work with other Navigators.","spans":[]},{"type":"list-item","text":"Speaking, writing, and organizing opportunities to reach hundreds of thousands of developers and startups in DigitalOcean’s network.","spans":[]},{"type":"paragraph","text":"Of course, we understand that intrinsic motivation is not the whole equation. We know it’s also important for you to be rewarded and recognized more tangibly. The benefit of being a part of a growing community that cares about the individual members includes the myriad ways in which we will continue to delight you. As a Navigator you will also be eligible to receive:","spans":[]},{"type":"list-item","text":"Promotion to DigitalOcean’s network of hundreds of thousands of developers and startups via social media, email, events, and website.","spans":[]},{"type":"list-item","text":"Significant discounts on your personal use of DigitalOcean products and features.","spans":[]},{"type":"list-item","text":"Custom Navigators swag as well as access to swag packs for distributing to your community.","spans":[]},{"type":"list-item","text":"Funds that DigitalOcean will donate to open source projects of your choice on your behalf.","spans":[]},{"type":"paragraph","text":"This is not where the benefits of Navigators end; it’s only where they begin. As a member you will help inform how DigitalOcean can support Navigators in evolving ways. ","spans":[]},{"type":"paragraph","text":"\"I met DigitalOcean in 2014 when I was looking for a fixed-price cloud solution for a small business. The impact of simplicity and performance was so great that I became a fan. After that, I met a lot of amazing people there. A tip I would give to Navigators is: Open your mind, open your heart, and help others – that's the key!\" - Fernando Pimenta","spans":[{"start":0,"end":349,"type":"em"}]},{"type":"heading2","text":"Navigators welcome","spans":[]},{"type":"paragraph","text":"You are an excellent candidate for the Navigators Program if you are already immersed in the developer ecosystem and have found success in helping other people learn and build. Do you have a passion for inclusive teaching through writing, presenting, or community organization? Do you have hands-on expertise with DigitalOcean’s products and services? Are you excited by making consistent code, content, and/or community contributions throughout the year? ","spans":[]},{"type":"paragraph","text":"If you answered yes to these questions we’d love to hear from you and encourage you to apply here. While we can’t select everyone, we greatly appreciate everyone who takes the time to apply, each of you will receive a response from our team. When we all work together, we reach our goals sooner, and we’re committed to simplifying cloud computing so developers and businesses can spend more time creating software that changes the world. We can’t wait to hear from you and welcome you as an extension of the DigitalOcean team. ","spans":[{"start":87,"end":97,"type":"hyperlink","data":{"link_type":"Web","url":"https://do.co/navigators"}}]}],"blog_post_date":"2021-02-11","tags":[{"tag1":{"tag":"Community","_linkType":"Link.document","_meta":{"uid":"community"}}}],"_meta":{"uid":"welcome-to-navigators"}}},{"node":{"author":{"_linkType":"Link.document","author_name":"Chris Sevilleja","author_image":{"dimensions":{"width":452,"height":364},"alt":"Chris Sevilleja headshot","copyright":null,"url":"https://images.prismic.io/www-static/5c6683d5-5485-43e7-8a89-c1d0d050608c_Screen+Shot+2021-02-01+at+4.20.40+PM.png?auto=compress,format"},"_meta":{"uid":"chris-sevilleja"}},"blog_header_image":{"dimensions":{"width":1600,"height":672},"alt":null,"copyright":null,"url":"https://images.prismic.io/www-static/e22088c5-7de8-40cd-aa5d-02817986e05c_pasted+image+0.png?auto=compress,format"},"blog_headline":[{"type":"heading1","text":"Announcing the Winners of the App Platform Hackathon on DEV","spans":[]}],"blog_post_content":[{"type":"paragraph","text":"We recently launched DigitalOcean App Platform, a reimagined Platform as a Service (PaaS) that allows developers to deploy their full stack applications faster than ever. App Platform ties into our mission to enable developers to deploy and scale their sites, business, and apps quickly.","spans":[{"start":3,"end":20,"type":"hyperlink","data":{"link_type":"Web","url":"https://www.digitalocean.com/blog/introducing-digitalocean-app-platform-reimagining-paas-to-make-it-simpler-for-you-to-build-deploy-and-scale-apps/"}}]},{"type":"paragraph","text":"In December, we announced a new hackathon challenge in partnership with the DEV community. The DEV community is filled with amazing developers with a passion for building and creating that is in line with DigitalOcean’s own values. ","spans":[{"start":26,"end":51,"type":"hyperlink","data":{"link_type":"Web","url":"https://dev.to/devteam/digitalocean-app-platform-hackathon-winners-announced-ig0j"}}]},{"type":"paragraph","text":"The Hackathon ran from December 10, 2020 to January 10, 2021 and garnered 245 app submissions and 530 written posts about users building and deploying their apps. Participants were encouraged to submit apps that fit into one of four categories:","spans":[{"start":74,"end":93,"type":"strong"},{"start":98,"end":115,"type":"strong"},{"start":98,"end":115,"type":"hyperlink","data":{"link_type":"Web","url":"https://dev.to/t/dohackathon"}}]},{"type":"list-item","text":"Personal Site or Portfolio","spans":[]},{"type":"list-item","text":"Program for the People","spans":[]},{"type":"list-item","text":"Built for Business","spans":[]},{"type":"list-item","text":"Random Roulette","spans":[]},{"type":"paragraph","text":"One grand prize winner was chosen for each category along with ten runner up winners.","spans":[]},{"type":"paragraph","text":"","spans":[]},{"type":"heading2","text":"The Winners","spans":[]},{"type":"paragraph","text":"The goal of the hackathon was to work with users to show off the power of the new App Platform. Hackathon participants deployed many types of apps including APIs, Databases, and Static Sites.","spans":[{"start":82,"end":94,"type":"hyperlink","data":{"link_type":"Web","url":"https://www.digitalocean.com/products/app-platform/"}}]},{"type":"paragraph","text":"It was incredibly difficult to judge the submissions. Many were high-quality apps with well written DEV articles and tutorials. What surprised us during this whole process was the creativity of the submissions. Each category had genius solutions to common problems.","spans":[]},{"type":"paragraph","text":"Let’s highlight some of the winners: ","spans":[]},{"type":"paragraph","text":"Personal Site: Portfolio by Abhinav Chawla","spans":[{"start":0,"end":15,"type":"strong"},{"start":15,"end":24,"type":"hyperlink","data":{"link_type":"Web","url":"https://dev.to/abhinavchawla13/personal-portfolio-final-submission-bib"}},{"start":28,"end":42,"type":"hyperlink","data":{"link_type":"Web","url":"https://dev.to/abhinavchawla13"}}]},{"type":"paragraph","text":"View the live app: abhinavchawla-bz8lh.ondigitalocean.app","spans":[{"start":19,"end":57,"type":"hyperlink","data":{"link_type":"Web","url":"https://abhinavchawla-bz8lh.ondigitalocean.app/"}}]},{"type":"paragraph","text":"Abhinav did an amazing job with the animations and visuals for his floating city portfolio. Using Greensock for the animations, he was able to bring this city to life. Clicking on the buildings serves as the navigation. The car moves and follows the streets to open each page.","spans":[{"start":98,"end":107,"type":"hyperlink","data":{"link_type":"Web","url":"https://greensock.com/"}}]},{"type":"image","url":"https://images.prismic.io/www-static/b5bc200b-b95e-4d85-85b9-43eaf04e1cd9_portfolio.jpeg?auto=compress,format","alt":null,"copyright":null,"dimensions":{"width":880,"height":455}},{"type":"paragraph","text":"Built for Business: Guild.so by Tony Lea","spans":[{"start":0,"end":40,"type":"strong"},{"start":20,"end":28,"type":"hyperlink","data":{"link_type":"Web","url":"https://dev.to/guild/guild-so-do-hackathon-submission-2153"}},{"start":32,"end":40,"type":"hyperlink","data":{"link_type":"Web","url":"https://dev.to/guild"}}]},{"type":"paragraph","text":"The Guild app was chosen because of the robustness and feature completeness of the demo. Many things were created during the hackathon including a dashboard section, authentication, team accounts, and more.","spans":[]},{"type":"image","url":"https://images.prismic.io/www-static/76e69f12-f918-4332-a92a-79305285831e_guild.gif?auto=compress,format","alt":null,"copyright":null,"dimensions":{"width":880,"height":442}},{"type":"paragraph","text":"Random Roulette: Potatizer by Alba Silvente","spans":[{"start":0,"end":17,"type":"strong"},{"start":17,"end":26,"type":"hyperlink","data":{"link_type":"Web","url":"https://dev.to/dawntraoz/final-submission-for-digitalocean-app-platform-hackathon-4eh3"}},{"start":30,"end":43,"type":"hyperlink","data":{"link_type":"Web","url":"https://dev.to/dawntraoz"}}]},{"type":"paragraph","text":"View the live app: potatizer.dawntraoz.com","spans":[{"start":19,"end":42,"type":"hyperlink","data":{"link_type":"Web","url":"https://potatizer.dawntraoz.com/"}}]},{"type":"paragraph","text":"The potato generator embodied what the Random Roulette category was made for! Lots of fun in the illustrations, animations, and overall creativity. Alba also illustrated all of the potatoes herself.","spans":[]},{"type":"image","url":"https://images.prismic.io/www-static/06f89896-0405-4229-8e6d-dd256dca0281_potato.png?auto=compress,format","alt":null,"copyright":null,"dimensions":{"width":880,"height":429}},{"type":"paragraph","text":"Program for the People: Mental Health Crisis App by JC Smiley","spans":[{"start":0,"end":24,"type":"strong"},{"start":24,"end":48,"type":"hyperlink","data":{"link_type":"Web","url":"https://dev.to/jcsmileyjr/building-a-mental-health-crisis-app-final-day-2bp1"}},{"start":52,"end":61,"type":"hyperlink","data":{"link_type":"Web","url":"https://dev.to/jcsmileyjr"}}]},{"type":"paragraph","text":"View the live app: help-client-gc9ge.ondigitalocean.app/home","spans":[{"start":19,"end":60,"type":"hyperlink","data":{"link_type":"Web","url":"https://help-client-gc9ge.ondigitalocean.app/home"}}]},{"type":"paragraph","text":"","spans":[]},{"type":"paragraph","text":"The Mental Health Crisis App is a great example of how technology can help us on a mental health and emotional level. The app will let users create a set of close family and friends that will be alerted if a user is having a mental health crisis. A person's close knit group is who can help them the most and this app brings that idea to reality.","spans":[]},{"type":"image","url":"https://images.prismic.io/www-static/78741613-64f1-4666-9ce0-8efb29799200_mental-health.png?auto=compress,format","alt":null,"copyright":null,"dimensions":{"width":452,"height":630}},{"type":"paragraph","text":"Runner Up: Space Themed Site by Ryan Lynch","spans":[{"start":0,"end":9,"type":"strong"},{"start":11,"end":28,"type":"hyperlink","data":{"link_type":"Web","url":"https://dev.to/shiftyp/space-themed-site-with-mini-game-1bc4"}},{"start":32,"end":42,"type":"hyperlink","data":{"link_type":"Web","url":"https://dev.to/shiftyp"}}]},{"type":"paragraph","text":"View the live app: rkahn.dev","spans":[{"start":19,"end":28,"type":"hyperlink","data":{"link_type":"Web","url":"https://rkahn.dev/"}}]},{"type":"paragraph","text":"This fun portfolio has many interactive features. It makes the site fun to click around and explore.","spans":[]},{"type":"image","url":"https://images.prismic.io/www-static/461f4b49-46c3-4c5f-a778-1402c0502992_CleanShot+2021-02-01+at+12.23.16%402x.png?auto=compress,format","alt":null,"copyright":null,"dimensions":{"width":2668,"height":1880}},{"type":"paragraph","text":"Runner Up: Emoji Traffic Jam Generator by anabella","spans":[{"start":0,"end":11,"type":"strong"},{"start":11,"end":38,"type":"hyperlink","data":{"link_type":"Web","url":"https://dev.to/anabella/emoji-traffic-jam-generator-b84"}},{"start":42,"end":50,"type":"hyperlink","data":{"link_type":"Web","url":"https://dev.to/anabella"}}]},{"type":"paragraph","text":"","spans":[]},{"type":"paragraph","text":"View the live app: emoji-jam-rjlxe.ondigitalocean.app","spans":[{"start":19,"end":53,"type":"hyperlink","data":{"link_type":"Web","url":"https://emoji-jam-rjlxe.ondigitalocean.app/"}}]},{"type":"paragraph","text":"","spans":[]},{"type":"paragraph","text":"The Emoji Traffic Jam Generator generates a grid of emojis. There is more involved with generating this grid than it looks. Kudos to making a complex coding problem into a clean and fun app.","spans":[]},{"type":"image","url":"https://images.prismic.io/www-static/dd544ea9-36ba-493d-8458-1b39f1198cc9_traffic.png?auto=compress,format","alt":null,"copyright":null,"dimensions":{"width":880,"height":1145}},{"type":"heading2","text":"Chatting with the Winners","spans":[]},{"type":"paragraph","text":"The winners got to chat with our CEO, Yancey Spruill, on a Zoom call. Each winner was able to talk about their motivations behind their app and what they aspire to achieve moving forward. ","spans":[]},{"type":"paragraph","text":"","spans":[]},{"type":"paragraph","text":"It was a fun time and amazing to see the interaction between the winners. Brainstorming on how they could grow and scale their hackathon winning apps led to aspirations of growing businesses. What was supposed to be a 45 minute meeting went long to one hour!","spans":[]},{"type":"image","url":"https://images.prismic.io/www-static/626edd74-38fd-483a-b6f3-0fe384eafb61_zoom.jpeg?auto=compress,format","alt":null,"copyright":null,"dimensions":{"width":1600,"height":796}},{"type":"paragraph","text":"","spans":[]},{"type":"heading2","text":"Conclusion","spans":[]},{"type":"paragraph","text":"The overall engagement was encouraging to see. It is impressive that many developers used their holiday breaks to build the apps they’ve wanted to build when normally, the end of the year is a time of slowing down and reflecting. Everyone that joined the hackathon went full steam ahead to finish the year!","spans":[]},{"type":"paragraph","text":"","spans":[]},{"type":"paragraph","text":"Congratulations to everyone that joined the hackathon, winners and all. Even though the hackathon is over, the building never ends. Build the apps that you’ve always wanted to build and rest assured knowing that you can deploy your fullstack, dynamic, static, and any types of apps to DigitalOcean App Platform. Check out some demo apps you can make with App Platform.","spans":[{"start":285,"end":310,"type":"hyperlink","data":{"link_type":"Web","url":"https://www.digitalocean.com/products/app-platform/"}},{"start":327,"end":336,"type":"hyperlink","data":{"link_type":"Web","url":"https://www.digitalocean.com/use-cases/"}}]},{"type":"paragraph","text":"","spans":[]}],"blog_post_date":"2021-02-02","tags":[{"tag1":{"tag":"Community","_linkType":"Link.document","_meta":{"uid":"community"}}}],"_meta":{"uid":"announcing-the-winners-of-the-app-platform-hackathon"}}},{"node":{"author":{"_linkType":"Link.document","author_name":"Jake Levirne","author_image":{"dimensions":{"width":200,"height":200},"alt":null,"copyright":null,"url":"https://images.prismic.io/www-static/cc61a64b-427d-420e-9ebd-b8cc956dc342_Jake.jpeg?auto=compress,format"},"_meta":{"uid":"jake-levirne"}},"blog_header_image":{"dimensions":{"width":2964,"height":815},"alt":null,"copyright":null,"url":"https://images.prismic.io/www-static/c86d6456-1c40-4382-b6cb-5f99f289d10a_nanobox-bg-img.gif?auto=compress,format"},"blog_headline":[{"type":"heading1","text":"Nanobox - End of life","spans":[]}],"blog_post_content":[{"type":"paragraph","text":"As you may know, we released DigitalOcean App Platform a few months ago. App Platform makes it much simpler and faster to build, deploy, and scale apps. You can deploy code simply by pointing to a GitHub or GitLab repo and App Platform will do all the heavy lifting of managing the infrastructure, app runtimes, and dependencies.","spans":[{"start":29,"end":54,"type":"hyperlink","data":{"link_type":"Web","url":"https://www.digitalocean.com/blog/introducing-digitalocean-app-platform-reimagining-paas-to-make-it-simpler-for-you-to-build-deploy-and-scale-apps"}}]},{"type":"paragraph","text":"Even though App Platform offers a similar set of capabilities to Nanobox, it is a distinct product. This means you’ll need to migrate your Nanobox apps over to App Platform in order for them to continue running.","spans":[{"start":126,"end":151,"type":"hyperlink","data":{"link_type":"Web","url":"https://www.digitalocean.com/docs/app-platform/how-to/migrate-nanobox/"}}]},{"type":"paragraph","text":"Please note, Nanobox will reach its end of life on March 31, 2021. You will no longer be able to use the product after that. Please be sure to migrate your apps off of Nanobox. If you choose to use App Platform as a replacement, the pricing starts at $5/month, and you can build and deploy three static sites for free. ","spans":[{"start":13,"end":66,"type":"strong"},{"start":233,"end":240,"type":"hyperlink","data":{"link_type":"Web","url":"https://www.digitalocean.com/pricing/#app-platform"}}]},{"type":"paragraph","text":"I, along with the entire DigitalOcean team, want to thank you for being a valuable Nanobox customer. Your feedback was instrumental in creating App Platform. ","spans":[]},{"type":"paragraph","text":"If you have any questions, please don’t hesitate to reach out. If you’d like to have a conversation about using DigitalOcean and App Platform in your business, please feel free to contact our sales team.","spans":[{"start":180,"end":202,"type":"hyperlink","data":{"link_type":"Web","url":"https://www.digitalocean.com/company/contact/sales/"}}]},{"type":"paragraph","text":"","spans":[]},{"type":"paragraph","text":"Happy coding, ","spans":[]},{"type":"paragraph","text":"","spans":[]},{"type":"paragraph","text":"Jake Levirne,","spans":[]},{"type":"paragraph","text":"Director of Product Management","spans":[]}],"blog_post_date":"2021-01-29","tags":[{"tag1":{"tag":"Product Updates","_linkType":"Link.document","_meta":{"uid":"product-updates"}}}],"_meta":{"uid":"nanobox---end-of-life"}}},{"node":{"author":{"_linkType":"Link.document","author_name":"Phil Dougherty","author_image":{"dimensions":{"width":573,"height":557},"alt":"Phil Dougherty","copyright":null,"url":"https://images.prismic.io/www-static/ef89c36114b5e1872e8de0b79eb679b9be5b3765_phil.png?auto=compress,format"},"_meta":{"uid":"phil_dougherty"}},"blog_header_image":{"dimensions":{"width":1200,"height":600},"alt":null,"copyright":null,"url":"https://images.prismic.io/www-static/72bd2f14-1db1-4e37-a5a1-8f71e4e1994b_latest-at-do-blog-img.png?auto=compress,format"},"blog_headline":[{"type":"heading1","text":"Latest products and features at DigitalOcean: January 2021","spans":[]}],"blog_post_content":[{"type":"paragraph","text":"We started the new year with a bang and introduced many new features for our Platform as a Service products. Here are the highlights for this month:","spans":[]},{"type":"heading2","text":"Platform as a Service (PaaS)","spans":[]},{"type":"paragraph","text":"","spans":[]},{"type":"heading4","text":"Deploy code from GitLab repositories","spans":[]},{"type":"paragraph","text":"You can now deploy code from your GitLab.com repositories. Just point DigitalOcean App Platform to your repo and follow a few simple steps to launch your app. Within a few minutes your app will be up and running on App Platform! Check out the docs and deploy this sample app to see the GitLab support in action. ","spans":[{"start":12,"end":57,"type":"hyperlink","data":{"link_type":"Web","url":"https://www.digitalocean.com/blog/introducing-gitlab-integration-for-digitalocean-app-platform"}},{"start":243,"end":247,"type":"hyperlink","data":{"link_type":"Web","url":"https://www.digitalocean.com/docs/app-platform/how-to/create-apps/"}},{"start":264,"end":274,"type":"hyperlink","data":{"link_type":"Web","url":"https://gitlab.com/chris-on-code/sample-react"}}]},{"type":"paragraph","text":"With integration for GitHub already available (and similar integration for BitBucket around the corner), App Platform provides support for most of the popular version control systems.","spans":[{"start":5,"end":27,"type":"hyperlink","data":{"link_type":"Web","url":"https://www.youtube.com/watch?v=fE0ybwkW9Pw"}}]},{"type":"embed","oembed":{"type":"video","embed_url":"https://www.youtube.com/watch?v=6pHtWwn_Zwc&t=8s","title":"Deploy an App from GitLab","provider_name":"YouTube","thumbnail_url":"https://i.ytimg.com/vi/6pHtWwn_Zwc/hqdefault.jpg","provider_url":"https://www.youtube.com/","author_name":"DigitalOcean","author_url":"https://www.youtube.com/c/Digitalocean","height":113,"width":200,"version":"1.0","thumbnail_height":360,"thumbnail_width":480,"html":"<iframe width=\"200\" height=\"113\" src=\"https://www.youtube.com/embed/6pHtWwn_Zwc?start=8&feature=oembed\" frameborder=\"0\" allow=\"accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture\" allowfullscreen></iframe>"}},{"type":"paragraph","text":"","spans":[]},{"type":"heading4","text":"Bring your own container image (BYOCI)","spans":[]},{"type":"paragraph","text":"One of the biggest benefits of App Platform is that it runs on DigitalOcean Kubernetes. When you run an app, we build and deploy containers for each of your app’s components like web service, database, or workers on Kubernetes clusters. ","spans":[{"start":63,"end":86,"type":"hyperlink","data":{"link_type":"Web","url":"https://www.digitalocean.com/products/kubernetes/"}}]},{"type":"paragraph","text":"We are excited to introduce the ‘Bring Your Own Container Image’ (BYOCI) feature that enables you to deploy pre-built container images. This means that if your app is already containerized, you can deploy it using App Platform, irrespective of how it’s built. ","spans":[{"start":101,"end":134,"type":"hyperlink","data":{"link_type":"Web","url":"https://www.digitalocean.com/docs/app-platform/how-to/deploy-from-registry/"}}]},{"type":"paragraph","text":"App Platform integrates with DigitalOcean Container Registry (DOCR), so to deploy your container images with App Platform, you first need to push them to the DOCR. DOCR provides a Starter plan that’s freeand is ideal for trying DOCR and testing out the BYOCI workflow for App Platform. ","spans":[{"start":29,"end":67,"type":"hyperlink","data":{"link_type":"Web","url":"https://www.digitalocean.com/products/container-registry/"}},{"start":180,"end":204,"type":"hyperlink","data":{"link_type":"Web","url":"https://www.digitalocean.com/docs/container-registry/#plans-and-pricing"}}]},{"type":"embed","oembed":{"type":"video","embed_url":"https://www.youtube.com/watch?v=YAeOzVTN4EQ","title":"Deploy Your Own Container Image to App Platform","provider_name":"YouTube","thumbnail_url":"https://i.ytimg.com/vi/YAeOzVTN4EQ/hqdefault.jpg","provider_url":"https://www.youtube.com/","author_name":"DigitalOcean","author_url":"https://www.youtube.com/c/Digitalocean","height":113,"width":200,"version":"1.0","thumbnail_height":360,"thumbnail_width":480,"html":"<iframe width=\"200\" height=\"113\" src=\"https://www.youtube.com/embed/YAeOzVTN4EQ?feature=oembed\" frameborder=\"0\" allow=\"accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture\" allowfullscreen></iframe>"}},{"type":"heading4","text":"Editing of CORS policies for your app","spans":[]},{"type":"paragraph","text":"Cross-Origin Resource Sharing (CORS) is used to permit loading of resources on other origins, such as a domain, protocol, or port, via HTTP headers. App Platform now allows the editing of CORS policies for your app. You will be able to add an origin and specify which match type (i.e., exact, prefix, regex) to use.","spans":[{"start":177,"end":201,"type":"hyperlink","data":{"link_type":"Web","url":"https://www.digitalocean.com/docs/app-platform/how-to/update-cors-policies/"}}]},{"type":"paragraph","text":"","spans":[]},{"type":"heading4","text":"Marketplace updates","spans":[]},{"type":"paragraph","text":"We launched many preconfigured 1-Click Apps in the DigitalOcean Marketplace to help you save time and remove the hassle of provisioning servers.","spans":[]},{"type":"list-item","text":"moodle: The world's most popular learning management system. As the leading open source learning platform, it is designed to provide learners, educators, and administrators with a single robust, secure, and integrated solution to create personalized learning environments.","spans":[{"start":0,"end":6,"type":"hyperlink","data":{"link_type":"Web","url":"https://marketplace.digitalocean.com/apps/moodle"}}]},{"type":"list-item","text":"CAST AI Kubernetes 1.18: Provides the necessary tools to initialize or join CAST AI managed multi-cloud Kubernetes cluster.","spans":[{"start":0,"end":23,"type":"hyperlink","data":{"link_type":"Web","url":"https://marketplace.digitalocean.com/apps/cast-ai-kubernetes-1-18"}}]},{"type":"list-item","text":"HAProxy-WI: HAProxy-WI is a user-friendly web interface for managing HAproxy, Nginx, and Keepalived servers.","spans":[{"start":0,"end":10,"type":"hyperlink","data":{"link_type":"Web","url":"https://marketplace.digitalocean.com/apps/haproxy-wi"}}]},{"type":"list-item","text":"Zabbix proxy: Zabbix is an enterprise-class open source distributed monitoring solution designed to monitor and track performance and availability of network servers, devices, services, and other IT resources.","spans":[{"start":0,"end":12,"type":"hyperlink","data":{"link_type":"Web","url":"https://marketplace.digitalocean.com/apps/zabbix-proxy"}}]},{"type":"list-item","text":"ZesleCP: provides a One-Click installer to automatically install Apache/Nginx, PHP, MySQL database server, email servers with auto-configured SPF/MX/DKIM records, FTP server, One-click WordPress App, and many more useful packages. ","spans":[{"start":0,"end":7,"type":"hyperlink","data":{"link_type":"Web","url":"https://marketplace.digitalocean.com/apps/zeslecp"}}]},{"type":"heading2","text":"Developer experience","spans":[]},{"type":"paragraph","text":"","spans":[]},{"type":"heading4","text":"Updates to DigitalOcean Terraform Provider ","spans":[]},{"type":"paragraph","text":"v2.4.0 of the DigitalOcean Terraform Provider is now available. This release includes support for deployments from GitLab and app-wide environment variables for the digitalocean_app resource, bug fixes, and other improvements.","spans":[{"start":0,"end":6,"type":"hyperlink","data":{"link_type":"Web","url":"https://github.com/digitalocean/terraform-provider-digitalocean/releases/tag/v2.4.0"}}]},{"type":"paragraph","text":"","spans":[]},{"type":"paragraph","text":"You can check out the release notes to get up to date information about product updates, and read about updates from the previous month here. ","spans":[{"start":22,"end":35,"type":"hyperlink","data":{"link_type":"Web","url":"https://www.digitalocean.com/docs/release-notes/"}},{"start":104,"end":140,"type":"hyperlink","data":{"link_type":"Web","url":"https://www.digitalocean.com/blog/latest-products-and-features-at-digitalocean-december-2020"}}]},{"type":"paragraph","text":"We hope you’ll give the new products and updates a try. If you have an idea for improving our products or want to vote on other user ideas so they get prioritized, please submit your feedback. And if you have any questions, please feel free to ask them here. ","spans":[{"start":171,"end":191,"type":"hyperlink","data":{"link_type":"Web","url":"https://ideas.digitalocean.com/"}},{"start":244,"end":257,"type":"hyperlink","data":{"link_type":"Web","url":"https://www.digitalocean.com/community/questions"}}]},{"type":"paragraph","text":"Until next month, ","spans":[]},{"type":"paragraph","text":"Happy coding!","spans":[]},{"type":"paragraph","text":"","spans":[]},{"type":"paragraph","text":"Phil Dougherty ","spans":[]},{"type":"paragraph","text":"Senior Product Manager","spans":[]}],"blog_post_date":"2021-01-26","tags":[{"tag1":{"tag":"Product Updates","_linkType":"Link.document","_meta":{"uid":"product-updates"}}}],"_meta":{"uid":"latest-products-and-features-at-digitalocean-january-2021"}}},{"node":{"author":{"_linkType":"Link.document","author_name":"Jake Levirne","author_image":{"dimensions":{"width":200,"height":200},"alt":null,"copyright":null,"url":"https://images.prismic.io/www-static/cc61a64b-427d-420e-9ebd-b8cc956dc342_Jake.jpeg?auto=compress,format"},"_meta":{"uid":"jake-levirne"}},"blog_header_image":{"dimensions":{"width":1000,"height":500},"alt":null,"copyright":null,"url":"https://images.prismic.io/www-static/4a9e0312-dcb1-4229-bc18-d3e075eda787_Blog+Header.png?auto=compress,format"},"blog_headline":[{"type":"heading1","text":"Introducing GitLab integration for DigitalOcean App Platform","spans":[]}],"blog_post_content":[{"type":"paragraph","text":"DigitalOcean App Platform is a modern PaaS (Platform as a Service) solution that makes it super simple to build, deploy, manage, and scale apps. It’s fully managed, meaning App Platform does all the heavy lifting of provisioning and managing infrastructure, operating systems, databases, application runtimes, and other dependencies so you can focus on what truly matters:  building awesome apps.","spans":[{"start":0,"end":25,"type":"hyperlink","data":{"link_type":"Web","url":"https://www.digitalocean.com/blog/introducing-digitalocean-app-platform-reimagining-paas-to-make-it-simpler-for-you-to-build-deploy-and-scale-apps/"}}]},{"type":"paragraph","text":"We are excited to introduce the GitLab integration for App Platform, which allows you to deploy code directly from your GitLab.com repositories. Just point App Platform to your repo, pick a region and a branch to deploy from, configure your app (add environment variables, database, etc.), select a pricing plan, and then launch the app. Within a few minutes your app will be up and running on App Platform! ","spans":[{"start":299,"end":311,"type":"hyperlink","data":{"link_type":"Web","url":"https://www.digitalocean.com/pricing/#app-platform"}}]},{"type":"paragraph","text":"You can also enable ‘Autodeploy on Push’ to automatically re-deploy the app each time you push to the branch containing the source code. Check out the docs and deploy this sample app to see the GitLab support in action. ","spans":[{"start":151,"end":155,"type":"hyperlink","data":{"link_type":"Web","url":"https://www.digitalocean.com/docs/app-platform/how-to/create-apps/"}},{"start":172,"end":182,"type":"hyperlink","data":{"link_type":"Web","url":"https://gitlab.com/chris-on-code/sample-react"}}]},{"type":"paragraph","text":"With integration for GitHub already available (and similar integration for BitBucket around the corner), App Platform provides support for most of the popular version control systems.","spans":[{"start":5,"end":27,"type":"hyperlink","data":{"link_type":"Web","url":"https://www.youtube.com/watch?v=fE0ybwkW9Pw"}}]},{"type":"embed","oembed":{"type":"video","embed_url":"https://www.youtube.com/watch?v=6pHtWwn_Zwc&t=7s","title":"Deploy an App from GitLab","provider_name":"YouTube","thumbnail_url":"https://i.ytimg.com/vi/6pHtWwn_Zwc/hqdefault.jpg","provider_url":"https://www.youtube.com/","author_name":"DigitalOcean","author_url":"https://www.youtube.com/c/Digitalocean","height":113,"width":200,"version":"1.0","thumbnail_height":360,"thumbnail_width":480,"html":"<iframe width=\"200\" height=\"113\" src=\"https://www.youtube.com/embed/6pHtWwn_Zwc?start=7&feature=oembed\" frameborder=\"0\" allow=\"accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture\" allowfullscreen></iframe>"}},{"type":"paragraph","text":"We have made numerous enhancements to App Platform since we first launched the product late last year. Just last week we introduced the ‘Bring Your Own Container Image’ (BYOCI) feature that allows you to deploy pre-built container images with App Platform. This means that if your app is already containerized, you can deploy it using App Platform, irrespective of how it’s built. This further reduces the barrier of entry and opens up App Platform for a vast number of use cases, including tighter integration with CI/CD systems. ","spans":[{"start":13,"end":34,"type":"hyperlink","data":{"link_type":"Web","url":"https://www.digitalocean.com/blog/easily-deploy-open-source-apps-with-the-new-deploy-to-digitalocean-button-and-other-app-platform-enhancements"}},{"start":136,"end":184,"type":"hyperlink","data":{"link_type":"Web","url":"https://www.digitalocean.com/blog/introducing-bring-your-own-container-image-workflow-for-digitalocean-app-platform"}}]},{"type":"paragraph","text":"We hope you’ll check out App Platform. To learn more, read the docs, try out some sample apps and let us know what you think!","spans":[{"start":15,"end":37,"type":"hyperlink","data":{"link_type":"Web","url":"https://cloud.digitalocean.com/apps"}},{"start":63,"end":67,"type":"hyperlink","data":{"link_type":"Web","url":"https://www.digitalocean.com/docs/app-platform/"}},{"start":82,"end":93,"type":"hyperlink","data":{"link_type":"Web","url":"https://www.digitalocean.com/use-cases/"}},{"start":98,"end":125,"type":"hyperlink","data":{"link_type":"Web","url":"https://www.digitalocean.com/community/questions/new?tags=Digitalocean%20App%20Platform"}}]},{"type":"paragraph","text":"If you’d like to have a conversation about using DigitalOcean and App Platform in your business, please feel free to contact our sales team.","spans":[{"start":117,"end":139,"type":"hyperlink","data":{"link_type":"Web","url":"https://www.digitalocean.com/company/contact/sales/"}}]},{"type":"paragraph","text":"Happy coding!","spans":[]},{"type":"paragraph","text":" ","spans":[]},{"type":"paragraph","text":"Jake Levirne,","spans":[]},{"type":"paragraph","text":"Senior Director of Product Management","spans":[]},{"type":"paragraph","text":"","spans":[]}],"blog_post_date":"2021-01-19","tags":[{"tag1":{"tag":"Product Updates","_linkType":"Link.document","_meta":{"uid":"product-updates"}}}],"_meta":{"uid":"introducing-gitlab-integration-for-digitalocean-app-platform"}}},{"node":{"author":{"_linkType":"Link.document","author_name":"Ryan Pollock","author_image":{"dimensions":{"width":3000,"height":1996},"alt":null,"copyright":null,"url":"https://images.prismic.io/www-static/704b7a40-827e-4dc0-8b8b-5f30e43d6625_ryan-pollock.jpg?auto=compress,format"},"_meta":{"uid":"ryan_pollock"}},"blog_header_image":{"dimensions":{"width":790,"height":444},"alt":null,"copyright":null,"url":"https://images.prismic.io/www-static/e69ac39a-dd45-4fef-85a4-6b93e5860cfc_modern-droplets-small.jpg?auto=compress,format"},"blog_headline":[{"type":"heading1","text":"The modern Droplet: How to choose the “right” VM for business and personal use","spans":[]}],"blog_post_content":[{"type":"paragraph","text":"DigitalOcean Droplets are on-demand, Linux virtual machines suitable for production business applications and personal passion projects. We’ve recently introduced Storage-Optimized Droplets with NVMe SSD, and have also made other adjustments to our Droplet portfolio.\n\nWith these developments in mind, and with 2021 having arrived at last, we thought it would be a good time to provide up-to-date guidance regarding how to match your Droplet plan to your use case. You might also watch my talk from deploy, in which I speak to this and related topics:","spans":[{"start":26,"end":59,"type":"hyperlink","data":{"link_type":"Web","url":"https://www.digitalocean.com/products/droplets/"}},{"start":163,"end":203,"type":"hyperlink","data":{"link_type":"Web","url":"https://www.digitalocean.com/blog/introducing-storage-optimized-droplets-with-nvme-ssds"}},{"start":331,"end":338,"type":"em"},{"start":499,"end":505,"type":"hyperlink","data":{"link_type":"Web","url":"http://digitalocean.com/deploy"}},{"start":499,"end":507,"type":"em"}]},{"type":"embed","oembed":{"type":"video","embed_url":"https://www.youtube.com/watch?v=7Q3H-kMgqyY","title":"DigitalOcean Droplets: A Modern-Day Overview","provider_name":"YouTube","thumbnail_url":"https://i.ytimg.com/vi/7Q3H-kMgqyY/hqdefault.jpg","height":113,"width":200,"version":"1.0","author_name":"DigitalOcean","author_url":"https://www.youtube.com/c/Digitalocean","provider_url":"https://www.youtube.com/","cache_age":null,"thumbnail_width":480,"thumbnail_height":360,"html":"<iframe width=\"200\" height=\"113\" src=\"https://www.youtube.com/embed/7Q3H-kMgqyY?feature=oembed\" frameborder=\"0\" allow=\"accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture\" allowfullscreen></iframe>"}},{"type":"paragraph","text":"","spans":[]},{"type":"heading2","text":"How hypervisors allocate resources to Droplet VMs","spans":[]},{"type":"paragraph","text":"Let's begin with some background: Droplets run on a software system called a hypervisor ‒ in our case the Linux Kernel Virtual Machine, aka KVM. The hypervisor figuratively carves up the resources of the underlying bare metal server, so that your VM receives a portion of the physical machine’s capabilities. While the servers in our data centers feature Intel processors with 20 or more physical cores, hundreds of GB of RAM, and multiple terabytes of disk, your virtual machines can utilize only a fraction of that total capacity.","spans":[{"start":77,"end":87,"type":"hyperlink","data":{"link_type":"Web","url":"https://en.wikipedia.org/wiki/Hypervisor"}},{"start":106,"end":143,"type":"hyperlink","data":{"link_type":"Web","url":"https://en.wikipedia.org/wiki/Kernel-based_Virtual_Machine"}}]},{"type":"paragraph","text":"It’s this virtualized architecture that allows DigitalOcean to efficiently load our servers with multiple customers’ workloads – and ultimately offer our Droplet servers for as little as $5 per month.\n","spans":[]},{"type":"heading2","text":"Droplet plans: Understanding what you’re getting","spans":[]},{"type":"paragraph","text":"As you browse Droplet pricing, you’ll see that you select your Droplets first based on the virtual machine plan, followed by its sizing. For the most part, it’s obvious how to interpret these specifications:","spans":[{"start":7,"end":29,"type":"hyperlink","data":{"link_type":"Web","url":"https://www.digitalocean.com/pricing/"}}]},{"type":"list-item","text":"Your Droplet maxes out at a certain amount of RAM.","spans":[]},{"type":"list-item","text":"Your Droplet runs a certain number of shared or dedicated vCPUs.","spans":[{"start":58,"end":63,"type":"hyperlink","data":{"link_type":"Web","url":"https://www.techopedia.com/definition/30859/vcpu"}}]},{"type":"list-item","text":"Your Droplet includes a fixed amount of SSD disk (after which you can add more via Volumes Block Storage).","spans":[{"start":83,"end":104,"type":"hyperlink","data":{"link_type":"Web","url":"https://www.digitalocean.com/products/block-storage/"}}]},{"type":"list-item","text":"Your Droplet includes a generous quota of outbound transfer, with overage charged at an industry low of $.01 / GB.","spans":[{"start":66,"end":113,"type":"hyperlink","data":{"link_type":"Web","url":"https://blog.digitalocean.com/its-all-about-the-bandwidth-why-many-network-intensive-services-select-digitalocean-as-their-cloud/"}}]},{"type":"paragraph","text":"What sometimes confuses people as they evaluate plans is why some Droplets with seemingly similar specs have different prices. For example, a Basic Droplet with 4GB RAM and 2 vCPUs costs $20/month, whereas a CPU-Optimized Droplet with seemingly equivalent RAM and vCPU costs $40/month.\n\nThere's a good reason for this: Basic Droplets share vCPUs with other Basic Droplets, whereas all other Droplet types feature dedicated vCPUs. The upshot of this is that the performance of your Basic Droplets might vary, whereas you’ll receive consistent, fast performance from other kinds of Droplets.\n","spans":[]},{"type":"heading2","text":"Basic Droplets: Shared CPU VMs suitable for bursty applications","spans":[]},{"type":"paragraph","text":"Basic Droplets (formerly known as ‘Standard’) come with anywhere from 1 to 8 shared vCPUs, with 1GB to 16 GB RAM, respectively.","spans":[{"start":77,"end":83,"type":"em"}]},{"type":"paragraph","text":"When you’re running a Basic Droplet, our hypervisor ensures that its vCPUs can always utilize a substantial slice (and at times nearly all) of its underlying hyperthreads. This means that, even with shared vCPUs, you’ll get pretty fast performance at a relatively low price. In fact, when Cloud Spectator benchmarked our Basic Droplets versus shared instances from other clouds, their independent testing found that DigitalOcean’s Basic Droplets substantially outperformed shared CPU VMs from other cloud providers.","spans":[{"start":416,"end":515,"type":"hyperlink","data":{"link_type":"Web","url":"https://www.digitalocean.com/resources/cloud-performance-report/"}}]},{"type":"paragraph","text":"That being said, if your Basic Droplet happens to be running on a hypervisor with other particularly CPU-hungry VMs, your own Droplet’s performance might be affected (a common cloud computing issue called the noisy neighbor problem).","spans":[]},{"type":"paragraph","text":"These performance factors make our Basic Droplet ideal for personal projects, as well as business use cases that can tolerate variable performance: e.g. web servers, blogs, discussion forums, CMS, small databases, dev/test servers, microservices, and repository hosting. Here’s the story of how Ghost uses Basic Droplets to run a managed version of its popular open source blogging platform.\n","spans":[{"start":291,"end":320,"type":"hyperlink","data":{"link_type":"Web","url":"https://www.digitalocean.com/customers/ghost/"}},{"start":361,"end":390,"type":"hyperlink","data":{"link_type":"Web","url":"https://github.com/TryGhost/Ghost"}}]},{"type":"heading2","text":"General Purpose Droplets: Dedicated CPUs and balanced RAM for broad business applications","spans":[]},{"type":"paragraph","text":"Unlike Basic Droplets, General Purpose Droplets provide dedicated vCPUs, with 4GB of RAM for each vCPU. You can spin them up with anywhere from 2 to 40 vCPUs, with 8GB to 160GB RAM, respectively.","spans":[{"start":56,"end":65,"type":"em"}]},{"type":"paragraph","text":"In our own testing, we found that General Purpose Droplets resulted in much faster, more consistent performance than our Basic Droplets. Below is one example benchmark – Linpack matrix multiplication – that we ran comparing performance for equally sized General Purpose Droplets and Basic Droplets. In case it’s not obvious, the lower, more consistent time to completion for General Purpose Droplets is preferable.","spans":[{"start":170,"end":199,"type":"hyperlink","data":{"link_type":"Web","url":"https://www.top500.org/project/linpack/"}}]},{"type":"image","url":"https://images.prismic.io/www-static/1df3305a-eb0e-47cb-b022-186432b59a2f_Droplets+Basic+vs+General+Purpose.png?auto=compress,format","alt":null,"copyright":null,"dimensions":{"width":1600,"height":1340}},{"type":"paragraph","text":"These performance characteristics make General Purpose Droplets the recommended choice for many production business applications: e.g. high-traffic web servers, e-commerce sites, medium-sized databases, and enterprise Software as a Service (SaaS) applications. Let’s Get Digital is a platform for running online events as though they were physical, and it uses General Purpose Droplets to power its application servers.\n","spans":[{"start":261,"end":278,"type":"hyperlink","data":{"link_type":"Web","url":"https://letsgetdigital.com/en/","target":"_blank"}}]},{"type":"heading2","text":"CPU-Optimized Droplets: Dedicated CPUs for computationally intensive applications","spans":[]},{"type":"paragraph","text":"CPU-Optimized Droplets provide the same dedicated vCPUs as General Purpose Droplets, but they feature less RAM (and are therefore less expensive). Unlike General Purpose Droplets that provide 4GB RAM for each vCPU, CPU-Optimized Droplets provide just 2GB RAM per vCPU. You can spin them up with anywhere from 2 to 32 vCPUs, with 4GB to 64GB RAM, respectively.\n\nFor a practical assessment of the performance of CPU-Optimized Droplets vs Basic Droplets, see this blog regarding experiments with the React Boilerplate app. In the example described therein, the CPU-Optimized Droplet completed test scripts 37% faster than Basic Droplets.\n\nWe recommend CPU-Optimized Droplets for many computationally intensive business applications, e.g. CI/CD, video encoding, ad serving, batch processing, machine learning, and active front-end web servers. Here’s how Red5 Pro uses DigitalOcean, and specifically our CPU-Optimized Droplets, to run its live video streaming platform.\n","spans":[{"start":40,"end":49,"type":"em"},{"start":461,"end":518,"type":"hyperlink","data":{"link_type":"Web","url":"https://www.digitalocean.com/blog/a-practical-droplet-performance-comparison/","target":"_blank"}},{"start":847,"end":877,"type":"hyperlink","data":{"link_type":"Web","url":"https://www.youtube.com/watch?v=Kk2L-N8KCOg","target":"_blank"}}]},{"type":"heading2","text":"Memory-Optimized Droplets: Dedicated CPUs and ample RAM for memory-intensive applications","spans":[]},{"type":"paragraph","text":"Memory-Optimized Droplets provide dedicated vCPUs like General Purpose Droplets, but with twice the RAM, they can accommodate more memory-intensive business applications. Unlike General Purpose Droplets that provide 4GB RAM for each dedicated vCPU, Memory-Optimized Droplets provide a more generous 8GB RAM per vCPU. Memory-Optimized Droplets come with anywhere from 2 to 32 dedicated vCPUs, with 16GB to 256GB RAM, respectively.\n\nWe recommend Memory-Optimized Droplets for running high-performance databases, in-memory caches, real-time big data processing, and other memory-intensive use cases. One of our DigitalOcean Kubernetes customers is a podcast hosting service called Podiant, and their audio transcoding service runs on Memory-Optimized Droplets.\n","spans":[{"start":34,"end":43,"type":"em"},{"start":647,"end":685,"type":"hyperlink","data":{"link_type":"Web","url":"https://www.digitalocean.com/customers/podiant/"}}]},{"type":"heading2","text":"Storage-Optimized Droplets: Large amounts of NVMe SSD for data-intensive applications","spans":[]},{"type":"paragraph","text":"If you’re looking to run a large, high-performance NoSQL database, data warehouse, or analytics system, then you might want to use our Storage-Optimized Droplets. These virtual machines feature substantial amounts of NVMe SSD storage, along with 8GB per dedicated vCPU. Unlike regular SSDs, NVMe SSDs take advantage of parallelism to deliver optimal disk performance.","spans":[{"start":135,"end":161,"type":"hyperlink","data":{"link_type":"Web","url":"https://www.digitalocean.com/blog/introducing-storage-optimized-droplets-with-nvme-ssds/"}}]},{"type":"paragraph","text":"Storage-Optimized Droplets are the newest kind of Droplet provided by DigitalOcean. Squeezely is a DigitalOcean customer that has just begun to use this new class of Droplets to power its customer data platform.\n","spans":[{"start":84,"end":93,"type":"hyperlink","data":{"link_type":"Web","url":"https://squeezely.tech/en/"}}]},{"type":"heading2","text":"Whatever you’re doing, you can DO it on DigitalOcean","spans":[]},{"type":"paragraph","text":"DigitalOcean offers this portfolio of Droplets so that you can use our developer-friendly cloud to run applications for your business, or your personal projects. Regardless of which Droplet plans you choose, you get the same, easy-to-use experience across our control panel, CLI, and API, along with third-party extensions like our Terraform provider.","spans":[{"start":260,"end":273,"type":"hyperlink","data":{"link_type":"Web","url":"https://cloud.digitalocean.com"}},{"start":275,"end":278,"type":"hyperlink","data":{"link_type":"Web","url":"https://www.digitalocean.com/docs/apis-clis/doctl/"}},{"start":284,"end":287,"type":"hyperlink","data":{"link_type":"Web","url":"https://developers.digitalocean.com/documentation/v2/"}},{"start":328,"end":350,"type":"hyperlink","data":{"link_type":"Web","url":"https://registry.terraform.io/providers/digitalocean/digitalocean/latest/docs"}}]},{"type":"paragraph","text":"Thousands of small and medium sized businesses run on DigitalOcean; it’s amazing the sorts of things even a single person can build with our managed Kubernetes service.","spans":[{"start":13,"end":66,"type":"hyperlink","data":{"link_type":"Web","url":"https://www.digitalocean.com/customers/"}},{"start":73,"end":100,"type":"hyperlink","data":{"link_type":"Web","url":"https://www.digitalocean.com/customers/urlbox/","target":"_blank"}}]},{"type":"paragraph","text":"Businesses interested in DigitalOcean can contact us for a consultation with our sales team and solutions engineers. If you’d rather jump right in, you can sign up and get started in just a few minutes.","spans":[{"start":42,"end":71,"type":"hyperlink","data":{"link_type":"Web","url":"https://www.digitalocean.com/company/contact/sales/"}},{"start":156,"end":179,"type":"hyperlink","data":{"link_type":"Web","url":"https://cloud.digitalocean.com/registrations/new"}}]}],"blog_post_date":"2021-01-14","tags":[{"tag1":{"tag":"Product Updates","_linkType":"Link.document","_meta":{"uid":"product-updates"}}}],"_meta":{"uid":"how-to-choose-the-right-droplet-vm"}}},{"node":{"author":{"_linkType":"Link.document","author_name":"Tyler Healy","author_image":{"dimensions":{"width":1961,"height":1961},"alt":"Tyler Healy","copyright":null,"url":"https://images.prismic.io/www-static/21e57dd9-d192-4b6c-a9c9-f38e1c5e10c5_tyler-healy.jpeg?auto=compress,format"},"_meta":{"uid":"tyler_healy"}},"blog_header_image":{"dimensions":{"width":3718,"height":1832},"alt":null,"copyright":null,"url":"https://images.prismic.io/www-static/90b6557c-6b7e-48ce-b5a7-37abeec6909d_runs-on-do-img.png?auto=compress,format"},"blog_headline":[{"type":"heading1","text":"Customer Onboarding Funnel Equilibrium: Securing Customer Experience","spans":[]}],"blog_post_content":[{"type":"paragraph","text":"How often does the Security team directly influence customer growth and user experience for the business? Unless it’s for a security or privacy product or component, the answer is rarely.","spans":[]},{"type":"paragraph","text":"Securing the product tech stack, protecting customer data, and keeping the business ahead of those who might seek to disrupt or do harm are must-dos for any organization, rather than serving as a direct element in the customer journey. On top of those core functions in our Security program, Security at DigitalOcean puts customer experience at the forefront by fighting to keep our compute and network free from the degradation brought on by abusive behavior. ","spans":[]},{"type":"paragraph","text":"Security’s focus on the customer starts at the very beginning of a customer's journey on DO, as we’re the designers of fraud and abuse detection throughout the journey. We want to share some of what we’ve learned in fighting internet-scale fraud and abuse, while maintaining focus on customer experience. ","spans":[]},{"type":"paragraph","text":"","spans":[]},{"type":"paragraph","text":"Monetizing Free Compute","spans":[{"start":0,"end":23,"type":"strong"}]},{"type":"paragraph","text":"It’s no mystery to any internet faring human that for all the magical wonder the internet has created, there’s a lot of bad that happens. From the truly heinous and harmful, to grey market activities like click-farming, the malintended will find a way to put an internet connected computer to use, most often in pursuit of money. As cloud infrastructure has exploded in popularity over the past decade, so has access to free computing: free trials, free tiers, and pay-after-use means a low barrier to access computing power. Great for marketing, but quite the challenge for security. ","spans":[]},{"type":"paragraph","text":"Solving for fraud and abuse at scale means identifying and counteracting the economics of how computers are monetized for harm. The challenge in that game is counteracting only harm without creating a poor experience for well-intended customers. The problem statement is actually relatively straightforward: reduce harmful impact on the internet, protect the bottom line for the business, and help good customers grow as fast as possible. Simple, right? ","spans":[{"start":172,"end":176,"type":"em"},{"start":398,"end":402,"type":"em"}]},{"type":"paragraph","text":"","spans":[]},{"type":"paragraph","text":"Laying Down The (Transparent) Gauntlet ","spans":[{"start":0,"end":39,"type":"strong"}]},{"type":"paragraph","text":"Hyperscale cloud providers have the benefit of a high-spend target market in the realm of massive legacy businesses shifting workloads to the cloud. At DigitalOcean, we’re out there for the individual developers, startup founders, small businesses, and new-to-the-cloud explorers of the world. Hyperscalers have the luxury of employing friction that focuses on capturing big business, where revenue growth is not tied to engaging a founder at an early stage. ","spans":[]},{"type":"paragraph","text":"","spans":[]},{"type":"paragraph","text":"The behaviors and expectations of these target markets are quite different, especially during a signup process. Larger businesses are used to some amount of friction; it’s part of how they operate in a regulatory environment. A captcha + email verification + payment verification + mobile phone verification during signup is not a drag on the customer experience. For DigitalOcean, many of our customers are just exploring what it takes to create a viable business, and we want to help them on that journey. Too much friction for some of these customers would certainly create an acquisition drag. Not enough friction, and we’re swimming in abusive behavior that ruins IP and business reputation, also a negative customer impact. It’s a delicate balance.","spans":[]},{"type":"paragraph","text":"Like any good security strategy, we look to the onion: there must be layers. Starting at the core and building outwards, there are hundreds of knobs and levers to build that allow calibration for achieving an equilibrium. Hundreds of levers may seem like overkill, but in a world where shifts happen constantly in cybercrime tactics, privacy, payment methods, and monetization methods, stabilization requires constant shifting of weight on the balance. ","spans":[]},{"type":"paragraph","text":"Friction levers are built in throughout the customer journey, allowing for constant experimentation and optimization. From bot protection at signup, through traffic analysis for bad behaviors like spamming, we acknowledge two challenging truths: (1) we will never stop all the bad guys at the door, and (2) we will always stop some of the good guys. Stated differently, every piece of fraud and abuse tooling will be imperfect in that there is a false negative and false positive percentage. Many of the levers are designed in sequence, ramping up friction in a way that helps minimize potentially negative customer experiences. Without careful sequencing, signals can get lost between components.","spans":[{"start":321,"end":322,"type":"em"}]},{"type":"paragraph","text":"","spans":[]},{"type":"paragraph","text":"Speed Is the Key To Balance","spans":[{"start":0,"end":27,"type":"strong"}]},{"type":"paragraph","text":"Similar to when riding a bike, the faster you go the more successful you’ll be at balancing. Pace of experimentation and measurement will help avoid major perturbations in the system. Waiting too long can allow attackers to dictate the pace, increasing the risk for over-rotation that will impact good customers. ","spans":[]},{"type":"paragraph","text":"The risk / reward calculation in loosening or tightening certain friction is constant. Approaches get stale quickly, and a thesis from even three to six months prior will often prove outdated. Attacker tactics change, global events (like a pandemic) can shift behaviors, and even how banks function -- the popularity of virtual credit cards are a favorite of global fraud -- the shifts in landscape dictate constant tweaking and tuning. To do this at pace, and at scale, components must be built in a way that allows for rapid tuning and more importantly, rapid measured experimentation. ","spans":[]},{"type":"paragraph","text":"The DigitalOcean Security, Product, and Marketing teams continue to build, iterate, and optimize for this problem. It’s not just important for growth and customer trust, but also for the betterment of the global internet community. The problem will always exist, so it’s not a matter of if this is “solved”, it’s a matter of staying a step ahead.","spans":[]}],"blog_post_date":"2021-01-12","tags":[{"tag1":{"tag":"Trust & Security","_linkType":"Link.document","_meta":{"uid":"trust-security"}}}],"_meta":{"uid":"securing-customer-funnel"}}},{"node":{"author":{"_linkType":"Link.document","author_name":"Shantanu Kedar","author_image":{"dimensions":{"width":96,"height":96},"alt":null,"copyright":null,"url":"https://images.prismic.io/www-static/17e306fb-0754-418d-8606-e7b481c613c0_shantanu-kedar.png?auto=compress,format"},"_meta":{"uid":"shantanu_kedar"}},"blog_header_image":{"dimensions":{"width":790,"height":395},"alt":null,"copyright":null,"url":"https://images.prismic.io/www-static/15d39f37-70c3-48bb-acaa-191ae1ce9e65_Blog_design-01.jpg?auto=compress,format"},"blog_headline":[{"type":"heading1","text":"Jump-start your startup with DigitalOcean App Platform","spans":[]}],"blog_post_content":[{"type":"paragraph","text":"Starting a business is hard, we get it. It wasn’t so long ago that DigitalOcean was there too. There’s a lot to tackle and decisions big and small often need to be made quickly. What cloud platform should I use to build the app? Will I be able to release features quickly? Will I be able to find product/ market fit? On top of that, entrepreneurs also have to worry about raising funds, recruiting the right talent, and business and legal processes. Though DigitalOcean can’t help with everything, we can definitely help you with one of your critical needs: building, deploying, and scaling your apps. ","spans":[{"start":90,"end":93,"type":"hyperlink","data":{"link_type":"Web","url":"https://www.wired.com/2015/05/amazon-isnt-one-killing-cloud-computing/"}}]},{"type":"paragraph","text":"‘Simplicity in all we do’ is one of the core values at DigitalOcean and we strive to simplify cloud computing. We want you to spend more time building software that changes the world. That’s why we recently launched DigitalOcean App Platform, our modern, reimagined PaaS (Platform as a Service) offering that makes it easy to build, deploy, and scale apps. App Platform is a fully managed solution, meaning we handle provisioning and managing infrastructure, operating systems, databases, application runtimes, and other dependencies so that you can focus on your apps. ","spans":[{"start":216,"end":241,"type":"hyperlink","data":{"link_type":"Web","url":"https://www.digitalocean.com/blog/introducing-digitalocean-app-platform-reimagining-paas-to-make-it-simpler-for-you-to-build-deploy-and-scale-apps/"}}]},{"type":"paragraph","text":"Let’s explore how App Platform can help you with your startup.","spans":[]},{"type":"paragraph","text":"","spans":[]},{"type":"heading2","text":"Marketing websites and landing pages","spans":[]},{"type":"paragraph","text":"No matter where you are in your startup journey, it’s very likely that you will need a marketing website. Such websites are often static sites, and are typically used to showcase your app and get users excited, among other purposes. You can deploy these sites using App Platform with just a few clicks. The site will be up and running in a few minutes and will be backed by CDN, HTTPS enabled, and protected from DDoS attacks, making it super-fast and secure. You can also add your custom domain to infuse your brand into the site and make it discoverable. The first 3 static sites are free, and every additional site will be charged just $3/month. ","spans":[{"start":130,"end":142,"type":"hyperlink","data":{"link_type":"Web","url":"https://scotch.io/bar-talk/5-reasons-static-sites-rock"}},{"start":468,"end":495,"type":"hyperlink","data":{"link_type":"Web","url":"https://www.digitalocean.com/docs/app-platform/how-to/manage-domains/"}},{"start":561,"end":590,"type":"hyperlink","data":{"link_type":"Web","url":"https://www.digitalocean.com/pricing/#app-platform"}}]},{"type":"embed","oembed":{"type":"video","embed_url":"https://www.youtube.com/watch?v=3nK6rcAbuzo","title":"Deploy a Gatsby Static Site on App Platform","provider_name":"YouTube","thumbnail_url":"https://i.ytimg.com/vi/3nK6rcAbuzo/hqdefault.jpg","height":113,"width":200,"version":"1.0","author_name":"DigitalOcean","author_url":"https://www.youtube.com/user/DigitalOceanVideos","provider_url":"https://www.youtube.com/","cache_age":null,"thumbnail_width":480,"thumbnail_height":360,"html":"<iframe width=\"200\" height=\"113\" src=\"https://www.youtube.com/embed/3nK6rcAbuzo?feature=oembed\" frameborder=\"0\" allow=\"accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture\" allowfullscreen></iframe>"}},{"type":"paragraph","text":"","spans":[]},{"type":"heading2","text":"Main app","spans":[]},{"type":"paragraph","text":"The power of App Platform isn’t limited to just static sites. In fact, you can build, deploy, and scale your entire app with App Platform. It supports many programming languages and frameworks out of the box, like Node.js, Python, Django, Go, PHP, Laravel, React, Ruby, Ruby on Rails, Gatsby, and Hugo. If your apps are built using other languages, simply provide the pre-built container image and App Platform will do the rest. ","spans":[{"start":142,"end":193,"type":"hyperlink","data":{"link_type":"Web","url":"https://www.digitalocean.com/docs/app-platform/languages-frameworks/"}}]},{"type":"paragraph","text":"App Platform integrates with GitHub and you can deploy code directly from your repositories. It also makes it easy to rapidly iterate on the app. Just enable ‘Autodeploy on Push’ and your app will be re-deployed automatically each time you push to the branch containing the source code. ","spans":[]},{"type":"paragraph","text":"App Platform utilizes a component-based design, making it easy to build apps with modular and loosely coupled components. For example, the image below shows the typical elements that make up any dynamic app. When you run your app, App Platform builds and deploys containers for each of your app’s components on Kubernetes clusters.","spans":[{"start":24,"end":46,"type":"hyperlink","data":{"link_type":"Web","url":"https://www.digitalocean.com/blog/build-component-based-apps-with-digitalocean-app-platform"}}]},{"type":"image","url":"https://images.prismic.io/www-static/42453250-63ca-498a-8077-42b00eb5f543_Phil_blog3.png?auto=compress,format","alt":null,"copyright":null,"dimensions":{"width":919,"height":448}},{"type":"paragraph","text":"The advantage of component-based design is that you can evolve the app based on your startup’s needs. This allows you to move at your own pace and there’s no need to go all in with App Platform right away. For example, check out the below video which shows how you can build a dynamic app with App Platform. The app has three components: a front end in React, a backend that consists of Laravel API, and a PostgreSQL database. You can deploy these components independent of each other and then attach them together to get the app working. ","spans":[]},{"type":"embed","oembed":{"type":"video","embed_url":"https://www.youtube.com/watch?v=qkg5Cufa-C8","title":"Deploy a Laravel API with React Front End on App Platform","provider_name":"YouTube","thumbnail_url":"https://i.ytimg.com/vi/qkg5Cufa-C8/hqdefault.jpg","height":113,"width":200,"version":"1.0","author_name":"DigitalOcean","author_url":"https://www.youtube.com/user/DigitalOceanVideos","provider_url":"https://www.youtube.com/","cache_age":null,"thumbnail_width":480,"thumbnail_height":360,"html":"<iframe width=\"200\" height=\"113\" src=\"https://www.youtube.com/embed/qkg5Cufa-C8?feature=oembed\" frameborder=\"0\" allow=\"accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture\" allowfullscreen></iframe>"}},{"type":"paragraph","text":"Another benefit of component-based design is that you can scale the components independent of each other. You get a lot of flexibility and can scale the components vertically and horizontally. This allows you to have precise control on your costs. The pricing for dynamic apps starts at $5/month and since we run App Platform on our own infrastructure, the costs are low not only when you are starting out, but also when you scale your apps. ","spans":[{"start":252,"end":296,"type":"hyperlink","data":{"link_type":"Web","url":"https://www.digitalocean.com/pricing/#app-platform"}}]},{"type":"heading2","text":"Blog","spans":[]},{"type":"paragraph","text":"It’s very likely that you will also need a blog so that you can promote new product features, write thought leadership articles, and boost your SEO ratings. You can build and deploy your blog via App Platform. Just point us to the GitHub repo and let App Platform do all the heavy lifting. Deploy this sample app for a blog that uses Strapi as the backend and Next.js as the front end to see the App Platform in action.","spans":[{"start":334,"end":355,"type":"hyperlink","data":{"link_type":"Web","url":"https://github.com/do-community/blog-strapi"}},{"start":360,"end":384,"type":"hyperlink","data":{"link_type":"Web","url":"https://github.com/do-community/blog-next"}}]},{"type":"paragraph","text":"","spans":[]},{"type":"heading2","text":"Internal apps","spans":[]},{"type":"paragraph","text":"In addition to customer facing apps and sites, App Platform can also help you with internal apps. For example, you can use App Platform to build and deploy an app that monitors your customer facing app’s uptime and performance. Other examples of internal apps include dashboards for web analytics and apps to perform operations like data deduplication. ","spans":[]},{"type":"paragraph","text":"","spans":[]},{"type":"paragraph","text":"We hope you will try App Platform and build your startup on DigitalOcean. Check out the docs, deploy this sample app for an RSS feed aggregator (here are the repos for frontend and API), and let us know what you think!  ","spans":[{"start":38,"end":72,"type":"hyperlink","data":{"link_type":"Web","url":"https://www.digitalocean.com/solutions/startups/"}},{"start":88,"end":92,"type":"hyperlink","data":{"link_type":"Web","url":"https://www.digitalocean.com/docs/app-platform/"}},{"start":106,"end":143,"type":"hyperlink","data":{"link_type":"Web","url":"https://rss-reader.shark.codes/"}},{"start":168,"end":176,"type":"hyperlink","data":{"link_type":"Web","url":"https://github.com/do-community/rss-reader-frontend"}},{"start":181,"end":184,"type":"hyperlink","data":{"link_type":"Web","url":"https://github.com/do-community/rss-reader-api"}},{"start":191,"end":217,"type":"hyperlink","data":{"link_type":"Web","url":"https://www.digitalocean.com/community/questions/new?tags=Digitalocean%20App%20Platform"}}]},{"type":"paragraph","text":"If you’d like to have a conversation about using DigitalOcean and App Platform in your business, please feel free to contact our sales team.","spans":[{"start":117,"end":139,"type":"hyperlink","data":{"link_type":"Web","url":"https://www.digitalocean.com/company/contact/sales/"}}]},{"type":"paragraph","text":"Happy coding!","spans":[]},{"type":"paragraph","text":"Shantanu Kedar","spans":[]},{"type":"paragraph","text":"Senior Manager, Product Marketing","spans":[]}],"blog_post_date":"2021-01-12","tags":[{"tag1":{"tag":"Developer Relations","_linkType":"Link.document","_meta":{"uid":"developer-relations"}}}],"_meta":{"uid":"jump-start-your-startup-with-digitalocean-app-platform"}}}]}}}