Take the 2-minute tour ×
Programmers Stack Exchange is a question and answer site for professional programmers interested in conceptual questions about software development. It's 100% free, no registration required.

I am learning Django and new to web development. Please excuse me if you find this question too dumb.

So, I am creating a Facebook application using Django which I would like to host in Google App Engine. The project would be focusing on reading RSS/ Atom feeds of any website (That's all I can say now).

I am sure enough to process the RSS/Atom files but I am worried about the front end (User Interface) part - "The design part". I don't know HTML/ CSS/ JavaScript (I can handle simple HTML stuff but that doesn't lead to any designing thing).

First, I thought of using tools like dreamweaver or any equivalent software for designing UI but when I really started learning django and getting into it, It seems to be a "not possible" thing.

So,

  • How should I design the UI part of my site? Can't I use tools like dreamweaver?

    • If NO, what's the best way for guy like me who doesn't know JavaScript/ CSS
    • If YES, what's the best open source alternative to dreamweaver?
    • Can Google App Engine handle all this suff?
  • How people who deal with Django edit those template pages. The Django mentions the it will separate the logical (views) and design (templates) parts so that different departments in a company can handle separately. But Considering the fact that the Django's HTML pages are filled with "tags" which are no way related to HTML (designing), how UI people handle it?

share|improve this question
add comment

3 Answers

Anyway you'll need to understand how is HTML working. You can start with simple layout without any graphic beauties.

You can use any editor you like (Dreamweaver or whatever) but django's tags are linking the template to the program code, so no editor can make it with WYSIWYG (what you see is what you get). Some IDEs have few helpers for that tags, but no more, they just automate things like closing tags and so on.

Or you can hire a freelancer to create and integrate a template in your application, but it's not the best way to learn something :)

share|improve this answer
add comment

The Django docs never mentioned that a person who doesn't know what HTML/JS/CSS is about can use it. Separation of concerns is done also in the backend, where the actual action(the views) are separated from the database layer or the URL-routing logic - That allows for loose-coupling. It never means you can write views without ever understanding your models. Similarly(well, not that similarly), you do need to have an understanding of HTML/CSS to get basic web pages up. You may or may not want to learn some JS, but I think with HTML5, it is more or less essential to know some JavaScript.

No sane web-developer is going to advise to to use a WYSIWYG editor like DreamWeaver. Write HTML by hand. You may, however, use things like HTML5 Bolierplate to get your project started fast.

Google AppEngine is a PaaS that you can use to deploy your application. It will provide among other things, the Python runtime, a high-replication datastore etc. - but it will not take care of generating your front-end.

If you're going to hire someone to take care of the front-end, that person would anyway have to know how to use Django tags, as really(if you follow the MVC - or MTV pattern closely), they define the blurred line between "static" and "dynamic" web-pages. Even if you choose to hire a frontend-developer, I suggest you grasp the basics of HTML and CSS(at least so much that you know how it works and how are you going to serve the CSS static files). It will only help you in the long run.

Not all people have good design skills, and design is undoubtedly best left to skilled people, but when it comes to actually serving pages with that design, it is all HTML and CSS. So you may hire a person who doubles up(most do) as a front-end designer and a front-end developer. But I suggest you to not remain completely unaware of front-end technologies.

share|improve this answer
add comment

What I do is I either design a layout in dreamweaver, or hire a designer to create HTML "wireframes" with fake data, then I go over it and use Django's (or Jinja's) template tags to make it into a working template. I know some HTML, but I would never be able to make anything attractive. Functional? Yes! Pleasant to look at? Glob No!

So, in conclusion; With just some basic knowledge of HTML, you can modify a pre-made HTML document to work as a template.

share|improve this answer
add comment

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.