Talks
Speakers
Events
Topics
Sign in
Home
Talks
Speakers
Events
Topics
Leaderboard
Use
Analytics
Sign in
Suggest modification to this talk
Title
Description
Rails did a lot to bring REST to developers, but its conception leaves the REST devotee feeling a bit empty. "Where's the hypermedia?" she says. "REST isn't RPC," he may cry. "WTF??!?!" you may think. "I have it right there! resources :posts ! What more is there? RPC? Huh?" In this talk, Steve will explain how to design your APIs so that they truly embrace the web and HTTP. Just as there's an impedance mismatch between our databases, our ORMs, and our models, there's an equal mismatch between our applications, our APIs, and our clients. Pros and cons of this approach will be discussed, as well as why we aren't building things this way yet.
Date
Summarized using AI?
If this talk's summary was generated by AI, please check this box. A "Summarized using AI" badge will be displayed in the summary tab to indicate that the summary was generated using AI.
Show "Summarized using AI" badge on summary page
Summary
Markdown supported
In the talk titled "Designing Hypermedia APIs" at RailsConf 2012, Steve Klabnik explores how to create effective APIs that truly leverage the power of the web and HTTP, moving beyond traditional RESTful designs. He begins by addressing the misconceptions around REST in Rails, illustrating that many developers feel dissatisfied with its implementation. Steve asserts that while Rails has popularized REST, it does not fully embody the original principles of REST advocated by Roy Fielding in his dissertation. Here are the key points discussed: - **Rest vs. Hypermedia**: Klabnik emphasizes a shift from typical REST APIs to Hypermedia APIs, which enhance client-server interactions through links and guiding processes rather than relying solely on URL endpoints. - **Importance of Learning**: Steve shares his personal journey of understanding REST and hypermedia, indicating the significance of continuous learning in software development. - **Pros and Cons**: Hypermedia APIs allow for better scalability and change management but may introduce latency issues, making them unsuitable for applications requiring immediate responses. - **Design Steps**: He outlines five critical steps for building a hypermedia API: evaluating business processes, creating a state machine based on those processes, determining media type needs, designing a suitable media type, and implementing the API. - **Case Study**: Klabnik discusses a practical example involving an API that wraps the W3C HTML validator, employing a structured format to improve usability and flexibility in processing requests. - **Media Type Design**: The importance of building or leveraging existing media types to drive hypermedia functionality in JSON is also discussed. In conclusion, Steve Klabnik advocates for a future where APIs evolve to be more adaptable, guiding clients through interactions rather than simply serving data. This results in a more effective and user-friendly approach to building web applications, emphasizing the long-term benefits of thoughtful API design over short-term efficiency. Through hypermedia, developers can foster robust, scalable applications that are more responsive to user needs and business changes.
Suggest modifications
Cancel