<TABLE> <S> <C>
<PAGE>
<ARTICLE> 5
<MULTIPLIER> 1,000
<S> <C> <C>
<PERIOD-TYPE> YEAR 6-MOS
<FISCAL-YEAR-END> DEC-31-1999 JUN-30-2000
<PERIOD-START> JAN-01-1999 JAN-01-2000
<PERIOD-END> DEC-31-1999 JUN-30-2000
<CASH> 11,626 10,003
<SECURITIES> 0 0
<RECEIVABLES> 1,760 3,586
<ALLOWANCES> (60) (60)
<INVENTORY> 0 0
<CURRENT-ASSETS> 233 907
<PP&E> 11,146 20,855
<DEPRECIATION> (2,926) (4,213)
<TOTAL-ASSETS> 24,447 33,804
<CURRENT-LIABILITIES> 4,486 8,951
<BONDS> 3,825 7,307
0 0
14,000 14,000
<COMMON> 1,740 2,340
<OTHER-SE> (1,467) (1,022)
<TOTAL-LIABILITY-AND-EQUITY> 24,477 33,804
<SALES> 7,994 6,849
<TOTAL-REVENUES> 7,994 6,849
<CGS> 3,648 3,560
<TOTAL-COSTS> 5,488 6,029
<OTHER-EXPENSES> 679 329
<LOSS-PROVISION> 0 0
<INTEREST-EXPENSE> (325) (251)
<INCOME-PRETAX> 2,860 898
<INCOME-TAX> 1,230 563
<INCOME-CONTINUING> 1,630 335
<DISCONTINUED> 0 0
<EXTRAORDINARY> 0 0
<CHANGES> 0 0
<NET-INCOME> 1,630 335
<EPS-BASIC> 0.31 0.06
<EPS-DILUTED> 0.07 0.02
</TABLE>