html5

There’s been so much hype lately about HTML5 and how it’s the future of web technology standards. You can’t go to any major web browser’s website without being told about how awesome their HTML5 support is (Apple SafariMozilla Firefox 4Microsoft IE9). I couldn’t find a similar page on Google about Chrome’s support, but we all know about Chrome Experiments. It’s like HTML5 has become a marketing tool for companies to gain an edge over their competitors. But it hasn’t even been officially released or even suggested by the W3C (the web standards governing body), so I keep on asking myself “well, what the hell is it exactly?”

Good question, me. Well, Google claims that all of their mobile web apps are built using HTML5. Awesome, so it makes links more clickable using your thumb instead of a mouse pointer? Or is it actually the programming behind the apps? I mean, Google Voice is pretty slick on the iPhone, but what exactly does html5 do that made that app possible? With some clever browser detection and mobile-targeted stylesheets, I could probably create a UI that at least looks and acts like GV.

To try to answer my question, I started doing a good amount of research. I followed along with a bunch of HTML5 tutorials and created my “very own first website using html5″. A few months ago I even joined some fellow geeks at a presentation by Imulus all about HTML5. And still, I didn’t have a better understanding of what it was. In fact, most of the cool functionality that’s often attributed to HTML5 was actually CSS3 and JavaScript trickery, not some revolutionary markup language. And I’m not the only one that was confused. Apple has a set of HTML5 demos meant to show off Safari’s support, but only 2 of the 6 demos actually use HTML5.

This morning I gained some understanding for the first time. I started watching Lynda’s first look at HTML5 (alternately) video series, and it finally shed some light on the subject that’s confused me for so long.

Basically, what it breaks down to is that I was correct. Many of HTML5′s most touted capabilities actually have nothing to do with the language. Let me reiterate (this is a very important point): HTML5 has little or nothing to do with all the awesome “HTML5″ websites out there. The term itself has become a brand, or as I mentioned earlier, a marketing tool. It’s the new “it is the future” key phrase like “Web 2.0″ was a few years ago, and it’s become the latest hope for the loyal Apple user/Flash hater. Anything new and cool on the web is allowed to be placed under the the HTML5 heading. It’s not a web language anymore, but a shift in how users interact with the web, and how the web interacts with you.

The most important point I think the Lynda videos made was that it’s not so important for the end user to know the difference between what HTML5 is and what it isn’t (do you care about the differences between PHP and JavaScript? They’re vastly different, but the end user doesn’t need to concern themselves with that), but it’s monumentally important for developers to understand that difference. I was doing research as a developer, but finding results intended for the end user. I thought that HTML5 was the answer to every problem I’ve ever had with cross-browser compatibilities, embedding various media types, etc., when in reality it’s just a new way to markup pages (and in reality, more than half of its official specifications are accounting for existing markup) with a few new APIs (including native video and audio support).

I’m excited about HTML5′s current support and it’s imminent official release, but I’m even more excited to figure out how to create the falsely labeled “HTML5″ web apps out there. HTML5 largely leans on JavaScript to create most of its dynamic and interactive content, so this research has actually made me more excited to delve into JS than anything else. One of my biggest fears as a developer is getting left in the dust while clinging to depreciated web technologies, so there’s no way I’ll let HTML5 slip through my fingers. It is a part of the future, but it’s only one of the players. It alone can’t create the richly interactive websites of tomorrow.

No Comments »
date Nov 14th 2010
author Mike
category Geek
tags
 

incessant record keeping

So one of the biggest reasons I want a blog is to keep a record of things. My life, mostly. But lately I’ve either been to busy to post, or I’ve been using Twitter to record my daily doings. I’m not doing a very good job or recording much of anything here.

For a while now, I’ve been thinking about how nice it would be to have a database-driven website where you can record just about anything, and view stats and numbers associated with those records. For example, as a personal project to better learn PHP and MySQL, I’m creating a site where Ally can keep track of the books she’s read. I’m making it expandable enough that eventually, multiple users will be able to use the same site, see what other books people have added, and associate those books with their own accounts. By “associate” I mean that they will be able to add it to their wishlist, or they can mark it as “already read” and put it in their archive of completed books. They’ll be able to pull up all sorts of numbers and stats, see graphs of books completed within a date ranges, let the site choose their next book for them based on any number or criteria, and so-on.

