[thelist] What tools should I use?

M. Seyon evoltlist at delime.com
Mon Sep 12 14:21:45 CDT 2005

Message from jcole1513 (9/12/2005 07:11 AM)

>I'm pretty new to web development (supporting one website for about a
>year), and would like to know what direction I should take for becoming
>a full-fledged web developer. Specifically, I would like to know what
>are the arguments for using open-source tools (Apache, PHP, MySQL,Linux)
>over, say, Microsoft environment (IIS,ASP,.NET, SQL server).

A slightly different perspective here.

I don't know what your background is, so I may be suggesting things you 
already know, but a very significant aspect of web development has very 
little to do with development technologies, especially as you begin 
developing and maintaining multiple commercial sites.

I offer you these three suggestions:

1. Project Management

The nitty gritty of coding is all well and good, but without a strong sense 
of managing time and resources you can quickly swamp yourself. An ability 
to lead a project means you can step back from the actual code, in certain 
instances, and see where you can hire contracted workers to develop 
specific widgets that you aren't technically capable of developing on your 
own. This means you do not need to know every single technology at an 
indepth level.

This may not be for you, of course. Some people are much happier being chin 
deep in code than being chin deep in managing coders.

2. Know the Business Side

Get into the board room. I know several developers who are technically very 
strong, but they have never been exposed to a board room. All of their 
experience is at the level of taking a spec produced by someone else, and 
creating an application. They have very limited ability to support a client 
by identifying problems within the organisation and proposing viable 
solutions. They also tend to have a lifetime's worth of grousing about 
"this stupid client insists I do x" or "I know it's stupid but that's what 
the client wanted". But they have never, or rarely, interacted with a 
client at the decision making level to understand where these specs come 
from, or to correct the spec before it becomes cast in stone.

This also relates directly to "should I use PHP or ASP" type questions, as 
that is not a developer-centric decision to make. A successful developer 
will assess the client's needs and requirements and be able to implement 
the most appropriate language/technology, not the language/technology s/he 
is most comfortable with.

Again, some people would much rather never see a client, but I personally 
would advocate for at least some knowledge of how things work at this 
level, even if you move away from it at the end.

3. Understand the Value of the Community

The community is probably the strongest asset of the Internet. Case in 
point, you came to evolt with your question didn't you. ;-)

Understand enough marketing that you can identify your client's potential 
community, and how to put those people to work to increase the value of 
your websites. Amazon isn't the top e-commerce site simply because it sells 
books. Slashdot isn't just a bunch of geeks bumming around instead of doing 
real work. Craiglist isn't another old classified ads service. Etc.

And a bonus, my only comment directly related to your question:

4. Pick Your Poison, Stick with it

Don't try to learn every single technology out there. Pick the ones you 
really think you need to know. Learn them inside out. If it's not in your 
list of core skills, outsource it.

Obviously be aware of the others, have a basic understanding of them. But 
don't waste time learning PHP for 3 months, ASP for 3 months, ColdFusion 
for 3 months. Unless you really want to, that is.


More information about the thelist mailing list