Hanalei, Hawaii Wednesday, March 10, 2010

Missing Screencasts

One the big issues with Software as a Service is when the service disappears. You might expect this from a small company – but from Microsoft? In fairness I had lots of warning – but all in all I had about 40 videos up there – all of the MVC storefront stuff, Kona, SubSonic, and other things. Migrating to another service (which I get to pay for) seems a little bait and switch to me – so I’ve moved them to my server here.

Plum_separator

It’s Time for This: ActiveRecordEngine for ASP.NET MVC

I had dreams of this when I joined Microsoft a few years back – that SubSonic would be the database juice in the ASP.NET MVC story. Or if not the juice then the ActiveCherryOnTop.

The pieces didn’t quite fall into place, though I tried many a time. The issues that I faced were pretty simple – everything I tried didn’t quite fit. No one wants to take a dependency on a specific data access library (which is precisely the thing that Rails does most of the time – and it’s quite freeing to not think about it) – so working SubSonic into MVC didn’t quite fire on all cylinders.

It’s understandable – but I have a better idea now and I want to see if others are willing to engage with me on it. “Others” being the troupe of ORM-dudes out there: NHibernate, LLBL, and the for-pay guys…

Plum_separator

SubSonic Support

I got to talking to Ayende today about his support model for NHibernate that he’s working on and it made me think a bit – I have users in much the same circumstance: One of the oft repeated objections to using NHibernate is that there isn’t someone that you can officially complain to. Some organizations put great store in having someone to officially complain to :-) I’ve heard that a lot with SubSonic.

Plum_separator

SubSonic 3.0.0.3 Is Released

Look at it this way – it’s been almost a week since my last one :). Nailed more bugs and I’m hoping that the reports will slow down as we stabalize.

Plum_separator

More On SubSonic’s Simple Repository

A lot of people have been asking me about the SimpleRepository and “which approach should I use”. Decision Paralysis – having too many choices is not a good thing some times :).

Plum_separator

SubSonic 3.0.0.2 Is Released

Yes, I know how it looks, but I also know that most of the bug reports stem from the same bugs, so the sooner I get that out of the way, the closer we are to stability. I can’t thank the contributors enough for their help, and also the people who stick it out with me on the Issues list at Github.

Plum_separator

SubSonic: Working With Git

Many, many people have asked why I moved our Source Repository to Git/Github and it’s hard to explain other than to say that for Open Source – Git is a very nice option because it very much enhances the “collaborative” experience in that merging code from others is not only simple – it’s foundational. The only way that seems to capture the main elements of Git is that it’s peer-to-peer source control with a heavy dose of Social Networking.

Plum_separator

SubSonic 3.0.0.1 Released

Early and often! Might as well get started on the right foot yah?

Plum_separator

SubSonic 3.0 is Released

At some point you need to stop polishing and let it go already – so I did just that today: SubSonic 3.0 is released.

Plum_separator

SubSonic 3.0: ActiveRecord

Google’s project site is down for a while and I have some perf tests running in the background so I thought it might be time to crank out a few more “preview” posts of SubSonic 3.0.

Plum_separator

SubSonic 3.0: The SimpleRepository

I have a little downtime right now (which I’ll write about in a later post – and yes I still have my job) so I’m using it to put the wraps on SubSonic 3.0 (soon, soon).

Plum_separator

SubSonic 2.2 Released

I’ve been up way too late over the last week – but it’s been really fun :). I tore into the Issues list (both on Google and on our old Codeplex site) and loaded up about 13 total patches which, I think, solved a TON of problems.

Plum_separator

SubSonic to Acquire NHibernate

Hanalei, HI – April 1, 2009: SubSonic (http://subsonicproject.com), a data access tool and “Super High-fidelity Batman Toolbelt” (according to its owner, Rob Conery), is set to acquire NHibernate, a much larger data access technology built on the .

Plum_separator

Putting the “M” Back in MVC

Trying to keep up my end of the bargain with respect to MVC and SubSonic :). I did a walkthrough of it and decided that I was talking too much and, in honor of everyone telling me "SubSonic is dead" I thought it fitting to toss in some Rob Zombie.

Plum_separator

Thoughts on SubSonic Management

