gregdoolittle.com exploration of graphic design, web design, and web development 2008-08-14T23:51:01Z Copyright 2008 WordPress Administrator <![CDATA[ATTACK OF THE WEB SPIDERS! (a.k.a pre-conference knowledge of SEO tips and tricks)]]> http://gregdoolittle.com/blog/2008/08/14/attack-of-the-web-spiders-aka-pre-conference-knowledge-of-seo-tips-and-tricks/ 2008-08-14T22:51:01Z 2008-08-14T22:51:01Z Uncategorized i want to preface this with my belief that the SEO profession is a necessary evil. writing code is easy, and people who do your SEO should be capable of writing good code — and with a little SEO training, the opposite is true: web designers and developers should be able to handle the majority of a company’s SEO needs). while SEO is a bit of a dark science, there are some ground rules that all developers should know, general best practices. developers are a dime a dozen, and not knowing how to do SEO seems kinda embarrassing to me. if you’re going to claim to write good code, you should be able to handle SEO.

that being said, i just wanted to detail some of the SEO stuff i already know, so that i can have a record of whether or not i’m really learning anything at the SES conference i’m going to next friday. most of this stuff i’ve learned from my buddy arin, who is the lead engineer at a company called fuzz.com, founder at blip.fm, guitarist with suspiciously faustian strumming skills, and honorary ‘king of kong’, among other things… he taught me a bunch of SEO stuff a while ago.

submit your sitemap to yahoo, google, and d-moz

create a sitemap, or an organized list of all the pages on your site. webmaster tools from google and yahoo to submit this sitemap. you can also enter your site into the DMOZ open directory project. doing these things will get your site on the radar, and is one of the first things to do if you aren’t getting any search related traffic.

semantic markup

basically what this means is that when you write your content, you should encode it in a way that makes sense both to human users and web crawlers. when a web spider look at page content, they rank the relevance of your page for search terms based on the context in which those terms are used on your page. having semantic hierarchy between page elements makes your page easier to index, and makes keywords more visible to spiders. If you want to optimize your page for say… “SEO Tips” here are some key elements you should include:

  1. title tags: e.g. <title>SEO Tips an Tricks</title>
    1. probably the #1 factor in relevance of your page to the keywords you are trying to optimize for.
  2. h1 tags: e.g. <h1>10 Best SEO Tips</h1>
    1. another very useful persuasion tool in convincing web spiders of the relevance of your page to the search results.
    2. don’t believe me? do a search for a chosen word, then view the source of the first website in your search results. in the window that pops up, do a “find” for “h1″, and you’ll notice 9 times out of 10, the word you searched for appears in h1 tags.
  3. URL’s
    1. the URL is another place where you can sneak in keywords. instead of http://www.gregdoolittle.com/?xjfga=153425 replace those get variables with something that is readable by a human, which in turn will make the pages seen by crawlers who are trying. a good alternative for this example would be: http://www.gregdoolittle.com/?topic=seo
    2. even better than replacing the get variables with relevant terms, would be using mod_rewrite or isapi_rewrite to configure your site to allow the same URL to be written as: http://www.gregdoolittle.com/topic/seo/. search engines prefer sites that are not dynamically-generated, and having URL’s that appear to be serving actual files instead of database entries will give you a few bumps up in rankings.
  4. valid code
    1. there are several free tools out there to validate your code. my favorite, is from the world wide web consortium. you can paste in a url, and it will give you a list of all the errors on your page. fixing these errors will make your page content more easily indexed and increase the likelihood of your pages being ranked for specific keywords that may have previously been un-indexable because of the errors on your page.
  5. use keywords in your anchor text
    1. when you provide links on your site, choose the anchor text carefully, and use keywords if possible instead of meaningless text like the words: “click here”.
    2. Compare the two sentences:
      [Visit our website by clicking here] vs. [Visit our website]
      The latter gives meaning to the anchor, acting as a keyword reference for the target of the link. Search engines know this is more meaningful than the former (”by clicking here”). Your users will appreciate this as well.

optimize the site for download efficiency

not only will your users be happy with cleaner, snappier code, but search engines also favor sites with shorter load-times. having a quick loadtime tells the search engine that it can count on you, increasing the ranking value of your page – longer load-times devalue your page rank.

avoid iframes

in the eyes of the search engine, iframes make your content appear disjointed. spiders look at the relation of one keyword to another within your pages. since web crawlers don’t look at the contents of the iframe while looking at the containing page, the page content will not be indexed. only use iframes if it is required because ajax is giving XSS warnings.

