Category Archives: Rants

Twitter is the Anti-Internet

And that’s why I don’t use Twitter. Though there might be one or two other reasons why…

1) failwhale

2) Too much noise, and not enough quality noise. Just a line or two of contextless text, devoid of media, and mostly things that don’t interest anyone by the author. At least Facebook has a richer media experience, and a way to shush people that get on your nerves.

3) It’s creepy. My girlfriend once had a habit of Tweeting every place she went to (before Foursquare replaced this, which is an equally creepy service). What ended up happening is a stalker started following her around and “accidentally” showing up in the same place as her all the time. Not cool.

4) Hashtags are a bad way to tag your content. Why should tags take up part of your character limit? This forces Twitter users to make short, one-word hashtags that don’t make sense, or omit hashtags. What Twitter should do is have a separate bank for hashtags, where tags are automagically added, manual tags can be added, a more user-friendly way of inserting and editing tags (instead of just text), and there are fewer limits to the number of tags. There can still be a tag limit, but it should be per tag, not per character.

5) The way URLs are used is sick and horribly wrong. On the Internet, do you ever see a raw link with no context tossed into the end of your content? Of course not. We have this thing called a hyperlink, and Twitter should be using them, instead of encouraging raw links. And as with hashtags, links should not count as part of the limit, as they have nothing to do with content, and users shouldn’t be forced to all their links.

6) URL shortening services don’t help anyone with their SEO, and they certainly don’t help Google. People and robots want to know where they’re going and where users came from. Forcing people to use these services hurts the Internet.

7) Very little profoundness and meaning can be construed in 140 characters. The Internet should be a place to freely exchange ideas without forced limitations. When you force tough technical limitations, you force people to truncate their communication. This just seems like it’s not in the spirit of… anything.

8) if u hav noticd the charactrlimit oftn forces slppy grammr. #AndThatReallyPissesMeOff

9) And continuing entries. #WhichDefeatsThePurposeOfTwitterButPeopleStillDoIt

10) #ThanksBitlyThatLinkSoundsPerverted

11) It has been hijacked by corporate marketing departments trying to fake the funk.

12) It is an evolutionary dead-end. What can they really do to Twitter to improve its problems, besides the solutions I’ve mentioned before? They tried Vine, but people aren’t really using it the same way as Twitter… it has become more of a comedy thing, because really, what else can you do in 6 seconds? You certainly can’t say anything important. Come to think of it, all Twitter is really successful at is being a low-brow comedy club. That and having petty fights.

13) The flow of information was not meant to be artificially “chunkated”. Have you ever seen the movie, “Fight Club” where the protagonist talks about how when you travel you live a single-serving life? Twitter wants you to have single-serving friends.

14) Due to having to remove words and otherwise change the meaning of your sentences to fit the limit, you end up saying things you wouldn’t normally have said. And because of that, people will misunderstand you. And because of that, you will offend, confuse, or bore.

15) It doesn’t do anything Facebook doesn’t already do, and Facebook does it better. Why use a whole other service for such a simple system?

16) Hashtag ambiguity. #nowthatchersdead (Now Thatcher is Dead? Now that Cher is Dead?). Granted domain names have the same problem, but this is the 21st century, we can do better.

17) Unnatural conversational threading. Most of the time, all you catch on someone’s Twitter is a partial conversation that, taken out of context, makes no sense at all. I’m tired of seeing tweets like “@somerandomguy I agree #yolo #swag”. And then I have to expand the conversation to see what the heck they’re talking about, which is usually equally uninteresting. No other website threads a conversation like this, because it makes no freaking sense.

18) Most people on Twitter are there because they need to be, not because they want to be. Celebrities, journalists, and businesses, and the people that follow these three. They’re on Twitter because it is what it is. And if celebrities and their followers use it, that’s a good enough reason for me not to.

19) Mourn-bots, and the shallowness of it all. Half the time everyone is in a mad rush to say things before everyone else does. We are all familiar with “RIP Stave Jobs” and “omg rip @stovejabs” repeated 100 million times whenever someone famous dies. I know I sound like a horrible person, but whatever. I don’t need the peanut gallery to tell me a celebrity died. I’ll find out.

20) Not really Twitter’s fault, but it gets overused in the media. Nothing irks me more than reading a serious story and then seeing what Flava Flav has to say about the Detroit Bankruptcy on his Twitter account.

21) According to journalists, it’s going to start some sort of social revolution in every country on Earth. That might be good or bad, but if it involves your average Twitter users, I’m guessing it’s going to be bad.

