5 Reasons Front-End Developers’ Lives Are Shorter

Photo Credit: Chris Fleming

The greater the applied stress range, see the shorter the life. –somewhere on wikipedia

Maybe it isn’t a proven scientific fact, but it is common knowledge that front-end developers deals with way more stress than back-end devs do.  These people, working with CSS, HTML, JavaScript and all that is contained in a web page are becoming increasingly jealous of their back-end counterparts’ quality of life.  Here are the top 5 reasons why:

Compile time (or lack of)

This an outstanding source of stress.  When you burst out a big chunk of code, you guys hit F5 and see the result, right?  Not working? Get back to work.  Now.

Back-end developers can always rely on compile time (or more contemporarily, build time) to relax a bit.  They can soothingly peek at their EVE online character skill training queue, answer a couple of tweets, or practice their vi kung fu.

Source code management

In my experience, front-end devs aren’t at ease with SCM (subversion, Git, etc).  That means when there’s a fire, a hard drive failure or a giant dinosaur spits fire on your laptop, you lose everything.  Sure, there’s a copy on the server, but that’s not how you do things (and what if the dinosaur also ate the server?).  Lots of time lost here, lots of stress.

Web standards

Web standards are a good thing.  But web standards, as they are advertised right now, are a real joke: you still rely on browser maker’s willingness on implementing them.  You still have a lot of tweaks, hacks, and duplicated code to craft.

Standards for back-end programming (JEE, SOAP, SQL, to name a few) are well defined, and mandatory.  The developer can lean on them and blame the product company which failed to implement them correctly (and get congratulated for it because you earned your company free support time).

Have you ever tried calling Microsoft, and open a support ticket for that unsupported CSS thing in IE?

The look

Even the worst snippet of C++ code, if it works, isn’t judged by anyone.  Why?  Nobody understands it. Nobody gets to see the actual code, it’s all 1s and 0s.

On the other hand, you front-end guys have to deal with the judging eyes of everyone in the company.  You have to take all the “Meh. I still don’t like that turquoise” … even if it ‘s the best darn piece of code you ever wrote!  You literarily get stripped of all your intrinsic self-worth.

View source

What if you were in a crowd (a big one, think Tahrir square), and someone removed all your clothes.  Nobody would like that, unless you’re sexually deviant.  That’s what happens when some guy does a right-click -> view source on your code.  Guilt, doubt, fear.

Conclusion

I fear for you guys.  Really.  I could suggest a couple of COBOL books, or Java certification classes, but if you already have a couple of years of experience behind you, I guess it’s a little bit too late.  What might help is if you try yoga, tai-chi, or as a last resort you could try the essential works of Yanni.

Cheers,

JS.
Back-end developer.

Rock Star

Photo Credit: Jeremy Keith

If you’re like most folks, buy information pills at one time or another, decease you’ve thought about taking that one great idea, hunkering down in front of the typewriter or word processor and just letting the words flow till they all come together to form The Great Novel. Many have actually done so, launching themselves head first, typing out the first few sentences of their masterpiece. But if you’re like most, you probably gave up after less than a page, never mind finishing one chapter. And from there, the numbers thin out to just the very few who somehow plug away till their book is done.

If you managed to finish the first draft of your very first novel, congratulations. It’s not easy. But you like it. You think it’s good. Real good. Now you want to share it with the world.

The world of book publishing has changed. A lot. For a budding new writer, now may be the best time ever to stand shoulder to shoulder with the big players.

Consumption versus Creation
Technology has accelerated people’s ability to consume endless amounts of information and media. There is an abundance of choice today previously unknown in human history. The industrial revolution created an almost limitless supply of physical goods that consumers could buy and enhance their lives. Now with the information revolution, media content has exponentially grown to the point where no one person could ever conceivably watch, listen, read or experience everything they find enticing.

Oh. But there is a downside.

With all this consumption, individuals could miss out on the other opportunities afforded by today’s technology: content creation.

Okay. So maybe you can’t sing or play an instrument. And for most, making a movie or a television show is out of the question.

