{"id":983,"date":"2013-12-13T10:24:00","date_gmt":"2013-12-13T10:24:00","guid":{"rendered":"https:\/\/blogs.msdn.microsoft.com\/vcblog\/2013\/12\/13\/developer-activities-survey-results-overview\/"},"modified":"2019-02-18T18:40:46","modified_gmt":"2019-02-18T18:40:46","slug":"developer-activities-survey-results-overview","status":"publish","type":"post","link":"https:\/\/devblogs.microsoft.com\/cppblog\/developer-activities-survey-results-overview\/","title":{"rendered":"Developer Activities Survey Results Overview"},"content":{"rendered":"<p>Hi there!<\/p>\n<p>A few months ago, some of you took a survey on C++ developer activities, the results of which will be used to hone in on which areas to improve for the next release of Visual Studio. I wanted to take some time to share with you the preliminary results of the survey.<\/p>\n<p>Without further ado, out of the 47 tasks included on the survey, here&#8217;s what we found out! &#8220;Aggregate Score&#8221; is the composite score from all respondents. &#8220;Normalized Score&#8221; is adjusted by the number of respondents for which the activity is meaningful for them.<\/p>\n<table style=\"width: 591px;height: 170px;padding-left: 30px\" border=\"0\">\n<tbody>\n<tr>\n<td>&nbsp;<\/td>\n<td><strong><span style=\"text-decoration: underline\">Top 7 Frequent Tasks By Aggregate Score<\/span><\/strong><\/td>\n<td><strong>&nbsp;<span style=\"text-decoration: underline\">(Normalized Score Ranking) <\/span>&nbsp;<\/strong><\/td>\n<\/tr>\n<tr>\n<td>1<\/td>\n<td>&nbsp;Jump between header and source<\/td>\n<td style=\"text-align: left\">&nbsp;1<\/td>\n<\/tr>\n<tr>\n<td>2<\/td>\n<td>&nbsp;Read [normal C++] code<\/td>\n<td style=\"text-align: left\">&nbsp;2<\/td>\n<\/tr>\n<tr>\n<td>3<\/td>\n<td>&nbsp;Debug code<\/td>\n<td style=\"text-align: left\">&nbsp;3<\/td>\n<\/tr>\n<tr>\n<td>4<\/td>\n<td>&nbsp;Use source control&nbsp;<\/td>\n<td style=\"text-align: left\">&nbsp;4<\/td>\n<\/tr>\n<tr>\n<td>5<\/td>\n<td>&nbsp;Navigate through project structure&nbsp;<\/td>\n<td style=\"text-align: left\">&nbsp;5<\/td>\n<\/tr>\n<tr>\n<td>6<\/td>\n<td>&nbsp;Understand compiler outputs (errors\/warnings\/etc.)<\/td>\n<td style=\"text-align: left\">&nbsp;6<\/td>\n<\/tr>\n<tr>\n<td>7<\/td>\n<td>&nbsp;String\/Incremental search<\/td>\n<td style=\"text-align: left\">&nbsp;7<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<p>Survey says, normalized or not, these tasks are the most often performed by C++ developers. Hopefully none of these tasks being here are a surprise!<\/p>\n<table style=\"width: 592px;height: 170px;padding-left: 30px\" border=\"0\">\n<tbody>\n<tr>\n<td>&nbsp;<\/td>\n<td><strong><span style=\"text-decoration: underline\"><span style=\"text-decoration: underline\">Top 7 Tasks Cited As Pain Points By Aggregate Score<\/span> <br \/><\/span><\/strong><\/td>\n<td><strong>&nbsp;<span style=\"text-decoration: underline\">(Normalized Score Ranking) <\/span>&nbsp;<\/strong><\/td>\n<\/tr>\n<tr>\n<td>1<\/td>\n<td>&nbsp;Refactor &#8211; Rename Item (var, meth, etc.)<\/td>\n<td style=\"text-align: left\">2<\/td>\n<\/tr>\n<tr>\n<td>2<\/td>\n<td>&nbsp;Refactor &#8211; Extract Method (copy\/paste)<\/td>\n<td style=\"text-align: left\">3<\/td>\n<\/tr>\n<tr>\n<td>3<\/td>\n<td>&nbsp;Jump between header and source<\/td>\n<td style=\"text-align: left\">4<\/td>\n<\/tr>\n<tr>\n<td>4<\/td>\n<td>&nbsp;Refactor &#8211; Code Cleanup (copy\/paste)&nbsp;&nbsp;&nbsp;&nbsp;<\/td>\n<td style=\"text-align: left\">5<\/td>\n<\/tr>\n<tr>\n<td>5<\/td>\n<td>&nbsp;Understand compiler outputs (errors\/warnings\/etc.)<\/td>\n<td style=\"text-align: left\">6<\/td>\n<\/tr>\n<tr>\n<td>6<\/td>\n<td>Open file\/Load project &#8211; time to edit<\/td>\n<td style=\"text-align: left\">10<\/td>\n<\/tr>\n<tr>\n<td>7<\/td>\n<td>&nbsp;Align code to coding style<\/td>\n<td style=\"text-align: left\">7<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<p>It&#8217;s no surprise that every refactoring topic offered in the survey made it to the top of the pain points list. It is well-known that the lack of support for C++ refactoring is widely felt.<\/p>\n<p><strong>AH, BUT WHAT&#8217;S THIS?!<\/strong> Many of you are probably wondering which task made it to the top of the normalized list, and you should! Take a look for yourself:<\/p>\n<p style=\"margin-left: 36pt\"><img decoding=\"async\" src=\"https:\/\/devblogs.microsoft.com\/00\/00\/00\/65\/69\/metablogapi\/0602.121313_1824_DeveloperAc1.png\" alt=\"\" \/><\/p>\n<p>Of the 54 (likely graphics) developers that had the opportunity to voice concerns over writing and compiling shader code, a whopping one-fifth of them said it was a pain point. Most of you (77% of you, in fact =P) probably saw that task and said &#8220;What the heck is shader code, I don&#8217;t do that.&#8221; Well, your graphics-developing colleagues do that, and it&#8217;s a pain point for them <span style=\"font-family: Wingdings\">J<\/span>.<\/p>\n<p>For those who love reading some of the &#8220;verbatims&#8221; we receive, here are a few &#8220;pain point verbatims&#8221; reflecting common themes. Note that since we asked specifically for pain points, we did not receive positive statements as we often do with more general &#8220;what else would you like to share&#8221; feedback questions:<\/p>\n<ul style=\"margin-left: 38pt\">\n<li><em>STL errors are seriously convoluted. I had one last week where a modification on line 500 caused an &#8220;error&#8221; on line 100. And the error was in a different function! <\/em><\/li>\n<li><em>My solution takes a long time to load. It can be slow editing large projects. [VS2012] <\/em><\/li>\n<li><em>Layouts sometimes break [in Visual Studio 2012]. <\/em><\/li>\n<li><em>The VS project system does not work well for us [because of project size, cross platform issues, external-tooling, culture, or other challenges]. <\/em><\/li>\n<li><em>hlsl\/fxc compiler needs better integration<\/em>.<em> <\/em><\/li>\n<\/ul>\n<p>For everyone who took the time to take this survey, thank you so much! The median time to complete the survey was 18 minutes; it was a very involved survey!<\/p>\n<p>It so happens that the Visual C++ Team is exploring new refactoring tools (have you seen the new <a href=\"http:\/\/visualstudiogallery.msdn.microsoft.com\/164904b2-3b47-417f-9b6b-fdd35757d194\">rename\/refactor extension<\/a>?).&nbsp;You can be the judge on its relation to these results.<\/p>\n<p>Best regards,<\/p>\n<p>Gabriel Ha<\/p>\n<p><a href=\"mailto:gaha@microsoft.com\">gaha@microsoft.com<\/a><\/p>\n<p>&nbsp;<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Hi there! A few months ago, some of you took a survey on C++ developer activities, the results of which will be used to hone in on which areas to improve for the next release of Visual Studio. I wanted to take some time to share with you the preliminary results of the survey. Without [&hellip;]<\/p>\n","protected":false},"author":264,"featured_media":35994,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"footnotes":""},"categories":[1],"tags":[35],"class_list":["post-983","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-cplusplus","tag-survey"],"acf":[],"blog_post_summary":"<p>Hi there! A few months ago, some of you took a survey on C++ developer activities, the results of which will be used to hone in on which areas to improve for the next release of Visual Studio. I wanted to take some time to share with you the preliminary results of the survey. Without [&hellip;]<\/p>\n","_links":{"self":[{"href":"https:\/\/devblogs.microsoft.com\/cppblog\/wp-json\/wp\/v2\/posts\/983","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/devblogs.microsoft.com\/cppblog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/devblogs.microsoft.com\/cppblog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/devblogs.microsoft.com\/cppblog\/wp-json\/wp\/v2\/users\/264"}],"replies":[{"embeddable":true,"href":"https:\/\/devblogs.microsoft.com\/cppblog\/wp-json\/wp\/v2\/comments?post=983"}],"version-history":[{"count":0,"href":"https:\/\/devblogs.microsoft.com\/cppblog\/wp-json\/wp\/v2\/posts\/983\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/devblogs.microsoft.com\/cppblog\/wp-json\/wp\/v2\/media\/35994"}],"wp:attachment":[{"href":"https:\/\/devblogs.microsoft.com\/cppblog\/wp-json\/wp\/v2\/media?parent=983"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/devblogs.microsoft.com\/cppblog\/wp-json\/wp\/v2\/categories?post=983"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/devblogs.microsoft.com\/cppblog\/wp-json\/wp\/v2\/tags?post=983"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}