I’m more than a little bewildered by all the rumblings in the CLEC/ISP community in the last year or two in favour of IPTV, or IP-based television content delivery.

For those not familiar, it is basically the same service as that of your cable or satellite provider; channels of television content beamed into a set-top box. Except, instead of using the traditional HFC and/or waveguide and QAM transport infrastructure that cable uses, it is prospectively delivered (1) over a variety of last-mile infrastructure in telecom companies’ incumbent plant, such as copper ADSL2 loops, direct fiber to the premise (a la Verizon FiOS), and (2) it comes as an IP-based data stream, leveraging a variety of approaches that seem to suit this aim — e.g. multicasting.

I think that in general, IPTV is a dead-end business model for ISPs and CLECs to pursue.

As is widely acknowledged to happen from time to time, I did not consciously arrive at the conclusion suggested in the title until stumbled into a recent debate on ISP Planet’s isp-clec list about affordable and/or partly open-source driven head-end equipment for IPTV and associated accoutrements for the required network build-out. It’s something that came to fruition as a realisation as I devoured the exchanges about encoding gear, GPON vendors, etc.

Having bared that thesis, I will attempt to indemnify myself with the disclaimer that I am not a full-time market analyst, do not work in the video space, and know relatively little in detail about the technology. Additionally, I do not watch TV. I have not even had cable for many years now. And in general, television, the film industry, and entertainment as a whole are at the absolute dead-bottom of my list of personal or professional interests. So, I cannot possibly claim much credibility or authority here even if I harboured such designs.

It’s just a gut feeling. But gut feelings carry a frequently under-acknowledged significance in the anatomy of business decisions.

The first and most principal problem: TV is obsolete. No, I am not saying that nobody watches TV anymore; that is rather self-evidently not the case, and it seems implausible to even imagine American society without one of the most critical elements of its vitality–if that is the appropriate word to use. Indeed, the seemingly inextricable relationship of television to the basic respiration of American society — at least, on a pedestrian level — is one of the best known things about American society.

What I mean is that the traditional, incumbent nature–and particularly, the format–of broadcast television is on the decline. Television conceptualised hitherto, as a one-to-many broadcast network offering a fixed selection of professionally prefabricated content interspersed with frequent advertising, is not a growth industry.

The leading cable networks’ viewership has been consistently falling for several years now. Hollywood is beset by successive, protracted strikes of the various writers’ and actors’ unions, contributing to a blight of new and original content as well as a commonly acknowledged tendency to recycle, rerun and reuse. New shows are crafted according to predictable and overused formulas to — at least, I think — a previously unseen level, as epitomised by the bromidic “reality” genre. A study released just over a week ago suggested that the median age of habitual American TV viewers is now 50. Advertising revenue has plunged. The news channels part with growing segments of audience as more and more people–most especially the youngest demographics–move to the Internet to get their news.

Of course, this assessment falls short in its failure to consider certain lopsidedness in the trends. Various pay-per-view and on-demand movie channels, and other accessories of the technological upgrades heralded by digital cable, have actually registered modest gains.

All the same, I can’t see how anyone could be moved to suggest that these market conditions are investment-grade. Far as they may be from a proclamation of TV’s imminent demise, the stench of decay and obsolescence seems to be in the air.

That’s not to say that consumption of the essential phenomenon of the moving picture has abetted, although that may be the case with categories of younger viewers who have switched to the textual realm of the Internet to obtain their news–and increasingly from non-traditional media outlets, to boot.

Rather, the medium and the basis of the content has shifted increasingly in favour of online video content such as YouTube. As with the challenge to traditional corporate media posed by blogging, more and more video content that is considered entertaining and defining in popular culture is becoming user-generated and collaborative–”amateur,” if the terminological preference of the incumbents is to be respected. Perhaps more significantly but less overtly, there is a plethora of commercial (and some free) sites offering streaming feature-length movies, comprehensive archives of TV show episodes, and much more. Some of them are probably legal and have content licensing arrangements with the industry. Most, I imagine, are not. I can’t really say, as I am not a consumer thereof.

Even among those whose consumption of the boob tube has not significantly diminished, TiVo appliances have become commonplace. They conveniently defeat intrusive advertising and dutifully record shows to be watched later, according to the viewer’s own schedule and preference.

All this points to the irreversible trend that people are no longer satisfied with bulk, canned streams of content, or anything resembling “channels.” The next generation of video content is something like YouTube, if not necessarily identical. It my involve a marriage of the YouTube paradigm with a number of other presentation formats, technologies and approaches, including ones that may not have been conceived or applied yet. But essentially, something that carries its click-and-pick spirit forward.

It’s no different than where the music industry has been headed, where, aside from the more publicised and prolific lamentations about CD prices and labels screwing artists and so forth, the critical - if understated - key factor is that people want to cherry-pick their songs. Nobody wants to pay $16 for a CD where they won’t like all - maybe even most - tracks. But they are quite happy to pay $.99 for a single track from the iTunes store. It’s because they want that specific track, right here, right now, easily and quickly. And they want to amass it into a large, portable collection on the device of their choice (which, in light of the DRM restrictions, makes market acceptance of the Apple approach somewhat curious, if not necessarily beyond the reach of explanation).

