A lot of people believe we only need to learn some programming languages to be a programmer. In the real world, we need to communicate with other human beings, we need to do the documentations, at least we need to write some notes about operations instructions. Thus, we still need to learn a human language!
We are in Information Technology Industry for a few years. We do a lot of coding every day. Most of people believe we only need to know about the programming syntax.
Well, we still need to know about the theories behind that, such as basic computer architectures and software design theories. We need to know all basic stuff, then we can write some good software!
Some University students have asked myself that is good to take some extra courses to learn programming. That is good to take some courses. But that is more important to get your hands dirty. I suggested them to buy some books and look into their example codes. Then they can download some opensource projects and try to understand their codes. If they think they learn enough, they can start their own opensource project to build somethings.
Moreover, I keep to suggest them that they need to be keen for search work experience positions. The industry experience is very very valuable.
Programming is very important to practice.
During my career, I built some websites which are using a simple design and even with some simple functions. People have commented why I cannot make them better. Yes, I really can. If you can give me more funding, of course I can. In the real world, everything is about time and budget. We only got limited time and resource. If we spend more resources on layout, we have to make some functions away to bring it back on budget. In some situations, even the budget is ok to spend a bit more on website layout, but we still need to fit the deliverable schedule too. In these cases, we will delivery a simpler version first and still keep to develop. Maybe, we can have second deployment later.
Moreover, as a web developer, making the websites looks good is not our sole considerations. We want to make a lot of pretty websites. However, we have to take some factors in considerations. For example, we have to consider cross browsers comparability. Nowadays, we need to make websites can work with tablet and mobile phone. Well, I can use flash to make a very interactive and fancy website, but I am 100% sure this website can be read in any tablet and mobile phone. We really have to take the comparability factor into considerations.
Lastly, that is another important factor we need to consider. This is web hosting cost. Even we make a very complex website on time, on budget, this kind of website may need to bring workload into the web host or require higher specifications of web hosting. The web hosting is an on-going cost. The website may need to last few years before the next re-development. Thus, this can be a largest part of budget. In the past, I had to build a cut-off version of website, because of the web hosting requirement.
Building a website is not just about the layout. We need to consider the WHOLE picture!!!
I remember I started to work full time in Web Development Industry around 2003. That was 10 years ago. I treated this as my professional career. However, a friend asked myself why my clients need to hire us for building websites. She can do it in MS office. I think she is just one of many do not understand our industry.
We just ARE NOT JUST BUILDING WEBSITES. We are delivering a web technology solution to our clients. We have to understand our clients' requirements. And then we need to deliver the best solution for our clients. Moreover, we have to make the solution comply the clients' organisation requirements and legal requirements. Also, the most important part is to make sure the solution can be deliver on time and on budget. Our professional is not just to build a pretty website.