Recently at work, I was faced with the problem of fixing a slow-rendering page. The page is part of an internal content management system, where the content includes video, images, and text. We have over a thousand pieces of content being managed with this tool and the slow page was a listing of all the content along with key overview-type information for each content package.
Everyone was fine with this page loading slowly, since we knew that there was a lot of content. The problem arose when the page would only show around 50 items and then stop loading; the server configuration was set to automatically stop requests that took too long to process.
I knew that the best course of action would be to start measuring. I took a look at the logs to see how long the request was taking and the approximate tasks where time was being spent. At JibJab, we take pride in caching the hell out of everything. Only a tiny fraction of time was spent hitting memcached. And it looked as though memcached was doing its job: almost no time was spent hitting the database. But a ridiculous percentage of the time was spent "rendering" the page.
That meant the onus was on my code to speed things up. Since the slowdown had become more and more apparent as we added more content, my guess was that the loop was the main source of the problem. Anything that would be only a tiny bit slow on its own would lead to a delay over a thousand times greater.
The first thing I removed was a call to cycle(), which I was using to zebra-stripe the table display for easier reading. In its place, I put in an index variable that would be modulo-two to determine its index into an array of two choices (even row or odd row). To keep the same feature, I had to dirty up my code if I wanted it to run more quickly. And indeed that shaved off about one-fourth of the rendering time.
But the page was still taking over ten seconds to render, so I continued my hunt. A pattern I saw many times within each iteration of the loop was an old friend, link_to. I am not terribly attached to this particular friend, however, so I got rid of it and replaced it with some good old <a> tags, which bought me a good second or two.
So far, I felt pretty good about what I had been able to do to extract render-time savings. But there was still room to shave the time down, and luckily for me, Inflector.humanize was being called in each iteration like there was no tomorrow. I decided that there indeed would be no tomorrow for these expensive-looking helpers, and after removing all five calls inside the loop, I got total render time down to a very respectable two-second neighborhood.
The lesson learned? Sometimes code has to be a little messier so it can be fast enough to be used. Specifically, watch out for those beautiful-seeming Rails helper functions; they do a lot of work for you, but sometimes you're just better off doing the work yourself.
25 Haziran 2012 Pazartesi
Ruby on Rails: optimizing a slow-rendering page
Look where you're baby stepping
I mean, sure, there's cooking oil, salt, and pepper. But for a little more exotic Chinese cooking, I'll need some sesame oil or star anise. Beyond the basics that I'm certain I'm going to actually use, it's impossible to predict what other odds and ends I will personally end up using. And soliciting advice from others in the past hasn't been good for me: what works for other people often does not work for me.
For me, the only way I have been able to know — with certainty — what I'll need is to actually start trying to do things. If I'm trying to figure out which ingredients I'll need to cook a meal, I just start trying to cook. If anything is missing, its absence becomes readily apparent.
These are kind of like kitchen use cases, if we're going to resort to software development parlance. It's like I'm going agile, or adopting Test Driven Development with my cooking processes. I could theoretically start out with nothing at all — to illustrate the method theoretically, I actually should start from nothing. I would soon find that I need a cutting board, a knife, and whatever ingredients my recipe calls for. For a basic meal I would also find that cooking oil, salt, and pepper come in handy.
After cooking a basic meal, I know with confidence that I have everything I need to cook — wait for it — a basic meal. That common use case is taken care of and I can cook basic meals in the future with confidence. Now, what if I were to go ethnic? I'd soon run into some cases where I'd need to stop and get some more ingredients.
The idea is that, after a while, I would eventually be able to confidently prepare a broad range of meals. This confidence is rooted in the knowledge that I have verified that I have everything needed — by actually having done it in the past.
Of course, it's possible to carry out this kind of method to absurd extremes. If you know for sure you're going to need it, then make a note and take care of it. Be reasonable in what decisions you leave for later and which ones you can make now. In the cooking example, it's great for didactic purposes to start from scratch, but in practice it's dumb not to have the basics like cooking oil or a cutting board.
What about when developing software? You can leave scalability concerns for later if you're just starting to write a web application, but no matter what, you are going to need a machine and a relational database. (If you're writing something, like an offload server, because it needs to be scalable, then you damn well better take scalability into account.) To maintain your sanity, it might even help to sketch out a data model. Take baby steps, but know where each step will end. Don't be content with merely knowing that your foot will be in the air and then end up somewhere on the ground at some point. After all, this nebulous "goal" can just as easily be achieved by tripping and falling.
Small business owners: don't be a jerk
My girlfriend Sophia is an assistant manager at Abercrombie and Fitch, and is thus bombarded with more than her fair share of rude customers. One story she told me this week was about a woman who went ballistic after asking to try on one of the mannequins' jackets and being told no.
Now, people are just crazy, and Sophia has told me many stories like this before. What was so different this time?
Well, the crazy lady played the business owner card: if it were her store, she would have gladly taken the jackets off the display mannequins. This know-it-all "business owner" then proceeded to hound Sophia for her full name and pressed her for her employee ID so she could file a formal complaint, and refused to go through the normal channels.
It is precisely this self-serving arrogance and provincial, narrow-minded ignorance that keeps small business owners from being taken seriously. As a former small business owner myself, I know that the burden is heavy: you've got to worry about employees, customers and growing your business. On top of that, you have the responsibility to make sure any legal paperwork is in order and that taxes are taken care of. But just because you're able to handle this does not mean that you know all there is to know, and that your way of doing things is the only way.
In response to this growing sense of self-importance, here are three things to keep in mind. (I use these reminders to keep myself in check, too.)
a) Rules and processes have a place, even if you choose to forgo them. As a small business owner, you can get by with fewer rules and processes in place. In fact, in most cases you do much better when you're flexible. But larger businesses have a much harder time being flexible; it's not impossible, just much harder. They have to manage everything more strictly in order to hold together the larger whole. A little sloppiness in your store can be passed off as "charming." In a national chain where customers expect extreme tidiness and consistency, that sloppiness is not charm. It is chaotic, and it is poor business.
b) Not everyone enjoys the same latitude to call the shots as you do. You may be your own boss, but most people have someone else to answer to. I've found that being a business owner, seeing the bigger picture, and having the power to remedy things has turbocharged my ability to take the initiative, even after going back to working for someone else. Still, despite having passion for my line of work and understanding its larger implications, I have much less scope to make important decisions. In large companies, even CEOs don't wield absolute power, because they have a board of directors and shareholders to please.
c) You are not special, so don't expect special treatment. A couple of years ago, I received a parking ticket by mistake. I knew that I had moved my car in time, and so I decided that I would write in to contest it. One of my co-owners suggested that I take a tough stance and mention that I was a business owner — as if that had anything to do with my guilt or innocence. I mentioned it anyway, thinking that a little reminder about my contribution to the community wouldn't hurt. Still, I didn't want to rely on that mostly irrelevant fact, so I put much more effort into stating the facts of the case. I drew a diagram of where I had parked, when I had moved my car, when I had been ticketed, and why it was a mistake. In the end I got the ticket waived, but I have a good hunch it had more to do with stating the facts than mentioning that I was a "business owner."
My automobile's cooling system and its plastic parts
I've learned a lot about my car's cooling system over the past couple of weeks. There's nothing like the prospect of a melted engine to focus the mind. Typically, I would be content to leave it to the mechanic, but the cooling system has many moving parts, and I'm the one who sees firsthand all the symptoms when driving it in various situations.
At the very least, anyone in my position would have to take careful note of which circumstances triggered certain events. Such diagnostic tips can help the mechanic narrow things down so that he won't charge you as much for diagnosing the problem. Ideally, we'd also prefer that he fix everything that's wrong with a component as vital as the cooling system.
I've had to watch the reading on the temperature sensor, for one. The key is to never let the needle hit the red zone at the top of the temperature gauge. If it does, your engine's head gasket and other crucial parts are in critical danger of melting, distorting, or breaking. The repairs for those problems are much more expensive than those to the cooling system.
When I went to the mechanic this morning, I took in various observations that would help him narrow down the problem and know where to look. I noticed that the fans were going full speed because of the higher running temperature, so I told him that the fans were extremely loud after a short drive. From various sources online, I made sure to observe any difference between city driving and high speed freeway driving, but there was none, so this meant there was one less option to consider.
With the cooling system in my car, things have been failing left and right in a sort of chain reaction as the increased running temperature of the car's engine puts a lot of parts under extra stress. Whatever parts failed and needed replacing were just worn out and should have been replaced long ago. Rubber rings had become as hard as plastic. One plastic pipe had become so brittle from age that it broke off; I had to re-fasten the hose clamp just to keep the engine running cool enough to drive to the mechanic. Metal parts such as the thermostat housing and the water pump showed signs of corrosion; in the case of the thermostat, it wouldn't open to let coolant flow as it should.
The mechanic told me some interesting tidbits while we were ruminating aloud on the absurdity of car makers — including Daimler and BMW — using so many plastic parts all over the cooling system. According to him, the move towards plastic parts is justified by lower cost of materials and making the car lighter so the engine doesn't have to pull as much weight. One thing he observed was the increasing failure rate of newer cars — and he said it wasn't unusual for people with new cars still under warranty to come to his shop with worn out plastic parts.
Suffice it to say, that made me very hesitant about paying a premium for a newer model Mercedes-Benz or a BMW. If I end up buying a new car soon, it may well be a Hyundai, a Honda, or a Toyota. If everyone's using plastic parts, I may as well pay less.
In any case, I'm surprised that my old car has lasted this long, considering the long distances I drive on a regular basis. It's a 1996 Mercedes-Benz C220. I've been very fortunate to have the car running within its prescribed temperature limits, despite all the hand-wringing and pulling over to the side of the road, fraught with worry.
Women's Fitness