I’m finally getting around to organizing SubSonic a bit and, aside from flaming me for the obvious (docs suck, project’s dead, etc) – I’d really like your help on a few things. Forums Our forums are doing decently well but managing the server/software/upgrade sucks.

Plum_separator

SubSonic 3 Alpha Updated

Many thanks to the folks who downloaded and ran the alpha. As I figured, I missed a few things.

Plum_separator

SubSonic 3: Alpha Is Ready

SubSonic 3 is ready for Alpha. It's a pretty significant upgrade and I think I've tackled all the bugs and issues.

Plum_separator

SubSonic 3.0 Repository Template Update

Got a fun email from Will Gant today: Since everything else is going my way (sorta like Burger king), now comes the "can I have fries with that?" question.

Plum_separator

SubSonic 3.0 Preview 2

Over the last week I've made massive improvements and upgrades to SubSonic 3.0 and the templates that it comes with.

Plum_separator

SubSonic 3.0 Preview 1: Linq Has Landed

I've been working a lot over the last few months on our next rev of SubSonic, and I think I have something that's good enough to issue as a preview. Please understand that this is a preview in every sense of the word, and may shatter into a zillion pieces and make you want to pour your Red Bull over my head.

Plum_separator

SubSonic MVC Addin Updated for Beta 1

I posted a couple of weeks back that I created a prototype Addin for Visual Studio that would scaffold your MVC site for you using Linq To Sql as the data access bits. If you didn't get a chance to watch the screencast - have a look.

Plum_separator

SubSonic and Hanselminutes

Got a call from Scott Hanselman the other day and he asked if we could talk about SubSonic and other things on Hanselminutes. Kind of cool, that, as I love Scott's show and have been secretly waiting for him to let me on the show with him!

You can listen to it here.

Plum_separator

SubSonic MVC Scaffold Addin

Over the last month or so I've been working on an Add-in for Visual Studio 2008 which will generate scaffolded Views and a Controller using Linq To Sql. I took my time with it as I wanted to leverage all of the goodness that I've learned from the MVC Storefront, and as of today I think it's ready to see the light of day.

Plum_separator

My MVC Starter Template

I've been toying around with reorganizing the default MVC template and thought I would share it with people. I like the way it's come together.

Plum_separator

SubSonic: Added Wildcard Methods

With revision 482 I added in the ability to work with string values and "LIKE" queries a little more intuitively. On a recent post, a commenter (liviu) left this comment: ".

Plum_separator

SubSonic Scaling

A question came up in the dashCommerce forums about SubSonic's ability to scale. I'd like to address this a bit as the link has been deleted and I don't appear to have the rights to comment on Chris Cyvas's blog.

Plum_separator

SubSonic: New Code Samples And A SubStage Walkthrough

I don't think I'll ever escape people telling me our docs suck, but I can always try :). Today I kicked up 3 new pages on our project site that are just the start of a barrage of "how-to" information so I get the word out.

Plum_separator

SubSonic 2.1 Released

TFS (CodePlex source control) is still freaking out but Eric and I feel pretty good about the state of things. and so 2.

Plum_separator

SubSonic: 2.1 Is Bangin At The Gates

Eric had some final changes to make last week and we were ready to go with the release (as planned) on Friday, but TFS went down at CodePlex and we couldn't review the submitted work items for the week prior. And it's still happening.

Plum_separator

SubSonic: Writing Decoupled, Testable Code With SubSonic 2.1

I've heard/read rumblings over the last few months that "SubSonic is tightly coupled" and therefore you have to "drag it around" with you in your project. I can see why people might think this - ActiveRecord is not the most testable thing in the world :).

Plum_separator

SubSonic 3.0: IQueryable Update

One thing I've learned is I can't stay quiet for too long on this stuff :), so here's an update on what I'm working on. To Understand Recursion, You Must First Understand RecursionI have to thank Eric for that one - I had heard it in school a few times and forgot it.

Plum_separator

SubSonic: Using Migrations

I've spent the passed few weeks polishing up some features for our 2.1 release (aka Pakala), and I've been paying particular attention to Migrations - something I promised would be ready to go a few months back.

Plum_separator

SubSonic: RIP?

I'm getting a non-stop barrage of emails/IMs/blog comments in the wake of TechEd asking me if SubSonic is dead and buried. Accusations of "Microsoft has bought and buried SubSonic" seem to be coming at me from various places.

