Thursday, February 21, 2008

More Downtime - Local Activation Permissions on DCOM

What luck.  My server went down last night and didn't come back up until this morning.  I eventually had to request a power cycle from my host and then remote desktop in to see what went wrong.

The root cause of the error was this:

The application-specific permission settings do not grant Local Activation permission for the COM Server application with CLSID ...... to the user NT AUTHORITY\NETWORK SERVICE.

This caused a few other errors to occur in rapid succession and Windows decided to shut down my application pool.  You can clearly see the issue here:




I read up on the error and found a solution.  Apparently after Server 2003 SP1 came out, this issue started appearing on servers with a specific Group Policy (I'm not sure what).  They suggested to add NETWORK SERVICE to the DCOM Users group.

So far it is working fine.  We'll see!

I wonder how much google juice I lost during the 12 hour outage.  :(
Tuesday, February 19, 2008

Yikes! I Spoke Too Soon!

I previously noted that I was outgrowing shared hosting and I migrated to a VPS account with VPSLAND. 

I spoke too soon.  Their prices are the lowest for a reason.

VPSLAND’s support was good for the first 24–hours, but after that they neglected me.  I opened a critical ticket because my sites (including this blog) were down for over an hour.  I eventually fixed it on my own by some strange combination of disabling services and rebooting the server 3 or 4 times.  6 hours later a tech chimes in and says “we checked your sites and everything is fine!”  — yeah, great help.

servers

I inquire as to why the system won’t even serve up an empty subtext application and they told me that I should upgrade to a 1GB RAM plan (from 512mb).  I figured I’d need it eventually, so I obliged.  It took them 12 hours to respond to my request.  Meanwhile, one of my sites was acting sluggish and I couldn’t get my friend’s blog started b/c subtext kept timing out.

The next morning they told me my server was upgraded and everything was fine.  But it wasn’t.  I was seeing the same sluggish behavior and subtext was continually timing out (at the database level — but remember, this is an empty database).  This time I know it’s not RAM because I have 700 freakin megabytes free.

I eventually broke down and got a VPS plan at godaddy (512MB ram) for $37/month.  It’s a little more money, but they set it up in about 45 minutes and it’s worked flawlessly so far!

I also want to apologize to a certain reader who decided to go with VPSLAND after reading my post.  He is also having troubles with them and I wish I had not posted such a glowing review so quickly after signing up.  VPSLAND refunded my payment, so hopefully if you still have problems you can do the same.

Anyway, I will say that so far godaddy’s plan is good, but I will not give them my Seal of Approval (TM) until I’ve used it for a couple months.

(if you noticed the downtime, I apologize!)

Wednesday, February 13, 2008

A New Host

I've been hosted on webhost4life for about 2 years now, and I was starting to see the pain with shared hosting.  It starts out with a tempting $5/month, but then you want SQL Server 2005, and you want to point many domains to non-root folders and in the end it just isn't that cheap.

It's also really slow and I don't have full control of the box.  Doing a reverse ip check at http://yougetsignal.com (awesome site, hilarious name) i could see hundreds of sites that are on my same server.  I'd rather not be sharing bandwidth and hardware resources with so many.

So I've made the switch to a VPS plan at VPSLand.  VPS is Virtual Private Server, so basically they take a beefy server (8-core cpu, gobs of ram) and then run Virtual Server on it.  They sell a limited amount of virtual machines per actual server, so you are sharing with far less people. VPS plans are a bit more expensive, but they are worth it.  Why you ask?
  • Remote Desktop into your box (no more crappy cpanel interfaces)
  • Install whatever-the-hell-you-want software (provided it's legal)
  • Run your sites in .NET 2.0, 3.0, 3.5, 6.0, whatever (ASP.NET MVC sites here I come)
  • Run ASP.NET, Rails, PHP all on the same server (if you want)
  • No more Medium Trust nonsense
  • control your own DNS (if you want)
  • run your own mail server (I use GAFYD however)
  • point as many domains to whatever folders you want
The downside:
  • I have to track my bandwidth now.  I have 200gb/month, which is good enough for now, but it could get expensive if I go over.
  • I only have 5gb of storage space.  The base install takes 2gb.  Yikes!  I plan on making this 10gb sometime soon.
  • a little more expensive.
Ultimately, I'm paying about $10/month more than shared hosting, and I think it's totally worth it.  VPSLand's support is stellar so far.

Oh, and I have a question for you all:  I plan on tinkering with rails, and I've read the long steps to get rails to work in IIS but should I?  Or should I just install apache or Lighttpd and run it on port 81?
Tuesday, December 11, 2007

Google Launches a Chart API

Google recently released a URL API for charting.

What's a URL API, you ask?  Well you open an image to a specially formatted url, and google returns you a chart.  You can do some pretty amazing things with this API.

Check out these samples:
       

The last one was created with this url:
http://chart.apis.google.com/chart?cht=p3&chd=s:Uf9a&chs=200x100&chl=A|B|C|D

The urls are a little bit cryptic as you can tell, but this allows you to use one source for charting regardless of your language or platform.  A .NET wrapper is sure to spring up in the next couple days that will allow you to take advantage of this API with a more structured format.

Update:  Boy did I underestimate the community.  Chris Pietschmann already created an ASP.NET 2.0 Server Control to leverage the Google Chart API in .NET.

I'm wondering how they are able to handle all of this.  Not only is it a lot of traffic to handle (but they're obviously pros at that by now) but it takes a significant amount of CPU cycles to generate a graph like that on the fly.  How do they keep their response times so quick?
 

Sunday, August 26, 2007

HoustonTechFest 2007 was a Hit

Houston Tech Fest 2007 was yesterday and it was an amazing success.  Over 600 people were present and I was able to see a lot of old friends and meet some new & interesting people.

I got to chill out with Brad Abrams and a few other folks from Microsoft, and it was great to meet Scott Bateman (fellow Houston blogger and advocate of Continuous Integration).  His talk was most excellent, he was very informative and it showed that he not only understood the concepts, but he was able to explain it all in a way that (I thought) was easily grasped by the audience.

Some of the other speakers included Mike Azocar, John Cook, Tim Rayburn (sorry I missed your talk again Tim!), and David Walker.

Funny thing about Tim’s talk.  I was in the room next door listening to David Walker talk about SOA and WCF, and we could hear Tim through the wall partition.  At one point I heard Tim say, “If you can’t hear me in the back, please shout out and let me know.”  I felt like shouting from our room .

I had two sessions, Advanced CSS & Javascript and ORM with NHibernate.  In the first session, I had a full room (over 100 people!) and the audience was very engaging.  It’s great to have an audience that has so many questions and comments on what you are saying.  It becomes more of a dialog, which I think makes the content so much more valuable for everyone. 

Sometime in the midway point of the talk the projector just turned off.  It’s hard to give a talk on CSS without some visuals, so I continued typing and said “Imagine if you wil…” to a room full of laughter.  About that time the projector turned on again.  I didn’t find out until later, but my friend Wes had sat on the cord and unplugged it, then silently plugged it back in.  Funny how a room full of geeks and nobody thought to check the plug when it turned off.  Ah well.

At the end of the talk I had a couple people come up to shake my hand and a little 4–year old girl came up, touched my arm, then ran away giggling.  (Don’t ask me…).  I really enjoy giving this talk and I would like to branch outside of Houston and start giving it elsewhere around Texas (and the U.S.).

My second session was on NHibernate and it was more cozy, with only 15 people or so.  I think NHibernate is a lot harder to make interesting for an intro class because it is a radically different way of developing applications that most people are exposed to.  There is so much material to cover and only a short amount of time, so I tried to focus on the code and keep the examples short and simple.  I think it was effective, though I’d like to branch off this talk and start giving more advanced lectures on NHibernate.

Thanks to all who came to the event (especially my sessions!).  I hope you all had as much fun as I did.

The files from my presentations can be downloaded here:

File Attachment: AdvancedCSSAndJavascript.zip (1161 KB)

File Attachment: nhibernate.zip (4001 KB)

Also, a lot of people were interested in the tools I was using during my demos.  My favorite text editor is E, which you can get at http://www.e-texteditor.com.  My zooming tool that I use is called Zoomit.  My launching utility is called Launchy and it saves me so much time everyday.  I use ReSharper for Visual Studio nirvana (seriously, get this tool).

Some links I mentioned at the talks:

http://www.csszengarden.com

http://www.exploding-boy.com

http://www.mochikit.com

http://www.prototypejs.org

And finally, my favorite CSS book that I keep recommending to everyone:  CSS Mastery.

Wednesday, May 30, 2007

Microsoft Surface

http://www.microsoft.com/surface/

This is so cool I just had to blog about it.  Take a minute to watch the videos, they are quite impressive.

Basically it's a 30 inch surface that is monitored by tiny wireless cameras.  Hand gestures can rotate and resize images and videos and things.  I don't think we're at a point where we can give up the keyboard or the mouse, but think of some of the other uses it would be good for.

In the videos they show a simple paint program that kids would enjoy.  They also show it at a restaurant where the menu is all digital and you flip through it using your fingers.  When you're ready to order, you just drag the item to the center.  The same would go for paying the bill.  Set your credit card on the table, split the checks up, calculate the tip, and charge the card all without waiting for a server to do it for you.

I think we're going to see some really cool uses for this thing outside of normal computing.