Тёмный

CppCon 2015: Sean Parent "Better Code: Data Structures" 

CppCon
Подписаться 153 тыс.
Просмотров 102 тыс.
50% 1

Опубликовано:

 

28 сен 2024

Поделиться:

Ссылка:

Скачать:

Готовим ссылку...

Добавить в:

Мой плейлист
Посмотреть позже
Комментарии : 48   
@DavidVaughan00
@DavidVaughan00 8 лет назад
This is a really good talk; no idea what everybody below is complaining about. It's not even particularly slow compared to other talks.
@PatrickKellyLoneCoder
@PatrickKellyLoneCoder 5 лет назад
I really enjoy his speaking rate. Anyone who doesn't? That's why RU-vid has playback rate adjustment. I use it to slow certain presenters, others can use it to speed him up.
@scottmueller7700
@scottmueller7700 3 года назад
When the moon hits your eye like a big pizza pie, that's a rotate
@leonhrad
@leonhrad 9 лет назад
11:17 What if I told you 4 is actually greater than 3?
@scottmueller7700
@scottmueller7700 3 года назад
It's funny because we don't use greater-than in standard library predicates, it's always less-than to define well-ordering.
@EvgeniyZheltonozhskiy
@EvgeniyZheltonozhskiy 9 лет назад
Are there transcripts of CppCon videos somewhere?
@QuentinUK
@QuentinUK 8 лет назад
Digital Imaging. +Evgeniy Zheltonozhskiy Transcripts are under ". . . More".
@Radrik05
@Radrik05 6 лет назад
At 21:00 log 1'000'000'000'000 = 40 tests (in search) each of these is 200 times slower than cache-friendly linear test. So 8'000 is faster then 500'000'000'000 (average number of tests in linear search). Big O notation does make sense or I didn't get the idea of the example.
@sebastianmestre8971
@sebastianmestre8971 6 лет назад
He meant that a cache friendly nlogn algorithm might run faster than a non cache friendly linear algorithm linear, cache unfriendly (200x comes from slow memory access) 1'000'000'000'000 * 200 = 200'000'000'000'000 linearithmic, cache friendly (40x comes from the log factor) 1'000'000'000'000 * 40 = 40'000'000'000'000 200'000'000'000'000 / 40'000'000'000'000 = 20 (nlogn could end up being 20 times faster) (or just 10 times faster on average)
@thetdltornike
@thetdltornike 8 лет назад
watched it at 2x speed, still too slow
@rg3412
@rg3412 6 лет назад
God that guy loves to listen to himself
@AG-ld6rv
@AG-ld6rv 2 года назад
Your perspective is bizarre. He most likely makes a million or more a year programming. His viewpoint that he has developed over decades from real-world experience, reading books, studying code beyond what he needed, etc. is both highly valuable and justified. In a situation like this, people jealously associate success from hard work with stuff like arrogance. Sometimes, a person just knows what they are talking about.
@brainplot
@brainplot 4 года назад
Sean Parent speaks so much like a professor/teacher. I love his tone and pace!
@danielhawkins3392
@danielhawkins3392 11 месяцев назад
In the windows hierarchy example if a unique pointer was used instead of a shared that would make it a composite object no? This then makes class hierarchies perfectly fine. Am I missing something?
@jankodedic3130
@jankodedic3130 7 лет назад
The talk is exactly 64 min long.
@Skyganli
@Skyganli 8 лет назад
'Let us form some happy little algorithms, okay?'
@zachs5231
@zachs5231 4 года назад
35:10
@warrenhenning8064
@warrenhenning8064 3 года назад
How about he uses some of these good data structures on Photoshop so that it doesn't take forever to load when it doesn't do any work that's useful to the user on startup?
@AllothTian
@AllothTian 4 года назад
Great talk! The tree representation outlined in 44:25 looks like an Euler Tour Tree, introduced in 1984.
@shenzi1118
@shenzi1118 4 года назад
tl;dr use vector for everything.
@bboysil
@bboysil 2 года назад
This is one of the best talks I've heard in a while. you can put 1.5x or 1.25x if you think he speaks a pace that's too low for you. Love the statement at 20:50 . It's been something I've been arguing with big O notation puritans a while back.
@AG-ld6rv
@AG-ld6rv 2 года назад
Just reference how std::sort for random access iterators uses an O(n^2) algorithm when the container is small enough.
@batner
@batner 7 лет назад
So I feel a bit dumb after watching this. I did understand most of his ideas but up to a point in each case. Something gives up in my brain and i lose the feeling of comprehensive understanding.
@MM-24
@MM-24 7 лет назад
Yea his use of vocabulary was a bit bothersome in some places. I'll have to re-watch with google in another tab ... will be good thing however and bring me to another level though
@JaihindhReddy
@JaihindhReddy 7 лет назад
Rewatch at 1.5x. You'll be surprised.
@aperson4051
@aperson4051 4 года назад
Reassuring I'm not the only one. Constantly feeling alittle bit stupid
@AG-ld6rv
@AG-ld6rv 2 года назад
These types of things aren't understood for free. He has done as he recommends, so he has dedicated hours into thinking about STL algorithms and their implementations. He also references an entire book he has carefully read as the source of many concepts he brought up. People often see a challenge and give up if things don't immediately click. The only way to be like him is through hard work. Many people who picked up programming on its own never studied data structures and algorithms for hours. I'd recommend getting an introductory book on those topics and diving right in if you are one of these people. It takes a good chunk of time and effort.
@rocknroooollllll
@rocknroooollllll 2 года назад
Just chiming in against the "too slow" complaints. I prefer the considered approach; x10000000 better than _some_ talks where they haave death by powerpoint (too many slides) and so much to say that they say, "Comments and questions at the end, please". Often, they never get to the end. Just compare this talk to any Lakos talk. Heaven!
@victornoagbodji
@victornoagbodji 7 лет назад
when are we going to have more chapters, can't wait lol : )
9 лет назад
Would have been clearer with more code examples. Like the do's and don't's. But perhaps I'm just too tired for my brain to work properly.
@TheDuckofDoom.
@TheDuckofDoom. 7 лет назад
Does this book exist yet?
@denzillong9878
@denzillong9878 8 лет назад
Very well done. I really enjoyed this talk.
@alexandersedykh9280
@alexandersedykh9280 2 года назад
What is the trailing_of_begin() 51:05? Hm. Apple's UIKit has Window 'Hierarchy' and detect a tap by pass the tap down through the hierarchy
@SeanParent
@SeanParent 2 года назад
Each node has two in-edges, leading (in the picture left side pointing down), and trailing (right side pointing up). `begin(f)` points to the leading edge of `A`. `trailing_of(begin(f))` returns an iterator pointing to the trailing edge of `A`. After inserting `B, C, D` the result is the image shown.
@leonid998
@leonid998 2 года назад
19:33 accidentally lookup in a map became n*log(n)
@m13m
@m13m 6 лет назад
Sean what a speaker beautiful
@VictorChavesVVBC
@VictorChavesVVBC 9 лет назад
I liked this talk, but apparently this goes against many well stablished and useful Design Patterns. Self-referential classes are really nice sometimes and I think we should not make an explicit effort to not use it when the abstract model of the problems is clearly self referential.
@lobetrotter
@lobetrotter 6 лет назад
zZZZZZZZZZZZZZZ
@nelsondavenapalli8802
@nelsondavenapalli8802 9 лет назад
Great insights shared by Sean Parent. Must watch
@dniam9859
@dniam9859 5 лет назад
ok?
@TheCriticFromSouth
@TheCriticFromSouth 8 лет назад
And this, boys and girls, is what happens when you are given 1 hour to talk and you have (if you have) only 30 minutes of topic to fill.
@matthewharris6454
@matthewharris6454 2 года назад
And this, boys and girls, is what happens when you have nothing to say but you make a comment saying it anyway
@matthew21995
@matthew21995 8 лет назад
is this guys in on slow motion? lol
@MM-24
@MM-24 7 лет назад
Pro Tip - use RU-vids 2x speedup .... I can't watch any talks without it
@TheClonerx
@TheClonerx 7 лет назад
M M pro tip: you can't in mobile
@xthebumpx
@xthebumpx 6 лет назад
My favorite part is where he says he must have talked faster than he was expecting to.
@alienwarem18x
@alienwarem18x 6 лет назад
Now you can
@tw7522
@tw7522 8 лет назад
Terribly slow and exhausting.
Далее
CORTE DE CABELO RADICAL
00:59
Просмотров 2,2 млн
CppCon 2017: Chandler Carruth “Going Nowhere Faster”
1:00:58
Where Have All the Cycles Gone? by Sean Parent
59:20
Просмотров 2,6 тыс.
CppCon 2014: Mike Acton "Data-Oriented Design and C++"
1:27:46
CppCon 2018: Jason Turner “Applied Best Practices”
1:03:19
Pacific++ 2018: Sean Parent "Generic Programming"
1:19:57
CORTE DE CABELO RADICAL
00:59
Просмотров 2,2 млн