Eric Raymond's advice might be helpful (you've picked the right language to start with!) http://www.catb.org/~esr/faqs/hacker-howto.html#skills1
I wouldn't worry about SQL right now. If you feel overwhelmed, drop it and pick it up again after a week or two. Repeat until unnecessary.
Then learn Python/Ruby/Lisp/whatever.
For the OP, I would suggest picking up python or ruby. And focus on doing something fun. If you like graphics, pick up Processing. Find interesting code on the net and tweak it.
I don't think it's a good way to start programming but I would encourage people to learn it at some point because of the reason you gave.
I'd also suggest that the best way to get to grips with C is to learn assembly with a simple processor at the same time. People always seem to get stuck on pointers etc and that's easy to understand when you know a processor's addressing modes. Plus, it's always fun to use gcc to output (unoptimized) assembly code and compare it to what you would have written.
But definitely, C can be very frustrating. It takes weeks or months before you can do anything actually useful (not just nerdy fun, like calculating pi or something.) That being said, how do you explain the difference between an array and a linked list to someone who only knows python? to take a trivial example. Sure, you could, but it's extremely unintuitive. Whereas with C you're so close to the hardware that the distinction is obvious.
SQL makes little sense as a first language, so don't extrapolate from that experience.
Django is probably a better choice for jumping right into CRUD apps and numbing the pain of SQL, though. There's more to deal with up front, but you have a more complete system after the first hour than you do with web.py.