Once a few serious users have been established for a community-based website intended for programmers, what are some concrete steps that you have personally taken to expand it? For example...
Any pertinent and useful advice is welcome.
First of all, you need to do a better job defining your community. I know that you said it's for programmers, but that is not specific enough. There are millions of communities for programmers, most of which are probably going to be better than yours (for now). In addition, programming is a very big field, and two programmers might not have that much in common. Limiting your community to "Haskell programmers", "programmers who want to have very technical discussions", or "programmers in London" will make it much more easier to build a community, because your members will have much more in common, which means that they will have a deeper bond with the other members of your community, which means that they will be more dedicated to your community and more likely to help you promote it.
That said, advertising is not the best way to promote your community. First of all, it costs a ton of money, and since you are just starting out, you shouldn't make that big of an investment.
Secondly, advertising is great for promoting products. Communities are not products. Communities are not things that people just "buy" and forget about. With a community, you are asking people to give up a chunk of their time and contribute to the community and make friends, and advertising really isn't cut out for that.
There are other, more effective means of promoting a community. One great way to get traffic is to ask your community members to publish news/a blog about the community and your communities "topic". This will give prospective members an idea of what the community is like, promote the community if you publish a really good article that goes viral, and bring your community together by giving them a job to do, which will give your members a sense of ownership of their community.
Another good way is to invite people to join your community, and ask your members to do the same. This will be more meaningful than an add, because
And the last thing is, I bet your community has (or will have) inactive members and members who haven't posted anything. You should email them, welcome them to the site, respond to their posts, and make sure that they make some friends in the site. That will ensure that they come back.
EDIT: You also shouldn't expect that your community will be up and running in a few days. It takes months, and often years, to build a good active community.
tldr: don't use advertising. Instead, make sure that you have a specific topic, publish a blog, invite members to join, and make sure that nobody goes inactive or registers but doesn't post by contacting them and responding to their posts. And this process can take a while, so be patient.
You can achieve very limited scalability with Word of mouth.
Your model should have something, which users find useful and worth sharing with their network. That way your site/idea can go viral.