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. EarthVideoMapsLocal 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.

Tuesday, February 14, 2006

You're Online, But When Are You Going to Start USING the Internet?


When people get online, most of the time they do one of two things: read their email or use a search engine. But how many of you really know how to use a search engine? Sure using a search engine is easy. You open the page, enter what you're looking for in the box and hit the search button. How hard is it?
Well, you're right, but there actually are a lot more features built into search engines than that, and knowing what they are and how to use them will help you harness the vast amounts of information that are on the Internet.
There are many search engines on the Internet: Google, MSN, Yahoo, Lycos and quite a few others. (There's even one that's named after a dog that "fetches" the information you're looking for... sheesh). For the use of this article I'll be using Google. I prefer Google because of its simple interface.
This AND That OR The Other
In every programming language I know, every single one has something called "operators". Operators are words such as "and" and "or", that help describe the results you are trying to get from whatever datasource you are using, such as a database or in this case Google. (Ok, ok... I'm on a plane right now and I can already see my wife's eyes glazing over, so I'll get back out of the weeds.)
Let's say I'm trying to find out why my dog insists on chewing on the window ledges in the kitchen when we leave him home alone. (No, that is not funny.) Now, our dog is a pureblood mutt, Beagle and Terrier mix, so I go to Google and I type in this query: 
Note the number of results... quite a few, and at first glance most of them aren't very relavent. Now I could stop right there and spend the rest of the afternoon going through these results myself, however, that would probably start to impose on my bike riding time so let's try something else instead. I'm going to get Google to sort through these for me.
With the first search I ran, Google read it like this: "beagle AND terrier AND chew AND alone". Well, I know that there aren't going to be any results that are thatspecific, so let's use the OR operator to tell Google what I really meant. This query is going to look much different from the first, but just follow along and I'll explain. So here's what our query looks like now:
Wow! What a difference a couple of words make. Now Google knows almost exactly what I was searching for. Notice that if you don't use any operators, the search engine assumes that you mean to put an AND between each word. But by writing our query this way, Google understands that I mean to search for "chew and alone and either beagle or terrier." (Wish you knew about that back in college, don't you?)
Ok, one last thing. What if you have a Great Dane and needed to find a kennel for him? If you just enter those words, then you'll be searching for "Great and Dane and kennel". But you could make that search even more specific by just adding quotes. Try this method whenever you are searching for something that has a proper name:
With these features that are built into almost every search engine, you'll find information faster and get back to whatever is more important.

Sunday, February 5, 2006

Help Meeeeee!


We've all seen it.  The look on a co-worker's face that just says, "That's it, I've tried everything;  I must have tried every possible way to accomplish this, but I just can't figure it out", all in one look.  (Yes, that is a lot to say with one look.)  My bet is that, more times than not, this "look" was brought on by some type of computer-related problem.
Now, granted, I do have an extensive background in troubleshooting applications and problem solving.  But I think that when it comes to computers, a lot of people just give up way too easily.  They might try the first thing that comes to mind, but if that doesn't work... "AHHHH!!!!"
When you start to feel that way think of Kelly Clarkson.  Did Kelly, the homegrown superstar from Texas give up when Simon Cowell said she was too fat?  No!  DidTy Pennington throw down his hammer when Paige Davis broke the news to him about the ruined plywood?  Hardly!  Are you going to let that silly computer get the best of you?!? ...  ... (Are those crickets I hear?  Oh well.)
Most programs have the exact same option on the menubar on the far right side.  Help.  It is there for a reason.  (Yes, it really does do something when you click it.)  Yet, most people would rather bug their next-door neighbor (who is a "computer guy" that they haven't spoken to in over three weeks) rather than click this one little button that will probably answer the problem.  Why is that?  I have a couple of ideas.
I think people don't use the Help button because perhaps they think that since the button is on the computer which is what they are having a problem with, it can't possibly have the solution.  It's the "Zen and the Art of Motorcycle Maintenance" theory of anti-technologists.  If the user is having a problem with Word, they don't see as a problem of MS Word; they think, "Stupid computer... Honey!  Where's the phone?"
My other theory is that the user might actually realize that the Help button might contain the answer, but they don't want to look and find out for fear of being out-smarted by a computer.  (After all, what would the ladies at the PTA say?  I shudder to think.)
Whatever the reason is that people don't use the Help feature in programs, I suppose there is one silver lining:  Those people make the people who do use the Help menus look really smart.  Those are the people who soon get labeled as the office "computer guru" or "techie".  Most of the time this person doesn't know any more about the programs that he or she uses than the next person, but the difference is that when they have a problem they are resourceful.  When those people have a problem they don't go looking for help, they go looking for Help.