michaelsilver.us Software, programming and whatever.

November 27, 2007

Where to host downloads?

Filed under: Programming — Michael Silver @ 8:35 pm

After I completed and published a C# version of my Nutrition Facts software over the weekend, I ran into a problem. The hits to my website jumped and the downloads were killing my bandwidth (I host that site from my house). What to do?

I could move my site to a web host, but I’ve had bad luck and losing control over the server makes me unduely nervous. Besides, it could take days to move everything over and test the new site.

The second option was finding an internet storage provider and using them as a download site. This reminded me of a press release some time ago from Amazon about new web services they were offering.

Enter Amazon S3.

S3 stands for Simple Storage Service. It’s a web service that offers unlimited storage at a metered price and the prices are VERY low (at least for my needs). For example, for every GB that is downloaded I would have to pay $0.18. There is a whole schedule of the costs and while they charge for almost everything, the prices are often as cheap as $0.01. (a price list is available at the link above)

Just doing some quick calculations I would spend about $1.50 per month to use S3 as a download site. Not a bad price!

The next confusing step was how to access it. Everything is done via web seRvice calls, function calls for the internet. This means I would need a special application to upload my files. Turns out there are several. A friend of mine used one that created a drive letter on your windows computer. I opted for a firefox plugin called S3Fox, since I often have a browser open anyway.

S3Fox is a dual paned file manager, just like your typical ftp client. You drop and drag the files you want from your local drive to the S3 drive (or visa versa).

Since there is no signup fee, I decided to jump and get myself an S3 account. The whole process took about 10 seconds before my account was activeThere was only one issue still left to resolve. How do I create a link to the files I upload to S3, allowing anyone to download. Turns out the answer was painfully simple.

In the firefox plugin, right clicking on a file in your S3 account allows you to 1) open access to everyone on the internet to the specific file (you can limit it to certain email address, etc, but I haven’t explored this) and 2) get a URL allowing access to the files directly from a browser. Perfect!

I have now been using S3 for 3 whole days and I am up to $0.09 in charges. All my primary download links now point to the files in my S3 account. I am so happy with it, that I may backup important documents like pictures, etc. I figure it will cost me about $2.50 per month to storage fees.

I was convinced this was my solution.

June 3, 2007

Simple Campaign Finance Reform

Filed under: Politics,Proposals — Michael Silver @ 1:36 pm

I am on the AFA mailing list, not because I agree with them, I actually disagree with almost everything they say, but I find their boycots of Ford and Disney World (and others) rather humorous.

Believe it or not I read each email they send to me and recently it dawned on me that they had a valid point.  Should congress limit ones ability to convince someone else to vote for a candidate?  Congress, usually with McCain and Feingold (whose web site looks like a professors) leading the charge.  While I agree wholehardedly that the government needs campaign finance reform, certain aspects of it bother me.  For example, should I be allowed to email my friends with my opinion of candidates for office?  Should the AFA be allowed to?  What about an opt-in mailing list?

Another sticking point is whether limits on donations restrict one’s first amendment right to free speech?  It appears more and more that it does not, but as always the answer is more complicated as you break the donations up between soft money, hard money, etc.  Mitch McConnell was one of the ones leading the charge against reform, or at least McCain/Feingold’s version of reform.

So I offer a simple solution.  It places on the burden on those taking donations.  Take all the donations you want but you cannot vote on any issues relating to those you took donations from.  In other words all conflicts of interest must be avoided.  This would also work in reverse.  If you are sueing Microsoft as an Attorney General and Microsoft donates money to your campaign or your party, you must return the funds, unlike Charlie Condon did[abstract].  The neuonce of that last sentence is the word party.  If you are a member of a political party and that party gives you money or any direct campaign help, like ads, etc, the party becomes transparent and the donations to the party are treated as if they were made to directly to the candidate.

Let’s  run through some examaple to make sure the idea is clear.

Senator Larry Smith takes a donation from the RIAA and then a bill that would make music piracy a federal crime comes to the floor.  Senator Smith cannot vote on the bill.  If he does, he could be charged with a mistermeanor for conflict of interest, or perhaps even bribery, even if his vote was not beneficial to the RIAA.

