Archive for the ‘Web Development’ Category

10 Absolutely 100% Necessary Tools for Becoming a Web Developer. Period.

Saturday, April 4th, 2009

So I’ve been stumbling again. As much as I hate what I’m becoming (A total bitch), I can’t help but go off on another rant. Today, I found three different articles containing not much more than a laundry list of “necessary” tools for budding web developers. The last one particularly ticked me off, because it mentions Photoshop, Dreamweaver, and other proprietary, expensive software. And yet the author had the gall to include GIMP as an honorable mention. Really?

Guess what? I started designing websites hand-coding HTML in Notepad and testing by uploading it to a website hosted on Tripod.

I seem to have learned the crap just fine. I don’t make the prettiest things ever, but my code works the way I want it to, and I didn’t need the frickin’ Zend editor to hold my hand while I wrote it.

So here are ten tools you actually need to become a web developer. Forgive me in advance if I come off as bitter.

1. A brain

This is the most important possession, before any software, any book, any forums. You need to have a functional brain and you need to know how to use it.This goes hand-in-hand with

2. Patience

Patience is a virtue. And if it’s not yours, you just picked the wrong career field. I’ve spent hours trying to make a CSS-based layout work the way I mean it to just to find I forgot to set a margin to 0. I’ve spent hours staring at a line in PHP, targeted by the error message, just to find the line before didn’t have a semicolon at the end. You need patience, and you need to survive kicking your own ass a few times. If not, you won’t be a web developer; you’ll be a failure.

3. Some form of motivation

This is another necessity that goes across many professions. If you’re not motivated to learn, continue to learn, and practice, then you’re going to fail. Period.

4. The ability to read

Web development (along with most other professions) require the ability to read, comprehend, and retain information. It also requires you to be able to apply this newly found knowledge to a project through which you may learn.

5. Creativity

This isn’t just artistic ability (i.e. making things look pretty). You can follow the golden ratio and base everything off a blue-black-white color scheme and make any website pleasing on the eyes. But for solving problems, figuring out how to go about doing something, and even simply finding a starting point, you need to be creative. There was no roadmap to creating a CMS when I started out. I just started with a log in system and ended up with WikiHowNot.

6. Knowledge of Google

You need to know how to use Google to efficiently find answers to questions, because trust me: you will have many. If you don’t know what a particular error message means in PHP, you must be able to find it without spending hours, or else you’ll forget what you were even supposed to be doing in the first place.

7. Support

Whether it be a forum where you can ask questions or another individual “in the know,” you need somebody who can help out and give you a shoulder to cry on when things go wrong. Again, trust me: it will hit the fan. It also helps to motivate you if you have somebody constantly nagging you about the status of your project.

8. Something to teach you

Find a forum, a website, a book, a video, a class, a tutor, or anything else which can teach you web development from beginning to end. W3Schools is a good place to start for HTML. Then you can find a good PHP-education site and pick it up there. Just pick a place and stick with it. If you do happen to go with PHP, by the way, pay special attention to security, or else.

9. Inspiration

This is sort of like creativity. You need something which will inspire you to keep learning and continuously work on projects. I don’t care what it is – money, a muse, the ability to impress your honey. Either way, find something to inspire you and keep you hard at work.

10. A text editor

In other words, a computer with a functional operating system. For Windows, Notepad. For Linux running Gnome, gedit. Pick one. Pick one you like. Ignore fancy bells and whistles (except syntax highlighting… that’s a nice one). You just need something which allows you to save an HTML file, and go from there.

Web Standards in the Web 2.0 World

Monday, March 23rd, 2009

If you’re a web designer, web developer, web master, or any other twist on the basic idea, chances are you’ve heard the spiel about web standards and upholding them through validating X/HTML, defendable JavaScript, and perfect, cross-browser CSS.

In fact, getting a website to display properly on all (graphical) browsers across all platforms is often the bane of every web designer’s existence, the most time-consuming, painful task which everybody requires but nobody takes into consideration when reading a quote.

Today I’ll be talking about one thing in particular, though: standards.

What?

We’ve all heard the word “standards,” which is often followed by “compliant” or some variation of the word. What does it mean, though?

For your day-to-day browser development team, it means obeying in a sense; it means building a browser capable of properly displaying every CSS element and every X/HTML tag which has made it into the Worldwide Web Consortium’s grand list.

For your average web developer, it means closing tags properly, using only legal syntax, and building sites which will render properly on every single graphical browser known to man (text-only browsers can typically be ignored, although it’s always nice to structure your document in such a way that users of these can still read the product).

Why?