At any rate, it is pretty successful at inciting mobs.

This Ain’t Your Dad’s Job Market

Time and time again, you see bad information about how to get a job. Times have definitely changed now, and they continue to change. There are so many recruiters and employers out there doing so many different things that it’s hard to really have any sort of rules about how to and how not to get a job, but I’ll at least share what I’ve personally noticed. What follows is weeding out the facts vs. fiction of job hunting.

1) Cover letters are important.
False. They’re a waste of time. The only time you need a cover letter is if you’re sending an email directly to an employer. The email is your cover letter. So it’s important to know how to write a cover letter, but only as a brief intro to your resume.

2) Never go over one page on a resume.
False. I fell for this garbage suggestion for a decade before I realized how stupid it was, and how many jobs I was getting passed over on because of this. 1 page makes you look like a noob. You should shoot for 2-4 pages. If you’re an executive or trying to get a government job, at least 8 pages. Bottom line is, unless you’re just starting out, it should be impossible to have a one page resume. For each job you worked, you should be describing in some detail what you did at the job and how it impacted the company, not simply skills used and hats worn.

3) Pack your resume full of buzzwords so that the computer can find you.
True. This is extremely important. Practice good “Resume SEO”. However, just like real SEO, it can be overdone to detriment. Do not use buzzwords for things you don’t know how to do. Don’t list old-school technologies like ASP Classic, HTML4, Flash, COBOL, etc. unless you know what you’re doing. Avoid using corporate buzzwords like leverage, synergy, low-hanging fruit, incentivize, team player, etc.. Don’t hide buzzwords in small white letters at the bottom of the page. And certainly don’t pack your resume so full of buzzwords that it has a hard time saying anything coherent.

4) Always have an Objective in your resume.
False. Throw that crap away, nobody cares. Replace it with a summary instead. Keep it brief, and don’t tell your boring life story. Also, throw away your high school and college stuff. Nobody cares what your GPA is, and they certainly don’t care about high school. Finally, check for typos. A typo on your resume will get a first-class ticket to the trash can.

5) Employers are bored with template resumes. Go crazy with the resume layout.
False. This is a huge gamble, and should only be done if you’re a designer. The problem with fancy resumes is the computers don’t know how to read them, and colors may not turn out on the office printer. You also will have a hard time fitting important information if you’re trying to make shapes with the paragraphs, etc. Also, don’t put any pictures of yourself or your work in your resume. That can go in your portfolio. Lastly, don’t use “resume paper”. It’s just silly.

6) Education is everything.
False. Portfolio and work experience are everything. If you have neither, you’re going to have a hell of a time getting a job — but you will eventually. Keep with it, and eventually an employer will take a risk on you. Make them glad they did. Education is unnecessary if your job is in demand.

7) LinkedIn and GitHub are the new resume.
True, pretty much, although GitHub is more of a portfolio technically. But LinkedIn is definitely the new and improved resume system.

8) Certifications are everything.
False. They help, but they’re usually not necessary to most jobs. If you’re shooting for a job that’s $100k+ though, it’s definitely a good idea.

9) Constantly follow up during the process, calling the employer and sending them thank you cards.
False. Most employers hate candidates that do this. Their time is valuable, quit pestering them. They don’t want to hire you, so deal with it.

10) Networking is extremely important.
True. The old adage, “it’s not what you know, it’s who you know” is true, always has been true, and always will be true. Get on LinkedIn and start making contacts. Go to conferences and trade shows. Get friends to introduce you to their contacts. It’s a silly game we play, but this is the reality of business.

11) Recruiters are your friends.
True, when you need them, but they’re also your worst enemy when you already have a job and 100 of them are beating down the door trying to talk to you. This is a good problem to have, though. Let them call, and get to know them over Thai food. When the time comes, you will be thankful. These people are like real estate agents, but for jobs; free consultants who genuinely want to help you. You should always have 2-5 recruiters you talk to on a regular basis. Anymore than that and they’ll drive you crazy.

12) Don’t discount Craigslist as a source for jobs.
True. But this is probably a last resort. I generally start with Indeed, which covers most job websites. It used to spider CL, but knowing them, they probably sued. Also, get your resume out on LinkedIn and Career Builder, as those sites are used to harvest resumes all the time. But keep in mind: you shouldn’t have to look for jobs yourself, you should know enough recruiters to let that magic work for itself.

