Brendan Tompkins

Sponsors

The Lounge

Wicked Cool Jobs

News

Advertisement

Images in this post missing? We recently lost them in a site migration. We're working to restore these as you read this. Should you need an image in an emergency, please contact us at imagehelp@codebetter.com
Confessions of a DataSet Flip-Flopper / Custom Entity Waffler

I've been on vacation in New England for the past week.  I was in Boston during the DNC.  Other than occasionally glancing at my Design Patterns book, I completely turned the .NET side of my brain off.  It's been a good break.  I spent a good deal of time reading the Boston Globe and thinking about things that matter in the real world, like issues surrounding the upcoming election.  One thing I've recently thought was interesting is how critical thinking, changing one's mind, and admitting that you were wrong has suddenly become a horrible quality in a person.  From what I can tell,  a vast number of Americans view this as a serious character flaw. 

Then I realized that when it comes to technology and this blog thing here, I'm a waffler!  I'm a filp-flopper!  I'm so ashamed!   I'm always learning new stuff from people like DonXML!  I'm constantly realizing that I've been wrong in the past, and am always changing my mind!  One week I say tomato, the next to-MA-to!  Even though what I'm doing today is vastly better than what I was doing yesterday, this flip-flopping is disgusting! 

Consider the question of whether to use Typed DataSets vs. Custom Entities.  Just a few months ago, I was a dyed-in-the wool Typed DataSet man.  Couldn't live without them.  I'd use them everywhere!  All of my public web services returned my trusty typed DataSets.   What if external clients couldn't understand a typed dataset diff-gram?  “Bring 'em on!“  I'd say!  “My way or the highway!“  I'd exclaim!  “J2EE, you can run, but you can't hide” I'd forcefully proclaim. 

Well, then I started reading things about how DataSets were the “Spawn of Satan“ and the Waffle iron began to sizzle.  I pulled out my trusty flip-flops and started to explore the issue.  Today, I've pretty much come full circle on my thinking.  I'm creating Web Services that return Custom Entities and all of my crucial framework-oriented interfaces use Custom Entities.  Here's how I have things set up:

  • For internal, framework-based business services, I'm accepting/returning custom entities.  This ensures that these objects are easily re-used across applications, and platforms.
  • For external web services, I'm accepting/returning only custom entities, this seems to be the most flexible, most future-proof way of exposing data to the outside world.
  • For application-specific data, I'm sometimes using Typed DataSets, I use them here because of all of the advantages that the DataAdapter affords in persisting and retrieving DB objects.  An example here would be a Web-Based front end tool for managing FAQ's to be shown on our public web site.

But I realized that I'm confusing my constituents, especially the users of my web services.  I'm waffling!  They don't want what's best, they just want me to stand firm behind my decisions!  Sure, typed datasets are bloated, overly complex and incompatible, but I said they were better, and I'd better stick by my decisions!  Don't mess with DataSets!   

So, when I get back to work later on this week, I'm going back to my old ways.  Like I said, all this waffling on the issue is disgusting.  I said Typed DataSets were good, so I'd better stick with it. I still have that old crappy code sitting around in SourceSafe somewhere.  I'm going to revert and do a build as soon as I get back.  Then no one can call me a Waffler.  Don't you worry, I'm going to stick with this inferior code just because I once believed it was right.  And you can count on me to stand behind it, even in the face of its obvious shortcomings.  I'm going to keep it this way... at least until November.

-Brendan


Posted Mon, Aug 2 2004 11:14 AM by Brendan Tompkins

[Advertisement]

Comments

