Introducing HTML5 and HTML5 for Web Designers, a review

I wasn’t really HTML5’s biggest fan. The fact that you can write it however you want made me very worried that it might result in poor coding again (unclosed tags, or mismatched closing tags). But after reading Introducing HTML5 and HTML5 for Web Designers, I realized that what it lacked in rigid coding conventions it made up with semantic elements like section, article, nav, aside, header and footer to name a few.

If you’re planning on learning more about HTML5 then I suggest that you pick up these two books as it will help you immensely. Funny enough, while I’m reading these books, I suddenly realized how bad I did in coding this site up. I’m currently in the process of re-writing the entire thing while keeping in mind the mobile first philosophy. It’s a little challenging, but that’s how things get more fun, right? (I sure miss IE a little bit.)

Introducing HTML5 by Bruce Lawson and Remy Sharp

Introducing HTML5 book cover Bought Introducing HTML5 (ref) a couple of days after I got my Kindle. The sample file was engaging and I thought it would be great to read about HTML5 in one place. The web is just buzzing with HTML5 news and tips and tricks that just getting up to date is hard to do.

The book uses a conversational tone and it’s probably the biggest reason why I love it. Bruce Lawson and Remy Sharp were able to discuss the difference between seemingly similar elements in a very clear and concise way. The explanations are so easy to understand that I just realized that, unfortunately, the only thing I did right in my markup (in this site) is using article for my blog posts.

The book is divided into 10 chapters, they discussed how HTML started to structuring text elements and new types of forms, to using video and audio tags properly as well as canvas, how to access and set data storages, offline mode, drag and drop, geolocation and APIs.

Pros

I love how in-depth the book is, it gave a lot of examples that you can follow throughout the book, the discussions on which element is which and what for is so succinct. Introduction to HTML5 is a very meaty one, it’s the type of book you’re going to consult over and over again.

Continue reading

Volusion, every themer’s nightmare

Volusion Logo Recently, I had to convert a PSD into a theme for a Volusion store. I don’t really mind doing something new because I know that you’ll always, always learn something from it. But volusion just made me appreciate WordPress, Drupal and MVC frameworks more.

When I first looked at the code within Volusion’s LiveEditor, I thought “Well this is going to be simple and easy.” But I was so, so, so wrong. It was a nightmare so hard, I’m not used to making the design work for the CMS — I’m used to bending it with my jedi mind tricks (or well, try).

Volusion only has one theme for everything. Ever since I started learning more and more about Drupal, I’ve started to appreciate this one-theme-for-all-page strategy where you update all of the options in the admin panel instead of in the theme itself. It wasn’t easy at first because I was used to how WordPress works but I realized that this way is actually more flexible (and dare I say user-friendly for the clients once they’re used to it), so that’s not really what I dislike dislike about Volusion.

