{"id":8584,"date":"2024-02-22T18:22:29","date_gmt":"2024-02-22T18:22:29","guid":{"rendered":"https:\/\/www.satup.xyz\/index.php\/2024\/02\/22\/c-and-the-next-30-years-a-look-back-at-cpp-summit-2024-in-by-david-sankel-feb-2024\/"},"modified":"2024-02-22T18:22:29","modified_gmt":"2024-02-22T18:22:29","slug":"c-and-the-next-30-years-a-look-back-at-cpp-summit-2024-in-by-david-sankel-feb-2024","status":"publish","type":"post","link":"https:\/\/www.satup.xyz\/index.php\/2024\/02\/22\/c-and-the-next-30-years-a-look-back-at-cpp-summit-2024-in-by-david-sankel-feb-2024\/","title":{"rendered":"C++ and The Next 30 Years. A look back at CPP-Summit 2024 in\u2026 | by David Sankel | Feb, 2024"},"content":{"rendered":"<p><br \/>\n<\/p>\n<div>\n<div>\n<h2 id=\"33f0\" class=\"pw-subtitle-paragraph hq gs gt be b hr hs ht hu hv hw hx hy hz ia ib ic id ie if cp dt\">A look back at CPP-Summit 2024 in China.<\/h2>\n<div class=\"ig ih ii ij ik\">\n<div class=\"speechify-ignore ab co\">\n<div class=\"speechify-ignore bg l\">\n<div class=\"il im in io ip ab\">\n<div>\n<div class=\"ab iq\"><a href=\"https:\/\/medium.com\/@dsankel?source=post_page-----47c3b3b8fe98--------------------------------\" rel=\"noopener follow\"><\/p>\n<div>\n<div class=\"bl\" aria-hidden=\"false\">\n<div class=\"l ir is bx it iu\">\n<div class=\"l fi\"><img loading=\"lazy\" decoding=\"async\" alt=\"David Sankel\" class=\"l fc bx dc dd cw\" src=\"https:\/\/miro.medium.com\/v2\/resize:fill:88:88\/1*HjYcgF7qKR4MLOKj7LUdyA.jpeg\" width=\"44\" height=\"44\" loading=\"lazy\" data-testid=\"authorPhoto\"\/><\/div>\n<\/div>\n<\/div>\n<\/div>\n<p><\/a><a href=\"https:\/\/blog.developer.adobe.com\/?source=post_page-----47c3b3b8fe98--------------------------------\" rel=\"noopener  ugc nofollow\"><\/p>\n<div class=\"ix ab fi\">\n<div>\n<div class=\"bl\" aria-hidden=\"false\">\n<div class=\"l iy iz bx it ja\">\n<div class=\"l fi\"><img loading=\"lazy\" decoding=\"async\" alt=\"Adobe Tech Blog\" class=\"l fc bx bq jb cw\" src=\"https:\/\/miro.medium.com\/v2\/resize:fill:48:48\/1*riyFijvwTfGcWNf1guRNtg.png\" width=\"24\" height=\"24\" loading=\"lazy\" data-testid=\"publicationPhoto\"\/><\/div>\n<\/div>\n<\/div>\n<\/div>\n<\/div>\n<p><\/a><\/div>\n<\/div>\n<\/div>\n<\/div>\n<\/div>\n<\/div>\n<\/div>\n<p id=\"71c2\" class=\"pw-post-body-paragraph nl nm gt nn b hr no np nq hu nr ns nt nu nv nw nx ny nz oa ob oc od oe of og gm bj\">I delivered a keynote, <em class=\"oh\">C++ and the Next 30 Years<\/em>, at the 2024 CPP-Summit conference in Beijing, China. Experiencing the culture, the people, and the landscape was tremendous. In this post I\u2019ll cover some of the points in my future-looking C++ talk and share my experience giving a talk for the first time in China.<\/p>\n<p id=\"fa86\" class=\"pw-post-body-paragraph nl nm gt nn b hr pe np nq hu pf ns nt nu pg nw nx ny ph oa ob oc pi oe of og gm bj\">The title of my keynote was <em class=\"oh\">C++ and the Next 30 Years<\/em> which covered C++\u2019s evolution, the changing landscape of programming languages, and the influence of AI. Here I break down some of my talk\u2019s key points.<\/p>\n<h2 id=\"614c\" class=\"pj oj gt be ok pk pl dx on pm pn dz oq nu po pp pq ny pr ps pt oc pu pv pw px bj\">The next 10 years<\/h2>\n<p id=\"c5e5\" class=\"pw-post-body-paragraph nl nm gt nn b hr pe np nq hu pf ns nt nu pg nw nx ny ph oa ob oc pi oe of og gm bj\">In the next 10 years I expect C++ modules to become more accessible. Most C++ vendors have at least some support and CMake <a class=\"af py\" href=\"https:\/\/www.kitware.com\/import-cmake-the-experiment-is-over\/\" rel=\"noopener ugc nofollow\" target=\"_blank\">recently announced<\/a> its feature set. However, transitioning existing code bases and, in many instances, bespoke build systems will be a great obstacle.<\/p>\n<p id=\"e8cb\" class=\"pw-post-body-paragraph nl nm gt nn b hr no np nq hu nr ns nt nu nv nw nx ny nz oa ob oc od oe of og gm bj\">Package manager usage is on the rise, but the growth curve is slow. I don\u2019t expect any tool to capture more than 40% market share by the decade\u2019s end.<\/p>\n<figure class=\"qc qd qe qf qg qh pz qa paragraph-image\">\n<div role=\"button\" tabindex=\"0\" class=\"qi qj fi qk bg ql\">\n<div class=\"pz qa qb\"><picture><source srcset=\"https:\/\/miro.medium.com\/v2\/resize:fit:640\/format:webp\/1*LAJcLxh49_xtdEkfzTG-0g.png 640w, https:\/\/miro.medium.com\/v2\/resize:fit:720\/format:webp\/1*LAJcLxh49_xtdEkfzTG-0g.png 720w, https:\/\/miro.medium.com\/v2\/resize:fit:750\/format:webp\/1*LAJcLxh49_xtdEkfzTG-0g.png 750w, https:\/\/miro.medium.com\/v2\/resize:fit:786\/format:webp\/1*LAJcLxh49_xtdEkfzTG-0g.png 786w, https:\/\/miro.medium.com\/v2\/resize:fit:828\/format:webp\/1*LAJcLxh49_xtdEkfzTG-0g.png 828w, https:\/\/miro.medium.com\/v2\/resize:fit:1100\/format:webp\/1*LAJcLxh49_xtdEkfzTG-0g.png 1100w, https:\/\/miro.medium.com\/v2\/resize:fit:1400\/format:webp\/1*LAJcLxh49_xtdEkfzTG-0g.png 1400w\" sizes=\"(min-resolution: 4dppx) and (max-width: 700px) 50vw, (-webkit-min-device-pixel-ratio: 4) and (max-width: 700px) 50vw, (min-resolution: 3dppx) and (max-width: 700px) 67vw, (-webkit-min-device-pixel-ratio: 3) and (max-width: 700px) 65vw, (min-resolution: 2.5dppx) and (max-width: 700px) 80vw, (-webkit-min-device-pixel-ratio: 2.5) and (max-width: 700px) 80vw, (min-resolution: 2dppx) and (max-width: 700px) 100vw, (-webkit-min-device-pixel-ratio: 2) and (max-width: 700px) 100vw, 700px\" type=\"image\/webp\"\/><source data-testid=\"og\" srcset=\"https:\/\/miro.medium.com\/v2\/resize:fit:640\/1*LAJcLxh49_xtdEkfzTG-0g.png 640w, https:\/\/miro.medium.com\/v2\/resize:fit:720\/1*LAJcLxh49_xtdEkfzTG-0g.png 720w, https:\/\/miro.medium.com\/v2\/resize:fit:750\/1*LAJcLxh49_xtdEkfzTG-0g.png 750w, https:\/\/miro.medium.com\/v2\/resize:fit:786\/1*LAJcLxh49_xtdEkfzTG-0g.png 786w, https:\/\/miro.medium.com\/v2\/resize:fit:828\/1*LAJcLxh49_xtdEkfzTG-0g.png 828w, https:\/\/miro.medium.com\/v2\/resize:fit:1100\/1*LAJcLxh49_xtdEkfzTG-0g.png 1100w, https:\/\/miro.medium.com\/v2\/resize:fit:1400\/1*LAJcLxh49_xtdEkfzTG-0g.png 1400w\" sizes=\"(min-resolution: 4dppx) and (max-width: 700px) 50vw, (-webkit-min-device-pixel-ratio: 4) and (max-width: 700px) 50vw, (min-resolution: 3dppx) and (max-width: 700px) 67vw, (-webkit-min-device-pixel-ratio: 3) and (max-width: 700px) 65vw, (min-resolution: 2.5dppx) and (max-width: 700px) 80vw, (-webkit-min-device-pixel-ratio: 2.5) and (max-width: 700px) 80vw, (min-resolution: 2dppx) and (max-width: 700px) 100vw, (-webkit-min-device-pixel-ratio: 2) and (max-width: 700px) 100vw, 700px\"\/><img loading=\"lazy\" alt=\"\" class=\"bg ms qm c\" width=\"700\" height=\"535\" loading=\"lazy\" role=\"presentation\"\/><\/picture><\/div>\n<\/div>\n<\/figure>\n<p id=\"3e47\" class=\"pw-post-body-paragraph nl nm gt nn b hr no np nq hu nr ns nt nu nv nw nx ny nz oa ob oc od oe of og gm bj\">In the C++ feature department, we can expect <a class=\"af py\" href=\"https:\/\/www.open-std.org\/JTC1\/SC22\/WG21\/docs\/papers\/2023\/p2996r1.html\" rel=\"noopener ugc nofollow\" target=\"_blank\">static reflection<\/a>, pattern matching, <a class=\"af py\" href=\"https:\/\/www.open-std.org\/JTC1\/SC22\/WG21\/docs\/papers\/2024\/p2900r4.pdf\" rel=\"noopener ugc nofollow\" target=\"_blank\">contracts<\/a>, and <a class=\"af py\" href=\"https:\/\/www.open-std.org\/JTC1\/SC22\/WG21\/docs\/papers\/2023\/p2300r7.html\" rel=\"noopener ugc nofollow\" target=\"_blank\">sender\/receiver<\/a> to become available over the next decade.<\/p>\n<p id=\"9753\" class=\"pw-post-body-paragraph nl nm gt nn b hr no np nq hu nr ns nt nu nv nw nx ny nz oa ob oc od oe of og gm bj\">AI-assisted coding is following the well-trodden <a class=\"af py\" href=\"https:\/\/en.wikipedia.org\/wiki\/Gartner_hype_cycle\" rel=\"noopener ugc nofollow\" target=\"_blank\">Gartner hype cycle<\/a> where inflated expectations precede an ultimate plateau of productivity. While we\u2019re thankfully past the idea that AI-backed productivity gains will result in massive Software Engineering workforce reductions, I don\u2019t think it is yet clear to what extent AI will improve software development productivity.<\/p>\n<p id=\"73fb\" class=\"pw-post-body-paragraph nl nm gt nn b hr no np nq hu nr ns nt nu nv nw nx ny nz oa ob oc od oe of og gm bj\">Another major factor over the next 10 years will be the growing usage of Rust by C++ developers. The following graph illustrates the increasing percentage of C++ users that also use Rust based on data from StackOverflow annual surveys. A conservative linear projection results in 50% of C++ developers also using Rust in 10 years.<\/p>\n<figure class=\"qc qd qe qf qg qh pz qa paragraph-image\">\n<div role=\"button\" tabindex=\"0\" class=\"qi qj fi qk bg ql\">\n<div class=\"pz qa qn\"><picture><source srcset=\"https:\/\/miro.medium.com\/v2\/resize:fit:640\/format:webp\/1*hsbgpuwQLPOF0vx8npDjiQ.png 640w, https:\/\/miro.medium.com\/v2\/resize:fit:720\/format:webp\/1*hsbgpuwQLPOF0vx8npDjiQ.png 720w, https:\/\/miro.medium.com\/v2\/resize:fit:750\/format:webp\/1*hsbgpuwQLPOF0vx8npDjiQ.png 750w, https:\/\/miro.medium.com\/v2\/resize:fit:786\/format:webp\/1*hsbgpuwQLPOF0vx8npDjiQ.png 786w, https:\/\/miro.medium.com\/v2\/resize:fit:828\/format:webp\/1*hsbgpuwQLPOF0vx8npDjiQ.png 828w, https:\/\/miro.medium.com\/v2\/resize:fit:1100\/format:webp\/1*hsbgpuwQLPOF0vx8npDjiQ.png 1100w, https:\/\/miro.medium.com\/v2\/resize:fit:1400\/format:webp\/1*hsbgpuwQLPOF0vx8npDjiQ.png 1400w\" sizes=\"(min-resolution: 4dppx) and (max-width: 700px) 50vw, (-webkit-min-device-pixel-ratio: 4) and (max-width: 700px) 50vw, (min-resolution: 3dppx) and (max-width: 700px) 67vw, (-webkit-min-device-pixel-ratio: 3) and (max-width: 700px) 65vw, (min-resolution: 2.5dppx) and (max-width: 700px) 80vw, (-webkit-min-device-pixel-ratio: 2.5) and (max-width: 700px) 80vw, (min-resolution: 2dppx) and (max-width: 700px) 100vw, (-webkit-min-device-pixel-ratio: 2) and (max-width: 700px) 100vw, 700px\" type=\"image\/webp\"\/><source data-testid=\"og\" srcset=\"https:\/\/miro.medium.com\/v2\/resize:fit:640\/1*hsbgpuwQLPOF0vx8npDjiQ.png 640w, https:\/\/miro.medium.com\/v2\/resize:fit:720\/1*hsbgpuwQLPOF0vx8npDjiQ.png 720w, https:\/\/miro.medium.com\/v2\/resize:fit:750\/1*hsbgpuwQLPOF0vx8npDjiQ.png 750w, https:\/\/miro.medium.com\/v2\/resize:fit:786\/1*hsbgpuwQLPOF0vx8npDjiQ.png 786w, https:\/\/miro.medium.com\/v2\/resize:fit:828\/1*hsbgpuwQLPOF0vx8npDjiQ.png 828w, https:\/\/miro.medium.com\/v2\/resize:fit:1100\/1*hsbgpuwQLPOF0vx8npDjiQ.png 1100w, https:\/\/miro.medium.com\/v2\/resize:fit:1400\/1*hsbgpuwQLPOF0vx8npDjiQ.png 1400w\" sizes=\"(min-resolution: 4dppx) and (max-width: 700px) 50vw, (-webkit-min-device-pixel-ratio: 4) and (max-width: 700px) 50vw, (min-resolution: 3dppx) and (max-width: 700px) 67vw, (-webkit-min-device-pixel-ratio: 3) and (max-width: 700px) 65vw, (min-resolution: 2.5dppx) and (max-width: 700px) 80vw, (-webkit-min-device-pixel-ratio: 2.5) and (max-width: 700px) 80vw, (min-resolution: 2dppx) and (max-width: 700px) 100vw, (-webkit-min-device-pixel-ratio: 2) and (max-width: 700px) 100vw, 700px\"\/><img loading=\"lazy\" alt=\"\" class=\"bg ms qm c\" width=\"700\" height=\"551\" loading=\"lazy\" role=\"presentation\"\/><\/picture><\/div>\n<\/div>\n<\/figure>\n<h2 id=\"b3bf\" class=\"pj oj gt be ok pk pl dx on pm pn dz oq nu po pp pq ny pr ps pt oc pu pv pw px bj\">C++ in 10 to 20 years<\/h2>\n<p id=\"57c0\" class=\"pw-post-body-paragraph nl nm gt nn b hr pe np nq hu pf ns nt nu pg nw nx ny ph oa ob oc pi oe of og gm bj\">C++\u2019s complexity is increasing, and the impact on training costs and attractiveness to new developers will be especially apparent in 10\u201320 years. Compare a snippet of C++11 code to a potential equivalent in C++32:<\/p>\n<pre class=\"qc qd qe qf qg qo qp qq bo qr ba bj\"><span id=\"9634\" class=\"qs oj gt qp b bf qt qu l qv qw\">#include &lt;iostream&gt;<p>class C {<br\/>std::string j;<br\/>};<br\/>std::ostream&amp; operator&lt;&lt;(std::ostream&amp;os,<br\/>const C &amp;c) {<br\/>return os &lt;&lt; j;<br\/>}<\/p><\/span><\/pre>\n<pre class=\"qx qo qp qq bo qr ba bj\"><span id=\"1ec4\" class=\"qs oj gt qp b bf qt qu l qv qw\">import std; \/\/ Modules, something to know in addition to #include<p>\/\/ Metaclasses feature?<br\/>class(propagate_allocator) C {<br\/>std::pmr2::string j; \/\/ Another std::string vocabulary type?<br\/>};<\/p><p>\/\/ Formatters are preferred to stream operators since C++20<br\/>template &lt;&gt;<br\/>struct std::formatter&lt;C&gt; {<br\/>constexpr auto parse(<br\/>std::format_parse_context&amp; ctx) {<br\/>return ctx.begin();<br\/>}<br\/>auto format(const C&amp; x,<br\/>std::format_context&amp; ctx) const {<br\/>return std::format_to(ctx.out(), \"{}\", x.j);<br\/>}<br\/>};<\/p><\/span><\/pre>\n<p id=\"5f84\" class=\"pw-post-body-paragraph nl nm gt nn b hr no np nq hu nr ns nt nu nv nw nx ny nz oa ob oc od oe of og gm bj\">And this doesn\u2019t even touch on the complexity of concepts, constexpr, contracts, and other features.<\/p>\n<p id=\"ae8e\" class=\"pw-post-body-paragraph nl nm gt nn b hr no np nq hu nr ns nt nu nv nw nx ny nz oa ob oc od oe of og gm bj\">One might wonder if today\u2019s C++ successor hopefuls \u2014 Hylo, Swift, Cpp2, Carbon, Zig, Mojo, and Rust \u2014 will gain more traction at this time. Swift and Rust are likely to remain due to the world\u2019s existing dependence on them. For the others, to achieve significant adoption they\u2019ll need something like 10 years of continuous investment. Unfortunately, difficulties maintaining momentum makes success unlikely (See <a class=\"af py\" href=\"https:\/\/www.youtube.com\/watch?v=XZ3w_jec1v8\" rel=\"noopener ugc nofollow\" target=\"_blank\">The Economics of Programming Languages<\/a> by Evan Czaplicki).<\/p>\n<p id=\"651d\" class=\"pw-post-body-paragraph nl nm gt nn b hr no np nq hu nr ns nt nu nv nw nx ny nz oa ob oc od oe of og gm bj\">C++ will remain important in niches, companies with large existing C++ code bases, and surrounding software assets no one wants to rewrite. For the latter, consider the continued popularity of LAPACK, a useful and sophisticated linear algebra package, long after its Fortran programming language lost favor.<\/p>\n<p id=\"7294\" class=\"pw-post-body-paragraph nl nm gt nn b hr no np nq hu nr ns nt nu nv nw nx ny nz oa ob oc od oe of og gm bj\">In the 10\u201320 year timeframe a few industry shifts will start to take hold. First, memory safety legislation will make usage of C and C++ for new projects require special justification and oversight. Safety-critical applications will see C++ entirely phased out. Second, software engineering as an engineering discipline will mature with regulatory oversight, inspections, and enforcement of best practices becoming commonplace. Finally, on the application side, AI will become the dominant form of human-computer interaction.<\/p>\n<h2 id=\"26cd\" class=\"pj oj gt be ok pk pl dx on pm pn dz oq nu po pp pq ny pr ps pt oc pu pv pw px bj\">C++ in 20 to 30 years<\/h2>\n<p id=\"adde\" class=\"pw-post-body-paragraph nl nm gt nn b hr pe np nq hu pf ns nt nu pg nw nx ny ph oa ob oc pi oe of og gm bj\">This period is difficult to predict, but the world will likely remain highly dependent on complicated and memory-unsafe C++. However, rather than people, AI will be doing most of the coding; it will find and fix defects and we\u2019ll trust it to do so. While rewriting C++ code into a more suitable programming language may be proposed, such efforts will be deemed risky and expensive. C++ will live on like the imperial measurement system in the USA.<\/p>\n<p id=\"5ade\" class=\"pw-post-body-paragraph nl nm gt nn b hr pe np nq hu pf ns nt nu pg nw nx ny ph oa ob oc pi oe of og gm bj\">At first glance, CPP-Summit looked like any other C++ conference: you\u2019ve got vendor booths, conference rooms, swag, etc. A notable difference was a curious tray of electronic devices lingering on a table. As I came to find out, those were earpieces that transmit live translations of English-speaking presenters. As a speaker, I also made use of one to hear audience questions on a panel.<\/p>\n<figure class=\"qc qd qe qf qg qh pz qa paragraph-image\">\n<div role=\"button\" tabindex=\"0\" class=\"qi qj fi qk bg ql\">\n<div class=\"pz qa qy\"><picture><source srcset=\"https:\/\/miro.medium.com\/v2\/resize:fit:640\/format:webp\/1*h2T1TFPlu7TkjPnd84fU0w.jpeg 640w, https:\/\/miro.medium.com\/v2\/resize:fit:720\/format:webp\/1*h2T1TFPlu7TkjPnd84fU0w.jpeg 720w, https:\/\/miro.medium.com\/v2\/resize:fit:750\/format:webp\/1*h2T1TFPlu7TkjPnd84fU0w.jpeg 750w, https:\/\/miro.medium.com\/v2\/resize:fit:786\/format:webp\/1*h2T1TFPlu7TkjPnd84fU0w.jpeg 786w, https:\/\/miro.medium.com\/v2\/resize:fit:828\/format:webp\/1*h2T1TFPlu7TkjPnd84fU0w.jpeg 828w, https:\/\/miro.medium.com\/v2\/resize:fit:1100\/format:webp\/1*h2T1TFPlu7TkjPnd84fU0w.jpeg 1100w, https:\/\/miro.medium.com\/v2\/resize:fit:1400\/format:webp\/1*h2T1TFPlu7TkjPnd84fU0w.jpeg 1400w\" sizes=\"(min-resolution: 4dppx) and (max-width: 700px) 50vw, (-webkit-min-device-pixel-ratio: 4) and (max-width: 700px) 50vw, (min-resolution: 3dppx) and (max-width: 700px) 67vw, (-webkit-min-device-pixel-ratio: 3) and (max-width: 700px) 65vw, (min-resolution: 2.5dppx) and (max-width: 700px) 80vw, (-webkit-min-device-pixel-ratio: 2.5) and (max-width: 700px) 80vw, (min-resolution: 2dppx) and (max-width: 700px) 100vw, (-webkit-min-device-pixel-ratio: 2) and (max-width: 700px) 100vw, 700px\" type=\"image\/webp\"\/><source data-testid=\"og\" srcset=\"https:\/\/miro.medium.com\/v2\/resize:fit:640\/1*h2T1TFPlu7TkjPnd84fU0w.jpeg 640w, https:\/\/miro.medium.com\/v2\/resize:fit:720\/1*h2T1TFPlu7TkjPnd84fU0w.jpeg 720w, https:\/\/miro.medium.com\/v2\/resize:fit:750\/1*h2T1TFPlu7TkjPnd84fU0w.jpeg 750w, https:\/\/miro.medium.com\/v2\/resize:fit:786\/1*h2T1TFPlu7TkjPnd84fU0w.jpeg 786w, https:\/\/miro.medium.com\/v2\/resize:fit:828\/1*h2T1TFPlu7TkjPnd84fU0w.jpeg 828w, https:\/\/miro.medium.com\/v2\/resize:fit:1100\/1*h2T1TFPlu7TkjPnd84fU0w.jpeg 1100w, https:\/\/miro.medium.com\/v2\/resize:fit:1400\/1*h2T1TFPlu7TkjPnd84fU0w.jpeg 1400w\" sizes=\"(min-resolution: 4dppx) and (max-width: 700px) 50vw, (-webkit-min-device-pixel-ratio: 4) and (max-width: 700px) 50vw, (min-resolution: 3dppx) and (max-width: 700px) 67vw, (-webkit-min-device-pixel-ratio: 3) and (max-width: 700px) 65vw, (min-resolution: 2.5dppx) and (max-width: 700px) 80vw, (-webkit-min-device-pixel-ratio: 2.5) and (max-width: 700px) 80vw, (min-resolution: 2dppx) and (max-width: 700px) 100vw, (-webkit-min-device-pixel-ratio: 2) and (max-width: 700px) 100vw, 700px\"\/><img loading=\"lazy\" alt=\"\" class=\"bg ms qm c\" width=\"700\" height=\"467\" loading=\"lazy\" role=\"presentation\"\/><\/picture><\/div>\n<\/div>\n<\/figure>\n<p id=\"916d\" class=\"pw-post-body-paragraph nl nm gt nn b hr no np nq hu nr ns nt nu nv nw nx ny nz oa ob oc od oe of og gm bj\">As a speaker from another country, I couldn\u2019t have been better taken care of. I was offered accompaniment at meals, a guide to show me the sites in Beijing, and even some small souvenirs to give my kids when I returned. I\u2019m incredibly grateful to Jason Li, Raymond, Yongwei Wu, and Li Monan for being such gracious hosts.<\/p>\n<figure class=\"qc qd qe qf qg qh pz qa paragraph-image\">\n<div role=\"button\" tabindex=\"0\" class=\"qi qj fi qk bg ql\">\n<div class=\"pz qa qz\"><picture><source srcset=\"https:\/\/miro.medium.com\/v2\/resize:fit:640\/format:webp\/1*3Rj81GMrZ-SQDifrca5tPw.jpeg 640w, https:\/\/miro.medium.com\/v2\/resize:fit:720\/format:webp\/1*3Rj81GMrZ-SQDifrca5tPw.jpeg 720w, https:\/\/miro.medium.com\/v2\/resize:fit:750\/format:webp\/1*3Rj81GMrZ-SQDifrca5tPw.jpeg 750w, https:\/\/miro.medium.com\/v2\/resize:fit:786\/format:webp\/1*3Rj81GMrZ-SQDifrca5tPw.jpeg 786w, https:\/\/miro.medium.com\/v2\/resize:fit:828\/format:webp\/1*3Rj81GMrZ-SQDifrca5tPw.jpeg 828w, https:\/\/miro.medium.com\/v2\/resize:fit:1100\/format:webp\/1*3Rj81GMrZ-SQDifrca5tPw.jpeg 1100w, https:\/\/miro.medium.com\/v2\/resize:fit:1400\/format:webp\/1*3Rj81GMrZ-SQDifrca5tPw.jpeg 1400w\" sizes=\"(min-resolution: 4dppx) and (max-width: 700px) 50vw, (-webkit-min-device-pixel-ratio: 4) and (max-width: 700px) 50vw, (min-resolution: 3dppx) and (max-width: 700px) 67vw, (-webkit-min-device-pixel-ratio: 3) and (max-width: 700px) 65vw, (min-resolution: 2.5dppx) and (max-width: 700px) 80vw, (-webkit-min-device-pixel-ratio: 2.5) and (max-width: 700px) 80vw, (min-resolution: 2dppx) and (max-width: 700px) 100vw, (-webkit-min-device-pixel-ratio: 2) and (max-width: 700px) 100vw, 700px\" type=\"image\/webp\"\/><source data-testid=\"og\" srcset=\"https:\/\/miro.medium.com\/v2\/resize:fit:640\/1*3Rj81GMrZ-SQDifrca5tPw.jpeg 640w, https:\/\/miro.medium.com\/v2\/resize:fit:720\/1*3Rj81GMrZ-SQDifrca5tPw.jpeg 720w, https:\/\/miro.medium.com\/v2\/resize:fit:750\/1*3Rj81GMrZ-SQDifrca5tPw.jpeg 750w, https:\/\/miro.medium.com\/v2\/resize:fit:786\/1*3Rj81GMrZ-SQDifrca5tPw.jpeg 786w, https:\/\/miro.medium.com\/v2\/resize:fit:828\/1*3Rj81GMrZ-SQDifrca5tPw.jpeg 828w, https:\/\/miro.medium.com\/v2\/resize:fit:1100\/1*3Rj81GMrZ-SQDifrca5tPw.jpeg 1100w, https:\/\/miro.medium.com\/v2\/resize:fit:1400\/1*3Rj81GMrZ-SQDifrca5tPw.jpeg 1400w\" sizes=\"(min-resolution: 4dppx) and (max-width: 700px) 50vw, (-webkit-min-device-pixel-ratio: 4) and (max-width: 700px) 50vw, (min-resolution: 3dppx) and (max-width: 700px) 67vw, (-webkit-min-device-pixel-ratio: 3) and (max-width: 700px) 65vw, (min-resolution: 2.5dppx) and (max-width: 700px) 80vw, (-webkit-min-device-pixel-ratio: 2.5) and (max-width: 700px) 80vw, (min-resolution: 2dppx) and (max-width: 700px) 100vw, (-webkit-min-device-pixel-ratio: 2) and (max-width: 700px) 100vw, 700px\"\/><img loading=\"lazy\" alt=\"\" class=\"bg ms qm c\" width=\"700\" height=\"525\" loading=\"lazy\" role=\"presentation\"\/><\/picture><\/div>\n<\/div>\n<\/figure>\n<p id=\"99ba\" class=\"pw-post-body-paragraph nl nm gt nn b hr no np nq hu nr ns nt nu nv nw nx ny nz oa ob oc od oe of og gm bj\">I learned that it\u2019s still relatively rare for folks from other countries to give talks in China and many even wanted photographs of me to mark the occasion. Below is a photograph of myself with Yanfei Zhang, a Chinese book author.<\/p>\n<figure class=\"qc qd qe qf qg qh pz qa paragraph-image\">\n<div role=\"button\" tabindex=\"0\" class=\"qi qj fi qk bg ql\">\n<div class=\"pz qa ra\"><picture><source srcset=\"https:\/\/miro.medium.com\/v2\/resize:fit:640\/format:webp\/1*AUdaD8Hs344Kypg88SqaKQ.png 640w, https:\/\/miro.medium.com\/v2\/resize:fit:720\/format:webp\/1*AUdaD8Hs344Kypg88SqaKQ.png 720w, https:\/\/miro.medium.com\/v2\/resize:fit:750\/format:webp\/1*AUdaD8Hs344Kypg88SqaKQ.png 750w, https:\/\/miro.medium.com\/v2\/resize:fit:786\/format:webp\/1*AUdaD8Hs344Kypg88SqaKQ.png 786w, https:\/\/miro.medium.com\/v2\/resize:fit:828\/format:webp\/1*AUdaD8Hs344Kypg88SqaKQ.png 828w, https:\/\/miro.medium.com\/v2\/resize:fit:1100\/format:webp\/1*AUdaD8Hs344Kypg88SqaKQ.png 1100w, https:\/\/miro.medium.com\/v2\/resize:fit:1400\/format:webp\/1*AUdaD8Hs344Kypg88SqaKQ.png 1400w\" sizes=\"(min-resolution: 4dppx) and (max-width: 700px) 50vw, (-webkit-min-device-pixel-ratio: 4) and (max-width: 700px) 50vw, (min-resolution: 3dppx) and (max-width: 700px) 67vw, (-webkit-min-device-pixel-ratio: 3) and (max-width: 700px) 65vw, (min-resolution: 2.5dppx) and (max-width: 700px) 80vw, (-webkit-min-device-pixel-ratio: 2.5) and (max-width: 700px) 80vw, (min-resolution: 2dppx) and (max-width: 700px) 100vw, (-webkit-min-device-pixel-ratio: 2) and (max-width: 700px) 100vw, 700px\" type=\"image\/webp\"\/><source data-testid=\"og\" srcset=\"https:\/\/miro.medium.com\/v2\/resize:fit:640\/1*AUdaD8Hs344Kypg88SqaKQ.png 640w, https:\/\/miro.medium.com\/v2\/resize:fit:720\/1*AUdaD8Hs344Kypg88SqaKQ.png 720w, https:\/\/miro.medium.com\/v2\/resize:fit:750\/1*AUdaD8Hs344Kypg88SqaKQ.png 750w, https:\/\/miro.medium.com\/v2\/resize:fit:786\/1*AUdaD8Hs344Kypg88SqaKQ.png 786w, https:\/\/miro.medium.com\/v2\/resize:fit:828\/1*AUdaD8Hs344Kypg88SqaKQ.png 828w, https:\/\/miro.medium.com\/v2\/resize:fit:1100\/1*AUdaD8Hs344Kypg88SqaKQ.png 1100w, https:\/\/miro.medium.com\/v2\/resize:fit:1400\/1*AUdaD8Hs344Kypg88SqaKQ.png 1400w\" sizes=\"(min-resolution: 4dppx) and (max-width: 700px) 50vw, (-webkit-min-device-pixel-ratio: 4) and (max-width: 700px) 50vw, (min-resolution: 3dppx) and (max-width: 700px) 67vw, (-webkit-min-device-pixel-ratio: 3) and (max-width: 700px) 65vw, (min-resolution: 2.5dppx) and (max-width: 700px) 80vw, (-webkit-min-device-pixel-ratio: 2.5) and (max-width: 700px) 80vw, (min-resolution: 2dppx) and (max-width: 700px) 100vw, (-webkit-min-device-pixel-ratio: 2) and (max-width: 700px) 100vw, 700px\"\/><img loading=\"lazy\" alt=\"\" class=\"bg ms qm c\" width=\"700\" height=\"423\" loading=\"lazy\" role=\"presentation\"\/><\/picture><\/div>\n<\/div>\n<\/figure>\n<p id=\"ff27\" class=\"pw-post-body-paragraph nl nm gt nn b hr no np nq hu nr ns nt nu nv nw nx ny nz oa ob oc od oe of og gm bj\">The one challenge I encountered was the <a class=\"af py\" href=\"https:\/\/en.wikipedia.org\/wiki\/Great_Firewall\" rel=\"noopener ugc nofollow\" target=\"_blank\">Great Firewall<\/a>, which blocks access to staples such as Google, GMail, and Slack. While this meant no Wikipedia (right when I needed it the most \u2014 to learn more about China!) I came to see lack of email access as a positive; more time to focus on the conference itself.<\/p>\n<p id=\"f39f\" class=\"pw-post-body-paragraph nl nm gt nn b hr no np nq hu nr ns nt nu nv nw nx ny nz oa ob oc od oe of og gm bj\">It was interesting to learn about the Chinese Software Developer Network (<a class=\"af py\" href=\"https:\/\/www.csdn.net\/\" rel=\"noopener ugc nofollow\" target=\"_blank\">CSDN<\/a>), China\u2019s most popular developer portal. It provides a Github alternative (<a class=\"af py\" href=\"https:\/\/gitcode.com\/\" rel=\"noopener ugc nofollow\" target=\"_blank\">gitcode.com<\/a>), a cloud-development platform (<a class=\"af py\" href=\"https:\/\/inscode.csdn.net\/\" rel=\"noopener ugc nofollow\" target=\"_blank\">InsCode<\/a>), a code-generating AI bot (<a class=\"af py\" href=\"https:\/\/so.csdn.net\/chat?utm_source=vip_chatgpt_common_pc_toolbar&amp;spm=1000.2115.3001.10025\" rel=\"noopener ugc nofollow\" target=\"_blank\">so.csdn.net<\/a>), and much more. I also had the pleasure of meeting CSDN\u2019s founder, Jiang Tao.<\/p>\n<p id=\"9209\" class=\"pw-post-body-paragraph nl nm gt nn b hr pe np nq hu pf ns nt nu pg nw nx ny ph oa ob oc pi oe of og gm bj\">In this post I\u2019ve talked about speaking in China and outlined the content of my <em class=\"oh\">C++ and the Next 30 Years<\/em> talk. Speaking at the conference was of great cultural interest, and ruminating on the future of C++ is fun in any context \ud83d\ude42<\/p>\n<p id=\"0c7f\" class=\"pw-post-body-paragraph nl nm gt nn b hr no np nq hu nr ns nt nu nv nw nx ny nz oa ob oc od oe of og gm bj\"><a class=\"af py\" href=\"https:\/\/developer.adobe.com\/cpp\/\" rel=\"noopener ugc nofollow\" target=\"_blank\"><em class=\"oh\">Learn more about C++ at Adobe<\/em><\/a><em class=\"oh\"> including training, events, and careers.<\/em><\/p>\n<\/div>\n<p><br \/>\n<br \/><a href=\"https:\/\/blog.developer.adobe.com\/c-and-the-next-30-years-47c3b3b8fe98?source=rss----9342990108af---4\">Source link <\/a><\/p>\n","protected":false},"excerpt":{"rendered":"<p>A look back at CPP-Summit 2024 in China. I delivered a keynote, C++ and the Next 30 Years, at the 2024 CPP-Summit conference in Beijing, China. Experiencing the culture, the people, and the landscape was tremendous. In this post I\u2019ll cover some of the points in my future-looking C++ talk and share my experience giving [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":8585,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"inline_featured_image":false,"_monsterinsights_skip_tracking":false,"_monsterinsights_sitenote_active":false,"_monsterinsights_sitenote_note":"","_monsterinsights_sitenote_category":0,"footnotes":""},"categories":[19],"tags":[],"class_list":["post-8584","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-graphics-design"],"aioseo_notices":[],"_links":{"self":[{"href":"https:\/\/www.satup.xyz\/index.php\/wp-json\/wp\/v2\/posts\/8584","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.satup.xyz\/index.php\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.satup.xyz\/index.php\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.satup.xyz\/index.php\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.satup.xyz\/index.php\/wp-json\/wp\/v2\/comments?post=8584"}],"version-history":[{"count":0,"href":"https:\/\/www.satup.xyz\/index.php\/wp-json\/wp\/v2\/posts\/8584\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.satup.xyz\/index.php\/wp-json\/wp\/v2\/media\/8585"}],"wp:attachment":[{"href":"https:\/\/www.satup.xyz\/index.php\/wp-json\/wp\/v2\/media?parent=8584"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.satup.xyz\/index.php\/wp-json\/wp\/v2\/categories?post=8584"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.satup.xyz\/index.php\/wp-json\/wp\/v2\/tags?post=8584"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}