|
Sponsored Links
Resources
.NET Research Library
Get .NET related white papers, case studies and webcasts
|
News
News
News
|
Messages: 37
Messages: 37
Messages: 37
Printer friendly
Printer friendly
Printer friendly
Post reply
Post reply
Post reply
XML
XML
XML
|
 |
The Code Room Pilot Episode
What do you get when you combine 3 experienced .NET developers, one laptop with only 5 hours of battery life, ASP.NET v2.0, one page of loose specs, and an ample supply of Texas barbecue? The Code Room! In this videotaped competition three developers have only five hours to create a fully functioning new web app using ASP.NET 2.0.
During a recent MSDN event in Houston, Texas three developers were chosen to take place in a pilot for a new series called "The Code Room." After attending a presentation on ASP.NET v2.0 our lucky developers were locked away in a warehouse and given the challenge to create a fully functioning e-commerce web application using only Visual Studio 2005 Beta, SQL Server Express, and a laptop running on batteries with no power cord. TSS.NET spoke to the executive producer and one of the three developers involved to learn more about this unusual .NET developer's challenge.
The developers were Chris Menegay, Scott Bellware, and Tracy Sawyer. Chris is a Microsoft Regional Director in the Dallas area who specializes in .NET architectural consulting. Scott is a C# MVP and a .NET consultant from Austin specializing in OO and Test Driven Development. Tracy is a .NET software engineer for The System Shop in Houston.
The requirements for the application were fairly straightforward and directed at using the new features of ASP.NET v2.0 that they had just seen demoed such as Master Pages, Personalization, and Security. But as the team quickly found out, there were a lot of details left out of the specs that had them making decisions for the users themselves. This is the list of requirements for the application.
- Allow anonymous & authenticated users to add products to their order
- Create a method for existing users to reset their passwords
- Allow existing customers to log in and see their order history
- Recognize existing users and allow them to add products to their order but prompt them to log in when attempting to complete the order
- Utilize master pages to store the theme and navigation of the website
The video does a good job at depicting what it takes to move new technology concepts from a presentation into an actual solution. The developers were surprised at how much of the work that they started to complete manually was actually automated in Visual Studio 2005."There was quite a bit of friendly squabbling about the right approach to do certain things. There was only one machine so while somebody was trying something out, you had to wait." - Chris Menegay While the pilot episode is only a half hour long, the film crew shot more than nine hours of footage. Unlike many developer oriented productions, this film crew was right out of Hollywood. The director of the episode was Darrell Suto who directed "Bill Nye, the Science Guy". The Co-Executive Producer was C.F. Bien who has credits with Fox and NBC. The producer was Mark Strachan, who has worked on major motion pictures such as "Charlie's Angels" and "Rush Hour". In addition to its release here and on MSDN, the pilot will also be shown on several television stations across the country starting with Seattle on December 10th."The primary context of the series is to show the social and team aspects of programming" - Paul Murphy, Executive Producer In the case of these three developers the interactions were very social with Tracy taking to tattooing "C#" to Scott's bald head while Chris worked with the Login controls. We also understand that there might have been some singing involved during the van ride to the warehouse. The results are both humorous and insightful as we watch how the mind of the .NET developer goes about integrating new technology and working in a team environment under pressure.
To watch the full video, click here. To learn more about The CodeRoom or to register to become a contestant, visit www.TheCodeRoom.com.
Editors Note: This episode is a pilot for what the producers hope will be an ongoing series. They are VERY interested in receiving feedback on the video including new ideas, what you thought of the developers, and how to make the show better. So take a look and hit the "Post Reply" link!
|
|
Message #149041
Post reply
Post reply
Post reply
Go to top
Go to top
Go to top
|
 |
download?
It's not currently available for download from our site but I believe when some of the other sites, including MSDN, publish the video it will be downloadable. In the meantime, you're welcome to watch it here whenever you like! :-)
|
|
Message #149083
Post reply
Post reply
Post reply
Go to top
Go to top
Go to top
|
 |
