C++ Developer Survey "Lite": C++ and Cloud

Similar documents
Q1 Where do you use C++? (select all that apply)

Ogre3D presents. User Survey conducted August 2011 published November 2011 by the Ogre3D team

Isomorphic Kotlin. Troy

How does PyCharm match up against competing tools?

Richard Mallion. Swift for Admins #TEAMSWIFT

How to Route Internet Traffic between A Mobile Application and IoT Device?

Continuous delivery of Java applications. Marek Kratky Principal Sales Consultant Oracle Cloud Platform. May, 2016

Manual Visual Studio 2010 Web Developer Tools Offline

IBM s statements regarding its plans, directions, and intent are subject to change or withdrawal without notice at IBM s sole discretion.

Programming School for 21 st Century. syllabus MOBILE BACKEND DEVOPS

Building OSM based web app from scratch

Ios Sdk Documentation For Windows 7 32 Bit. Latest Version >>>CLICK HERE<<<

Introduction. Introduction to OOP with Java. Lecture 01: Introduction to OOP with Java - AKF Sep AbuKhleiF -

Introduction to OOP with Java. Instructor: AbuKhleif, Mohammad Noor Sep 2017

Cloud Computing. Technologies and Types

A Glance Over the Serverless Framework

Docusign api c# API api api

Ios Sdk Documentation For Windows 7 32 Bit Full Version

CSC Introduction to Computers and Their Applications

Digital Transformation

Chatter Desktop, Salesforce Files Desktop Client 5D992.c MMKT G Mobile access (1) 5D992.c MMKT G160317

Programming. Languages & Frameworks. Hans-Petter Halvorsen, M.Sc. O. Widder. (2013). geek&poke. Available:

Homework 9: Stock Search Android App with Facebook Post A Mobile Phone Exercise

ArcGIS Runtime: Building Cross-Platform Apps. Rex Hansen Mark Baird Michael Tims Morten Nielsen

CV Nr. 4698a2f0. Occupation area: IT areas. Category: Education. Job experience

Platform as a Service (PaaS)

These Are the Top Languages for Enterprise Application Development

Microsoft vision for a new era

Modern Stored Procedures Using GraalVM

FROM VSTS TO AZURE DEVOPS

But before understanding the Selenium WebDriver concept, we need to know about the Selenium first.

Participant Handbook

Cloud Computing Technologies and Types

Transitioning from C# to Scala Using Apache Thrift. Twitter Finagle

Technology Expertise STUDIO GRAPHENE

Cloud platforms. T Mobile Systems Programming

STREAMLINED CERTIFICATION PATHS

Full version is >>> HERE <<<

IntelliJ IDEA, the most intelligent Java IDE

Transform your data estate with cloud, data and AI

Using Data Science to deliver Workforce & Labour Market Insights. Gary Gan Co-Founder, JobKred

Connect and Transform Your Digital Business with IBM

Developer Internship Opportunity at I-CC

The Life of an Open-Source Project

A Hands on Introduction to Docker

FootboFun. Jupiter's Kek. October 13, 2013

Vishesh Oberoi Seth Reid Technical Evangelist, Microsoft Software Developer, Intergen

Azure Day Application Development. Randy Pagels Sr. Developer Technology Specialist US DX Developer Tools - Central Region

Cloud platforms T Mobile Systems Programming

Zombie Apocalypse Workshop

School of Software / Soongsil University Prof. YOUNGJONG KIM, Ph.D. Soongsil University

Since 2008, medl has helped to architect, design and develop hundreds of mobile apps and technologies alongside a storied list of innovative

F# is the future of OSS.NET

If you don't know how to code, then you can learn even if you think you can't. Thousands of people have learned programming from these fine books:

Web Development for Dinosaurs An Introduction to Modern Web Development

Azure Highlights. Randy Pagels Sr. Developer Technology Specialist US DX Developer Tools - Central Region

Problem: Internet of Things (IoT) developers need help!

AWS Lambda: Event-driven Code in the Cloud

Vb Net Tutorial For Beginners Visual Studio 2010 Express Windows Service Template

THOMAS LATOZA SWE 621 FALL 2018 DESIGN ECOSYSTEMS

Industry-leading Application PaaS Platform

