Code Standards & Front-end Development Best Practices
na.isobar.com
na.isobar.com
Use CSS sprites generously. They make hover states easy,
improve page load time, and reduce carbon dioxide emissions.
Funny and true.Of course my pages still render on IE, but I don't do any quirks mode stuff, that just causes too much pain.
Oh, well, that's not strictly true, since I have to have two different things in the CSS for rounded corners (webkit vs mozilla), but apart from that I try to keep quirks to a minimum, and IE can go die in a fire for all I care.
Take border-radius for instance. It is 'fluff'. It makes no functional difference to the page whether it is there or not.
Now, for Moz and Webkit, I get nice looking rounded corners for negligible effort. In order to duplicate that look on IE there are any number of ways to do it, but all of them involve enormously much more effort, and are much more fragile (anything where you need pixel perfect positioning is fragile and easily broken by different browser versions).
Additionally, the longer WE support IE's blatant disregard of standards, the less incentive they have to adhere to those standards.
For all code languages, we require indentation to be
done via soft tabs (using the space character). Hitting
Tab in your text editor shall be equivalent to four spaces.
Umm, who died and made you king? <tongue and cheek> I don't like using 4 spaces. I find it a waste of space, literally. In ruby community, 2 spaces is generally accepted.With that said, it's probably not a bad idea to have discussions around such standards with the understanding that there may be more than one good way to skin a cat.
BE CONSISTENT.
If you're editing code, take a few minutes to look at the code around you and determine its style. If they use spaces around all their arithmetic operators, you should too. If their comments have little boxes of hash marks around them, make your comments have little boxes of hash marks around them too.
The point of having style guidelines is to have a common vocabulary of coding so people can concentrate on what you're saying rather than on how you're saying it. We present global style rules here so people know the vocabulary, but local style is also important. If code you add to a file looks drastically different from the existing code around it, it throws readers out of their rhythm when they go to read it. Avoid this.
That's part of collaboration basics:
* Try to find an acceptable middle ground for the minor things and focus on coding and not politics.
* Don't be a douche.
~2¢
As much as you don't like using 4 spaces, it's much worse to have a codebase littered with some sections using 4 spaces, some sections using tabs, some sections using 2 spaces, some sections using 8 spaces, and some sections using a random assortment of nothing in particular.
Just as you accept the apparent standard of 2 spaces when working within the Ruby community, for consistency's sake I'd hope you would accept the standard of whatever other team you're working with.
Isobar front end engineer here...
What you're looking at is a document that serves as OUR internal standard. We just made it public because we think people might find it useful. We understand what we do internally may not work for everyone, but that's part of the fun of sharing documents like this. We learn too.
For example, Adobe never really bothered with specifying best practices for Flex, so now every Flex developer's code looks different, and there is a lot of unnecessary trial and error. (Although I like Flex as a framework)
http://validator.w3.org/check?uri=http%3A%2F%2Fna.isobar.com...
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8">
<title>Code Standards | Isobar</title>
<link rel="stylesheet" href="assets/master.css" />
</head>
<body>
<!--
_^_
/ _)
.-^^^-/ / we like dinosaurs as much as you do.
__/ /
<__.|_|-|_|
-->
I see a couple of problems. First up, they're not indenting. The validator is spitting the dummy because of two things, the first is the spurious whitespace before the doctype tag, the second is the title (which it thinks is missing), but the real problem is with the meta tag which isn't properly closed.But hey, free dinosaur. With hat.
I'm fond of the original because it also includes some great UI design patterns.
(no offense to the article's author.. actually looks really lucid and well written. I just tire of the idea that Best Practices™ exist. They don't.)