Sunday, January 16, 2005
DotText2DasBlog last release for weekend

Heres the last release of the weekend.  Screenshot below.  Codes in CVS, and links to direct download are below. 

I have re-added the direct option.  The direction option allows more then 25 entries to be converted.  When moving them over 1 by 1 the active and showonfront page options are moved also, direct db they are defaulted to 1 setting (thatll be fixed later). 

I still have some work to do with the categories which you'll see in the next version of the blog I release.  I hope to fix that this week.  I'm also still working on the comments, trying to figure out how to bring them into DasBlog.  I have seen a post around about it supporting CommentAPI, but haven't found it yet. 

Also the beta blog will be updated any minute now, so check it out if you get a chance, I'd love to hear from comments.  I'm going to hopefully roll it over this week.  I think I will probably move the blog to iceglue.com/blogs/tranqy.  Everything will stay up at the old blog until I can put in a redirection scheme, but the baseurl and xml feeds will be redirected as soon as I flip the switch. 

Get the source here and the binaries here.



Last update tonight

Source will be in cvs..  Heres a screenshot..  Still some fixes to make before another minor release.  Oh soon the frequent updates will move off here too the sourceforge mailing list.



 Saturday, January 15, 2005
Scriptomatic 2
Saw over on ActiveWin that ms released Scriptomatic2.  This is a cool little app that creates scripts based on the numerous WMI sources on a machine.  It's a neat little tool to easily create some really powerful scripts.  The new version adds perl, and python generation, as well as some new output's.  Check it out here.


DotText2DasBlog release and new home

Another release out the door.  This release works soley with the web services of each product.  It still only moves posts, but it is getting the .text comments :)  I haven't found an xml endpoint in DasBlog for creating comments yet.  If I can't find one I'll see if I can make a small addon release that could handle that.  The DotText service also seems to only return 25 items, which I'll be looking into.  I'm guessing I will be adding a “direct” option that will support everything. 

The sourceforce site was approved, and is here.  I'm stumbling through CVS now, so expect to see some source in the repository later this evening or tomorrow. 

For now, here's a new screen shot.  And heres a link to the source. 



 Thursday, January 13, 2005
DotText2DasBlog update

Well I won't have a beta out this week, but hopefully this weekend I'll release some new bits.  I've been moving the source to the web services and comment api, while also refactoring the app a bit to make it cleaner.  I still have to look into how to post comments to DasBlog via services.  I'm not expecting that to be an issue.

I also applied for a spot on sourceforge.  That would provide some public source control, as well as some tools to manage the project.  Should hear back on that in a couple days.

I'll make sure to post back when either one of those are final. 



Halo2 playing itself?

Today's the second day that my bloglines showed me playing halo2.  I got the same type of entry yesterday.  I haven't played in a month or so (thanks to this damn blog  :) , so I find it odd that I'm still playing.

I'm actually subscribed to a friends halo2 feed that has the same messages, although I haven't checked with him to see if he was playing.  Anyone else seeing this?

Arranged Game: None on Unknown

Game played at Thu, 13 Jan 2005 03:31:53 GMT

Playlist: Arranged Game
None on Unknown

Gamertag (Team): Score, Kills, Deaths, Assists
hello (0): 12, 12, 1, 0
goodbye (0): 1, 1, 12, 0



 Wednesday, January 12, 2005
Oh you silly little apple

Obviously this is a very apple week.  The new headless mac may even find it's way into my home this year, although no ipod for me (thanks to iriver's fantastic h320).  Either way, had to check out the ipodshuffle site, and saw a very interesting disclaimer on their site. 

  1. Music capacity is based on 4 minutes per song and 128Kbps AAC encoding.
  2. Do not eat iPod shuffle.

Well shit.  Who'd have thought the ipod wasn't in the grains group.  Oh well, guess I better plan something else for lunch.



Web Service Testing

Started playing with the .text web service last night to see how I might be able to move DotText2DasBlog to web services instead of direct connection.  My initial thought was to just replace the DB connection with web services, but it's looking like I might build both in.  I don't see a way to extract comments from the web service as of yet (if anyone know a comment would be great), so since a goal is to also migrate comments, I may choose to support both methodologies.  More on this soon.

Either way, as I started testing I started to think about a better way to test web services.  Knowing there are probably a ton of ways to handle this, I went searching.  I was right.  There are just a ton of apps that have been developed to help test, and work with web services.  Most of them cost $$, though, which is not something I was interested in spending for this. 