Mark Bonafe wrote re: Confessions of a DataSet Flip-Flopper / Custom Entity Waffler
on Mon, Aug 2 2004 9:26 AM
Hey, whatever keeps you in [your] office!
Brendan Tompkins wrote re: Confessions of a DataSet Flip-Flopper / Custom Entity Waffler
on Mon, Aug 2 2004 9:42 AM
Mark: Very funny.. Classic!
Rakesh wrote re: Confessions of a DataSet Flip-Flopper / Custom Entity Waffler
on Mon, Aug 2 2004 5:58 PM
The type dataset is nice but it can become difficult to deal with when you're in a mixed environment. My current project, our database is AS400. Native ADO.NET driver for it was still non existent when we started the project a 1.5 yrs back. So to deal with bieng able to save the contents of the type dataset back to the AS400 we had to create our own dataadapter. We had to wrap around the severly limited OLEDB driver that shipped with the AS400 and added the basic ADO.NET functionality we needed. Some of the teams, went custom entities/connected mode altogether because it was just too much of a hassle plus they had critical performance issues. Most of the time the driver(because the OLEDB was crap) would not even auto generate the type dataset or generate it partially. Especially on large tables. Please dont say the client should've switched to SQL Server instead =). Of 6 .NET projects Ive worked on when I started out, only *once* did I have the good fortune of working for a client that had SQL Server as the db. Others had *old* versions of Oracle where the current .NET driver is not supported. The big, fortune 500, truly enterprise scale, 50-70 man consulting team, interfacing with Java based rules engines(you have to deserialize the type dataset to xml all the time because it doesnt know how to deal with it) and other non .NET systems( etc), legacy non SQL Server database(AS400, Oracle financials etc), tons of data and conversions, performance is absolute, no BizTalk allowed, somedays a part of the network goes down, erratic com+ support, projects that we all dream of working on - PRAY the type dataset even gets to see a glimpse of the sunlight.

Just dont give up on custom entities just yet.












Brendan Tompkins wrote re: Confessions of a DataSet Flip-Flopper / Custom Entity Waffler
on Tue, Aug 3 2004 1:21 AM
Hmmm... I think I should have added some big <SARCASM> tags to this one here and there.

Rakesh: trust me, I ain't going back to DataSets. I was just trying to be funny! Thanks for your good comments though... Do you have a blog? You need one!
Grant wrote re: Confessions of a DataSet Flip-Flopper / Custom Entity Waffler
on Tue, Aug 3 2004 1:42 AM
Funny post. Yes, anybody who learns from experiences and ~changes~ an opinion can be labeled a flip-flopping waffler these days. I think I'd be more worried about somebody who DOESN'T EVER change an opinion and has, apparently, held their set of views since childhood. These folks evidently never learned anything from anybody or anything. One person can't be correct about everything -- and in the software business, what is "correct" evolves over time.

I'm going to go get some breakfast at the Waffle House.
Mark wrote re: Confessions of a DataSet Flip-Flopper / Custom Entity Waffler
on Tue, Aug 3 2004 3:25 AM
Funny post, but I think there is a difference between flip-flopping and changing your mind because you were wrong.

For example, let’s say everyone on DotNetJunkies weblogs liked DataSets. Because you want to be liked by these DNJ bloggers, you decide to support DataSets. Then you realize that the blogging world is bigger than DNJ weblogs. You realize that other developers out there, say weblogs.asp.net bloggers use custom entities and you want to appeal to them, thus changing your position on DataSets and supporting custom entities. This my friend is a flip-flop.

On the contrary, if you are using DataSets because you believe they are the best technological solution to your problem, then you have made your decision based on your knowledge of and experience with the technology. Then one day you read an article or blog post about custom entities. You realize that you might have been missing something by sticking to DataSets exclusively. You begin to explore sample code. Soon you come to the conclusion that custom entities are a better solution to your technological problem. This my friend is not a flip-flop. This is growth in knowledge and experience. You have changed your mind based on the facts in front of you. You have changed your mind based on the issue at hand and not on what the majority of the public thinks at this particular moment in time.

DISCLAMER:
Just to be clear, I am not implying that DNJ bloggers only use DataSets and weblogs.asp.net bloggers only use custom entities. I am using these two simply as illustrations. I realize that bloggers in each of these communities will use both, one or the other, or some other combination.

