Technical Interviews and Regular Expressions

Some people, when confronted with a problem, think “I know, I’ll use regular expressions!” Now they have two problems.
– Jamie Zawinski

Some people, when confronted with a problem, think “I know, I’ll quote Jamie Zawinski!” Now they have two problems.
– anon

Just to show that I practice what I preach, I headed over to TopCoder a few hours ago to try my hand at some simple TCHS problems. By my surprise, the problem I opened was very similar to one of the technical interview questions in my previous company. I know this because as a technical interviewer, I’ve already given this problem to a couple of potential employees.

Now this isn’t surprising. Basic algorithm-related questions are good filters for weeding out so-called “developers” who never really had much programming practice in college, but there’s only a few types of questions you can ask at this level–go any higher and you’ll likely be stuck with Complicators instead of pragmatic programmers.

Anyway, what struck me with this problem is that it can also be solved with regular expressions. This has never occurred to me before, mainly because I didn’t expect even the top students from the top universities in the Philippines to approach the problem that way. From my experience, I would expect applicants to play around with loops instead.

This made me ask myself the question:

If you were a technical interviewer, how would you rate an applicant who used regular expressions in solving the problem?

Continue reading “Technical Interviews and Regular Expressions”

Quick Programming Challenges

As a guy with over a decade of programming experience and a good mathematical background, I occasionally want to throw all the other aspects of software engineering out of the window and just program stuff. Here are two sites I visit to get my quick programming fix.

Continue reading “Quick Programming Challenges”

C.A.R. Hoare on Computer Science and Software Engineering

C.A.R. Hoare

As a follow up to my post On Software Engineering, here’s a presentation by Sir Charles Antony Richard Hoare on the relationship between computer science and the engineering of software. It’s mostly basic stuff, but it might be useful for you guys who haven’t groked the relationship yet.

The Science of Computing and the Engineering of Software [via InfoQ]

Notable CD-R King Items

Everyone has their own CD-R King horror stories: the long lines, the unfriendly attendants, and crappy items that go boom after a week. But with so many items in their catalog, there’s got to be some hidden gems in there.

So to round out my series on the ZyXEL router hidden among the hundreds of CD-R King merchandise, I’ll be pointing out other items that I consider to be notable in their catalog.

Continue reading “Notable CD-R King Items”

Upgrading Telefonica's P-660HW-61 firmware

upgraded firmware

Some of you might realize that while the modem works properly after following my previous post, you can’t upgrade it using the original firmware from ZyXEL. Repeating what I said in the original post, you can’t upgrade the firmware to use the official ZyXEL version because of the built in firmware.

For those of you who have some electronics experience a lot of time to spare, I’ve summarized the steps on how to change Telefonica’s P-660HW-61 firmware to ZyXEL’s original version.

Note that in the steps below, you will void your warranty and you may brick your device. I am not liable for the damages caused by this post.

FYI, I bricked my modem in my first try. You have been warned.

Continue reading “Upgrading Telefonica's P-660HW-61 firmware”