The original title was, “CSS’ Units of Measurement and their impact to the quality of responsive websites”, and then I thought, “I wouldn’t want to read that — there’s no way someone else would.” So I figured I’d try something semi-punny, and then hit you with the real title inside, like a journalist or something.
Whatever. Here’s the big idea:
It’s not 1999, or 2009. We can’t predict, reliably, what devices consumers will use to consume our content. Designing a website that looks a specific way in a specific breakpoint is getting harder to do, and it makes CSSing those websites more unruly. A factor that contributes to that unruliness is the unit of measurement.
There’s more than just
em to consider now. There are many other units of measurement that can have a positive impact in a responsive website.
Having a propensity to be pedantic, today I finally reached a small breaking point with
line-height. In the grand scheme of communicating design requirements, this is a tiny little thing. But, a good understanding of line-height can improve design, documentation, and code quality all at once. If you’re not using a unitless line-height right now, I’d like to encourage you to consider it because of the benefits to the browser and your team.
We all fix things, and we all solve things. But sometimes we don’t know whether we’re fixing a problem in CSS, or solving it. And I realize that even I’m guilty of not recognizing one over the other. This isn’t good. The inability to discern a “fix” from a “solution” has huge implications for the sustainability and scalability of a code base. And if we turn a code base into a collection of fixes, we kill page load, the user experience, and ultimately ourselves.
This year, SDL decided to host a hackathon that launched at SDL Innovate. And I, having a full time job, school, and a side project, needed something to keep me busy. So I decided to participate. I had some ideas for Media Manager, so I figured this was a good excuse to start experimenting with them.
Then I found out that there was money involved in the Hackathon. So I had an excuse to actually submit something.
I come from a family of builders. My father’s father was a master carpenter. And though my father was a business man by career, he was an excellent carpenter by trade. My grandfather built a dresser for my father that I still use today. I have boxes that my father built, a pump organ that he restored, as well as desks and benches. My mother has a hutch that her grandfather build and my father restored. We have furniture, and the tools used to build it, that go back five generations.
Unfortunately, my grandfather died before I was born, and my father died when I was twelve. I missed out on the chance to acquire much of the wisdom that’s accumulated over the years. Now, as a man in my 30’s, I’m learning how to build things with trial and a lot more error than I’d like. And I’ve learned a lot of lessons in carpentry that have parallels in web development. Read More
I’ve recently had a bout of philosophy that I can’t quite shake. I like philosophy a lot, and I think we’re all philosophers. I think I picked up that idea in my Ayn Rand phase, where she said,
As a human being, you have no choice about the fact that you need a philosophy. Your only choice is whether you define a philosophy by a subconsious… thought
What I’ve realized is that I have had some subconscious thoughts about Front-end Development. And once I really bring them to the foreground, I realize that there are some core principles that guide why I do what I do, and how I choose to do it. So, I’d like to share some of my philosophies of front-end development. Read More
Tridion’s Experience Manager (XPM) has been a hot topic at Tahzoo recently. Piti Itharat, Shawn Webber, and I have all been talking about some of the “gotchas” we’ve experienced in the front-end of XPM implementations. Especially after a few front-end folks started asking for tips on how to be XPM-minded when writing HTML and CSS, the three of us put together a short list of best-practices and pitfalls for doing the front-end in XPM.
A few months ago, Dominic Cronin got this wild idea to have a bookmarklet competition with Tridion. The rules were very simple: Make a bookmarklet that does something with the GUI in Tridion. Share it.
I was talking to a colleague recently about the release of McSandy, and he mentioned that he had a project coming up that would require manipulation of HTML5’s LocalStorage API. I pointed him to a small gist that I’d put up on Github. And then I thought, “hey, maybe I should mention this to other folks, too.”
After I announced that McSandy was in beta mode, I created a Reddit post for McSandy, and asked for feedback. What I noticed is that a lot of folks don’t really get why I made McSandy — because there’s tons of other options out there. So I’m going to show you why, with a few lovely animated gifs.