Monday, September 18, 2006

Senator Kennedy Makes a Stand for Net Neutrality (op/ed)


This short post is meant to publicize a video posted by Senator Ted Kennedy on youtube.com. 
Senator Kennedy is one of the first politicians to voice his opinion in favor of Net Neutrality.

Friday, August 25, 2006

Clorox won't make the web any better... but AJAX will!


In 1995 Netscape hired Brendan Eich to take charge of a development project in which they were creating a new programming language to add interactivity to web pages.  This language was called LiveScript by the developers because of its ability to change itself and web page content.  Later, when the language was released to the public, it was announced as JavaScript.  As it turns out, this was a change that didn't make much difference to the marketers who made the decision, but have made things very confusing for up-and-coming web developers ever since.
Just following, the eXtensible Markup Language (XML) was developed in 1996.  Simply put, XML is a markup language (not a programming language) that is used to define and describe data. 
While these two languages have been around for quite some time, it has only been during recent years that people have discovered the potential made possible by combining them.
By combining JavaScript, a primarily web-based programming language, with XML, which is used to define and describe data, it is possible to dynamically access data and data descriptions over the web.  This method of combining these two is known as AJAX: Asyncronous Javascript + XML.  Now, I know that sounds like a lot at once, but take a look at our example and you'll see how easy it can be.
In order to demonstrate how cool AJAX can be, I created an AJAX-based Instant Messenger (click here).
Notice that when you post a message, or receive one, the window does not refresh; there is no "post back".  This is because every time you send a message, there is a JavaScript that is dynamically creating a new browser instance with which to send the message.  It then receives an XML response with all of the current messages that have been posted.  Feel free to dig around in the source code.
The term "Web 2.0" is being used to describe where we are headed once all web-based applications are using AJAX to interact with users.  Imagine the possibilities...

Tuesday, August 8, 2006

If my math is right, Bill Gates owes me $1.78 million!


A few years ago an email started it's way around the Internet that was, supposedly, from Microsoft.  In this email, it stated that Microsoft had placed a tracing mechanism in the body of the message and that Microsoft was going to pay $1 for each person that received the email because of you.  The idea was that you might send it to four people ($4), and those four might send it to four more ($20).  Five generations later, Microsoft owes you $21,844!
There are several different versions of this email and all of them are hoaxes.  I know, I know... It's unbelievable to think that something you receive in your email might not be pure facts. 
One of the more recent emails being forwarded to hither and yon shows several pictures of muslim people demonstrating.  This email says that the photos are from a demonstration in London that was titled the "Religion of Peace Demonstration".  The photos depict several hundred protesters holding signs that are not exactly... what's the word... "friendly."
However, this email is only a half-truth which, according to the way my Dad raised me, is far from a complete truth.
The pictures in this email were taken on February 3, 2006.  There was, in fact, a demonstration on this day in London, but it was to protest the political cartoons that were originally published in a Danish newspaper and later reprinted in several other publications.  These "cartoons" were very offensive to Muslims world-wide.  (Click here to read more on this story.)
Emails of this kind are becoming more and more common.  The old axiom that, "You can't believe everything you read," stays especially true for email. 
Now, I have to go check  my Hotmail account... I'm expecting some information from the Prince of Botswana who needs my bank account information so that he can escape the military coup that is after his money.

Friday, July 28, 2006

Microsoft officially decides to use the Internet (op/ed)


Ray Ozzie, Microsoft's Chief Software Architect (the position formerly held by Internet mogul Bill Gates), announced yesterday to a conference of investors and share-holders that Microsoft will be officially changing it's primary focus from PC-based applications to those that are more more net-centric. 
The difference, of course, is that PC-based applications are installed on (and run from) your computer, where net-centric (aka Internet-based or web-based) applications do not require installation on your computer and are run from a web server.  The biggest advantage to using web-based applications is support and maintenance.  You don't have to touch each and every machine when you are ready to upgrade to a new version of software or apply a patch if your application is web-based.  You can just install it on the web server once, and each user gets to reap the benefits.
Getting back to Microsoft's announcement: What I have a hard time understanding is... What took so long?
With Google's latest web-based applications (i.e. Earth, Video, Maps, Local and especially Google Spreadsheets) it's obvious that Microsoft has been called out on the carpet to make the move to web-based applications.  With all the latest advances with AJAX (asyncronous JavaScript used in conjuction with XML), web-based applications can now perform most of the same functions as desktop applications.
To me this move seems economical, logical, intelligent, and well... obvious.  While the rest of the world is busy writing AJAX enabled web-based applications, Microsoft is putting the finishing touches on Office 12. 
How will this announcement effect you?  Keep an eye out for MS Office 13 on a web server near you.

Tuesday, June 13, 2006

Is the Net Neutrality Bill dying?