Fitness Clothing worn during physical activity should be as important as practice sessions. Therefore, you should be able to choose the right workout clothes. Clothes do not fit you properly can make a difference in your workout performance. Every time you start to lose weight during exercise, then you should look for new clothes for exercise.

You may want to feel good and look good but are comfortable more or equally important. There are many choices and varieties in clothing provided by the fashion industry. There are also many brand fashion and design industries to choose from. When choosing the type of workout clothes to buy, consider the following.

Comfortable workout clothes to avoid tight clothing. The material must be of good quality, flexible and gives you room to move and breathe freely. The material must be permeable to air, especially if you are involved in high-impact training that makes you sweat allot. Choose clothing that is specifically meant for exercise activities that you participate in.
24 Haziran 2012 Pazar
Getting more out of a sentence
There's a very simple, effective, and systematic way to amp up the amount of insight you get from the things that you read.
It's probably best to explain with an example. The following is from Ed Catmull's article for the Harvard Business Review, "How Pixar Fosters Collective Creativity."
We must constantly challenge all of our assumptions and search for the flaws that could destroy our culture.
How much thought can this spark in your mind?
If we just read this sentence several times, each time with an emphasis on only one word, we get a new angle on the general idea being conveyed. Something different is emphasized.
We must constantly challenge all of our assumptions and search for the flaws that could destroy our culture.
The emphasis is on the we. This tells me that whatever this sentence is talking about involves a team effort. Everyone on the team must be involved. It's a "we" rather than a "me." But does that necessarily have to be the case? It starts with somebody, right? Why not with individuals?
It's okay — a good sign, even — to ask questions about the truth or applicability of a passage. If you're a reader with a healthy sense of skepticism, those kinds of questions immediately arise. A lot of the same questions will come up: is it necessarily so? Is it true all the time? The more you ask these kinds of questions, the more you hash things out and figure them out for yourself.
Let's look at another word.
We must constantly challenge all of our assumptions and search for the flaws that could destroy our culture.
This time, the emphasis is on the word "search." This tells me that the flaws are often hidden; otherwise, they wouldn't require searching. Now, I'm an imaginative guy, so then I imagine myself searching frantically and then getting tired or discouraged. When I'm tired or discouraged, I ask questions. Why am I searching, anyway? What exactly am I searching for, again? How do I really know when I've found it?
That's only two words, and I could go on for a while, but I think the general method has been made clear. The biggest plus going for this method is that it is systematic; I can just emphasize each word until I'm plumb out of new thoughts. When I'm done with all the words in the sentence, I know I'm done.
Personally, I've found that this process also helps me internalize ideas. Even if I don't remember the exact wording of a sentence, the dance of thoughts anchored around a single idea tends to leave a lasting impression. I imagine this is because the thoughts that come to mind immediately tend to be those of the most concern to me. When it comes to things that truly concern me, I have an easy time remembering.
Look where you're baby stepping
When you're starting out from scratch, it's hard to predict what you're going to need. I just moved into a new apartment, and my kitchen cupboards are empty because I've decided that I'm not going to even try to predict what I might need in the future. The way I intend to re-acquire the supplies I'll need is by doing stuff.
I mean, sure, there's cooking oil, salt, and pepper. But for a little more exotic Chinese cooking, I'll need some sesame oil or star anise. Beyond the basics that I'm certain I'm going to actually use, it's impossible to predict what other odds and ends I will personally end up using. And soliciting advice from others in the past hasn't been good for me: what works for other people often does not work for me.
For me, the only way I have been able to know — with certainty — what I'll need is to actually start trying to do things. If I'm trying to figure out which ingredients I'll need to cook a meal, I just start trying to cook. If anything is missing, its absence becomes readily apparent.
These are kind of like kitchen use cases, if we're going to resort to software development parlance. It's like I'm going agile, or adopting Test Driven Development with my cooking processes. I could theoretically start out with nothing at all — to illustrate the method theoretically, I actually should start from nothing. I would soon find that I need a cutting board, a knife, and whatever ingredients my recipe calls for. For a basic meal I would also find that cooking oil, salt, and pepper come in handy.
After cooking a basic meal, I know with confidence that I have everything I need to cook — wait for it — a basic meal. That common use case is taken care of and I can cook basic meals in the future with confidence. Now, what if I were to go ethnic? I'd soon run into some cases where I'd need to stop and get some more ingredients.
The idea is that, after a while, I would eventually be able to confidently prepare a broad range of meals. This confidence is rooted in the knowledge that I have verified that I have everything needed — by actually having done it in the past.
Of course, it's possible to carry out this kind of method to absurd extremes. If you know for sure you're going to need it, then make a note and take care of it. Be reasonable in what decisions you leave for later and which ones you can make now. In the cooking example, it's great for didactic purposes to start from scratch, but in practice it's dumb not to have the basics like cooking oil or a cutting board.
What about when developing software? You can leave scalability concerns for later if you're just starting to write a web application, but no matter what, you are going to need a machine and a relational database. (If you're writing something, like an offload server, because it needs to be scalable, then you damn well better take scalability into account.) To maintain your sanity, it might even help to sketch out a data model. Take baby steps, but know where each step will end. Don't be content with merely knowing that your foot will be in the air and then end up somewhere on the ground at some point. After all, this nebulous "goal" can just as easily be achieved by tripping and falling.
Small business owners: don't be a jerk
My girlfriend Sophia is an assistant manager at Abercrombie and Fitch, and is thus bombarded with more than her fair share of rude customers. One story she told me this week was about a woman who went ballistic after asking to try on one of the mannequins' jackets and being told no.
Now, people are just crazy, and Sophia has told me many stories like this before. What was so different this time?
Well, the crazy lady played the business owner card: if it were her store, she would have gladly taken the jackets off the display mannequins. This know-it-all "business owner" then proceeded to hound Sophia for her full name and pressed her for her employee ID so she could file a formal complaint, and refused to go through the normal channels.
It is precisely this self-serving arrogance and provincial, narrow-minded ignorance that keeps small business owners from being taken seriously. As a former small business owner myself, I know that the burden is heavy: you've got to worry about employees, customers and growing your business. On top of that, you have the responsibility to make sure any legal paperwork is in order and that taxes are taken care of. But just because you're able to handle this does not mean that you know all there is to know, and that your way of doing things is the only way.
In response to this growing sense of self-importance, here are three things to keep in mind. (I use these reminders to keep myself in check, too.)
a) Rules and processes have a place, even if you choose to forgo them. As a small business owner, you can get by with fewer rules and processes in place. In fact, in most cases you do much better when you're flexible. But larger businesses have a much harder time being flexible; it's not impossible, just much harder. They have to manage everything more strictly in order to hold together the larger whole. A little sloppiness in your store can be passed off as "charming." In a national chain where customers expect extreme tidiness and consistency, that sloppiness is not charm. It is chaotic, and it is poor business.
b) Not everyone enjoys the same latitude to call the shots as you do. You may be your own boss, but most people have someone else to answer to. I've found that being a business owner, seeing the bigger picture, and having the power to remedy things has turbocharged my ability to take the initiative, even after going back to working for someone else. Still, despite having passion for my line of work and understanding its larger implications, I have much less scope to make important decisions. In large companies, even CEOs don't wield absolute power, because they have a board of directors and shareholders to please.
c) You are not special, so don't expect special treatment. A couple of years ago, I received a parking ticket by mistake. I knew that I had moved my car in time, and so I decided that I would write in to contest it. One of my co-owners suggested that I take a tough stance and mention that I was a business owner — as if that had anything to do with my guilt or innocence. I mentioned it anyway, thinking that a little reminder about my contribution to the community wouldn't hurt. Still, I didn't want to rely on that mostly irrelevant fact, so I put much more effort into stating the facts of the case. I drew a diagram of where I had parked, when I had moved my car, when I had been ticketed, and why it was a mistake. In the end I got the ticket waived, but I have a good hunch it had more to do with stating the facts than mentioning that I was a "business owner."
My automobile's cooling system and its plastic parts
I've learned a lot about my car's cooling system over the past couple of weeks. There's nothing like the prospect of a melted engine to focus the mind. Typically, I would be content to leave it to the mechanic, but the cooling system has many moving parts, and I'm the one who sees firsthand all the symptoms when driving it in various situations.
At the very least, anyone in my position would have to take careful note of which circumstances triggered certain events. Such diagnostic tips can help the mechanic narrow things down so that he won't charge you as much for diagnosing the problem. Ideally, we'd also prefer that he fix everything that's wrong with a component as vital as the cooling system.
I've had to watch the reading on the temperature sensor, for one. The key is to never let the needle hit the red zone at the top of the temperature gauge. If it does, your engine's head gasket and other crucial parts are in critical danger of melting, distorting, or breaking. The repairs for those problems are much more expensive than those to the cooling system.
When I went to the mechanic this morning, I took in various observations that would help him narrow down the problem and know where to look. I noticed that the fans were going full speed because of the higher running temperature, so I told him that the fans were extremely loud after a short drive. From various sources online, I made sure to observe any difference between city driving and high speed freeway driving, but there was none, so this meant there was one less option to consider.
With the cooling system in my car, things have been failing left and right in a sort of chain reaction as the increased running temperature of the car's engine puts a lot of parts under extra stress. Whatever parts failed and needed replacing were just worn out and should have been replaced long ago. Rubber rings had become as hard as plastic. One plastic pipe had become so brittle from age that it broke off; I had to re-fasten the hose clamp just to keep the engine running cool enough to drive to the mechanic. Metal parts such as the thermostat housing and the water pump showed signs of corrosion; in the case of the thermostat, it wouldn't open to let coolant flow as it should.
The mechanic told me some interesting tidbits while we were ruminating aloud on the absurdity of car makers — including Daimler and BMW — using so many plastic parts all over the cooling system. According to him, the move towards plastic parts is justified by lower cost of materials and making the car lighter so the engine doesn't have to pull as much weight. One thing he observed was the increasing failure rate of newer cars — and he said it wasn't unusual for people with new cars still under warranty to come to his shop with worn out plastic parts.
Suffice it to say, that made me very hesitant about paying a premium for a newer model Mercedes-Benz or a BMW. If I end up buying a new car soon, it may well be a Hyundai, a Honda, or a Toyota. If everyone's using plastic parts, I may as well pay less.
In any case, I'm surprised that my old car has lasted this long, considering the long distances I drive on a regular basis. It's a 1996 Mercedes-Benz C220. I've been very fortunate to have the car running within its prescribed temperature limits, despite all the hand-wringing and pulling over to the side of the road, fraught with worry.
Women's Fitness