Senator Lucy Samuels receives a donation from Ford and she is about to vote on raising the fuel effeiecncy standards.  She must either not vote or return the funds to Ford.

Senator Bill Lewis receives money from a PAC (or his party) and the PAC (or his party) received money from Exxon.  He cannot vote on any legislation that may effect Exxon.  This includes all riders.  So if the federal budget includes money for oil subsides, Mr. Lewis can’t even vote on the budget.  At first there will be only a handful of senators eligible to vote since bills often have so many riders.

What will happen in that later example is the PAC will simply not donate to the candidate.  They will run attack ads against his opponents, etc.  Fine.  The goal shouldn’t be to get all money out of politics.  It should be to removed the conflicts of interest that are rampant in our system.  Candidates take money from corporations and then routinely vote on legislation that directly affects the corporations.

Judges must recuse themselves when they have a realationship to a case before them.  Why should congress be any different?  Currently, saying there is no relationship is somehow acceptable.  It shouldn’t be and they should be held accountable.

To make this work, the Attorney General needs to no longer be a politcal appointee and the president should not be allowed to fire them.  They should be appointed by the Supreme Court or via some apolitical method.  If the AG is political he could pursue only those not in his party.

This solution to campaign finance reform would also reduce pork barrel projects.

Here is an interesting question.  If the president took money from Boeing and a bill came to his desk for purchasing military airplanes from another company, could he veto it?  If he were not permitted to veto it, legislators could include riders that would prevent the president from vetoing any bill.  Perhaps the Executive branch would need to be exempt from the law.

February 28, 2007

CodeGear’s Next Step

Filed under: D,Delphi,Programming,Proposals — Michael Silver @ 3:19 am

As Delphi developers, we’re always reminded how Delphi won’t make it. How it’s on the verge of extinction. How Borland (nowCodeGear) can’t stand up to Microsoft, Java and open source languages. I always ignored the doomsday talk. I knew it wasn’t true. Sure enough, ten years after installing Delphi, I was still using it.

The same naysayers are still around, saying Delphi is doomed. Unfortunately, now they are right. Delphi is doomed. Let me clarify what doomed means. Delphi’s heyday is over. It may continue to live on as a niche player, but it will no longer enjoy the robust community and innovative thinking that went into that first few versions.

Before I examine the evidence, let me express my sadness at the revelation. I take no joy in reaching this conclusion. Delphi was a remarkable language and development platform. It was the perfect answer to Visual Basic. It had the power and speed of C yet was as easy to use as VB. It is the father of C# and it’s similarities can be seen throughout.

This article isn’t just about the end of Delphi, but the future of Delphi (Delphi is dead, long live Delphi), C/C++ and CodeGear.

So how do I reach the conclusion that Delphi is doomed?

Community

The community that once thrived is no longer as robust. To be fair, some of it has shifted off shore. While Delphi’s decline is evident in the United States, it is still going strong in other countries, but newsgroups aren’t seeing the volume they use to. Email lists are quiet. Open source projects done in Delphi seem to be stagnating. It’s like everyone left the building and forgot to turn off the lights.

.NET

Microsoft dealt CodeGear a blow by first stealing Anders and then releasing the .NET platform. Where does Delphi go from here? C# is more advanced than Delphi and it muddies the water with the CLR and managed code. Should Delphi continue to advance the win32 platform or jump ship to .NET? This confusion in the market place only hurts Delphi. I understand they are now working on a version of Delphi that compiles to either win32 or .NET. I hope it works more seemlessly than previous versions.

Lack of Innovation

Delphi is behind the pack. I remember the excitement when Delphi got it’s foreach statement. While that was was being added to Delphi other languages were getting closures, mix-ins, class exstentions, generics, contracts and numerous other languages features. Poor Delphi was ignored and I don’t blame it on the the diversion of resources used to create Kylix or Delphi.net. Delphi has been a slow innovator since about Delphi 3.

Delphi also tried to advance into the web realm with very limited success. I can’t really blame them for this as it was mostly dominated by open source scripting languages and java.

The D Solution

How hoes does CodeGear save itself? While a guaranteed solution is impossible, some ambitious moves must be made.  CodeGear seems to be moving in this direction with Delphi for PHP (and Delphi for Ruby on the way) but they need to go a step further:  Purchase the rights to D [wikipedia:D].  D the programming language.

