Windows

Are you using the .NET 3.X technologies?

Justin James hasn't upgraded his skill set to include many of the .NET 3.X technologies. Have you? Let us know by taking this quick poll.

One thing that has been nagging me for some time is that I have not yet upgraded my skill set to include many of the .NET 3.X technologies. Windows Presentation Foundation (WPF) and Windows Workflow Foundation (WWF) both look quite interesting, but I just cannot seem to justify taking the time to learn either technology. WPF seems like it would be a complete replacement of the Windows Forms knowledge that I have built up over the years, and I cannot seem to find a good reason to use WWF in any applications.

Also, I don't hear many real-world developers talking about these technologies. Am I missing something here? Please take this quick poll to let me know if you're using the .NET 3.X technologies.

J.Ja

About

Justin James is the Lead Architect for Conigent.

41 comments
vmaatta
vmaatta

"No, I don't use .NET at all and don't plan to."

jreddy
jreddy

No, there is nothing in WPF or even LINQ for that matter that is solving any problem I have. Almost looks like technology solutions looking for a problem.

aswad.azhar
aswad.azhar

for wpf i think it wont be much help on your problem, but if you building up a data driven web application, LINQ help a lots

david_cym
david_cym

Really? have you seen how many problems arise from using old technology and how many you have using 3.5? how many times you say your client "no its not possible" or how long time you say it could take to solve their problems?

rayna.leibbrandt
rayna.leibbrandt

...but I would love to get into 3.5

david_cym
david_cym

since .net 3.5 will add value to your business and you can still develop and mantain 2.0 apps within visual studio 2008

devilsuraj
devilsuraj

.net 3x tech. is very well and m a fan of it , it saves the lots of developer's work , it saves your time too

edmicman1
edmicman1

Shoot, I'm still trying to fully explore and utilize .NET 2.0! I don't do anything with hooking into the Windows specific technologies, or anything with Vista...mostly just web programming. I haven't seen anything in .NET 3.x that I need to use!

bfpower
bfpower

I agree. The problem appears to me that MS is trying to push the market with new technology, rather than letting the market push the technology. There is possibly wisdom in this approach as it can open up new opportunities. However, it does have the potential to simply upset users and be very expensive (anyone need to upgrade HW to use Vista??).

david_cym
david_cym

The market have always wished to see what you can do with WF, WPF, LINQ, etc with the minimum cost however technology have not ever filled market's expectatives.. until now. about hardware, .net 3.5 runs on XP sp2 too

Elvis.Is.Alive
Elvis.Is.Alive

I am looking forward to working with the new WebServices implementation however. I have been reading about some major improvements in Ajax performance and security.

Justin James
Justin James

Are you using the .NET 3.X technologies? Why or why not? Like I said in the lead in to the poll, I think the technologies are interesting, but I can't make a compelling enough business case to justify the time learning them. J.Ja

stempy
stempy

I'm using .Net 3.5, with LINQ-SQL, LINQ-XML, and WPF, with some WCF, and all I can say is what a dramatic difference it makes to development, LINQ is fantastic for data manipulation, especially with SQL and XML, it certainly (well in our case) drops the plumbing time down. Also things like automatic properties just simplify dev. For any custom designed desktop interface, WPF is light years ahead of what winforms is capable of. When I first started learning WPF, I was very skeptical of the benefits, well that was then. Now I'm sold on being able to design an interface any way I like, developing applications that cater to different resolutions easily, with vastly improved databinding that makes modern U.I's a pleasure to create.

Bad Boys Drive Audi
Bad Boys Drive Audi

If I can't find a convincing argument for migrating to 3.5 besides I get to play with shiny new toys, how in the world am I going to justify it to my senior management? As it stands, I'm trying to mentor a group of quasi developers to become proficient; if I move to software that I and perhaps one other guy could quickly master and leave everyone else in the dust, what good does that do? Sure, I'd love to play with the integrated AJAX components, but I really don't do web development anymore, so the fun should rightfully go to someone else. Everything else really isn't necessary. No thank you; I'd rather spend my time bringing this bunch up to speed on 2.X and getting proficient. That will raise our operating margins and hopefully the EPS - from which I stand to gain handsomely.

david_cym
david_cym