--Mark
Mark Bonafe wrote re: Confessions of a DataSet Flip-Flopper / Custom Entity Waffler
on Tue, Aug 3 2004 4:34 AM
Hey Digi. Try the decaf!
Brendan Tompkins wrote re: Confessions of a DataSet Flip-Flopper / Custom Entity Waffler
on Tue, Aug 3 2004 2:10 PM
I can see your point Mark, but if you considered me a waffler, you'd making a huge assumption as to my motivation for the flip-flop in the first place... IMO, its Pretty far-fetched that I'd take the hit of admitting I was wrong just to appeal to those liberals over at DNJ.
Mark wrote re: Confessions of a DataSet Flip-Flopper / Custom Entity Waffler
on Wed, Aug 4 2004 4:46 AM
No, you're definitely on the latter side of my illustration. You changed your mind because of "growth in knowledge and experience". :)

--Mark
Brendan Tompkins wrote re: Confessions of a DataSet Flip-Flopper / Custom Entity Waffler
on Wed, Aug 4 2004 4:54 AM
So, can I change your mind about the election?
Brendan Tompkins wrote re: Confessions of a DataSet Flip-Flopper / Custom Entity Waffler
on Wed, Aug 4 2004 4:56 AM
Grant, I'll join you over at the waffle house. :)
Mark wrote re: Confessions of a DataSet Flip-Flopper / Custom Entity Waffler
on Wed, Aug 4 2004 5:06 AM
Well, I can probably guess that you’re voting for Kerry because he is not Bush. Am I right?
If I am, can you give me another reason?

I can tell you why I support Bush and not include "Because he's not Kerry."

What about Nader. He does raise some good arguments on certain issues, and you do seem to line up more with his views. Why not vote for him?

--Mark
Brendan Tompkins wrote re: Confessions of a DataSet Flip-Flopper / Custom Entity Waffler
on Wed, Aug 4 2004 8:13 AM
Whoah! Since when are we talking politics? Geez, you can sure bend the topic to talk about what YOU are interested in.

Well, since you asked.

<SOAPBOX TYPE="BIG FREAKIN">
Mainly, I like the idea that Kerry is behind a more "United" states when it comes to all sorts of issues. Health care, education, jobs, off shoring, Iraq. Right now, we're a pretty divided nation, and not just in terms of opinions about war. There are huge divisions when it comes to what sort of Americans can get an education, a good job, and well when they are sick. If you're on our side of that division, great, but if you're on the other side, you're pretty much screwed.

Try getting good educations for your children through the public school system. Ask a person living in New Orleans: you're screwed unless you have 10K/year to send your child to a private school.

Try getting a good job that pays a living wage. Ask my friend with 10 years high-tech experience who can't find a job that pays well enough to afford an apartment here in Norfolk.

Try getting adequate health care when you are a single mother working full-time with a deadbeat father and your 6-month old son is sick. Ask my wife, she can tell you all about this from personal experience (from long before we were married of course).

Try getting help from the our government when you live in a country without huge economic ties to the US. Ask any one of the thousands currently being ethnically cleansed in Darfur.

I thoroughly believe that the current administration isn't interested in unifying America when it comes to these issues. I thoroughly believe that Kerry is.
</SOAPBOX>
Mark wrote re: Confessions of a DataSet Flip-Flopper / Custom Entity Waffler
on Thu, Aug 5 2004 4:17 AM
Some of these issues have been around long before President Bush.

Bush cut taxes twice, put more money back in our pockets including an additional $400 per child bringing the child credit to $1000.

I don't think you can pin your friend's job hunting issues on Bush. Norfolk isn't the only gig in VA or the country for that matter. Many of us moved to Richmond when the market went flat in Hampton Roads.

The president, with Ted Kennedy put in place education reform. I know several teenagers whose parents are not made of money. They are in college with grants, loans, and self employment. If you really want to go to school, you can. As a matter of fact, I am still working on my degree since completing my service in the navy.