D was created by Walter Bright who also worked on the Symantec C++ compiler and has been working on compilers for around 20 years. D just had it’s 1.0 release and is quite impressive. It’s compiled code usually runs as fast or faster than equivalent C++ code. D is starting to get noticed and others have even noted that D is a diamond in the rough just waiting to be polished. D also combines all the goodness of C and C++ and adds in the latest language features, including support for unit tests et al, and leaves out much of what people don’t like. Oh, and CodeGear needs to keep Walter in charge of D.

Walter needs to be given the freedom to advance the language as he deems necessary. Once the marketers and bureaucrats take over, the language stagnates. While I use to think language stagnation is a good thing (it prevents old code from breaking), I now think since change is a part of life, languages must continue to change and adapt otherwise they die.

So how does this solve CodeGear’s problem? Well it doesn’t immediately, but it does give CodeGear one of the most impressive languages available and it removes all the arguments about Delphi not being ready for prime time (i.e. being in Pascal, owned by Borland, etc). While Delphi is one of the best languages and environments available it gets little respect or attention and never will. By moving to D it removes the need to modernize and bring Delphi up to date and also gives CodeGear the advantage of having the successor to C and C++. Frankly I prefer the C syntax anyway and I think most serious developers do too (with exceptions, of course).

Once CodeGear has D, they need t0 submit it to the standards board and release a compiler and standard library on numerous platforms as open source, even if unsupported directly by CodeGear. The official CodeGear compiler could remain closed source, but it is critical that there be a GLPed version of the compiler however, otherwise widespread adoption will be limited. D is good enough to gain traction on it’s own (and has been), but with CodeGear’s backing it will get to skip a few places in line.

Open sourcers would get a FAST, stable compiler to eventually replace C that they can count on being around for a while since it’s open source.  Delphi developers would get a successor that is modernized and CodeGear lays claim to a state of the art language.  That would make for some great advertising.

CodeGear must release an IDE for D, perhaps as an eclipse plugin. I am not convinced an eclipse plugin is the best route, but that’s the path they are taking with JBuilder. Eclipse stills seems behind the curve compared to the last Delphi IDE (Delphi 2005) I used. The IDE can be strictly for profit and doesn’t have to be open source.

Once CodeGear gets D released into the wild, I would expect heads to turn. The open sourcers would be pleased with it since it has a GPL license. Corporate developers (like myself) will be happy since it has the ease of Delphi, C syntax and modernized. The goal here is to impress both the open source community and paying customers. This is a terribly elusive task but has been done by MySQL and others.  If CodeGear walks this tightrope succesfully, they could end up with the most used language in the world, assuming D overtakes C and C++.

The existing Delphi could continue and perhaps this new product would be called Delphi for D or something consistent with their new naming conventions, but the future would be with D and not Pascal (In fact it already is, regardless if CodeGear buys D).

The .NET Problem

While moving to D would be very risky, there are other problems, most notably .NET. How do you integrate D with .NET? While I don’t advocate moving D to the .NET platform, D will need a simple interface into the framework. I am ignorant on how easy this would be. MS seems to do something similar with their C++ for .NET, but I believe it is still managed code.

I would like to see a bridge allowing D to make calls into the framework when needed, but still remain unmanaged code. I have no desire to see D compiling to IL.

If the .NET problem can be solved (and perhaps it’s easier than I think), CodeGear needs to seriously look at D.

February 21, 2007

No Easy Database Choices

Filed under: Database,Programming,Ruby,Ruby on Rails,Web Development — Michael Silver @ 12:49 am

As I try to get NutritionFacts up and running on the web with Ruby on Rails I need to select a database to use. Obviously, in the open source realm, MySQL is the forerunner or at least the first one to look at since it’s use is so widespread.

I have a few criteria that any database must meet:

  1. Transactions
  2. Full-Text Search
  3. Cross-platform (my server runs FreeBSD, I run WindowsXP)
  4. Have bindings for Rails
  5. Open source
  6. Server Process

