Browsing the archives for the Software category.


log4net Silent Failures Make Me Yell

Software

log4net is driving me crazy, and doing so in a souped-up Ferrari in 5th gear.  Admittedly, it’s a short distance from “where I am now” to “crazy”, but I don’t want some idiotic software program to push me over the line.

The latest travesty came yesterday, when I spent way too much time diagnosing why log4net wasn’t outputting anything to the log(s).  Not only that, but there were no Event Viewer entries.  So I tried dinking around with the usual culprits – verifying paths, permissions, triple-checking the log4net.config file entries against known-good examples, yadda yadda yadda.

Finally I realized that my build process was not pulling over .asax files to the deploy directory.  You might remember .asax as the file in ASP.NET projects that is tied to with the Global application code-behind class.  My build process (MSBuild-based, very cool, customizations up the yang) has a whitelist of acceptable file extensions to pull over, and .asax was missing.

So I added it.  And the goddamned log4net system started spitting out log messages.  FUCK!

<flame><on>

OK, first of all, if you’re so goddamned powerful, Mr. log4net, why do you whimper and shy away in the presence of a client app that is sending log messages to a logger / repository that doesn’t exist or isn’t configured?  I mean, are you Clark Kent or Superman?

Second: who designs an app to give NO FEEDBACK – zero, zilch, nada, nil – when a message sent to a NAMED SINK can’t be delivered?  In my case, I’m looking for a logger called “Com.Foo.Bar” and it didn’t even exist.  At least throw me a warning in the Event Viewer.  But no, you like to play the strong silent type, wrecking my productivity and causing my face to turn all different shades of purple and making me think Very Bad Thoughts like “I’ll just take this here laptop and play Ultimate Frisbee with it.”

Third: this is probably a .NET thing, but why isn’t my Global class pulled in to the project when I compile?  Why do I need the actual .asax file?  All my code is in the code-behind .cs file.  It’s almost like if Global.asax doesn’t exist, the Application_Start never gets fired.  Weird.

</on></flame>

So, bottom line for the others out there: make sure that you pull across your .asax file, if you’re using the Application_Start() method to configure your log4net system.

No Comments

Non-Relational Database Discussion at Seattle Tech Startups March Meeting

Community, Entrepreneurship, Networking, Software

Tonight’s e-mail brought a reminder from Gaurav about the Seattle Tech Startups meeting next Wednesday, March 10th, at the Douglas Forum at the Executive Education Center at the UW Business School.

Michael Miller from Cloundant (YC S08) will be on hand to discuss CouchDB and their commercial offering. We’ll also have Eric Peters from Frugal Mechanic (Founders Co-op) to talk about Cassandra. We’re going to have one more speaker and would ideally like it to be someone who can discuss MongoDB. The sponsor behind MongoDB, 10Gen, is helping us find a speaker in Seattle in time for the meeting, but if you know someone who could fit the bill, please drop us a note.

The topic is relevant, timely, and should be of interest to a lot of geeky Seattleites.  I’ve played around in the last year with non-relational cloud offerings from Microsoft and Amazon and also had a geek crush for a long time on Google’s BigTable technology.  While I’m not convinced of the universal applicability of non-relational databases, I think that they definitely have a place in the massively-scalable technology environment.  And the tooling and support infrastructure has grown leaps and bounds in the last year or two, to the point where working with them is no longer a huge pain.

Hope to see you there!

1 Comment

SPTD problem with Daemon Tools

Software

I’ve been doing a ton of Vista updates in preparation for my any-day-now move to Windows 7, and one of the updates hosed my Daemon Tools Lite installation.  I kept seeing this error:

“This program requires at least Windows 2000 with SPTD 1.60 or higher.  Kernel debugger must be deactivated.”

image

I had no idea what SPTD was, but this site tells me that SPTD is a sort of hardware abstraction layer.  OK, fine.  I have no idea what version (if any) of SPTD I have installed; supposedly you can find out from the Daemon Tools program, but it won’t launch.

So, I downloaded SPTD 1.62 directly from duplexsecure.com.  Upon running the downloaded installer, I see this:

image

Did I inadvertently download the 64-bit version?  No, I don’t think so…the file name indicates that I’ve got the x86 version.  Hm.

So, after Googling for a bit (did I mention I’m the world’s best Googler?) I found this forum post on the Daemon Tools support site that describes my exact problem.  I follow the second method and download the Windows Server 2003 Resource Kit, then run the command INSTSRV SPTD REMOVE:

image

I note in passing that this command removes the registry key HKLM/SYSTEM/CurrentControlSet/Services/SPTD/.

