Welcome to the Treehouse Community

The Treehouse Community is a meeting place for developers, designers, and programmers of all backgrounds and skill levels to get support. Collaborate here on code errors or bugs that you need feedback on, or asking for an extra set of eyes on your latest project. Join thousands of Treehouse students and alumni in the community today. (Note: Only Treehouse students can comment or ask questions, but non-students are welcome to browse our conversations.)

Looking to learn something new?

Treehouse offers a seven day free trial for new students. Get access to thousands of hours of content and a supportive community. Start your free trial today.

Development Tools

Nick Silhacek
Nick Silhacek
2,091 Points

To build a web app for answering binary questions like Tinder (swiping unnecessary), what technologies should I learn?

You could also think of it as a "Would You Rather" web app, if that helps. The user can click/tap on the left or right side of the screen to select which is preferable. There would be a skip button if it is unanswerable. Swiping might or might not be good for the mobile experience, but for simplicity, I'm foregoing that.

I want to collect a user's answers, run an algorithm on them, and present the user with recommendations.

Obviously, HTML and CSS will be needed, and I'm sure Javascript. Will AngularJS be needed, or is that just a nice-to-have?

And to collect the data on the answers, I assume PHP or Ruby, but would one be better than the other, and am I leaving anything out? I know Python, so maybe interfacing with Django would be a good idea?

1 Answer

Ricky Catron
Ricky Catron
13,023 Points

Pretty much any backend language Python, Ruby, PHP, or Node would work. AngularJS would be a want not a need but you may require some pretty crazy JavaScript without it. If you know python I would recommend Flask, or Django. You will also need a database. I suggest something SQL based such as MySQL.

All in all it sounds like a pretty intensive project but I think it would be do able with sometime. I would pick something and get cracking! I'd love to see your results and challenges along the way.

Goodluck! --Ricky

Nick Silhacek
Nick Silhacek
2,091 Points

Thanks a lot for the info, Ricky. I see a Python (using PeeWee ORM) class is scheduled to be released on Treehouse this month, so I'm planning to use those technologies (and SQLite or MySQL). Speaking of SQL, do you have any thoughts on whether SQLite or MySQL would be better, or if going object-oriented with something like NoSQL would be best?

Since Flask is also available to learn here, I think I'll go with that. And AngularJS, since I'm not interested in going too crazy with Javascript. I don't know anything about it, but a professor I spoke to suggested Spring dependency injection if I felt up to it. I'm thinking I'll save that for a future project, though--I've got enough on my plate.

Thanks again!

Nick

Ricky Catron
Ricky Catron
13,023 Points

Great idea! I would chose an SQL based database simply because it has been around a while, is well documented, and has a large helpful community.

This is the best article I have read on picking an SQL database. I don't know how you plan to build your app so you will have to read up on databases and pick the best one for you.

Flask is a great choice and my personal favorite so I love that idea. Angular is an option but you may want to check out JQuery first and maybe wait on this. I think two different frameworks and a new project might be a lot to jump into so I would go piece by piece. You got a lot on your plate but I can't wait to see this project.

Goodluck! --Ricky