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 trialChris O'Brien
6,544 PointsClient Websites | Client to upload their own videos/blogs
I have built a few websites for friends which has gone well so far. Basic static websites with some transitions fancy stuff but nothing in depth. I have had a potential client approach me asking to build a website for them. They are a personal trainer at my local gym. He is wanting a website that will allow him to upload his own videos about powerlifting that he will record on his phone. My question is :
What program language is needed to allow the end user to upload his own videos, possibly write a short blog/day to day stuff. I know he can send me the links and i can update the files with the link but i don't think this is the correct way.
Any help will be appreciated
2 Answers
andren
28,558 PointsFor this type of task you would need a dynamic site with a fair bit of server-side code running on it. The code can be written in pretty much any server-side language of which there are actually quite a few, PHP, Python, Java, C#, Ruby, JavaScript just to name a few.
If you want to use JavaScript for this task (which you presumably is already somewhat familiar with) then you need to look into Node.js which is what allows you to use JavaScript on the server. And Express which is the most common server framework that is used with Node.js. Treehouse has basic tutorials for both available but you should be aware that the project you are taking on is no small feat.
You would essentially be building a simple CMS (Content Management System) which enables somebody to login to a site and submit media, blog posts and other such activities. For such a system to work you will need to implement not only code that can receive and save media and text from some input form on the website but also code to authenticate that the person submitting this info is a valid user. As well as code that dynamically generates the website before it is sent from the server so that it always displays the most recently posted blog posts and media.
None of those things are impossible, far from it. But it's certainly not a quick and easy task, especially if you have no prior experience with server side coding and dynamic websites.
You might be better of using a prebuilt CMS like WordPress and then customizing that yourself instead of creating a CMS from scratch. But that still requires a bit of learning to use and customize, though Treehouse also has tutorials for that available.
Chris O'Brien
6,544 PointsHi Andren,
Thank you for the informative answer. I guess possibly taking on such task at the moment could be overwhelming for my current skill level. I would need to go away and study some more and create some dummy websites before taking on projects like this myself.
Thanks you again.
andren
28,558 PointsYes it would indeed be a good idea to get some more practice before taking on such a project. Dynamic sites are quite a bit more complex than static ones. And once you start to involve things like user logins and content submission you have to take a lot of care to secure the site properly, which is something that is easy to screw up in the beginning. And screwing that up could lead to the website being compromised and taken over and all sorts of other bad stuff.
As I mentioned above it's certainly not impossible to build a CMS from scratch, especially if you just intend for a single user to use it for simple submissions, but I would definitively recommend you take some time to learn server-side coding and things like that before you actually take on such a project.
Alternatively looking into a prebuilt CMS (of which there are many) like I mentioned is not a bad idea either. They are very capable and well tested, but they do come with a learning curve of their own.
tobiaskrause
9,160 Pointstobiaskrause
9,160 PointsIf it is just a normal blog i would suggest GHOST. Its also open source but much faster and a leigthweight in compareism to wordpress. Wordpress is way over the top since a couple of years.
https://ghost.org/de/about/