Events  Deals  Jobs  NFT NYC 2024 
    Sign in  
 
 
With Vishal Chandnani (Dir. Engg, Prudential Financial).
Wed, Mar 10, 2021 @ 05:30 PM   FREE   Online
 
     
 
 
              

      
 
Sign up for our awesome New York
Tech Events weekly email newsletter.
   
EVENT DETAILS
What if the Ruby String library reverse method or its underlying C implementation had a bug? What if it produced unexpected results with certain types of inputs? e.g. strings with unicode characters. How would you catch & fix such a bug? How would you explain the unexpected results?

Description

1. Relevance

The Ruby String library reverse method is implemented in C. The debugging tools in this talk apply to Ruby programs, & help provide useful insights into the underlying C implementation.

2. Novelty & Originality

The use unicode_normalize to address certain string reversal issues appears to be known to certain developers. The novel idea in this talk is the analysis of Ruby & C implementation to explain the problem & possible solutions.

3. Knowledge

Vishal started his career at Lucent Technologies (Bell Labs Innovations), where he used C/C++ to develop software for CDMA wireless communication systems. At The Boeing Company, he used Ruby/Rails to develop U.S. government intelligence community software. Vishal enjoys going to the beach & loves family vacations.

GitHub: https://github.com/vchandnani
LinkedIn: https://www.linkedin.com/in/vchandnani/

4. Coverage

This talk presents a step-by-step approach to debugging Ruby programs by diving into their underlying C implementation. It uses a string with unicode characters to demonstrate the problem & provides insights into the reversal process by understanding their byte-level representation.

5. Organization

This talk starts with a high-level view of the Ruby String library reverse method implementation. It introduces the idea of using a Virtual Machine (VM) to build Ruby from source. We learn about the Unicode standard & encoding fundamental principles. We explore the unicode_normalize implementation & how it addresses reverse method problems. Along the way, we use commands/tools like grep, chars, code_points, each_byte, printf & gdb to provide insight into Ruby library methods.

6. Bottom Line

This talk aims to improve confidence in understanding bugs and/or unexpected results in the current application language (e.g. Ruby) as well as the underlying (e.g. C) implementations. I hope to inspire the Ruby community to explore the internals of Ruby strings & provide recommendations for further exploration.

Agenda
(all in Eastern Time zone)
- 5:30 Meeting start, welcome
- 5:40 First time attendees introductions, ice breaker
- 6:00 Speaker start
- 7:00 Jobs & Hiring Announcements

 
 
 
 
© 2024 GarysGuide      About    Feedback    Press    Terms