Plum_separator

SubSonic: Update on 3.0 Plans

We haven't even pushed 2.1 yet and people are on me about plans for 3.

Plum_separator

SubSonic Gets More Cowbell

This is completely mind-blowing - I've just today added a new contributor to the SubSonic project, and I can't believe I'm writing this. I'm giggling pretty damn hard.

Plum_separator

For Jeff Atwood

With Changeset 391, committed today, SubSonic pays tribute to a visionary man. Yes, this test passed.

Plum_separator

SubSonic: Taking a Look At The New Repository Base Class

Many people have asked over the last few years if it was possible to use SubSonic without Active Record. They didn't like the idea that every object could interact with the database and wanted a more "locked-down" approach.

Plum_separator

SubSonic: New Project Site Online

I've spent the better part of this week moving our site over to Graffiti - a cool application from the Telligent guys that, at one time, was built using SubSonic :). We didn't support Access so they moved on :(, but we still love them, especially after getting Graffiti up and  rolling so quickly.

Plum_separator

SubSonic: 2.1 Beta 2 Available Now

I spose there's not much more to add to that title. Eric and Shawn Oster have been hard at work while I pretty much have been under water for the last month, getting ready for MIX.

Plum_separator

SubSonic: 2.1 Beta Is Up

Eric and I have been going full-speed to get this next rev of SubSonic up, and with a LOT of your help we've got a beta ready for you. You can download it here.

Plum_separator

SubSonic: 2.1 (Pakala) Preview, Part 2

We're working full guns on the next release of SubSonic, fixing bugs implementing literally hundreds of the features you've asked for. I wrote previously about our new Query tool, and we've introduced some changes to it to make it even more usable and readable.

Plum_separator

SubSonic And MVC: Introducing Makai

One of my main responsibilities at Microsoft is to help build out the developer love around ASP.NET and ASP.

Plum_separator

SubSonic: Version 2.1 (Pakala) Preview: The New Query Tool

Eric and I have been working just about non-stop on our bug list as well as some very cool innovations that he and I have cooked up over the last six months. We've had to wait a bit for the dust to settle in the .

Plum_separator

Tip: Overriding Core Object Methods

Every object in C# inherits 3 overridable core methods, all stemming from "Object": ToString(): represents an object if you convert it to a String. By default, this is the object Type.

Plum_separator

SubSonic: New Forums Online

The saga continues :). A while back I mentioned that our forums sucked and I wanted to see what people were thinking about what we should do.

Plum_separator

SubSonic: The Collection Data Visualizer And Other Goodies

Those crazy French guys over at LavaBlast (well I'm not certain they're French - but they have very French names :) created what I think is one heck of a cool tool - a debug visualizer for SubSonic collections: basically hover over your collection at design-time and you can see your data! You can read more here.

Plum_separator

SubSonic: API Is Documented

Yesterday I asked, well I actually begged, for help and was happily beset with offers for help. I enlisted two good people to work up a SandCastle documentation set and they happily did!

Plum_separator

State Of SubSonic, November 2007

I've been reading through the forums, getting up to speed on a lot of issues and what's plainly evident is that I've been busy for far too long. The good news is that I'm getting "in the swing" here and have begun my work on SubSonic in earnest, once again.

Plum_separator

SubSonic: Our Forums Suck. HALP!

I was hoping our forums project would take off and we could "dog food" a neat new forums project based on SubSonic. That didn't happen, and I'm paying the price.

Plum_separator

SubSonic: MVC Preview Video

I went and bought myself a Camtasia license for the new version 5.0 that's coming out and WOW did I geek out.

Plum_separator

... In Which We Discuss Proprietary Object Noise

Jeff wrote a good post today on languages within languages- wrapping up the post with Embrace the idea of languages inside languages. In The Land of Strings, we speak regular expressions.

Plum_separator

Microsoft, SubSonic, and Me

This is the sixth rewrite of this post. It's not that I don't know how to write a thought, nor that people are telling me what to write.

Plum_separator

How MVC, jQuery, and SubSonic Will Make You Smile

