Setting field values through scrip

Trying to learn how to change values of variables associated with a
ticket. Let’s say I want to set the From: field (for Notify Ccs) based
on who the email will be sent to. How do I read and change it? Would
something like this:

my $Ticket = $self->TicketObj();

my $CFName = ‘From’;
my $CF = RT::CustomField->new( $RT::SystemUser );
$CF->LoadByNameAndQueue( Name => $CFName, Queue => $Ticket->Queue );

return 0 unless $CF->id;

Change the value of From:

[…]

be a good start?