I still think a traditional, full time MS degree can be worth while, depending on how you go about it. You do need to be careful, though.

An MS can be a good way to build a portfolio, gain some skills that are hard to develop while working full time, and explore interesting ideas and options that might turn into a startup or software application. It isn't the only way, of course, but it can be a good way.

The ground rules:

1) don't go heavily into debt

If you are pursuing an academic MS, you can often get a TA position that will reduce or eliminate your tuition while paying a stipend. Alternatively, consider a highly regarded public university with relatively low tuition - for complicated reasons I won't get into here, public graduate programs in CS/Engineering tend to rank far more highly than the general undergraduate programs.

I want to emphasize the debt thing again here - if you go heavily into debt, none of this is worth it. I hear what I can only call horror stories about people going 100k into debt for an MS in things like religious studies. I'm not surprised some people are passionate about this field, and by all means, they should find a way to pursue it. But I'm amazed that the federal gov't created a special non-dischargable kind of debt that allows people to go 100K or more into debt for masters degrees with such limit career earning potential.

By contrast, 10-20k of debt with a MS from a reputable engineering school is no big deal. Really, the loss of income eclipses this, since people who can apply to MS STEM programs are usually already capable of earning a decent salary.

2) choose a program with flexible requirements.

If you get into a reputable MS program in a STEM field, odds are good you've already done mathematically rigorous and highly structured undergraduate degree. Your new program should allow you to choose courses that match your more specialized interests.

3) it's ok to take a relatively easy academic load and pursue side projects. Maybe even better.

This is where I fell down a bit. At Berkeley, I could have taken Intellectual Property through the SIMS/Law schools, product development through the MBA/Engineering schools. Instead, I dropped those courses to keep up with advanced nonlinear optimization and integer programming. Those are great courses for people who plan to be research professors in those fields, but they weren't good courses for me. I would have enjoyed myself more and gotten more out of my coursework if I'd realized what I was really there to do.

On the bright side, I did pursue a lot of side projects, mainly software applications inspired by things I was learning. If you're at a good university, there will be a lot of interesting speakers, seminars, students, projects, and other types of activities that are highly relevant to your field. Of course, it all depends on what you're there for, and if you are planning on advancing humanity's mathematical knowledge of integer optimization, this wouldn't be the right advice for you. But keep in mind, a university is actually fertile ground for interesting ideas that, oddly enough, don't really fit into something that will get you credit hours. Don't lock yourself down with coursework to the point where you can't tap into that, especially if you aren't PhD bound anyway. Plus, you may be able to convert one of these activities into a MS project.

All in all, it's still up to you to decide whether it's worth the loss of a year or more of income. It can be difficult to pursue ideas like this if you're working full time, and what you do in an MS program may put you on a much more interesting and fulfilling path long term. It's hardly the only way. If so, it can be worth it.

Just really, don't go deeply into debt. All those wonderful, interesting paths that opened up to you may not be possible if debt forces you a demanding, full time job that takes up all your time and mental energy.