tags:

views:

1804

answers:

21

Hi!

I can't find any other post which addresses this topic on a purely general level.

I'm very unexperienced in developing full scale websites. I get around using HTML and PHP for simple tasks.

Now I'm looking at developing a more elaborate site and want to get hold of a good tool which doesn't eat my wallet to the bones.

I guess I should add more intelligent text here about what I expect it to be capable of, but I really don't know so much. I guess the code/design/preview style in dreamweaver appealed to me, and I'm definetely going to use scripting like PHP or ASP.NET, some database work etc.

I guess pretty much the standard (?) website development tasks.

So, are there good tools out there I should be looking at?

+4  A: 

There are tools specific to PHP (and mySQL...) and tools specific to ASP.NET (and SQL Server). As far as general tools independent of that important choice, there's the FireFox FireBug plugin, for working with javascript, and jQuery, a library that makes working with javascript easier.

Also, use version control, like Subversion. Consider using an offsite Subversion hosting service which then doubles as a backup for you, like Unfuddle, Assembla, CVSDude. It also allows for collaboration.

Corey Trager
A: 

Take a look at Microsoft Expression Web, its a very good designer and also you can use Microsoft Web Developer 2008 and SQL Management Studio Express 2008 with it.

Mohammadreza
Ick... I'm an asp.net guy and I really dislike how MS is complicating the development process with these separate designer products. For a large or well segregated dev shop they may make sense, but for small or mid size teams (<100) they are a pain in the butt.
StingyJack
Expression Blend is vital for WPF and Silverlight, though.
Robert S.
+6  A: 

Version Control (Subversion). Very useful for anything more than a tiny project.

Mark Sailes
It's good for the tiny projects too :)
Andrew Van Slaars
Subversion is very good.There's a plug-in that integrates the Subversion with Aptana Studio.
Check out Git too. Git along with Github is GREAT.
Tom
+3  A: 

For PHP and MySQL development I suggest you to use Aptana Studio.

+1  A: 

There are pretty much three major camps in web development: Java, PHP/Ruby and Microsoft.

If you think ASP will be your thing, then certainly go ahead and get the free Studio Express from their site. Expect to remain dependent on Microsoft tools and start paying later for upgrades as your work becomes more elaborate.

If PHP should be your choice, try Netbeans, Eclipse, Aptana or Zend. Dreamweaver has great PHP support as well. Use Sqlite as your database or MySql if you want to learn just one thing from the beginning. Apache webserver will be serving your pages, yet Resin Querques is simple and faster.

Good luck. I'm a happy Java guy.

Florin
The only upgrade you'll have to pay for is for your operating system itself. You don't need to pay for any tools to work with ASP.NET, and the trend has been that the free tools hav gotten better and better.
Corey Trager
A: 

everything free and good:

Scripting language: PHP, Python, Perl
Database: MySQL
Editor: Notepad++, Editplus, VI

Dr. Hfuhruhurr
+1  A: 

For coding, use any program you feel confortable with:

  • Aptana (PHP)
  • Dreamweaver (PHP)
  • Eclipse with PDT or some other extension (PHP)
  • Microsoft Expression Web (.NET)
  • Microsoft Visual Studio (.NET, but it may be a bit over your needs)

To help debug and test I use firefox with some extensions:

  • Firebug
  • Web Developer Toolbar
  • NoScript

That probably will get you ready to most projects

Gabe
PDT stands for PHP Developmet Tools (I meant PHP inside the parenthesis there)
Gabe
+17  A: 

Firebug is a must, whatever language route you choose to take.

Hates_
Chrome also has a built-in debugger, as does Opera.
staticsan
+1 for firebug. It is an absolute godsend.
Anders
+33  A: 

My suggested stack for PHP web development

(everything free, free with strings or near-free)

[EDIT]This answer is only helpful for PHP, it would be great to have similar answers for other web development environments.[/EDIT]

Local Server infrastructure (AMP stack on your computer)