Bush also put in place Medicare reform that includes prescription drugs. This is the biggest overhaul since its inception.

The economy is in its fastest expansion in 20 years. More people are homeowners than ever before. US factory enter the largest growth in 30 years... see for your self: http://story.news.yahoo.com/news?tmpl=story&cid=1519&ncid=749&e=6&u=/afp/20040802/bs_afp/us_economy

The economy took a downturn March of 2000, long before Bush took office.

Not all problems can be fixed in 4 years. There is no magical solution. Kerry won’t be able to fix some issues either in 4 years. Besides, the president is only 1/3 of the federal government. The house and senate have to deal with these issues as well. The president is not a dictator; he can only do as much as the legislature will go along with.

For seven years after WWII, we were fighting insurgents like we are in Iraq. These insurgents mostly are from Iran and surrounding countries. Iraqis are a free people now, governed by themselves. Yes we are not out yet, but we will be. I'd much rather battle terrorists over there than on our soil.

Bush is doing things; progress is being made.

And what does Kerry plan to do to fix the issues that you have addressed? What is his plan?

Oh, Darrell sent me this link:
http://www.factcheck.org/


--Mark
Brendan Tompkins wrote re: Confessions of a DataSet Flip-Flopper / Custom Entity Waffler
on Thu, Aug 5 2004 4:28 AM
Brendan Tompkins wrote re: Confessions of a DataSet Flip-Flopper / Custom Entity Waffler
on Thu, Aug 5 2004 4:30 AM
I like Fact Check!
Mark wrote re: Confessions of a DataSet Flip-Flopper / Custom Entity Waffler
on Thu, Aug 5 2004 5:08 AM
grant wrote re: Confessions of a DataSet Flip-Flopper / Custom Entity Waffler
on Thu, Aug 5 2004 9:27 AM
It's a shame I missed these comments earlier . . . missing out on the fun! For the record, most "conservatives" I know don't get a kick out of Bush's debt spending and the corporate welfare programs. Oh yah, and misleading us about why we should fight a ground war and doing lots of "nation building" when he expressly said "We are not in the business of nation building" during his 2000 campaign. How about we do some "Nation building" in America's old manufacturing towns or with the Newport News school system?

Also, the pecan pancakes at waffle house are delighful.
Mark wrote re: Confessions of a DataSet Flip-Flopper / Custom Entity Waffler
on Fri, Aug 6 2004 5:14 AM
Top 1% pay 96% of the taxes...

From the IRS: http://www.irs.ustreas.gov/pub/irs-soi/01in01ts.xls

Mark wrote re: Confessions of a DataSet Flip-Flopper / Custom Entity Waffler
on Fri, Aug 6 2004 5:17 AM
Correction... top 50% pay 96%...
grant wrote re: Confessions of a DataSet Flip-Flopper / Custom Entity Waffler
on Mon, Aug 9 2004 8:25 AM
That's because the bottom 50% don't have much money. It's called a graduated scale: http://www.yourtax.org/facts/graduated.php3. You'd rather have the bottom 50% pay what percentage?

Think about why this is funny (it made me laugh out loud): http://www.onion.com/nib/index.php?issue=4031&nib=2
Mark wrote re: Confessions of a DataSet Flip-Flopper / Custom Entity Waffler
on Mon, Aug 9 2004 11:59 PM
FYI on Kerry, he *still* would have supported Iraq...

http://news.myway.com/top/article/id/381249|top|08-09-2004::17:46|reuters.html

Mahalia wrote re: Confessions of a DataSet Flip-Flopper / Custom Entity Waffler
on Wed, Apr 22 2009 10:30 AM

Good Day. With or without religion, you would have good people doing good things and evil people doing evil things. But for good people to do evil things, that takes religion.

I am from South and , too, and now am writing in English, give true I wrote the following sentence: "Take synthroid with a full glass ounces of water."

Regards 8-) Mahalia.

Add a Comment

(required)  
(optional)
(required)  
Remember Me?
Devlicio.us