13) Your credit score is important.
True. Believe it or not, many employers check your score, and it helps to have a good one. But what’s more important is to make sure you have a clean reputation on the Internets. If your MySpace is still sitting around — delete it. Search your name + city, full name, street address, email, and username and make sure anything weird is cleaned up. Also, get your name out of all those robodirectories to avoid future issues. If you’ve got a mugshot you can’t expunge, then, well, you’re screwed I guess.

14) If at first you don’t succeed, you’re doing it wrong.
True, in almost all cases. If you aren’t even getting calls, there’s probably something seriously wrong with your resume. Read up on how to write a resume, and fix it. If you’re not passing interviews, then read up on how to interview (be confident and have all the answers!). If you’re still failing, you may be over or underqualified for that type of job, and you should try something else. Try different search keywords that mean the same thing. If you’re a web designer, try “web developer”, “mobile design”, “front end”, or “ux designer”. They all mean basically the same thing, they just become more specialized and professional-level.

15) Hire a life consultant to help.
False. Don’t waste your money. If you can’t figure out how to get a job from yourself, you’re hopeless. Go back to school and learn something else, or move somewhere where there are jobs.

16) Start saving for retirement at age 70.
False. Start saving for retirement at age 40, heh. Because nobody will hire you in IT past that age.

17) Racism and sexism are rampant in IT.
False. For some reason IT jobs are just popular with white guys. Generally, there’s really no such thing as the employment gap; actually, women will be better-paid then men in a short number of years. There’s definitely an ageism problem though.

18) Don’t let other employers know you’re interviewing with other people.
False. They aren’t stupid, they know you’re talking to several firms. You might even use it as leverage for a better negotiation. When jobs compete, you win.

19) Don’t burn bridges when leaving a job.
True. Never burn bridges, even if you’re getting laid off. You never know when those people will be helpful later on in your career. I personally don’t burn bridges, and what I’ve gotten from this is 1) Offer of double salary to stay, 2) Given opportunity to work remotely, 3) Given contractor/consultant opportunity (twice this happened), 4) Rehired at a significant raise. 5) Given investor opportunities. This is why you don’t burn bridges. You know they were wrong to lay you off, let them call you back when they realize they made a mistake.

20) Refuse an offer that doesn’t pay well.
False, unless you have a backup job. It’s better to continue interviewing elsewhere after being hired, than to stay on unemployment or worse. Employers take this risk when they lowball your salary.

Millennials: What They Are and What They Want

I’m tired of the media complaining about how nobody can figure out what millennials want. Have they tried asking one?

Well, I’m a certified card-carrying millennial (Born: 1984, first PC: 1992), so allow me to tell it like it is.

First off, I know I don’t speak for all of Generation Y. There’s certainly a difference between being an 80s kid and an aughts kid. But that’s not going to stop me from trying to speak for everyone….

Millennials were spoiled rotten with too much undeserved praise. It’s true that we didn’t deserve all those tee ball trophies, but even at age 3 we knew that. Giving out trophies even though we were losers didn’t warp our minds or make us crave constant praise. Kids aren’t stupid.

Millennials don’t respect their parents, elders, political figures, etc.. That’s partly true. But the thing is, respect should be earned, not given freely. I find it ironic that other generations complain that millennials don’t give out trophies, so to speak, to people who don’t deserve them.

Millennials don’t know what they want out of a job, so they switch jobs often. No. Millennials want to be treated like human beings… not necessarily praised and held in high regard, but at least treated like an adult. You want to treat us like punks, you can find a low self-esteem Gen X’er to do the job. There are other jobs that understand that employees don’t deserve to be pushed around and belittled.

Millennials are all dumb due to the education system. Wrong. Millennials are highly intelligent due to growing up on the Internet and knowing how to search it. We’ve grown past the need for schools, it’s just nobody realizes it yet. And the generation after millenials… they’ll be even smarter than us.

Millennials won’t leave the house when they turn 18. Newsflash: the era of “graduate high school and walk across the street to get a job without a degree” is long gone. I didn’t leave the house until I was 22, but when I did, I had a degree and enough money to put down money on a condo. I actually kinda wish I were still living with my parents, as I’d be well on my way to being a millionaire by now.

Millennials don’t believe in the American Dream. We all dream differently now. I wanted a house, so I bought one. I didn’t want a family, so I’m unmarried with no children. I went to college. I work. But seriously, can you blame them for not believing in the Dream? Look at the economy they’ve grown into.

Millennials can’t figure out college. You have that backwards. I left college when I realized what a scam it was, and it was the smartest thing I’ve ever done with my life. Sure we need doctors and lawyers to go to college, but most everything else can be learned online for free.

Millennials play too many video games. Actually, I think Generation X has us beat in the department. I personally don’t play video games. I make them. Millennials do spend too much time on Reddit though, for sure.

