Sunday, September 7, 2008

Uber-cheap web design

When I say uber, you know it's serious. I may not be a world-class web designer (yet), but I may have found the cheapest and quickest way to learn the languages of the web and put up a website. Enjoy!

Okay, let's set the scene. You're the benevolent ruler of a tiny European country, when your despotic uncle stages a coup and overthrows your glorious government. You are forced to flee the country for the distant shores of America. You know the language and you know how to use a computer, but you don't have any credible job experience ("Riiiiggghhtt, you once ruled a country, so you're qualified for a management position. NEXT!!"). You decide to ride the internet wave, but don't think you have the cash or the skills to start a web design company. Not to worry, you have this list!

Step 1: Learn XHTML and CSS

The first thing your majesty needs to know is that there is a right and a wrong way to create websites. If you do it the right way, it will mean less work, more job offers, and tons of cash. If you do it the wrong way, it will mean time-consuming projects, bad-looking websites, and, eventually, the total failure of all your websites. If you try to learn web design with online tutorials and resources, you are pretty likely to learn web design the wrong way. I recommend you learn web design the right way with the very nice book, HTML, XHTML, and CSS, Sixth Edition: Visual QuickStart Guide. It is relatively easy to read and understand, and its tons of pictures and examples make the somewhat dry subject matter downright fun to read, in my opinion.

Buy it here: HTML, XHTML, and CSS, Sixth Edition (Visual Quickstart Guide)

Step 2: Build a website cheap

If you have time to learn and money to burn, Dreamweaver is supposedly as good as web design software gets, nowadays. However, you can make sites every bit as impressive with a few pieces of free, downloadable software.

First, to code the actual HTML, you'll need a text editor. If you're bound to the system standard software, you can use Microsoft Notepad, a stout little editor that will get the job done. Of course, if you plan to do any serious coding, I highly recommend getting a more versatile text editor, such as Notepad2. Notepad2 is a free text editor with convenient syntax highlighting for several common languages, such as XHTML and CSS. It is a must for any serious manual website construction.

You'll also need some free image-editing software, because if your website doesn't have pictures or graphics of some kind, it's not really a website. Here, you have two great options. If you have some time to learn and you need the most powerful free image editor, try out GIMP. It's got a wicked learning curve, but it can do almost everything Photoshop can do. If you want something familiar yet capable, try out Paint.net, another free editor. It doesn't quite have the features of GIMP, but it is way more intuitive. Remember, this is Paint.net, not Microsoft Paint. MS Paint is only good for making grainy graphics in outdated file formats.

You can find GIMP plus tons of tutorials here, and you can get Paint.net here.

Step 3: Show the world your genius (or not)

Now comes the part where you have to spend money, but not much. I have heard of places that offer you 'free' domain names and web hosting, but I have never personally found a legitimate one. Registering a domain name costs somebody money, period. However, it doesn't have to cost much, as I think I've found the single cheapest domain names on the internet. Netfirms.com practically gives away domain names for $5.95 for the first year, last time I checked. This price simply cannot be beaten, as long as you won't need customer service or bulk-buying tools. Don't be fooled by their free hosting service, however; they place big ugly banner ads across the top of all free-hosted websites, and you simply don't want that.

You can find truly free hosting services a few places, and my personal favorite is FreeHostia.com. According to my [free] website monitoring service, I get about 99.9% uptime for no money at all. The downside is that you can only host two sites per account, and you'll need to work with the DNS system to hook it up to your domain name. It's certainly not one-stop shopping.

You will find Netfirms here, and Freehostia here.

Step 4: Maintain your site

No good web designer simply puts up a site and leaves it at that; the web is all about change and newness. You'll need some way to change your site once you've got it online, and Freehostia's website tools simply don't cut the mustard. Enter Filezilla, the free, open-source FTP client with some very convenient features. For example, when you open Filezilla, you're only two clicks away from all of your websites. Even better, Filezilla will automatically switch to your matching local website folder as soon as you link up to one of your websites. It's a small, simple program, and I like it that way.