In the early days of the Internet, when only supernerds knew HTML and browser choice was a thing of the future, standards were developed to provide the end user with a consistent experience across websites and to give some structure to browser developers. During the browser wars, the Acid and Acid2 test were developed to give some kind of quantifiable evidence of a browser’s success or failure. Its “usefulness,” if you will.

Unfortunately, now, in the Web 2.0 world, static HTML and CSS just doesn’t cut it anymore. In a day and age of AJAX and PHP/ASP, people must develop dynamic sites which can handle user input and change state based on what a user wants to do. You’re no longer judged based on that little “Validates” badge in the corner; now it’s about what flashy skills you can utilize to make the most kick-ass site that does what the user wants.

Take some popular websites. Let’s use MySpace for an example. Input the homepage for MySpace into the W3C’s validator, and what do you get? As of this writing, 61 Errors and 21 warnings. Facebook turns up 47 Errors and 6 warnings. Yet these are two of the most popular websites to date, with a rapidly growing userbase. Just for fun, Twitter turns up 10 errors.

What do all these have in common, though?

They take whatever a user wants and turns it into a product – a blog or profile – and does it well. They’re social sites, built to promote oneself, not to promote information specific to a niche. And as such, standards are out the window.

What does this mean for you?

Well, if you’re a web designer and you’re working on the same old static content, nothing. Follow those standards.

But if you’re looking to be the next web 2.0 hit, don’t bother. So long as your site renders similarly on Firefox, Opera, and Internet Explorer, your users will be pleased, and very few people will pay attention to that lack of a validated tag on your sidebar.

On Pricing Your Services

Friday, February 27th, 2009

This is a post sparked by an article over at Blogsessive about cheap custom design services. It’s an interesting read with some food for thought for those of us who can’t design our own websites, but mostly this is in reply to one minuscule part of the post: pricing.

He says there is no such thing as a bargain when dealing with professional design services. I disagree.

If you take a look at MNPHoppal’s pricing scheme, for example, we do a base of $250 for a website, with copywriting, logo design, link building, and SEO costing more. A typical static-content, 10-page website with some information about the company and a sales pitch would run about $500.

I can afford to live off of this type of income because (a) I get more clients due to my bargain prices (there are more people attracted by cheap than there are put off by it) and (b) our living expenses are $450 and food. Thus, three clients a month will more than pay our living expenses, and it only takes a couple days to put together a static website like that (not including the back-and-forth of “Do you like it?”).

This is not to say an all-in-one, all-inclusive charge is a good way to do business. On the contrary, MNP Hoppal uses a sliding scale which adjusts based on the amount of work involved or how many of my skills it takes. For example, if I have a difficult client which requires a lot of customization of a pre-packaged CMS like Drupal, custom logo design in a particular format, and much back-and-forth of “do you like this?” “No,” then I’ll obviously charge them much more than the $250 base price.

Another argument against low prices is that you’re selling yourself short.

However, I tend to err on the side of lower prices, as I feel like I’m ripping off people when I overcharge for my services, as most of the work involved I learned how to do two weeks into learning PHP. Mind you the debugging skills have taken years to polish and the eye for design can only be honed through hours upon hours of scrutinizing other peoples’ websites.

Learning PHP: From Scratch vs. Frameworks

Friday, February 13th, 2009

Right now, many people are looking to create dynamic websites based heavily on databases, user input, and content management. One of a few ways to go about this task is to use PHP. PHP, both functional and object-oriented, is a great language for this due to easy integration with MySQL databases, simple syntax, and the abundance of help available.

For those learning PHP, however, there is a choice to be made: Should one go about learning it from scratch, or should one learn to use a framework instead?

There are many pros and cons to each method of learning. Let’s look at them.

From Scratch

First, the pros:

  • Good way to truly get a grasp on what is happening “under the hood”
  • Gives complete control over operations to programmer
  • Learn to truly program by solving simple problems yourself before getting into complex situations

Now, the cons:

  • Takes a lot of time
  • Repeat a lot of already-written code
  • Can be frustrating when simple things don’t work

Learning PHP from scratch is good because it really teaches a coder the bare bones, skeletal intricacies of a language (this doesn’t just apply to PHP). You will run into problems – minor and major – and solving small issues on your own is a great way to prepare yourself for the major glitches and logic flaws that will come up later in your career.

Learning PHP from scratch is ideally suited to a person who plans to continue a career in software development, but can be a huge investment for a small payout to a person who only plans to write one or two websites.

Frameworks

The pros:

  • Much faster and simpler than learning from scratch
  • Most basic coding is readily available

