A responsive user interface is changing it’s appearance depending on the browser window size. If you have a small screen like a tablet or a phone your web site will still look good and will be readable.
You can write back-end programs using any of the following languages: ASP.NET, Python, Java, PHP, Ruby … In general each language has it’s own back-end framework.
Setting-up the project
The 10 steps to create a project
- Firs you must learn to use a version control software, preferably git or mercurial. You check-in the empty project from the beginning. Do not wait until the project grow, it may be too late.
- Write unit tests. I’ve always scoffed at them because they only test the cases you’ve thought of, and you probably already thought of them when you wrote the code you’re testing, but once your project grows and you add people to the team, you’re going to wish you’d done it.
- Have separate development, test and production servers so you can have people looking at your stuff on test while you break stuff on development environment. Use a labeling or branching system in your version control so you can always go back to the code that’s running on each server. If a problem comes up in production while you’re working on a new whiz-bang new feature in development, you want to be able to put aside the new feature and fix it in the production version.
- Deploying code to development should be automatic as soon as you check in. Deploying to test and production should either be automatic or a single click.
- Make sure your boss and other stake holders actually look at the site on test before you deploy to production. Try to get some of the people who will actually use the site involved in usability testing. Listen to them, but don’t let them design the thing.
- Make sure your code has clear division of responsibility- don’t mix the access control in the middle of the business logic and the UI.
- Use a web framework like Twitter bootstrap. Sometimes you’ll be fighting with it, but it will take a lot of the burden of getting a consistent UI off your hands.
- If you use Python, use a good back-end framework like Django or Flask that is lighter. Make sure it supports or at least doesn’t prevent you from doing AJAX and asynchronous backed work.
- Try to make responsive web pages using bootsrap. Your page should work on any monitor size from very large to very small ones. Some users use monitors in portrait mode and some are using multiple monitors. Having the applications design for a fix size monitor is a huge mistake.