With the basics of the hardware sorted out, at least in a rough draft, it's time to turn to the question of software. Programs are essential to hacking because everyone knows that they're how computers work. We're far enough along in technological development that anyone who'd want to play a hacker knows it's not just about what kind of system you're running, but what's running on it.
That said, I've yet to read any cyberpunk fiction, and certainly no Shadowrun fiction, that makes a big deal about the software. Yes, you can argue that the Chinese code cracking software that Case uses at the end of Neuromancer to hack the Tessier-Ashpool mainframe was a big part of the story, but I'd say it wasn't. It was an important component in enabling the hack, but what did Case do? He opened the program and proceeded to do something else for 10 hours, be it simstimming into Molly's body, talking with Armitage, physically moving to another vessel and getting involved in a gunfight. The program wasn't part of the story.
Fiction that puts characters into the Matrix is about what they do, not so much what they're running. So I want programs to take a back seat to action. I want them to make life easier, but I don't want them to dictate what a hacker can and cannot do in the Matrix. If someone's playing a nova hot codeslinger who writes all his code on the fly, I want him to be able to.
My idea for the moment is to turn code into a supplimentary knack or sorts. Rate every program 1 - 10 just like regular knacks, but you never roll a program. You fold it into whatever skill you're using to perform a Matrix action, and your knack rating is modified by the program rating. No program? No problem. Fold it in as a rating 0 knack. That'll hurt, but it won't knock you completely out. And if you're really hot stuff, you'll be okay anyway.
There are a few places where this falls down, but they're both obvious and easily fixed. These would be the utilities that function more like gear than knacks. In most cases we're talking combat utilities. That's fine though. Let's just make the base attack power equal to the rating of your attack program (meaning it's 0 if you're not using one, plus any yang dice you generate in your test), and your armor... I don't want armor running to 10. I could give it a rating equal to the step instead, which tops at 5 points. That's still a lot, but you need top grade software to get that. Maybe I'll look at that again when it gets used.