And then, of course, there is the woefully limited landscape of choice offered within the RIAA production and distribution cartel, and the incredibly high financial barriers to entry it carries. How are you going to get your band’s album into the Barnes & Noble music section? Online music distribution democratises the playing field considerably, if not perfectly.

This is where things are headed. Toward openness, clips, bites - all on-demand, and bolstered by the convergence of digital delivery features with the interactive possibilities offered by computer interfaces, fed by the Internet — so much as that remains possible in light of the vicious hostility displayed by the telcos and MSOs alike toward net neutrality and all the issues surrounding that.

(By the way, the cable companies know this. That doesn’t mean they like it. That is why they have lined up to impose bandwidth and data transfer limits on customers once again - once thought to be a tired anachronism of a previous generation of the Internet economy’s evolution. It’s because they assume–not without some justification–that if you’re transferring 60-80 GB/month or more, you are either a prolific BitTorrent pirate or you’re watching a lot of streaming video, which means you’re not watching TV, which is a terrible, terrible thing indeed.)

Rome is burning, and you want to build a telco-cum-cable company providing what can and should be properly called legacy broadcast content in the middle of it? I’m not in MENSA, but if someone tries to take your money to invest in something like that, I’d say don’t fall for that scam. Run for the hills!

The second issue is with the technology, marketing, costs, and competency of the sort of organisation that a telco-land network service provider (CLEC / ISP) is.

Who said the head-end technology available within an independent CLEC’s budget works well, and is reliable or mature? Nobody I’ve spoken to who has tried it. Of course, I could just be speaking to the wrong people.

A friend of mine, who works with MSOs for a large vendor, has informed me that a lot of the gear typically found in major MSOs’ head-ends is overpriced, overrated, and suffers from egregious duplication and wastefulness stemming from lack of interoperability. But, I am not persuaded that anything built out there to replace it for a CLEC’s build-out budget actually works. Mind, this isn’t really my area of technical expertise, so I just don’t know. But nothing I have heard has been particularly encouraging. If anything, it’s been abusive and disdainful of Mickey Mouse solutions.

Who said last-mile broadband delivery infrastructure in the US, particularly copper or hybrid ADSL2, can handle high-definition, full-motion digital video streams with the level of robustness TV viewers take for granted with conventional digital cable, or that the equipment and technology necessary for delivering it over IP has those qualities either?

I know that a lot of the distribution infrastructure feeding the MSO head-ends has been IP-based for a while. But the last-mile portion is done with QAMs and RF. Are you sure you’re going to match that consistency with New Age ADSL2–still a largely uncharted province in terms of its rollout in North American telco plant and all of its idiosyncrasies, most notably a lack of fiber to the premise–and IP-based decoders?

If my experience of the extreme sensitivity of users to the quality of service issues (read: the way it’s inferior to the PSTN experience) in residential VoIP delivery is any indication, the Monday Night Football crowd will probably lynch you. Yes, I know a lot of that has to do with the feebleness of delivering carrier-grade voice over the Internet, which isn’t how IPTV would work at all, but that is not a hinderance to the point.

The network build-out, presumably involving some combination of copper ADSL2, fiber to the premise, and various hybridised transport, is a very capital-intensive undertaking. And as if the regulatory and bureaucratic burden on CLECs isn’t enough already, franchising agreements and content licensing enter the picture as significant CAPEX. I don’t know how much any of that costs, but I have a hard time imagining that an independent CLEC can get it the same breadth of it, on the same terms, as the large cable MSOs.

Third, to harness an insight of Clint’s: video is hard. Let alone to do right. No, it’s not insurmountable, but it is fraught with considerably more technical and logistical complexity than, say, voice or data. As Clint has remarked, it is relatively easy for a cable entity to enter the telephony space, especially as they already do data, making VoIP a logical, ostensible proposition. The synergy in triple-play is there for them. But telcos trying to reform their competency upward from voice/data into the video space is much harder. The synergy in triple-play is there for the MSOs because it’s a downhill battle — they already have the hard part. Telcos, institutionally, would have to fight an uphill competency battle.

But if that’s not discouraging enough, the real question is — where’s the elusive value proposition, the uniting elixir that is going to bring all these customers and the windfall profits for the enterprising CLEC?

What is being sold?

Something that people don’t already have, like … cable TV? Very funny. Perhaps rural areas not covered by cable might be a candidate, as relatively few as they are, but it is a stretch of the imagination to consider that the infrastructure there - i.e. the copper plant - is ready to support a brand new ADSL2 roll-out. Sure, remote DSLAMs with their fiber tails can be intrepidly built, but if the cable company doesn’t think there’s any ROI in building out their plant to the area because of population density or demographics, you must know something they don’t.

You might try for rural areas that have inferior, legacy local-yokel cable with a narrower range of features and content access, but you’ll have to conveniently ignore the existence of satellite–and hope your customers do too.

Aside from that, what’s the value? A little bit of bundled savings on triple play? Using New Age, avant garde technology that is unlikely to work as well as the perfectly good cable TV that is fairly ubiquitous, over experimental delivery mechanisms? And to suppose that your cost structure — and urgent need to recoup the cost of the build-out you just did and that the MSOs already have — is going to allow you to offer that competitively? CLECs/ISPs are often straitjacketed from even offering voice and data competitively with the ILECs unless they’re simply willing to take a margin hit; how did TV get to be the manna from the sky?