But we all have one skill that we can leverage into content: language. As long as you can string a sentence together, you can write a book. All it takes is a good idea, a computer with writing software and patience to see it through. And a good book can propel a person from obscurity to fame and fortune.

Well, okay. Rarely. But you just know it’ll be you this time, right? Right on.

Electronic Distribution
The publishing industry is a big machine with a chain made up of authors (the folks who write the books), agents (the folks who match up authors with publishing houses), publishers (the folks who print, package, market and ship the books), retailers (the folks who sell the books) and consumers (the folks who buy and read the books). Like baseball, music labels and movie studios, publishers found that they could make oodles of cash by taking raw talent and turning it into gold. And by getting as much strict control on as many links in the chain as they can, they can make sure they maximize their profits. In the good ol’ days, you needed their big machine to do all things required to print and distribute a book. They liked it this way. It’s understandable.

Now it’s different.

There’s the internet. There are e-books. There are e-readers. There’s EPUB. There are short-run book manufacturers like Blurb and Lulu who can make one book at a time that looks as professional as anything at your local bookstore. There are turnkey solutions like iUniverse. There’s the Kindle. And then there’s the iPad and iBooks. And even more to come.

You don’t have to go through the machine anymore.

Media Lessons Learned
The music industry failed to embrace digital technology from the outset and they’re paying the price. By its nature, music is a low commitment medium. It takes about four minutes to consume one distinct unit. CD players and radios are cheap. It can just hover there in the background while you mow the lawn or drive your car. The file sizes are small (thanks, MP3), so pirating piles of songs is like using up a wad of napkins at Mickey D’s that you don’t really need, but like to have around, just in case. Plus the quality can be middling for most people’s tastes. Not a good medium to stake your financial future on.

Then there’s movies and television. Bigger commitment. You need to be sitting still for between 30 and 180 minutes to consume one distinct unit. Television sets, video players and trips to the theater cost more. The file sizes are much bigger, so that stems piracy. Somewhat. They’re looking at the music industry and thinking, ‘maybe we should be a little more open to digital technology’. It’s helping. A little. But their industry isn’t been on the verge of tanking like music has. Yet.

Now, publishing. Books? Huge commitment. You really need to have your nose in front of that page. Hours, days, even weeks to consume one unit. Photocopy a book? Who has the time? If there’s no PDF floating around, who would bother ripping it off? People have a much more visceral relationship with books. Almost a sensual one. And the publishing industry, thanks to Apple and Amazon, have decided to embrace digital technology.

There’s an opportunity there.

The Writing Process
So. You want to be a fiction writer? Fire up the ol’ Word or OpenOffice and just start typing away, right? Well, that’s probably not the best way to go about it.

Introduce yourself to the concept of non-linear writing.

Word processors by the nature of their architecture presume you will begin your document in the upper lefthand corner, work your way to the right, make a carriage return and drop a line and so on till your manuscript is done.

There’s a better way.

What if you want to start a third of the way in? Then maybe write a scene near the end. Or maybe you have an idea for a prologue before the first chapter.

In the olden days, there were these small pieces of cardboard called index cards. You could write a story idea on one and just lay it out on a corkboard or table. Then you could just play with these discrete ideas and reorder them till you fleshed out your narrative.

For Mac users, there’s Scrivener. For Windows folks, PageFour and others. They will free you from the bonds of linear thinking and make your writing project that much more pleasant. If not for Scrivener, I would have never been able to finish the first draft of my first real novel.

For years, I took stab after stab at writing a book. Never could do it. I always ran out of steam very early on. A non-linear text editor like Scrivener really changed everything for me. Like the first time I put together an Ikea bookcase with a cordless drill instead of breaking my wrist with a screwdriver, doing a major project was something to look forward to, not dread like some awful chore.

Good tools make a difference.

In the process of writing my book, there were some valuable lessons I learned that every newbie writer ought to know. There are many others, but these are all pretty basic.

