YoVDO

Declarative Thinking, Declarative Practice

Offered By: ACCU Conference via YouTube

Tags

ACCU Conference Courses Software Development Courses Functional Programming Courses Concurrency Courses Imperative Programming Courses Persistent Data Structures Courses Declarative Programming Courses

Course Description

Overview

Save Big on Coursera Plus. 7,000+ courses at $160 off. Limited Time Only!
Explore the paradigm shift from imperative to declarative programming in this thought-provoking ACCU 2016 conference talk by Kevlin Henney. Delve into the contrasts between traditional imperative coding styles and the declarative approach, examining concepts like functional programming, mark-up languages, schemas, and persistent data structures. Learn how to apply declarative thinking to various aspects of software development, from requirements gathering to code implementation and testing. Discover practical lessons, habits, and techniques that can be applied in mainstream programming languages to improve code quality and reasoning. The talk covers topics such as 'Make' as a declarative language, the FizzBuzz problem, table-driven solutions, collection pipelines, and the relationship between concurrency and pre/post conditions, providing a comprehensive overview of declarative practices in modern software development.

Syllabus

: Start
: Real start end of meta talk
: 'Make' as a declarative language
: Reference to Fred Brooks' The Mythical Man-Month
: Illiteracy and software developers.
: FizzBuzz
: Table-driven instead of very redundant purely procedural code
: The collection pipeline solution
: By search/replaces Bash / Perl
: Stacks
: Indirect reference to Bertrand Meyer's Eiffel book. Pre- /post conditions asserts.
: Concurrency vs. pre- /post conditions


Taught by

ACCU Conference

Related Courses

Software as a Service
University of California, Berkeley via Coursera
Software Testing
University of Utah via Udacity
The Hardware/Software Interface
University of Washington via Coursera
Software Debugging
Saarland University via Udacity
Introduction to Systematic Program Design - Part 1
The University of British Columbia via Coursera