Marketing this type of stuff with any significant conversion rate is hard enough as is. It’s going to be even harder if you have nothing superior to offer. This is a good time to brush up on the subjective theory of value: just because television may be a novel, interesting business for a telco doesn’t mean its customers will think — or experience it as — a novel, interesting product. Well, they might think that, but the correlation between thinking certain things and voting with dollars would prove disappointingly low.

Having said all that, there are probably a few niches here and there where going into the TV business might make sense, such as multi-tenant buildings (MDUs). Or maybe if you’re fortunate enough to get a shot at a free and clear monopoly on a small (but growing) rural municipality if you do the trenching. Well, okay. That could work pretty well.  But then the question arises:  Why not do that from the cable side, instead of the telco side, from an infrastructural perspective?  Get stuff that already works well.

In any event, I’m not prepared to condone a business model based on the theoretical possibility of making it work with a set of highly specific, contrived artifices. I’m sure there are circumstances in which there may be an extremely compelling business case to offer janitorial services or lawn care, too — maybe do a deal with Blackwater in Iraq or something. Pockets of the extraordinary notwithstanding, it doesn’t count.

The news is not all bad. As I mentioned above, TV may be dying, but consumption of video content is not. If what you’re interested in is capitalising on the possibility of offering the next generation of computer-convergent set-top boxes with access to all sorts of newfangled content options whose market share and significance is likely to meteorically rise, that’s not such a bad idea.

But in that case, concentrate on rolling out the next generation of high-speed broadband access and customer premise equipment, especially as much of it is likely to be Internet-driven. If it turns out that this is not the case, you can add distribution and plant to drive new content models later. Why on earth would anyone want to get quagmired in the business of television as such? Why the stampede to imitate what the cable companies have been refining for decades, and provide an alternate distribution mechanism for the exact same content?

It’s time CLECs, Wall Street, and vendors got off this insipid IPTV bandwagon. Independent CLECs need to find something better to do.

Oh, come on.

June 18th, 2008 by Alex Balashov

What is this “unit testing”?

In Mother Russia, this was an appropriate level of testing:

#ifdef _DEBUG

assert(some_stuff);
assert(expr() == 3);
assert(so_on && so_forth);

#endif /* _DEBUG */

That is all a real man needs.


Ideally, you should be using a professional recording company (the likes of Muzak) to record high-quality, business-class IVR messages, greetings, etc.

However, if you are determined to roll your own, here are a few tips.

Use an actual PBX phone handset. If you’re using a VoIP system like Asterisk, you can use the Record() application with a dedicated internal extension or something like that.

You will get better results that way than if you try to record sound files by outside means and convert them to the necessary results. Here’s why:

  • Direct-line handsets will have a certain level of ambient noise, hum, static, etc. associated with ordinary telephone conversation, but not the level of distortion one gets from the low-bandwidth codecs on cell phones, or calling in to record via the PSTN from a cheap analog handset and dealing with the realities of last-mile noise introduced by copper lines. So, at the other extreme, don’t record by calling in from the PSTN either.
  • Digital handsets still have the essential qualities of a traditional phone handset as an electromechanical device in that the spectrum and quality of recording the diagraphm in the receiver produces is most closely aligned with the 3.1 KHz that PSTN voice lines are traditionally engineered to bear. Thus, your output will most closely resemble the input that the playback needs.
  • There is always information loss involved in format conversion and quantisation. Asterisk, for example, has the ability to record in the native codec in which you are going to later issue the playback toward PSTN and VoIP callers (i.e. ITU-T G.711u), requiring no lossy conversion. Secondly, converting extremely rich, high-bitrate audio data with a high sampling rate to a codec of much narrower bandwidth (i.e. the Pulse Code Modulation used on G.711u, which is designed to be a digital bearer for PSTN-grade audio) and with logarithmic companding (the u-law / A-law part), can result in heavy content loss in the wrong places — this is why it’s hard to just take a high-quality MP3 and convert it to a telephony codec and expect your hold music to be discernable and pleasant to a PSTN caller. The conversion and companding process can mangle the desired psychoacoustic profile of the clip far more so than simply recording it in the right codec to begin with. It’s the general principle that if the bandwidth and content of the input does not differ so radically from the bandwidth of the anticipated output medium, less mangling and distortion will be introduced.
  • The sensitivity of the receiver in good handsets usually produces a more ample and adequate level of baseline volume, less likely to require upward boosting — and therefore less likely to introduce further distortions by amplifying the noise component of the signal.

Otherwise:

  • Speak clearly and distinctly into the receiver, while holding it at an angle with respect to your mouth that minimises the interception of breath.
  • Avoid subtle background noises, including sighing, chair creaking, tapping, clicking, etc.
  • Speak slowly and enunciate clearly - but not in such a caricatured way that your recording sounds like a preposterous departure from real human speech possibilities.
  • Definitely follow a prepared written statement. While this will, in most cases, alter the tone of your speech to suggest more slimy “professionalism” and less “sincerity,” it will also create even out the cadence of your speech, as well as prevent conspicuous pauses and hesitation while you remember or improvise.