But I’m digressing a bit. The point is that it will be a simple website, and it’ll only take a minute to enter a new book you’ve read, yet you’ll be able to get all sorts of rich information out of it. I wish I could recreate this site for about a million different things, not just book reading.

Baby steps. I don’t have the know-how to create an infinitely customizable site where users can create their own set of record keeping data based on whatever’s important to them. Yet. Someday. For now, I just need somewhere to put things so I can easily “remember” them later (i.e. use a search bar to find them).

I have therefore decided to use this blog as a device for just that: record stats about my life. And to start, I’m going to create a post that simply records the bands I saw last night at the Guster concert. Utilizing tags, I’ll be able to later pull up posts for all the concerts I’ve been to (starting from today).

If I had started this about 8 years ago, I wouldn’t have to guess how many times I’ve seen Guster. “Was last night 10 or 11? 12 maybe? ” No more wondering.

No Comments »

5.30.2010

5.30.2010

More Crested Butte. Ally and I went exploring today, and after some feux-off-roading and walking down a trail that we thought was a hiking trail but ended up just being the path to get to some tennis courts, we ended up by a secluded trailhead next to a stream, hoping to get some actual hiking in. The trail was unfortunately blocked by the stream, though, which was probably 15 feet across and freezing cold. It doesn’t look like it in the photo below, but the little log bridge was super narrow and wobbly, and the stream was narrower (therefore faster and deeper) underneath it.

It was still a beautiful place to just sit and relax.

5.30.2010-2

On another note, this panorama was stitched together using 64 images. After the 20 minutes it took Photoshop to stitch it, I tried to save the image before I started editing, but was denied by Photoshop because it won’t write files larger than 2GB, and this guy exceeded that by at least 0.5.

Despite my obvious intent to capture enough photos to make a clean and complete panorama, as it usually goes, I still missed large sections, most notably the lower left corner.

original panorama

(original panorama)

When Adobe CS5 was announced, I remember having seen a video talking about how filling in holes like that will now become so easy. So I did some research and found out that there’s a new tool in Photoshop called “Content-Aware Fill” which is similar to the patch tool, but knows what should exist in the target selection. After applying the fill to just the lower left corner, this is how it looked:

content-aware fill applied

(content-aware fill applied)

Not too bad, if you ask me. In CS4 I would have either had to crop that whole left section out, or painstakingly recreate that corner with the clone stamp which would probably end up looking fake anyway. After a little cleanup around the edges (and removing all the extra dirty t-shirts that got cloned in), it actually looked like a convincing patch of ground with relatively few duplicate patterns and shapes.

When doing my research that led me to the content-aware fill, I also found a new tool called Puppet Warp which is a lot like the existing Warp tool on steroids. It creates a mesh of triangular sections over the entire layer that you can add anchor points (or “pins”) to and move them around to warp the mesh. One of the example uses tutorialists love to show is how you can add anchor pins to a person’s elbow and shoulder, and easily move their arm around in an anatomically believable way. I’ve never needed to move a person’s mid-wave hand position before, so that matters very little to me.

One of the other applications the tool has, though, is to stretch and warp a panorama’s uneven edges to better fill in an even rectangle without having to crop out large areas. I tried it out, and it was pretty easy to use, though it might take some practice to find pin placements that don’t end up distorting the final image.

puppet warp applied

(puppet warp applied)

As you can see, I got a pretty ugly curtain-draping effect at the top, which would have been very difficult to fix and even more obvious if the entire top half of the photo wasn’t evenly toned sky. Also, the horizon became much more wavy and uneven. Look at the house on the left compared to the car on the right. Though their placement is fairly symmetrical, the angle at which they meet the ground is completely different.

Although the final panorama really isn’t a good picture by any means, I thought it was too good of a new-Photoshop-tool exercise to not post.

final panorama