And the cons:

  • Limited amount of support available
  • Can run into major issues later without proper preparation
  • Doesn’t teach the basics of the language
  • Can be overly complex for simple tasks

Learning a framework is a great step in a person’s career, but for the beginner who plans to get into PHP seriously, it’s probably not the best solution. You see, using a framework is best suited for somebody who already knows the details about a language and simply needs a faster turnaround for websites. However, CakePHP and Zend are not necessarily suited to the novice developer, as they tend to be a bit too complex for simple problems.

Either way you go about learning PHP, as long as there is plenty of support available and you have a lot of patience, all problems can be overcome. I encourage learning from scratch, but frameworks can also be difficult to pick up if you don’t begin using them early on. I have personally run into this problem.

How Clean is Your Site?

Saturday, January 24th, 2009

Hello and welcome to How Clean is Your Site?, the show where we figure out just how much mess you’ve got laying around and cluttering up the interface. The problem goes like this: You’ve been looking at your conversion rates, your bounce rate, your number of views, or what have you, and realize you’ve got a problem: People aren’t coming, or if they are, they’re not sticking around. You’ve got a low PageRank, low visibility, high bounce rate, and this just needs to change.

Here’s how it works: You look at this list, skim for things that apply to you, check them off, and when you’re through you should either have a better-optimized website, or else you should probably go through again and be a little more honest with yourself. So what’s your problem?

I don’t have any visitors.

Well that’s quite a doozy to fix on our first try, but with a little hard work we can scrape off the excess, leaving a clean, highly visible website.

Is your website visible?

Basically, can people actually find you if they’re looking? Are you listed in search engines? Do you have links leading to your pages from other, larger websites? Can people find you if they’re not looking? Do you have advertisements on other, relevant websites?

Submit your site to all sorts of directories, feeds, what have you. Ensure you have good content first and don’t spam. Join a few online communities such as forums and be sure to include a link back to your website in your profile, signature, or whatever else is applicable.

Now, what’s another problem?

My bounce rate is high.

Well this is a pretty complicated fix that takes much research and insight. You see, when your bounce rate is high, it can mean a few things: first, it could mean you have boring content. Second, it could mean people simply can’t find your other pages, even if they’re looking. Third, it could mean they’re not sticking with your site long enough to read your content on the basis of how it appears.

Design is a major issue to be overcome. If you don’t have the skills, hire somebody else to fix your layout. Make sure it’s accesible, and not just pretty, as having to put forth effort to visit a website is definitely not on everybody’s to-do list.

If you have bad content, this is difficult to fix. If you’re not the most talented writer, you can still try your best. Be sure to proof-read to eliminate errors and maybe have others read over it before it’s published. Consider keeping every article for 24 hours like we do and make your changes when it’s “cold” in your mind and you can look at it more objectively.

If your site has a poor layout or if other pages are not easy to find, this is another potential contributor to a high bounce rate. For WordPress blogs, this is an easy fix: simply install a related posts plug-in. For other blogs, I’m not sure of a fix, and for general website constructed from scratch, the fix involves including a lot of extra links alongside your content. The best way for such sites is to switch to a content management system such as WordPress to include links for you.

Be sure to always include a link to your homepage from every page as it helps for search engine optimization and getting people to your homepage (and thus to the rest of your content).

Our final problem on today’s post:

I’m not getting any clicks on my advertisements.

Well, this is also a complicated problem. Not getting a good click-through rate on advertisements can lead to poor income which is less than the cost of hosting and a domain name (in other words, not worth your time and energy).

The solutions to this problem are mentioned all over Google’s adsense tutorials, Yahoo’s tutorial, etc. But it basically boils down to this: Have a good placement. First, be sure advertisements are “above the fold,” or visible without having to scroll down your pages. Make sure they look like they’re part of your content, but also that they stand out enough to avoid being simply ignored.

Another problem with this is many people using web browsers like FireFox also use AdBlock Plus. That means your ads aren’t visible to them. However, while it does kill some potential clicks, it shouldn’t be that detrimental.

That sums up this episode of How Clean is Your Site? Next time, we’ll tackle another tough issue: conversion rates. Thanks for viewing and be sure to stay tuned for Marketing With Butch.

How to Choose a Color Scheme

Tuesday, January 20th, 2009

If you’ll remember back a few days, I wrote an article on the important of color schemes. Not by any means a guide, I decided after telling everybody how serious it is that I should also put together a rough idea of the how rather than just the why.

Choosing a color scheme can be broken down into a few steps and considerations.