World’s smallest Apache log analyser.

April 11th, 2008 by Alex Balashov

Right here:

#!/usr/bin/perl

##
# Simple Apache access log parser that yields useful statistics.
# Designed to serve basic web analysis needs.
#
# Alex Balashov 

use strict;
use warnings;

## GLOBALS ##
my      @hits = ();
#############

# Preload.

while() {
        chomp;

        if(/^([0-9.]+)\s+\-\s+\-\s+\[(.[^]]*)\]\s+\”(.[^”]*)\”\s+[0-9]+\s+[0-9]+
\s+\”(.[^”]+)\”/o) {
                push(@hits,
                        {
                                ‘ip_addr’ => $1,
                                ‘date’ => $2,
                                ‘request’ => $3,
                                ‘referrer’ => $4
                        });
        }
}

# Generate reports.

print “Access log report: \n\n”;

print “Top 20 IP addresses:\n” .
      “——————-\n\n”;

&sorted_report(’ip_addr’, 20);

print “\nTop 50 requests: \n” .
      “—————\n\n”;

&sorted_report(’request’, 50);

print “\nTop 50 referrers: \n” .
      “——————\n\n”;

&sorted_report(’referrer’, 50);

# Generate function to hash out unique requests and sort by a certain
# hashed criterion.

sub     sorted_report {
        my      ($key, $limit) = @_;
        my      %unique_tokens = ();

        foreach(@hits) {
                $unique_tokens{$_->{$key}} = 0 unless
                        exists ($unique_tokens{$_->{$key}});

                $unique_tokens{$_->{$key}} ++;
        }

        foreach(sort { $unique_tokens{$b} <=>
                        $unique_tokens{$a}
                     } keys %unique_tokens) {
                $limit — unless $limit == 0;

                printf ”  %-50s %d\n”, $_, $unique_tokens{$_};

                last if $limit == 0;
        }
}

Tells me everything I need to know. Try it yourself:

   cat access.log | perl analyse.pl

I apologise for my quietude lately. Rumours of my disappearance have been greatly exaggerated, but I have been busy running a business (see last post).

In the meantime:
khrushchev.jpg

From the second volume of Khruschev’s memoirs, the section “Plight of the Consumer”:


When the State mismanages agriculture, the average Soviet citizen suffers. How do we know when the State is mismanaging agriculture? I believe the food counters more than I believe the statistics I read. For that matter, I think the mood of the average housewife is a better indicator than the bureau of statistics about the health of our economy. As I’ve already said, our statisticians sometimes deliberately distort reality; the rosy figures they publish in the newspapers can’t be sold in the stores and made into soup.


What does the mood of the housewives tell us? What do the food counters in the stores indicate about the current level of our economy? They tell us that all is not well, that the State has failed to satisfy both the quantitative and qualitative demands of our consumers.


Even in Moscow, which has always enjoyed special privileges, shoppers can’t be sure of finding the meat they want. There’s also a shortage of eggs and poultry. In fact, if you’re determined to buy chicken, you’ll probably have to settle for poultry imported from Holland and other countries. These birds are usually too fat for our people’s taste, and the Dutch chicken has the additional disadvantage of smelling like fish.

Posted in Funny | 3 Comments »

Good news: I’m fired / bad news: I’m fired.

February 6th, 2008 by Alex Balashov

So, yes, for the first time in my adult life, I’m unemployed.

I was dismissed from the concern for which I have worked for the past two and a half months last Thursday. It is impossible for me to go into any detailed explanation in a public forum without greatly compromising my professional position and, as increasing numbers of people blogging about work-related matters are discovering, potentially creating legal exposure for myself for libel, defamation, breach of NDA, and whatever else employers can come up with.

gd41-2.gifIt suffices to say that my relationship with the business owner was problematic and not without recurring friction, and that various chronic personal choices, behaviours and shortcomings of mine are culpable here as well. No, I don’t feel that I bear full responsibility for this outcome or feel that my termination was somehow fair and reasonable, but it would simply be disingenuous and immoral to lay it all at my employer’s doorstep. It is as complicated as it is simple.

Contrary to what I always expected to be the case if I ended up in this position, I am actually all right at just this moment; if utilised in a fiscally conservative manner, I’ve got about ~2-3 months of cash reserves to float by on. But that’s not really a relief in any kind of grand scheme. As an individual living in downtown Atlanta, I have very high living costs and lead a high-overhead life. This would be a good time to be still stuck back in Athens with a few hundred dollars in recurring expenses, not in Atlanta with two mortgages, a car payment, HOA dues, insurance, and whatever other goodness.

Indeed, from the standpoint of my first instincts, it is quite terrifying to not have an income, and worse, no concrete, anticipated means of having one. I’ve never really been in this position before — even for a short time– since I got out of high school. The potential ramifications of financial failure in some or all of the above-mentioned asset / expenditure categories are absolutely not an option, without a doubt. And I have enough life experience to know all too well that two or three months is practically nothing compared to the average required turn-around time on a variety of economic pursuits, including jobseeking. Actually, finding a job in my field can easily take much longer than that.