Then reboot, followed by a reinstall of the Daemon Tools Lite 4.35.5 install (supposedly containing SPTD 1.62).  During the install, I see that SPTD 1.62 is indeed installed:

image

When the install finishes, I’m prompted to reboot, which I do.  The shutdown hangs, which I’ve noticed occurs consistently after I install Daemon Tools Lite on Vista.  I hard-boot and when the system comes back up , Daemon Tools starts up in the background, which I can tell by this:

image

Finally!  A good Daemon Tools reinstall.  Hope this helps others of you running into the same problem.

2 Comments

Odd LINQ to SQL problem

Software

Is LINQ overspecifying my datetime values?  Check this out:

declare @p0 datetime
select @p0='2010-02-13 08:09:22.2270000'
Msg 241, Level 16, State 1, Line 4
Conversion failed when converting date and/or time from character string.

Compare to:

declare @p0 datetime
select @p0='2010-02-13 08:09:22'
Command(s) completed successfully.

The first set of datetime varchar strings is what is generated by my LINQ to SQL code.  But SQL Server barfs on it.  Hm.

No Comments

WTIA Industry Achievement Awards March 4 2010

Business, Community, Entrepreneurship, Software, Startups

Hot from my inbox —

The 15th annual Washington Technology Industry Association Industry Achievement Awards will be held March 4th, 2010 at Showbox SODO.  Organizer Katie Douglas writes that it will be a “casual affair” and there will be lounges that feature some of the tech behind the lifestyle characteristics (such as coffee, wine, and chocolate) that makes Washington such a great place to live.

I involuntarily laughed at the tagline/theme: “Washington Breeds Innovation”.  I’ve been doing a lot of connotative / denotative linguistic research as part of my work on Crowdify, and that phrase brings to mind the State of Washington furiously copulating with a passive, bespectacled, softly moaning Innovation.  I don’t know, maybe it’s a guy thing.  Maybe it’s just me.

Curious who the finalists in the various categories are?  I was too.  I’m most interested in the “Breakthrough Startup of the Year” category, in which Gist is nominated.  As I’ve written elsewhere in these pages, my hindbrain has a sort of unhealthy obsession with the algorithms behind Gist’s service and they all seem to be great people to boot.

I’ve seen the VholdR tech in person, and to my mind, it’s neat, but not as neat as Gist.  Plus they get demerits for funky spelling.  The Google correctly points you to their site if you type “vholder” in the search box, but still….

I don’t know a thing about DreamBox Learning, which is funny considering how many projects I’ve done in the online education space over the years.

I’m rooting for Gist in this category.

Register here: http://www.washingtontechnology.org/IAA

See you there?

No Comments

Agile Open Northwest Conference Recap

Community, Software

Having just spent most of part of the last couple days at the 2010 Agile Open Northwest Conference in Seattle, I can say for sure that (a) our team does Agile in a very mature way and (b) there are some smart, smart motherfuckers out there.  Yes, I dropped the F-bomb in polite conversation, but whenever I go to a tech conference or any sort of event where bright people can shine, I’m constantly pleasantly surprised at how brilliant some people are.

When I was young, I thought I was the smartest.  And, in the little pond I swam in, I probably had a good shot at the title.  When I went to college, that attitude got dented, but not discarded; when I went to Microsoft, it got dented a little more; but it hasn’t been until I’ve gotten into my 30’s that I think I can accurately rank my intelligence in relation to others.  And the data is trending downward. ;)    I think part of it is that I don’t really care that much anymore.  Also, I now define myself a lot of different ways; there’s a lot more diversity in the components of my self-perception.

I’d name names and tell you who I thought fit in that brilliant category at #AONW but if you’re at all an observer of the Agile community you probably already know who they are.

So, you’re thinking, how was the conference?  I was only able to attend half the sessions, due to work scheduling commitments, but the sessions I attended – save for one – were enlightening and contained nuggets of wisdom and/or practice that I can take with me to my projects.  I personally presented two sessions, one last night and one this morning, and although the attendance was underwhelming, the discussions were really informative and thought-provoking.

The organization at this year’s #AONW seemed to be a little more on the ball than last year’s event held in Portland.  Not sure if that’s due to the local organizers, the maturing of the conference, or what.

The Seattle Center was a good choice for a venue; it’s centrally located, and the Northwest Rooms are all easy to find and self-contained enough that we didn’t have to wander around too much.

I’ve already put notes up from my sessions and tomorrow I’ll put up notes from the sessions that I attended but did not personally host.

n.b. I’m sort of amazed I didn’t blog about my experience last year at the 2009 AONW in Portland.  It was in many was one of the seminal events of 2009 for me, for a lot of reasons.

