What are the basics to creating a Linux Application?

I am an advanced web-programmer (learned basic C++, very comfortable with OOP, etc) but I have no experience in developing full-fledged standalone applications, especially in Linux.

I am very interested in contributing to the community but not sure how to apply my programming/design knowledge to Linux. What are some good resources to learn/tips?

Thanks!