That’s the take of the first instincts, anyway — yeah, despair and feel like a miserable failure, pretty much. But this is not the time to listen to those first instincts. This is a time to figure out what I’m going to do next and execute it. Quickly.

So, despite my despite my strong inherent anxiety about having ended up in this situation, I’ve decided I’m going to listen to my rational side and see this as an opportunity, not as a tragedy.

The truth is, ever since I developed my entrepreneurial ambitions with Evariste Systems in late 2006, I’ve wanted this. No, not to be fired, of course, nor to be jobless quite this very moment, nor to otherwise have my hand forced. However, in my head, I wasn’t planning on staying employed much longer; it’s hard to say how much, since I was so squeamish about taking risks and putting myself in this position of acute insecurity. Maybe a few months.

All this time, I’ve been miserable at every job I’ve been, pretty much irrespectively of whatever objective engagement I might have otherwise had with its content (although, the inane and bromidic content figuring into a lot of them didn’t help at all). It was the mere fact of the condition of employment in an existential sense.

I haven’t been able to entertain a professional self-concept that left me feeling “at home” or “comfortable” with what I was doing at a company; all I ever felt was that I was “stuck” there. Those who have known me in this period of my life can attest to a dense narrative replete with practically daily, unabating gripes about how impossible it is to try to do side-work, work on side-projects, and/or engage in some form of side-business on top of a taxing and exhausting “day job.” Oh, and my level of enthusiasm for working on anyone else’s stuff, engaging in their process, following their dicta, etc. when my mind and my heart is entirely about my own business ideas and ambitions. That enthusiasm has been on life support and barely breathing for a good while now. I just don’t care to do anything for anyone else in anyone’s office any more; all I can see and feel is how putting any spirit into it takes away time and energy from my own projects. I’ve found that it doesn’t even matter if the substance overlaps considerably with my personal technical and business interests; the mere fact of its being done in the context of employment asperates away all the joy.

I’ve also come into contact with a number of very viable and compelling opportunities throughout this time that I’ve had to pass up, neglect, and/or drop the ball on because there is no realistic way to execute them as side work in the evenings. There is just no way. And I’ve griped about it all the way, day after day, week after week.

Of course, all this hasn’t prevented the periodic burst of enthusiasm at something new and interesting, from a technical point of view, that has led people I’ve worked for to be really impressed with my skills and initiative. But it doesn’t stay, and before I know it, it’s back to the same old grind. By and large, I think I’ve been dwelling in mediocrity for quite some time now.

Pretty much everything I experienced in my daily work life was experienced in terms of how it takes away from my own business goals.

It is also fairly certain, upon reflection, that the mental and economic phenomenology of this mental disposition contributed to what ultimately got me fired. Besides, I’ve even expressed to myself and those close to me the occasional yearning to quit, be laid off or fired so that I could get the necessary kick in the pants to start pursuing what truly makes me happy. I just never took the steps. Laziness, security, inertia — let me just flip my excuse calendar here.

I’m done with employment. Another job — more of the same sort of thing — isn’t what I want. If you believe everything happens for a reason, then consider that I’ve had six jobs at five companies in the past three and a half years.1 Surely there’s a reason for that. It’s just not the cloth from which I seem to be cut, my increasing self-awareness in this area tells me.

I’m going to put my money where my mouth is, to so speak. This is what I’ve been wanting. I just never had the cajones to take the leap, and now someone’s kicked me off the edge.

I’m going into business for myself.

I’ve got a few things going for me.

For one, I leverage a good bit of quality relationships and industry contacts. I’ve become increasingly adept at selling myself at a high level, and have earned some respect and acclaim in doing that.

For another, a great deal of the preparation for this eventuality is already done. I’ve set up a great deal of business infrastructure for Evariste, including plans, documentation, specifications, procedures, and other information. I have learned a good deal of what is to know about accounting, taxes and finances relevant to small business, and have been doing the accounting for quite some time. On the technical side, I already have and/or lease services and equipment such as colocation space, servers, VoIP, etc.

Third, it’s what I really want to do with myself. There’s nothing like doing what you want to do. It produces results, it really does. In fact, I’m pleased to report that in my first few days of unemployment, I have already made enough money this month (on an accrual basis, at least) that I do not anticipate having to dip into my savings at all to pay my bills. And it’s only the 6th. I’m shooting for much more. That’s a lot better than the first-month stories of most people I know who have traveled this road.

I will save extensive discussion of my goals with Evariste for another time, but it suffices to say that its mission as a software vendor and service provider doesn’t have the sort of time-to-market that allows that mission to be realised in a time frame that would allow it to monetise my existence by the time that becomes necessary. In the mean time, it’s going to have to be freelance consulting - a business unit of Evariste I intended to build up all along in the form of Evariste Professional Services.

A little note about going into business. One needs to go into business for the right reasons. It is not a redeemable decision in and of itself.

Unless it is something of trivial complexity, don’t do it unless you are looking for a career change from ${the substance of whatever the product/value creation is} to management and business administration. I cannot possibly count the number of people that start a business of their own — and fail — thinking, “Well, it’s always more profitable to work for yourself, and I do XYZ well, so I’m going to start an XYZ business.” No!