Hrm...
Ok -- my opinion:
I've been in programming competitions before (not to mention programming certification exams)... and that show didn't really capture the "urgency" you get when you are running out of time. In fact, a lot of people don't even finish some competitions/exams, and just sweat bullets for the last ticks of the clock. I think it would be better to have the requirements seem near impossible and not have a "win/lose" outcome but a "how good are you?" outcome. If you are a John Carmack, sure you'll finish with time to spare. If you're average then you might only hit 75% of the requirements. The show needs to have the developers under pressure because we get VERY entertaining when we're stressed out! I think the one computer was a good idea...
Second: the show needs more HAXXOR feel to it. Dragging pre-made components onto a web-page and running a database connection wizard are things a 12 year old can do. It almost seemed like a Microsoft RAD ad. Yawn. Out-of-the-box stuff is boring. But then, the requirements were boring. Throw in something that requires out-of-the-box thinking for an out-of-the-ordinary result. That's why Monster Garage is so good: nobody does that stuff, so it's interesting to see how creative people can get when there may be no precedent.
Third: if you want to make it really entertaining, don't feed them; just give them Coke and Twinkies and then turn off the air-conditioning -- now THAT would be a show! :)
|
|
Message #149085
Post reply
Post reply
Post reply
Go to top
Go to top
Go to top
|
 |
Good points
I think you've got some good points and some really, really bad points (jk, just wanted a little drama ;)
If there is a next show, it will be more of what you mentioned. This was really a test of the format with a little drama. I like the coke & twinkies idea.
|
|
Message #149117
Post reply
Post reply
Post reply
Go to top
Go to top
Go to top
|
 |
Stressed out?
I'm not sure how you would create a situation to "stress out" professional developers. You have to realize, that there is nothing but our pride on the line, and that will only stress you so much. Most programming competitions are done with students that don't write software for a living. I've been writing software professionally for 10 years, and have had a lot bigger challenges than anything that is going to be fabricated for a TV show. When you've got real deliverables, it's more than your pride on the line, it's potentially your job and your professional reputation. I can't speak for the other 2 participants, but I did the show because it sounded like fun, if I didn't think it was going to be fun (maybe they were going to starve me), I would not have done it, there would have been no reason to. It's not like Survivor where there is some big prize you are playing for.
|
|
Message #149135
Post reply
Post reply
Post reply
Go to top
Go to top
Go to top
|
 |
...
Chris you don't need to explain why you did the show. Fun is good, and we all know that. But is the show really about fun? That's what I'm getting at. I seems like it was a contest... but there wasn't really a winner, or a prize, or a sense of struggle (ie: stress) to the finish line. At least, not in the sense that you would expect from a show that had a "reality" slant to it.
As to the starvation point; it was a joke. But who the heck knows with television these days ;)
|
|
Message #149146
Post reply
Post reply
Post reply
Go to top
Go to top
Go to top
|
 |