In taking a closer look, MySQL is not perfect, in fact it’s missing some critical features. If you use the MyISAM storage (MySQL offers numerous methods of storing data, each offering different features), you get full text searching, but no transactions. I have the need for transactions since the data users may enter span numerous tables. If you use the InnoDB storage engine you get transactions (and row locking instead of table locking), but no full text search.

Well perhaps another database would have both transactions and full text searching. I moved my search to SQLite which does have both, but it doesn’t have a server process to manage access, which could mean problems on a busy site. Not good.

Next in line is PostgreSQL. Very impressive feature set but full test search is through an addon called TSearch2.

The standard instructions for TSearch2 are rather complex, but thanks to the Google and the Internets (aka the series of tubes), there are some good guides for setting it up. It still seems like a solution prone to break though, since it requires a trigger and an additional field in the tables to be indexed. I also don’t know about the quality of the tools to access and manage PostgreSQL, although phppgadmin looks decent enough.

Just to rule out an other potential canidates I also looked at Firebird which has transactions
and is cross-platform and has rails bindings. Unfortunately, no full text search.

Next in line: Ingres. I took a quick look and frankly I don’t have the energy to explore it. It doesn’t seem to have as much support in the open source community and I couldn’t find any documentation on full text searches, so I presume it doesn’t offer it.

I am fresh out of databases to explore. Until I can choose a database (and I am leaning towards PostgreSQL) I am going to useFerret and the acts_as_ferret plugin for Rails to preform the full text searches. (Tutorial) While Ferret is not a bad solution, it does appear to be slightly slower than the MySQL full text searching and the potential exists for the index to become out of sync with the database since it is not stored (or even related) to the database. Thankfully, with Rails I can use this solution for now and when I find a better one, switching will be trivial.

Summary:

Database Full Text Search Transactions Server Process
MySQL (MyISAM) Yes No Yes
MySQL (InnoDB) No Yes Yes
SQLite Yes Yes No
PostgreSQL Plugin Yes Yes
Firebird No Yes Yes
Ingres No Yes Yes

February 17, 2007

Web Development is Fun?!?

Filed under: Programming,Ruby,Ruby on Rails,Web Development — Michael Silver @ 2:25 am

While most of my expertise has been in developing desktop applications, I was recently moved to our web team. I have written a web application before, an ISAPI dll at that, and as expected, web development has only improved marginally since my last forray.

At work we use C# and VB.NET with ASP.NET. While I love the C# syntax and Visual Studio is impressive, web development is still tedious. Even simple sites can takes days or weeks to implement. While some of this is due to ignorance, some is from lack of innovation in the web development realm.

I had heard of and tinkered with PHP, Perl, Python and the essentially defunct ASP and none impressed me for web development. They are behind ASP.NET technologically and usually combine business logic right into the web page, since language limitations made it the easiest route. Yuk!

Another option, Java Server Pages, are far too complex.

A few friends at work keep me up to date on various programming languages and language features they encounter. Such friends are always great to hang around since they have a passion for innovation, whether the innovation is from them or someone else. Sure enough one introduced me to Ruby on Rails, a framework for developing web sites based on the Ruby programming language.

I had heard of Ruby previously, but I didn’t really have much desire to check out another scripting language, that is until Rails came along.

I don’t know all the details, but Ruby supposedly offers features that make the creation of Rails possible. While similar frameworks exist for PHP, Python, Java and C#, they are all hamstrung, although some only to a small degree, by language limitations.

With all the press Rails is getting, I had no choice but to take a closer look. Next, I needed a project. Viola Nutrition Facts.

Nutrition Facts is an application I wrote for windows that allows quick searching of a food database to determine carb or fat counts, etc. This would be a perfect project to move to the web.

So I am off and running developing my first web app with Rails. While I am still in the early stages, I have noticed something. Rails makes programming fun. It eases the tedious programming tasks associated with the web. WOW! Web development can be fun!

As I progress through my project, I will create new articles to detail the problems and successes I encounter.

Happy Web Programming

January 13, 2006

Software Review: Picasa

Filed under: Recommended,Reviews,Software — Michael Silver @ 2:27 am

http://picasa.google.com/index.html

PicassaVersion 2.0

