I'm in a somewhat similar position. I started as a web designer, but then moved my interest toward web development almost entirely. I know where you're coming from, and it can be frustrating.
Everybody, and I mean _everybody_, has their framework, platform, language, and so on that you should learn. If you ask a question like this over an extended period or in a popular forum where it will get seen and responded to, you're going to get a million people telling you to go in a million different ways.
_You_ need to take a look around, and figure out what's best for _you_. Pretty much every established framework, platform, and language is good.
You can build an app with any of them, but some have special characteristics that might seem more relevant to your interests. You should evaluate probably 5-10 of each of the available options in each category based on the features they specifically point out that they're good at, and choose which ones you want to use. Here are some of the different frameworks/platforms/languages you can start with:
MVC-ish frameworks:
Angular: https://angularjs.org/
Ember: http://emberjs.com/
Backbone: http://backbonejs.org/
React + Flux (my pick, as it's pretty revolutionary):
http://facebook.github.io/react/
and
http://facebook.github.io/flux/
Server-side:
Ruby on Rails (the most common server-side framework, but slowly fading out as a favorite): http://rubyonrails.org/
Node.js: http://nodejs.org/
io.js (my pick, as I'm involved with it, and it's 100% a step up from Node, as you can by default use ES6 (search ES6 on Google if you don't know what it is) features): https://iojs.org/en/index.html
Django (Python): https://www.djangoproject.com/
Client-side JS:
jQuery: http://jquery.com/
Plain JavaScript (my pick, as I feel it's a lot more healthy to learn vanilla instead of rely on jQuery as a crutch, which is what most, but not all, front-end devs that use it do): A million tutorials online. https://developer.mozilla.org/en-US/ for docs on functionality. Find extremely well-designed (visually) blogs that have tutorials on how to _build programs_ that have actual usable functionality in the browser.
If you want any more advice or guidance, hit me up on Twitter @bitandbang or email me at bitnb@subvertising.org.