As I continue to work with the new MVC bits with respect to SubSonic, I keep smacking my forehead (and there's a lot to smack) at how much simpler things can be if I stop overthinking them. Getting to know toolsets like jQuery and SubSonic can offer many of these moments.

Plum_separator

Oh Look, Darth Vader's Wearing Black Today

If you ever write a contentious post, don't tell one of your friends who's got great Karma on Reddit. You'll be pretty busy getting buried by flames for the next day.

Plum_separator

SubSonic: Be Vewwy Vewwy Quiet...

I'm sure a lot of you have noticed Eric's and my conspicuous absence from the forums lately. I have to apologize for this - we've both been really busy!

Plum_separator

SubSonic: Migrate Me

Just last night I ran my first "Green Light" unit tests on what I think is going to be a pretty groovy new feature: Migrations. Usually I don't like to talk much about functionality until it's 90%-ish, but I figured that it might be good to let everyone know the what/how/why now so I can take all your lovely comments and see if I can pop them in before it gets released.

Plum_separator

SubSonic: What's Happening Now

I've been pretty quiet over the last month or two on SubSonic matters and hopefully that will change over the next few weeks as my workload lightens a bit and Eric and I find more time to devote to the next release. The big thing for me has been LINQ and LinqToSql.

Plum_separator

... In Which We Discuss Digital Gearheads and Geek Mastery

I had a roommate in college named Eric who was from "Pennsyltucky" as he called it. A pretty nice guy, he was your very, very typical gear head: hacked up muscle car, kept every spare part he could find at a swap meet (and that fell of his car), insisted that he was safer driving at 80 than he was at 55 "because he could control his car better", etc.

Plum_separator

SubSonic: SonicCast 8 Is Up - Many To Many Relationships

We've had an avalanche of questions regarding many to many relationships on our forums, and so I thought it would be a great subject for the next in our series of webcasts!

You can view it here.

This webcast is about 11 minutes long and shows you the generated methods we create for you, the schema we expect, and also how to use the Scaffold and ManyManyList to work with the data.

Plum_separator

SubSonic: Soniccast #7 - JQuery Magic

Kevin Fricovsky (or K-Fric as he likes to be called) guest stars for this SonicCast and dives into JQuery using SubSonic's REST interface. Kevin recently kicked down with the JSON part of our REST interface, and then created a really cool webcast that shows it off as well as the awesome grooviness that is JQuery.

Plum_separator

SubSonic: SonicCast 6 - LINQ, LinqToSql, and SubSonic

SonicCast #6 is ready to go, and this one's all about LinqToSql - Microsoft's new ORM toolset. I take a look at it from an architectural point of view, and also discuss what it means for SubSonic.

Plum_separator

SubSonic: SonicCast #5: REST, LINQ (Beta 2), And Other Acronyms

Two in one day! Gotta be a record :).

Plum_separator

SonicCast #4 Is Up: All About Rails