If you’re a good programmer, that does not mean you should start a programming business. You may not have any ability and/or interest in what it takes to actually run a business. Even if you do, the most you’re going to end up doing is carving out a possibly decently-paying job for yourself, except you’re going to incur all the ineffiencies that come with the anxiety of not knowing where your next paycheck is going to come from, and working 90 hour weeks to ensure it does when you do. You would be much better off pursuing a career development track that finds you in a well-paid, sufficiently senior development / engineering / architecture role somewhere. It is quite possible to do that and make far, far more money for far less work than you’re going to do on your own, and lead a suitably happy life.

If you want to start a development company, it is because you want to do business as your next career. There needs to be a point — and that point needs to come as quickly as possible — when your coding ends. Businesspeople that started out as programmers pull this off because they have the right combination of personal qualities; among other things, including a certain extroverted nature and excellent people skills and political acumen (in a broad sense), they have a strong competency and abiding interest in economics and managemen. That is why they build business processes that can be replicated, scaled and delegated at decreasing marginal cost. If you are not knowledgeable and passionate about all that stuff, you shouldn’t be in business.

The second point is about growth, and applies especially to anything that falls in the province of “consulting.” Growth is the expression of successful business, and growth requires economies of scale and replication of process. If you do not properly plan and bring your goals into focus, you are going to simply end up reinventing the wheel every month with a one-off project that, however lucrative, cannot be reused in a strategic or cost-effective way. That is not a growth-oriented strategy. You’re just going to hit the limit of what one person can realistically do, get burned out, but be stuck in a position where you can’t get off this ride because you need to pay the bills. And you’ll be stuck there in perpetuity, in perpetual frustration, misery, and economic uncertainty.

I feel that I’m going into business for the right reasons. I’ve got a lot to learn, but this is what I truly love to do.

A part of me still twitches with anxiety and fear at my present situation, acutely conscious of the economic significance of every day that goes by for which I am not paid a comfortable salary. But no matter. I’m not looking back. It’s time to face this situation with courage, determination, and the best of the American “go get ‘em” entrepreneurial spirit in which this nation’s mythos rightly invests so much pride.

Besides, as I said above: failure is not an option.

1 As some of my close associates have rightly pointed out, this resume pedigree — combined with lack of a college degree — also conspires to somewhat disadvantage me when it comes to seeking employment. No, it’s not an insurmountable hurdle in an industry that values skills way, way above all that, but it’s a strike against me to appear to be this kind of job-hopping “loose cannon.” Unless it’s on a fixed contract basis, employers want employees as a long-term investment. I have averaged a new job every six months.

Posted in Business, Life | 1 Comment »

Telephony and I go way back, you see.

January 29th, 2008 by Alex Balashov

phone_cropped.jpg

Posted in Life | No Comments »

Limiting Perl regular expressions to one compilation.

January 23rd, 2008 by Alex Balashov

Here is one thing you can do to speed up the performance of your Perl regular expression matching: use the /o operator.

By default, when you iterate through a loop and apply a regular expression repeatedly, Perl recompiles the regular expression internally every time:

while() {
        chomp;
        if(/^[a-zA-Z]+/) {
                …
        }

}

This is actually wise, as Perl makes no assumption about whether your pattern is dynamically generated. If it changes every time, the expression would require recompilation:

while() {
        chomp;
        my $pattern = get_upper_or_lower_pattern($_);
        if(/$pattern/) {
                …
        }
}

But if you’re using the same pattern over and over, you may want to apply the /o operator in order to have the expression compiled only once:

while() {
        chomp;

        if(/^[a-zA-Z]+/o) {
                …
        }
}

While my benchmarking suggests that the performance benefits are relatively negligible for a simple regex like the one above, they can be quite considerable for a pattern of greater complexity.

Oh, and about that $2000…

January 20th, 2008 by Alex Balashov

I should add that my previous statement about airline ticket transferrability in connection with the French visa adventure was false.

I was thinking of other things to do with the tickets; push the date forward a few months, or send my mom to Paris with Lisa as she would have no issues getting a visa.

No such luck. Between Air France and Travelocity, it has made abundantly clear to me that this ticket offers no refunds, transfers, or changes. Period. No ands, buts, ors. Use the tickets or lose them.

I’ll try to lodge some kind of appeal with Air France authorities in Atlanta on Monday on grounds of exceptional circumstances, but I do not think it is going to do me any good.

So, in effect I’ve just given away about a $2000 subsidy to Air France. If any other airlines, including Qantas, Air Korea, JetBlue, Airtran, United, American, British Airways, Lufthansa, KLM, Aeroflot, Delta, Southwest, or Aeromexico are interested in also benefitting from my charitable work, please do not hesitate to contact me.

Posted in Fury, Life | No Comments »

It’s not often that I say, “oh, to be [some bureaucratic classification or another]” quite with as much conviction as I do today.

Don’t get me wrong, I’d like to be a US citizen; I’ve been in this country since I was six years old. I’m functionally American in most de facto respects. I have a citizenship application pending. But it would have been particularly handy today.

