3
Mar
Though I don’t intend to change the focus of this blog from web development, design, martial arts and language (and some occasional thoughts on life) to parenting or gushing about my daughter, becoming a father has prompted some insights that I wanted to share.
My daughter will be six days old this afternoon. Six days that seem like a year; and I mean that in the best way possible. A year is a long time… think of what goes on in your life in a year. Now, compress that into six days and you’ll have an idea of what it’s been like since our daughter was born. If you are a parent yourself—especially a recent one—you know what I mean. That brings me to the first of six fatherhood facts I want to share:
- When people ask you if you’re a parent, they’re testing you. It’s not a bad test, or even a judgmental one; they just want to know whether you’re in the club. The club isn’t an exclusive one: more people than not are members. Jackets and ties are not required, but membership does require dues: you must tithe 20–40% of your usual sleep time for the first few years of membership.
- When people tell an expecting couple “all your perspectives on the world will change,” they are right and you can’t truly understand how right they are. I will provide two examples relative to my interests; yours will differ in details but not in intent.
- Karate — Tuesday before our baby was born, I stayed home from two hours of karate to be with my very pregnant wife. It was important that I support her and I knew that, yet I was discontent because I was missing out on something I love to do. But missing classes since she was born bothers me as much as missing an appointment for a root canal.
- Coffee — A few hours upon arriving home from the hospital, after my wife and baby were settled, I pulled a shot of espresso. While it finished pouring, I went to check on them. Staring at my baby daughter’s face occupied me so completely that it wasn’t until an hour later that I noticed the now-cold shot sitting on the machine. I’d actually forgotten about delicious coffee.
- Today, I still love martial arts and hope to train for a lifetime. And to paraphrase Spock at the end of Star Trek II, coffee “is, and always will be… my friend.” But these and other pursuits are all distant seconds to my baby, who is now in first place.
- Marketers should not be allowed to use the term “baby soft.” It’s a fact that a baby’s skin (especially cheeks!) is the softest substance on the planet—except maybe for silken tofu, but that stuff is not good. Comparing toilet paper or fabric softener to a baby’s skin is like comparing a hubcap to a flapjack.
- Alarm clocks should have a “newborn” setting. Forget beeps, never mind “ascending tones,” and the wake up to radio setting? Puh–lease. If you want an effective alarm clock, get one with a newborn’s cry. Heck, not even a real out-loud cry; just one of those tiny baby whimper. They wake you up so fast it’s astounding. Sure, your head may spin and you might feel like a zombie (and a tired zombie at that) but you will be awake.
The Boppy is one of the greatest inventions ever. I never thought I’d be excited about a pillow, but I am.
- Mattresses are nice, but they are an unnecessary convenience for sleeping. This is a corollary to #4; being woken often makes you tired; being tired allows you to sleep… anywhere, anytime. Besides in a regular bed at night, I can now fall asleep within two minutes flat on the couch or when putting my head down on the kitchen table. Even managed to get a few REM cycles while standing in line at the pharmacy a couple days ago.
There are the first six facts of fatherhood I’ve learned during the first six days of my daughter’s life. I welcome your insights, too: please add them to the comments.
-->
My daughter turned five days old this afternoon. Five days that seem like a year; and I mean that in the best way possible. A year is a long time… think of what goes on in your life in a year. Now, compress that into five days and you’ll have an idea of what it’s been like since our daughter was born. In that time I’ve come to realize a few things about fatherhood I’d like to share.
23
Feb
How to keep them straight — Two mnemonics can help you remember what meaning goes with which spelling:
- Discreet: if someone found out about what you trying to keep secret, you’d squeal: “eek!” Those two es in eek mirror the two es found in discreet, which is the proper spelling for this meaning.
- Discrete: the t in discrete keeps the two es separate, and separate is the meaning of this spelling.

Improper use of “discrete” highlighted. Improper use of “advertisement” above it not highlighted.
Misuse of discrete and discreet—and their adverbial cousins, discretely and discreetly—is common, and a quick Google search for “discretely” revealed this site’s mistake. The author of the page (on how to surreptisiously use MySpace for business promotion) writes “discretely” when he should have written “discreetly.” (This example probably appeared high in my search because the word “discretely” appears in the URL, page title, H1 tag and within the body of the article.) No disrespect to the author for the error, as these two words are easily confused.