It’s that there really is that one HTML file, and your CSS. With Volusion, you can show the contents of the site by adding <div id="content_area"></div> within your theme, the Volusion script adds the code and content within that div. And boy, do they add codes (read: table, b, font!)! Unfortunately for you, the designer/front-end developer, you can’t edit the codes that’s within it. This means no conditional tags for your menu or sub menu, no includes, nothing. Just your HTML and CSS. :(

The code they add within #content_area doesn’t have a lot of classes or IDs either, having them would have made my life easier because I can select them through CSS. But no, they’re using tables within tables within tables within tabl— well, you get the drift. So in the end, don’t be surprised if your CSS will look something like this:

 table[cellspacing="2"] table table table font { styles }
  table[cellpadding="8"] table table td .classname table { styles }

You can customize how it looks per category but whenever you have to adjust something, let’s say, change a URL in one of the sections or add a new section, it means that you have to edit it in all of the category pages. It’s like editing static HTML files all over again. This makes me sad because I feel that Volusion was left by its CMS counterpart and got stuck in the 90s. What. Is. Up?

Since you can’t edit what goes on in your #content_area div, it also means that if you want a bigger product image, you’ll have to, you guessed it, update all of the product images so it will match the new design’s specified image proportion. When the client said she wanted a bigger image, I initially thought that I’d just select a bigger version of the product image either in the option or code unfortunately though, there’s no option for it. There is an tig welder reviews article in their support section on how to change your product thumbnails.

The submit buttons are all in images, too. Call me rigid in my ways or just plain lazy, but I’d like to have the option of just creating one background image to apply on all text-based buttons. And if I ever decide that images make a better experience for the users then I’d like to have that option, too.

I wonder what’s going on with them, with the advent of hosted ecommerce solutions like shopify and bigcartel, just to name a few, you’d think they’d do everything they can to make theming and updating the sites easier and more flexible for their clients. I do know that you have to make your app backwards compatible for all of those who can’t be bothered to update their design since whenever; but isn’t it also the service provider’s responsibility to make sure that what they have is at par with what’s out there? I’m really curious with what’s cooking in the Volusion HQ, will they be updating their backend’s design (that doesn’t work that well with webkit-based browsers), etc?

On creating themes and going out of your comfort zone

I have always been a WordPress girl, but you have to admit that there are instances where you just have to use something that specializes in that area.

I’ve recently overhauled Last Leaf and turned it into a lifestream. I have stopped blogging there since the start of the year and have always thought of turning it into just that but I haven’t because creating themes for another CMS seemed intimidating.

At first, I thought of writing my own lifestream, it should have been my way of learning more about RoR but until now, all I have in my folder is the basic install (which I have forgotten how I was able to produce) so I turned to the next best thing: Sweetcron. It’s been months since I have looked at Sweetcron, I remember that I found it so unfriendly to customize to one’s needs before. Turns out, all I really needed was to read a good documentation, a lot of focus and plenty of time to test things out. It’s a pleasant exercise, and it’s something I know I’ll do again.

And so, with the intro done and over with, I suggest that you try and do something you haven’t tried before once in a while, if you’re not yet ready to commit full-time to something really big (RoR for me) then do some little things (like theme customizations, I think I want to try Drupal next) and so, here are the notes I made myself remember while writing Last Leaf’s theme:

  • Base your first theme on one of the default ones

    Most of the time, you already have almost everything you need in the default theme, the developers won’t include that otherwise, I think. Trying to edit the defaults also make the learning curve more enjoyable because you know you won’t just break something because it acts as your guide in the process.

    My first WordPress theme was something based on WordPress Classic, I have little to no knowledge in CSS that time and that’s the best thing I could come up with. It helped me get familiar with the CMS’ templating system (man, I sound so pretentious) as well as taught me what this CSS shenanigan is. With Sweetcron, I used the Boxy Theme. As soon as you were able to stop the nauseous feeling whenever you see a PHP snippet, you’d realize that it’s pretty straightforward.

    Social Media I had a great time styling the individual boxes, it got a little confusing after a while though, what with all those accounts, so I made a separate file for each one of them like what you can see on the image, it made _activity_feeds.php less cluttered and made isolating the problem easier.

  • Experiment

    I wanted to get just the image within the post because I’m not planning on directing people into the single page of every items and all I really want to show sometimes are the interior decors I love. At first I used this: <?php echo $item->item_data[$item->get_feed_class()]['image']['m']?> which is something you need to call the images you uploaded in Flickr but won’t work anywhere else. Thankfully, somewhere in the _activity_feeds.php file is <?php echo $item->get_image()?> and that’s what I used for my Tumblr and Google Reader posts.

    However, I don’t post images there all the time so I need a way to retrieve the text if the image doesn’t exist and so, there goes the only thing I’m good at, if-else statement:

    <?php if ($item->get_image() == ''):?>
         <?php //display your text here ?>
    <?php else: ?>
         <?php //and this is for your photo ?>
    <?php endif; ?>
    
  • Search and then ask

    I would’ve probably given up on Sweetcron the second time have I not found that Nettuts tutorial, all you really need to do is keep your cool if you can’t find a solution to your problem. And if you can’t find the solution through searching, go to the usergroup/website of the CMS.

Sweetcron is still new and AFAIK, there’s only one developer so it’s understandable if there’s no documentation on the site like: is there a way to retrieve the tags I added in my starred items in Google Reader? How do I truncate the title? (<?php echo word_limiter($item->get_title(), 20) ?> doesn’t work :() Is it possible that I could host the images in my own server instead of relying on other sites? However, the community behind it is very, very friendly and you’re sure to find answers you’re looking for there, unless you’re too shy to ask for it. :P In the end, go and get these Sleeklens free presets for your photoshop.