Millennials are irreligious and vote libertarian. If you think that’s true and that scares you, you better watch out for Generation Z when they’re old enough to vote.

Millennials are devoid of ethics and ethic. We don’t like to do stuff we find to be stupid. Profound, right? Jobs should be no exception to this. My number one rule in life is, if it’s stupid, I’m not gonna do it. You know, unless a client is paying me to, and they don’t care to listen to reason. This is a trait of Boomers, by the way.

Millennials think the world revolves around them and they all deserve fame and fortune. This is obviously Generation X making this crap up. Just because we have higher self-esteem than them doesn’t give them a right to hate us, hehe. Honestly, I don’t see millennials as wanting fame and fortune, but I do see them as seeking importance and stability in this world. And I see them succeeding at it. If that means wanting fame and fortune, then everybody should want that. And as far as millennials being selfish, that’s not the bad word people make it out to be. Steve Jobs was the king of selfishness; ego, no tolerance of other ideas, no giving to charity, etc… but through his selfishness he changed the world and created a brand loved by millions. Not saying everyone should be like Steve Jobs, but if you want to find success, you will find a lot of selfishness right there with it.

I’m not usually into letting the generation thing define who people are, but I feel like millennials needed to be defended from all the crap you read in the media by the previous generations, whether it’s hostile or just ignorant. As far as I’m concerned, all generations since The Greatest Generation have been screwups that have succeeded in nothing more then creating an empire of consumerism. They can keep it. I dunno if all millennials are on the same page as me, but I’m looking for something more out of life than living in the suburbs or the coffee shop.

Where to Start[up]

I have a love-hate relationship with tech startups. I’ve probably worked in more startups than I have established businesses (I’ve also turned down plenty of jobs from startups), and I’ve seen a lot of interesting similarities and a few key differences. For starters, leadership seems to play a massive role in the success of a startup. I know a lot of this will sound obvious, but you wouldn’t believe some of the “21st century CEO” nonsense I’ve seen and heard.

So, leadership. Again, a lot of this is stating the obvious… self-declared CEOs often suck at their job; those with an MBA and real-world experience can thrive. It doesn’t matter if you’re manufacturing tablets or making artisan cupcakes in Midtown. Business isn’t something that usually comes natural to anyone, even if they think it does, and leadership is the opposite — it isn’t something you can really train on, but rather something that’s either part of your personality or isn’t. Then there’s the painfully obvious: intelligence has nothing to do with success as a CEO. Actually, a CEO has to know when to use their medulla oblongata, which ends up being a lot more often than compassion, but that’s just how the game is played. You will see a lot of brilliant people fail for simply overthinking… not that you don’t also see a lot of idiot bosses fail for underthinking.

Strategy. A good chess player probably makes for a good CEO. But many lack the ability to strategize for the long term — or, hell — strategize coherently. You need to have a monetization strategy at all times, even if it’s not going to pay off now. You need to know where you’re going and what you’re doing, and not simply flailing around between projects. It’s not enough to have a business plan, you really need to know where you’re driving the car.

Research. For god’s sake, do your homework and see if there is profit in what you’re doing. Check out your competitors, and think about what it will take to make their customers come to you. If there is no competition, there’s probably a good reason. Figure out what you can do differently that others have lost millions failing at. Calculate the return on investment, and of course what the initial investment will be. Don’t lie to yourself, but don’t go nuts with the hiring, either. At the end of the day, you’re a startup and you should stay lean where you can. You haven’t earned the right to spend like a drunken sailor quite yet.

Location. Maybe you love the hip urban core, or the beach. But do your clients, partners, and employees? Don’t inconvenience people to make your business look good. It sounds like it’s not that big a deal if you’re not opening a storefront, but then again, not every developer cares to deal with downtown parking, and most can’t just ride a bike to work. You’re only going to attract those that can. And those people, of course, are generally self-absorbed Starbucks dwellers. We millennials are easy to make fun of.

Ideas. I’m gonna keep this short and sweet. CEOs, please stop making startups about how to grow startups. The idea has been done to death. Come up with something new.