I searched long and hard for a good photo manager to manage our growing digital collection. I looked at Phoa, but due stability problems, I stopped using it. There were several commercial products, but I have been burned too many times paying for a product that soon becomes obsolete or often the product is just too expensive.

Enter Google. Google bought Picasa on July 13, 2004 and quickly offered it for free. I installed and kicked the tires and was hooked. Here are the features that make it stand out from other products:

  • Pictures on disk are never modified. Picasa allows you to sharpen (and a very good sharpen at that) and apply many adjustments to your pictures. Ingeniously, it does not modify the picture, but stores the changes seperatly, allowing you to go back and undo adjustments at a later date. This feature is invaluable and will help preserve your picture collection from edit after edit.
  • Smart crop. This may be a common feature, but is great for printing pictures. It allows you to crop at the standard photo print sizes, 4×6, 5×7 and 8×10.  This ensures your pictures fit the entire print.  Since the actual picture is never modified, you can go back and change the 4×6 crop to a 5×7 with ease.  You can also perform a freeform crop which doesn’t bind you to any of the existing ratios.
  • Terrific UI. The user interface is what hooks you initially. It is very pleasing to the eyes and easy to navigate. All picture adjustments are very fast and intuitive.  Resizing all thumbnails is painless and fast.
  • Picture Tray. This makes selecting pictures a breeze. You add them to the tray and then perform all the actions you want on the tray. It works for rotating, printing, emailing (which also allows you to automatically resize), ordering prints or exporting.
  • Numerous Other features. There is simple too much to list here, but this is a sample: Send pictures to one of many popular print services, ability to handle movies, can import right from scanner or camera, resizable thumbnails, gift CD creation, Poster printing (prints multiple pictures and you paste them together), crop, fine rotation, redeye removal, auto and manual color, auto and manual contrast, numerous brightness adjustments. Numerous effects: sharpen, sepia, B&W, warmify, file grain, tint, saturation, soft focus, glow, filtered B&W, focal B&W, graduated tint.

Problems with Picasa (Yes, it isn’t perfect, but the problems are worth living with):

  • TAGS!! One of the requirements I had for album software was to be able to easily tag pictures so I could perform searches. Picasa does have Keywords and it partials meets my needs, in that you can search very easily on any keyword, however editing them is a difficult process. It does not remember previous keywords, so you have to re-enter them every time. There is no reason there can’t be a drop down list to choose from, and preferably a tree list of keywords. The keyword dialog isn’t even available from the right menu.
  • Scratch removal. While there numerous effects and adjustments that can be made to pictures, being able to remove scratches from scanned pictures would eliminate the need to other photo editing software.
  • Library Disappears. I have my picture library on a network drive. On occasion I will lose the network connection and thus the drive letter. When this happens and I load Picasa, it forgets about all the images in it’s library. Picasa will rediscover the pictures again (slowly), if the directory is set to autodiscover new pictures. It does remember all the edits you made to pictures, but it would be nice if it could recover more gracefully. This also won’t affect most people.
  • No direct export to Gallery. I will admit this is hard to call a problem, and it is a little selfish, but it sure would be nice. I use software called Gallery to display pictures on the Internet. Being able to export selected pictures right into Gallery, or for that matter Flickr or other popular photo sites would be the bomb. To their credit, you can export to Blogger, which is also owned by Google and is a free service. Ideally, some sort of API or SDK would be nice allowing the amazing gallery developers to hook in. There was even some code written for Gallery to import Picasa exports, but I have yet to look at it.
  • Problematic DVD backups. I have attempted to backup collections to DVD, but it something goes wrong with the process, you pretty much have to start over. I still prefer the old method of just copying the actual files to DVDs.

Picasa is one of those applications I simply can’t live with out. It is a true photo management system. It isn’t a replacement for simple photo viewers like Irfanview, and it isn’t suppose to be. If you take digital pictures, you need this software to manage your collection, no questions asked.

January 9, 2006

Software Review: HotKeys

Filed under: Recommended,Reviews,Software — Michael Silver @ 12:08 am

HotKeyshttp://www.qliner.com/hotkeys/

Version 1.2.1

HotKeys doesn’t really do much, and there are probably other programs that do the same thing. What sets HotKeys apart from the pack is the interface and the use of the Caps Lock key (and a few built in functions).

