Welcome to the Treehouse Community
Want to collaborate on code errors? Have bugs you need feedback on? Looking for an extra set of eyes on your latest project? Get support with fellow developers, designers, and programmers of all backgrounds and skill levels here with the Treehouse Community! While you're at it, check out some resources Treehouse students have shared here.
Looking to learn something new?
Treehouse offers a seven day free trial for new students. Get access to thousands of hours of content and join thousands of Treehouse students and alumni in the community today.
Start your free trial

Saad Khan Malik
25,199 PointsI have an app in mind I would like to build, I need help planning out a custom learning path.
Ok so in my tool set I have an adept understanding of HTML, CSS, JQuery and a little JavaScript....
As off now I have skinned out the app using the above mentioned languages. I was able to find a simple tutorial to "package" my app into google chrome's desktop app format. This means I can deploy to both apple and windows. I need help figuring out the back end skills I should be learning next in order to complete the following list of tasks;
Without giving too much of the app away,
- The users must be able to log into the app.
- Each user must be assigned a key.
- The users must be able to save personal info and customize setting from and array of index-able data.
- These saved setting must the sync to a server/cloud/Dropbox (any one will do) apart from some basic profile information, the data will consist tabular information, CSS styling and some png images.
In the future I do plan on building an ios and android app that displays much of the same information and data in the same patterns.
So the question is, Which series of courses should I invest in next, that would allow me to built this app with this future framework in mind.
I would like to understand my options and reason out why I would use for example, ruby over php... etc, and pic specific development tools/environments.
Any and all help is very much appreciated !!
3 Answers

Ronald Durham
Courses Plus Student 489 PointsWell i trying to learn this android apps process my suggestion would be start the website and build the mobile app around it....

Jose Balaguer
17,473 PointsI think many of us are struggling trying to know how to put all the pieces together, I mean languages and technologies.
I found the "Full Stack Javascript" track very appropriate since JavaScript is not only for the front-end (browser-side) but also You can build and manage the back-end (server-side) of your app using node.js.
I suggest You take a look at the AngularJS framework. Also see the Google AppEngine that allows uploading your app directly if it's written on JavaScript.
I've seen that having a multiple OS-native apps is a huge task that need to develop APIs that communicate each app to the server. So take a deep look at the courses and technologies. I'm starting with my cross-browser app and expect to develop a native-OS when learning all the back development involved.
Other way You can go is full-mobile first. Choosing Android or iOS and building your native app first and learning in the process.
The way is up to You, I think.
I hope I was useful.

Saad Khan Malik
25,199 PointsThis is definitely one strong direction to consider.
Your insight is very much appreciated :)
Thanks!

carlos medina
12,511 PointsOff the top of my head, here's a plan to consider not in specified order but what you will need to know.
A database language there are many such as mongoDB, MySQL, MS SQL etc for your application start with MySQL MySQL allows you to store, update, retrieve and delete data in a nice easy way. The MySQL database will store your users information which your app requires I.E
SELECT person_name WHERE id = 1
This piece of code tells MySQL to select information from the database in this case the name of the person where ever there's row with and identifier as 1 It should take a few days to learn how to use MySQL and get some basic stuff up and running
Now with a database language you need a server side language this is to talk to the database you created and perform creating, updating and deleting without going directly into the database yourself. I.E The user wants to login well... We give them a form they submit it then your server side language takes it from there taking all the they submitted and using it to operate on the database
Some server side technologies to consider are PHP/Ruby (there are many more such as node, java) I recommend going with PHP as it's widely use accross many sites you can even get free hosting to place your PHP/MySQL Code. Ruby is a good choice but I recommend leaving it till you are more comfortable.
As for tools and development environments I personally use tools from the jetbrains.com company excellent tools. If your going with PHP development check out PHPStorm from their catalog it's paid software so if you would like it for free well that can't be discussed here. As for environments I program on linux (the Ubuntu distribution of it). If your on Mac then that's good too even on windows also. but if you'd like linux you can look into dual booting your machine.
As for android and ios development I can only help on android. Take the android track here at treehouse but don't just learn from here android is a major topic to much to be covered on treeehouse. Look at youtube (check out thenewboston channel) , find some external site android courses.
Good Luck