Culture. To all aspiring CEOs (and project managers) — stop being so culture-obsessed. We know you hate the ’80s IBM corporate culture of our fathers, and there certainly is a lot to hate about that. We now know that people don’t have to hate their jobs, and loving your job makes many employees more productive. But let’s get real, potential clients and partners can smell the homegrown t-shirt and jeans nonsense a mile away, because they’ve been burned by it by people like you in the past. You won’t want to hear this, but the organic business thing died decades ago. Not that it can’t work, but even Ben & Jerry’s couldn’t keep it up for long… eventually you have to lay off the doobie and start the multimillion dollar business plans. Here’s an idea: treat your employees well, but know when to reign them in. Also, know when the tie goes on and when it comes off. I went to an interview at a multimedia agency startup years ago, and when I walked in a tie while everyone else was in t-shirts, I made a half-serious apology for being overdressed. The CEO smiled and said he never takes any candidate seriously who walks into an interview dressed casually. “If they can’t be bothered to dress nice for a job interview, it’s disrespectful and is usually the start of more red flags to come.” Even though this place was uber hip (and looked like a super fun job, kinda sorry I didn’t take it), the boss was a sharp young professional that knew his stuff. No ego, no need to have technical discussions, just a desire to get stuff done and the means to do it.

Communication. Sometimes this goes along with the culture. One of the last jobs I did had the most bizarre company culture I’ve ever had to deal with… very depressing and silent, despite ping-pong and total absence of an alcohol policy (what’s up with miserable companies and ping-pong, anyway?). Communication was also an issue here, with management that really didn’t know what they were doing, and a CEO with a good track record, but had his hands off the inner workings. That’s great, as long as someone else is willing to keep tabs on things, which nobody really was, or were resistant or reluctant to do so. Human issues in a business are just as important as financial and production. Without it, you will have morale issues and high turnover.

Technology. When you meet a tech-obsessed CEO, run for the hills. Geek CEOs can definitely cause some trouble. I’m convinced some of them already know the development stack they’re going to use even before the project is fleshed out, and this sort of thinking will spell trouble when others challenge their decisions later. Your clients/customers don’t give a crap that you’re using Hadoop, Puppet, and HAML. They don’t care about your over-engineered Ruby on Rails back end. Build something that does the job, and stabilize it later when you know it works. Which brings me to…

