In FireRed/LeafGreen, there's a lot of competition on who gets what TM on a playthrough team. Not only are there Pokémon who rely entirely on them for their movesets (Clefable and Starmie), but also ones who need them to work off their higher attack stat (Gyarados and Haunter/Gengar), along with those who don't receive all their STAB moves through level-up (Jynx). This is especially important for these games, as there'll be a lot of overlap over who gets what. Whether or not a Pokémon can access specific, non-reusable TMs can make or break them.
This might be hard to take in thanks to favoritism, but all the starters in FireRed/LeafGreen come with their own ups and downs. For Bulbasaur, though it has a good early-game, it relies entirely on good matchups to prove useful, which is worsened by Grass typically being resisted in Kanto. Charmander similarly has an excellent mid-game, but that's traded for a rough early-game and a passable late-game. Squirtle performs the most consistently, though there are a plethora of Water-types that also serve this role, as opposed to the latter two starters. Take note of this when teambuilding.
Pickup Meowth can be caught before Misty with a 5% chance of its Pickup item being Rare Candy, PP Up, or a Nugget. You may also get Berries or the Hidden Power TM, but these aren't as useful.