Monday, November 26, 2007

Bug - Half Life 2: Episode 2 (Orange Box PC)

I’ve really been enjoying the Orange Box so far.  Unfortunately, I’ve encountered an apparent bug in Half Life 2: Episode 2.  During “Chapter 2: Vortal Coil” the game will consistently crash at the same point.  The crash occurs after you escape from the guardian ant-lion by dropping into a corridor.  At the end of the corridor there is a medic sitting against the wall.  When you walk closer to the medic, the display will freeze and you will be dumped back into Windows.  You receive an error informing you that the “hl2.exe” process has crashed.  After doing some Google searches I was able to find a solution posted here and here.  The workaround is to basically shoot the web at the end of the passage, face the wall on the right, crouch, and then strafe until you get into the next room.  I followed these instructions and I was able to avoid the crash.  I love being a PC gamer!!!


#    Comments [0] |
 Saturday, November 24, 2007

ASP.NET and Spolsky’s Law of Leaky Abstractions

For reasons beyond my control I recently found myself developing in classic ASP.  After years of developing in ASP.NET this was obviously a little jarring.  However, what surprised me about the experience was that there were some things about classic ASP that I actually enjoyed.  Most notably I felt I had more control with classic ASP.  Nothing was in my way.  Things that should be simple were simple.  For a moment I imagined that this is what it must feel like to be a PHP developer. ;-) 

I wondered why I felt this way.  After all, the whole the whole point of ASP.NET is to save me from having to deal with “icky” HTML, JavaScript, and CSS…right?  I really like developing in ASP.NET.  I would take ASP.NET over classic ASP any day of the week (and twice on Sunday).  ASP.NET is certainly one of most thoughtfully designed and well implemented frameworks I have ever worked with.  Scott Guthrie is a genius and he has the patents to prove it.  However, I couldn’t ignore the fact that some things were a lot easier to accomplish in classic ASP.

I realized the unfortunate truth that there are some abstractions in ASP.NET (and all frameworks for that matter) that can transform into obstacles.  In order to use these abstractions you end up having to learn a lot about the internals of the framework.  I’m talking about Reflector. You have to codify assumptions about the underlying technologies into your application.  In other words, the abstraction leaks.  I borrow this term from Joel Spolsky’s Law of Leaky Abstractions.  I think that the small sense of empowerment I was feeling when developing in classic ASP came from the fact that I wasn’t forced to dig too deep into, or worse, code around the framework in order to get the job done.  There was no framework. 

Another, even more heretical thought occurred to me during this process.  I wondered if code-behind is always necessary. Is it always essential to separate code and markup?   If you simply replaced VBScript with C# and gave yourself a set of libraries as rich as the BCL, would combining code and markup be more palatable or even more productive in some scenarios?  Can some aspects of ASP.NET be abandoned entirely?  I’m not sure, but I’m now a little more inclined to find out.

#    Comments [0] |
 Wednesday, November 21, 2007

2006 Beantown .NET Ajax Slides

Here are the slides from my 2006 Beantown .NET talk on ASP.NET Ajax.

beantown_ajax.ppt (636.5 KB)
#    Comments [0] |
 Monday, November 19, 2007

SICP



Every once in a while I find myself reading a book that makes me feel stupid. As I try to internalize the prose I can’t help but feel a strong sense of regret for not being more adequately prepared.

