kevinclark's comments

kevinclark | 13 years ago | on: Cue: The 10 hour scramble to launch two days early

This has been one of our most requested features. It is definitely something that will happen, but I can't comment on timeframe.

When the iCal support ships, I expect you can use that to keep us sync'd even before we have native exchange support. An exchange endpoint is how google sync keeps my phone up to date with ical events, iirc.

kevinclark | 13 years ago | on: Cue: The 10 hour scramble to launch two days early

Engineer at Cue here.

The product that was previously called Greplin is a subset of Cue. The search functionality is not going away. We have no plans to get rid of it. It isn't an edge case, or legacy functionality - it's a core piece of Cue, and it is going to stay that way.

kevinclark | 14 years ago | on: Let's Code: Test-Driven Javascript

I think this is a reasonable product, but don't understand why it's a Kickstarter project. If the author has been developing a similar series for Java over the last year and a half, why does he need funds to do it for JavaScript?

I think the Kickstarter concept is fantastic for things that need to be fabricated, where building in bulk is a significant cost difference. But it seems like there's a trend where people sell products that don't actually need start-up capital through Kickstarter just to get an advance. This project may be worth the money, but I find the trend worrisome.

kevinclark | 14 years ago | on: Ask HN: Programmers who seriously damage their hands?

I started having serious RSI symptoms at 19. I was on the computer probably 16 hours a day between my CS program, work, and rec time. My elbows became swollen and painful to the point I couldn't sleep. I took ibuprofen for a while to help, but eventually the amount it took to alleviate pain caused a mild overdose (2800mg in 24 hours is bad juju). Every doctor I went to see told me the same thing - you're going to have to get away from the keyboard. I was fairly certain I'd have to switch careers entirely.

The thing that made the difference for me was paying attention to how I treated my body. You can spend a lot of money to prevent RSI symptoms, but the most important things for me was an egg timer. I started taking 5 minute breaks every 45 minutes to stretch my hands and arms. Now I use AntiRSI (http://tech.inhelsinki.nl/antirsi/) to do the same thing.

The most significant change to equipment was my chair and desk. I invested in a good chair that I could adjust easily - elbow height (and rotation) and seat height in particular. Being at the correct height and angle makes all the difference.

I bought a zero tension mouse (http://bit.ly/HAZYov), which seemed to help with my mousing hand, and had a MS Natural Keyboard at the time. I've since moved on to a kinesis that I like a lot.

Exercise also seems to help - I'm an active rock climber at this point, and it's helped my posture and arm strength.

To the general 'what if you lose function of your hands', I think there's hope. The most important things we do as programmers isn't typing. It's solving problems. If you can still do that and you can communicate those ideas effectively to others, you'll have a lot to offer.

kevinclark | 15 years ago | on: CS Education: The Deep End of the Pool

(Also posted on the original thread:)

I think some of the comments about simpler syntax (moving from Java to Python, for example) are in the right direction, but not far enough down the path. I think the fundamental problem is that of generalization. Someone may intuitively understand how to do a specific task themselves, but how do you take that idea and make it generic enough to be useful?

Programming is communication about how to solve a problem. So let’s skip the whole computer language implementation detail. Don’t start with computers. Start with problem solving. Make the implementation language a list of steps to be performed. Split off people into pairs – have them write down descriptions of how to solve some problem, and then have their partner act it out. You get to talk through parse/compiler errors instead of having to translate something that only really makes sense when you’ve seen it a couple hundred times.

Once people are comfortable with taking a problem and producing steps to solve it, picking up a syntax to say the things they’re already comfortable talking about seems like a much smaller step.

Long term, we’ve got to start doing this earlier. Grade school. Hell, preschool. Why should analytic problem solving be something you’ve got to wait to learn?

-----

Other thoughts while I'm here:

We need to get over the math obsession. Yes, it's important. Yes, deep computer science has lots of math. But you don't teach someone to love music by first trying to get them to understand music theory. Let's cut out the parts that aren't essential. Let's take a lesson from unit testing culture - start with the smallest thing that will work. Big O isn't one of those things. Once people can come up with simple algorithms on their own (remember how great those first little wins felt?), it's a great opportunity to lead into complexity theory. But if you do it too early you'll just scare them off.

Maybe I'm in the minority, but I think everyone has the ability to learn basic programming and the analytic skills that go with it. It doesn't have to be hard. But we've got to start with baby steps.

page 1