Got a lot of great feedback from the MVC (#3) SonicCast, most of it was questions about Rails and why we did what we did with SubSonic. Given this, I thought it would be fun to show some of the neat features of Rails, focusing on things from the ASP.

Plum_separator

SonicCast #3 Is Up: All About MVC

The 3rd installment in the SonicCast series is up, and I talk about the whole MVC "thing" and how we're trying to emulate that with our new SubSonic MVC templates. I also talk about how Rails implements it (a bit) and show you how you can customize our MVC templates to squeeze some tighter architecture out of your distributed app.

Plum_separator

SubSonic: Out On A Limb...

I've been slaving all day, and all night, working out whatever weirdness I could find. I'm sure you'll find more: Hello SubSonic Forums Forums are a weird thing in that once you roll over, there's really no going back as they accrete data quickly.

Plum_separator

SubSonic: SonicCast #2 Is Up - All About Paging

These things are fun to make, and I had a request on my blog yesterday from Jim Bonnie (homey I know you like DNN but that blog. yikes!

Plum_separator

SubSonic: SonicCast #1 Is Up

I'm putting together a series of webcasts in a "podcast" style that will show you how to do certain things with SubSonic. My hope is to do at least one of these a week, and that they last no more than 5 to 10 minutes.

Plum_separator

SubSonic: MVC Templates Available And A Security Update

First things first: I managed to do a really boneheaded maneuver for the starter site and left New Page creation open to anyone who can guess the URL. No excuses on my part - that was plain stupid.

Plum_separator

SubSonic: 2.0.3 Released

We've just released version 2.0.

Plum_separator

SubSonic: Auto-generate A DAL For Class Library and Win App Projects

SubSonic's BuildProvider gets all the chicks. but it doesn't have to be that way.

Plum_separator

SubSonic: Sugary Sticky Stuff

With the release of SubSonic 2.0.

Plum_separator

SubSonic's New Query Engine: Give it a REST!

I've been noodling a lot on the new Query Engine and have received a lot of comments and ideas - thank you! I mentioned there were other things afoot and I think it's about time to dive into those (Eric you might want to look away from your monitor at this point) - particularly our up-coming REST support.

Plum_separator

SubSonic: New Query Engine In The Works

I'm pleased to announce that we've begun work on the next rev of our Query tool. I think you're going to like this, so I'll get right to it.

Plum_separator

SubSonic: Some Clarifications

Eric just sent me an email that relayed a SubSonic user's concern that I'm going  to "stop development" permanently. I've also received a few messages from people who were concerned (some even said "shocked") that I would stop development altogether because of the whole TD.

Plum_separator

I'm A Litte Freaked Out

I've been sort of on the sidelines with regards to Jamie Cansdale's struggles with TestDriven.NET, sort of waiting for Microsoft to come along and say "you know, let's be friends" and drop their legal posturing.

Plum_separator

ORM: All That Scratchin's Makin Me Itch!

Hey! What's that over there laying on the ground in a big heap with blood all over it!

Plum_separator

SubSonic: Killer Blog Reference

Kevin over at ScribeSonic can write, and write very well. I try to kick up things to a good level of detail as much as possible - but as Steve Martin once said: Some have a way with words.

Plum_separator

SubSonic: New Project Site

We're still at CodePlex, but I've moved off the Wiki there in an effort to consolidate as much as I can into one spot (though it may not look like that right now). I have revamped all of our docs and walkthroughs into one spot:

http://subsonicproject.com

When the forums are ready to go, I'll move them there too! I could still use some help ramping up the docs so if you want to help out, please let me know!

Plum_separator

SubSonic Sugar

Phil Haack inspired me the other day when we geeked out playing with Ruby-esque extensions. A lot of commenters on his blog were saying things like "Why can't we just write MinutesAgo(20)?

Plum_separator

SubSonic Vote: Rewriting the WHERE Method?

Phil wrote a great post today about our Query tool, and has been diving deep into the innards of the thing over the last few days. One of the things I like about Mr.

Plum_separator

SubSonic: Getting Started Webcast

I've had some conversations in our forums that our Getting Started docs . well suck is the only way to put it .

Plum_separator

ScribeSonic's Up

Kevin Fricovsky, the guy from Juxtaviews whomrecently interviewed mee, just opened the doors on ScribeSonic, a blog engine built on SubSonic. His first post, which I just read, is pretty darn informative on the different ways you can use SubSonic's collections.

Plum_separator

You A Comedian Or Somethin?

I've been asked a lot about what SubSonic's new logo means:  Specifically, why we chose "All Your Database are belong to us" (with the incorrect grammar and bad casing). I've also been asked, repeatedly, why we infuse "silly" comments in the code, such as             //now for the wheres.

Plum_separator

SubSonic: Move To Subversion Is Complete

I'm watching Tortoise scroll by right now, committing 2.0.

Plum_separator

SubSonic: 2.0.1's Ready To Go

While I was fiddling with the Starter Site, Eric put the wrap's on the bug fixes. I've also updated the Starter Site with all the new bits and you can get it all here.

Plum_separator

SubSonic: 2.0 Starter Site Is Ready!

I'm happy to announce that I finally finished the Starter Site for SubSonic 2.0.

Plum_separator

SubSonic: Query Webcast Is Up

I'm committed to rolling out as many webcasts as I can, and the next in the series is ready to go. So far we have the intro and the VS/Command Line ones, and now we have a 20 minute webcast that talks about the enhancements to the Query Tool.

Plum_separator

SubSonic Green Screen Challenge

I'm going to do an "hour in the life" of . well me.

Plum_separator

... In Which We Discuss Primary Keys

I've had some tough technical interviews in my life, but none was more rigorous than the one I had for Avanade, back in 2000 when they were just opening up. If you don't know, Avanade is a morph of Microsoft's Consulting Service (MCS) that is a bit looser and geared more towards development and agility.

Plum_separator

SubSonic: Mono's The New Black

So if you can't tell, Miguel de Icaza got to me this last week and brainwashed me a little bit. I'm starting to think in a Mexican accent, wave my hands a lot, and push SubSonic towards Mono.

Plum_separator

I've Got The Mono Bug

I am soooo mentally hung over from MIX that I can't get my head into work at all. I'm trying.

Plum_separator

At MIX: SubSonic Sideshow

I was talking to Jon Galloway the other day and he was thinking it would be fun to do a mini SubSonic session in the Mashup lounge today if anyone's here and still around. We're shooting for 2 pm if you'd like to come.

Plum_separator

SubSonic 2.0 Final Release: Update

I managed to screw up a very simple, yet pervasive issue that's plagued this platform since it's been introduced: BOOLEAN validation. Long story short, I've had to reissue the release as this flaw is critical.

Plum_separator

SubSonic 2.0 Is Final

Download I am happy to announce that SubSonic 2.0 is finally released, and just in time so that I can think about something else for MIX :).

Plum_separator

SubSonic: QuickTable Added

Eric's been hard at work chasing down the bugs and work items and I vowed to stay out of his way mainly because he's got more time than me right now and we both hate merging and diffing when we don't have to. So he's been all over the bugs - go dude!

Plum_separator

SubSonic 2.0 Webcast #1: Using the Command Line

I took a few minutes today to work up a webcast (using BBFlashback!) that shows how I use the new commandline tool (sonic.

Plum_separator

SubSonic Has Been Kicked

So I'm cruising over to DotNetKicks the other day when I see a familiar logo in the top right. OURS!

Plum_separator

SubSonic Beta 3 Is Ready

I tried to put Eric in a headlock and tell him this was RC1 - he wouldn't go for it. Many bug fixes and stabilization (read here) - thanks to all of you who are testing this for us!

Plum_separator

The MIX07 Open Source Panel: I Need Your Questions...

I've been lucky enough to be selected to speak on a panel at MIX '07: "Open Source, the Web, Interoperability and Microsoft". I honestly don't know what I'm doing there.

Plum_separator

SubSonic Beta 2 is Ready

We're not messin around! Or I should say Eric's not. I did as much as I could but I was stricken by Moco Loco today (don't know what I was thinkin) and Eric kicked down with some more changes and bug fixes.

Onward!

Plum_separator

SubSonic 2.0: Beta 1 is Ready

First, I can't thank Eric Kemp enough for his work. Seriously, I know thank-you's are a big part of releases, but quite frankly this wouldn't have happened without him.

Plum_separator

SubSonic Beta Update

I know I said "3 days" 5 days ago - but there's a dern good reason we've stretched another 2 days. I was going back over the perf tests and while the core is as fast as ever, our load-ups (when the app starts, the providers "spool up", and we go get the schema we need) were taking far too long.

Plum_separator

Musings: In Which We Learn What a Steinlager At Sunset Can Do For You

Warning: It's Friday, I'm worked from a long week, and I've decided a blog entry is the best distraction. Last night I had the rare occassion to watch the sunset on the beach by myself.

Plum_separator

SubSonic: HUGE Announcement!

UPDATE: The date of this post is April 1 , which in the USA is the date in which we mercilessly play jokes on one another. This was my little joke to you.

Plum_separator

SubSonic: Two Big Checkins

This is good stuff, and I am soooo stoked that we finally got it up and working. Our goal for 2.

Plum_separator

SubSonic Newsfeed

I've finally convinced Eric to start a blog (SubText no less :) and he's off and running. I've hooked it up to our News Feeds so you can see what's going on with his every checkin. He's pretty darm detailed, in a way that I'm not, and I'm subbing to it so I know what's going on :).

Thanks Eric!

Plum_separator

Using SubSonic Within Transactions

One of the bigger requests we've had is to support transactions using SubSonic. We addressed this by adding support for executing pass-through queries (i.

Plum_separator

Me And CodePlex: We're Just Like Carrots 'N Peas

So Phil Haack wrote up a nice blog about Subversion and CodePlex and called me out in his blog for some woes I had regarding the all-or-nothing commit access situation at CodePlex. Check ItCodePlex is essentially a hosted version of Team Fortress Classic Team Foundation Server.

Plum_separator

SubSonic: Checkin Notes For 2/28/2007

Found some time to work on the change list in front of me today, and created what I think are some groovy additions to our core classes (AbstractRecord and AbstractList): Clone(), CopyTo(), and CopyFrom()Clone() will take an object, like Product, and create a new instance of it. Same for collections.

Plum_separator

SubSonic 2.0 - What's Comin

I've been sort of quiet lately regarding SubSonic, and that's a good thing :). Many many things are afoot and I thought rather than fall on the good graces of SubSonic users, I'd be a good pro-active dev-type and let you guys know what's coming up in the near future.

Plum_separator

In Which We Reminisce About San Francisco...

I used to live in the Marina district of San Francisco with my wife (then concubine) from 1998 through 2001, right off Cedar street, on Divisadero. Now, I'm not really the "Marina" type (BWM, snaggly little groomed-out yuppie dog, double jog stroller) but I absolutely loved it there.

Plum_separator

SubSonic Console: Groovy VS Shortcuts

 Goofing off here on a nice, bright (and warm) Saturday morning as I hide from my family down in my dungeon. I had a brainstorm while sipping my coffee today - musing over the consoley-ness of SubSonic.

Plum_separator

SubSonic Console Update

I'm happy to relay that I just finished the last "feature" of the console app, and it works a treat. Jon Galloway has been kind enough to put it through some testing and it's really, really helped.

Plum_separator

SubSonic Goes Console

I am putting the wraps on a new edition to the SubSonic family: The SubCommander. It's a pretty lame name and I will change it, but for now let's just call it "Code Named SubCommander".

Plum_separator

Code Obesity - Is It a Disease?

Good conversation I had today with a guy I work with regarding Code Generation. He was asking me things about SubSonic (and my perpetual dance on the OR/M fence) and what I think of code generation in the first place.

Plum_separator

I Saw Mommy Kissing SubSonic...

OK I couldn't think of a better title :). I'm giddy.

Plum_separator

SubSonic 1.0.6 Released

We just released version 1.0.

Plum_separator

A Few Thank You's...

I'm fortunate enough to be running two great OpenSource applications: The Commerce Starter Kit and SubSonic. It's very time consuming but quite rewarding at the same time to know that there are ways to positively impact our industry (as opposed to negatively, which used to be my norm :).

Plum_separator

GridView Sorting And Paging - My Pain, Your Gain

The obvious out of the way first: I don't want to use the SqlDataSource. I can't for the project I'm working on.

Plum_separator

SubSonic Tip: Overriding The Code Templates

Did you know that if you don't like our code, you can override it? Did you know you can do this on a per-project basis?

Plum_separator

Speaking At Bay.NET User Group in SF, End Of January

I've been asked by the good people at the Bay.NET user group to come by and do a little Dog and Ding Dong show regarding SubSonic and the Commerce Starter Kit.

Plum_separator

... In Which We Discuss Things That Don't Suck

I used to listen to Jim Rome. I drove my mom's 1980 Nissan Maxima for a while and it didn't have FM radio for some reason.

Plum_separator

SubSonic Docs - Finally!

I've finally gotten around to using the Wiki features of CodePlex to document out SubSonic. While there's still a lot to do, I've updated the main page and added a lot of samples and explanation to help people out.

Plum_separator

CSK 2.0 Is Launched, And a Dedication

Finally put the pedal to the metal today and pushed version 2.0 of the Commerce Starter Kit live.

Plum_separator

My Norton DOS Attack

For those of you who are wondering (as I was) "WTF!" was up with the forums and Commerce Starter Kit main sites this last month - well I finally have an answer.

Plum_separator

SubSonic 1.0.5 Released

I just pushed the latest SubSonic build to CodePlex, along with it's Starter Site cousin. Here's the latest changes: Removed the db scripting entirely; SQL SMO is causing lock-ups in the build process so until that can be resolved, it's out.

Plum_separator

Is Microsoft Going Dynamic?

Jon Lam, creator/maintainer of the RubyCLR (a Ruby compiler for .NET) has been hired by Microsoft.

Plum_separator

SubSonic on the Rocks

Jon Galloway of Veloc-IT recommended to the .NET Rocks radio show guys that SubSonic might be a fun topic to talk about.

Plum_separator

Scoping a SubSonic VS Add-in: You Can Thank La La

If you're a parent then you most likely have embraced the Easter-eggy acid trip that keeps your kids quiet while you drink your cofee in the morning, aptly named the Teletubbies. If you have Tivo you probably abuse this luxury.

Plum_separator

SubSonic update

I've made the switch to Vista and hate it. That dang Defender bugger keeps trying to defense me against my starting my own programs and installing anything.

Plum_separator

SubSonic 1.0.4c Released

This is a maintenance release; fixed 3 things: "SCOPE_IDENTITY" was mispelled in the insert queries Added back in DataSet support for SPs Fixed some off file references for the BatchGenerators in the Starter Site http://www.codeplex.

Plum_separator

What SubSonic's Good For, and What It's Not...

I was interviewed today on DotNetRocks (thanks to Jon Galloway) regarding SubSonic and all the things that go into it, why I made it, etc. It occurred to me that, as I was explaining from whence it came, I haven't really made it too clear the things that SubSonic can really do well for you, and the things that it can't (or possibly shouldn't) do for you.

Plum_separator

SubSonic 1.0.4 Released

A lot of releases this week - but I promise, I'm done for a while. I'm in the middle of contracts so I've had nothing to do but dabble and perfect things and hopefully make them better.

Plum_separator

SubSonic Starter Site Now Available

Today I continued to polish out some bugs and sift through the CodePlex issues (thanks to all for posting) and I decided to go ahead with something I've wanted to do from the start: create a Web Site Project that had everything already hooked up: my favorite images, my favorite style sheets, the login and membership hooked up, and so forth. Add to this pre-wired SubSonic action and you have the new SubSonic Starter Site: http://www.

Plum_separator

SubSonic 1.0.3 Now Available

Just pushed the latest release to CodePlex of SubSonic. Some cool changes in there, including: Scaffolding now uses a (skinnable) GridView :) that sorts automatically Added scripting to SubSonic via SQL SMO.

Plum_separator

SubSonic Version 1.0.3 (coming this week), Views, and Other Things

People have been asking a lot about using Views and I kept saying "They're coming" - the odd thing is that I never just tested to see if they're supported! It occurred to me today that Views are regarded just like tables (essentially) in SQL Server so I went ahead and created a Unit Test where I queried the "Invoices" view of Northwind: IDataReader rdr = new Query("Invoices").

Plum_separator

Using SubSonic - I'm Soaking In It

As I mentioned in one of my previous posts, I have been working with SubSonic on a major rush job for a client of mine. The client is, well, like all clients shouldn't be (but inevitably are): wating until the very last minute (on a rush job no-less) to make system-wide changes.

Plum_separator

SubSonic 1.0.2a Released

A buddy of mine likes to use a catch-phrase (which I loathe): "Dog-Fooding". I am sure many people are familiar with it and I tell ya, it sort of triggers my gag-reflex.

Plum_separator

SubSonic Version 1.0.2 Released

Some nice updates today, and bug fixes from those who took the time to submit their thoughts in the forums. I am still chasing a few more 'issues' that I wouldn't call bugs at this point, but here's what's new: TransactionsFull Transaction support has been added.

Plum_separator

ASP.NET ActionPack Renamed...

The reponse to the ActionPack has been tremendous, and I am really happy if it's helping people have more fun at work or messing with the hobby they love. I did have a couple of folks who reacted with a "headscratch" at the chosen name of the project, since, well, the Ruby On Rails ActionPack does far different things than our ActionPack does.

Plum_separator

ASP.NET ActionPack 1.0.1 Released

Tonite I released the 1.0.

Plum_separator

The .NET ActionPack, MySQL, and the Enterprise Library

One of my great hopes with the ActionPack was to be able to, as elegantly as possible, abstract out completely the way the core Database bits were wired up. It's just not possible I hate to say.

Plum_separator

Action Pack Update Release

As we're jamming here on the upcoming release to the CSK (2.0 RC1), I'm updating the core object model (the ActionPack) to do some very very cool things.

Plum_separator

Zero Code DAL: The .NET ActionPack

I went a little nutso this weekend and created (what I think) is the neatest thing I've ever made. Not trying to sounds egotistical with this but it's such a rush when you have an idea and you watch it borne out - and it works!

Plum_separator
Gecko