The Problem with Web Design and Development for most Beginners

I am experiencing a love/hate relationship with web-development. Around 5 years ago, I designed my first website. Mind you, it wasn’t my idea but I ended up doing it after my Maths teacher, and mentor, asked me to help design one for an NGO. He was teaching a web-design club which I immediately joined. I still remember my first tag which involved the ever welcomed “Hello World!”. Like any new hobby, it was wonderful and exciting at first. You learn about div’s, b‘s, i‘s (this was before strong and em) and it all seems rather, for a lack of a better term, obvious. If there ever was a constant in life, it is humanity underestimation of problems (maybe it’s Hofstadter’s Law in motion). After a week or so of html, I thought I had the hang of it. And then I encountered my first big problem, $php.

There are two ways of looking for a solution and one’s approach can easily be used to deduce the relationship between one’s self and the task. First, one could go on a research binge which might include consulting, reading, observing other solutions etc. This usually implies one is willing to learn from the challenge and hopefully solve future similar problems. The second, and my less favourable approach, involves throwing the task to someone else. Unsurprisingly, the solution cycle usually involves a parts of both approaches. However, the best approach is try to stick with the former than the latter. When I first worked with php, I never wanted to try the first approach. If I ever have to introduce someone to programming, I promise to never bring them within 2 alt+tabs from php. Enough has been said about why php isn’t quite exactly the best tool (although there never really is a ‘best’ language) but it should be kept in the highest shelf until someone is knowledgeable enough. Think of it as the Jack Daniels of web-development (never bring it out on the first night!).

To cut to the chase, I needed to design a forum of some sort but with confusing privileges. The website was a simple one but with one small problem; it wasn’t meant to be a forum. There is a web-analytic procedure that is simply known as the goal of a website. For blogs or news websites, we just want to have page views. The more the merrier. There are some variations in there but generally page count is the bottom line. For social networking sites, you need average time spent on the website (and some variations of it). The problem with the website like the one I worked on, is it had no particular goal or at least a way of measuring that goal. Would we need to create one username/password for the entire forum? Would we need to recreate an entire forum, with usernames and all the privileges associated, for a website that is used by less than 20 people? Surely email/social networks could have done a much more efficient job. After 2 weeks or so of learning php, I decided to request help from a Nordic kid who knew far more php than I could ever hope. After seeing his solutions, it suddenly hit me. I dove too deep too quickly. I had no idea what I was doing at this point.

Web development (and programming in general) isn’t something you only learn parts of it. This is especially true for someone like me who always tries to understand every single section within a system. You can’t learn html & css and call it a day. You will need some javascript (and by extension jquery and other jscript libraries), then slowly you’ll find yourself trying to understand php and SQL. You keep digging deeper and deeper, and if you aren’t careful, you appear utterly lost. The funny thing is that you never are lost. If you meant to be in a forest, as long as you are in it, all shall be fine. This differs quite a lot from a lot of other fields due to heavy reliance between different sections. A lot of newbies start with the idea that they are learning “Web Design”. After a session with CSS, not many want to see the first $echo statement. There are more ways to do the same thing than one could imagine. And they are all perfectly fine. This can get confusing and frightening abruptly. It appears different because other fields get narrower and narrower as you go deeper (I like to imagine it as a funnel). Web development is like an inverted funnel. The more you learn, the more you realize how more you need to learn. This can act as a deterrent to most novices (especially for those who prefer the funnel approach).

I’m working on an actual real life project that frightens me at the moment. At times I need to remind myself how to break the cognitive dissonance. It is challenging to know when exactly to flip the switch from thinking in one way to the other when you stare at the glowing back-light from the monitor.

Advertisements

One thought on “The Problem with Web Design and Development for most Beginners

  1. Pingback: Notepad++ and NppFTP plugin issues | tckidd

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s