« December 2005 | Main | February 2006 »

January 2006 Archives

January 9, 2006

Grad School: Semester Two

It begins. Semester two kicked off today with an intro to Research Methodologies. Our teacher seems like a great guy, and the class is all the same people I got to know first semester. Most gratifyingly, our major project is designed to be simply a mini-version of our theses.

With my new part-time status and the accompanying freedom I enjoy, I have no excuse not to do a lot of work this semester on this project.

So... I'm blogging instead of getting started. Hee hee.

Back to work for me!

January 11, 2006

Unprovable Does Not Necessarily Mean Untrue

There's not much else to say about that.

Religion and the development and institutionalization of war are two topics that come to mind, relative to that assertion.

Just beacuse something can't be proven doesn't mean it's not true. Also, ust because something can't be measured doesn't mean it's not worth doing. Just because a project can't be quantified, we can't put an exact dollar figure and timeline to it -- that doesn't mean it's not worth trying.

Just because someone can't be "managed" doesn't mean he's not worth employing? Yeah.

Sometimes risks succeed. And if you stick only with the totally safe, you will succeed only to the level that everyone else does. (And even then, you may fail regularly -- because the "totally safe" isn't, and everyone else is dumb.)

Well, there. I found some more to say about it.

January 12, 2006

Ethics and China and the Internet

Unethically, I'm copying verbatim a tiny article from a magazine I read:

"Microsoft stumbled in the ethical minefield of doing business in China last week, admitting it pulled an outspoken Chinese journalist's blog from its MSN Spaces blog-hosting service."

"Google, Microsoft, and Yahoo have been criticized for cooperating with Chinese authorities and censoring Chinese-language search results to eliminate keywords such as 'human rights' and 'democracy'."

I'd like to point out that the censorship isn't just for Chinese-language results, though perhaps these companies only censor in Chinese. While I was there (in Beijing for Christmas! what a trip!) I couldn't resist the urge to try a few sensitive searches on my own.

Among others, 'Falun Gong' was apparently a blocked search. Google, Yahoo, and MSN all timed out whenever I did a search for that keyword. Other searches came back just fine, but sensitive words timed out. I even checked for an HTTP response code indicating I'd been denied, but there was nothing.

The Great Firewall does not echo.

So that's a cool story. But my real reason for posting was that I want to remember this topic as a potential issue to discuss in my final paper for my ethics class this semester. Is it unethical for MS to comply with Chinese authorities when doing business in China? Doesn't seem so to me.

January 13, 2006

Old-School Bandwidth

Okay. So, the quest is this: record the entire spectrum of TV. Cable, broadcast, whatever. Let's say, for the sake of discussion right now, that I want to record all the ambient broadcast TV.

A few facts that I've managed to piece together:

A typical TV signal as described above requires 4 MHz of bandwidth. By the time you add in sound, something called a vestigial sideband and a little buffer space, a TV signal requires 6 MHz of bandwidth. Therefore, the FCC allocated three bands of frequencies in the radio spectrum, chopped into 6-MHz slices, to accommodate TV channels:

* 54 to 88 MHz for channels 2 to 6
* 174 to 216 MHz for channels 7 through 13
* 470 to 890 MHz for UHF channels 14 through 83

The composite TV signal described in the previous sections can be broadcast to your house on any available channel. The composite video signal is amplitude-modulated into the appropriate frequency, and then the sound is frequency-modulated (+/- 25 KHz) as a separate signal.

VHS tapes have about 3 MHz of video bandwidth. So that's why the quality is lower, I suppose, on VHS tapes. The signal is compressed somewhat.

To tape 100 channels at "full" quality would cost about 600MHz of bandwidth. At VHS quality, it seems like that would be 300MHz.

It looks like you'd need a special oscilloscope or other device to record the whole thing. I'll keep working. Hmm hmm.

I *love* projects like this.

Continue reading "Old-School Bandwidth" »

January 25, 2006

Top Five Interview Questions for a PHP Programmer

I've been interviewing programmers, and I thought it would be handy to write down some of the questions that have yielded the most interesting and helpful answers. Here's my Top Five Questions to ask someone who's applying for a PHP programming job:

1. How did you learn PHP?

If the answer is something like, "I took a class at college," we've got a problem. If the answer is, "I took three classes at college," it's even worse. The person who learned it working on a contract project, late at night, reading a hundred different websites and books -- that's the one who's going to be able to learn the next language they'll need. Or learn how to use the crazy API that one of our partners releases. Or learn how that stupid old legacy code works.

What websites did they use? What books? It doesn't even matter what the answers are, really, as long as they have answers.

2. How would you write a web-based tool that would give me all the cities within a specified distance of a certain zip code or city? (Then...) How would you make it better? What would version 2.0 be like?

I want to see what data structures they're thinking about. What technologies are the comfortable with? Do they consider login and user managment? How would this tool use cookies? Can they think of ways to get the source data they'll need? Do they consider that many users may be international?

Just for fun, if anyone mentions XML, I'd ask some very pointed questions about that. It's a buzzword, and people tend to throw it in because they think it sounds good. I want to know what concrete benefits XML (or any other specific technology) would bring to this project.

3. What was your least favorite job?

This is a good one to let people talk on and on about. For some reason, programmers just don't know when to stop. And pretty quick, many people will reveal details that really show what they're like to work with. If a candidate tells me, for instance, that he hated that one company was always sending around memos with ridiculous policies and requiring everyone to read them -- I've got to worry a bit.

4. What's the coolest project you've ever worked on?

They'll try to turn everything into this, so make sure it was genuinely cool. I like to ask technical follow-up questions to this one, to see if they really understand every aspect of it.

5. What other companies are you applying at?

There is a wrong answer to this question. That is any restaurant, retail store, or just 'none.' The answer to this question should be a list of my competitors, or at least some local, related companies. Where I happen to be right now, there are tons of comparable technology companies, and some significantly bigger. If somebody's applying here and not there, I have to wonder why. Have they already been rejected there? Did they just stumble across us because we posted in right place? A serious programmer looking for a job ought to be applying at a host of companies in the area.

I view this question as a good indicator of a candidate's individual drive and work ethic. If they're not working hard now, why would they work hard once they have a secure job and comfortable place?

I'd be interested to know what anyone else thinks of these questions. Comments are open!


January 27, 2006

What have been your greatest successes?

This is a question I think more people should ask, when conducting job interviews. The answer to this shows several things about the candidate:

1. What do they *really* love to do? What will they excel at?
2. Are they enthusiastic about work?
3. How do they view their successes? Was it the result of great teamwork, individual effort, lucky circumstances, or something else?

The whole point of a job interview is to figure out if a person will fit in a position or company. The work they love to do is what they will tend to do, so this question really addresses that core challenge.

Lecture over, here's my stab at an answer:

One ofwhat I would consider my "greatest successes" was the development of Search Engine Optimization services for 10x Marketing. We knew we needed to offer something -- we even had a few clients paying us for SEO services -- but we had no formal, scalable solution. Our CEO asked me if I would become an "SEO guru" and see what we could do there.

I knew nothing about SEO. Over the next few weeks and months, I found some books and a lot of websites about what I soon learned was a rapidly growing and very young industry. I visited the websites of every SEO company I could find, from the mom-and-pop shops to the New York ad agencies with red-carpet client lists. I heard many ideas, many contradictory and almost all unsubstantiated.

In the midst of the chaos lay principles, however. The dissertation of Sergei and Brin, outlining a primitive vision of Page Rank. And a core of ideas that fit our goal of developing a consistent, scalable, honest approach to SEO.

I evaluated tactics both for their short-term effectiveness and their long-term viability. I eliminated anything that wouldn't work if we had a Google employee sitting in the room with us. I tested a ton of ideas, measuring the success of each and weighing the impact of various tactics.

Finally, we had the guts of a process that would work. But it would take work to run. Months of work, in fact, for a single client.

So I turned to another set of books and websites, and I started teaching myself Java. (The language of choice, if only because it had the most readily adaptable set of example programs that I could work with!) If we could have afforded a programmer, I'm sure we would have ended up with much 'cleaner' code than what I produced. But the little program I created was finished after a month of development, and when we ran it -- it worked. Optify could do in two days what would have taken a person two months to do manually.

Two years later, we're still using that program. I've had to adjust some of the formulas and features, and I've expanded it to support many different languages as we've gotten clients from overseas. I had to build a distributed proxy server system when we started overtaxing our own servers and resources. As search engines have changed, I've modified it to match and to support new engines that have come online.

And our company has grown fantastically. SEO has become our primary service. Referrals from clients is our single best source of new leads. And our clients -- who typically come to us skeptical, having been burned two or three times by other SEO companies -- are growing and growing.

I'm not a programmer, and I'm not an SEO guy. I'm just a guy who does his best at whatever needs to be done. When that happened to be SEO and programming, I did a really good job.

Now I'm working on Conversion Rate Enhancement. I'm excited to see where that leads!

Information War

The Pentagon views information, and more specifically the Internet, as a critical front in future wars. How cool is that?

I mean, yes, Big Brother and all that.

But -- what a great source of business ideas. The military seeks a way to disrupt and control the entire EM spectrum. The James Bond movie Goldeneye features a fictionalized EM Pulse weapon, but such weapons are not entirely fictional. A terrorist could detonate a nuke miles above a city and destroy not just the city but response equipment for hundreds or even thousands of miles around. How about deploying communications systems that are not dependent on electromagnetics?

The military also wants to publish information on the net without the source being identified. How about a system that would create virtual identities and extend their reach across the world? Enter some demographic info for the persona you want to have say something. We'll create a back-story and hundreds of timestamped posts by that person on hundreds of different sites. Then we'll start planting the target message in critical places.

In my comms ethics classes, of course, we decry the perversion of media to commercial and other purposive ends. Expression ought to be unfettered, free, and complete. But I'm not convinced we live in the world many theorists would inhabit. I think we live in a grimy, gritty real place with masses of human beings -- each good and bad, smart and lazy in varying degrees, and each struggling for survival. Wars will happen, people will want to kill each other.

If we can prevent some of that, fight the wars with words and signals instead of bullets and bombs... Well, I believe that is a better course.

And am I ethically crippled because I look at this as a business opportunity? No. Business is the tool our society has chosen for creating progress. We are structured for no other way.

About January 2006

This page contains all entries posted to Tom Dalton :: Doer of Good in January 2006. They are listed from oldest to newest.

December 2005 is the previous archive.

February 2006 is the next archive.

Many more can be found on the main index page or by looking through the archives.