HotKeys allows you to set hot key combinations with the windows keys, found at the bottom of your keyboard (at least most keyboards). There are several that are already built into Windows, such as win-i for Internet Explorer, etc. With HotKeys, you can reprogram the existing ones and add your own by mearly dragging a shortcut or application icon onto a keyboard that appears when you hold down one of the windows keys for a few seconds.

HotKeys has two built in functions, which are very nice. win-PageUp and win-PageDown control speaker volume and display a nice graphic to show the current volume level. win-T displays a clock with the current time.

I have always preferred keyboards that click when you type and those have become hard to find or when found, expensive. I still use a vintage 1987 IBM keyboard. No other keyboard is as durable or has the same feel. The down side to using older keyboards is they don’t have many of the specialized buttons the new ones do, such as volume or even the common windows keys. While I am old school, I still would prefer some of the luxuries of the newer keyboards. HotKeys fills this much needed void. You can program it to use the Caps Lock key as a windows key. This opens up all the windows shortcuts for us retro programmers. The down side is I no longer have a Caps Lock key, although it’s really a good trade off. After all, when was the last time you used your Caps Lock key?

Even if you don’t have a retro keyboard, I highly recommend this software.

Software Review: Find and Run Robot

Filed under: Recommended,Reviews,Software — Michael Silver @ 12:05 am

Find And Run RobotVersion 1.07.21

http://www.donationcoder.com/Software/Mouser/findrun/

Find and Run Robot allows you to run applications quickly by using a handful of keystrokes. I find it useful instead of using the Quicklaunch bar included with windows. It does require you know the name of the application you wish to run.
The Find and Run Robot sits in your icon tray and upon pressing Alt-Spacebar a quick search dialog appears. You can then begin typing the application you want to run and as you type it will guess the application you want to run and display it in the list. Once you application appears in the list, you just hit enter and you application loads. It requires no setup since it builds it’s index of applications right from the Quicklaunch bar and the Start menu. You can also tell it to index the Program Files dir or any other location. You can also create shortcuts, name them whatever you want and they will appear in the Find and Run RObot with the name you entered.

I use it both at work and at home and while I don’t feel naked without, it is a great utility worth installing. It seems to appeal to those who use or feel comfortable with a command prompt, since we probably type a little faster and the mouse usually slows us down when having to stop and click on the Start button.

The Alt-Spacebar combination does conflict with Window’ default behavior which is to show the control menu. I have set it up to use the Windows-A key combination, via HotKeys, which eliminates this conflict. It also works, by default, with the Pause key. While the Pause key is used for almost nothing, it is still a bit of stretch when you want to load an application quickly.

January 8, 2006

Software Review: StrokeIt

Filed under: Recommended,Reviews,Software — Michael Silver @ 1:39 am

StrokeIthttp://www.tcbmi.com/strokeit/

Version 0.9.5

StrokeIt is one of those applications you can’t live with out, at least not if you have a mouse. Once installed, you wonder how you got along with out it. It’s grip on you becomes apparent when you use someone else’s computer that doesn’t have it installed.

What does it do? StrokeIt allows you to use mouse gestures with any application in Windows. What are mouse gestures? Click and hold the right mouse button and move the mouse in the form of a C or L, or dash or any other movement. That is a mouse gesture.

With StrokeIt you can program these gestures to perform numerous functions. For example, to close an application, I click and hold the right mouse button and draw a small C with my mouse. The application I draw the C on closes. It is much quicker than pressing Alt-F4 or clicking File and then Exit since you can do it anywhere on the application’s window, even if the window isn’t in the foreground. Also, as you draw a gesture it writes the gesture on the screen in blue, although I have heard turning this feature off improves reliability, which only suffers when processor is being slammed. In these situations, a mouse gesture may not work since the processor is too busy to process the mouse stroke.

I first encountered mouse gestures in the Opera web browser, but I had to be talked into using them by a friend. Once they were turned on I was hooked and scratched my head why Microsoft didn’t think of it (since they have a multi-billion dollar research budget).

Stroke it comes with tons of default gestures, so many that you may never need to add your own. You can also customize gestures to work differently among applications.