Scalability. There’s no point in spending millions building something nobody will use. Your idea, not the system itself, is everything. Make your idea stick, or at the very least, find out if it even will, and go from there. There’s no shame in failing, but whatever you do, don’t spend millions to find this out. What’s cool about ideas is that they aren’t tied to a system. I worked for one company for years that was trying to build an online product. The first system simply didn’t have a good enough business model behind it. Then it was rewritten completely, and it worked for a year until the idea outgrew the system. Then it was rewritten again after we looked at what was working and what wasn’t. And after I left, it was again rewritten by a new company with new ideas. Four different programming languages (C#.NET, VB.NET, PHP, Java) and four different engineering teams. There was never anything fundamentally wrong with the systems, they just have evolutionary limits like all systems do. Ideas will change, and databases will always resist those changes. Accept this as fact and stop spending years building a system around an initial idea, especially an untried idea. It will most definitely change, and you’ll find yourself trying to talk yourself out of changing the idea to avoid a system rewrite.

S&M. Sales and marketing (get your mind out of the gutter). These guys are way more important than they get credit for. Good ones will treat your customers well, understand the product well, and never stop working for you. They bring home your bacon. Forget “if you build it, they will come.” This is the biggest lie ever told, and for whatever reason, startup after startup fails to recognize this. Advertise your product. Get partners over the phone. Hire people who know how to do this, otherwise you get nowhere. And if you have these people in place and they’re not doing their job, find someone who can. Of the startups I’ve worked for, the successful ones knew how to market themselves, and it took huge sales and marketing turnover to get the formula right. The good ones are as hard to find as good CEOs. How not to market? Well, this whole urban kumbaya “our company’s mission is to make the world better by being awesome blah blah mustache ninja zombies” isn’t a strategy, and most of the world doesn’t want anything to do with that. They already tried that, but then they sold their VW Bugs and moved into the cul-de-sacs to raise Aiden, Jaiden, and Brayden. This will typically be your market. I know they’re uncool and half-dead, but deal with it. They have money.

Ethics. When somebody talks about bad ethics in the local tech business community, you don’t want to be one of the executives they’re talking about. Nothing wrong with having many pots on the burner, but try to avoid hanging out with Carolina bootleggers and Tampa porn kingpins. Though it seems like every CEO in Tampa is linked to the adult industry in some way, heh.

Compensation. Pay your people what they’re worth, or you’ll get what you pay for. I’ve been at enough startups to know the pay is not usually competitive. And that’s okay; after all they’re startups. But in exchange, your people must love you. An employee isn’t gonna stay long if you’re only paying him or her half their value and still finding ways to stiff them on bonuses, while requiring stuffy attire, not giving any portfolio builders or new responsibilities, and not occasionally singing the praises of a job well-done. Especially in tech, there are so many jobs out there that nobody really needs to put up with that sort of crap.


Prime example of how to run a startup: SBS Studios
The founder here is a natural business genius who I have a lot of respect for. These guys make cool stuff. Their clients love them. They win awards. People love working there. They’re super hip in culture, but they still know how to get business done at the end of the day. They were recently acquired by St. John & Partners, and it’s not a surprise. SJP knew they were legit, not just by what they produced, but because the stuff I listed above was in effect, and working for them.

Prime example of how NOT to run a startup: Path.To
I interviewed with the original founder and CEO awhile back (not the one on their website). He’s a great guy, and extremely knowledgeable about the industry, but he really didn’t seem “in it to win it”. When I asked about monetization strategy, he couldn’t give a good answer. When I asked about what he could offer that LinkedIn didn’t already do, and how they would sell the idea to other businesses, no good answer. Just technical discussion. He also explained that he’s under a conglomerate that funnels money to web 2.0 projects so he can throw spaghetti at the walls. Must be nice to have benevolent angel investors with money to burn, even when your startups fail one after another.

…so it wasn’t a surprise to see that Path.To recently shut down. An interesting article, by the way, if not face-palm inducing. It’s really sad to see them fail, as the idea was interesting, but I can’t say I didn’t see it coming a mile away.

C’mon Apple, get with it

Why am I not surprised that the Apple Developer website got hacked and account info stolen? Their developer site has always been, to me, a horribly engineered site that made very little sense and was extremely restrictive. It seems painfully obvious the site wasn’t thought out before it was built, so I’m not at all surprised it was hacked; I’m only surprised it took this long. In all fairness though, things were starting to look up for that site, since they finally added a way to transfer an app from one company account to another. Why it took them 6 years, I don’t know.

While we’re on the subject, why do I get the sneaking suspicion that Jony Ives’s bizarre iOS 7 design is about to be the next trend in web design? If neon colors and gradients become the latest thing, maybe I’ll just call it quits, hehe. But anyway, I guess the skeumorphism thing has been overplayed as of late, especially by Apple.

Other than that, I dig the new iOS. Definitely a step in the right direction, at least.

Let’s Talk about Pre-Processors Like it’s 2010

Reading some of my past entries, you’d think I hate pre-processors or something. Well, that’s not quite right. Setting aside the obvious (PHP, etc.), I want to have a quick discussion on the pre-processors that have been popular over the last few years, and my take on them.

Great ideas, but pretty much the same thing. They don’t offer any real benefit over old-school CSS for small projects, but they’re certainly useful for the larger ones. But you know what’s better? Stylus. Stylus seems to take the whole idea a step further with the whitespace syntax.

Mixed feelings. I used it on a project recently, and while I love how easy it makes OOP and the syntax is lovely compared to the mess that is Javascript, it seemed to have a few frustrating quirks, and whitespace syntax is not always your friend. But then again, it beats getting lost in the “});});” forest. Debugging can quickly become frustrating as well.

I won’t lie, I can’t stand HAML. I want to like it, but the fact is HTML, like XML, is incredibly well suited for, well, markup. Here is an example of the number one reason HAML drives me nuts:

<span class="test">this</span> <strong>is <a href="test/" target="_blank">a</a></strong> <em>test</em>

%span.test this
  %a{:href => "test/", :target => "_blank"} a
%em test

…so what happened here? Well, I traded a simple, common line of text for a mess of carriage returns, indents, hashrockets, and… colons? why?… and at the same time made it more difficult to read. I saved 20 characters, but at the expense of readability, and I made my brain hurt. HTML. Isn’t. A. Programming. Language. The verbosity of XML serves its purpose, like it or not. Although like everyone else these days I use JSON over XML most of the time, when you are dealing with lots of inline data, it makes more sense to use XML instead. Repetition and verbosity != not readable. This just doesn’t seem like the solution to any kind of problem HTML might have had. A better solution? Stick with HTML, and for templating, use mustache.js (the only Javascript-based templating engine that doesn’t suck, in my opinion).

Oh, and if I ever said anything mean about Node.js, I take it back. Without that, none of this would be possible. 🙂

Down with CMYK!

All you graphic designers out there, I’m about to rock your world. Your professors, art directors, and magazines have been telling you wrong all these years about CMYK. Here’s the real scoop.