Desicion help for chosing the right AMP stack:

  • all of them come with Apache, PHP, mysql, phpMyAdmin
  • XAMPP also comes bundles with Mercury as Mailserver, the others don't
  • WAMP enables you to switch between different versions of Apache, PHP, mysql (but it doesn't always work as promised or expected)
  • in XAMPP you have to do changes manually whereas in WAMP and Zend Server you can do them via UI (enabling Apache modules and PHP extensions, setting php.ini properties)
  • especially Zend Server gives you a very convenient way to configure PHP via web forms

Summary: If you don't need compatibility with some older PHP versions or extensions, use Zend Server Community Edition, if you want a quick and stable solution with low configuration needs, use a version of XAMPP, if you want flexibility and know what you're doing use WAMP or even better set up your own environment

For developing

  • Aptana Studio, Stand-alone with PHP plugin (very cool features which make writing code easier)
  • Subversion SVN combined with Tortoise SVN (if on windows) for version control
  • Xdebug for debugging, can easily be integrated with Aptana
  • WinCacheGrind for profiling (reads and presents Xdebug .out files)
  • WinMerge for code comparison (diff) and mergin; integrates with Tortoise SVN
  • Firebug and other Firefox and IE web developer extensions
  • Selenium IDE Firefox plugin, great GUI to create your unit tests without coding a lot

As a code-framework (so you don't need to write everything from the scratch)

Need to have and nice to have aditions besides the basic language framework

  • jQuery and jQueryUI Javascript library: the usual js tasks plus a great way of letting your project have the Web 2.0 look and feel
  • Open Flash Charts: One of the best free charting options available, has libraries for PHP, PHP5, Python, Ruby, and more.

For the project management

  • unfuddle: ticketing, milestones, notes, messages, repos (with SVN/git integration)
  • GanttProject for creating gantt charts
  • Balsamiq Mockups great tool for fast and fun collaborative sketching of UI, pageflow, etc.
  • SlimTimer for elegant web based time tracking

Cool books to read

If you want to know ppls opinions regarding these different frameworks check out the following posts:

With the non-PHP stuff I can only suggest what I would try first:

  • For Ruby I would probably go with Ruby on Rails and Eclipse/Aptana.
  • Python with Django
  • for .NET the visual studio .NET
tharkun
I update this as I learn and discover, check back if you're interested.
tharkun
Just added Selenium for unti testing, a great new discovery!
tharkun
Added SlimTimer for time tracking. Have started using it and am happy about it.
tharkun
Found out, tried, enjoyed and added Balsamiq Mockups
tharkun
can't imagine life without Firebug. Also worth noting that there is a growing mountain of useful plugins for Firebug.
LRE
Added more AMP stacks and there advantages and drawbacks.
tharkun
+3  A: 

A small additional tool I use every now and than is YSlow. This is a plugin for firebug that analyzes your page and tells you why it's slow based on a list of rules.

Sorskoot
+2  A: 

if you would like to try asp.net there is a installer, which puts everything up and runnng: http://www.microsoft.com/web/channel/products/WebPlatformInstaller.aspx

(Visual Studio 2008 Express and SQl Server Express are free Tools!)

Christoph
+1  A: 

For testing, check out Selenium, http://selenium.openqa.org/

It let's you build and run tests interactively in Firefox, with support for other browsers as well.

Filip Korling
+4  A: 

These are plugins for Firefox

Design / testing

  • Pixel Perfect for Firebug
  • ColorZilla
  • IE Tab
  • View This Page in Safari
  • Dummy Lipsum
  • Nuke Anything Enhanced

Coding

  • Firebug
  • Live HTTP Headers
  • Web Development Toolbar
  • Yslow for Firebug

Javascript

Download jQuery and check out these sites

  • jquery.com
  • jqueryfordesigners.com
  • visualjquery.com

PHP

As I use PHP I'll recommend these for it...

PHP editor - Dreamweaver and Notepad++ are both great.

Learning PHP - php.net for reference, sitepoint.com for getting started.

Good luck!

alex
A: 

For coding on the mac, nothing beats Textmate with the latest third party bundles for popular languages such as ruby, php, and javascript.

For Ruby on Rails and Texmate, check out screencasts from peepcode.com to see how much power this single tool gives you.

Definitely use Firebug. If you use Textmate, there are macros for firebug as well ;)

Jonathan Soeder
A: 

Vi, Google, and Coffee

Xap
with Coffee being the important bit
LRE
A: 

I have enjoyed playing with some of the bigger packages (DreamWeaver, Expression Web etc.) but I always end up going back to Notepad++, FileZilla and whatever resources fit the languages and design that I'm using, whether they be in a book or found by a search engine.

W3schools is a useful site for basic language specifications on most open web languages.

IanGilham
DreamWeaver is not comparable to a real IDE. You can't really develop web applications with DreamWeaver.
tharkun
I should probably clarify that when it comes to the web, I am no more than a hobbyist. I like playing with fun stuff, but have never needed to build anything remotely complex.
IanGilham
A: 

Ruby on Rails.

Aptana Studio + RadRails.

Whatever
A: 

Ruby on Rails

Textmate.

Tom
A: 

Some of the wireframing tools should also be mentioned here. Since Aptana Studio is a very popular choice then you might be interested in taking a look at WireframeSketcher prototyping plugin.

Peter Severin
+2  A: 

If you're stuck using IE, the IE Developer Toolbar is a must have.

theycallmemorty
A: 

Users of Eclipse PDT & Zend Studio 7 may want to try out nWire for PHP.

nWire for PHP is an innovative Eclipse plugin (works with Eclipse PDT & Zend Studio 7) which accelerates PHP development by helping developers navigate through their code and better understand the architecture of their application. nWire offers unique tools for:

  • Interactive code visualization
  • Code Navigation - navigate your code by associations
  • Search as you type for files, classes, methods, fields, etc.

BTW, Aptana recently consolidated with Eclipse PDT, so it works as well.

zvikico