robots.txt

if you haven’t already, do some reading about web crawler standards. robotstxt.org will show you how to create your robots.txt file, add robots meta tags to your site template, and also give you more pointers about how to optimize your site.

seo-friendly background images

this is not a recommendation as a general practice, but only for those rare occasions that call for special fonts. there is some debate whether or not this practice is ethical or alllowable, but david shea (of the css zen garden fame…) supports it, and he has always been a good source of information. basically you use the background image of text, and then pull the inline text out of view, so that users only see a background image. this is something i will try to find a solid answer to at the conference.

inbound links are still hot and sexy, according to me.

setting up accounts for your company on social networking sites (twitter, flickr, linkedin, facebook, myspace), or other sites that are regularly indexed by search engines is a good way to build up an array of inbound links. as your site grows, hopefully, visitors will be providing you with inbound links because they’re bragging about how awesome you are in forums or other peoples blog. providing users with a code-based widget (a picture they make on your site, with a link embedded back to your domain) which they can post wherever they please is a good way to bring in traffic, and increases the number of inbound links you have. while this doesn’t directly optimize for specific keywords, it increases your reputation in the eyes of the search engine, which means it is expecting content from you, and will look to you more frequently when it does its web indices… (i will also attempt to verify this at the SES conference)


there’s a lot of other stuff you can do, like adding images with ‘keyworded’ alt text, installing a blog on your site, etc. but what it comes down to is whether or not you are writing good content. if you write solid content, you only need to make it so some people can find it. once that is accomplished, your rankings will improve on their own. no amount of gaming the system is going to complete your business model — SEO is just a tool for getting your site discovered.

additional resources for SEO best practices

]]>
Administrator <![CDATA[i left techweb in december…]]> http://gregdoolittle.com/blog/2008/08/13/i-left-techweb-in-december/ 2008-08-13T21:58:52Z 2008-08-13T21:58:52Z Uncategorized i left techweb in december to pursue what looked like a promising opportunity. and to sum it all up, it sucked.

while i worked at this unnamed company, i was too busy with school to really look for another job, but after about 2.5 months, a former employer called me to ask if i could help them get back on their production schedule. i happily agreed, and worked for my old boss until april - at which point i decided to move to a company in san francisco, Credit.com. there are no investors - we actually make money! (i guess that disqualifies us from calling ourselves “web 2.0″, hehe…). the company focuses on providing information on personal finance, and selling consumer credit services to our users. i work closely with four java engineers. i am the lead front-end developer - which basically means i am responsible for UI/UE, and all issues around the user-facing code.

there’s a lot of awesome people here. good compensation and fringe benefits, including working from home once per week, and free massages on fridays. it’s like a 1990’s start-up in here… except that we’re actually making money. they’re sending me to the SES conference in san jose, august 22nd. i resisted at first because i feel like i have a pretty good grasp of SEO already, but hey - it’ll be a good field trip, and i admit, there’s still plenty of SEO stuff to learn…

hopefully i can detail my SEO knowledge here on my blog before i go to this conference, so that i can easily see whether or not i end up learning enough to make the conference worth its entry fee…. (so check back next week for that, as well as my notes from the conference a fortnight from now (yes bitches, ‘a fortnight’)).

]]>
Administrator <![CDATA[old la honda figure 8 loop]]> http://gregdoolittle.com/blog/2008/04/21/old-la-honda-figure-8-loop/ 2008-04-22T07:05:45Z 2008-04-22T07:05:45Z Uncategorized i rode up old la honda for the first time on saturday. wasn’t sure if i was going to make it, but pushed through, and am glad i got to the top. it was especially tough because i haven’t been spinning lately, but spending my time at the gym on weights and capoeira. next time i do a long weekend ride, i want to make sure i’ve done at least one hour of spinning during the prior week, preferably 2 or 3.

starting at cafe boronne in menlo park -> santa cruz ave. -> sand hill road -> the eastern face of the mountain on old la honda -> north on skyline to 84 -> down the west side of 84 towards the coast -> up the western side of old la honda back to skyline -> same stretch of skyline back to 84 again -> down the east side of the mountain down the hill back towards home -> portola road -> alpine rd. -> santa cruz ave. -> back to boronne’s.

34.7 miles, over 3300 vertical gain – my longest ride to date.