My search did end up yielding a few cool things, though.  First, is the .net xml web service repertory (del.icio.us'd).  This is a nice collection of resources for web service development in .net.   They also had a direct link to the .net Web Service Studio.  This was an app that I had seen earlier in the search, that seemed to be removed form gotdotnet.  Even though the sources were removed, though, they had a direct link to the binary which is still there.

This little WSS app is very cool.  It uses wsdl and reflection to build a simple web service test client.  It's a very cool little tool, especially for the price.  Released in 2002 so it might be old news for most, but for me it was new.  Wish the source was still out there. 

 



And the desktop search winner is...

Long time readers might remember that I have been using these desktop search tools for a long time.  I started with lookout, moved to copernic, moved on to google (never posted), then msn, and last night installed yahoo.

All of the tools have pluses and minuses, and I have really enjoyed working with all of them.  After just a little time with the yahoo search, though, I think this one will be a keeper (until the next release).  I don't want to get into a full review since there are probably about 50k of them being written today, but I did want to share my thoughts on why I think yahoo will be the keeper.

For me, one of the most important aspects of a desktop search tool is searching code.  Finding emails is great, pdfs, fantastic, but the real power comes from being able to find any code, at any time, just by remembering something such as an obscure comment you may have put (like //comment this later  :)  , in a matter of seconds.  This, to me, is power.  It makes me more productive, and much more likely to do research on past usage scenarios of the various things we do.  That being said, my choice is GREATLY influenced by how the product works with my piles and piles of code.

So, why yahoo?  MSN, and copernic both also index code out of the box, and google's offering can be modified to search some code, so what makes yahoo better for me?  First off, the memory usage.  As a developer, I burn through resources like they were kindling.  Gig of ram?  Filled by noon.  So when I noticed that the memory requirements of the yahoo offering appear to be the lowest, and by a pretty sizable margin.  MSN seemed to be the biggest culprit taking upto 100 megs of memory/swap space at a time (between all of the components combined), where yahoo (so far) never goes above 30.  Still early in the tests, so this may change, but my initial impression is very good on this front. 

MSN's interface was (and probably still is my favorite), but the yahoo offering is a close second, with one huge improvement.  Search context, from the first letter you type.  So lets say you are looking to see how you've used an xmltextreader in the past.  Start typing, and by the time you get to xmlte you have all of the files, with highlighting of the use, in the search app.  Very, very nice.  I knew X1 did this, and knew if it filtered down to yahoo it would be a huge plus for me. 

So it seems like I have changed desktop searches as much as underwear in the past few months, but I think at least for now I have a clear cut winner.  For me, yahoo takes round 1.  And yes, I do realize it probably has ALOT to do with being last to the table.



 Tuesday, January 11, 2005
Reboot into java?

Well, not really, but this link from Stefano Demiliani's blog seems like a great option.  Learning java has been something on my list for a while, but also not something that I could realisticly include in my development environment (at least until my next laptop, maybe with 2 gigs of ram).  This option, though, seems ideal if you want to learn java and some other non .net languages, without impacting any of your current environment setup.  Sweet.



 Monday, January 10, 2005
DasBlog and DotText coexist?

During lunch I started thinking a little bit about how I would roll this over.  One thing that came to mind, is, could I make the two co-exist in 1 web site?  The main reason I would like to do that is I would love to keep my blog at blog.iceglue.com, and still support both my old links and new ones.

There are a few options I have come up with.  First is take a static snapshot of the .text blog, and keep the permalinks up as static sites.  Possible, and relatively easy, but lose the .text functionality. 

Another idea I had was just to move the new blog to another domain, ie weblogs.iceglue.com, but that solution feels like I am getting beat down by the code. 

Another possibility is having both of them co-exist in the same dir, and just munge the http handlers together so the right urls hit the right codebase.  This seems like the most flexible, but probably the most technically challenging. 

The last idea I had was to move everything over to DasBlog (I will be updating the DotText2DasBlog to handle categories and comments anyway), and then make some http handlers that will redirect the old .text site to the new DasBlog site on a post by post basis.  Actually, this one is probably the most challenging, and probably the best solution. 

Has anyone gone down this road and not taken the easy way out (new hostname).  Any good or bad experiences with any of these ideas?  Anyone have any other ideas?

 



 Sunday, January 09, 2005
Beta dasblog up

Here goes24 starts in 30 minutes so I better wrap this up now. 

Still have some work to do, but it's getting there. 

Code | Random


DotText2DasBlog beta released

I searched for something that would move my DotText over to DasBlog, and didn't see anything handy.  Since I've got the DB here, and theres the DasBlog web service, I was able to throw something together in about 30 minutes to handle it. 

Currently it will move entries only.  No comments, no categories, just entries.  The main reason I want to import my entries is for searching them in DasBlog, so I'm not that worried about the old stuff.  If others seem interested, I might add some more to this though.

Heres a screenshot:

Grab the source code here

[Edit]

There have been a number of updates since this post.  Please follow this link to get the details on the newer releases.  Thanks



DasBlog : Adding page templates for individual pages

As described here, here are the quick and dirty details on how I implemented multiple templates in DasBlog. 

Each page in the DasBlog system inherits from SharedBasePage, which has a virtual method GetPageTemplate.  All of the pages I investigated defered to the base SharedBasePage.GetPageTemplate, which in turn calls GetHomeTemplate. 

Being as all these methods are there, I either assume there are parts of the framework that actually already dynamicly load templates, or there were plans to add these features in the future.  This being the case, I wanted my implementation to touch as few places as possible so I can yank it out if I need to. 

To quickly implement this, I added some code to the GetHomeTemplate method in the SharedBasePage that will :
1) Get Current Page Name (ie Permalink.aspx)
2) Attempt to load a template for that page (ir permalink.blogtemplate)
3) return the custom page, or if null return the home template