You really should take a deep look at this techonlogies and how they area built of, if so i dont think you, or any "real world" developer would say using them is not worth learning, im in Mexico and in my enterprise we have made many successfull projects using .net 3.5 and now with SP1, using other technologies or ooooldd .net 2.0 would not be feasible to develop them with the quality that were developed

Justin James
Justin James

I never said that I don't see why anyone *would* use them. I said that I don't know many developers who *are* using them, and that for the development work I do, not much of it is useful. I personally like LINQ and a number of the other features, but I can't justify using them or spending the time to learn them yet. At least not for the projects I am working on. J.Ja

david_cym
david_cym

Ok never mind sorry good luck thumbs

pablo.emanuel
pablo.emanuel

The only new .Net 3.5 technology we're actually using so far is LINQ. We've been using anonymous filter methods and other quasi-LINQ constructs to do collection manipulation for a while in 2.0, so it was a low hanging fruit, and we embraced it right away. Other than that, as a BPM guy, I personally expected so much more from WWF that I don't see me using it for the foreseeable future. The other ones, we're evaluating and doing some prototyping, and if them prove themselves worth it, why not?

aswad.azhar
aswad.azhar

why i use .net 3.5, simply because i can replace all those sql string combination that can't be understand by compiler with LINQ and lambda expression (this really helpful but all other programmer having problem to learn, not sure why is so hard for them). Not to forget the ADO.NET entity framework itself (.net 3.5 SP1), i really wish to have this features since .NET 2.0. but for those WPF, WWF, Silverlight and others, still not sure how i can take advantage of it. just my 2 cent...

ithelp48
ithelp48

I was excited to hear about the Linq features of 3.5. There are some other interesting features as well when it comes to WPF, and WCF. Keeping up with the latest releases has been a challenge. I personally am not having trouble learning Linq, I am just having trouble justifying the time it would take to learn a new way to do something I can already do. Some of my peers think that Linq may end up being a fad. So far, I have not seen any evidence their prediction is wrong. What do you think? Thanks, Tom

ithelp48
ithelp48

I just need to break down and give it a real try I think. Thanks for the feedback. Tom

Justin James
Justin James

Every developer I know who has tried LINQ swears by it. It is clearly here to stay. I keep meaning to try it for a project that I've been working on for personal use, but I keep putting it off. Maybe I shouldn't! J.Ja

Tony Hopkinson
Tony Hopkinson

Say you have two internal generic lists of objects and you want to find all teh ones in both where some property is a value. Normally for each different select you'd write a predicate, use LINQ it will do it for you. Get's even better when you consider you can combine, say an internal list, and XML document and a DB query. A little more work and you can swap the sources around and still use the same code... WPF can have a mass of advantages too. Building UI from meta data for instance intead of doing each one at design time, or that horrible to maintain common code with ifs and buts in it. For me the wow factor isn't the new and shiny whizz bang stuff, it's hey I can do more, better with less code.

david_cym
david_cym

WPF exists almost for the same reason that exists Flash and AJAX : user experience period. however WPF and Silverlight solves many problems Flash has not and will not

SnoopDougEDoug
SnoopDougEDoug

I too wasn't so sure about the latest offering from Microsoft. Why mess with a good thing I thought. Now that I use LINQ regularly, I love it! My next task is to take a look at Silverlight. Any developer who does not regularly update their skills, or at least investigate new technologies, will eventually be left in the dust. If you disagree, just keep on maintaining that COBOL code.

Justin James
Justin James

I like LINQ (just starting to move to it) because, as Tony says, it allows you to have a unified way of talking to disparate data sources. That's a winner in my book! I also like a lot of the new features in C# 3. I haven't felt a compelling reason to use WPF or WCF, since I work with simple GUIs and I don't use Web Services as of late. Windows Workflow interested me at one point, but I am no longer on that particular project. So in my mind, there are some good tehcnologies in the update... I just have not had a strong reason to move to them yet. I am curious why so few other developers have adopted them yet, particularly WCF and LINQ. J.Ja

david_cym
david_cym

Technology keeps moving and if we dont move with it we loose the floor

robalexclark
robalexclark