Starting your print documents in CMYK is bad. Really bad. It’s like starting a web image as a JPEG. Let’s think about this.

  • CMYK has an vastly inferior color gamut to RGB
  • CMYK takes up more file size
  • RGB is considerably faster at processing
  • Most Photoshop filters and adjustments don’t work in CMYK, or work unpredictably
  • If you want to adapt this image for web later on (which these days is likely), you’ll wish it was in RGB
  • Besides gamut restrictions, you’re not getting an accurate portrayal of the actual printed output, anyway
  • These days, your output probably won’t even be in pure CMYK, but hexachrome, which can probably do more with your RGB file than with CMYK.
  • CMYK therefore is lossy, causing irreversible damage to your future workflow

The truth is, CMYK mode isn’t much more than a tool to help the designer visualize the restrictions of CMYK. I suspect that CMYK probably holds a slightly better gradation of colors even if the gamut is clipped, but then again, if it’s that big of a deal, you could use 16 bit RGB instead. But even though it’s a helpful tool, it’s also destroying any future prospects of your image being used elsewhere in the real world. Simply put, print is dying and web is much more important these days, so it seems fair to assume that you shouldn’t prematurely limit yourself to a CMYK color space, for fear of shooting yourself in the foot later on.

So then, what is CMYK good for? Well, again, it’s like a JPEG. You should save it in that format once you are completely done, and do not overwrite your source files. In other words, keep the RGB PSD file, and render your CMYK print version to PSD or TIFF (TIFF is a dying format though these days). CMYK should be the last thing on your list before saving for print.

“But converting my RGB image to CMYK will make my image all muddy looking!”
Only if you’re a beginner designer and don’t know what colors can and can’t fit the gamut. And at any rate, it’s more or less an optical illusion; It’ll be fine when it’s printed–it wouldn’t have been able to use those bright RGB colors anyway, so get over it.

“But this will affect my subtle gradations and other visual benefits of starting in CMYK.”
Look– your end user and/or client won’t notice these subtleties, and they won’t give a crap either, unless you’re designing for National Geographic, or an art magazine, or something. Use 16 bit color if you want slightly better gradients. And anyway, you actually can visualize how it’ll look in CMYK without actually using CMYK mode. Check out “View → Proof Colors” in Photoshop. You’re welcome. 🙂

“But I have to know how it will look in print!”
Do you think web designers need to know how JPEG artifacts or PNG color banding will look while they’re designing the image? Do you think they mess with color profiles or calibration to try to get the colors exact on every web browser? Those would all be an exercise in futility. Your colors will never be 100% the same for everyone. We know this, and it doesn’t bother us. It shouldn’t bother you either.

I know the truth hurts, but these days there is almost never a good reason to start in CMYK. Don’t sabotage your workflow. Work smart–use RGB and only switch modes towards the end. Or better yet, if your final work is in InDesign, you can let InDesign do the final color conversion instead of doing it to every image in Photoshop.

Happy Photoshopping.

Banned from the App Store!

So Apple called me to personally reject my newest app.

Not surprisingly, they don’t believe my app is really doing anything. In a way, they’re right, I guess. Basically, what the app does, is it matches people who want to buy human souls, with people who want to sell them. People pay money for human souls, that’s what it does, but it also doesn’t involve any sort of tangible transaction, and Apple’s problem is they don’t want users involved with metaphysical transactions. They also said souls don’t exist and they cannot be sold (how dare they say this to a Doctor of Metaphysics, haha). So there you have it; if you ever wondered if Apple believes in souls… no, they don’t.

You know, I’m not even going to rant about it… I’ve been doing way too much ranting these days. I guess I’m just disappointed that they disagree that the app does anything. I saw the rejection coming a mile away, I just didn’t know which part of the guidelines they were going to dig up to keep it from hitting the App Store. It took them 3 weeks to figure it out, heh. So no, I’m not going to get angry about it, because I find it way more amusing than anything else.

Unfortunately, I’m not sure there’s a way to go forward with this project without it getting rejected again. Either you believe the soul transaction is ocurring, or you don’t. Apple says if the business model changes they will accept the app, but I’m not really willing to do that. Therefore, I will no longer pursue publishing this project on the App Store. I may, however, attempt to create a bookmarkable web app to circumvent the App Store.

Look for a new app announcement within the coming days…

Where I Stand on Marriage

Churhes should be allowed to marry (or refuse to marry) the following:

  • women and men
  • men and men
  • women and women
  • any number of people
  • a human and his/her parent, sibling, or child
  • a human and an animal
  • a human and a Barbie doll
  • a human and a cartoon character
  • a human and Planet Jupiter
  • a human and a metaphysical idea
  • two animals
  • two nonexistant things
  • everything that has ever and will ever exist