To accomadate this, I also added an OpenNamedTemplate passthrough method in the themes.cs file.  Once again, these two minor changes now facilitate each page having their own template by simply adding a new template permalink.blogtemplate.

You may ask, why would you want this?  The main reason is to try to emulate how MT works when someone clicks an individual link.  So once I had this, I added a new permalink.blogtemplate, and removed the DIV's that handle the right sidebar content.  Easy as cake.  I haven't found another place to use it, but I'm sure I will as I continue to dive into DasBlog.

Complete Change :

In SharedBasePage.cs:newtelligence.DasBlog.Web.Core.SharedBasePage (CHANGE)

  /* [DynamicPageTemplates]
   * Changed to allow dynamic templates.  Will parse out the page name, and attempt to
   * load a template based on that name.  If it finds one, it will use it, otherwise
   * will drop back to home template. ajj 1.7.04 [/DynamicPageTemplates]
   */
  public virtual string GetHomeTemplate(string path)
  {
   string templateString="";
   string localPath = this.Request.Url.LocalPath;
   string pageName = localPath.Substring(localPath.LastIndexOf(@"/") + 1 ,localPath.Length - (localPath.LastIndexOf(@"/") + 1)).Replace(".aspx",string.Empty);
   using ( TextReader sr = Theme.OpenNamedTemplate(path,CategoryName,pageName) )
   {
    if (sr != null)
    {
     templateString = sr.ReadToEnd();

    }
   }
   if (templateString == string.Empty)
   {
    using ( TextReader sr = Theme.OpenHomeTemplate(path, CategoryName ) )
    {
     templateString = sr.ReadToEnd();
    }
   }
   return templateString;
  }

In Themes.cs:newtelligence.DasBlog.Web.Core.Theme (NEW CODE)

  /* [DynamicPageTemplates]
   * Added this method to load a named template to allow a page to load
   * any template ajj 1/7/05 [/DynamicPageTemplates]
   */
  public TextReader OpenNamedTemplate(string basePath, string categoryName, string templateName)
  {
   TextReader templateReader = OpenTemplate(templateName,basePath,categoryName);
   if (templateReader == null)
   {
    return null;
   }
   return templateReader;
  }

 



Blog rollover delayed

I'm going to put off rolling over the blog for a little bit.  This is mainly since I doubt I will be moving forward with movabletype.  MT is a fantastic product, but I just had a bad feeling about introducing ActivePerl and MySql into my environment.  Since I host my own blog, I had this feeling of void not knowing what was going on inside the blog.  I also had no idea even how to backup and restore mysql, let alone administer is.  So in the end MT it was fun, but I have to say goodbye.

The problem is I really like how MT works.  It's template engine is fantastically simple yet capable, and I also really like the out of the box end user experience with MT.  Based on my experience adding podcasting to .Text, I knew modifying .Text to do what I was looking for would be out of the question. 

Enter DasBlog.

Not knowing what to expect, I grabbed the latest source off of GDN for DasBlog, and started up with that.  I had originally passed on DasBlog because of it's lack of SqlServer support, but then figured I don't get anywhere NEAR the traffic of say a Scott Hanselman, so I'm sure I will be ok without Sql Server.

I was up and going with DasBlog in about 20 minutes, and started diving into it right away.  The first thing I noticed is it had somewhat of a template system, using the .blogtemplate files as a partial direction on how to render pages.  Not quite like MT template, but still quite usable.  I quickly modified the source and added support for multiple templates (separate post on that), and suddenly DasBlog was looking damn good.  Within an hour of installing it I was able to setup a basic blog, AND modify the source to support multiple templates. 

