I work in a software house, but as a network admin.
The programmers here do sometimes take work home, but I'd say that your personal life doesn't take second place, the strain (there obviously is some strain) is what you pay for not having a mind numbing job like working in a burger king, where when you walk out the door you stop thinking about your job.
as well as being a network admin I've also learned C, (and am learning C++),
and I know HTML, VB
I'd say that you need to figure out what you want. They are currently hiring more VB
programmers at the place I work, here you could find yourself working on bespoke business systems, and web business system,s, all made with microsoft technologies for microsoft platforms, shipped out to microsoft users.
Linux doesn't really get a look in (other than for our business use).
alternativly, if you learn C++ you could work for either windows, OR other platforms developing software houses.
If you concerntrait on web languages, then you'll obviously want to work as a web developer. this is satisfying because the results are put on show, and project turn around is incredibly fast. but the competition is huge, and generally the 'designers' that a backend programmer will have to work with won't really know a great deal about the technologies they are working with.
+there are literally millions of people sitting in bedrooms providing cheap competition, with their hobby job. web design is not something I'd recomend you specialise in unless you have a firm base, ie specialise after you've got the job.