Government should be allowed to marry (or refuse to marry) the following:


Governments should offer civil unions for the following:

  • any human beings of legal age and consent (defined by State law)
  • any number of partners deemed administratively feasible by State law
  • any domestic situation *especially* family members

Let religions have freedom. Keep the government out of marriage. Let the states figure out civil unions. Many countries do it this way… why is this so difficult for us?

Why I won’t buy Windows 8

This won’t really be anything you haven’t heard already, but I feel like I really need to voice these concerns.

I know I don’t speak for every UX designer out there, but there seem to be a lot of troubling aspects of the Metro UI that I’m having a hard time justifying. Notably, eyeflow. When tiles are laid out in a linear fashion, the eyeflow is simple. Left to right, top to bottom. That’s what we do in Western Civilization; it comes natural. But when you have small-sized icons, medium size, large size, double-wide, etc. as tiles, your brain can no longer read in a linear fashion. It sees the big one first. Then maybe the medium or doublewides. Then the small icons. What order do you see them in? Who knows. Maybe the colorful ones–but wait, they’re all colorful. Your brain will fight with your eyes over what should be seen first, which creates a stressful experience for the user.

So then the question becomes, what was Microsoft trying to accomplish in order to improve upon the system that was already in place? Good question… I’m still trying to figure that out. Some icons are big. Some are small. I can see that maybe you’d want the most used icons to be big, but does it really matter that much? Or at all? Does it make sense for one icon to take up the same real estate of 8 others? So then, the colors. Great, color coding. I assume that blue could mean web, orange could be productivity, green for games? Nope. It’s entirely random, apparently. So then what is the point of having candy colored buttons strewn all over the place in various shapes, sizes, and colors? I’m just not following it.

The other issue I have is with their obvious end goal, which is merging the user experience across phones, tablets, and desktops. It seems like it would be a worthy endeavor, and perhaps it can be done, but that doesn’t mean that Windows 8 is doing it right.

Let’s take my personal use cases. On my smartphone is Android 2.3. It has a desktop. With same-sized icons. It has a drag-down bar with a list of recent programs and notifications (the equivalent to a taskbar and icon tray). It has a button at the bottom that slides out a list of applications (you know, a “start menu”). I’m able to do everything I need to do, using this system. At home I have Windows 7. It has a desktop, same-sized icons, a taskbar, and a start menu. The experience is virtually identical, besides the lack of notification list and a different approach to multitasking–but that’s okay, it makes some sense that I would have different needs on a desktop versus smartphone. But in the case of Windows 8, it seems to want to force a unified “jack of all trades and master of none” experience across all devices. No device has just icons. No device has a start menu. All implementations are based on utilization of touch. On a desktop, this is especially silly. Who’s gonna sit there with their arms in the air to use Excel, Word, and Visual Studio? Who needs the calculator taking up their entire 22 inch monitor? And to top it all off, providing both a Metro mode and classic mode to create an utterly segregated, confusing mess of an experience.

It appears to me that Microsoft went the same route as iOS in the reimagining of Windows (the dreaded “let’s just do what Apple is doing and call it innovation” move in Silicon Valley). iOS also has merged the start menu into the desktop, for instance. I would imagine the reasoning behind this was for simplicity’s sake, and lack of screen real estate. For the record, I disagree with the decision. A desktop should be for human-organized shortcuts and unfiled folders and documents. A start menu should be your entirety of installed applications. It seems like Microsoft is trying to copy this idea, the idea being, why have both when you can merge the two? Because it creates a mess, that’s why.

I remember when Windows 1-3 was using windows of grouped icons (that’s why they called it “Windows”) on the desktop instead of filing them in a start menu or just having the commonly-used desktop icons. When I was a kid and Windows 95 came out, I was upset at first, but then I realized I didn’t use most of those icons, so they didn’t need to be taking up my desktop all the time. Apparently, Microsoft has done a complete 180 and decided to pile everything back on the desktop again, so what was 20 years old is new again. Now my beloved desktop experience is gone, and instead I’m being forced to use a tablet experience. Instead of a few icons on a clean desktop, I have every program I own and barely use, mixed with live gaming icons I don’t use, next to a web browser I don’t use, with social networking tiles that are completely useless, and other garbage I just plain don’t use. It doesn’t take a genius to realize that banking your flagship product on popular smartphone and tablet interfaces is going to turn out to be a huge mistake. The quicker Microsoft admits this, the quicker they can get back to selling Windows again.