I get the impression that this will be a daily driver, right? (Based on your practicality requirement.) You might want to read
C&D's review of the STi. They really like the car (although they liked the Evo more), but they do have a good number of complaints about it, which I think become more significant for a daily driver (stuff like noise from the tires, noise from the interior panels, noise from the scoop and wing bouncing).
My thought is that it might be too rough for a daily driver. And, if you don't like the styling, the looks you get might not be to your liking, either.
Their
review of the 350Z (compared to four other two-seaters) was quite positive. It came in second only to the Honda S2000, and the way it was written was more like the Honda's better for redlining, but the 350Z is the ultimate in practicailty within the powerful two-seater confines. It's almost as if they wanted to split the contest in two, and give two first places.
I'd say that unless you plan to haul around more than one passenger or a lot of cargo on a regular basis, or if you plan on going to the track regularly, that you'll be happier with the 350Z. If you need to haul stuff, rent a truck. (The storage space I used to rent allowed use of their truck for free, even.) You'll deal with the styling every day, but the extra 13 HP in the STi will only benefit you every once in a while, and maybe not at all if you don't take it on a track.
Plus, I'd bet that the 350Z is more fun to drive. Of course, this is all said without ever having been in either one. And you should probably check out the storage on the 350Z. There's supposed to be behind-seat storage and a trunk. I don't know if they're connected. You might want to see if you can fit your regular stuff in there without problems.