Show. Don’t tell. In other words, describe the scene using the senses. Don’t just report what’s happened.

Remember the rule of three acts: establish your lead character, make him or her in face ever-mounting conflicts, end off with a huge climax.

Read good authors. Learn from them.

Raise the stakes. Constantly. Keep the action juiced up with a few breathers here and there for some balance.

Finish every scene with a sentence that has an emotional touchstone or a springboard to propel the reader onward.

You can’t completely avoid using adjectives and adverbs, but use descriptive, illustrative images instead when you can.

Keep the final manuscript to between 80,000 and 120,000 words. 100,000 is the sweet spot to aim for.

Hire an editor. If you can’t, be brutal with yourself, even if it is your baby and lop off excess limbs to make it better.

Use a dictionary, thesaurus and spell checker. Watch the grammar.

Keep the drama high and the peril ominous. But don’t be preachy or melodramatic.

Avoid clichés.

Trim the dialog. Keep it punchy, quick and understated.

Expect criticism.

The first draft will be garbage. Period. Don’t worry and don’t self-edit till it’s finished. Once the first draft’s out the door, you can brutalize it all you want. Whatever you do, don’t stop in the middle and nitpick.

Wikipedia is your buddy. Hang out.

Don’t frontload your story. Let it stretch out naturally. Don’t give it all away in the first chapter. Feed the reader by the morsel.

Enjoy every minute.

The Urge to Write
They say do it for love. Not for money. That’s good advice for anything worth spending your time on. For writing, the motive should be for the pure pleasure of telling a story.

As a web designer, there is a great satisfaction in the process of starting with nothing and then creating something beautiful and functional that all the world can experience. That’s the great thing about the web. Anyone anywhere can see what we’ve made.

Creativity is what satisfies the ongoing personal struggle we all deal with when trying to decipher the hidden meaning of our existence. It is in making something beautiful out of our pure imagination that gives us as designers, programmers and authors a real sense of purpose that is tangible. In a sense, we all are storytellers in our own right.

The art of writing fiction gives everyone an opportunity to explore the sheerest heights and depths of human emotion and experience, pitting characters who represent us in the most extreme situations, putting to the test our values, aspirations and our weaknesses and sharing them with others in insightful and entertaining ways. Everyone should, at least once in their lives, write a long form story, if only for the experience.

And there’s no better time than right now.

Photo Credit: Tim Samoff

Justin (a fictional person for this article) considers himself to be a very good designer. He trained at a local college, discount got decent grades, and even landed a respectable job at an agency in his area. But Justin feels that he can do more with his skills as a freelancer, or perhaps move on to a more well-known studio for work. Unfortunately, he can’t seem to get the attention from those who will ultimately help him achieve his long-term goals.

Part of the problem is how easily Justin becomes frustrated when he sees work that is superior to his own. He begins hitting creativity walls and starts asking the wrong questions, like “Why can’t I be that good?”, or “Why don’t people see me for my worth?”,  or even “Do I suck at this?”.

You might be Justin, or you might know someone who is. I’ve had days where I feel just like this, and so have you. We all know these feelings, because deep down inside, we all kind of like the idea of being mini-rockstars in our own circle of what we do, yet we also have days where we feel that we don’t deserve it when seeing what our peers are up to.

The obvious response would be to tell the Justins of the world to just keep at it. “Work hard and never give up!”, “Be strong!”, and “Hang in there!”. I know I’ve heard that more than a few times in my life. And even though it’s the pure truth of what needs done, there’s so much more to it than that.

An Analogy

Let’s say that there’s a chef who is looking to really make a culinary impact on his city. To make something that people would want to come to his restaurant for. He makes a killer dish, but his food turns out tasting much like that prepared by 40 other chefs in his area. So, he has an idea: to alter his recipe into something that few other chefs are doing. He creates his own blend of flavors.

At this point, something very interesting happens – his audience begins to divide into two primary groups: Those who criticize his cooking skills, and those who rave about it. All eyes (and taste-buds) turn to our chef to see what he’s been up to. Even people reading the critics turn up, generally out of curiosity – because most people are a little nosy. The raving reviews even earn him a couple of mentions in the local newspaper, which he appreciates.