I started doing a bit more research on DasBlog, and ended up spending a good portion of the weekend working on a replacement for the MT blog I just finished.  I think DasBlog will be a keeper.  I was able to move all of the HTML and stylesheets over in a couple hours, and although there are some features not in DasBlog yet, the newest source off SourceForge includes enclosure support.  Nice.  It also looks like development has picked up on it greatly in the past few months.  Even better.

I should have a public dasblog no later then Tuesday, and hopefully move over either next week or weekend.  Also, anyone know any .Text -> DasBlog converters?  I'm sure it will be pretty simple since I can get to my .Text DB and DasBlog has web services into it, so if I can't find any I'll post some details here.

 



 Wednesday, January 05, 2005
Blog rollover this weekend

This weekend I plan on moving the blog over to the new blog.  I hope things go smooth, but there may be some difficulties getting here over the weekend. 

Currently my plans are to snag my entire blog into static html so I can preserve my old links, and then move the host header in iis.  I thought about trying to make .text and MT coexist, but decided not to even try that since I didn't see much value in it.  The feed url will stay the same, although there will be a new feed that will have enclosures. 

After some thought, I've also decided to ad some google adsense to my blog.  I debated about this for a bit, but decided to try it out.  The ads will be at the bottom of the pages, blended into the new design.  I think it's very unobtrusive, but might generate at least some revenue for server expenses.  (read: I want a new server since this celery900 can't do much more then what it does  :)

The new blog also has my del.icio.us feed on the sidebar.  I have been using this site for a week or two and so far it's fantastic.  I've tried a few ways of centralizing bookmarks, but this is by far the most versitile tool I have tried.  The social aspect of the bookmarks has already taken me down a few interesting trails, so I think I'm going to find all kinds of value in del.icio.us. 



 Sunday, January 02, 2005
New year new blog

First off, I’d like to say Happy Holidays to all, and I hope everyone had a great new year.  Back to work tomorrow, bah.  Oh well. 

I was actually on vacation this week, and it has been wonderful.  Not only did I get to spend alot of time with my family, but I got a decent amount of time to play with my new toy, and work with my blog a bit.  More on that in a minute.

First on my new toy.  All I wanted for Christmas was an MP3 player.  I was burning just a ton of CD’s (to the tune of 7–8 per week) listening to podcasts, and it gets pretty annoying.  Now, I have a ton of podcasts loaded for some archiving and Nimiq out working making sure I am up to date.  Yay, now I’m on top of podcasting. 

Speaking of podcasting, I was going to do a post on predictions and goals for the new year and all that, but I was too busy working on them to talk about them.  I hope to go into more detail on some of my thoughts on the upcoming year in the next week or two, but if I don’t get to it I at least wanted to say podcasting will be huge.  This year, I think podcasting will make huge strides.  I think next year is the year my mom asks me about podcasting, but this year I think alot of the geeks that aren’t yet on board will be. 

Back to the MP3 player for a second.  If you are in the market, I would highly suggest you take a look at the h320.  I plan on posting more about that too, but this thing rocks.  And, with a little firmware upgrade, you even get video.  All for around 250$.  Sweet.

I did alot of thinking about digital media, and content delivery this week, and have some thoughts that are coming together.  I had been wanting to do _something_ with the blog, but wasn’t sure what.  I knew it had to involve podcasting, though, so the first thing that came to mind was to modify this blog to do what I wanted.  Thanks to this tutorial, I was able to add podcasting to .text in just a matter of a few hours.  As I started to dig more into .text, though, I realized alot of the things I wanted to do were going to be difficult, so I decided it might be time to switch platforms.

After some buy/build decisions of my own, I decided to start playing with Movable Type.  So, after installing a few things, I had a test blog up and going.  In a matter of about 30 minutes I had some podcasting support, and by then I was hooked.  So, sometime in the near future there will be a pretty big change to the blog. 

With the cosmetic update, I would also like to make a bit of a philosophical change.  I want to post more, more original useful content, and more personal bullshit.  Along with this, I hope to provide some audio content soon, but you’ll have to wait on details for that.  I think you might like it though.  In the meantime, you can at least see a beta of the new blog.  This is a beta, broken links all over, feeds not right, the url isn’t even final.  Check it out, but don’t change your subscription yet.

Code | Random


 Saturday, December 18, 2004
Trillian 3 released

Installing the beta was on my list for this weekend, but looks like the folks over at Cerulean Studios are ahead of me.  Last night, they released some final bits for trillian.  Very cool. 

If you don’t use Trillian you should at least look at it.  It is a fantastic program that combines all of the popular IM clients into one, and does it exceptionally well.  I have been using it for years now, and could never go back.  The new version adds quite a few features based on the product tour, so I’m pretty siked. 

Ear candy: The Cosbys - aly-ellen-izumi-paula-rachel-s