map of my ride on old la honda road, unincorporated san mateo county, la honda, ca

]]>
Administrator <![CDATA[ride it where i like]]> http://gregdoolittle.com/blog/2008/04/06/64/ 2008-04-07T01:17:58Z 2008-04-07T01:17:58Z Uncategorized today i rode from my front door, up king’s mountain road to skyline ridge, where i could have seen the ocean were it a clear day. it rained off and on, and at one point it was so cold that i couldn’t feel my fingers. eventually the sun came out to save the day. thanks sun. i rode home on canada road along the reservoir where they block the street to through traffic every sunday. the end.


map of my ride on king's mountain road, woodside, ca

]]>
Administrator <![CDATA[new job]]> http://gregdoolittle.com/blog/2007/12/02/sole-proprietorships-in-california/ 2007-12-03T05:11:38Z 2007-12-03T05:11:38Z Uncategorized On Friday, I had my last day over at TechWeb. It was great working there, but the time had come to move on and seek out new challenges, and get out of my comfort zone (which sadly, I had settled into quite nicely with TechWeb). My last few days were spent documenting all the projects I’d been working on. We had a nice send-off lunch down the street from our office at the 21st Amendment, on 2nd Street, right next to South Park in the SoMa neighborhood of San Francisco.

Over the weekend, I started and finished a freelance design project for a friend over at carbonharmony.com. This week, I start my new position with Secorix Inc. as a Software Engineer / QA Support Engineer / Designer / Programmer.

Which brings me to the point of this post: I’m going to be working for Secorix as an independent contractor. I’ve been reading various info about working as a contractor, and I’ve talked to everyone I know who already is one… and it looks like the simplest and cheapest way to address my needs would be to form a sole proprietorship. At some point during my first day, I’ll ask other employees what they think is the best route to take. Then hopefully i’ll be meeting with a CPA, registering my business with the county, and setting up a business account at Wells Fargo. Even if it turns out that I don’t need to set up a business for this new job, I may do it anyway so that I can work as a full-fledged freelancer.

]]>
Administrator <![CDATA[MIT OpenCourseWare]]> http://gregdoolittle.com/blog/2007/11/18/mit-opencourseware/ 2007-11-19T07:21:17Z 2007-11-19T07:21:17Z Uncategorized A friend of mine is going to Japan and was asking me if I knew of a quick study guide, to develop his tourist language skills. Two things popped into my head: Rosetta Stone (they have a free trial for every language), and MIT’s OpenCourseWare (though I had yet to really explore what OCW had to offer, I offered him the idea and told him what I knew about it so far).

I first heard about OCW on NPR. The story reported on how MIT wanted to provide its course offerings to the rest of the world for free, as part of a community outreach program. Several students were upset because they didn’t like the idea of sharing their expensive education with the rest of the world. Other students put forth the argument that by giving the courses out to the rest of the world, the worldwide level of flourishing would increase, thereby increasing the individual’s ability to flourish. On the OCW site, you can read their guiding principal:

MIT is committed to advancing education and discovery through knowledge open to everyone.

It is a generous thing to do, and so far I am amazed by the course offerings. There is so much information available – it’s overwhelming. I’ve looked at several different Foreign Language, Pre-Law, and Computer Science classes. If you’re a do-it-yourself learner, I highly recommend looking into OCW. While sites like OED and Wikipedia offer tons of information, OCW actually helps you learn the subject matter in an efficient manner. If you really want to become an expert on a subject area, OCW is a great tool to get you there.

]]>
Administrator <![CDATA[flash kaleidoscopes]]> http://gregdoolittle.com/blog/2007/10/28/flash-kaleidoscopes/ 2007-10-28T09:02:48Z 2007-10-28T09:02:48Z Uncategorized (my latest flash projects)

i figured out a cool way to use spirals to create these great kaleidoscope images. enjoy!

]]>
Administrator <![CDATA[flash fps stats]]> http://gregdoolittle.com/blog/2007/10/16/flash-fps-stats/ 2007-10-17T07:07:34Z 2007-10-17T07:07:34Z Uncategorized trying to figure out the optimal frames-per-second (fps), these files are all the same exact filesize. the 6fps animation goes runs on 12 frames, he 12fps runs on 24 frames, etc… the ball should be traveling at the same speed in all the animations.
12 fps is flash’s default.
24 fps is supposedly what we see on tv, which is what our teacher is us telling is to use.
30 fps is cinema, and to me looks noticeably better than 24, and i will use 30fps from now on.
above 30, it’s hard to see much difference.
teachers are retarded sometimes.

