In addition to the references you have at the end of the presentation,
there's a great set of practical examples based on the learnings from Qt
posted here: http://www21.in.tum.de/~blanchet/api-design.pdf

Chapter 4's way of showing a principle and then an example from Qt is
particularly instructional.

On Tue, Jan 27, 2015 at 1:05 AM, Reynold Xin <r...@databricks.com> wrote:

> Hi all,
>
> In Spark, we have done reasonable well historically in interface and API
> design, especially compared with some other Big Data systems. However, we
> have also made mistakes along the way. I want to share a talk I gave about
> interface design at Databricks' internal retreat.
>
> https://speakerdeck.com/rxin/interface-design-for-spark-community
>
> Interface design is a vital part of Spark becoming a long-term sustainable,
> thriving framework. Good interfaces can be the project's biggest asset,
> while bad interfaces can be the worst technical debt. As the project scales
> bigger and bigger, the community is expanding and we are getting a wider
> range of contributors that have not thought about this as their everyday
> development experience outside Spark.
>
> It is part-art part-science and in some sense acquired taste. However, I
> think there are common issues that can be spotted easily, and common
> principles that can address a lot of the low hanging fruits. Through this
> presentation, I hope to bring to everybody's attention the issue of
> interface design and encourage everybody to think hard about interface
> design in their contributions.
>

Reply via email to