

Is Web Design All About Hacking or Kludging? - ideonexus
http://ideonexus.com/2013/05/05/is-web-design-all-about-hacking-or-kludging/
Front end UI-design for the web seems to involve lots of workarounds and tricks to get past browser-compatibility issues and bugs. Do you consider these tricks elegant or a necessary evil of web design?
======
ChrisLTD
Front end development has a few characteristics that make it particularly
tough. You have to support multiple browsers (and the old versions of those
browsers), as well as computers with different sized screens and input types.
On the backend, you get to pick and choose what runs your code.

Also, to get anything accomplished you have to combine HTML, CSS, and
Javascript. None of them were originally intended to do the things we're doing
with them now in terms of layout or interactivity.

------
Pxtl
It's a hypertext document platform that was perverted to be a general-purpose
applications platform as well as well as bolting on magazine-like layout
requirements.

It is, intrinsically, a hack. The original design and implementation of its
scripting language was a two-week rush-job. It embraces XML while using a more
YAML-like syntax for styling.

It's gotten better but only by the sheer force of an entire industry dedicated
to swimming up-stream.

------
ivybridge
It seems as if the HTML5 stars have aligned pretty well lately. I find myself
testing with Chrome, finishing the project, and everything works in Firefox
and IE10.

------
LarryMade2
Heh, yeah those front end folk are insane for the crap they have to put into a
page to get things to look pretty and work.

I think for those starting out it feels a lot like hacking and kludging, until
you get your preferred libraries and methods worked out then you forget about
how hacked up and kludged the process is. :-D

------
brokenparser
First of all, Firefox appears to be fine without the extra
"folksonomiesHeight" elements. If they're only needed for IE, at least wrap
them in conditional comments.

Secondly, div.folksonomies and div.expandButton can both work without
position: absolute if you replace the rules for expandButton with these:
height: 25px; margin-top: -25px; text-align: right;

Pixel units aren't as bad as they used to be, modern browsers can scale the
page regardless of what units you use. Replace font-size: 12pt with font-size:
16px to ensure the correct height.

As a general tip, look at the conditional comments used for the HTML tag in
HTML5 boilerplate (html5boilerplate.com), you can use that to specify
workaround rules for IE < 9 (and you could add an IE 9 class yourself). For IE
6/7 you can use Javascript expressions to calculate correct values.

~~~
ideonexus
Wow! Thanks for the feedback! I will do!

------
mattbasta
1\. He's complaining about bugs in IE7 that "weren't fixed until IE8"
Seriously? It's 2013, the modern web runs on IE9 and up. If you're still
building for IE7 support, then you have no idea what the consensus of the web
dev community is. Google sites don't even run on IE7. 2\. His "hack" is
necessary because he doesn't understand how to use CSS layouts properly.
Instead of absolutely positioning those folksonomies, he should have been
floating them and settings max-widths. You can't blame the web for your own
ignorance. 3\. CSS3 browser prefixes are largely dead and gone and complaining
about them is meaningless and misinformed. If you're still targeting Chrome 10
and below or an IE10 preview release (less than a fraction of a fraction of a
percent each), then you're simply an idiot.

~~~
ideonexus
<p>I realize that the majority of the web is beyond IE6, but when your
customer calls you to complain that your web application is broken in their
IE6 browser and their system administrators refuse to upgrade their Citrix
installation to use a more modern browser, then you refactor your UI to be
compatible with IE6.</p>

<p>I can't just tell the customer "You're an idiot," and wash my hands of the
situation. You'll understand this firsthand when you get out into the
professional world or you'll be that developer who management hides in the
basement where you can quietly grumble to yourself about how stupid everyone
else is.</p>

------
septerr
I am trying to become a web designer/developer after years of working mostly
in the backend. And the inelegance of solutions, the spider weblike creep of
the code is a big bother. But it is a nice challenge too. To write an elegant,
readable, maintainable code for a beautiful and pleasing UI/UX. There might be
compromises that would have to be made in the UI/UX end in order to maintain
sanity of the code. Finding the optimum balance could be an enjoyable
challenge.

------
erikb
That's exactly why I decided against working on web frontend stuff. It drove
me crazy.