Now, our chef is becoming locally famous, is bringing attention to his area (and his restaurant), and is beginning to make some of his dreams really come true, all because he stopped trying to make everyone happy, and started specializing in something truly unique. By altering his recipe just a tiny bit, he was able to move forward in his career.

Back to Justin

The one thing that keeps Justin from “good” versus “great” at this point is being afraid of creating something that some people will not like, by trying to make something that everybody will like. It’s nearly impossible to pull this off, but yet there he is, over and over again, creating designs that look like everyone else’s because trying something different is too high risk.

Justin probably has one thing in his skill set that he’s good at, more than anyone else, because it’s something he loves personally. By learning to focus his attention on this, channelling his design energy into that skill, he will, in point of fact, be creating his own chef’s recipe.

If we all learn one thing from Justin, it’s that we can’t be afraid of creating something that may potentially not be liked by everyone. When we design with our hearts, with passion, people recognize that, and follow you on your own path to greatness. We don’t need to be better than everyone else, we just need to be better than ourselves.

Managing your career in the world of Web development

I used to be that guy, cheap once.

The one-man webmaster, find creator and designer and strategist and coder and sysadmin and dBA. Yes there really was a time when one person could do all that – and more. Do it for many websites. Some of you reading this were likely in grade school when this was so – the art and craft of mastering websites has evolved exponentially, to the point that even the simplest blog requires a minimum of 2 people – you and the person managing the hosting.

Back in the day it was easy to plan your career. Things fell into place easily and largely because you were one of a rare few that understood the arcana of http, ftp, gopher, IRC and you actually had a netsol ID number. (Mine is KS443 – for us old fogeys they kept some of the records alive for posterity even they don’t use them anymore ). You could command vast sums of money, work any hours you chose, get all the latest toys and have a total blast using view Source and Kai’s Power Tools. A great day in the office was downloading the newest version of Navigator.

Nowadays, not so much. In fact, it’s fair to say the current generation of web workers (web developer is too limiting a box) has become commoditized. Technical schools, arts colleges, even some Universities now have programs designed to compress 20 years of whirlwind innovation into 2 or 3 years of specialized training and spit out an unending stream of assembly line workers. We have hierarchies and R&R documents.  We have Architect, Front End, Back End, Middleware, User Experience, Strategy, Rich Media – all of whom are good at one thing and familiar with a couple more and fully expect to work in a team environment where artifacts of their labour get passed around like so many auto parts waiting for final assembly.

Sound familiar? I’m not surprised. It’s a case of the pendulum having swung to the other side and while I am sanguine to know it will cycle back to normalcy I am both impatient for that time and struggling with my own contributions to its kinetic energy. I am spending a lot of my time recently interviewing candidates for various positions within our company and I see daily evidence of what I speak. And I ask myself time and time again ‘how are these people ever going to get out of the assembly line?’.

In our next installment, and at the risk of sound patronizing, I am going to offer some tips on how to manage your career in the coming years. And in a third and final episode I will offer some tips on how to avoid the pitfalls of ambition in the world of Web development.

Confessions of an IT conference traveller (part 1 of 6)

Christian Heilmann covers the different stages of travelling for IT conferences in this six part series. Be sure to read part two.

“So what did I forget to bring?”

When I was asked to write for this publication the main request was not to write about something technical but about the things that surround the tech world and my experiences in it. Well, remedy my current role as a developer evangelist puts me constantly on the road, read travelling from conference to conference so I agreed to write down a few tricks of the trade that keep me sane (some people would argue describing me as sane but my 12 foot green hippo friend George agrees with me that they are wrong) despite my ridiculous agenda.

If you have seen the movie “Up in the air” with George Clooney you can get a feeling of how my life is – except that I travel internationally rather than only in the US. There are more inaccuracies in the movie which I will cover later – for now let’s just say that George did a good job trying to be like me but didn’t manage to be as sexy.