Web and API Apps in Azure

70-532: Developing Microsoft Azure Solutions

Lecture 14. Moving Forward 1 / 23

Copyright 2013, Oracle and/or its affiliates. All rights reserved.

SIGGRAPH Briefing August 2014

STREAMLINED CERTIFICATION PATHS

/ Cloud Computing. Recitation 5 February 14th, 2017

Steven Edouard SDET, US - DX Audience West Microsoft Bruno Terkaly Principal Software Engineer - Microsoft

Tom Brenneman. Good morning and welcome, introductions and thank you for being here.

Software Development. Integrated Software Environment

When learning coding, be brave

Android Validation Xml Against Schema Visual Studio 2010

Programming: C ++ Programming : Programming Language For Beginners: LEARN IN A DAY! (Swift, Apps, Javascript, PHP, Python, Sql, HTML) By Os Swift

ASSOCIATE DEGREE REQUIREMENTS

Full Name. Benjamin James New. Location. Perth, Western Australia. Contact. (+61) Social Media

SQL Server 2017 Power your entire data estate from on-premises to cloud

ITP 342 Mobile App Development. APIs

MY GOOD FRIEND RUST. Matthias Endler trivago

Goran Halusa. Summary. Experience. Web Developer at Quotient

U.S. Mobile Benchmark Report

NewSQL Without Compromise

WebStore9 Services. Web Development Services

Azure DevOps. Randy Pagels Intelligent Cloud Technical Specialist Great Lakes Region

HOW REACT NATIVE AND NATIVESCRIPT CHANGE YOUR MOBILE STRATEGY SEBASTIAN

Company Overview. Company based in the heart of Silicon Valley. Sources best talent around the world in order to deliver highest quality product.

John M. Scarpaci. Summary. Professional Experience

Roles. Ecosystem Flow of Information between Roles Accountability

Getting Started with. Lite.

Faculté Polytechnique

Advance Mobile& Web Application development using Angular and Native Script

MICROSOFT CLOUD PLATFORM AND INFRASTRUCTURE CERTIFICATION. Includes certifications for Microsoft Azure and Windows Server

Using and Developing with Azure. Joshua Drew

Amazon Relational Database Service. Getting Started Guide API Version

Let's Play... Try to name the databases described on the following slides...

Software Implementation

Most "scaling" resources for Ruby apps are written by companies with hundreds All of this combines to make scaling a tough topic for most Rails Yes,

An overview of mobile and embedded platforms

70-532: Developing Microsoft Azure Solutions

Data Centers and Cloud Computing

Transcription:

Q1 This month we focus on how C++ is used, or could be better for use, in cloud-related applications and environments. In what (if any) kinds of cloud computing-related workloads do you use C++? (select all that apply) Answered: 198 Skipped: 5 1 / 20

None -- I don't use th... Communications (e.g.,... Machine learning, us... IoT / embedded (e.g., senso... Business (e.g., B2B,... Engineering (e.g.,... Developer tools (e.g.,... Artificial intelligence... Entertainment (e.g., sport... Financial (e.g., tradi... Consumer (e.g., retai... Gaming (e.g., cloud-based... Automotive (e.g,... Frameworks (e.g., React... Productivity (e.g., note... Social and business... 0% 10% 20% 30% 40% 50% 60% 70% 80% 90% 100% ANSWER CHOICES None -- I don't use the cloud in any way in my C++ projects Communications (e.g., networking, email) Machine learning, using data to train software to learn patterns and make predictions (e.g., forecasting) IoT / embedded (e.g., sensors, embedded systems, home automation) Business (e.g., B2B, B2E) RESPONSES 35.86% 71 25.25% 50 16.67% 33 15.15% 30 12.63% 25 2 / 20

Engineering (e.g., avionics, power management) Developer tools (e.g., compilers, code editors) Artificial intelligence, software that works and reacts like humans (e.g., digital assistants) Entertainment (e.g., sports apps, video streaming) Financial (e.g., trading, mortgage, asset management) Consumer (e.g., retail websites, mobile apps) Gaming (e.g., cloud-based and mobile games) Automotive (e.g, self-driving car software) Frameworks (e.g., React, Unreal) Productivity (e.g., note taking) Social and business networking (e.g., Facebook, Twitter) 12.63% 25 9.60% 19 9.09% 18 9.09% 18 9.09% 18 8.59% 17 7.58% 15 5.56% 11 5.56% 11 5.05% 10 4.04% 8 Total Respondents: 198 3 / 20