I really can't see what advantage WPF would give me - the vast majority of my work involves Windows Forms apps, mostly CRUD type, and I've built up a library of classes and controls to help me develop these apps. All that would have to be upgraded and I'm sure my boss would ask me why I'm spending 2 months doing that and not actually producing anything. Also, and someone please correct me if I'm wrong, but WPF doesn't even come with a datagridview! I refer you to the title of my reply... I know that the MS tech evangelists love to say that we should be using this or that but developers in the real world, developing REAL applications don't have the luxury of dropping everything when something new and shiny comes along. 3.x things such as LINQ however do add value and I am happy to try and get to grips with those...

stempy
stempy

I used to question the advantages of wpf over winforms, it does take a while to come to grips with, however now that I have actively been developing in WPF, I really wouldnt want to go back to winforms (which now seems so rigid and stale), its just so much better for custom modern User Interfaces.

david_cym
david_cym

Maybe you should take a look at the concept of User Experience, and the significance of it in modern IT, WPF make this possible and breaks obsolete schemes in user interface design, about datagrid you can build up one just with a ListView and a GridView, and now in SP1 codeplex has developed a DataGrid control that you would have wished it existed in .net 2.0

jreddy
jreddy

For what its worth, even us "death-to datagrids" developers don't see any great value in the new technologies. Even LINQ does not seem to solve any problem I was just itching for relief of.

stempy
stempy

You know you can pull in windows forms elements as required in WPF?..ie datagridview ....see the thing with WPF is your not limited in how controls look or work (unless they are Winforms controls). You can design an interface how you want it to be. Have you noticed how newer user interfaces are developing?, on different resolutions....this is where the value is immediately apparent.

Tony Hopkinson
Tony Hopkinson

So for a single datasource it will only make an arse of things if you design something peach shaped with a crack in it. What worries me is people selling it as a inherrent improvement to what has gone before where really it's a potential one competent developers can make use of. I'm not a big fan of the continual dumbing down of our discipline in an attempt to turn us in to cheap ass glorified clerks. How linq optimises when combining datasources, I'm not really sure. For instance if you were to join an xml structure and a select query, with field criteria on both sources in the where clause.... One thing I can say it's never going to be more efficient than a stored pocedure,. unless said SP uses .net extensions or possibly relies on cursors. Or of course the SP was written by someone whose xpertise wasn't databases.

david_cym
david_cym

Does linq really builds a select like you say for a condition?

Tony Hopkinson
Tony Hopkinson

You must be new. I've seen exactly two designs where the database logic was in 'one' place. I did both of them. As for your optimisation comment, again you take too much for granted. some of that sql that's all over the plce, does stuff like Select a mass of data, iterate through it, test for a condition and then call an update statement for that one row. LINQ will not make that better. I firmly believe that Linq will cause an exponential increase in this sort of numpty design. I was at TechEd, and they did a level 4 (the hardest) course on client server database design, and the main tip was NOT to do the above. So that particular optimistion, must in fact be expert level nowadays. I think you've been damn lucky with your code base mate. I could show you some that would give an infarction.

david_cym
david_cym

the data layer should be modular and in a separate assembly never in the business or application layer that is baaaaddd very bad design so its not a matter of indiscipline that is basic, so you just replace the assembly with a new one for mantainance and thats it i dont see any disadvantage, at the end the linq statements are processed at the server of course and the performance impact is not really a concern actually speed is the same in most operations and in some others better

Tony Hopkinson
Tony Hopkinson

Create a datalayer easily indeed, maintain one, well that depends on where all the linq statements are doesn't it? After all a little indiscipline and you'll have Linq SQL statements all over the design and you can kiss your maintenance budget goodbye. Linq is a very powerful tool, but that just means you have to be damn careful when, where and how you use it. Unless you are going for database agnostic (good luck with that), using the database to do stuff with data will always be better. Linq's greatest use is combining disparate datasources not bogging about with stuff we can do easily now.

david_cym
david_cym

so you really have not tried it, if you say linq does not seem to solve any problem you can tell me its easier to create and mantain a data layer with just storeds and functions than with LINQ? oh please

ByteBin-20472379147970077837000261110898
ByteBin-20472379147970077837000261110898

Right now, the only things I want to increase my skills at are C#, Web Services and learn AJAX. I'll be lucky if I can find the time to do so, though. But it's on my list of things to learn. I don't know about the other two that were mentioned in the article as, quite frankly (unless I been out of the loop, which isn't unlikely) I never heard of them.

Editor's Picks