Ruby Video
Talks
Speakers
Events
Topics
Leaderboard
Sign in
Talks
Speakers
Events
Topics
Use
Analytics
Sign in
Suggest modification to this talk
Title
Description
RubyConf AU 2018 | Sydney | Australia March 8th & 9th, 2018 Organisers: Melissa Kaulfuss (@melissakaulfuss), Nicholas Bruning (@thetron), Sharon Vaughan (@Sharon_AV) & Nadia Vu (@nadiavu_) MCs: Melissa Kaulfuss & Nicholas Bruning Sponsored by: Envato, Culture Amp, Lookahead, Reinteractive, Oneflare, Shippit, Twilio, The Conversation, Netflix, Disco, Heroku, REA Group
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
### Summary of "UTC is Enough for Everyone, Right?" In his talk at RubyConf AU 2018, Zach Holman explores the complexities of programming with time. He emphasizes how challenging handling dates and timestamps can be, emphasizing the common advice to use UTC (Coordinated Universal Time). #### Key Points Discussed: - **The Challenge of Programming Time**: Holman shares anecdotes about the difficulties of dealing with time in programming and states that despite common belief, using UTC is not a panacea for all time-related issues. - **Philosophical Perspectives on Time**: He starts with a philosophical question: "What is time?" and delves into history, discussing the evolution of timekeeping from astronomical clocks to atomic time standards. He presents fascinating historical references, such as the standardization of time in the 1880s due to the railroad industry’s needs. - **Time Zones Create Complications**: Holman explains the emergence of time zones and their illogical aspects, including the absurdity of certain regional laws affecting timekeeping, like those in Florida or the decisions made by Samoans which led them to skip dates. He illustrates how such discrepancies complicate programming substantially. - **Recommendations for Developers**: The speaker stresses the importance of storing all timestamps in UTC and suggests maintaining a separate field for timezone information in databases to manage displays accurately later. He advocates for using ISO 8601 formatting for clear communication of time data. - **Utilizing Libraries for Efficiency**: Holman recommends leveraging established libraries, like Moment.js and Chronic, to handle date manipulation and natural language processing related to time queries, thereby avoiding reinventing the wheel. - **Handling Recurring Events**: He advises against creating individual records for recurring events and suggests utilizing efficient rules and frameworks to manage scheduling without over-complicating the logic. #### Conclusions and Takeaways: - **Use Standards**: Developers should adhere to standards like ISO 8601 and UTC to manage time effectively in their applications. - **Embrace Simplicity**: Simplifying the way time data is handled can lead to increased efficiency and reduced headaches in programming. - **Recognize Limitations**: While time programming can feel overwhelming, many solutions have been derived from historical complexities, encouraging developers to leverage these lessons in their coding practices. Holman concludes with a humorous critique that while one should never build a calendar unsupervised, understanding these nuances can make time programming significantly more manageable. This talk offers valuable insights into the intersection of time and programming, reinforcing that complexity should be handled with established standards and reliable tools.
Suggest modifications
Cancel