You've already got some experience which will help a lot. What I've found (and what worked for me about 10 years ago when I was almost in your exact position) was that the easiest way to get a gig programming is to find a good company that employs programmers and get a job doing something computer related there. I started in tech support which is as good a place as any. Work your ass off. Be as good at your job as you possibly can be. You may notice some opportunities for automation (they almost always exist). Use whatever tools you have available to fill the need you see - a lot of my early work was excel macros. Often times the programmers are too busy to fix one-off and niche problems. The idea is to develop a reputation as someone who can solve problems. Once you're hired, moving around inside of a company is much easier. Be your own evangelist. Make it clear you are good at programming and you want to do more of it. If management has a clue, they'll let you program, at least part time - but likely won't give you a raise... if you really love it - stick with it and get the experience, which is what really matters. You can always job hop once you've got experience.
Oh - and go to school - getting a CS degree will help you in ways you can't even understand. It took me 8 years to get mine because I worked full time (as a programmer) the entire time I was in school - still worth it - and since I was making money I was left with very little debt when it was all said and done.
Bingo! Thats how I got started in programming as well. I did programming as tech support for almost 5 years. Oddly enough, it was PHP and Excel macros. Once mgmt found out I was taken off the phones.
Oh - and go to school - getting a CS degree will help you in ways you can't even understand. It took me 8 years to get mine because I worked full time (as a programmer) the entire time I was in school - still worth it - and since I was making money I was left with very little debt when it was all said and done.