Then I learn that the book has long been the basis for an “Intro to Programming” course at some college. Did you say intro to programming!? This is usually the part where I start to feel a strong sense of inferiority. :-(

Is the feeling of inferiority enough to make me want to put the book down? Hell no. If anything I’m finding SICP to be one of the most compelling computer books I have ever read. Like the Scheme language itself, SICP is incredibly dense. No reading on autopilot here, folks. You need to be paying attention or you’re going to get nothing out of it. The code examples draw almost exclusively from math. In the first chapter alone the following mathematical concepts are used to “help” teach the reader about computer programming (in general) and Scheme (in particular):

The other thing that seems strange at first is that Scheme uses recursion for nearly all processing. I’ve only completed the first chapter, but I have yet to see a “for” or a “while” construct in any of the code.

I know that that some fellow .NET developers might ask “Why are you wasting your time with that?” or “Why aren’t you spending your time learning about Silverlight?” Well I couldn’t really say for sure. I’m a big fan of Paul Graham’s essays, so those are certainly what motivated me to have a look at a Lisp dialect. What’s keeping my interest is the richness and depth of the content. There’s just so much there.

I plan to post more about SICP as I wade my way through it over the next several weeks… or months. I’m going to take my time and savor every head scratching moment. 

If you are Java or C# programmer who is looking for something to expand your mind, you should certainly have a look.


#    Comments [2] |
 Tuesday, November 13, 2007

Resurrection

After being dormant for years my blog is finally being resurrected. Wish me luck!
#    Comments [1] |
 Thursday, October 14, 2004

Goodbye X1 and Agent Ransack - Hello Google Desktop Search

If you weren't already convinced that Google was developed by extra-terrestrials from beyond the milky way, this might just do the job.  From what I've seen so far, Google Desktop Search is simply amazing.  I'm not saying that I have already uninstalled these applications, but it seems as though their days are numbered.

 

Scott Hanselman has a good explanation of how it works here.

 

I was amazed how quickly it indexed my hard drive.  This is truly a momentous day for the computing world.

 

UPDATE: Okay well it seems like part of it's speed comes from the fact that it's picky about what it indexes.  Of a possible 156,962 files on my C: drive, it has indexed 28,328 (emails, IMs, cached web pages, and “files“).  I still think it's the coolest thing to come around in a while - but it seems as though I will be holding on to X1 and Agent Ransack for the time being. ;-)

#    Comments [0] |
 Monday, October 04, 2004

ASP.NET Version Switcher Rules!!!

Right now I’m running VS.NET 2003 and Whidbey side by side for some projects that I am working on.  When I popped back into VS.NET 2003 to do some ASP.NET 1.1 stuff the other day I was met with these rather daunting errors.

 

 

 VS.NET output:

 

Auto-attach to process '[3544] aspnet_wp.exe' on machine 'XXXXX' failed. Error code 0x8013134b.

 

Assuming that it had something to do with the fact that I had Framework 2.0 installed, I quickly brought up ASP.NET Version Switcher.  Surely enough the virtual directories for my newly created VS.NET 2003 projects were using version 2.0 of the framework.  Not sure exactly why this was happening or why it was preventing the debugger from attaching, but switching framework versions seemed to do the trick.   Sweet!!!

#    Comments [0] |

The Future Doesn't Vote

I’ve been following the writings of Stanford Law professor Lawrence Lessig for many years now.  A copy of his book Code and Other Laws of Cyberspace rests comfortably on my book shelf.  While I don’t always agree with him, I usually will take the time to read his latest blog post or article.  In his latest article for Wired, Dr. Lessig takes aim at a familiar theme.  Namely, how the government is mortgaging the long term future of the country in exchange for short term political gain.  He cites examples ranging from the environment to deficit financing to Iraq.  Lessig takes a pretty tough shot at the “Me Generation” in this excerpt.   

 

The Me Generation - which elected the first two presidents to have actively avoided military service (Clinton and Bush) and which will decide this election, too - is in charge, but it has taken its name much too seriously. Gone is the sense of duty that made so compelling Kennedy's demand "ask what you can do for your country." We don't even ask what we, as a nation, can do for our kids. The rhetoric of self-interest so deeply pervades politics that an ideal as fundamental as building a better future has been lost.

 

The crux of the article is that politicians have no accountability to the future because children (and the not yet born) do not have the power to hold them responsible for decisions that will adversely affect our country in the decades ahead.

 

The article seems to have a anti-Bush slant, but it’s not overt.  I think it’s safe to say that there are compelling counter-points for his arguments…but they’re worth checking out nonetheless.

#    Comments [0] |
 Sunday, September 26, 2004

Here goes something?

I'm obviously very late to the blogging game, but I figured I'd give it a shot.  My goal with this blog is simply to provide an outlet for my own thoughts and feelings.  If people are into it then that's a bonus!

-Eric

 

#    Comments [0] |