I was digging for stories for our next podcast, when I saw a headline that caught my eye.  "Don't bet on 'net neutrality,' senator says." (link)  If you haven't already been familiarized with this, here is a brief synopsis...
The backbone of the Internet consists of the worlds largest telco's: AT&T, Southwestern Bell, and the like.  They, as most people on the planet, don't think they make enough money for there services.  They are already charging you, the consumer, for your Internet access.  But they have realized that, like a bad night at the roxbury, there are two parties involved in an Internet transaction.  So if 95% of their bandwidth is going to Google, then they want to be able to send Google a bill.
Now, if you don't already see the HUGE problem here then allow me to spell it out for you.  If Yahoo pays AT&T for their bandwidth, and Google does not, then do you think you will be able to get to Google anymore?  If you said "no", then go buy yourself a melon.
If the Network Neutrality Bill (or at least some version of it) fails, we can all sit back and watch the Internet fall apart.  The House of Representatives has already voted on and denied the bill, but the Senate has not yet voted.  Please contact your Senator's office (link) soon and tell them to vote FOR the Network Neutrality Bill.  Don't let the giant corporations ruin the Internet for all of us.

Friday, May 5, 2006

To mod, or not to mod... (Op/ed)


About two months ago Bethesda Softworks, a PC gaming company, released the latest in a series of games entitled Elder Scrolls IV: Oblivion.  Oblivion is a first-person role playing game where the characters that you have to select from are of a sci-fi or "fantasy" nature.
Now, whenever a new game is developed, whether it is for the PC, MAC, Xbox or whatever, the Entertainment Software Ratings Board (or ESRB) is supposed to review the content of the game and give it a rating.  These ratings are meant to inform the consumer of the audience that is best suited for the content.  They range from Early Childhood (EC) to Adult (A).
When Bethesda Softworks released Oblivion, the ESRB had given the game a Teen (T) rating for violence and suggestive themes.  (This "Teen" rating is similar to the PG-13 rating you might see at the movies.)  So they printed millions of boxes, the thing went on sale and all was good in the world... until last week.
Last week the ESRB got wind of someone seeing a topless female character in the game.  Upon further investigation this was only made possible by a mod that a third-party had created.  (A "mod" is a gaming term which means modification.)  But because there is now nudity in the game the ESRB changed their rating of the game to Mature (M). 
The gaming company never intended for topless women to be running around in the game.  If you go out and purchase Oblivion off the shelf, it does not contain any nude characters.  In order for someone to see the nude characters, he/she would have to go download and install the mod that contains the modified artwork for the characters.
The ability to modify games and software is nothing new.  In fact, most games that are rated "Teen" have mods that other people have created that you can add to your copy of the game now.  Have you ever used a macro in Word?  That is nothing less than adding functionality that didn't already exist to a software package... the same as these gaming mods.  If I were to go create a macro in Word that would display a pinup girl whenever I hit CTRL-K, would the ESRB give Microsoft Word a Mature rating?  Ha!  I think not.
Bethesda Softworks replied to the ESRB's new ruling with the following statement:

There is no nudity in Oblivion without a third party modification.  In the PC version of the game only – this doesn’t apply to the Xbox 360 version – some modders have used a third party tool to hack into and modify an art archive file to make it possible to create a mesh for a partially nude (topless) female that they add into the game.  Bethesda didn’t create a game with nudity and does not intend that nudity appear in Oblivion.  There is no nude female character in a section of the game that can be “unlocked.”  Bethesda can not control tampering with Oblivion by third parties.  Bethesda is taking steps to ensure that modders can not continue to hack into Oblivion’s art archives to create partially nude figures.
The ESRB should stick to the content of the game in question when they review it and rate it.  Consumers will continually modify games and other software to better fit thier own needs and desires and this type of user interaction can not be anticipated.
That's my 2 bits worth.

Friday, March 3, 2006

The case of the forgetful web application.


Q: Mr. Carroll,  (See that "Mr"... makes you feel old doesn't it!)  Hope you remember me; I was in your IIS class a couple of weeks ago.  I have a question if you could spare some time.  We talked about setting memory restrictions to recycle application pools.  Our web applications die every few days and I have determined it is the w3wp.exe that is the problem.  It's memory usage grows until it crashes but it crashes at different amounts of memory used.  So my question is if I set the memory restriction a low amount or a short time period to recycle will this cause performance to decline on our web apps?  Hope you can help... and great class by the way!  And see, your teachings are already paying off for your students!
Thanks,
Kerry

A: Hey Kerry. Thanks for the compliment; I'm glad you enjoyed the class.
The results of how you adjust the memory usage settings will differ from web-app to web-app. The way to get the best result is to change the settings and benchmark the results. It may take four or five times to optimize the settings for your particular app, so make sure to log the results each time.
Another thing to consider is, if the application was written locally (that is to say it is not an off-the-shelf product) you should talk to the programmer who wrote it and make sure that he/she hasn't left any memory leaks in the application. (When I say "locally" that also includes anyone at a higher echelon of your organization. Just because John Doe is the head programmer of your corporate headquarters doesn't mean that he doesn't make mistakes.) To ensure this, have the programmer ensure that they are destroying any objects that they create, like this:
In this example you have a bit of ASP code using VBScript as its language. In VBScript, Nothing is a keyword that is used to remove objects from memory or "destroy" them.
Once you've gone through the code and adjusted the memory settings of your application in IIS, you can always gain a little more memory capacity by having your web-app reduce its caffine intake... at least, that's what my wife says.