Title: I didn&#x27;t know what I wanted to do before going to college at Penn State. I just knew that I had to go to college.  I was always interested computers so I ended majoring in Information Sciences and Technology.  About halfway through when I actually got to take some programming classes I discovered that I had a passion for software.  I went to my counselor and inquired about switching over to CS.  Unfortunately, almost nothing from my major would transfer and I had to pretty much start over.  As someone paying for college myself this really wasn&#x27;t an option.  I continued on with IST in the Design and Development option.<p>I ended becoming the first employee at Bay Area startup.  They were a bit desperate and I convinced them I could make their Android apps.  I did and they are both highly rated.  I also made one of my own that ended up getting featured on Google Play and receiving a lot of press.  I have a bit of knack for it but I am so bored with GUIs and UIs.  I want to work on harder problems and not just use other peoples libraries.  The problem is that my lack of knowledge limits my thinking.  I want to fix this.  I am torn between going back to school for another BS in CS, pursuing a MS in CS, or teaching myself from things like MIT Open Courseware and Udacity.<p>I am not really worried about getting a job.  This is about gaining knowledge.  Although having a &quot;real&quot; CS would certainly help keep me from being pigeon holed as an app developer and open a few more doors.  I do think that going back to school would be the quickest route to gaining the knowledge I want.  I am just worried that I wouldn&#x27;t get into a top school and I don&#x27;t know if I should try to do a BS, MS, or just take classes.  I really don&#x27;t want another $50k in debt either.  Especially when things like the Georgia Tech online MS CS is coming out for $7k.<p>So, what is the best way for a proven and largely self taught developer to take their knowledge to the next level?
Upvote: