General Question

nashish's avatar

What web programming texts would you recommend?

Asked by nashish (196points) February 21st, 2010

I am always looking to expand my library of books and am really lacking in the web design/coding department. I currently have two of the “Visual Quickstart” books and those have been pretty helpful so far, but I feel I need to learn more. Some of the coding languages I would like to learn more about are (X)HTML, DHTML, CSS, PHP, Javascript, and AJAX. My goal is to be as well-rounded in my coding knowledge as possible. I know it’s not possible to know everything, but I would like to have a working knowledge of these things.

Feel free to suggest any other languages, products, or features that you think would be good for a budding web designer to look into.

Thanks in advance!

Observing members: 0 Composing members: 0

14 Answers

poisonedantidote's avatar

the AS3 bible was very helpful to me.

angelaclaire's avatar

Flash can make websites look really cool, but it can also be kind of…well… flashy :) So whether or not you would use that depends a lot on what types of sites you’re building and your level of interest in cool-but-busy-looking animated pages.

Along with PHP, have you looked into mySQL? My husband uses them together in almost every project he builds.

stevenelliottjr's avatar

There is no great way to answer this question. What kind of sites do you want to build? Flash is not as popular as it used to be. One of the reason being is that anything you do in flash is not searchable by google or other search engines. And it’s distracting to the eye. Flash should be used sparingly an most as a way to enhance or set off the site design. Study HTML/CSS first before you really dig in to PHP or JavaScript. But if you’re really new to web development and you want to buil database backed websites check our Ruby on Rails and the agile development with ruby on rails book and/or Djano and the definitive guide… Which I believe is for free at djangobook.com (fluther is built on django) php is ok but it’s a bit ugly to maintain.

stevenelliottjr's avatar

Sorry for the poor grammar. Writing on the iPhone is not easy sometimes!!

liminal's avatar

http://my.safaribooksonline.com/home?subpage=hometab2 is an online full-text database of technical books from excellent publishers. It is a great way to stay on top the most up to date information.

noyesa's avatar

Given that I’m not familiar with what you know this is a bit of a tough choice, but here are a couple books that really helped me when I first started with web development: DOM Scripting and Bulletproof Ajax by Jeremy Keith, CSS Mastery: Advanced Web Standards Solutions by Andy Budd, and Object-Oriented PHP by Peter Lavin. These books are pretty fundamental, so depending on your knowledge they may well be pointless.

For alternative languages, The Ruby Way by Hal Fulton was a big help, even if it’s a little bit outdated.

stevenelliottjr's avatar

The Ruby way is a great Ruby book but if you’re interested in learning to program you might check out:

Practical Programming, an Introduction to Computer Science using Python by Jennifer Campbell, Paul Gries, Jason Montojo and Greg Wilson

OR

Learn To Program, by Chris Pine

Obviously one uses Python and one uses Ruby, but both are great introductions to the fundamentals of Computer Science which you should have before you start writing oodles of server-side code. Also, both languages are very friendly for newcomers.

I don’t recommend PHP as a starting language, I would recommend either Python or Ruby, both are excellent languages and can be very useful later on for web development.

noyesa's avatar

I would like to share my opinion on @stevenelliottjr‘s recommendation that you learn Python or Ruby—I would recommend Python. It’s much more applicable generally than Ruby is. One of the points of the Zen of Python is that explicit is better than implicit, which seems like a nuance to the seasoned programmer but if you’re just learning programming it’s an important thing to have. Ruby tends to use a lot of magic, so to speak, and I’ve found it to be confusing to newcomers.

stevenelliottjr's avatar

@noyesa I agree but some people have it in their heads that they’re gonna use rails (which I don’t like) so I thought it was a good idea. I prefer python hands down to Perl… Ahem, I mean Ruby.

nashish's avatar

I have a very basic knowledge of knowledge of XHTML and CSS; I’m just starting my self-education on this subject. I appreciate all the suggestions you all have given me so far!

Also, if I should have a robust understanding of XHTML before I tackle Java, what texts would you recommend for learning it well?

stevenelliottjr's avatar

@nasish
you can learn a lot about HTML and css for free on the Internet. I don’t think I ever actually bought or read an HTML text. Check out http://www.w3schools.com/

stevenelliottjr's avatar

java is a fine language but if you want to use it fir web development you’ve got a long road ahead of you. Most java web frameworks are very robust and difficult to get started in. Also java is a very good language but has an enormous set of APIs and class libraries. Again I would recommend learning to program with python first before moving on to java.

nashish's avatar

Alright, thanks!

noyesa's avatar

Agreed with @stevenelliottjr. Most web development frameworks in general are a very abstract and high level way of thinking about web applications. If you don’t know the basics of server-side programming then using one will seem tedious and overwhelming. Java has lots of excellent libraries and frameworks, but a beginning programmer is going to find them difficult to understand. They exist mostly to solve problems that become an issue when you start working with large web applications.

Java is an object-oriented programming language, which could make it more difficult to learn if you’re completely new to programming. I don’t actually know how much of a roadblock this is, but object-oriented programming is not necessarily the most intuitive way to learn programming.

With Python, you can start with simple Python scripts to help you learn the language. The standard Python binary includes a rudimentary development environment (IDLE), and Python has an interactive mode where you can enter snippets of code and see the results immediately. Learning programming with Java requires that you write an entire working application and then run it. Learning the Piano is certainly easier when you’re allowed to press the keys as you wish, and the same is likely true with programming. Java is like a piano that requires you to work out the whole song as sheet music before you’re allowed to play.

It is relatively simple to set up a web server like Apache to run Python scripts using CGI. You can start from the most rudimentary scripts and work your way up to more functional web applications. It’s important that you know how to program and that you know Python before doing this, because learning CGI scripting and Python at the same time is going to be confusing and overwhelming.

Answer this question

Login

or

Join

to answer.

This question is in the General Section. Responses must be helpful and on-topic.

Your answer will be saved while you login or join.

Have a question? Ask Fluther!

What do you know more about?
or
Knowledge Networking @ Fluther