What I will write about now and in the future

This series of articles will cover the different stages of travelling for IT conferences:

  • Part 1: “So what did I forget to bring?” (this part) tells you about how to pack, sovaldi sale what to take with you and how to get to the airport
  • Part 2: “Dealing with discomfort and public humiliation” covers your experiences at airports
  • Part 3: “God I wished I had packed tranquilliser blow darts” covers the journey in the air
  • Part 4: “Parlez-vous Anglais?” – travel from the airport to the hotel
  • Part 5: “Checkout at 11” – going to the conference and back to the hotel
  • Part 6: “Here’s my business card” – travel back and conference follow-up

Before we begin, I think I have to point out a few things that may skew the usefulness of these tips and tricks for you:

  • I am a male geek which means that the breadth of my fashion sense and need to accessorise is rather limited. Sometimes I go wild and iron my t-shirts but it is not a very common happenstance.
  • I live in London, England (North of the river) and this is normally my home port for my travels. It being very much an international air-travel hub makes it a bit easier for me than coming from rural areas to the next airport. This also means that my modes of transport might not apply to you.

So without further ado, let’s get into it.

Micro-optimizations

It’s 12:34am. I notice the time every night because of the sequence. Hopefully I’ll be in bed before 1:23am, steroids but in all likelihood I won’t. I’ll be back at the office in less than seven hours, check and damn it would be nice to get that kind of sleep, but it’s a matter of priorities. I’m coding.

At some point (I’ve long since stopped paying attention to the time), I realize I’m spending more time with my eyes closed, not typing, than with them open. I admit defeat, hit `:w` in vim, and begin my evening ritual.

I get up and clear the kitchen table. I leave the laptop open so I’ll receive corp email and my twitter stream for tomorrow’s bus ride—I ride the bus because I can be productive during my commute, but it’s also good for the environment.

I move my backpack from the floor to the stool next to my laptop and make sure the backpack is open.

I place my shoes next to the table, facing toward it.

I fill the dog food bowl and place it in the cabinet.

I move my pocket items, except my phone, into the pair of shorts I pick out for tomorrow and stack shorts and the rest of the outfit above my shoes on the kitchen table in the reverse order I will apply each article in the morning.

I separate my socks and put them and the phone on my night stand. The phone is my alarm clock, and the socks are to make my departure quieter, less likely to wake my children.

I step outside and move my bike next to the patio door, facing outward, then head back inside and shower. My head is shaven, so I can shower in the evening and not worry about bed head. Ok, and I’m balding.

I purposely don’t notice the time when I go to bed, and drift off quickly, pondering the subtle nuances of prototypal versus pseudo-classical inheritance.

My phone alarm goes off. It’s 6:00am. I have to be at the bus stop about a mile away in seventeen minutes. This particular bus runs only once a day in the morning and once in the evening, so I can’t be late.

Normally I get out of bed at the first alarm, but this morning my sleepy mind notices a label on the phone next to one of the buttons on the outside screen.

The alarm goes off. It’s 6:05am after an unplanned snooze. Oh shit! I should be dressed and the dog should be eating by now. I hit snooze, put my socks on, hop out of bed, apply some deodorant in the bathroom, then sneak down the hall to the kitchen table with my phone, closing my laptop as I pass it. I put on my outfit, stepping through my shorts into my shoes. I put my phone in my pocket as I turn around to put my laptop in the bag. I sling it on a shoulder while I pull Daisy’s food from the cabinet. I take the bowl outside and place it on the patio with Daisy tight on my heels. I close the door behind us, put on my helmet and get on my bike.

After a minute or two, my phone alarm goes off again. It’s 6:10am. This is my reminder that I should be getting on my bike no later than now. I’m ahead of schedule. I’ll make the bus, and will be coding again in about nine minutes. I turn off the alarm.

On the road within four minutes of waking. Apparently I’ve given myself five more minutes than I need in the morning. And perhaps I should move my deodorant to the nightstand.