Q2 What device and/or server platforms do you develop for? (select all that apply) Answered: 200 Skipped: 3 Linux (server/cloud) Windows (desktop) Linux (desktop) Windows (server/cloud) Docker Embedded system - wit... Android macos Embedded system - bar... ios Game console Other (please specify) FreeBSD 0% 10% 20% 30% 40% 50% 60% 70% 80% 90% 100% ANSWER CHOICES Linux (server/cloud) Windows (desktop) Linux (desktop) Windows (server/cloud) Docker RESPONSES 57.00% 114 57.00% 114 44.00% 88 28.50% 57 22.50% 45 4 / 20

Embedded system - with OS Android macos Embedded system - bare metal ios Game console Other (please specify) FreeBSD 21.00% 42 19.50% 39 19.50% 39 11.50% 23 11.50% 23 5.00% 10 4.50% 9 4.00% 8 Total Respondents: 200 5 / 20

Q3 For the C++ parts of your cloud-related project, how is your C++ code touching the cloud? (select all that apply) Answered: 137 Skipped: 66 C++ code runs in Virtual... C++ code directly cal... C++ code is wrapped and... C++ code is wrapped and... C++ code calls another... Other (please specify) 0% 10% 20% 30% 40% 50% 60% 70% 80% 90% 100% ANSWER CHOICES C++ code runs in Virtual Machines in the cloud C++ code directly calls a cloud API (e.g., authentication, storage) C++ code is wrapped and exposed as a REST service C++ code is wrapped and exposed via a container C++ code calls another language that calls a cloud API for me (e.g., because it's easier via the other language) Other (please specify) RESPONSES 51.82% 71 38.69% 53 37.96% 52 34.31% 47 18.98% 26 10.22% 14 Total Respondents: 137 6 / 20

Q4 Which of the following recent or upcoming standard C++ features help your cloud-related development, or do you expect will help when they are available? Answered: 141 Skipped: 62 Networking Coroutines Reflection + generation... Modules (#include... optional/varian t/any Parallel STL (parallel st... if constexpr (compile-tim... Concepts (template... constexpr functions... Contracts (e.g., funct... 0% 10% 20% 30% 40% 50% 60% 70% 80% 90% 100% ANSWER CHOICES Networking Coroutines Reflection + generation (ability to query functions/types + create new ones programmatically) Modules (#include replacement) optional/variant/any Parallel STL (parallel std:: algorithms) if constexpr (compile-time if) Concepts (template constraints) constexpr functions (compile-time computation) Contracts (e.g., function pre/post conditions) RESPONSES 74.47% 105 48.94% 69 48.23% 68 44.68% 63 41.84% 59 37.59% 53 34.04% 48 31.91% 45 29.79% 42 26.24% 37 7 / 20

Total Respondents: 141 8 / 20

Q5 Which technologies do you use for parallelism on the device and/or server? (select all that apply) Answered: 85 Skipped: 118 Parallel std:: algorithms OpenMP Threading Building Blo... CUDA OpenCL C++ AMP ConcRT Cilk SYCL 0 10 20 30 40 50 60 70 80 90 100 Running on device (e.g., phone, desktop) Running on server (e.g., in cloud VM) Parallel std:: algorithms OpenMP Threading Building Blocks (TBB) CUDA OpenCL C++ AMP ConcRT RUNNING ON DEVICE (E.G., PHONE, DESKTOP) 70.59% 24 71.88% 23 77.78% 21 73.08% 19 83.33% 15 71.43% 5 75.00% 3 RUNNING ON SERVER (E.G., IN CLOUD VM) TOTAL RESPONDENTS 79.41% 27 34 62.50% 20 32 44.44% 12 27 46.15% 12 26 33.33% 6 18 85.71% 6 7 50.00% 2 4 9 / 20

Cilk SYCL C++ Developer Survey "Lite": 2018-08 -- C++ and Cloud 100.00% 1 100.00% 1 100.00% 1 1 100.00% 1 1 10 / 20

Q6 Which cloud providers do you use? (select all that apply) Answered: 124 Skipped: 79 Amazon AWS Microsoft Azure Google Cloud Platform Other (please specify) Digital Ocean Heroku Alibaba IBM Cloud Oracle Cloud Platform Salesforce 0% 10% 20% 30% 40% 50% 60% 70% 80% 90% 100% ANSWER CHOICES Amazon AWS Microsoft Azure Google Cloud Platform Other (please specify) Digital Ocean Heroku Alibaba IBM Cloud Oracle Cloud Platform Salesforce RESPONSES 64.52% 80 35.48% 44 26.61% 33 17.74% 22 8.87% 11 5.65% 7 3.23% 4 3.23% 4 2.42% 3 1.61% 2 Total Respondents: 124 11 / 20

Q7 Which development environments (IDEs) or editors do you use for development for the C++ portions of your cloud-related project? Answered: 165 Skipped: 38 Visual Studio Visual Studio Code Vim Qt Creator CLion Xcode Eclipse Emacs Other (please specify) KDevelop Android Studio Code::blocks Atom Sublime Intellij IDEA Kate CodeLite Netbeans 12 / 20

Code Insight Source Insight Webstorm 0% 10% 20% 30% 40% 50% 60% 70% 80% 90% 100% ANSWER CHOICES Visual Studio Visual Studio Code Vim Qt Creator CLion Xcode Eclipse Emacs Other (please specify) KDevelop Android Studio Code::blocks Atom Sublime Intellij IDEA Kate CodeLite Netbeans Code Insight Source Insight Webstorm RESPONSES 46.67% 77 35.76% 59 33.33% 55 23.64% 39 21.21% 35 10.91% 18 7.27% 12 7.27% 12 7.27% 12 6.06% 10 5.45% 9 5.45% 9 4.85% 8 3.64% 6 3.03% 5 3.03% 5 1.82% 3 1.82% 3 0.61% 1 0.61% 1 0.61% 1 Total Respondents: 165 13 / 20

Q8 What do you like best about the tools you selected in the previous question that help you with cloud-related work? And what things do you wish they could do better that would help you with your cloud-related work? Answered: 50 Skipped: 153 14 / 20

Q9 Besides C++, what programming languages/environments do you use in your cloud-related projects? (select all that apply) Answered: 153 Skipped: 50 Python JavaScript Java C# SQL C Go TypeScript PHP Other (please specify) Node.js Rust Swift Lua Assembly Objective-C Perl R 15 / 20

Scala D Ruby Erlang Haskell F# Groovy Julia Visual Basic 0% 10% 20% 30% 40% 50% 60% 70% 80% 90% 100% ANSWER CHOICES Python JavaScript Java C# SQL C Go TypeScript PHP Other (please specify) Node.js Rust Swift RESPONSES 51.63% 79 31.37% 48 25.49% 39 23.53% 36 19.61% 30 17.65% 27 16.34% 25 9.80% 15 9.15% 14 8.50% 13 7.19% 11 6.54% 10 3.92% 6 Lua Assembly Objective-C Perl 3.27% 5 2.61% 4 2.61% 4 1.96% 3 16 / 20

R Scala D Ruby Erlang Haskell F# Groovy Julia Visual Basic 1.96% 3 1.96% 3 1.31% 2 1.31% 2 0.65% 1 0.65% 1 0.00% 0 0.00% 0 0.00% 0 0.00% 0 Total Respondents: 153 17 / 20

Q10 For the C++ parts of your cloud-related project, did you try using another language first (e.g., to prototype) and then switch to C++? If yes, please describe which language you tried first, and what C++ helped you accomplish that you couldn t accomplish as well in the other language. Answered: 42 Skipped: 161 18 / 20

Q11 If you could wave a magic wand and add/change one thing in any part of C++ that would help you with your cloud-related project, or let you use C++ more with the cloud, what would it be and how would that change help your project? Answered: 53 Skipped: 150 19 / 20

Q12 Do you have any additional feedback for C++ standardization, regarding using C++ for cloud applications in particular? (e.g., what's missing, how could C++standardization help you in ways it currently is not) Answered: 41 Skipped: 162 20 / 20