I’ll give you the straight dope on the bureaucratic aspects of traveling abroad as a foreign national of almost any non-Western country residing in the US. And I’m a relatively privileged one at that, as I am a US Permanent Resident and not here on some sort of student or work visa. I should really count myself among the fortunate in that my readmission back into the country in which I live and work is, by and large, relatively uncontroversial on that account. People here on sundry visas do not have that benefit.

I wanted to take my girlfriend Lisa to Paris for a few days over Valentine’s Day. Although she has spent considerable time in Britain, she has never been to the Continent, and I thought it’d be a wonderful romantic getaway. I have been, and of all the EU countries France strikes me as the one least problematic to visit for a relatively short term due to my relative established acquaintance with the logistics, having been there several times.

Sadly, the logistical preparations did not really materialise until the final days of December, which is an important lesson of what not to do learned unto itself. But from a theoretical standpoint, at least, it was sufficient lead time until mid-February to get everything necessary accomplished.

Americans can travel to a vast plethora of countries for short tourist stays with seldom more whipping out their passport, whose procurement and issuance is a relatively straightforward matter. Western Europeans also have this benefit to a large degree. It suffices to say that American and EU citizens can trot the globe with relative simplicity by the simple virtue of holding a passport.

However, Russian citizens, as well as those of most other countries, must apply to the diplomatic representative agency of the destination country for a visa to gain entry, even for a very short stay. So, that’s what I had to do.

Contrary to widespread belief about how such things are done, this actually cannot universally be done by mail. To obtain a French Schengen1 visa, a personal appearance at the consular division of the French embassy to the US is required for the appropriate jurisdiction. On previous occasions, my parents and I had to visit the French consulate in Atlanta from Athens to do this.

Fortunately, as it happens, I work in Buckhead at a distance of approximately 0.1 miles from the consulate - I can see my office building from its venue So, I was incredibly lucky in this regard; if you are a resident of some other areas of its far-reaching jurisdiction — which covers Alabama, North Carolina, South Carolina, Georgia, Mississippi, and Tennesee — you’ll have to make a trip to Atlanta just to physically deliver a bunch of paperwork. Have fun with that.

Furthermore, as of July 2007, you must make an appointment, which can have a lead time of several days to weeks depending on their case load and create unexpected delays if you are on a tight schedule. And if you arrive late for your appointment or fail to show up, you will be refused entry to the office and will have to make another appointment — have fun with that.

Among the requirements for the application include:

  • Your passport, which is held for the duration of processing (minimum two weeks).
  • Two copies of the application form.
  • Two passport-sized photographs taken within the last six months.
  • A copy of a greencard (US Permanent Resident Alien registration card, in my case) or other proof of US residency.
  • Airline reservation. (In practise, this means having your non-refundable airline tickets purchased in advance prior to the visa application process. At least, that’s what it meant in the time frame in which I was purchasing the tickets. If your application is denied, well, have fun with that.)
  • Evidence of medical insurance coverage for situations abroad at a limit of $39,000 or above, or travel insurance (which I had to purchase).
  • Proof of employment in the US.
  • Two last bank statements to prove sufficient funds to cover the cost of the trip.
  • Evidence of hotel reservation in France (and if securing this requires a non-refundable down payment, have fun with that).
  • Proof of residence within the consular jurisdiction - copies of a driver’s licence.

If you lead a very busy life, or live in a city where any short errand takes at least a few hours because of traffic, and/or do not have time to prepare such things, have fun with that - no visa. It certainly was a problem for me; when am I going to find time to have passport photos taken? Any such task in Atlanta requires the commitment of a very substantial portion of one’s evening, to the extent that it’s even possible outside of standard business hours. Also, I do not receive paper statements from any of my banks and do everything online, and online banking interfaces do not display my name, as would be necessary to evidence the affiliation of the bank account with my personal identity.

(Note to geeks: Quixotic conceptions of database referential integrity will not save you here! I thought that providing a pay stub that references the same checking account number that appears on my bank statement should provide sufficient — if derivative — proof of the authenticity of my bank account. But consular officials don’t do “foreign keys,” sorry.)

But I took care of the documentation nevertheless and arrived yesterday for my appointment. I appreciate their generosity in reluctantly accommodating my slight tardiness for reasons entirely beyond my control.

My application was looked over and denied on a passport technicality. The Russian Federation passport on which I would be traveling expires a month after my firmly committed date of return to the US. Unbeknownst to me, it is required that my passport be valid for at least 90 days subsequent to my return in order for a visa to be issued.

I was told this is actually a US Customs and Immigration Service (formerly the INS) rule, and that I might have trouble re-entering the US with a passport so near expiration. However, I consider it highly unlikely that I would actually be detained at the Atlanta port-of-entry as a greencard-wielding permanent resident with a valid passport; after all, my passport expires mid-March, does it not? What meaning do expiration dates have if they are not to be taken literally?

I think it is far more likely that they do not wish to assume liability for an extraordinary situation — such as a grave medical emergency — in which I would be stuck in France beyond my passport’s expiration, and then really encounter problems at the American port-of-entry. Most international conventions on this subject stipulate that in this situation, I would be obligated to return to France and deal with the problem there before attempting to return.

Of course, I find all this something of a mystery, given that my Russian passport is just a travel document, principally of interest to other nations admitting me. I am a permanent resident here - I live and work here; should my greencard not be the basis on which I am admitted back into the US? USCIS doesn’t take any interest in my foreign passport any other time, nor should it, inherently.