(final panorama. wtf is up the neon green I added? I mean...seriously.)

One last photo for the day, taken (again) from the balcony of our room.

5.30.2010-3

No Comments »
date Jun 6th 2010
author Mike
category Geek, Photo
tags, , ,
 

Page 7 Page 8

This is a pretty exciting time here at rhymes with milk. I’ve posted 28 posts – 29 including this one – and I have WordPress set to display 5 posts per page, making 6 total pages of posts. Follow so far?

The pagination* that I use on this site was actually created as a WordPress function by Eric Martin (I later found out it’s also a WP plugin, but I don’t think it was when I first installed it). It’s a clean and simple alternative to the default “next page/previous page” links built into WP, and makes the site much more navigable.

pagination

As you can see, there are currently 6 pages (as I already said…), and every page has its own link. When it reaches 7 pages, though, is when things get exciting. Since it’s not possible to continue linking to each individual page, the pagination ends up taking on a new, more compact form. The thing is, I can’t remember what that form is, though…

I remember testing out the paginate function when this site was still under construction by writing a bunch of dummy posts and setting WordPress to only show one per page. The function allows you to choose at what point it breaks from its current form into the more compacted one, and I remember setting that to be at page 7. I also remember customizing the compact look, but I can’t exactly remember what I customized it to.

I’m super excited to see what’s about to happen. Here’s to Page 7.

UPDATE: I have a few private posts that I never ended up posting, but still show up for me when I’m logged in. Therefore I see more pages than you do, so you all can’t see this yet, but it just rolled over to 7 for me. And guess what happened? Nothing. My memory was clearly wrong. I’m beginning to think it’s page 8 when the magic happens. Yeah, page 8, that’s definitely it. Here’s to Page 8!

* How do you pronounce “paginate”? Everywhere I look says it’s paj-uh-ney-shuh, but I refuse to believe that. Why would something originally pronounce with a long “a” suddenly change it to a short vowel sound, especially since there’s still a single consonant then a vowel trailing it? I could understand it if the spelling had been changed as well, to something like paggination, but it didn’t.

No Comments »
date May 15th 2010
author Mike
category Geek
tags
 

not genuine

I just got a new laptop, and it came with dozens of annoyingly bloated applications that I really don’t need. At least 4 different media galleries and organizers were pre-installed. To get around having to delete and uninstall everything, I just wiped the C: drive and installed a fresh, albeit cracked, version of Windows 7.

As it turns out, a lot of the terrible annoying applications were actually there for a reason. They made my computer work. Specifically, they made all the features that originally made my laptop badass work. Not only did a bunch of features stop working (touchpad scrolling, bluetooth, the Fn key), Microsoft somehow found out that the new version of Windows I installed was not genuine, and they reminded me that they knew every 5 minutes.

I called Sony to see if I could buy a restore disk, which I was hoping would be able to restore all of the lost functionality. After a lot of confusing phone calls, I found out that a restore disk doesn’t even exist for my computer. They said that it’s most likely because it’s a new model, and often restore disks aren’t created for at least several months after new products are released.

Which makes NO sense.

Maybe that is in fact the case, but don’t you think it’d be easy enough to create an install disk BEFORE you start selling a specific model. But whatever.

Anyway, I eventually was told that my computer actually has the restore “disk” built in. When I was installing the fresh version of Windows, I noticed that there was at least one extra partition on my hard drive. I had no idea what it was for at the time, but I decided not to erase it…just in case.

Thank god I didn’t. That extra partition contains what is essentially a snapshot of your computer when it left the factory. It had a backup of the original operating system and custom applications Sony spams their new computers with. Ultimately, it was entirely painless going through the restoration process, and within an hour or two, my computer was back to normal.

What I’ve learned (aka the moral of the story):

  • Don’t delete mystery factory-created drive partitions…just in case.
  • Uninstall shit like Norton 60-day free trials, but if it says “Sony” and you don’t know what it’s for, simply don’t touch it.
  • If a cracked product requires activation to work, always activate it OFFLINE if possible.
No Comments »
date May 2nd 2010
author Mike
category Geek
tags,