NYC  SF        Events   Jobs   Deals  
    Sign in  
 
 
NYC Tech
Events Weekly Newsletter!
*
 
COMING UP

 
 
 
 
 
 
 
 
 
 
With Vishal Chandnani (Dir. Engg, Prudential Financial).
Venue, Online
Mar 10 (Wed) , 2021 @ 05:30 PM
FREE
 
Register
 
 

 
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

 
 
 
 
About    Feedback    Press    Terms    Gary's Red Tie
 
© 2025 GarysGuide