I highly recommend this software and install on all my computers, except laptops, when I limited to a touch pad.

StrokeIt is Donationware.

April 9, 2005

Proposal: Public Network Infrastructure

Filed under: Politics,Proposals — Michael Silver @ 10:45 pm

Want cheap Internet access? How about cheap cable TV? Cheap phone service?

The simple solution is to let the government build a fiber network to every home in the nation.

I can hear the Libertarians and right-wingers say, “Whoa!! The government own the network?!?! That is socialism!”, so let me first say the government owning something is not inherently evil. Judge what I am saying by it’s merits and don’t paint in broad brush strokes. Don’t be fooled by the claim, “private ownership reduces prices.” This is not true. A richly competitive market is what reduces prices. In fact, in a few cases, government ownership actually spurs competition. This proposal is a perfect example.

Another good example are the roadways. The goverment owns the roads and maintains them. In turn they reduce prices for all of us by promoting competition. Businesses are able to transport goods cheaply and people can drive to any grocery store they want.

Why not follow this example and do the same thing with a fiber network. This would open up a digital highway that would create compeition among digital providers.

Let me explain my proposal in more detail and it’s benefits will become more obvious.

The government should install fiber optic cable to every house in America, or at least 99% of houses. Both the running of cable and installation of the infrastructure will be very expensive, but this will be recouped over time.

Keep in mind, this fiber network is not a replacement for the Internet. The two networks are seperate. You could be connected to the fiber network and not the Intenet and visa versa.

There will become two providers of service on this new fiber optic network. Tier 1 and tier 2. Tier 1 providers would receive direct static IP connections to a house. This would be on a private network and the provider will have to pay fees for this connection. I will discuss these fees in more detail later.

Tier 2 providers would provide services through a tier one provider. There would be no network fees for such access. They wouldn’t have to register their services with the government.

In case I’ve lost you, let me provide some examples. The government connects your house to the fiber network. You shop around ISP’s and select one that provides Internet access over the fiber network. The ISP would be a tier one provider and a small part of your monthly fee would go to the government to pay for the infrastructure. The ISP would tier one since they would require an IP address to your house.

Let’s say you then discover Vonage and you want to switch your phone service. Since you already have Internet access via your ISP (and thus have an IP address), Vonage would be a tier 2 provider. Simple enough, eh?

Now let’s say you didn’t have Internet access, Vonage could offer tier 1 service to your house. The government would provide them with an IP address and you would have to spend an extra $1 (or so) a month to pay for the infrastructure. The choice would be yours.

What this does is break up the required bundling of services and grows competition exponentially by removing the Bell and Cable provider’s lock on high speed Internet access. This lock on the Internet by private companies is what is keeping prices artificially high and restricting your access to additional services.

You want IP phone service, well now you don’t even need internet access. Families with no money can now sign up for $10 phone service without needing an Internet connection. Wow!

By government / public ownership of the fiber network and a low barrier for entry for providers, a slew of services would spring up all with fierce competition. Earthlink and AOL would be ISPs, and perhaps even Time Warner and Comcast. Verizon, BellSouth, AT&T, Vonage, et al, would be competing for VoIP services. Jeez, I can only imagine the features they would be offering to set themselves apart.

Comcast and Time Warner and tons of start ups would offer set top boxes to provide TV shows via the fiber. Imagine how many hundreds of channels you would have access to. I can only imagine how PVR’s will develop to take advantage of all the programming options.

By having a public network, new tier one providers would be popping up on a daily basis. I can’t even think of all the possible services that would crop up. As the tier one providers expand, the access fees for the fiber network would drop. At least to a point. The fees can only be used to cover the expense of running the infrastructure. If a local community wants extra funds then they can tax the providers (like for 911 access, etc), but the access fee must remain pure. It is not a tax, it is an access fee. Also, the access fee needs to be around $1-5 per month to make this work. Perhaps higher for services that require high bandwidth, like digital high definition TV.

As you can see, this proposal is quite simple. There are many technical details that need to be flushed out, and wireless access is quickly changing the ISP paradigm, but wireless is far from offering what fiber can now. Wireless is promising, but there are too many loose ends.

What do you think?

« Newer Posts

Powered by WordPress