Hrm...
I kinda figured we were gonna show up and do some real world stuff. But then again, my real world isn't necessarily everyone's real world.
I agree that it was a lot like a big `ol advertisement for MSDN and Visual Studio. But this is a show about Microsoft's technologies. The things that go into real development projects in my real world don’t really give Microsoft much of a compelling reason to to a TV show around them. After all, NUnit, Nant, and NHibernate aren’t Microsoft products after all. [Damn, there are going to be a lot of silly product names when Microsoft drops the .NET moniker]
I'd love to have a budget to show what real development is really like, you know - components, business objects, tests, data binding, etc. When I'm making a million dollars per month I think I'll go ahead and do that ;)
Of course, I would have to hire Jessi away from The Code Room. Those precious few hours with Jessi were some of the best days of my life. Such a tragedy to have a relationship cut down so young. I try not to think about it, but still the memories haunt me - holding hands by camera 2, her softly reading to me from Sonnets from the Portuguese and the warm glow of the studio lights, our first kiss (well, she kissed me actually).
Why, oh why did it have to end so soon? Is it because I prefer to begin and end code blocks in a single key stroke? Is it because of my habit of always validating my design? Is it because I won’t drag and drop data access code into web forms? I can change, I can! I can conform. I know that you think I'm dangerous - always speaking out about how Visual Studio lulls developers into a false sense of security. I can stop. I'll get help. I'll never write another component-based app again, I promise. I'll attend as many Microsoft Official Curriculum classes as I can. I'll never use another software best practice - cross my heart! Please, Jessi, please - I'm on my hands and knees. I'll… I'll… I'll uninstall NUnit! There, I've said it! Are you happy? I'll never repeatably and automatically try to prove the proper functioning of my code again! I'll learn to talk Babytalk. I'll give up this obsession with things going as planned and give in to the insidious lunacy of optional type checking. I'll learn to say "Option Strict Off," just give me another chance! I know we can make this work (we just won't be able to prove it to anyone else ;)
I digress…
I had fun doing The Code Room. I think it can do better than hock Visual Studio 2005, but I still think it's gonna be an interesting ride. I'm looking forward to seeing the next episode. Please Jessi, please hurry up and do the next episode. I long to see you again…
I digress...
-s
|
|
Message #149155
Post reply
Post reply
Post reply
Go to top
Go to top
Go to top
|
 |
Re: Hrm...
Paul, you should copy Scott's post and forward to Jessi, assuming she has an email account ;-)
|
|
Message #149172
Post reply
Post reply
Post reply
Go to top
Go to top
Go to top
|
 |
Yeah...
It's funny you say that. Most of my friends in the Java community think I'm secretly a Java developer in disguise. I was once a Java developer – but only for a month. Then I went back to the Microsoft world. In truth, I’m a die-hard .NET guy, trying desperately to bring the shining light of software development maturity to fat part of the festering, RAD-infested .NET bell curve.
Don't get me wrong though, I tend to think the Microsoft offering is more cohesive and more amenable to the imperatives of business. I don’t want to be a Java developer. I like Microsoft’s platforms and tools. It’s just the damn lazy developer culture that gets me.
I can’t wait to see what Jetson and the new NetBeans is going to do to Java developer culture. I hear these tools aim to capture some of the RAD-dependent VB culture. I hope that’s true – we could do with a few less non-coders pretending to bring systems to fruition.
-s
|
|
Message #149180
Post reply
Post reply
Post reply
Go to top
Go to top
Go to top
|
 |
Yeah...
I can’t wait to see what Jetson and the new NetBeans is going to do to Java developer culture. I hear these tools aim to capture some of the RAD-dependent VB culture. I hope that’s true – we could do with a few less non-coders pretending to bring systems to fruition. This is great news. The more bad VB developers that end up coding Java the better. Not that I'm anti-Java... it's more like we have our fill with .Net. And don't need anymore hot ****, drag and drop, VB developers.
And while on this subject... Can MS please please quit creating controls for them?!? I just get visions of the zombie VB masses using drag and drop UI controls that do data access and data bidning, all on their ASPX page, which will get called 10k times a day. And am left in shock as my mind wonders if their is some sadomasicist architect that works at MS, who just designs controls so the VB.Net'ers can destroy the universe.
|
|
Message #149182
Post reply
Post reply
Post reply
Go to top
Go to top
Go to top
|
 |
Yeah x2
And RAD should stand for the following :
Ridiculously Abhorrent Development
Other things come to mind... but they'd get all starred out so...
|
|
Message #149186
Post reply
Post reply
Post reply
Go to top
Go to top
Go to top
|
 |
Re: Yeah...
And RAD should stand for the following :Ridiculously Abhorrent DevelopmentOther things come to mind... but they'd get all starred out so... haha... Like lots of stuff, in the wrong hands it can be dangerous. I came from a background of C++, PHP, and Java. I loved coding Java because I felt like i was creating art, I just hated running the resulting apps. The code just looked so pretty to me. I loved PHP because I could hack my way through anything and it felt very satisfying. I hated writing C++ apps, but loved running them.
I love .NET because I know how much code it would take if I didn't have all the built in controls. Where we fall short in .NET is with those that don't know how much code it would take, and fail to understand the resulting consequences. So, I agree but I disagree. I think we should give advanced developers all the productivity enhancements in the world.
|
|
Message #149188
Post reply
Post reply
Post reply
Go to top
Go to top
Go to top
|
 |
Don't sugarcoat it, tell us how you feel!
Okay, so I'm going to step out on the proverbial limb and remind you that not ALL VB.NET developers are mindless drones and not ALL RAD development is a bad thing. Something thrown together quickly can be a huge benefit when working with a client in an iterative, proof-of-concept type approach. The key is not to let that code slip into production.
The way I see it, Java developers tend to be better programmers because they have to be. I think it's like welding underwater. Anybody can light up a torch and melt two pieces of metal together. But to do it in an environment that is so completely not inducive to welding, you'd better be a DARNED GOOD welder. Microsoft on the other hand makes safety torches that a five year old could use. Sure, you might not recognize what they create, but they did weld metal together. But that same torch in the hand of somebody who knows how to use it can create anything.
The bar to develop software with .NET is much lower than Java. Some developers clear that bar by miles, and some belly over it head first. Don't lump the two into the same category just because they use the same tools. VB.NET is a tool specifically designed to make it easier to build applications and there's nothing wrong with that. There is nothing inherent in VB.NET that makes an application bad, or good. It's the developer that does that.
|
|
Message #149190
Post reply
Post reply
Post reply
Go to top
Go to top
Go to top
|
 |
Inside the .NET mind
I noticed a few interesting things about how Chris, Scott, and Tracy went about solving the problem they had. The biggest is their decision to start with the database. Why that instead of an object model? I think that shows a leaning towards a more traditional App Dev scenario where the application is being built against existing data.
Once they had their database though, did they use the DataSource controls? I didn't see that in the video and would be interested to know if they did or didn't, and why.
I'm also wondering what ratio of the time was spent on setting up the database and tables, setting up the master pages, using the login controls, etc. What was the biggest stumbling block?
Another question I have to ask is, could the three developers have gotten farther working separately than they did working together? Is the product they created better for them having worked together to create it, ala XP paired development?
But more than this, I think the question on every developer's mind is "Was Jessi as cute in person?"
|
|
Message #149227
Post reply
Post reply
Post reply
Go to top
Go to top
Go to top
|
 |
SWEET!!!!!!!!!!!!!!!!!!!
Are we supposed to believe that Jessi Knapp would even talk to any of the people in the ‘Code Room’ unless she was paid to do so? Frankly, I found her constant use of the word ‘sweet’ as she mugged to the camera totally insulting. Apparently the marketing department at Microsoft thinks that developers are a bunch of retarded uber-dorks who haven’t socially progressed past Bill and Ted’s excellent adventure. That said, I think the show would be more compelling if one of the developers was sacrificed at the end of the show, or at least humiliated in some way. Also, coffee should be provided to the contestants… and Jessi Knapp should be topless. My rating: 1 ½ stars
|
|
Message #149247
Post reply
Post reply
Post reply
Go to top
Go to top
Go to top
|
 |
Inside the .NET mind
The biggest stumbling block was trying to connect to and work with sql server without the handy tools. What a pain that was ... but I think it was just because we weren't used to it.
Once we figured that out, it wasn't so bad. The Personalization and Membership func built our user tables for us and the controls we needed to use worked with those user tables. We just had to add our product and order tables to the same db. This is what we spent the most time on ... I think ... the perspective of time was rather skewed by the conditions there.
My understanding was that we needed to use what we learned in the MSDN event to build what they told us to build. Sure, we could have done things differently, but that wasn't the point.
Could three developers have gotten farther working separately? ... Maybe ... sometimes we work independently and sometimes not .. I think it's more entertaining to watch 3 people try to work together when they never have before.
Was Jessi as cute in person? I'll let the guys answer that one.
|
|
Message #149261
Post reply
Post reply
Post reply
Go to top
Go to top
Go to top
|
 |
SWEET!!!!!!!!!!!!!!!!!!!
The topless idea sounds like a winner. They should also make the contestant go through a physical obsticle course to get to their PC. Plus they need to throw in a little more Sex, Violence, Betrayal, and Humilation. All assists of Reality TV.
|
|
Message #149270
Post reply
Post reply
Post reply
Go to top
Go to top
Go to top
|
 |
RE: SWEET!!!
Are we supposed to believe that Jessi Knapp would even talk to any of the people in the ‘Code Room’ unless she was paid to do so? Frankly, I found her constant use of the word ‘sweet’ as she mugged to the camera totally insulting. Apparently the marketing department at Microsoft thinks that developers are a bunch of retarded uber-dorks who haven’t socially progressed past Bill and Ted’s excellent adventure. That said, I think the show would be more compelling if one of the developers was sacrificed at the end of the show, or at least humiliated in some way. Also, coffee should be provided to the contestants… and Jessi Knapp should be topless. My rating: 1 ½ stars So, some news on that - there was no "marketing people" involved in this project. What's funny, is I actually got a couple comments on our survey that the word "sweet" really bothered them. The truth? It bothered me too. I showed it to 10 local developers to gauge their reaction and no one commented on it, so I left it in.
I'm with you, development is serious business and the "cool dude" approach to it died years ago. If the community wants more, there will be some major improvements - starting with a more professional viewpoint, realistic challenge, realistic tools to complete the challenge, and of course - a UI developer :)
BUT... all that said, this was the pilot to show concept. We've had several hundred respondants to our survey and 92% said they want more, so I'm very pleased about that. It should hit TV this week, so we'll have to see if the TV audience feels differently.
Awesome feedback.
|
|
Message #149307
Post reply
Post reply
Post reply
Go to top
Go to top
Go to top
|
 |
Re: Yeah...
I'm with Paul on this one. We need to be familiar with or know how things work behind the scenes (to a certain degree) in order to use it correctly.
At the same time, how many times do we really have to write the same func to handle secure web login? I'm sure that most of you, like me, rolled your own reusable code and ported it with you wherever you went so that you DIDN'T have to rewrite it. I see this as MS just wrapping it up for us so we don't have to carry our own around anymore. It's not like you could have packaged that up and sold it .... hmm .....
|
|
Message #149383
Post reply
Post reply
Post reply
Go to top
Go to top
Go to top
|
 |
SWEET!!!!!!!!!!!!!!!!!!!
Apparently the marketing department at Microsoft thinks that developers are a bunch of retarded uber-dorks who haven't socially progressed past Bill and Ted's excellent adventure. The request to have Jessi Knapp appear topless in future episodes does nothing to dispel this myth.
;-)
|
|
Message #149460
Post reply
Post reply
Post reply
Go to top
Go to top
Go to top
|
 |
Okay, I've watched it now
I think it was okay. I think it suffered a little from trying too hard to be cool (could be worse, see the vignettes in the .NET Show) and it suffered from the fact that the devs didn't really know much about the version of VS they were working with and did mostly Wizard-based "I wonder what this does" stuff. I have to assume the next episode will be better, surely it won't be about the same wizards. Eventually they'll use them all and the devs will have to move on to writing code. And hopefully doing things they're familiar with. I also think that future episodes will have devs who are under more pressure because they will have a better idea of what is going on before they go in and will attempt to finish the requirements.
|
|
Message #149530
Post reply
Post reply
Post reply
Go to top
Go to top
Go to top
|
 |
Inside the .NET mind
Well, I always start projects with a datamodel. In my experience, the data is the single most important thing about most applications (especially an order entry system). You can sit down with a user and ask, "What data do you want to capture from an online shopper?" I can't ask them, "What attributes would you like on your Order class?" Also, that data model generally outlives everything else, how many times have you written new applications to replace old ones, but still using the exact same database that the previous application used. If you don't get the database right, things can get expensive fast, object models are much cheaper to replace.
On the single biggest problem we had, there were two - one was SQL Express, which to me, is a complete pain in the rear, especially without an "enterprise manager" tool. I believe there is some download now you can use for this type of stuff, but we either didn't have it, or didn't know where it was.
The other problem, which I'm glad they didn't include in the video, because it's terribly embarrasing: we struggled to figure out which item in the shopping list they clicked on to get it added to the shopping cart. At this point, you're probably thinking, 'that's not that hard!', and I would agree with you, I've done it many times before. The difference is I only figured it out once and then just repeated the same pattern when needed later. I hadn't done it recently (and neither had the other two participants), so we were running through our heads as to how we solved that problem before. What made things worse is that we all remembered doing it different ways, so we were all thinking in different directions.
I knew going in that if they didn't give us google, or allow us to use our own sample code, etc., there would be some moments like this. I wasn't surprised by it, had they let me crack open my laptop, I could have pulled up a sample in a couple of minutes. As it was, I think we spent about an hour and half trying to figure out which ProductID was selected in a product list. We eventually got it, but that coupled with the SQL Express issue (about an hour there), ate up a ton of time that could have been spent doing real work.
|
|
Message #149583
Post reply
Post reply
Post reply
Go to top
Go to top
Go to top
|
 |
Okay, I've watched it now
Anyone that knows me knows I don't get along with wizards. I prefer doing most things by hand.
We needed to use the wizard as part of the Personalization and Membership func that we learned about for an hour that day. So, yes, we were completely unfamiliar with the tools we had to use. That was part of the point. This wasn't a workshop or demo or anything remotely like that where the people presenting it to you have already worked with it. We had never seen those tools before and we were asked to use what we had learned that day to acheive the milestones.
|
|
Message #149903
Post reply
Post reply
Post reply
Go to top
Go to top
Go to top
|
 |
Yeah...
It's not so much NetBeans as Java Studio Creator etc. It's OK, but it's not great IMO. I pulled a moderate sized app from another IDE into it and it couldn't even recognize JSTL out of the box. And the Database palette gave me Tables and Views only... which for an Oracle DB is about 2/10s of what I want to see.
I've worked for enough clients to predict that Java tools will not entice the <=VB6 developer. They will move to VB.Net and write heinous code, just like many C developers moved to C++ and created "C with classes" code.
Lastly, I agree that Java can seem a bear to develop with in some scenarios. But .Net only runs on MS (please don't mention Mono... my clients will not pay to run mission critical apps on that). I constantly deploy on MS and Linux and .Net just can't do that.
|
|
Message #154029
Post reply
Post reply
Post reply
Go to top
Go to top
Go to top
|
 |
Okay, I've watched it now
Hi Tracey,
Do you have the webaddress for the System Shop? I need infomation on some of their services.
regards,
Glen
|
|
Message #182234
Post reply
Post reply
Post reply
Go to top
Go to top
Go to top
|
 |
Inside the .NET mind
Very well put.
Different tools, for different jobs, for different craftsmen. We all have our preferences. Let's respect that.
|
|
Message #182236
Post reply
Post reply
Post reply
Go to top
Go to top
Go to top
|
 |
Don't sugarcoat it, tell us how you feel!
Very well put.
Different tools, for different jobs, for different craftsmen. We all have our preferences. Let's respect that.
|
|
 |
| |
|
New content on TheServerSide.NETNew content on TheServerSide.NETNew content on TheServerSide.NET |
 |
 |
Language "mashups" will become more prominent, and developers will become polyglots, one programmer suggests.
SearchWinDevelopment.com offers an introduction to the language, performance, testing and data management improvements in VS 2008.
VBCode.com code snippets cover all aspects of application development, from data binding to security to the user interface.
Get up to date on XAML best practices with a variety of articles, tutorials and webcasts. [SearchWinDevelopment.com]
One team's experience with the VSTS DB edition suggests that it can improve workflow for dev teams. It also enhanced Agile efforts.
(June 24, Article)
Microsoft has begun to include DSL tools in the VSTS kit. A new book by Steve Cook and other VSTS team members helps set the stage.
(June 24, Article)
Cartoon: Be it ever so humble there is no place like your home after you get a Microsoft Home Server .
(June 18, Cartoon)
Microsoft's Thom Robbins says new technology to highlight in NET 3.5 includes AJAX, LINQ for both C# and VB, as well as tooling enhancements intended to ease the task of building WPF, WF and WCF apps.
(June 29, Podcast)
Venkat Subramaniam discusses AJAX bottlenecks, the tenets of Agile development and more. He spoke at the Ajax Experience.
(June 25, Tech Talk)
In the second of a two-part series, Michele Leroux Bustamente discusses design decisions related to the claims-based security model. Read the story and walk through the process for creating a set of claims-based utilities to encapsulate claims authorization at the service tier.
(May 24, Article)
Understanding why the Entity Framework exists and learning where it can fit into your projects can get you prepared for the eventual release early next year.
(May 10, Article)
Resource: This learning guide gives you quick access to useful links on Windows Communication Foundation security information.
(April 24, Article)
TSS.NET's Jack Vaughan spoke recently spoke with Microsoft's Brad Abrams to find out what he is seeing in the field and what the chefs in Redmond are cooking. Along the way he discusses patterns of AJAX frameworks.
(April 11, Article)
In a two-part series, Michele Leroux Bustamente explains how claims-based security is supported by WCF, and how you can implement a claims-based security model for your services.
(March 29, Article)
Windows Workflow Foundation is a new technology that many developers will need to get their heads around. In a brief excerpt adapted from Programming Windows Workflow Foundation: Practical WF Techniques and Examples using XAML and C#, K.Scott Allen considers aspects of workflow definition.
(March 22, Chapter Excerpt)
|
|