Fitness Clothing worn during physical activity should be as important as practice sessions. Therefore, you should be able to choose the right workout clothes. Clothes do not fit you properly can make a difference in your workout performance. Every time you start to lose weight during exercise, then you should look for new clothes for exercise.

You may want to feel good and look good but are comfortable more or equally important. There are many choices and varieties in clothing provided by the fashion industry. There are also many brand fashion and design industries to choose from. When choosing the type of workout clothes to buy, consider the following.

Comfortable workout clothes to avoid tight clothing. The material must be of good quality, flexible and gives you room to move and breathe freely. The material must be permeable to air, especially if you are involved in high-impact training that makes you sweat allot. Choose clothing that is specifically meant for exercise activities that you participate in.
23 Haziran 2012 Cumartesi
Conceptual tools for allocating finite resources
I have lived and worked in Greater Los Angeles for over a year now. Since the area is one of the world's major population centers, it only makes sense that I'd come across plenty of opportunities to observe the interplay between two forces: lots of people and limited resources.
It's a common problem, but always a multifaceted one. Coming up with a solution means that planners (who could be church volunteers, business managers, or software engineers) must consider various factors. Having to stop and think about this can slow down decision making, and even when there's time to ponder and plan, thinking of a solution from scratch is more error-prone than referring to a proven set of guidelines and rules.
Pricing
Consider the situation when lots of people are elbowing each other to buy concert tickets. There's no increasing the supply of these tickets since a concert hall or stadium can only hold a set amount of people without the Los Angeles Fire Department throwing a hissy fit.
Many eager economics students and libertarians automatically want to apply the law of supply and demand here: why not just raise the prices? In fact, that's what some organizations have done: Britney Spears concert tickets for Staples Center start at $150.00. (How do I know this? My girlfriend told me. Really.)
As the purveyor of tickets, you can do that when you have some idea of how much demand there will be. But what if demand shoots up while your supply stays the same? When it looks like you're about to sell all your inventory and are hours away from turning away your customers and disappointing them, you could double your prices. But then, your customers would be angry that you're gouging them. Your company would appear disreputable for "arbitrarily" changing prices on consumers.
If you're looking at it from an economist's point of view, there's no problem there: you're just changing the price to meet demand. But from a public relations vantage point, you run a very real risk of alienating your customers. It'll look like you're exploiting them, when all you're doing is ensuring availability (while making a few extra bucks).
On top of that potential PR nightmare, there's a downside that even economists must acknowledge. It's the phenomenon that economists call "sacrificing equity for the sake of efficiency." That's all fine and high-sounding, but what does that mean? It means, "It's not fair." And the customer will feel this way. Your costs haven't changed: it still costs you the same to make it, doesn't it? This gives your customers a reason not to trust you, and therefore not to come back.
Changing your prices is certainly an effective tool to curb or increase demand, but raising them is an extremely delicate matter in the age of consumers who expect posted prices to stay the same.
Waiting list: first come, first served
A common alternative to raising prices is to let people buy stuff on a first come, first served basis. The folks at Ticketmaster do this, in case the $150.00 concert tickets sell out (which they often do).
As you may recall from your economics class, this is considered more equitable, but not as efficient: the people selling tickets could make a lot more money just by raising the prices. (If you do not recall from your economics class, shame on you for not paying attention. But hey, now you know. Trust me on this one.)
As far as fairness is concerned, lower prices with waiting lists are an improvement over simply raising the price. But if you're not one of the first served, you probably won't feel like it was very fair. Maybe you had to be at work that time of day, or don't have time to wait in line.
Lottery
A different spin on fairness is to let people enter a lottery to let them buy what they want at lower prices. If you were to enter such a lottery and your number got drawn, you could then buy what you're after. Typically, submissions to this lottery are accepted during a specified time window. So if you have to be at work when the lottery first opens, that's not a problem. You have just as good of a chance as the first person who entered that lottery.
This was part of Saddleback Church's approach when they hosted the Saddleback Civil Forum with Barack Obama and John McCain during the presidential campaign. Since Saddleback Church is very high-profile, it was important that a purely pricing-based model was avoided. Taking an exclusively pricing-based allocation of tickets to see the candidates would have looked too much like favoritism towards the rich, a Biblical no-no.
Then again, Saddleback Church also had to cover its costs, so it actually opted for a brilliant hybrid approach that consisted of various tiers, each with a different price. It was a multi-tiered lottery. Higher-priced tiers would likely yield a smaller pool and a higher chance of being selected. You can't please everybody, but such a creative and enlightened approach likely pleased quite a few free market die-hards while at the same time placating those who were concerned about equality. If only governments and businesses were as wise.
Small business owners: don't be a jerk
My girlfriend Sophia is an assistant manager at Abercrombie and Fitch, and is thus bombarded with more than her fair share of rude customers. One story she told me this week was about a woman who went ballistic after asking to try on one of the mannequins' jackets and being told no.
Now, people are just crazy, and Sophia has told me many stories like this before. What was so different this time?
Well, the crazy lady played the business owner card: if it were her store, she would have gladly taken the jackets off the display mannequins. This know-it-all "business owner" then proceeded to hound Sophia for her full name and pressed her for her employee ID so she could file a formal complaint, and refused to go through the normal channels.
It is precisely this self-serving arrogance and provincial, narrow-minded ignorance that keeps small business owners from being taken seriously. As a former small business owner myself, I know that the burden is heavy: you've got to worry about employees, customers and growing your business. On top of that, you have the responsibility to make sure any legal paperwork is in order and that taxes are taken care of. But just because you're able to handle this does not mean that you know all there is to know, and that your way of doing things is the only way.
In response to this growing sense of self-importance, here are three things to keep in mind. (I use these reminders to keep myself in check, too.)
a) Rules and processes have a place, even if you choose to forgo them. As a small business owner, you can get by with fewer rules and processes in place. In fact, in most cases you do much better when you're flexible. But larger businesses have a much harder time being flexible; it's not impossible, just much harder. They have to manage everything more strictly in order to hold together the larger whole. A little sloppiness in your store can be passed off as "charming." In a national chain where customers expect extreme tidiness and consistency, that sloppiness is not charm. It is chaotic, and it is poor business.
b) Not everyone enjoys the same latitude to call the shots as you do. You may be your own boss, but most people have someone else to answer to. I've found that being a business owner, seeing the bigger picture, and having the power to remedy things has turbocharged my ability to take the initiative, even after going back to working for someone else. Still, despite having passion for my line of work and understanding its larger implications, I have much less scope to make important decisions. In large companies, even CEOs don't wield absolute power, because they have a board of directors and shareholders to please.
c) You are not special, so don't expect special treatment. A couple of years ago, I received a parking ticket by mistake. I knew that I had moved my car in time, and so I decided that I would write in to contest it. One of my co-owners suggested that I take a tough stance and mention that I was a business owner — as if that had anything to do with my guilt or innocence. I mentioned it anyway, thinking that a little reminder about my contribution to the community wouldn't hurt. Still, I didn't want to rely on that mostly irrelevant fact, so I put much more effort into stating the facts of the case. I drew a diagram of where I had parked, when I had moved my car, when I had been ticketed, and why it was a mistake. In the end I got the ticket waived, but I have a good hunch it had more to do with stating the facts than mentioning that I was a "business owner."
The trouble with budget surpluses
The trouble with a government (or any big organization) running a budget surplus and sitting on a big pile of cash is that people start asking questions like, "Why don't we do something with that money, especially since there's so much to fix?" At that scale, having some cash ready for a rainy day is not an excuse that people are able to handle, especially when the quoted figure is in the billions of dollars. Surpluses may seem like a lot of money, although when divided on a per-person basis, they seldom amount to much at all.
In this deficit-infested time, it's easy to rail against profligacy in our budgets. I'm not trying to engage in what-ifs here. I'm suggesting a way we can avoid this same problem in the future.
We've been told that it's wise to save up for the future, to have some cash on hand just in case — folk wisdom that was reinforced by the big collapses this year. We also know that it's hard for most people to hear about a surplus in the billions of dollars without wanting to spend it on something.
If an even moderately sized government were wise and careful in its spending, it would quickly accumulate a large surplus. That large surplus would then get people dreaming about capital improvements, social services, and other goodies that drain the public purse.
Those who advocate for smaller governments would say that the problem could be solved by striking the problem at the root — shrinking the government and therefore its potential to accumulate large sums of money. But pools of large capital certainly have their advantages, and whether by conscious choice or mere political expediency a large government must stay large, it could do better to quote the figures based on the population of the governed; that is, on a per-person basis. This might make billion-dollar surpluses less distasteful to the vast majority of us, whose visceral reaction to large dollar amounts placed before us is to spend imprudently.
Blogger client as a Java Swing desktop application
After a little poking around at Google's API documentation, I am pleased to announce that I'm writing this post from a desktop application of my own making. It's a Java desktop application using Swing, so it will run on Windows, Mac OS X, Linux, and any other major desktop platform with a Java runtime.
So far, I can select from a list of blogs, write in post titles (to be friendly to those search engines), write post content, and submit new posts. It's really basic, but it's quite a milestone and a major motivator for me to at least have gotten this far.
Soon to come on the feature front, I'm aiming for loading old posts to update, deleting posts, and smoothing out the user experience. (Right now, the app looks and feels like the weekend side project that it is. It doesn't even scroll when the text is too long.)
On the code quality front before I release this thing out into the wild, I'd like to do some release engineering, automate the build process, and just separate the various concerns (like GUI drawing code, network connections, and application logic.)
In any case, it feels good to have my software development methodology validated: get a dirty prototype up and running, and count on the morale boost to spur further development. So far, it feels pretty good. The hardest part is done and the challenge from now on is just finding spare moments to work on refining this thing.
Update 02/20/2009: I've implemented updating existing posts, and I'm updating from the improved client right now. Of course, to get to that point, it had to load up old posts. A cleanup of the code base before proceeding is probably in order, because I'm kind of going nuts trying to figure out where everything is and where new things should go.
Update 02/22/2009: I've created the build system to use Ant and package the app into a neat little .jar file. I also fixed a minor usability bug to make the app more pleasant to post with and give you feedback when a post has been submitted. The refactoring into a better architecture will have to wait; my mind's capacity for refactoring is mostly taken up by a big refactoring proposal I'm putting together at work.
Update 12/16/2009: It's open to the public! Please see the Lumberjack release announcement. The code has been cleaned up, made more maintainable, and a few features have even been added to make the application more pleasant to use.
My automobile's cooling system and its plastic parts
I've learned a lot about my car's cooling system over the past couple of weeks. There's nothing like the prospect of a melted engine to focus the mind. Typically, I would be content to leave it to the mechanic, but the cooling system has many moving parts, and I'm the one who sees firsthand all the symptoms when driving it in various situations.
At the very least, anyone in my position would have to take careful note of which circumstances triggered certain events. Such diagnostic tips can help the mechanic narrow things down so that he won't charge you as much for diagnosing the problem. Ideally, we'd also prefer that he fix everything that's wrong with a component as vital as the cooling system.
I've had to watch the reading on the temperature sensor, for one. The key is to never let the needle hit the red zone at the top of the temperature gauge. If it does, your engine's head gasket and other crucial parts are in critical danger of melting, distorting, or breaking. The repairs for those problems are much more expensive than those to the cooling system.
When I went to the mechanic this morning, I took in various observations that would help him narrow down the problem and know where to look. I noticed that the fans were going full speed because of the higher running temperature, so I told him that the fans were extremely loud after a short drive. From various sources online, I made sure to observe any difference between city driving and high speed freeway driving, but there was none, so this meant there was one less option to consider.
With the cooling system in my car, things have been failing left and right in a sort of chain reaction as the increased running temperature of the car's engine puts a lot of parts under extra stress. Whatever parts failed and needed replacing were just worn out and should have been replaced long ago. Rubber rings had become as hard as plastic. One plastic pipe had become so brittle from age that it broke off; I had to re-fasten the hose clamp just to keep the engine running cool enough to drive to the mechanic. Metal parts such as the thermostat housing and the water pump showed signs of corrosion; in the case of the thermostat, it wouldn't open to let coolant flow as it should.
The mechanic told me some interesting tidbits while we were ruminating aloud on the absurdity of car makers — including Daimler and BMW — using so many plastic parts all over the cooling system. According to him, the move towards plastic parts is justified by lower cost of materials and making the car lighter so the engine doesn't have to pull as much weight. One thing he observed was the increasing failure rate of newer cars — and he said it wasn't unusual for people with new cars still under warranty to come to his shop with worn out plastic parts.
Suffice it to say, that made me very hesitant about paying a premium for a newer model Mercedes-Benz or a BMW. If I end up buying a new car soon, it may well be a Hyundai, a Honda, or a Toyota. If everyone's using plastic parts, I may as well pay less.
In any case, I'm surprised that my old car has lasted this long, considering the long distances I drive on a regular basis. It's a 1996 Mercedes-Benz C220. I've been very fortunate to have the car running within its prescribed temperature limits, despite all the hand-wringing and pulling over to the side of the road, fraught with worry.
21 Haziran 2012 Perşembe
The Purpose Of This Circuit Training Blog
The purpose of our circuit training blog post today is to remind you that January begins TOMORROW. As any health club owner in the United States will tell you, January is the "golden month" for fitness sales. Many gym owners earn more in the single month of January than they do all summer long.
If you don't have a solid gym marketing plan in place, then you're already late. Need some help? Then read our original and FREE article titled How To Sell Gym Memberships In January by clicking here.
As a gym owner, you can also hit a home run in January by helping your members write achievable and realistic New Year Resolutions. Here's a FREE and original series of articles on New Year fitness resolutions, and we strongly encourage you to print these and have them available in your gym for members to take:
New Year Fitness Resolution (Part 1)
New Year Fitness Resolution (Part 2)
New Year Fitness Resolution (Part 3)
New Year Fitness Resolution (Part 4)
New Year Fitness Resolution (Part 5)
January is also the time of year when your existing health club members are looking for some help with motivation.They're trying to live up to their New Year Resolution, and they're counting on YOU to help them do just that. Read Motivation To Lose Weight Fast for some ideas on how you can help gym members stay motivated. You may also want to read Weight Loss Motivation, Motivation To Lose Weight And Get Fit and Motivation To Lose Weight And Exercise.
Where else are you going to find such a treasure-trove of FREE marketing advice just for gym owners? Only at www.cuecd.com and on our blog, that's where! How can we afford to provide all this for free? This free health club marketing advice is possible only when you order some of our awesome circuit training timer CDs, which you will find in our store. So if you like the information you're getting from us, then please take a few moments to browse through our store. You'll be glad you did!
The Biggest Loser - Health Club Marketing Idea
As a gym owner, one of the best things you can do right now is to piggy-back on the success of THE BIGGEST LOSER show.
Click here to read our article titled Circuit Training Ideas On A Budget - Biggest Loser. In this article we teach you how to host a BIGGEST LOSER contest. It’s very inexpensive, highly motivational for your members, and guaranteed to bring you FREE publicity! Really, circuit training ideas just don’t get any better than this!
Oh, did we mention that we're providing this article for FREE? Click here to read it NOW.
.....and if you need a new and innovative "change stations" CD, don't forget that we offer dozens of options here.....as always, our "change stations" CDs are just $10 each!
Free Marketing Plan Examples For Small Businesses
If you haven't yet done so, you should take a minute to read the free marketing plan examples we've provided for all circuit training gym owners. One of the best to read right now is titled How To Sell Gym Memberships In February, and you can read it FREE by clicking here.
There are also many articles in our library that are suitable for just about any small business, not just for health clubs! Check it out today and start increasing sales immediately!
How To Sell More Gym Memberships In March
Click here to read our 100% original article titled "How To Sell Gym Memberships In March".
Oh, and in case you've missed it, we have big news! The www.cuecd.com team has joined Linkedin so you can join our professional network. Click here to view our Linkedin page. Once you're there, you can choose to follow us if you want. You'll get even more insider information for health club owners!
Free Publicity Ideas For Gym Owners
Well, today's a good time to get started. It's almost Easter, and that gives any small business owner an excuse to get some more free publicity! Here's how.....
Since you own a health club, and you're a local expert on diet and exercise, why not create a story for the media? Write a short article about something Easter-related, like how many calories are in Easter candy or how many calories you burn during a 30-minute Easter egg hunt. Keep it short, fun and informative. Then give that article to the local newspaper and ask them to run it in their publication.
Although you won't get paid for your submission, you will get an "author's box" at the end of the article that says who you are, what gym you own, and include your phone number. Some newspapers will also print a photo of you alongside the article. That article is now basically just a free advertisement for you! Hundreds, if not thousands, of people will read that article and instantly make the connection that you are a health and fitness expert. If you help them make that mental connection often enough, then when it's time for them to join a gym they're going to think of you first.
If you need a good example of how to write an article like this, click here to read an article we wrote titled Easter Weight Loss Tips. It's short and informative, making it exactly the kind of article that newspapers need on a daily basis!
Of course, you should also plan the two slam-dunk Easter ideas for any health club: the coloring contest and the Easter egg hunt.
Get an Easter coloring page, photocopy it, and pass it out to the children of your gym members. Submissions should be posted in the health club and the winner selected the last business day before Easter. You may want to consider having the members vote to determine the winners. Have small prizes for 1st, 2nd and 3rd place. The kids will have fun, the parents will appreciate it, and you'll have more loyal members.
You should also host an Easter egg hunt to take place the Saturday before Easter. If you make it open to just gym members, then they'll appreciate your efforts and be more loyal to your business (increased member retention). If you make it open to the public at large, then you'll get quite a few non-members into the building and you'll have the opportunity to give them a tour or at least a brochure.
If the coloring contest and/or the Easter egg hunt is open to the public, don't forget to release that information to the local media. After all, that's even more FREE publicity!
These are all just basic free publicity ideas for small business owners and for gym owners in particular. For a much larger list of FREE articles for health club owners, click here.
20 Haziran 2012 Çarşamba
Lessons from refactoring
I enjoy the process of refactoring software — especially software that was written by other people. It forces me to understand things inside and out (which is a tough point to arrive at when all you do on that code is the occasional drive-by bug fix). On top of that, since the desired functionality is known already, it's all redesigning of the data model and writing code. There are fewer product-level questions that come up. The specification is pretty much set.
For this particular project, though, I have the unique challenge of making the new design pass muster with multiple parties. People are picky and they always have something to say, so I took special care this time to anticipate any objections and address them so they'd get a better sense of my thought process. I've still had to make changes — and I make them gladly — but I've found that having to explain each decision I'm making generally serves to clarify my thought process.
It certainly helps to have some time to think hard about these changes, too. It's a healthy thing to let a data model sit for a bit and soak into the minds of all stakeholders while their input is incorporated. It also helps when people are interested enough to give detailed and insightful feedback. Sure, it generally doesn't hurt to have more sets of eyes looking at a plan, but having a team of people analyzing it harnesses collective historical memory — great for backward compatibility — and makes the plan more bulletproof by ensuring that it addresses concerns from many points of view.
My automobile's cooling system and its plastic parts
I've learned a lot about my car's cooling system over the past couple of weeks. There's nothing like the prospect of a melted engine to focus the mind. Typically, I would be content to leave it to the mechanic, but the cooling system has many moving parts, and I'm the one who sees firsthand all the symptoms when driving it in various situations.
At the very least, anyone in my position would have to take careful note of which circumstances triggered certain events. Such diagnostic tips can help the mechanic narrow things down so that he won't charge you as much for diagnosing the problem. Ideally, we'd also prefer that he fix everything that's wrong with a component as vital as the cooling system.
I've had to watch the reading on the temperature sensor, for one. The key is to never let the needle hit the red zone at the top of the temperature gauge. If it does, your engine's head gasket and other crucial parts are in critical danger of melting, distorting, or breaking. The repairs for those problems are much more expensive than those to the cooling system.
When I went to the mechanic this morning, I took in various observations that would help him narrow down the problem and know where to look. I noticed that the fans were going full speed because of the higher running temperature, so I told him that the fans were extremely loud after a short drive. From various sources online, I made sure to observe any difference between city driving and high speed freeway driving, but there was none, so this meant there was one less option to consider.
With the cooling system in my car, things have been failing left and right in a sort of chain reaction as the increased running temperature of the car's engine puts a lot of parts under extra stress. Whatever parts failed and needed replacing were just worn out and should have been replaced long ago. Rubber rings had become as hard as plastic. One plastic pipe had become so brittle from age that it broke off; I had to re-fasten the hose clamp just to keep the engine running cool enough to drive to the mechanic. Metal parts such as the thermostat housing and the water pump showed signs of corrosion; in the case of the thermostat, it wouldn't open to let coolant flow as it should.
The mechanic told me some interesting tidbits while we were ruminating aloud on the absurdity of car makers — including Daimler and BMW — using so many plastic parts all over the cooling system. According to him, the move towards plastic parts is justified by lower cost of materials and making the car lighter so the engine doesn't have to pull as much weight. One thing he observed was the increasing failure rate of newer cars — and he said it wasn't unusual for people with new cars still under warranty to come to his shop with worn out plastic parts.
Suffice it to say, that made me very hesitant about paying a premium for a newer model Mercedes-Benz or a BMW. If I end up buying a new car soon, it may well be a Hyundai, a Honda, or a Toyota. If everyone's using plastic parts, I may as well pay less.
In any case, I'm surprised that my old car has lasted this long, considering the long distances I drive on a regular basis. It's a 1996 Mercedes-Benz C220. I've been very fortunate to have the car running within its prescribed temperature limits, despite all the hand-wringing and pulling over to the side of the road, fraught with worry.
Vision and chaos
Among the key elements of my father's network of enterprises are the fixer-upper houses which he rents out. As soon as my brother and I were old enough to be of use on these construction sites, Dad would take us along.
I hated the messiness of the building process. The floor would typically be littered with drywall chunks. Shattered roof tiles sat in piles on the front yard, and sawdust was sprinkled over everything.
When it was all done, though, with everything cleaned up, I felt accomplished for having been a part of bringing about the final outcome. It was more than easy to forget the messy process that brought about the end result: forgetting was automatic. It actually took me conscious effort to remember what it took to get there.
While I was in the thick of it, it was discouraging to see the mess in front of me, because it just didn't seem possible that everything could be made right again. All I saw was a seemingly intractable mess. My father, on the other hand, never seemed fazed by it. His vision of the end result was not clouded by temporary worry because he was certain of what we were working toward. He saw things not as they were, but as they should be.
Over the years, I learned to embrace the temporary mess, provided there was a plan and a vision for building something beautiful from it. Still, this sort of unflinching confidence doesn't just come at the flip of a switch. It took many messes and subsequent turnarounds to deeply ingrain this kind of optimism in myself. Even now, I need a conscious and intentional self-reminder not to be overwhelmed when confronted with a seemingly insurmountable task.
The boy knows he is a man when he can see not only what is in front of him, but what he's going to make of it.
Enough with civility: confronting line cutters and queue jumpers
Last Saturday, Sophia and I went to Disneyland to celebrate my birthday and to spend some time together, since our work schedules haven't really overlapped favorably in recent weeks.
We were in line for the Matterhorn, and as decent, upstanding Disneyland patrons, we took our places at the back of the snaking line.
It was a long line, but it was what one would expect for a Saturday at Disneyland. It was moving at a good clip — faster than the 405 near Santa Monica during rush hour, anyway.
About halfway through, a suspicious looking Asian guy wearing sunglasses sidled up next to me from out of nowhere. For a good three seconds, he stood there without saying a word. I thought that he was expecting to be recognized, but upon closer inspection I could recall no previous association with him.
When he finally said something, he said, "Hey man, you mind if I get behind you? The line is really long and I don't want to wait in the back."
Flabbergasted at the audacity of the request, my verbal faculties sputtered, and the first thing to come up was, "No."
As I realized that I had actually issued an unintentionally affirmative and welcoming response, I stepped in to clarify. "I mean, yes, I do mind. And I mean that no, it is not fine with me if you get behind me."
He responded, "Oh, come on. Why not?"
"Because we began at the back of the line, like everyone else, and so should you," I said with an annoyed and furrowed brow. (At this point, it was only one brow. That's how annoyed I was: unibrow annoyed.) I gestured to the very back of the line. "You should start heading over there. You shouldn't be here."
He kept a straight face. "Oh, alright." And that was that.
Or so I thought. I turned around five minutes later, and he was just standing there — right behind me!
I looked at the people right behind him to see if they were upset in any way. It was a wholesome-looking white American family, and they didn't seem bothered by anything at all. It looked like they were having a good time.
I am certain that the scumbag probably chose to ask me because white people would be more likely to think we were together since we were Asian — which is a reasonable assumption to make. But the guy was alone, and I felt a little sorry for him; maybe someone close to him died. You never know what the story is with people, I figured, so I decided to forget about it.
But five minutes later, the scumbag's wench joined him. At this point, I was fuming, and was very close to causing a scene. Sophia told me to just forget about it since we were there to have a good time, and I knew that anger tends to make me act irrationally, so I just fumed for a while and hoped it would pass.
It has been a week, and it has not passed.
While writing this up, I found out that queue jumpers get away with it most of the time. In the future, please do everyone a favor and cause a scene, and I will do the same.
Now, I understand that it may be difficult to think quickly of what to do. If you need some ideas, here are a few things you can do to people who cut in line.
Wait until you get to the front of the line and then tell the people in charge. Make the cutters return to the back of the line all over again.
Loudly and clearly proclaim to everyone behind the cutters of what they have done. Populist outrage is a powerful force, and public humiliation is a long neglected tool. Put them together and you've got a great combination.
Take a picture of the cutters. If they cut in pretending to know you, why not play along? Say loudly, "Oh, hey, what does your new driver's license picture look like?" Remember their names, and then post their names, their pictures, and what they did, so that employers can find them when they perform background checks. (Make the page SEO friendly so these dirtbags are easier to find.)
Get physical. The line cutters don't belong there, so you're just righting a wrong and putting things back as they should be. A simple shove should do the trick, but be prepared for some pugilism should you go this route. This is particularly well-suited for those of you who don't resort to violence — because it's your first choice, not a last resort.
It's about time these scoundrels get what they deserve. If it helps, just bottle up whatever road rage you have, and instead dish it out to someone who actually deserves it. Disneyland may be the happiest place on earth, but happiness will remain incomplete as long as we remain complacent about people who blithely dismiss the ideals of justice and fairness.
Finely tuned collective effort
As someone who is rabidly individualistic, working with other people isn't something that's hard-wired into me. For this, I've been chided by friends and family members who hold collective effort up as a sacred cow. They cannot possibly fathom why anyone would question the merits of working together.
I remember reading (probably in the Harvard Business Review) that this teamwork mindset is prevalent especially among my generation, which grew up playing team sports and doing group projects in school. Contrast this with the modus operandi of previous generations of workers, who were much more individualistic: put your nose to the grindstone, pull your weight in the organization, and let your merits stand on their own.
In this sense, I am very much a traditionalist.
But I've been through some fiery projects in school and during my consulting days working with clients. Massive requirements and short deadlines have a way of focusing the mind and forcing the casting aside of closely held ideology. I've seen teams coming together to accomplish something that was more than the sum of the parts, and seeing that in action made me more open to the idea.
Still, I maintain what I consider a healthy skepticism towards a widespread and blind allegiance to the nebulous concept of collective effort.
I acknowledge that it produces tremendous benefits as many sets of eyes and differing perspectives hammer away to solve problems, and that work can be parceled out and done in parallel, resulting in undeniable time savings. Knowledge can be shared to increase the human capital of everyone involved; it makes everyone better off by increasing the raw capability of the team so that the team's maximum output doesn't merely hold constant.
But reaping these benefits does not come automatically.
Any time you pool resources to exert greater leverage, you also put yourself at risk of exercising power in the wrong direction or of misallocating those resources so that all you're left with is a colossal heap of waste. Capital intensive industries such as auto manufacturing earn billions in profit in good times, but when crisis strikes, the cost of all that unused capacity is crippling.
I don't want to come off sounding alarmist or overly pessimistic about teamwork gone wrong. Truth be told, it rarely ends in a blazing mess. Even the most dysfunctional team is just a misconfigured engine that nonetheless manages to sputter along, misfiring occasionally, but still operational. I'd guess that this is how most haphazardly assembled teams manage to get by.
If you choose to go it alone, it's like pedaling along on a bike: you can get in and out of places, but even the car with the misfiring engine can go faster than you can. Working alone feels much more elegant and affords the independent worker more agility. This is where the continued appeal of individual effort arises from. But for most undertakings worth their salt these days? A team effort is the smart choice, just like you need a car to really enjoy all that Southern California has to offer.
But again, let's be honest. Driving a car with a misfiring engine isn't very much fun. It's nerve-wracking, and the only people amused by it are the people who are laughing at you from a safe distance.
What can you do to pull off collective effort like a finely tuned engine?
Share knowledge. This makes you better equipped for the future.
Exploit different strengths and don't strive for homogeneity. This is where differing viewpoints and other sets of eyes can really come in handy.
Implement systems of coordination and common convention to maintain coherence. It's ridiculously easy for everyone to start doing things their own way.
Know the difference between parallel and serial tasks. As tasks in this knowledge-based economy become increasingly complex, it's not as easy as painting a room and asking everyone to take one wall.
Gather the right people for what you want to do. It does you no good to get an excellent tax accountant when what you need is a good plumber. No offense to tax accountants.
Question your assumptions: do you really need a team for what you're trying to do? Do you really need a large one, or would a small one suffice? And are you prepared to put in the hard work for everyone involved to get the maximum benefit out of the experience?
19 Haziran 2012 Salı
An old fashioned Father's Day at The Barnacle
Yesterday's Cars and Cigars at The Barnacle, broke the rain spell. It seemed as if every event held at The Barnacle was like having a rain dance, it would rain on the day of the event, but finally, the weather was perfect. It was sunny, not very hot and with low humidity.
Various classic cars filled the back lawn along with lots of other activities. Live music set the scene, there were hand-rolled cigars, hot dogs and hamburgers grilled right there and lots of candy and popcorn, too. A separate area, set up as a Biergarten was quite popular as the afternoon wore on. It was in a nice, cool, shady space, where you would just plop down with a cold one and not want to get up. Folks met new friends and hung out and enjoyed the old fashioned atmosphere.
This had to be one of my favorite scenes. Is there anything more relaxing than this? I could almost see the Monroe family out in the backyard with some cold lemonade and the newspaper. The vintage cars in the background sort of add to the scene too. Not too 1890s, more like the 1930s.
I was quite late getting to my own family's Father's Day BBQ. I didn't want to leave The Barnacle! There are lots more photos of yesterday's Father's Day Cars & Cigars (and Biergarten) event here.