First, you must decide what your inspiration is — what you want your color scheme to do for your site. We already know that if you want to inspire action such as sales, a hot color (especially red) is psychologically supposed to achieve specifically this. For a sense of royalty or entitlement, purple is typically what is used. And for a calming website, blue or a similar neutral color is normally chosen. Using one or more of these colors can help your site to feel like its purpose fits its design. Unfortunately, that’s only the first step.

(more…)

The Importance of a Good Color Scheme

Sunday, January 18th, 2009

One of the many hurdles I’ve run into as a web designer is trying to pick a solid color scheme. A friend of mine, Logan, tends to choose his based on what would look good on somebody as a fashion. I tend to steer towards the use of blues and reds, along with a simple purple (I love my 660066). Regardless, we all tend to become caught in a rut when trying to select good colors for our websites. This is not a guide to picking a color scheme (that’ll come shortly). However, I will stress here the importance of a color scheme.

(more…)

Tools for the Web Designer in You

Friday, December 26th, 2008

Whether you’re a designer, developer, or programmer, chances are you’re going to have to deal with CSS at one point or another. A powerful tool which we’ve broken and abused to fit our purposes, CSS can tend to be temperamental at times. Thus I present to you the best tools for getting your CSS into tip-top shape.

(more…)

5 Books that Addicted Me to Web Development

Wednesday, October 29th, 2008

When I was just a wee seventh grader, my best friend in middle school and I used to ditch gym class and go hang out in the library. Barring the overbearing signs of budding nerd-dom, we shall focus on what went down at that point. Neither of us knew much about web design, industry best practices, or the like. We simply sat around writing HTML, inserting marquees and Javascript-based guest books on tripod-hosted sites, for which we inadvertantly found code for hiding banner advertisements.

We didn’t learn everything we knew from books. We actually learned a lot from “that one site where the girl talks about it teaching it to kids and stuff.” (Most of you probably actually know what I’m talking about — what’s that site again?) But over the summer, I somehow took my new-found knowledge to an addiction and it hasn’t died down since. These are the books which got me hooked on the world’s greatest drug.

5. HTML 4 for Dummies

As much as it pains me to say it, HTML 4 for Dummies was actually the first book on HTML I ever read and where I learned a lot of the basics that still remain today. Teaching such Good Things as using tables for full-page layout, it filled my seventh-grade head with some code and not-so-great ideas that fortunately never ended in disaster. I’ve come a long way since that first site, but I will never forget what I learned.

4. CSS: The Definitive Guide

CSS: The Definitive Guide transformed my knowledge of web design from “It’s just some HTML mark-up and a bit of styling” to “Wow, this is really cool!” This book single-handedly taught me most of what I know about CSS layout (what is use for the vast majority of the sites I do these days) along with a few tutorials. It had easy-to-follow examples which definitely made CSS less daunting.

The bad part about CSS which most of us have realized is that, after winning the browser wars, Internet Exploder stopped increasing its support for CSS. Long story later, a vast majority of web devs were using broken CSS techniques just to get the damn thing to display right. With everything changing now and support increasing, we must un-jade ourselves and re-learn our craft.

Even so, what I learned sticks with me today. I never could’ve gotten to where I am without this book.

3. The Principles of Beautiful Web Design

An in-depth, all-inclusive monster of a book, The Principles of Beautiful Web Design was one of the best books I read. While I don’t always follow the advice given (if you hadn’t noticed), it did make me aware of many things, which I feel is just as important. Covering everything from typography to texture and color, the author shares a wealth of knowledge on the topic of designing, well, beautiful web sites.

2. Designing Web Navigation: Optimizing the User Experience

Designing Web Navigation narrows down the subject line to simply building an intuitive interface to your website. Now, I only read about half of this book because mine was poorly printed and I simply could not stand the headaches any longer. I can’t help but wonder what I missed, but at the same time, I wasn’t interested in navigation at the time, and it’s still one of the “back-burner” items on my list.

1. Beginning PHP5, Apache, and MySQL Web Development

Beginning PHP5, Apache, and MySQL is the book that took me from designer to programmer overnight. I immediately became addicted to PHP, even setting out to design my own content management system the night I began learning it. The addiction hasn’t died down since, so this book must have done something right.

I wouldn’t say these books taught me “everything I know.” More, they simply gave me a beginning knowledge and a motivation to learn everything I know. I find that a motivation and craving for knowledge is probably the best thing you can get from a book. At least I know that’s true for me.

I encourage everybody interested in the web development industry to pick up these books at some time (well, perhaps not HTML for Dummies — it’s definitely not going to “learn you real good.”). I think I might even make Butch read a couple of them.

So, dear, readers, do you have a book that influenced you in your niche? One that got you hooked? Share it in the comments.