Talks
Speakers
Events
Topics
Sign in
Home
Talks
Speakers
Events
Topics
Leaderboard
Use
Analytics
Sign in
Suggest modification to this talk
Title
Description
Coding like it’s 1977: Ruby on the Apple ][ by Colin Fulton Many developers at some point in their programming career get curious about how HTTP servers work and how to build one from scratch without any external libraries.Well, recently, I got curious about “How do HTTP servers work”? “How are HTTP servers built?” and “Can I build an HTTP server and client with Ruby without using any gems?“ And you know what, the answers are, yes, yes and yes!We’ll explore how to build a simple http server using the Socket class available in the Ruby’s standard library. In the process, we will also get a crash course on how HTTP works. #confreaks #rubyconf2019 #rubyconf
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
**Coding like it’s 1977: Ruby on the Apple ][ - Summary** In this intriguing talk presented by Colin Fulton at RubyConf 2019, the main theme revolves around retro computing, specifically utilizing the Apple IIc to explore the limitations and intricacies of programming with the vintage 6502 processor. Fulton demonstrates how programming was accomplished in the 1970s, culminating in efforts to create a simplified version of Ruby to run on this classic hardware, dubbed nRuby. **Key Points Discussed:** - **Introduction to the Speaker and Setup:** Fulton introduces himself and humorously discusses his vintage equipment—the Apple IIc—highlighting the limited capabilities of the 6502 processor running at one megahertz with only three registers for variable management. - **Historical Context of the 6502 Processor:** He delves into the importance of the 6502 processor in personal computing history and the challenges associated with programming using its limited instruction set, explaining how basic tasks like multiplication or division had to be handled creatively. - **Example Program - Hello World:** Fulton attempts to create a Hello World program using machine code. He meticulously outlines the steps involved in writing directly to memory and executing commands to output text on screen, demonstrating the meticulous nature of assembly programming. - **Transition to Ruby:** He discusses the incompatibility issues faced when trying to run traditional Ruby (CRuby) on the Apple II, leading to the exploration of MRuby and eventually developing an even more streamlined version called nRuby suitable for this vintage hardware. - **Demonstration of nRuby:** Fulton showcases an alpha version of nRuby, highlighting its capacity to handle basic Ruby commands. Some features are still in development, but the core functionalities to execute and print outputs are demonstrated live on the Apple IIc. - **Technical Insights into Assembly Programming:** He explains the intricacies of developing assembly programs and how methodologies like test-driven development can also be applied in such an environment, making it less daunting than perceived by many developers. - **Future Directions:** Fulton shares his aspirations regarding the future of nRuby, such as expanding its functionality and exploring other systems like the MSP430 or even the Nintendo Entertainment System. He encourages attendees to explore low-level programming and provides resources for further learning on vintage programming. **Conclusions and Takeaways:** Colin Fulton’s presentation not only chronicles the adventure of programming on vintage hardware but also reinvigorates interest in retro computing. His work on nRuby signifies an innovative step in merging modern programming language paradigms with historical computing limitations, emphasizing the significance of creativity and resourcefulness in programming. Fulton’s enthusiasm reflects a deep appreciation for the roots of computing, inspiring current and future developers to engage with the past. **Suggestions for Further Exploration:** - Explore the talks about the 6502 processor and Commodore 64 for a deeper understanding of retro computing. - Participate in demoscene projects or retro game development as additional avenues for learning. - Review historical programming resources available online related to the Apple II.
Suggest modifications
Cancel