Valentino Stoll
๐ค SpeakerAppearances Over Time
Podcast Appearances
And so that's an easy fix, scoping to a particular file. And so it started, you know, just small realizations over time of, oh, hey, you can do this, you can do this. And then finding the actual need was we have these hack days at Doximity where the whole team will split up and work on anything in particular that could help be useful for the team.
And so that's an easy fix, scoping to a particular file. And so it started, you know, just small realizations over time of, oh, hey, you can do this, you can do this. And then finding the actual need was we have these hack days at Doximity where the whole team will split up and work on anything in particular that could help be useful for the team.
And one of the problems we had was this auditing in that our auditing had to be explicitly set anytime possible. any user logged into a IRB session or Rails console. And so sometimes it would be forgotten, the auditing would get lost, and we'd have to go back and readdress those data concerns. And so somebody was like, hey, it would be nice if we can just automatically do this.
And one of the problems we had was this auditing in that our auditing had to be explicitly set anytime possible. any user logged into a IRB session or Rails console. And so sometimes it would be forgotten, the auditing would get lost, and we'd have to go back and readdress those data concerns. And so somebody was like, hey, it would be nice if we can just automatically do this.
And that basically is what started me down this rabbit hole to begin with. Is that possible? And there were some prerequisites to that in that, you know, how do you know what user in the system is related to the user that logged into the server? We happen to have some, you know, formalities in place that lined up those user names.
And that basically is what started me down this rabbit hole to begin with. Is that possible? And there were some prerequisites to that in that, you know, how do you know what user in the system is related to the user that logged into the server? We happen to have some, you know, formalities in place that lined up those user names.
So it ended up working out really well and being easier than was expected. And then, so as you go through and once you have a custom Rails system, console, it makes you think, oh, well, what else can we put in here? What other, you know, Doximity-specific customizations can we inject inside the Rails console? Limitations, you know, how can we add restrictions? Things like that.
So it ended up working out really well and being easier than was expected. And then, so as you go through and once you have a custom Rails system, console, it makes you think, oh, well, what else can we put in here? What other, you know, Doximity-specific customizations can we inject inside the Rails console? Limitations, you know, how can we add restrictions? Things like that.
And it becomes very easy once you have that place, that source of truth to kind of make those customizations. And I work in the terminal almost exclusively. That's kind of why I... Because Vim, right? Yeah, because Vim. But more so, I have a very elaborate Tmux setup as well that I've just grown comfortable with. And so I try and do as much as possible. I don't like leaving the console at all.
And it becomes very easy once you have that place, that source of truth to kind of make those customizations. And I work in the terminal almost exclusively. That's kind of why I... Because Vim, right? Yeah, because Vim. But more so, I have a very elaborate Tmux setup as well that I've just grown comfortable with. And so I try and do as much as possible. I don't like leaving the console at all.
I've been looking at a couple of projects to do even code reviews from the terminal. They're not quite there yet. But that would be my dream to just never leave. I used to use, what was it? There was a chat service for a while when Campfire was around that allowed you to do that from the terminal as well. Maybe it was WeChat, but that would be my ideal environment.
I've been looking at a couple of projects to do even code reviews from the terminal. They're not quite there yet. But that would be my dream to just never leave. I used to use, what was it? There was a chat service for a while when Campfire was around that allowed you to do that from the terminal as well. Maybe it was WeChat, but that would be my ideal environment.
So, you know, playing around with IRB and being able to do as much as possible there, you know, open up any files, you know, send things to the background when I don't need to use them kind of thing. It's just a very nice workflow. So that's kind of my foray into the IRB space was, you know, what is possible? What can you do with it? And how can you make things easier to develop? Right.
So, you know, playing around with IRB and being able to do as much as possible there, you know, open up any files, you know, send things to the background when I don't need to use them kind of thing. It's just a very nice workflow. So that's kind of my foray into the IRB space was, you know, what is possible? What can you do with it? And how can you make things easier to develop? Right.
Can I ask you about the Ripper? Sure.
Can I ask you about the Ripper? Sure.
So mostly it's for analyzing memory usage. So with the instruction sequence compiler, you can then use it to see how Ruby is making those instructions on the low level. And it's a helpful way to debug how it's compiling those instructions.
So mostly it's for analyzing memory usage. So with the instruction sequence compiler, you can then use it to see how Ruby is making those instructions on the low level. And it's a helpful way to debug how it's compiling those instructions.
And sometimes when you're debugging a particular memory issue, you can elaborate on that using the lexical analyzer to see how it's constructing it on the back end.
And sometimes when you're debugging a particular memory issue, you can elaborate on that using the lexical analyzer to see how it's constructing it on the back end.