Stop the ride. I wanna get off.
Change. I change my clothes, my son's diaper, my mind - often multiple times a day. Heck, change is so intertwined in our lives that we make changes on the way to work; radio stations, lanes, MPH, etc. Our lives and the world around us is in a constant state of flux.
So then, how do you stay on top (never mind the cutting edge) of an industry that is constantly changing?
The web design industry is built on change. On one hand, it's great. Yesterday, we had to use Flash in order to have a dynamic website. Today, we can use better JavaScript like JQuery to do it. Tomorrow, we will use HTML5. Truly without change, our art, our passion would grow stale. However, it can be seriously dizzying!
I just read a retrospective article a few weeks ago about design trends for 2009. Then today, I read one about design trends of 2010 so far. Wait. I just got the hang of the "look" for 2009. Crap. I won't "get" 2010 for at least another 6 months. I know I said it just a moment ago, but I feel like the room is spinning.
Since I am spinning in circles, that takes us back to the beginning: "How do you stay on top of an industry that's constantly changing?"
Well I think that it will be different for each person. However, for me that involves a lot of research and reading. I have a short list of sites that I visit when I'm in need of some inspiration. Probably the one site I visit most often is Smashing Magazine, though. I also have been studying up on not only the more obscure features of CSS2, but am starting to dive in to CSS3. It won't be long before it will be the new standard and all browsers will support it en masse.
More importantly for me though, is that I start doing. I will look at a design that I admire and try to reverse engineer it. I figure out how the interactive elements work and what it takes to make them work well. I look at the design and try to replicate it with my own touch. I dissect the CSS so I can get an even better grasp of how it is affecting the layout and styling of the site.
Unfortunately, I haven't found a way to stay on top of the wave or even get ahead of it. I don't know if I ever will. I don't know if that's really important, though, either. For me, it's constantly a process of self improvement and discovery. That's why I love this industry so much. That is why I love my job so much. I get a chance to learn something new every day. Moreover, I get to do something that's challenging and in the end, very rewarding.
So, ya - this changing industry can be dizzying. But, it's also a small picture of the world around us. I suppose if you have a hard time accepting change in your daily life, then you probably don't want to consider web design. However, if you can embrace the change for what it is; a daily challenge to improve yourself and give back to others, then you'll do just fine.
Now if you'll excuse me, I have to go change another diaper.
Flash vs HTML5
The battle between Flash and HTML5 has been heating up lately. There's a lot of debate not only by the people who know what goes into Flash and HTML5, but also from the general public.
You can't really surf the web without catching an argument about how Flash is bloated and overall crap and that HTML5 is the savior of the interwebs. Gizmodo, Crunchgear, and Endgadget are just a few sites that talk about the subject. However, now you have Apple going head to head with Adobe in the last few months. First when the iPhone came out, it was annoying that they didn't allow Flash on it. However, most people forgave Apple because they figured that, well, it's a cell phone and other manufacturers make the rules to govern their phones, why not Apple? Then Apple rolls out the iPad. (side note, I've played with one and I still think it's an oversized, overpriced iPod Touch.) Anyway, the iPad doesn't support Flash. Rather, Apple is trying to push their codec, H.264. They've been using it for the last few years to encode video files for the iPod Touch and iPhones. It's a good format, but hell, there's better out there. So, here's the disturbing thing; Apple's show of obstinance is actually winning them ground! You've actually got website owners willing to ditch Flash just so their site will work on that POS iPad. I find that utterly rediculous! Why should we, the web developers bow to Apple's wishes? Personally, I don't necessarily like Flash en masse. It has it's merits in certain situations, though. However, when one company is trying to bend the rules to their favor, that's when we should all stop and take stock of what's going on here. I mean, rather than everyone bowing to Apple, why not push back and say, "nope, we're not going to give in to your closed system".
Okay, I'm sorry, I can tend to rattle on and I have a few gripes with Apple lately so, I'll try to keep on course.
Anyway, like I said above, Flash has it's merits. Personally, I don't like building entire websites out of Flash. Primarily because they can't be read by search engines and therefore it's much more difficult to correctly optimize them. I think HTML5 is great and if you've seen some of the demos out there, it's really impressive. Heck, never mind the demos, take a look at YouTube. Yup. YouTube is now all HTML5. However, I don't think that HTML5 is 100% our answer to a smoother web surfing experience. Granted, I think it's a big piece of the puzzle. However, I think the responsibility lies squarely on the shoulders of web developers to stop building shitty sites and to start doing it right. They need to quit cutting corners and put in the time, hard work, and effort to make a site great using whatever technology that site requires. Too many people pigeon-hole themselves and refuse to grow beyond what they're comfortable; be it Flash, HTML, or other.
As I've said before, I'm not a huge fan of Flash. However, I'll use it if I have to. I have a client that wanted a full Flash website. So, knowing it's SEO limitations, I built a Flash landing page (my thoughts on those another time) and built the rest of the site using jQuery. The site is interactive like she wanted, but it now works well with SEO techniques. So ultimately, she really is the big winner here.
Anyway, if I can leave you with just one thought, it would be this; HTML5 is Friggin' awesome and Flash is bloated. However, in order to build a web surfing experience that is interactive, exciting, and smooth, we need to leverage all of the technologies. Moreover, it's not up to big companies to decide for us what that will look like.
Wrestling with JQuery
I'll admit it. I'm good at programming as long as it's HTML and CSS. I'm pretty weak with JavaScript and PHP. Okay, I hate PHP and MySQL, but maybe someday I'll come around. However, I've really been turned on to JQuery and have been really impressed with it.
I've been working on a new design for our primary site: http://www.flyingtomatodesign.com. I wanted to do something that would be a little more interactive than my previous designs.
As a quick aside: I generally approach website construction with a designer's eye. The programming and considering thereof generally come after that. In other words, I end up spending a ton of time either figuring out how to make the programing work OR end up changing my design to accommodate what I can accomplish with the programming
So, on this new design, I decided to approach it from a different angle. I decided to base the site design around the programming. So, I found a couple great JQuery scripts and got them worked out. I was pretty stoked at how quickly these things worked. Take a look at the concept: http://www.flyingtomatodesign.com/FTDWeb2_0Concept/index.html. First I got the slider working. That one was rough. I had to really wrestle with the CSS and the JavaScript to make it work right. More appropriately, I had a certain spot that I wanted that to fit in and wrestled with shoe-horning that sucker in. As I mentioned above, JS isn't my strong suit, so it took me the better part of my Saturday to get it figured out.
Next came the navigation. After I got that sussed out (which this time went much smoother), that damn slider wouldn't work. I moved some of the code around and SHAZAAM! everything fell into place and worked together. Well at least in Opera 10, Safari 4, Firefox 3.6, and Chrome. Of course since Internet Explorer doesn't play well with web standards, it wouldn't work for that. However, I got a nice little fix for that, too. First, you have to create a separate style sheet. I named it "IE7.css" and it contains the following code:
div.container {
overflow:hidden;
word-wrap: break-word;
}
Then you have to add the following code. I built this demo with a wrapper, then a container inside that, etc. So, I placed the code at the top of the wrapper:
<!--[if IE 7]> <link href="_css/IE7.css" rel="stylesheet" type="text/css"> <![endif]-->
By putting that bit of script at the top of the main DIV tag, everything under it is affected by that code. Before affecting those changes, the navigation worked fine but the scrolling window did not. Now they both work just fine in IE8.
In addition to that, I had to put the JavaScript coding above the code required for the slider. So, I called the JS files for the navigation (jquery.min.js) and proprietary code for the script first. Then called the slider scripts (jquery.js and easySlider1.5.js) and it's proprietary code for the slider. So the end result is that the site loads the code required to make the navigation to work first, then the code for the slider, then as it turns out, all the CSS. Take a look at the source code and you'll see what I mean.
If you want to copy the navigation, go here: Sohtanaka.com. If you're interested in the slider, you can find it here: Easy Slider 1.5.