# orderedItems[].object.content
@ufuk @tenderlove

At Zendesk we've started to give YJIT a shot! On that note, I'm attempting to get a PR merged into dd-trace-rb that would add YJIT stats to Datadog's Ruby runtime metrics: https://github.com/DataDog/dd-trace-rb/pull/2711

Currently, the PR only adds the primitive YJIT stats. Are there stats from the extended metrics list you find particularly useful that should, perhaps, be included?

Or, is there someone specific at Shopify I should talk to about this? 🙏

# orderedItems[].object.contentMap.en
@ufuk @tenderlove

At Zendesk we've started to give YJIT a shot! On that note, I'm attempting to get a PR merged into dd-trace-rb that would add YJIT stats to Datadog's Ruby runtime metrics: https://github.com/DataDog/dd-trace-rb/pull/2711

Currently, the PR only adds the primitive YJIT stats. Are there stats from the extended metrics list you find particularly useful that should, perhaps, be included?

Or, is there someone specific at Shopify I should talk to about this? 🙏

# orderedItems[].object.content
@baweaver Hmm, that's interesting. I currently feel blocked on my personal project because of the desire to make it pretty every time I add a feature... but perhaps I should, instead, just focus on building out the structure, then prettify it.

# orderedItems[].object.contentMap.en
@baweaver Hmm, that's interesting. I currently feel blocked on my personal project because of the desire to make it pretty every time I add a feature... but perhaps I should, instead, just focus on building out the structure, then prettify it.

# orderedItems[].object.content
@Gerz@mastodon.world @maco I'm not from Pittsburgh, but I also won't object to all y'all using yinz either.

# orderedItems[].object.contentMap.en
@Gerz@mastodon.world @maco I'm not from Pittsburgh, but I also won't object to all y'all using yinz either.

# orderedItems[].object.content
@tenderlove Cursed Ruby!

# orderedItems[].object.contentMap.en
@tenderlove Cursed Ruby!

# orderedItems[].object.content
@tenderlove At least your Washingtonian vote counts for something ☹️

# orderedItems[].object.contentMap.en
@tenderlove At least your Washingtonian vote counts for something ☹️

# orderedItems[].object.content
@konnorrogers 👀 is it any good?

# orderedItems[].object.contentMap.en
@konnorrogers 👀 is it any good?

# orderedItems[].object.content
I gotta appeal to @tenderlove to do another Pairin' with Aaron where he and Jemma Issroff talk about CAPACITY_CHANGE shapes.

# orderedItems[].object.contentMap.en
I gotta appeal to @tenderlove to do another Pairin' with Aaron where he and Jemma Issroff talk about CAPACITY_CHANGE shapes.

# orderedItems[].object.content
The `capacity` attribute makes sense. The Object starts with a 3 ivar limit, it changes the capacity to 6 when you want to add a fourth. You add 3 more, now 6 total, so it needs to change the capacity again.

# orderedItems[].object.contentMap.en
The `capacity` attribute makes sense. The Object starts with a 3 ivar limit, it changes the capacity to 6 when you want to add a fourth. You add 3 more, now 6 total, so it needs to change the capacity again.

# orderedItems[].object.content
@kaspth I think it's unrelated to the initialize block. Here I started adding ivars to an instance of `Foo` and dumped the heap. It starts at 3 and then the object doubles the number of ivars it can hold before a `CAPACITY_CHANGE` shape is added.

# orderedItems[].object.contentMap.en
@kaspth I think it's unrelated to the initialize block. Here I started adding ivars to an instance of `Foo` and dumped the heap. It starts at 3 and then the object doubles the number of ivars it can hold before a `CAPACITY_CHANGE` shape is added.

# orderedItems[].object.content
@kaspth and the number of ivars you can add starts to double. 3 -> 6 -> 12. I assume this is Ruby adding capacity with variable width allocation but I could be wrong.

# orderedItems[].object.contentMap.en
@kaspth and the number of ivars you can add starts to double. 3 -> 6 -> 12. I assume this is Ruby adding capacity with variable width allocation but I could be wrong.

# orderedItems[].object.content
@kaspth Aah, I think we get a CAPACITY_CHANGE shape because the initial object can hold 3 ivars but once we add a fourth it has to transition to an extended object (probably not the right term)

# orderedItems[].object.contentMap.en
@kaspth Aah, I think we get a CAPACITY_CHANGE shape because the initial object can hold 3 ivars but once we add a fourth it has to transition to an extended object (probably not the right term)

# orderedItems[].object.content
@joeldrapper tickets booked!

# orderedItems[].object.contentMap.en
@joeldrapper tickets booked!

# orderedItems[].object.content
@kaspth Hmm, dumping the heap shows it add two shapes when you call `dee`. The second, has the expected `shape_type` of `ivar`. But the first one added has a shape_type of `CAPACITY_CHANGE`. That said, the way I read it, the new shape structure is root -> @A -> @b -> @c -> CAPACITY_CHANGE -> @d

# orderedItems[].object.contentMap.en
@kaspth Hmm, dumping the heap shows it add two shapes when you call `dee`. The second, has the expected `shape_type` of `ivar`. But the first one added has a shape_type of `CAPACITY_CHANGE`. That said, the way I read it, the new shape structure is root -> @A -> @b -> @c -> CAPACITY_CHANGE -> @d

# orderedItems[].object.content
Ruby Object Shapes curiosity: I'm going to dump the heap to inspect the shapes but I figured `Foo.new.dee` would produce one new shape, not two. 🤔

# orderedItems[].object.contentMap.en
Ruby Object Shapes curiosity: I'm going to dump the heap to inspect the shapes but I figured `Foo.new.dee` would produce one new shape, not two. 🤔

# orderedItems[].object.content
@tenderlove Very interesting, thank you! I'll get to dumping!

# orderedItems[].object.contentMap.en
@tenderlove Very interesting, thank you! I'll get to dumping!

# orderedItems[].object.content
@tenderlove were y'all able to use the full 16 bits for shape IDs in the final implementation of object shapes in Ruby? I'm trying to figure out if ~65k unique shapes is the limit. :)

# orderedItems[].object.contentMap.en
@tenderlove were y'all able to use the full 16 bits for shape IDs in the final implementation of object shapes in Ruby? I'm trying to figure out if ~65k unique shapes is the limit. :)

# orderedItems[].object.content
@joeldrapper Strongly considering it!

# orderedItems[].object.contentMap.en
@joeldrapper Strongly considering it!

# orderedItems[].object.content
@jrwren I’ve been meaning to read Shakespeare in the original Klingon.

# orderedItems[].object.contentMap.en
@jrwren I’ve been meaning to read Shakespeare in the original Klingon.

# orderedItems[].object.content
@baweaver That’s a lot of Iron Rangers!

# orderedItems[].object.contentMap.en
@baweaver That’s a lot of Iron Rangers!