| <?xml version='1.0' encoding='UTF-8' ?> |
| <svg xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' class='svglite' width='432.00pt' height='425.42pt' viewBox='0 0 432.00 425.42'> |
| <defs> |
| <style type='text/css'><![CDATA[ |
| .svglite line, .svglite polyline, .svglite polygon, .svglite path, .svglite rect, .svglite circle { |
| fill: none; |
| stroke: #000000; |
| stroke-linecap: round; |
| stroke-linejoin: round; |
| stroke-miterlimit: 10.00; |
| } |
| .svglite text { |
| white-space: pre; |
| } |
| ]]></style> |
| </defs> |
| <rect width='100%' height='100%' style='stroke: none; fill: #FFFFFF;'/> |
| <defs> |
| <clipPath id='cpMC4wMHw0MzIuMDB8MC4wMHw0MjUuNDI='> |
| <rect x='0.00' y='0.00' width='432.00' height='425.42' /> |
| </clipPath> |
| </defs> |
| <g clip-path='url(#cpMC4wMHw0MzIuMDB8MC4wMHw0MjUuNDI=)'> |
| </g> |
| <defs> |
| <clipPath id='cpMTU2LjYzfDQyNi41Mnw1My4xM3wzNzcuMDQ='> |
| <rect x='156.63' y='53.13' width='269.90' height='323.91' /> |
| </clipPath> |
| </defs> |
| <g clip-path='url(#cpMTU2LjYzfDQyNi41Mnw1My4xM3wzNzcuMDQ=)'> |
| <polyline points='215.30,377.04 215.30,53.13 ' style='stroke-width: 0.53; stroke: #EBEBEB; stroke-linecap: butt;' /> |
| <polyline points='332.64,377.04 332.64,53.13 ' style='stroke-width: 0.53; stroke: #EBEBEB; stroke-linecap: butt;' /> |
| <polyline points='156.63,377.04 156.63,53.13 ' style='stroke-width: 1.07; stroke: #EBEBEB; stroke-linecap: butt;' /> |
| <polyline points='273.97,377.04 273.97,53.13 ' style='stroke-width: 1.07; stroke: #EBEBEB; stroke-linecap: butt;' /> |
| <polyline points='391.32,377.04 391.32,53.13 ' style='stroke-width: 1.07; stroke: #EBEBEB; stroke-linecap: butt;' /> |
| <rect x='156.63' y='130.59' width='99.81' height='28.17' style='stroke-width: 1.07; stroke: none; stroke-linecap: butt; stroke-linejoin: miter; fill: #00ADD8;' /> |
| <rect x='156.63' y='271.42' width='45.21' height='28.17' style='stroke-width: 1.07; stroke: none; stroke-linecap: butt; stroke-linejoin: miter; fill: #00ADD8;' /> |
| <rect x='156.63' y='95.38' width='116.61' height='28.17' style='stroke-width: 1.07; stroke: none; stroke-linecap: butt; stroke-linejoin: miter; fill: #00ADD8;' /> |
| <rect x='156.63' y='306.63' width='23.34' height='28.17' style='stroke-width: 1.07; stroke: none; stroke-linecap: butt; stroke-linejoin: miter; fill: #00ADD8;' /> |
| <rect x='156.63' y='165.80' width='72.14' height='28.17' style='stroke-width: 1.07; stroke: none; stroke-linecap: butt; stroke-linejoin: miter; fill: #00ADD8;' /> |
| <rect x='156.63' y='60.17' width='129.90' height='28.17' style='stroke-width: 1.07; stroke: none; stroke-linecap: butt; stroke-linejoin: miter; fill: #00ADD8;' /> |
| <rect x='156.63' y='341.83' width='14.24' height='28.17' style='stroke-width: 1.07; stroke: none; stroke-linecap: butt; stroke-linejoin: miter; fill: #00ADD8;' /> |
| <rect x='156.63' y='236.21' width='64.73' height='28.17' style='stroke-width: 1.07; stroke: none; stroke-linecap: butt; stroke-linejoin: miter; fill: #00ADD8;' /> |
| <rect x='156.63' y='201.00' width='66.20' height='28.17' style='stroke-width: 1.07; stroke: none; stroke-linecap: butt; stroke-linejoin: miter; fill: #00ADD8;' /> |
| <polyline points='260.45,148.19 260.45,141.15 ' style='stroke-width: 1.07; stroke: #DDDDDD; stroke-linecap: butt;' /> |
| <polyline points='260.45,144.67 252.41,144.67 ' style='stroke-width: 1.07; stroke: #DDDDDD; stroke-linecap: butt;' /> |
| <polyline points='252.41,148.19 252.41,141.15 ' style='stroke-width: 1.07; stroke: #DDDDDD; stroke-linecap: butt;' /> |
| <polyline points='205.04,289.02 205.04,281.98 ' style='stroke-width: 1.07; stroke: #DDDDDD; stroke-linecap: butt;' /> |
| <polyline points='205.04,285.50 198.62,285.50 ' style='stroke-width: 1.07; stroke: #DDDDDD; stroke-linecap: butt;' /> |
| <polyline points='198.62,289.02 198.62,281.98 ' style='stroke-width: 1.07; stroke: #DDDDDD; stroke-linecap: butt;' /> |
| <polyline points='277.30,112.98 277.30,105.94 ' style='stroke-width: 1.07; stroke: #DDDDDD; stroke-linecap: butt;' /> |
| <polyline points='277.30,109.46 269.17,109.46 ' style='stroke-width: 1.07; stroke: #DDDDDD; stroke-linecap: butt;' /> |
| <polyline points='269.17,112.98 269.17,105.94 ' style='stroke-width: 1.07; stroke: #DDDDDD; stroke-linecap: butt;' /> |
| <polyline points='182.40,324.23 182.40,317.19 ' style='stroke-width: 1.07; stroke: #DDDDDD; stroke-linecap: butt;' /> |
| <polyline points='182.40,320.71 177.53,320.71 ' style='stroke-width: 1.07; stroke: #DDDDDD; stroke-linecap: butt;' /> |
| <polyline points='177.53,324.23 177.53,317.19 ' style='stroke-width: 1.07; stroke: #DDDDDD; stroke-linecap: butt;' /> |
| <polyline points='232.52,183.40 232.52,176.36 ' style='stroke-width: 1.07; stroke: #DDDDDD; stroke-linecap: butt;' /> |
| <polyline points='232.52,179.88 225.01,179.88 ' style='stroke-width: 1.07; stroke: #DDDDDD; stroke-linecap: butt;' /> |
| <polyline points='225.01,183.40 225.01,176.36 ' style='stroke-width: 1.07; stroke: #DDDDDD; stroke-linecap: butt;' /> |
| <polyline points='290.56,77.78 290.56,70.74 ' style='stroke-width: 1.07; stroke: #DDDDDD; stroke-linecap: butt;' /> |
| <polyline points='290.56,74.26 282.48,74.26 ' style='stroke-width: 1.07; stroke: #DDDDDD; stroke-linecap: butt;' /> |
| <polyline points='282.48,77.78 282.48,70.74 ' style='stroke-width: 1.07; stroke: #DDDDDD; stroke-linecap: butt;' /> |
| <polyline points='172.80,359.44 172.80,352.40 ' style='stroke-width: 1.07; stroke: #DDDDDD; stroke-linecap: butt;' /> |
| <polyline points='172.80,355.92 168.92,355.92 ' style='stroke-width: 1.07; stroke: #DDDDDD; stroke-linecap: butt;' /> |
| <polyline points='168.92,359.44 168.92,352.40 ' style='stroke-width: 1.07; stroke: #DDDDDD; stroke-linecap: butt;' /> |
| <polyline points='224.99,253.81 224.99,246.77 ' style='stroke-width: 1.07; stroke: #DDDDDD; stroke-linecap: butt;' /> |
| <polyline points='224.99,250.29 217.72,250.29 ' style='stroke-width: 1.07; stroke: #DDDDDD; stroke-linecap: butt;' /> |
| <polyline points='217.72,253.81 217.72,246.77 ' style='stroke-width: 1.07; stroke: #DDDDDD; stroke-linecap: butt;' /> |
| <polyline points='226.48,218.61 226.48,211.57 ' style='stroke-width: 1.07; stroke: #DDDDDD; stroke-linecap: butt;' /> |
| <polyline points='226.48,215.09 219.16,215.09 ' style='stroke-width: 1.07; stroke: #DDDDDD; stroke-linecap: butt;' /> |
| <polyline points='219.16,218.61 219.16,211.57 ' style='stroke-width: 1.07; stroke: #DDDDDD; stroke-linecap: butt;' /> |
| <text x='262.43' y='147.36' style='font-size: 7.50px;fill: #555555; font-family: "Arial";' textLength='15.00px' lengthAdjust='spacingAndGlyphs'>43%</text> |
| <text x='207.83' y='288.19' style='font-size: 7.50px;fill: #555555; font-family: "Arial";' textLength='15.00px' lengthAdjust='spacingAndGlyphs'>19%</text> |
| <text x='279.24' y='112.15' style='font-size: 7.50px;fill: #555555; font-family: "Arial";' textLength='15.00px' lengthAdjust='spacingAndGlyphs'>50%</text> |
| <text x='185.96' y='323.40' style='font-size: 7.50px;fill: #555555; font-family: "Arial";' textLength='15.00px' lengthAdjust='spacingAndGlyphs'>10%</text> |
| <text x='234.77' y='182.57' style='font-size: 7.50px;fill: #555555; font-family: "Arial";' textLength='15.00px' lengthAdjust='spacingAndGlyphs'>31%</text> |
| <text x='292.52' y='76.95' style='font-size: 7.50px;fill: #555555; font-family: "Arial";' textLength='15.00px' lengthAdjust='spacingAndGlyphs'>55%</text> |
| <text x='175.20' y='358.61' style='font-size: 7.50px;fill: #555555; font-family: "Arial";' textLength='10.84px' lengthAdjust='spacingAndGlyphs'>6%</text> |
| <text x='227.35' y='252.98' style='font-size: 7.50px;fill: #555555; font-family: "Arial";' textLength='15.00px' lengthAdjust='spacingAndGlyphs'>28%</text> |
| <text x='228.82' y='217.78' style='font-size: 7.50px;fill: #555555; font-family: "Arial";' textLength='15.00px' lengthAdjust='spacingAndGlyphs'>28%</text> |
| </g> |
| <g clip-path='url(#cpMC4wMHw0MzIuMDB8MC4wMHw0MjUuNDI=)'> |
| <text x='151.69' y='358.79' text-anchor='end' style='font-size: 8.00px;fill: #666666; font-family: "Arial";' textLength='22.23px' lengthAdjust='spacingAndGlyphs'>Other:</text> |
| <text x='151.69' y='323.58' text-anchor='end' style='font-size: 8.00px;fill: #666666; font-family: "Arial";' textLength='127.23px' lengthAdjust='spacingAndGlyphs'>I wish I could use an exception here</text> |
| <text x='151.69' y='284.05' text-anchor='end' style='font-size: 8.00px;fill: #666666; font-family: "Arial";' textLength='100.96px' lengthAdjust='spacingAndGlyphs'>Errors in Go are too easy for</text> |
| <text x='151.69' y='292.69' text-anchor='end' style='font-size: 8.00px;fill: #666666; font-family: "Arial";' textLength='72.51px' lengthAdjust='spacingAndGlyphs'>developers to ignore</text> |
| <text x='151.69' y='253.16' text-anchor='end' style='font-size: 8.00px;fill: #666666; font-family: "Arial";' textLength='113.88px' lengthAdjust='spacingAndGlyphs'>I want to print a stack trace here</text> |
| <text x='151.69' y='213.64' text-anchor='end' style='font-size: 8.00px;fill: #666666; font-family: "Arial";' textLength='130.07px' lengthAdjust='spacingAndGlyphs'>It's hard to know which error types to</text> |
| <text x='151.69' y='222.28' text-anchor='end' style='font-size: 8.00px;fill: #666666; font-family: "Arial";' textLength='32.47px' lengthAdjust='spacingAndGlyphs'>check for</text> |
| <text x='151.69' y='169.79' text-anchor='end' style='font-size: 8.00px;fill: #666666; font-family: "Arial";' textLength='129.00px' lengthAdjust='spacingAndGlyphs'>I wish functions could return a single</text> |
| <text x='151.69' y='178.43' text-anchor='end' style='font-size: 8.00px;fill: #666666; font-family: "Arial";' textLength='126.33px' lengthAdjust='spacingAndGlyphs'>value containing either an error or a</text> |
| <text x='151.69' y='187.07' text-anchor='end' style='font-size: 8.00px;fill: #666666; font-family: "Arial";' textLength='106.04px' lengthAdjust='spacingAndGlyphs'>valid result (similar to Rust's ?</text> |
| <text x='151.69' y='195.71' text-anchor='end' style='font-size: 8.00px;fill: #666666; font-family: "Arial";' textLength='32.46px' lengthAdjust='spacingAndGlyphs'>operator)</text> |
| <text x='151.69' y='143.22' text-anchor='end' style='font-size: 8.00px;fill: #666666; font-family: "Arial";' textLength='128.57px' lengthAdjust='spacingAndGlyphs'>Go needs a lot of boilerplate code to</text> |
| <text x='151.69' y='151.86' text-anchor='end' style='font-size: 8.00px;fill: #666666; font-family: "Arial";' textLength='55.59px' lengthAdjust='spacingAndGlyphs'>check for errors</text> |
| <text x='151.69' y='108.01' text-anchor='end' style='font-size: 8.00px;fill: #666666; font-family: "Arial";' textLength='134.08px' lengthAdjust='spacingAndGlyphs'>Go's explicit error handling helped me</text> |
| <text x='151.69' y='116.65' text-anchor='end' style='font-size: 8.00px;fill: #666666; font-family: "Arial";' textLength='128.10px' lengthAdjust='spacingAndGlyphs'>know when to check for error values</text> |
| <text x='151.69' y='77.13' text-anchor='end' style='font-size: 8.00px;fill: #666666; font-family: "Arial";' textLength='130.97px' lengthAdjust='spacingAndGlyphs'>I like Go's approach to error handling</text> |
| <text x='156.63' y='387.71' text-anchor='middle' style='font-size: 8.00px;fill: #666666; font-family: "Arial";' textLength='11.56px' lengthAdjust='spacingAndGlyphs'>0%</text> |
| <text x='273.97' y='387.71' text-anchor='middle' style='font-size: 8.00px;fill: #666666; font-family: "Arial";' textLength='16.01px' lengthAdjust='spacingAndGlyphs'>50%</text> |
| <text x='391.32' y='387.71' text-anchor='middle' style='font-size: 8.00px;fill: #666666; font-family: "Arial";' textLength='20.46px' lengthAdjust='spacingAndGlyphs'>100%</text> |
| <text x='291.57' y='405.18' text-anchor='middle' style='font-size: 8.00px;fill: #666666; font-family: "Arial";' textLength='62.28px' lengthAdjust='spacingAndGlyphs'>% of respondents</text> |
| <text x='5.48' y='41.40' style='font-size: 8.00px;fill: #666666; font-family: "Arial";' textLength='73.40px' lengthAdjust='spacingAndGlyphs'>(select all that apply)</text> |
| <text x='5.48' y='17.66' style='font-size: 10.00px; font-weight: bold;fill: #333333; font-family: "Arial";' textLength='371.75px' lengthAdjust='spacingAndGlyphs'>Think about the last time you wrote or read error handling code in Go. Did you</text> |
| <text x='5.48' y='28.46' style='font-size: 10.00px; font-weight: bold;fill: #333333; font-family: "Arial";' textLength='159.47px' lengthAdjust='spacingAndGlyphs'>feel or think any of the following?</text> |
| <text x='426.52' y='418.17' text-anchor='end' style='font-size: 8.00px;fill: #999999; font-family: "Arial";' textLength='35.82px' lengthAdjust='spacingAndGlyphs'>n = 3,198</text> |
| </g> |
| </svg> |