Skype does not an IDE make

Blogging burns a lot of caffeine. If you enjoy my posts, you should buy me a cup of tea.

Skype not an IDE

This is the screen I’ve been staring into for most of the day.

It’s horrible. No way for a man to code. Or a woman. Or anyone really. If I had a child, this would be how I ground them – restrict text editor access to Skype.

Why was I doing this all day you ask?

A few days ago I decided to launch a small experiment – for this I needed a small icon. @ponywithhiccups bravely stepped up to the task and got to work.

After some days of back and forth we came up with a design both can be happy with. Bit of advice: meet up in person if at all possible. Especially for design.

Then I asked her to code it all up in CSS and HTML. You know, because I’m lazy and she can totally handle that and I have far less important things to do than implementing my own experiments.

With a huff and a puff she got to work.

Everything was going so well. Right up to the point she finally decided she has no idea what’s going on and I should step in to help. Via Skype.

Very well then, how hard can it be to lend a helping hand in coding some CSS? CSS is, like, totally child’s play. I can write CSS in my sleep!

Turns out, via Skype, not so much.

Human = text editor

Perhaps the problem wasn’t Skype so much as it was pair programming to use another human beingas a text editor. The only real issue Skype introduced was making the screen blurry and occasionally locking up so I could only see changes with a slight delay.

Look! It's paired programming!

Look! It's paired programming! (Photo credit: Wikipedia)

Using another human as a text editor, though, that was just painful.

The way I work is very messy -> I jump around the screen, scroll up and down, add a dot on line 10, write a row at line 100, refresh the browser, change some HTML, look at twitter, refresh the browser, change line 50, remove lines 10-20, add 5 lines, move the 5 lines fifty lines up.

And so on.

This works because I can keep the whole codebase in memory. But it’s vital that jumping around the file happens as quickly as it does in my head. Any delay feels like somebody was dragging a barbed wire through my brain while pulling the handbrake on my thoughts and chugging a refrigerator out the window.

You know, that feeling you get when you’re trying to code, but the computer is being slow?

Multiply it by 10 and add the computer asking “Uh, what do you mean?” “Are you sure?” and every now and then “OH! I know what you are going to say in 25 seconds!” … and then doing the wrong thing.

No fault to @ponywithhiccups of course, she’s just starting out with this stuff and I should have gone to her in person – we’d be done in half the time.

Pointing at the screen with your finger and saying “Right there, just fix that!” doesn’t work either.

BUT! In the end we prevailed and that’s awesome. I also learned a bunch about css3 animations; that stuff is fascinating. The things you can do, wow.

Enhanced by Zemanta

---
Need a freelance developer? Email me!

You should follow me on twitter
 Subscribe to RSS

8 responses so far

  • Asgrim

    “This works because I can keep the whole codebase in memory. But it’s vital that jumping around the file happens as quickly as it does in my head. Any delay feels like somebody was dragging a barbed wire through my brain while pulling the handbrake on my thoughts and chugging a refrigerator out the window.”

    THIS.

  • Gašper Ažman

    Whenever I need to collaboratively code anything, I just ask for ssh access. I can see she was using windows though, so… In that case, I usually fired up a virtual X session and connected to it via tightvnc and an ssh tunnel. Putty and tightvnc for windows takes care of the other person, and then we can both code in the same window, look at the result in the browser in real time on our own machines etc…

  • http://twitter.com/alain_gilbert Alain Gilbert

    Why not using something like http://TeamViewer.com/ ?

  • Mihai Maruseac

    I always use http://collabedit.com/ for this cases. Screen updates real time and you can jump whenever you want. Pity it doesn’t have ViM bindings :D

  • http://twitter.com/sbelak Simon Belak

    Give that bitch Emacs, bitches love Emacs.

  • http://swizec.com Swizec

    This sounds kind of complex to set up … especially since the whole thing seemed like 5 minutes of helping someone with a problem.

  • http://swizec.com Swizec

    Simple answer: because I didn’t know it existed. Maybe next time :)

  • http://swizec.com Swizec

    The problem with this approach is that there’s still the issue of having both of us see the results in a browser, rather than just the code.

« Three benefits of trying to gain... Steal my startup idea: Rent-a-mum »