see the flash movies

]]>
Administrator <![CDATA[corporate flash]]> http://gregdoolittle.com/blog/2007/10/16/corporate-flash/ 2007-10-17T07:06:20Z 2007-10-17T07:06:20Z Uncategorized the disclaimer:
1. it’s my first one… and there’s no button to reset it, so if you missed it you’ll have to reload the page.
2. it’s just the animation, it doesn’t do anything after it loads. bear with me, it’s only the third week.
3. i controlled the animation, but not the page layout. i just re-created it from a mockup (see below). you can direct your complaints about its ugliness, bulky navigation, and ridiculously large (and pointless) “home” button to my teacher.

see the flash movie

]]>
Administrator <![CDATA[software2008.com]]> http://gregdoolittle.com/blog/2007/10/04/software2008com/ 2007-10-05T06:01:45Z 2007-10-05T06:01:45Z Uncategorized i just launched software2008.com at work today. i designed this project completely by myself, and i’ve got to say, i had a lot of fun doing it. it took me about 3 days to design the site, turn it into code, do browser/QA testing, and address all the feedback i received.

my boss is now asking me to work with him on building social network software for a conference focused on internet security. i told him about some of the open source social network aps that you can download/customize/install on your own server, but it looks like he wants to do something a bit more home-cooked. if this works out it could be a really amazing project, but due to the sheer scale, i’m a little nervous about it. i’ll let you know how it works out.

]]>
Administrator <![CDATA[Opera Mobile + iPhone emulators]]> http://gregdoolittle.com/blog/2007/10/02/opera-mobile/ 2007-10-02T17:34:06Z 2007-10-02T17:34:06Z Uncategorized I just found a really cool Opera Mobile Simulator… It should be quite handy for mobile web development, since I don’t have a handheld device to test on. There are over 40 different mobile web browsers, luckily Opera uses the most common rendering engine. The iPhone is more of a miniature version of the Safari Browser which uses the KHTML gecko rendering engine. For those of us who think the cost of an iPhone is ridiculous, but realize the potential buying power of iPhone users, there is also an iPhone emulator for developing on this platform.

]]>
Administrator <![CDATA[Y!DN]]> http://gregdoolittle.com/blog/2007/09/19/ydn/ 2007-09-19T18:34:48Z 2007-09-19T18:34:48Z Uncategorized YDN/YUI is the one really strong thing yahoo has going for it right now. i just discovered their video section where they share internal presentations about javascript with the general public:

http://developer.yahoo.com/yui/theater/

]]>
Administrator <![CDATA[Google 411]]> http://gregdoolittle.com/blog/2007/09/18/google-411/ 2007-09-19T03:52:59Z 2007-09-19T03:52:59Z Uncategorized i hate to be a walking advertisement for another company, an infectious host for a viral marketing campaign, but i’ve got to say google 411 is really amazing. i saw a billboard for the service on my way home, and had to try it out. i give it two thumbs up.

first of all, it’s free (at least right now it is). i don’t know how long it’s been since at&t stopped providing the service, it seems like almost 10 years. on a cellphone, the cost for a phonebook service had been in the 1$ range.

second of all, the voice recognition feature is really, really good. i’ve compared to both bmw’s idrive recognition and apple’s built-in finder voice recognition on OSX.4. it’s hands down the best voice recognition technology i’ve ever experienced. if it’s not sure what you said, i.e. doesn’t have an exact match, it gives you a list of things you may have said, and you can confirm by number.

the computerized voice is better than anything i’ve ever seen. very natural sounding. the intonation makes it very easy to understand. there is some room for improvement here, but it is by far the best ever computer voice at this point in time.

the interface: you say the city and state; you confirm the location; you say which listing you need; you then get the address and phone number; you’re prompted as to whether or not you’d like the info in a text message; it then repeats the info; it then connects you automatically to the phone number. there’s nothing more i could want from a 411 service. it is brilliant.

really, you ought to try it out for yourself. go on, pick up your phone… (1.800.GOOG.411)

]]>
Administrator <![CDATA[software2008 + bMighty.com]]> http://gregdoolittle.com/blog/2007/08/25/software2008-bmightycom/ 2007-08-26T05:18:21Z 2007-08-26T05:18:21Z Uncategorized I missed the BarCamp conference in Palo Alto last weekend. I wish I’d gone, but I’ll just have to find videos from the conferences and watch them during my commute.

what’s new at TechWeb, you ask?

Our MediaLive group (the group I work with) recently took control of the software 2008 conference, a product of the people at sandhill.com. we’ve also expanded several of our current shows to international venues (Interop São Paulo, Web 2.0 Berlin…). We also recently launched bMighty.com, a journal/blog devoted to SMB’s.