You can download FileZilla at here.

Step 5: Learn about your site's visitors

One of the most important and neglected aspects of web design is visitor tracking. Most people guage their site's traffic levels by looking at their server stats, but that is neither the easiest or the most accurate way to do it. You're much better off installing Google Analytics on your site and letting their top-quality software watch where your visitors come from, where they go on your site, and when do they leave. Best of all, you get all these great services absolutely free.

You should use this service to optimize your site for your visitors and gear your site toward them. For example, if you learn that most of your visitors find you through a yahoo search for neon-colored macrame, you should put emphasis on your more vibrant macrame weavings. (Not that there's actually a market for online macrame...) Always abide by the web marketer's code: "Optimize, optimize, optimize!"

You can sign up for Google Analytics here.

Step 6: Rake in the cash!

Many web designers like to pretend that they do it for the fame or the satisfaction, but in reality, everybody's looking for a quick buck. The easiest way to monetize your site is to use another convenient Google service, Adsense. Adsense is a simple piece of code that you add to your site which shows advertisements for websites relating to yours. For example, if you decided to run a gardening blog, Adsense would be likely to show advertisements for things like pest control products, gardening utensils, and other gardening websites. When somebody clicks on one of the advertisements on your website, Google pays you a small amount of money. Twenty cents doesn't sound like much, but if your site is getting a thousand hits per day, you can make a sizable chunk of change.

You can sign up for Google Adsense here.

Well, that's all the advice I have to offer. I can't promise that your website will succeed if you abide by these rules, because above all you need interesting content to drive traffic. Writing just another blog about tech stuff will get you nowhere.

Trust me, I know.

Friday, September 5, 2008

Convenient AS3 Positioning Class

I'm sure I'm not the only new-to-AS3 programmer who longed for the convenience of HTML. In HTML, everything you put on the page spreads out and covers the viewing area.

Not so with ActionScript. In ActionScript 3, you must position each object manually by setting its x and y coordinates. It's precise, but it's a pain when you just want all your interface buttons visible. 

Enter Styler 0.1! This convenient class allows you to position objects relative to each other, more like you would with HTML. It's pretty simple to use, and its behavior is pretty easy to predict. You can download it, see some examples, and a try out a demo at my site. I hope it makes your life easier!

Monday, September 1, 2008

<pretentious>How to fix Windows</pretentious>

I know many people have suggested ways to fix windows before, but I have a viewpoint most don't: I'm a programmer. And as a programmer, I'm acutely aware of all the concepts behind windows that I can't begin to grasp. However, I do have one vague idea on how windows could achieve the reliability and speed of a Mac without losing its focus on customization.

Security levels.

That's right, one of the most boring subjects ever to reach computer science, and I think it can solve one of the biggest problems in computer science. Here's why.

There are really two big hurdles to windows performance, programs that run in the background and programs that handle the windows registry improperly. That's why the most common first tips to speed up a windows computer are "Take out the programs running in the background" and "Clean out your registry". In order to address these two major bottlenecks, I think you , the windows user, should be able to restrict your installed software's access to them.

Some programs have a right to always be active, like antivirus software, and some large programs must load parts of themselves when the system starts to allow you quick access to them. Both of these strategies make sense for reputable, well-coded programs, but not for programs packaged with device drivers or random freeware.

Essentially, any program you choose to run can slow down your system by always running in the background, loading itself into your ram, starting up along with your operating system, and filling your system's registry with useless information. Every program you have installed has the same rights to your system's resources. If that makes sense to you, you must be from Redmond.

I think you should be able to assign every program you install one of three security ratings.

  1. The program can access your registry, load on startup, and access the internet.
  2. The program can load on startup and access the internet, but not access your registry.
  3. The program can only access the internet.

Now, developers like me would have to balance the worth of our programs with the ratings people were likely to assign them. Instead of using all the resources I could possibly need, I'll have to design for the security rating I'm likely to receive.

I'm not saying that one silver bullet feature will be able to make windows the absolute best operating system, but I think a radical improvement like this might put windows back on the right track.