So, what does one do in this situation, with a month left before the trip?

Well, I suppose I can renew my passport at the Russian consulate in Washington DC. This typically takes 4-6 months, during which one does not have one’s passport in possession and cannot travel. This actually a considerable improvement; in the past, one was required to physically appear at the consulate in Washington to make this happen. I have made that trip twice with my parents, and each time there were some technical difficulties in my case stemming from the need to validate me with the civil registry in Moscow. I do not have an internal Russian passport (the principal form of government-issued personal identification in Russia) nor a Moscow residency and work permit, seeing as I’ve spent only the first six years of my life there. But now, it is actually possible to do this by mail! Hallelujah! Now I can do it without using up the pittance of vacation time I’ve acrued, save on the expense, and other things that are typically an impediment to free-wheeling bureaucratic field trips.

There is no way to expedite the process. For those unfamiliar with the legacy of Soviet bureaucracy, it suffices merely to say that Russian officials are exceptionally hard-nosed, unfriendly, and unyielding in every respect possible. I would take any American federal bureaucracy any day over that. What’s more, the Russian foreign ministry has absolutely no incentive to expediently provide for the travel needs of Russian nationals living abroad; what the hell do they care about my travel wants and needs?

Another option might have been to extend the validity of my passport without actually renewing it, which is a much simpler procedure and can be done by mail also. We called the Russian consulate, and were told this is no longer possible.

In some cases, USCIS can issue permanent residents Form I-151, a travel document that can be used in lieu of a passport. This is typically done in situations in which a person for some reason “cannot” obtain a passport from one’s native government, and my guess is it primarily exists to serve the needs of stateless persons, refugees, or asylum seekers. I am not sure that my situation would accord with whatever statutory notion of “cannot” is operative here.

An immigration lawyer with whom my family is acquainted told me that in any case, the wait time on this travel document is at the very least several months, if not longer. I will try to make an appointment with an information officer at the USCIS field office here in Atlanta to see if it is even possible for me to obtain it, and whether the matter can somehow be expedited, but between those two obstacles the probability is virtually nil.

So, I’m basically out of luck, and am not going to Paris. The bureaucracy has, in effect, told me to see Figure 1.

Now, I am not so far up the demagogical creek that I cannot see the fundamental reasons why these visa regimes exist, or why I ended up in this situation.

I understand that from the point of view of EU and American governments, Russians, unlike nationals of the former jurisdictions, essentially belong to the same category as most Third World immigrants and other sorts of undesirables trying to break down the floodgates into First World nations. In the post-Soviet period, there is indeed a massive exodus of Eastern European immigration to more prosperous parts of the world.

I’m basically the same as a Salvadoran or a Guatemalan or a Mexican or an Angolan. The reasons for the visa application requirements outlined above boil down to the fact that the French government needs assuaging that I am indeed going there for a short jaunt, unlike all those Boat People. Who’s to say I am not some Russian schmuck on an expiring American student visa looking for a one-way trip to France to hole up as an illegal immigrant? They need evidence of my intent, ability and incentive to return to the US, and to know that I am established here and would have no particularly evident reason to do otherwise and stay in France.

They need insurance coverage to make sure that in the event of a catastrophe, I do not pose an undue fiscal burden on the French state, whose expenditures on public services, after all, are not intended for consumption by visiting foreign nationals. This isn’t a concern they have about Americans, of course, ’cause they ain’t po freeloadas like we Eastern European Boat People.

I get it.

But, as for this arcane requirement that my passport be valid for a certain period following my return, I am absolutely mystified. Since when is an expiration date not an expiration date? I can use my credit card on the last day of the month before it expires, right? And why didn’t anyone tell me about this?

So, to the extent that American port-of-entry rules are germane: that’s where I am after sixteen years in this country. I’ve been here since 1992, have spent nearly my whole life here, a good portion of it in conditions of considerable economic hardship well below our level of material subsistence and security in Russia. I grew up here, doing things the right way — the legal way — at every step.

I guess I just get caught in the cracks of policy like everyone else. It’s the same reason all of you have to go through security at the airport.

The airline tickets are valid for about a year after their purchase. The dates on them can be moved to late summer / early fall, and I have every confidence that Lisa and I will take our trip eventually.

But not on Valentine’s Day. All I wanted to do was visit Paris for a few days, leave plenty of tourism money behind, and return to my home in the US, where I am a comfortably established resident and contributor to the economy. And this is what I get.

Not sure what final thought or thematic meta-message I can offer here. Um, “I hate bureaucracy?” What else is new? It’s an awful aspect of life we have to deal with, and which we can do not a damned thing about. Bad publicity on blogs offers no incentives for improvement. :-) Governments care about the 101st Airborne, not the 101st Fighting Keyboarders. Lodge a protest. Sew it on a pillow. Write a letter. Beg. Plead. See Figure 1.

1 The Schengen Zone consists of countries party to the Schengen Treaty - a subset of the European Union that has no internal border controls amongst member countries. A Schengen Visa granted to any point of entry into the Zone will allow you to travel freely within it to any other Schengen country.