I’ve been working with OpenAds, configuring our own ad server to replace our paid contract with double-click. I’m also trying to get us off of HitBox, which could easily be replaced with Google Analytics. I’ve installed the analytics-javascript file on all of our templates, now I just have to convince the higher-ups that the statistics from on Google Analytics are as good if not better than what we get from HitBox. Ah… bureaucracy…

]]>
Administrator <![CDATA[xampp on my laptop]]> http://gregdoolittle.com/blog/2007/08/08/xampp-on-my-laptop/ 2007-08-08T17:54:43Z 2007-08-08T17:54:43Z Uncategorized i just installed apache with php and mysql (xampp) on my macbook pro. when i start up the server, everything runs a bit sluggishly, but it’s worth having so that i can work on php/mysql stuff on the train. if things are too sluggish, i can always just shut down thee olde kernel itself.

current projects:

  • redo my php-craps game to take advantage of ajax, also integrate a gambling/wager feature, and beef up the graphics a bit
  • create simplified ecommerce wedding registry
  • negotiate a redesign
]]>
Administrator <![CDATA[carbonharmony.com]]> http://gregdoolittle.com/blog/2007/08/07/carbonharmonycom/ 2007-08-07T21:13:38Z 2007-08-07T21:13:38Z Uncategorized i just wrapped up a small freelance project for www.carbonharmony.com. some very basic javascript which helps you calculate your CO2 emissions on a yearly basis.

you can see what i did here, and hopefully soon, you will see it on www.carbonharmony.com.

]]>
Administrator <![CDATA[redesign]]> http://gregdoolittle.com/blog/2007/07/08/48/ 2007-07-09T05:55:16Z 2007-07-09T05:55:16Z Uncategorized I’ve been meaning to do a re-design for an unpaid project for quite some time. This weekend I finally managed to dedicate a few hours to it, and this is what i have so far (keep in mind, I haven’t tested in IE at all yet, so if it’s a complete bomb, try looking in Firefox). What do you say mom, how much is it worth to you? ;-)

The interface is 100% more lick-able, the colors are brighter and bolder, and the code is much more clean. As soon as I get an opinion on it, I’ll fix it up and put the files at the root of the site, followed by carrying the re-design through to other pages of the site.

before | after

]]>
Administrator <![CDATA[IE + Flash Problemo]]> http://gregdoolittle.com/blog/2007/06/26/ie-flash-problemo/ 2007-06-26T16:53:53Z 2007-06-26T16:53:53Z Uncategorized As a result of a legal battle with a patent holder, all embedded objects in IE require you to click the object before you can activate its controls.

When we started using a flash slideshow on one of our homepages, we were in a scramble to get all the copy-edits and registration systems up and running. Now we have some time to breath, so I went back and found an article about out how to get around this problem. (Read it here)

Adding a few lines of javascript takes care of the click-to-activate problem.


objects = document.getElementsByTagName("object");
for (var i = 0; i < objects.length; i++)
{
    objects[i].outerHTML = objects[i].outerHTML;
}

You can see it on one of our sites here: www.interop.com

***update 6/26:

Noticed some conflicts caused by the above version. Mainly happening with our drop down menus, and the javascript we use in our ad network didn’t like having it’s “outerHTML” messed with. The version below works great thus far:
http://activecontent.blogspot.com/

]]>
Administrator <![CDATA[forced scrollbars]]> http://gregdoolittle.com/blog/2007/06/09/forced-scrollbars/ 2007-06-10T05:22:50Z 2007-06-10T05:22:50Z Uncategorized i realized that some of the sites i designed when i was first putting sites together all shared a common glitch. the problem was that pages with only a little amount of content didn’t get scrollbars, whereas pages with more than a screen’s capacity of content required scrollbars. the reason this is a problem is that when you navigate from one page to the next, the page layout jumps left and right by about 10px from pages with scrollbars to pages without them. minor problem, but some might say the devil’s in the details. it’s just one more way to make a site pixel perfect. i recently googled the words “forced scrollbars”, and found this article which shows how to solve this problem:

http://www.splintered.co.uk/experiments/49/

basically all you need to do is add this to your css, and you’ll get scrollbars on every page:

html { min-height: 100%; margin-bottom: 1px; }

]]>
Administrator <![CDATA[]]> http://gregdoolittle.com/blog/2007/06/04/44/ 2007-06-05T00:54:45Z 2007-06-05T00:54:45Z Uncategorized
i usually don’t post stuff from youtube, but this guy is too neat to not pass on to anyone reading this:

]]>