Keynote: Safety and Security: The Future of C and C++ - Robert Seacord. - NDC TechTown 2023

  Рет қаралды 3,329

NDC Conferences

NDC Conferences

Күн бұрын

Пікірлер: 19
@964tractorboy
@964tractorboy 10 ай бұрын
A superb talk. I wish I could have attended. It must be hard work if presenting to a lack-lustre, unresponsive audience. Robert made so many excellent points. Thanks!
@RobertSeacordC
@RobertSeacordC 10 ай бұрын
The audience was good. Lot's of familiar faces there. You can't hear them in the recording because of production choices. But definitely join us next time!
@964tractorboy
@964tractorboy 7 ай бұрын
@@RobertSeacordC My mistake, for which I apologise. I'm relieved!
@christiangalvan2519
@christiangalvan2519 2 ай бұрын
Great talk Robert!! There’s a lot of wisdom and insight to learn from someone who’s been doing this for 20 years and is looking to solve underlying challenges.
@NotherPleb
@NotherPleb 5 ай бұрын
The community mentality resonated a lot with my experience with coworkers, I don't blame them that's how they were taught. But this talk is surely something I can show them.
@Heater-v1.0.0
@Heater-v1.0.0 10 ай бұрын
I sympathise with the conclusion of this talk. I think C is just fine, it's a small, simple, performant language that has fulfilled its reason for being very well, that being enabling Unix to escape from assembler into a portable language. C can continue to fill such roles. C should stay simple, such that, say, one man can write a C compiler in a reasonable time frame. I'm sure there are some aspects of undefined behaviours that can be tightened up a bit though. Meanwhile C++ is an out of control, giant monster forever gaining more ugly and unwieldy warts (features). There is no hope of ever making it a "safe" language in which to write robust , reliable, software. As language at a much higher level than C we have many better alternatives today.
@doBobro
@doBobro 9 ай бұрын
C was simple a long time ago. UB handling in modern compilers makes it simply unbearable.
@Heater-v1.0.0
@Heater-v1.0.0 9 ай бұрын
@@doBobro I know what you mean. Although C is still a simple enough language that one man can write a compiler for it in a reasonable time. All those UB's are annoying but my recollection that they always were. Maybe many people did not notice but I often had to move C code from architecture to architecture, compiler to compiler, and all kind of surprises would crop up in the process. All because of this UB's and implementation defined features. Still, now we have Rust and life is much better. If it compiles it almost certainly runs and quite often correctly first time. There is no going back to C or C++ for me. I regard use of those in safety critical, high reliability and/or secure systems as professional negligence now that far better alternatives, like Rust, exist.
@bmazi
@bmazi 10 ай бұрын
12:10 This might be UB even without overflow. The result of adding an integer to a pointer must point to an element from the same array or at most one element past it. And if it's, let's say, two elements past the end of the array, it's UB already even without overflow.
@RobertSeacordC
@RobertSeacordC 10 ай бұрын
yes it is UB without overflow, but the overflow part makes it pretty easy for the compiler to detect it.
@afnman83
@afnman83 9 ай бұрын
Why it's UB? I mean, it's just an evaluation of an expression. in that particular example, there is no de-reference or any kind of change of the state. The only UB can occurs is overflow.
@doBobro
@doBobro 9 ай бұрын
@@afnman83 by standard you can have pointer to last array element + 1 only.
@Heater-v1.0.0
@Heater-v1.0.0 10 ай бұрын
So what happened? Back in the 1980s/90s we had the Ada langauge for those that wanted to created robust, reliable software. Then everyone decided to drop it in favour of the extremely error prone C and C++. I think it would be very good to get back to those expectations of quality that we had in the Ada days and the ALGOL days before that. To that end we have the likes of Rust tackling the problem.
@gregthemadmonk
@gregthemadmonk Ай бұрын
31:40 :)
@deadbeefmonster
@deadbeefmonster 10 ай бұрын
Awesome talk! Thanks for sharing, always enjoy hearing Robert talk. Hope to meet IRL someday.
@RobertSeacordC
@RobertSeacordC 5 ай бұрын
Come this year! I'll be back.
@raymundhofmann7661
@raymundhofmann7661 2 ай бұрын
Is this pointer + size integer overflow actually relevant on any OS today with 64 bit esp. when the processor only uses 48 Bit of the address? Was it even relevant on 32 Bit OS's? And then still a overflow into the "good" area could happen giving potentially a logic error. Do buffer overflows still have a relevant impact in current software quality? Isn't the obsession with ultimate "safety" on a isolated aspect leading to the ignorance of the whole picture and other, more pragmatic safety issues?
@doBobro
@doBobro 9 ай бұрын
IMHO conclusion is too optimistic. C could become obscure legacy language quite fast like COBOL because nobody wants to program in it. There are a plenty of more DX friendly options now.
@ukyoize
@ukyoize 10 ай бұрын
If only C had +% operator
C++ Coroutines from scratch -Andreas Fertig - NDC TechTown 2023
1:06:01
NDC Conferences
Рет қаралды 1,8 М.
Enter The Arena: Simplifying Memory Management (2023)
1:47:50
Ryan Fleury
Рет қаралды 42 М.
Which One Is The Best - From Small To Giant #katebrush #shorts
00:17
Life hack 😂 Watermelon magic box! #shorts by Leisi Crazy
00:17
Leisi Crazy
Рет қаралды 55 МЛН
Minecraft Creeper Family is back! #minecraft #funny #memes
00:26
РОДИТЕЛИ НА ШКОЛЬНОМ ПРАЗДНИКЕ
01:00
SIDELNIKOVVV
Рет қаралды 3,3 МЛН
History and Spirit of C - Olve Maudal
42:01
NDC Conferences
Рет қаралды 11 М.
What is OpenTelemetry?
12:55
Highlight
Рет қаралды 7 М.
Projects Every Programmer Should Try
16:58
ThePrimeTime
Рет қаралды 468 М.
DHH - Ruby on Rails, 37signals, and the future of web development
1:09:57
Delivering Safe C++ - Bjarne Stroustrup - CppCon 2023
1:29:16
Typical C++, But Why? - Björn Fahller - Meeting C++ 2023
49:18
Meeting Cpp
Рет қаралды 3,5 М.
Which One Is The Best - From Small To Giant #katebrush #shorts
00:17