It helps to know the basics of html, especially links and things like "no follow". SEO is kind of a mix of marketing and light technical skills. Here are a bunch of important things to know about SEO, none of which require programming skills:
If your website has a lot of other important sites linking to it, Google thinks your site must also be important.
You want the most important keywords of your page in the top title bar that runs at the top of the browser.
Its good to have the keywords in the text of your webpage, but don't overdo it.
Having articles and lots of text content on your site can help. If the Google bot indexes that content, it might show up in a search result.
Top keywords like "real estate" are hard to rank at the top for. More obscure keywords like "Belmont Maryland ham radio shop" will be easier to rank for.
If you write articles for other websites, you can often be "rewarded" by allowing to post a link back to your website. This is called "article marketing".
It's good to have the sub-pages of your website have keywords in the url, like this: sportsuniverse.com/tennis-racquets
sites that have been around longer can tend to work their way up in the rankings more.
don't participate in link farms, where a bunch of junk sites trade junk links with each other.
Notice how non-programming this stuff is.