rc3.org

Strong opinions, weakly held

Month: August 2006 (page 3 of 3)

Slow on the draw

One problem with getting a new mobile phone is that it takes awhile to get used to answering a new phone. This is my first flip phone, and while I have no problems opening it normally, when it rings I can’t seem to adroitly answer it. I guess I just need to take more calls in order to improve my flip phone skills.

Overall, though, I can’t believe I didn’t have flip phones all along. I keep my phone in my pocket, and the flip phone is a lot easier to deal with than the candy bar phones I’ve had in the past.

10 questions for other programmers

There’s an interesting list of 10 questions for programmers that a guy named Stiff sent out to some famous programmers. You can read their answers on his blog. You can read my answers here (not that I was asked to provide them).

How did you learn programming? Were any schools of any use? Or maybe you didn’t even bother with ending any schools 🙂 ?

I started learning programming when I was probably 11 years old, on a Commodore 64. I’ve continued to learn more about it off and on since then. I was a Management Information Systems major in college, but I didn’t learn much programming there. Pretty much everything I know is self taught.

What do you think is the most important skill every programmer should posses?

Critical thinking skills. When you’re asked to create something, there are so many more important questions than simply how to implement it most efficiently. Being able to discern whether it’s really needed, why it’s needed, and what kinds of problems implementing it will introduce are keys to staying sane.

Do you think mathematics and/or physics are an important skill for a programmer? Why?

I am by no means a math expert and I get by, so math training is not a necessity. However, some of the greatest and most brilliant programmers I’ve known studied math rather than computer science. I don’t think it’s a coincidence.

What do you think will be the next big thing in computer programming? X-oriented programming, y language, quantum computers, what?

I find myself being more interested in recurring patterns than future development. For example, due to the increasing availability of resources, we saw computer games go from tiny (think Atari 2600 and Apple II) to massive (think projects like World of Warcraft that must have dozens of developers). Over the past few years thanks to the introduction of more powerful mobile phones we’ve seen a market for tiny games emerge again. There are plenty of patterns like this that I find interesting to observe.

If you had three months to learn one relativly new technology, which one would You choose?

It’s not really new, but I would spend it learning JavaScript in order to really grok the AJAX libraries that are proliferating these days.

What do you think makes some programmers 10 or 100 times more productive than others?

They instinctively know the answer to questions that take others hours or days to figure out. I don’t know how someone develops and hones this instinct. Some people are almost certainly born with it.

What are your favourite tools (operating system, programming/scripting language, text editor, version control system, shell, database engine, other tools you can’t live without) and why do you like them more than others?

i do most of my work these days on OS X using Ruby, TextMate, Subversion, bash, and MySQL. I get very passionate about my tools, but not very attached to them. If someone showed me a better tool in any of these categories tomorrow, I’d pick it up with little hesitation.

What is your favourite book related to computer programming?

I’ve read bunches of books on programming. Is it bad that none really stand out in the crowd? I’ve had my programming philosophy changed a lot more by people I read online than by any book I’ve read. A short story that captures everything good about programming is The Story of Mel, a Real Programmer.

What is Your favourite book NOT related to computer programming?

My favorite this year is Bill Bryson’s A Short History of Nearly Everything, which I plan on reviewing in detail at some point.

What are your favourite music bands/performers/compositors?

My tastes are eclectic. See my last.fm profile for some idea.

Testing meebome

This is only a test.

Update: If you’re seeing this in a feed, there’s an instant messaging box in this entry that you can use to talk to me via Meebo.

Fun with MediaWiki markup

At the job, we run several instances of MediaWiki that we use for internal collaboration and to produce content that will eventually be published on a public Web site. My job generally involves building custom content management systems for various types of content. I chose to build them using Ruby on Rails. Because all of our users are already getting used to MediaWiki, we thought it would be cool to support MediaWiki’s markup format within our custom applications.

I assigned a developer to build a parser for MediaWiki Markup in Ruby, and after spending a couple of weeks of work using Racc, he threw up his hands. The parser in MediaWiki is written using regular expressions and has some oddly inconsistent behaviors. Furthermore, the language is so complex that he told me it would basically take him forever to get it finished. (There were also some features missing from Racc that were greatly complicating the task.)

