My impression is that there aren't a ton of debugging talks because a huge swathe of the industry doesn't actually "debug," especially in the sense of using a symbolic debugger. I sometimes worry that this skill will be lost over the years.
@@joesilver75 In the best case, you can deduct (mis)flow from a reasonable test coverage; in the worst case, the code is not even littered with debug log messages, but rather naked printf/OutputDebugString calls that may or may not be included in release builds.
At 49:24 you have: ``` if (auto const ohFile = ERRNORETRYIGNORE( open(file, ...) tc::err::returned_nonnegative_value(), // success tc::err::returned(invalid_filehandle, EINTR), // retry tc::err::returned(invalid_filehandle, {EPERM, ENOENT, EACCES}) // allowed errors )) {} ``` Am I correct that `ERRNORETRYIGNORE` is a function of 4 parameters, the first is returning a file handle, the 2nd returns a lambda/functor that tests for a non-negative value, and the others returning lambda/functors that test `errno` for the errors specified? Just want to confirm my understanding as there's no comma at the end of the `open()` call.
40:19 That assumption is wrong. I have been debugging a lot of code which I haven't written. I was doing it as a service. Other programmers do that by coincidence because they take over a job of someone else. What's the consequence for the rest of the video? Do we need to educate the programmers who had the wrong mental model? How?
(end-begin)/sizeof(element_t) doesn't make sense for std::vector in the first place. v.end()-v.begin() would already be the number of elements == v.size(). You fixed the element_t to be the same between processes, but the std::vector itself is not portable between processes.
Why is this already part of the playlist? On RUclips, people typically go to playlists to see content in some order. Making this part of the playlist, particularly at the beginning, is a total buzzkill and discourages me from looking into CppCon content.
This is a nice video to sleep to, feels very 90s
My impression is that there aren't a ton of debugging talks because a huge swathe of the industry doesn't actually "debug," especially in the sense of using a symbolic debugger. I sometimes worry that this skill will be lost over the years.
I can't even imagine coding without a debugger. How else could you follow the flow of your program?
@@joesilver75 In the best case, you can deduct (mis)flow from a reasonable test coverage; in the worst case, the code is not even littered with debug log messages, but rather naked printf/OutputDebugString calls that may or may not be included in release builds.
Could you please provide accurate subtitles for this video?
At 49:24 you have:
```
if (auto const ohFile = ERRNORETRYIGNORE(
open(file, ...)
tc::err::returned_nonnegative_value(), // success
tc::err::returned(invalid_filehandle, EINTR), // retry
tc::err::returned(invalid_filehandle, {EPERM, ENOENT, EACCES}) // allowed errors
))
{}
```
Am I correct that `ERRNORETRYIGNORE` is a function of 4 parameters, the first is returning a file handle, the 2nd returns a lambda/functor that tests for a non-negative value, and the others returning lambda/functors that test `errno` for the errors specified?
Just want to confirm my understanding as there's no comma at the end of the `open()` call.
There's always the: "Uhh?... thats funny..."
40:19 That assumption is wrong. I have been debugging a lot of code which I haven't written. I was doing it as a service. Other programmers do that by coincidence because they take over a job of someone else. What's the consequence for the rest of the video? Do we need to educate the programmers who had the wrong mental model? How?
Is that possible to fix the audio of this video? (the "s"-es hurt my ears.)
(end-begin)/sizeof(element_t) doesn't make sense for std::vector in the first place. v.end()-v.begin() would already be the number of elements == v.size().
You fixed the element_t to be the same between processes, but the std::vector itself is not portable between processes.
Very informative talk.
That title is hilarious 😆
That's some bad mic here!
Why is this already part of the playlist? On RUclips, people typically go to playlists to see content in some order. Making this part of the playlist, particularly at the beginning, is a total buzzkill and discourages me from looking into CppCon content.
What kind of order do you mean?
??? did you look at the video or just the title
Cope
Your complaint is that it's on the playlist? What is the harm?
What are you talking about??