It even tripped up the folks at the popular site eHow.com.
-->
Tiger Woods wishes his adultery had been kept more discrete. Or is it discreet? He’s probably too busy apologizing to care about the difference between these particularly tricky homophones, but the rest of us should care. Learn which spelling goes with which meaning, and a couple mnemonics to keep them straight.
19
Feb
As a standards-focused web developer, I spend much of my development time (at least, the client-side portion of it) writing CSS. If you’re not familiar with Cascading Style Sheets, you can learn more about it on Wikipedia or the beautiful CSS Zen Garden. I also invest time in learning about new design and coding techniques, which is how I learned about LESS, the so-called “Leaner CSS.” Though I’ve not used it (yet) I have read the LESS website and documentation and understand what it does.
LESS aims to correct what its authors deem as failings in CSS’ static nature. LESS touts a number of benefits, three of which I’ll briefly describe below (but all can be found at the LESS site):
- Variables — Using the @ symbol, developers can define CSS variables in much the same way programmers do. So, to define a consistent color, you could write: @siteColor: #20AC01 at the head of the LESS file and then reference @siteColor wherever you wanted that color. Useful, though technically not a true variable as it cannot be assigned a new value through programmatic interactions; it’s really just a defined constant.
- Mixins — “Mix-Ins” allow developers to define a set of style rules as you would for a class or an ID, then use that set of rules within other selectors. For example, say you had a number or boxes, sidebars, etc. within your site that you wanted to all share a common rounded-corner appearance. You could first define a class called .rounded with the desired rules (–webkit-border-radius and –mozilla-border-radius). Then other classes, like .sidebar, .infobox, etc. could include within their rules the .rounded style to inherit its rules. In essence, it’s another defined constant, this time for a whole set of rules, not just one value.
What’s even cooler is the ability to pass a parameter to the included Mixin as you would with a function. In my example above, that means you could change the radius of the .infobox class by passing in “5px,” while for .sidebar you might chose only “2px.”
- Nested rules — No more redundant selector strings in which you define different styles for anchor (along with their :hover, :visited, and :active states), heading, or input tags. Nested rules allow you to embed whole style declarations for other selectors within another selector’s declaration. So, any styles declared for selector a defined within .sidebar’s declaration will only apply to anchors within a sidebar.
- Operations — Developers can now run simple calculations (add, subtract, multiply and divide) within their CSS code. Though specifying a border width or radius as twice another value (perhaps a LESS “variable” defined at the head of the document?) is cool, I think color operations are more useful. If you want your footer darker than your sidebar, you can specify background-color: @sidebarColor * 2. Not only does it save a trip to another program or site to determine a good color, it allows you to set up your site’s aesthetics using proportions and relations and have them all change when another value is changed.
These and other features of LESS really are cool and would be beloved aspects of CSS were they supported by the actual CSS specification. Sadly, they’re not. LESS makes writing code easier, but it cannot be used by browsers; it must be compiled into true CSS first. And that’s why I posed the question “is LESS a practical alternative to CSS,” not whether LESS is better than CSS; I think the answer to that is: yes, it is better. But am I willing to go through the additional step of compiling my LESS files into CSS as I develop? The answer for me is: no, probably not.
In a word, the reason is friction. Mental friction. Switching to LESS first requires that the a compiler be installed. Sure, that’s just a one-line command run in the terminal on a Mac and probably not a ton of effort more on a Linux server system. And LESS can be set up to “watch” a directory so any changes made to a .less file will prompt an auto-compile (and there are also LESS applications for Macs and .NET developers to do the same thing with a nice interface). Trouble is, I develop web sites on no fewer than five different web servers, only one or two of which my access level would allow me to install a compiler. I don’t want to code with LESS features on some projects but not others because of the cognitive gear-switching that would require.
Another reason the efforts outweigh the benefits for me might be the size of the sites I typically work on. If I were tasked with building a large enterprise site or set of web applications (or be part of a team doing so), the higher efficiency LESS code would be more attractive when managing the project’s styles. Most projects I work on have just a few stylesheets so old-fashioned copy-and-paste and search-and-replace work decently.
Granted, the benefits of LESS are nice. But none of them are so indispensable that I cannot develop without them, so for now my workflow will remain LESS-less, at least for now.
-->
As a standards-focused web developer, I spend much of my client-side development time writing CSS. LESS, the so-called “Leaner CSS,” offers a few tricks to enhance CSS code with features like variables, nested rules, and even simple operations (add, subtract, etc.). Sounds great, and it is. But do these and other features outweigh the additional work required to compile LESS files into CSS?
Who’s saying what