Overview
Explore the relevance of Computer Science concepts to everyday Rails development in this 30-minute conference talk from RailsConf 2022. Delve into topics typically covered in the first half of an undergraduate CS curriculum, examining their practical applications and potential limitations for professional developers. Gain insights on numerical representations, sorting algorithms, time and space complexity, and the binary search algorithm. Evaluate the pros and cons of in-depth CS knowledge for Rails developers, and discover how theoretical concepts translate to real-world scenarios like Git bisect. Challenge common assumptions about the necessity of a CS degree for software development careers and gain a balanced perspective on the value of academic computer science knowledge in practical programming contexts.
Syllabus
Intro
Things to know
What exactly is a number anyway? Base 10
What exactly is a number anyway? Bases
Fractions decimal versus bicimal
The float problem
Other issues with numbers
Why do you not need to know. Binary
Sorting algorithms
Comparing algorithms
Algorithmic analysis
Time/space complexity
Linear time (O(n))
Algorithms in real life: Improving on O(n)
The binary search algorithm
Binary search in the wild git bisect
Why do you want to know: Algorithms
Why do you not want to know. Algorithms
Conclusion why do you not want to know
Taught by
Ruby Central