Four Things a Front-end Developer Should Know about Schemas in Tridion

You’re a front-end developer. You’re writing for a component template. You hand off HTML for a back-end developer to write a view. The back-end developer looks at it, goes cross-eyed and starts muttering to himself. You explain it. He says, “yeah, Tridion can’t do that.” You read my last post; you’d know that there’s a good chance that Tridion can do that, but he starts rambling on about XSLT filters, metadata, and a broker database. How do the fields in schemas actually work? What can they do? Why does the Tridion architect smell like whisky and bad decisions at 10:00am on a Tuesday?

Let’s answer all of these questions.

Read More

Responsive Websites are all about How You Measure (in your CSS)

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 px and em to consider now. There are many other units of measurement that can have a positive impact in a responsive website.

Read More

CSS tip: Use a proportional line-height to make everyone happier

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.
Read More

The Difference Between a Fix and a Solution in CSS

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.
Read More

Hacking Media Manager at an SDL Hackathon

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.
Read More

Lessons from Carpentry in Web Development

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

Some Guiding Principles For Front-End Development

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

Front-end Best Practices for Tridion’s Experience Manager

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.

Read More

A Tiny Tool for HTML5’s localStorage and sessionStorage

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.”

Read More