It's time to landfill


I never thought that this would happen to me, but it seems that I burned out. And I'm dumb. Yes, this is another article about burnout.


I was looking at my RSS reader the other day and noticed that under the "C ++" tag I had about three hundred unread articles. I have not read a single article on the pluses from last summer, and I'm awesome . I have not written a single line of meaningful code on the pluses in the last three months, since the department where I worked was dismissed, and I'm just super . I allowed myself to want to never write on the pros again, and I got wings .


It only became scary, because it has long been a piece of my self-identification. I wrote on the pluses of about 17, it's almost two-thirds of my life, and somehow it's very dumb to throw it all away. All my seigneering is tomato farming, the lion's part of my experience - it is there, in the attack on the plus rake. Who am I without my costume?


, , . , .


. , ( - ). , ACE ( - ACE?) - . , chm' ( - ) 11-. — . — , , , - RSDN, . , , , . — .


, .


.


. , , , . 17 , , , , . ? UB ? ? ? , khim , , , ( ) , .


. , , — data science, , , — . . . , , ( ), . , . , , — .


, , — .


POD memcmp? .
, char*, ? .
unique_ptr , , , ? .
trivially copyable/constructible/etc types, , ? .
, , , ? .


. . . , .


? ? ! « » ( laba1.cpp) , gcc -O3 -march=native ( ? ?). , 2-5%, . ? 2-3 . , , .


memcpy — , . C++20. C++20 , , , .


, - , , , , , , , . C++ , , . , , - C++03.


— , . . , , .


, , . 20 , uniform initialization syntax, 21 , uniform, C++20 uniform . , - initializer list? - , , …


— , , , , . uniform initialization syntax, std::vector<int> foo(n, val), , , n val. , , , , .


, , - , , . . , , . 10 - , . , , .


.


  • NeoCode C++20. requires C1<T::type> || C2<T::type> , requires (C1<T::type> || C2<T::type>) — ? , . (╯°□°)╯︵ ┻━┻
  • , gcc-10 vim. : UB, , . : «The workaround vim uses to avoid these failures is to disable buffer overflow checks from being emitted by using -D_FORTIFY_SOURCE=1 define». vim, . --, .
  • ESR ( - ) , C .
  • , .
  • . , , - .
  • PVS Studio , , memcpy/memset, . , ?
  • , , memset . . , , ( , , !). , , « memset )))». , , , , memset , ( ?). , , .

CVE - , - , - , -… , , .


, .


, . .


, , , , - - , , . « , UB» — , , . . . . , . , . . , ?


. . , . , , , , . , UB. . , - , .


, - — - , constexpr . , , - « , ».


, . , .cpp- 5-7 ? 5 ? ? , . 5-10 ? 32 64 , 8 ? kloc, ? , .


. , , , , , . ? . ? . ? -. Reproducible builds? --. , , , - . , , , - , .


, . , , , ( !), , .


.


, .


? . . . ? , , . , , , , with flying colors. , . , , , , .


. , , - , , , , , , « », « ». , - - - - . — , - , , - : « 0xd34df00d? boost…»


, . (, ).


-, . ? ? ? - - - . ? ? 17 8-10 . - ( ).


, ?


, , — . , , - , . - , , , . , - .


, , , . . - , , - . C++, C++. , , — proof-of-concept-, , - cppreference - C++20.


Actually, at first I thought to call this article “I became a dinosaur”, but the problem is different. Those people - they seem to be quite happy in their C ++ 03 or C99, or where they crystallized there, but I'm not happy there either. The problem is that, it turns out, my experience, my skills, this all this - this is the time to landfill. And if it's time to landfill, then is it time for me?


And yes, I in no way want to say that the pros sucks. Not at all, the pluses are beautiful, it was me who was tired and ended. The problem is not in you, the problem is in me.


All Articles