Unfortunately, we told our users about our exciting MediaWiki parser project before I learned that writing such a parser was not going to be worth our time (or money). Rather than giving up, we instead created a Ruby on Rails plugin that actually shells out to PHP and calls the parser built into MediaWiki. A developer who knows PHP and Ruby on Rails well wrote the plugin in a couple of days. I still haven’t decided whether this is the worst hack in the history of the world or a brilliant solution to a thorny problem. I guess it’s probably a little of both.

The main downside is that now we have a full MediaWiki installation setting in the vendor directory of our Rails applications, and any server that hosts our Rails application has to have PHP installed and working as well. The upside is that we didn’t have to write the parser ourselves and we don’t have to worry about keeping up with changes to MediaWiki markup as it evolves over time.

In order to forestall performance problems, the content is only parsed when it’s saved, and the HTML version of the content is stored in the database so that we don’t have to run an external shell script every time we render a piece of content.

The next step is to package this thing up and see if anybody else finds it useful.

Israel, Lebanon, and Syria

Yesterday I read a 2004 article linked to from the comments at Jim Henley’s blog that explained how Hezbollah observes fairly specific rules of engagement in its war against Israel. Hezbollah’s attacks are generally responses to specific provocations, and Hezbollah does seem to understand proportionality. Indeed, yesterday Billmon noted that Hezbollah suspended its rocket attacks when Israel declared a 48 hour moratorium on its aerial bombardment of Lebanon.

I’m not eager to give Hezbollah credit, and obviously the world would be a better place if an armed militia in southern Lebanon were not attacking Israel, but I think there’s something to consider here. If there were “rules of the game” being played between Hezbollah and Israel up until the two Israeli soldiers were captured on July 12, what caused Israel to suddenly change the rules and launch an all out attack?

It occurred to me this morning that the difference is that Syria’s military no longer occupies Lebanon. Israel wasn’t willing to start a war with Lebanon if it meant starting a war with Syria as well, but now that Syria has been forced to leave, Israel can blow up Lebanon with impunity. Has Israel (backed by the US and UK) taught Lebanon that it was more secure when it was occupied by a foreign dictatorship than it is as an independent democracy? It sure looks that way to me.

The eBay Phone

As I mentioned the other day, I ordered an unlocked Motorola Pebl on eBay on July 21. Yesterday, it arrived. The purchasing process was simple and painless. I bought via “Buy it now” and paid immediately, and two or three days later I got my tracking number via email. It was shipped UPS ground, so it took several days to get here.

The shipping costs were outrageous. The sellers on eBay compete viciously on price and pad their profits with absurd shipping costs. I think they charged me $30 to ship my phone, and shipping costs from my seller were actually on the low end.

In ordering the phone, I had two big worries. The first was that my phone wouldn’t arrive at all, and the second was that the phone wouldn’t be new. Things turned out fine on those counts. The phone arrived, and it certainly appears to be new. The box had been opened (I assume so that the seller could unlock the phone), but none of the accessory bags were open, and the phone itself had the little protective bits of plastic that protect the various surfaces from scratching still in place.

One thing that hadn’t occurred to me is where competitively priced unlocked cell phones on eBay actually come from. Given that Motorola has deals with US carriers, it’s not as though they’re selling hundreds of phones to semi-legitimate cell phone dealers at rock bottom prices so that they can in turn sell them on eBay. I can now answer this unasked question. In my case, the phone came from Italy.

The manual is written in Italiano, the charger is for European plugs (but has a US adapter), and the phone itself is set up to be used on some Italian network. (The skin is for the Italian carrier and all of the applications are set up to work on that carrier’s network.) I’m a bit surprised that the phone didn’t have “Congratulations 2006 World Cup Champions” on the wallpaper. The seller must have set the phone’s language to English before shipping it to me. The English on this phone is the Queen’s English, which is sort of cute.

As far as the functionality goes, the phone works like a charm. I took the SIM card out of my old phone, put it in this one, charged the battery, and everything just worked. That was a relief.

I have no idea how the seller got a bunch of Italian phones, but as far as I’m concerned, this phone is the “Mafia phone” from here on out.

All in all, this experience rates as a success. I’ll have to try to figure out how to get the applications to work with Cingular, but other than that, things are fine. I can call people, sync with my laptop, get my voice mail, and send and receive text messages.

The one decision I haven’t made is whether to purchase the SquareTrade warranty that the seller sent me an offer for. The warranty lasts three years and only costs $15, which is cheaper than the stupid phone insurance carriers sell. I have no idea whether SquareTrade is legit, though. Opinions?

Newer posts

© 2024 rc3.org

Theme by Anders NorenUp ↑