1 Comment

Widgets, Widgets, Widgets

Software, Web

I’m going to start looking closely at widget technology.  Not widget as in “doodad: something unspecified whose name is either forgotten or not known”, but widget as in “a live update on a website, webpage, or desktop.”  I have been thinking for some time about using widgets as part of a distribution strategy for Crowdify, and a recent phone call convinced me to jump on the ball and get the tech done.

So, what’s a widget, really?  It’s something that:

a) publishers (using that term VERY broadly) can get;

b) runs on a webpage;

c) dynamically pulls content at render-time from a source location;

d) (optionally) uses JavaScript to do snazzy UI effects;

e) (optionally) allows website visitors to interact with them

The user views the widget contents, interacts with the widget by clicking or what-have-you, and hopefully does whatever the widget provider wanted them to do in the first place.  For Crowdify, that will mean clicking on terms and submitting them.

You can think of banner ads as a widget, using definitions (a) through (c), above.  I’m more interested in examples of fully-interactive widgets, since that’s what I’ll need for Crowdify.

So what sorts of architectures can one use for widgets?  (I’m talking the display of the widget on the publisher’s site, not the getting of the widget code in the first place).

  • Well, <IFRAME>s are deprecated all to hell, and for good reason.  Next.
  • I see a lot of <script> tags that pull HTML content back from a dynamic source, i.e. PHP or ASPX code.  This is the “server proxy” approach.
  • I also see lots of widgets that use a <script> tag that pulls from a remote .js script.  Similar deal as the above, but makes heavier use of JavaScript to render results.  This is the “script tag” approach.
  • You can make Flash widgets that load from a remote host.
  • I’m sure, without checking, that I could do a Silverlight widget.
  • What is this JSONP business?  It’s a way to do Ajax calls without getting drilled by XSS restrictions.  I’m not sure what advantages this has over the server proxy approach, other than the “cool factor”.  Maybe performance?  Agility/more flexibility for API callers?  I need to look into this a bit more.

Enough for now.  More widget research later.

No Comments

SeaSpin Lecture on Personal Kanban February 2nd

Networking, Productivity, Software

My friend Jim Benson is giving a lecture on Personal Kanban next Tuesday, February 2nd, at Construx Software over in Bellevue.  From the SeaSpin release:

Personal Kanban and Kanban for Distributed Teams
presented by Jim Benson

Kanban is rapidly gaining popularity in software development. How are teams and programmers migrating from straight agile to Kanban, or to hybrids like Scrumban or Scrow? How has this worked in the past? How do distributed teams make this more challenging? How can managers and teams best apply these new methodologies?

Jim Benson describes introducing both Agile and Kanban to development teams, focusing on a team he led in 2007 which built a complex transportation management prototype using nascent technologies and a team of cowboys – none of whom had used agile or been particularly collaborative before.

Come learn more:

Construx Software, 10900 NE 8th St Suite 1350, Bellevue, WA

Food & networking from 5:45 to 6:45 (pizza, salad, soda )
Announcements from 6:45 to 6:55
Presentation from 6:55 to 7:55
Doors close at 8:30

For more info, see our website at http://seaspin.org

No Comments

New Meetup: Seattle Lean Coffee

Networking, Software

A new meetup has come sauntering into town, and you can catch it every Wednesday at 8:30 AM at the Uptown Espresso on the corner of Westlake & Republican.  It’s called “Seattle Lean Coffee” and is the brainchild of Jeremy Lightsmith and Jim Benson.

From the press release:

Lean & Agile approaches have become hugely popular in Startups trying to get an edge on slow moving large companies.  We’re putting this group together to further build the our Lean community here in Seattle.

Visit the Seattle Lean Coffee website for more info.

BTW, I don’t know which I get more excited about: “limiting WIP” or just “limiting W”. lol. ;)

1 Comment

Humorous Alert from Gist

Business, Entrepreneurship, Software

The more I look at Gist, the more intrigued I am.  Maybe it’s the heuristician in me (yes, I made that word up) that wonders what’s going on under the covers.  At any rate, I got a small chuckle this morning when I opened my Gist Daily Digest and saw this:

image

The fact that it says “No company” is funny for a few reasons:

  1. Robert is the Vice President of Marketing for Gist, yet Gist doesn’t know that.
  2. Robert just yesterday sent out a couple messages to the STS list containing the keyword “Gist” in the subject line.
  3. Robert and I had an e-mail correspondence about six months ago as part of the NWEN Advisors program.

At any rate, Gist’s Daily Digest couldn’t put together all the loose ends on this one – but I remain convinced that there’s something great going on here.

No Comments
« Older Posts