77 lines
3.2 KiB
Markdown
77 lines
3.2 KiB
Markdown
---
|
||
layout: post
|
||
title: "How to start becoming a web developer"
|
||
date: 2012-09-07 18:12:12+00:00
|
||
tags: [development, technology]
|
||
permalink: /blog/2012/9/7/how-to-start-becoming-a-web-developer
|
||
published: true
|
||
author:
|
||
name: Gergely Polonkai
|
||
email: gergely@polonkai.eu
|
||
---
|
||
|
||
A friend of mine asked me today how to become a web developer. It took me a
|
||
while, but I made up a checklist. It’s short, but it’s enough for the first
|
||
steps.
|
||
|
||
#### First of all, learn English
|
||
|
||
Well, if you read this, maybe this was a bad first point…
|
||
|
||
#### Choose a language and stick to it!
|
||
|
||
For the UN\*X/Linux line, there is PHP. It’s free, easy to learn, and has many
|
||
free tools and documentations available. It can be used in a functional or an
|
||
object-oriented way.
|
||
|
||
C# is another good way to start, but for the Windows line. It’s fully object-
|
||
oriented, and the web is full of tutorials, how-tos and other resources.
|
||
|
||
#### Learn the basics of the system you are working on
|
||
|
||
To become a good developer, learn at least the basics of the system you are
|
||
working on. Basic commands can always come in handy. Debugging (yes, you will
|
||
do tons of bugs for sure) can become much easier if you know the huge set of
|
||
tools provided by your OS. You should also try to develop in the chosen
|
||
environment. Chose PHP? Get a Linux desktop! ASP.NET? Get a Windows.
|
||
Everything will be much easier!
|
||
|
||
#### Learn the basics of the web server you are using
|
||
|
||
PHP can run on [Apache](http://httpd.apache.org/) (as a module), or any
|
||
CGI-capable webserver, like [lighttpd](http://www.lighttpd.net/) or
|
||
[nginx](http://nginx.org/) (well, it can also run on IIS, but trust me: you
|
||
don’t want that). ASP.NET is designed for IIS, and although some scripts can
|
||
be run under a mono-capable server, it should still stay there.
|
||
|
||
Whichever you choose, learn the basics! How to start and stop the service,
|
||
basic configuration methods, modules/extensions, and so on. It’s more than sure
|
||
that you will face some issues while developing, so it can never hurt.
|
||
|
||
#### Keep your versions under control
|
||
|
||
Version control is critical nowadays. It gives you a basic backup solution,
|
||
can come in handy with debugging, and if you ever want to work in a team, you
|
||
will badly need it.
|
||
|
||
Subversion is a bit out of date now, and it’s kind of hard to set up.
|
||
|
||
Git is no easy. You will have to learn a lot of stuff, but basicly it’s just
|
||
another version control system. Just choose if you want to stick to
|
||
merge-then-commit or rebase-then-commit, get a client, and get on the run.
|
||
|
||
Microsoft’s Team Foundation is another good way if you are working in a team.
|
||
It provides several other features besides version controlling, and is well
|
||
integrated into Visual Studio, which is highly recommended for Windows based
|
||
development.
|
||
|
||
#### Choose an environment to work in
|
||
|
||
There are so many good tools out there. You should choose according to the
|
||
language and OS on what you are working on. [Zend
|
||
Studio](http://www.zend.com/en/products/studio) or
|
||
[Netbeans](https://netbeans.org/) are both good tools for PHP development,
|
||
while [Visual Studio](http://www.visualstudio.com/) is a best buy for Windows
|
||
development. Both of these have many ups and downs, but once you get in touch
|
||
with their deeper parts, you will like them.
|