Click to See Complete Forum and Search --> : [RESOLVED] Framework 4.0? Stop! I want to get off!!
bigMeUp
Nov 7th, 2008, 09:02 AM
I am just now beginning to feel confident with framework 2.0. I am developing a schedule for studying 3.0. And now I find that 4.0 is in the offing, or is already out there?
Are we all meant to be just a bunch of bumblers forever scrabbling in dirt of the newest-fangled spaghetti to come out of Seattle? When are we going to be given a chance to become experts?
Almost every day I come across arcane classes with some abstruse functionality (ever heard of UnsafeDeserialize, for instance?) And I know nothing of WCF, WPF and whatever else lurks in the innards of 3.0/3.5. Never mind goodness-alone-knows-what lies in wait in MSSQL 2008; LINQ, Expressions, etc.
In my heart of hearts, I cannot believe that the industry is currently peopled by truly competent experts with a grip on all the technology out there, even at the technological summit of the industry. I mean, how can they be? How can *anyone* be?
RhinoBull
Nov 7th, 2008, 10:59 AM
The truth is 4.0 is not due untill some time in 2010-2011.
And if you managed to master 2.0 then you may easily become a master of any next generation (releases or whatever you wish to call it).
I don't see any reason to be in-the-panic-mode really.
RobDog888
Nov 7th, 2008, 01:10 PM
VS 11 and 4.0 are future technologies and not even in beta version yet So I wouldnt worry about it either just yet. Just think of learning 2.0 as building a good understanding of the framework in preparation for the next version. Most info will be forward compatible so you wont lose any knowledge when looking at the next version.
Kasracer
Nov 7th, 2008, 10:47 PM
I am just now beginning to feel confident with framework 2.0. I am developing a schedule for studying 3.0. And now I find that 4.0 is in the offing, or is already out there?3.0 is just 2.0 with some extensions. Don't bother with it and just head into 3.5 as many extensions in 3.0 were improved in 3.5.
Are we all meant to be just a bunch of bumblers forever scrabbling in dirt of the newest-fangled spaghetti to come out of Seattle? When are we going to be given a chance to become experts?
Welcome to the world of technology where everything changes day-to-day and if you don't adapt you die.
To be honest this is how the technology field works. If we never worked to improve things then we would never move. .Net 2.0 is still an extremely stable base in which most .Net applications are developed against. By the time 4.0 finally releases (by 2010), companies may be just starting to move over to 3.5.
Almost every day I come across arcane classes with some abstruse functionality (ever heard of UnsafeDeserialize, for instance?) And I know nothing of WCF, WPF and whatever else lurks in the innards of 3.0/3.5. Never mind goodness-alone-knows-what lies in wait in MSSQL 2008; LINQ, Expressions, etc.WCF = More Efficient Web Services that can use HTTP, HTTPS, Custom TCP/IP, and NamedPipes.
WPF = Design Windows Forms with XML.
MSSQL 2008 is very similar to MSSQL 2005 but it includes additional support for media (like storing binaries I believe).
LINQ is basically SQL syntax inside of a C# or VB project. Useful but it has some drawbacks as it ends up being less efficient than a stored procedure and typical DAL model (which I still prefer). It has some great usability though and helps speed development up.
In my heart of hearts, I cannot believe that the industry is currently peopled by truly competent experts with a grip on all the technology out there, even at the technological summit of the industry. I mean, how can they be? How can *anyone* be?No one knows anything. Even the C# language creator doesn't know everything about .Net. It's too vast.
You shouldn't try to learn every detail about everything; that's futile. Instead learn the basic concepts of as much technology as possible.
For instance, I roughly know what WCF is: it's similar to web services but supports multiple protocols (HTTP/HTTPS, TCP/IP, Namedpipes) and should be more efficient. So should I ever come across a project where we need to expose services to the public as well as internally, I would take a closer look at WCF to see about exposing a service with HTTP/HTTPS and Namedpipes (or TCP/IP depending on server setup). I don't need to know the inner details and my rough idea may be incorrect but it's close enough so that I can return to it should I think it could be a good fit.
.Net 4.0 will include dynamic type support for C# (probably VB.Net too due to co-evolution of the languages), Easy parallel processing, ASP.Net will have static IDs and better ViewState support (GridView and ListView will work without ViewState), etc. After reading just some information I have a good idea what to expect and if I will need .Net 4.0. I don't need to learn everything about it as I'm not moving to it yet but I can make some good assumptions:
1. .Net 4.0 will unlikely break existing .Net 2.0 and .Net 3.5 applications due to a consistent framework and set of languages.
2. C# and VB will have some changes / additions but will work basically the same.
So you don't need to know everything; no one expects you to but you must have at least an idea of what's coming out so you can weigh it as an option.
DeanMc
Nov 8th, 2008, 05:34 PM
Change is the only constant. You know those c++ programmers that have been out of work because "there too good for the industry". The real reason is they never updated their skills.
RhinoBull
Nov 8th, 2008, 06:37 PM
Change is the only constant. You know those c++ programmers that have been out of work because "there too good for the industry". The real reason is they never updated their skills.
Where did you get that idea from? :rolleyes:
DeanMc
Nov 8th, 2008, 07:41 PM
Oh I dunno, from every programmer crying they have no job....
dilettante
Nov 8th, 2008, 09:20 PM
Funny, the only thing we've outsourced is C# and VB.Net jobs.
DeanMc
Nov 9th, 2008, 11:48 AM
Pfft, there are plenty of jobs other than programming ones that have been outsourced. If you are a good programmer you will never have trouble finding a job.
Pino
Nov 10th, 2008, 03:27 AM
This industry is about change, if your not prepared to continue learning and adapting you'll sink into the background pretty quickly.
However changes in framework versions are enough to add new exciting features but rarley will destroy functionality. There may be better way to do what you have done in the past but thats another issue.
Pino
homer13j
Nov 10th, 2008, 06:59 AM
I am just now beginning to feel confident with framework 2.0. I am developing a schedule for studying 3.0. And now I find that 4.0 is in the offing
When I was in college I bought a copy of VB 3.0 Standard and was just as worried as you when VB4, 5 and 6 came out in relatively quick succession.
Then I found myself working in VB6 for more than five years...
bigMeUp
Nov 10th, 2008, 08:47 AM
I find it self-serving hubris to speak glibly about `an industry [of] change`. If those who post in this forum are prepared to embrace inconstancy, what about the hundreds of thousands of programmers and project managers out there who aren't? How many times have you had a senior/lead developer say, `We do it this way because we know it works`, when clearly, this is an euphemism for, `I can't be arsed to keep up with this crud`?
Not by any means is everyone an MCP or MVP. I don't wish to live my life glued to a computer screen trying to figure out what the heck is going on with new fangled stuff, when I had the hang of old fangled stuff down pat.
For example, I got myself a Vista machine a couple of months ago and just today, lost the network icon in the notification area. Ok, I've had that lots of times with XP. Just click on Network Place > View Network Connections, and sort out with `Show icon in notification area when connected`. Only no, that doesn't exist anymore. Well, where the heck is it? Scrabble around for half an hour or so, then hit Google, then find out that you've got to do Regedit and faff around restarting Explorer.
Don't tell me to embrace change! Change for its own sake (or more accurately, to keep the folks in Seattle gainfully employed) is just otiose.
My thesis is that NO ONE has the chance to become truly expert. Not me, not anybody (not even you). When we had VB6 for all those years, I was slaying dragons nearly on a daily basis. In fact, I was hitting the VB ceiling so often, that it was rapidly becoming a decision to go C, or C++. Then, dot net, and a steep new learning curve. Just as I began to `see the forest for the trees`, there came 2.0, with enough changes in the right place (like finding a lost network icon) to make it annoying. But, there were so many new goodies, it seemed parsimonious to complain. Then, 3.0, 3.5 and now 4.0 - and that's just the dot net framework!
So now, buffoon industry-types who want to play with the latest toys buy the latest software and put out adverts like: `... you will have 12 months' experience with WCF in an enterprise environment...` because the lazy sods want someone to come in and show them how to use it (never mind that no one on the friggin planet has that experience, so contractors are going to have to lie their socks off to get the job).
I famously once attended an interview and was asked, `do you have any 2.0 experience?`. I said, `No. Out of interest, what is it about 2.0 that you wish to leverage for this project?` I didn't get an answer or the job.
Unless the evolutionary path of this industry to foist a ridiculous degree of specialization on its professionals, I don't see where we're going with this. Sure, if I can specialize in writing the <host></host> section in config files for cross-platform remoting components written on a Monday in VB for a Java application, then ok. But can I??
Pino
Nov 10th, 2008, 09:02 AM
Hmm, Interesting post you make. It sounds like your a bit angry if I'm honest. The fact is Computers and technology are ever changing, with new hardware come new programming models and applications that wernt thought of before and hence the evolution of programming languages.
Industrys change, ok the mass migration takes a few years, look at VB6 apps 90% of companys are now starting to look at re-writing in .Net. Whats very clear is that you could sit writing and older language such as VB6 and not bother to continue to learn however you will find in 5-6 years when support is totally dropped that you are then out of work and fighting for the scraps of VB6 jobs that would be available.
Your example of Vista is typical of anyone trying new operating systems and languages. Its allways difficult to make the change in the initial stages but there are reasons for the changes. And its all about continuing to shape and devlop a product to be better faster safer and explot all of todays hardware.
Don't tell me to embrace change!
No matter what you say this is an industry of groth evolution and continued learning, those that dont want to are slowly but surley left behind.
Pino
RhinoBull
Nov 10th, 2008, 09:32 AM
... Its allways difficult to make the change in the initial stages but there are reasons for the changes...
Although it's true the reasons aren't always justified I'm afraid. And that is something that may drag people away unfortunately.
Pino
Nov 10th, 2008, 09:34 AM
Although it's true the reasons aren't always justified I'm afraid. And that is something that may drag people away unfortunately.
Come on, there are allways reasons for changes be it technical limitations or security. Changes dont just happen because someone said I want it that way.
Pino
RhinoBull
Nov 10th, 2008, 10:14 AM
... Changes dont just happen because someone said I want it that way.
Unfortunately those are not uncommon things in soft business - decisions are often made by incompetent management.
syntaxeater
Nov 10th, 2008, 10:23 AM
Unfortunately those are not uncommon things in soft business - decisions are often made by incompetent management.
So are you against 4.0 or corporate darwinism?
RhinoBull
Nov 10th, 2008, 10:33 AM
What?! Where did that idea come from? :rolleyes:
Shaggy Hiker
Nov 10th, 2008, 12:03 PM
No, RB is just aware that intelligence doesn't always drive business decisions.
Kasracer
Nov 10th, 2008, 12:07 PM
Technology is always moving forward. Cars, for example, are going Hybrid, Hydrogen, Bio, Electric, Solar, etc. Many mechanics have to update their thinking and knowledge and they don't know which way cars will be heading. In the 1960s Ford worked on a nuclear powered car so you never know what could come out and what you have to use / support.
In the technology industry where software development is done, there is nothing tangible. No need to actually build a physical engine, you can just type one up, erase it, do whatever with it. Since software development frameworks can be adjusted at the drop of a hat; it's only natural they would go high speed into the future with enhancements.
It can be difficult keeping up with the times so specialization can help but in the end, if you don't want to do this or find it too overwhelming then you may want to think about a different career path because this will never stop (in fact, the pace may increase in the future).
I find it self-serving hubris to speak glibly about `an industry [of] change`. If those who post in this forum are prepared to embrace inconstancy, what about the hundreds of thousands of programmers and project managers out there who aren't? How many times have you had a senior/lead developer say, `We do it this way because we know it works`, when clearly, this is an euphemism for, `I can't be arsed to keep up with this crud`?
Not by any means is everyone an MCP or MVP. I don't wish to live my life glued to a computer screen trying to figure out what the heck is going on with new fangled stuff, when I had the hang of old fangled stuff down pat..Net 2.0 deprecated some things in .Net 1.1 but for the most part your applications converted up seamlessly. .Net 3.0 used the same CLR but added additional extensions; the base didn't change. .Net 3.5 added some additional items to the CLR but the base stayed the same. .Net 4.0 intends to embrace and extend the existing framework.
So basically there is no inconsistency (or inconstancy) just new features and fixes. Your .Net 2.0 application should upgrade to 4.0 with possibly no issues.
For example, I got myself a Vista machine a couple of months ago and just today, lost the network icon in the notification area. Ok, I've had that lots of times with XP. Just click on Network Place > View Network Connections, and sort out with `Show icon in notification area when connected`. Only no, that doesn't exist anymore. Well, where the heck is it? Scrabble around for half an hour or so, then hit Google, then find out that you've got to do Regedit and faff around restarting Explorer.Whether you like it or not, Vista was a huge step toward better usability. They updated Vista like they did with Office: a newer interface that makes more sense but will take some getting used to for those coming from older systems. That's just how it is. They're not moving it for no reason.
Don't tell me to embrace change! Change for its own sake (or more accurately, to keep the folks in Seattle gainfully employed) is just otiose.
My thesis is that NO ONE has the chance to become truly expert. Not me, not anybody (not even you). When we had VB6 for all those years, I was slaying dragons nearly on a daily basis. In fact, I was hitting the VB ceiling so often, that it was rapidly becoming a decision to go C, or C++. Then, dot net, and a steep new learning curve. Just as I began to `see the forest for the trees`, there came 2.0, with enough changes in the right place (like finding a lost network icon) to make it annoying. But, there were so many new goodies, it seemed parsimonious to complain. Then, 3.0, 3.5 and now 4.0 - and that's just the dot net framework!None of this is "Change for its own sake". There is typically very little of that in the technology industry.
I also think your definition of "expert" is bad. An expert is just someone who is adept and can show knowledge and skills in a related area. There are many .Net experts and many of them frequent this forum. You don't need to know every little thing about the framework to be an expert. If you know the syntax for C# and VB.Net and are aware of the most commonly used pieces of the framework and you can use the MSDN then I'd consider you an expert. If you can do all 3 of those things then there isn't much else you need (beyond improving yourself of course).
.Net 2.0 is a very nice framework and a great base for the managed languages. 3.0, 3.5 and 4.0 all extend the .Net 2.0 framework. 3.0 added extensions, 3.5 added extensions and language capabilities, and 4.0 will do the same. The same base is still there, still easy to use and the syntax hasn't changed.
So now, buffoon industry-types who want to play with the latest toys buy the latest software and put out adverts like: `... you will have 12 months' experience with WCF in an enterprise environment...` because the lazy sods want someone to come in and show them how to use it (never mind that no one on the friggin planet has that experience, so contractors are going to have to lie their socks off to get the job).WCF has been out for over a year... I like it quite a bit :)
I famously once attended an interview and was asked, `do you have any 2.0 experience?`. I said, `No. Out of interest, what is it about 2.0 that you wish to leverage for this project?` I didn't get an answer or the job.
Unless the evolutionary path of this industry to foist a ridiculous degree of specialization on its professionals, I don't see where we're going with this. Sure, if I can specialize in writing the <host></host> section in config files for cross-platform remoting components written on a Monday in VB for a Java application, then ok. But can I??Sometimes it's a good idea to be specialized in a specific area such as Windows Applications, Web Applications, Windows Services, Web Services, etc. I think you're just bitter.
Any skills you learn with .Net 2.0 can be carried over to 3.0, 3.5 and 4.0. The thing you need to do is keep on top of what's coming out. Yesterday I wrote a 5 page e-mail to my colleagues describing many of the upcoming items in ASP.Net 4.0, C# 4.0, M and Oslo, SQL Server 2008, Microsoft's cloud computing platform, Team System, Velocity and a few others. How did I find out about the new information? Just watched some videos on Microsoft's PDC website.
DeanMc
Nov 10th, 2008, 01:18 PM
I like change. And as Kasracer has pointed out. Its simply a matter of additions than change regarding the framework we all know and love.
syntaxeater
Nov 10th, 2008, 01:24 PM
This thread boils down to two blaringly obvious questions:
Is the framework perfect and all we'll ever need? No.
Should enhancements be given a seperate version for build targetting? Yes.
So given this, turn the question around. How is it you propose Microsoft expand on what is essentially their software factories?
DeanMc
Nov 10th, 2008, 01:36 PM
I do agree partially. But that would mean a rather large amount of versions. I suppose they could split into the base framework and then auto target as you use features. So as a developer you would have all the versions but when shipping only the applicable versions would be downloaded etc.
syntaxeater
Nov 10th, 2008, 01:41 PM
Which is the entire point and purpose of the GAC.
Kasracer
Nov 10th, 2008, 02:07 PM
I do agree partially. But that would mean a rather large amount of versions.What do you mean? Microsoft already takes the approach mentioned by syntaxeater. Do you not like it?
If possible I would rather build for one and have it work against any newer ones but that's kind of difficult to do with language updates.
mendhak
Nov 11th, 2008, 12:59 PM
I disagree, being an MVP or MCP or MCSD has nothing to do with being able to pick up on technologies. Everyone has areas that they choose to concentrate on. I like and consider myself good with ASP.NET, WCF, ADO.NET Data Services and the Entity Framework and the MVC pattern. I am average with WPF/XAML and I don't care much about it. Remoting is of no concern to me.
You're never expected to learn about the entire framework. You are expected to
1) Know your area (web development, remoting, windows forms, databases, coffee, etc.)
2) Know how to search/ask for an answer when you do need to venture into these grounds.
What is unfortunate is the naming they used. The 3.0 and 3.5 framework are actually versions of the 2.0 framework, with layers on top. 3.0 was going to be called 2.1, I believe, but apparently a lot of developers were getting confused about it. I found that a little hard to believe, but that's what the news article said. The same goes for 4.0 - it's the same 2.0 + add-ons framework. So you could also think of it as 2.0, 2.1, 2.2, 2.5.
It's just the same 2.0 framework you know well, plus more and more APIs and class libraries to use and do different things with.
mendhak
Nov 11th, 2008, 01:03 PM
I also think that the computer industry has always been about change. Imagine if you were an electronics engineer rather than a programmer.
You'd need to know about PCI. Then PCIe. Then PCIe 2.0. And PCIe 3.0 is coming out next year! I'm no electronics engineer, I'm just trying to think of any close example.
All this is to deliver a better experience to the end user. The .NET framework is to make our lives (programmer) better so that we can do better works for our clients.
So yes, change is happening, and the industry is about change for good reason.
bigMeUp
Nov 12th, 2008, 06:13 AM
Clearly, there is a sliding scale between neophyte and expert. The neophyte has to consult documentation/knowledge sources more often than an expert. The most expert person is therefore the one who least needs to resort to reference material. This is beyond fantasy engendered of argument; the interviewee who can best answer technical questions without saying, `I’d need to look that up in MSDN`, is clearly the most technically-adept, and the most likely to get the job therefore. No one would have much faith in a doctor who routinely had to seek advice from colleagues. Any sensible patient would rather seek out one of those other colleagues! It is sophism in the extreme to redefine ancient terms in order to buttress an argument. We all know what an expert is, what expertise is, and we should not attempt to persuade ourselves that there is somehow a new expertise paradigm.
Many of the replies I have received seem to insist that I detest change. I don’t. I do, however, detest change for its own sake. Earlier, I compared restoring a missing notification icon in Vista to doing the same in XP. In response, someone implied that there was a good reason for the new complexity. How it can be a good thing to introduce complexity to what was earlier simple, is beyond me, but no doubt this is the thinking of the new `experts`. Most of us, I imagine, would prefer the military methodology: more power with more simplicity. If it takes a thousand people to destroy a city, then cool; however, if it takes one person to blow up ten thousand cities, then really cool! It is only in the field of software development, apparently, that it is better to go the other way!!
Am I bitter? Of course. And it is all part of a bitter feedback loop. For the life of me, I can’t understand why more and more people are not just as brassed off as me. Or is it that others who have seen the light have already moved to Python and Borland C and are coding for non Microsoft platforms – so I’m going to be the last clown in the circus?
I don’t know how it goes down in Ulaan Baator, but here in the UK a contractor won’t get very far knowing ASP.NET, WCF, ADO.NET Data Services and the Entity Framework and the MVC pattern. You’ll be sitting there in the interview, and some putz will put down your impressive CV and ask, what do you know about the HigglePiggle Doodah in Framework 17.9? (I would answer, `F**k all – why, what do you know about it?`, but that’s only because I am bitter.)
I have been asked how I think Microsoft should develop their software factories (emphasis in the original). Well, how about, knowing that technology is changing so rapidly (emphasis mine), they DON’T KEEP KICKING OUT NEW FRAMEWORKS/VERSIONS/WHATEVER every cotton-picking six months? Hows about they develop a campus-wide, unified approach to development, so that new Frameworks are NEW FRAMEWORKS, and not (according to one expert who has posted in this thread) sticky new versions with add-ons banged on?? Hows about giving professionals ENOUGH TIME TO BECOME REAL EXPERTS (rather than people who just know how to read MSDN)?
I don’t see the `good reason` the industry is changing so fast that it is difficult even for an above-average professional to keep up with it all. I don’t see that it is good for the industry – which is my original thesis. I don’t see that it makes sense.
techgnome
Nov 12th, 2008, 07:56 AM
Some of you may want to read Billy Hollis's take on this.... I thought this thread sounded familiar.
http://visualstudiomagazine.com/columns/article.aspx?editorialsid=2851
-tg
DeanMc
Nov 12th, 2008, 08:51 AM
Look BigMeUp, I can understand your point of you but from what your saying you have an issue with employment and not new tech. If you read any book on tech as a whole the speed at which it is advancing is exponential. Regarding complexaty well I work with mobile handsets and everytime a new bit of hardware comes out that advances mobiles they get bigger, when people become more adept with this new hardware they learn to make it smaller and the cycle continues.
WPF is a great idea but is pretty messy at the moment, but in a few years they will make it more simplistic and something else big and hideous will take its place. My suggestion to you is if you know there going to ask about the latest craze, know enough about it that you can answer the question.
Dumbing things down is not always the answer. For instance look at parrallel processing should we go back to single core processing because it is easier. Sometimes making things more advanced means they become more advanced.
The trick is to know what to learn and what not to learn. I know WPF wont take off for a while so im keeping away from it. I do know that LINQ will get pretty big because programming at its heart is all about information organisation. So my next adventure will be into LINQ.
dilettante
Nov 12th, 2008, 09:49 AM
Because the factor at work here is the development tools arms race rather than meeting actual needs you'll see the same sorts of cries in many camps.
Java: Evolutionary Dead End (http://www.artima.com/weblogs/viewpost.jsp?thread=221903)
This sounds bad, but it needs to happen if Java is to ultimately stay in the mainstream. That is, if feature accretion hasn't already irreparably damaged the language.
Java Enterprise may be stone dead soon (http://www.theinquirer.net/en/inquirer/news/2006/07/12/java-enterprise-may-be-stone-dead-soon)
A SENIOR Burton Group pundit has claimed that the Java Platform, Enterprise Edition will be dead in the water in the next five years because it is too complicated.
Most of such comments are sheer hyperbole, after all even Java is still Coboling away just like .Net is despite articles like that going back several years. Even the death of VB hasn't stopped a lot of companies from maintaining old software and writing new software today using classic VB. And you won't find a much colder grave than that one.
I think what they do prove is that many people feel the same way as lots of those expressing opinions in this thread do.
I doubt anything is going to slow the pace of this change except the slowing economy. Most of what we're seeing ahead has been in the pipe, under development, for years. I predict we'll see a "mysterious" slowdown in change sometime well after the economy picks up again.
syntaxeater
Nov 12th, 2008, 10:32 AM
No matter what your perception is - at the core, computer programming is a science. And by extension, will evolve like a science.
Take a look into history for a comparison. One could only assume there were doctors in the 1900's completely content with a practition comprised of leeches, a bucket and various household tools. As modern day medicine/practices started to emerge; they were required to take on more equipment and training. Between then and now, it has broken into countless sub-sciences and specialized practices.
This same thing will happen (is happening) with our field. If we ignore the obvious changes (platforms merging, frameworks/languages evolving, the drive toward thin client, need for personalized networks, etc) and look at some of the industry redefining catalysts on the horizon (biological computing, nanotechnology, wetware, Cortana (http://en.wikipedia.org/wiki/Cortana), etc) - all I can really say is, don't sweat the small stuff and start getting used to accepting change without the bitterness. This is only the begining.
Blakk_Majik
Nov 12th, 2008, 11:17 AM
I'd like to make the point that just because newer frameworks are out there, it doesn't automatically mean you have to use them. However, I don't see what the problem would be learning about the new features and finding out if you can leverage the features to make your applications better.
And when you get into enterprise level applications, the move is very slow. When I first started working here almost 8 months ago, there wasn't a single .NET app in production. That's right, it was all VB6. Right now, there are two .NET 2.0 web apps out there and one desktop 2.0 app. However, we have about 5 VB6 apps that need to be converted over, and just as many brand new .NET apps that need to be prepped for production.
Given how long it's taken for this team to move just to 2.0, I don't know when we'll start using 3.0 or 3.5. However, I've begun familiarizing myself with what's available in the newer frameworks, so that we can use the features to make better applications. Hell, we have VS 2008, and every framework up to 3.5 is on the production boxes, so why not try to use it?
techgnome
Nov 12th, 2008, 11:54 AM
Wow... transitioned in 8 months? That's actually fast.... my last company has been "transitioning" to .NET (any version) for nearly 6 years.... and actively so for the last 3. The app is now this hybrid 85% VB6, 15% .NET app... given the state of things.... I have my doubts it will ever see 100% conversion to .NET..... sad really...
Place where I am at now, I'm on a team that's developing a new app from the ground up....and we just "converted" it from a 2.0 app to a 3.5 app ... mainly so we can take advantage of some optimizations, extensions and LINQ.
-tg
Blakk_Majik
Nov 12th, 2008, 12:24 PM
Forgive me if my statement was misleading. The .NET transition has been going on around here long before I came.
Before I came to the team, there was only one other person that really had .NET knowledge, and he was buried under so many other things. One of the guys knows some 1.1, but the other three (including our Senior) don't know much past VB6.
So while I've been able to give us a significant push in the right direction, the conversion has still been very slow. On the upside, I've been able to make a big impact relatively quickly, and that's always a good feeling.
TheCPUWizard
Nov 12th, 2008, 12:57 PM
1) .NEt = 4.0 = V10.0 (not 11 as previously posted = VS-2010 [it is available as a CTP right now....
2) .NET 3.0 has been available since 1/23/2007 (nearly 2 years) and .20 has been available since 2/17/2006 [nearly 3 years]
3) .NET 3.0 is just extensions to the 2.0 release (ie ADDITIONS, not CHANGES)
4) Assuming 4.0 releases EARLY in 2010, this meas 4 years between significant changes.
5) VB6.0 was release on 1/27/1999 and waqs declare "PAst End of Life" 3/31/2005 [Closer to 4 years ago, than 3....]
6) The change from VB4.0 to VB6.0 (which was widely accepted) occured in under 2.5 years
WHERE in the above FACTS is there any indication of a problem????
dilettante
Nov 12th, 2008, 05:08 PM
I wouldn't dispute any of those facts. Those of us who were there at the time remember the trauma of shifts from VB3 to 4 to 5 to 6. Even the changes from 5 to 6 which was a relatively small shift engendered a lot of angst.
I think it is more a question of how deeply invested you are in the intricacies. The typical CRUD or Web developer can hardly tell the difference between releases because they do not get as deeply into intricacies - and that's far from a bad thing.
Those who work on things of a more exotic nature don't have the same luxury, but that's probably just part of the cost of doing business.
DeanMc
Nov 12th, 2008, 05:35 PM
But if you are that deep in you would know about the changes long before they happen.
dilettante
Nov 12th, 2008, 05:57 PM
But if you are that deep in you would know about the changes long before they happen.
That is probably true, or should be true.
The problem is some of us have large software systems we have to support over very long lifecycles. It takes a lot of work to bring them forward to current toolsets, and it takes place incrementally over a long time.
You can only leave them "as is" for a limited amount of time. Eventually you lose expertise in the older tech, can't hire new workers who know the old stuff, or external changes force you forward. Lots of applications don't exist in a vacuum, they're built on top of a platform or framework. These can be anything from IIS or SQL Server (which have maintained pretty good backward compatability) to something like BizTalk or Speech Server or SharePoint (which change in radical jumps) or FileNet (which got taken over by IBM and "Java-sized").
Some of us have to cope with unfunded Federal mandates as well, often with short time horizons.
Any additional source of technology churn becomes a burden. Ideally there would be staffing levels and training budgets to permit all of the change to proceed painlessly. The reality is far different in most organizations, and even the investment banks will be pulling in the reins in the future.
DeanMc
Nov 12th, 2008, 08:22 PM
Personally I do not think the problem is with change, many programmer love change, the issue is time. As you have stated projects get large and have to be maintained, budgets get tighter and ROI becomes an issue. So there you have it the issue isnt change its:
Time
Budgets
ROI
/thread
TheCPUWizard
Nov 12th, 2008, 09:33 PM
Some of you may "recognize" me from other forums, but many may not.
By way of introduction, I have been a professional developer for over 31 years, and have run my own New York based consulting firm for nearly 25 (this April, I can drop the "nearly").
The majority of times, I am contracted by medium ($100M) to large (>$1B) corporations (and some goverment agencies) to either architedect or lead the development of programs in well excess of 1 million lines of code [not counting "designer" or "generated" code].
Since 2002, the majority of our work is based on .Net solutions. The reason is simple. THe total cost of ownership is proven to be significantly lower.
I have first hand been a part of the evolution of technology, from a $750K (in 1972 dollars) machine, that filled a room,and had 4KW of memory and was primarily programmed via Paper Tape and ASR-33 teletypes.
The changes in technology has been rapid over the past three decades, and even with my experience, I spend an average of 15-20 hours per week just "keeping up". When I am leading groups [including talks to students], I tell them that they will have to either do the same, or be left behind.
I am already booking contracts with clients to start filling out their plans for the migration to .NET 4.0 (VS-2010). Companies which have not already put this as a formal item for their 2009 budgets are already behind.
Aside from the new language and environment features, companies (and therefore any professional developer) must already be planning for hardware changes, such as 32-64 core WORKSTATIONS and servers with well upwards of 256 cores.
If you have not been writing software with this in mind for the past year to 18 months, then again you are already behind.
As dilettante stated....Except for the word "probably"..
thats just part of the cost of doing business.
dilettante
Nov 13th, 2008, 05:23 AM
At about 55 minutes into Stack Overflow Podcast #29 (http://blog.stackoverflow.com/2008/11/podcast-29/) Joel and Jeff go into this very topic.
bigMeUp
Nov 24th, 2008, 06:38 AM
http://gizmodo.com/5083371/a-call-for-revolution-against-beta-culture
*Need I say more?*
TheCPUWizard
Nov 24th, 2008, 07:59 AM
http://gizmodo.com/5083371/a-call-for-revolution-against-beta-culture
*Need I say more?*
While that link provides a view on technology in general, I fail to see anything specific about .NET nor anything to differentiate it.
On the whole "Beta mentality" issue, an rational mind must realize that the only reason it exists is because IT WORKS!!!! People and companies want/need to have the latest possible items because the benefits outweigh the "bugs". In the technology arena this has ben true since well before I started my career in the early 1970's.
techgnome
Nov 24th, 2008, 08:11 AM
@CPUWiz - what "works?" The Beta? Certanly not! Or the process? Yes it does.
And here's why: Developers make poor end users. We all have our own idea of how we think the application will be used. But users bering users have their own way of doing things. That's why Betas and CTPs are so usefull... get something out to the users to bang on to see where the deficiencies are. Anyone who uses a Beta for production is jsut asking for trouble. No, not asking, but sending out an invitation for trouble. Betas are to be used to see where there are problems and to provide feedback.
And I don't see anything in that linked article that says that Betas are bad.... quite the opposite... sounds like some companies could benefit from MORE Betas and testing, not less.
Betas and CTPs are good.
-tg
TheCPUWizard
Nov 24th, 2008, 08:24 AM
Users and developers are definately different. My previous point was targeted at users who accept releases (typically 1.0) that have "less than 100%" functionallity.
Beta and Production is rarely a good match, but there are exceptions. A few years ago I was leading a team and we had to decide to use 1.x or 2.0 technologies (2.0 was in early Beta). Because our release data was after the scheduled 2.0 release date, and the technology would make the job significantly easier (over 2 man years off the budget), we decided to go for it.
As it turns out, our produc was ready for production [over 3000 hours of QA testing] before 2.0 actually released. In this particular case we moved into production the day after the "Go-Live" license came out.
Getting back to .Net 4.0 (and more importantly the enhancements to Visual Studio), my company is already committed to providing our "Planning for the Future" guidelines by mid December. There are definately decisions that can be made today (many should have been made up to a year ago) that will influence how successful a product will be over its entire lifecycle.
bigMeUp
Nov 24th, 2008, 08:48 AM
... [a] rational mind must ralize that the only reason it exists is because IT WORKS!!!! ...
... And I don't see anything in that linked article that says that Betas are bad.... quite the opposite... sounds like some companies could benefit from MORE Betas and testing, not less.
I give up. :ehh:
.
Kasracer
Nov 24th, 2008, 08:56 AM
Clearly, there is a sliding scale between neophyte and expert. The neophyte has to consult documentation/knowledge sources more often than an expert. The most expert person is therefore the one who least needs to resort to reference material. This is beyond fantasy engendered of argument; the interviewee who can best answer technical questions without saying, `I’d need to look that up in MSDN`, is clearly the most technically-adept, and the most likely to get the job therefore. No one would have much faith in a doctor who routinely had to seek advice from colleagues. Any sensible patient would rather seek out one of those other colleagues! It is sophism in the extreme to redefine ancient terms in order to buttress an argument. We all know what an expert is, what expertise is, and we should not attempt to persuade ourselves that there is somehow a new expertise paradigm.There is no "new expertise paradigm". I think you're confusing different things.
Let's talk about Doctors for a second. Do you believe that the medicine field doesn't change? You can equate Doctors quite a bit to programmers when discussing the .Net framework (crazy talk? let me explain). As a Doctor you're expected to understand what each organ does, how they connect / work with other organs, and you know how to perform / diagnose in specific specialties such as Brain Surgeon. Do you think all Doctors know all new techniques? Of course not otherwise there would be no such thing as "second opinions".
Now look at the framework. Microsoft has kept .Net 2.0 as the base for .Net 2.0, 3.0, 3.5 and now 4.0. This way you know how the framework works, how certain items connect / work with other objects, and you know specific specialties such as ASP.Net or Win Forms development. Do you think .Net programmers know all the new techniques / object? Of course not.
You don't go into an interview and say "let me look at up in the MSDN". That's asinine. What you need to do is understand the foundation of the .Net framework. Once you understand that practically everything else is easy to pick up and understand. You also should specialize in an area to avoid becoming the "Jack of all trades; master of none" guy.
Many of the replies I have received seem to insist that I detest change. I don’t. I do, however, detest change for its own sake. Earlier, I compared restoring a missing notification icon in Vista to doing the same in XP. In response, someone implied that there was a good reason for the new complexity. How it can be a good thing to introduce complexity to what was earlier simple, is beyond me, but no doubt this is the thinking of the new `experts`. Most of us, I imagine, would prefer the military methodology: more power with more simplicity. If it takes a thousand people to destroy a city, then cool; however, if it takes one person to blow up ten thousand cities, then really cool! It is only in the field of software development, apparently, that it is better to go the other way!!You keep reiterating that you detest change for its own sake but neither you nor anyone else was able to say what was changed for its own sake so I have no idea why you keep stating that...
Anyway, as I already mentioned the simple changes that occurred in Vista were the results of thousands of hours of usability testing (something most companies don't care about anymore) and they found it to be easier / more efficient to do things a little different so they made the changes. You're already accustomed to the previous mediocre solution so it's been a tough adjustment. They can't appease everyone but it also wasn't done just for change sake.
Also, software development is not going "the other way". That doesn't even make any sense. Back 10 years ago working on a GUI was a pain in the ass and required many programmers. Now you can drag and drop GUI components and you're done. If that's not easier.... well I don't know what to tell you. All things in software development have gone this way. When computer graphics started coming about you could either use APIs to draw primitives directly to the screen or interface directly with video card SDKs. Then we went onto OpenGL and DirectX which provide a layer of abstraction and make graphics programming easier. Now we have XNA which makes drawing on the screen stupidly easy.
I have been asked how I think Microsoft should develop their software factories (emphasis in the original). Well, how about, knowing that technology is changing so rapidly (emphasis mine), they DON’T KEEP KICKING OUT NEW FRAMEWORKS/VERSIONS/WHATEVER every cotton-picking six months? Hows about they develop a campus-wide, unified approach to development, so that new Frameworks are NEW FRAMEWORKS, and not (according to one expert who has posted in this thread) sticky new versions with add-ons banged on?? Hows about giving professionals ENOUGH TIME TO BECOME REAL EXPERTS (rather than people who just know how to read MSDN)?They don't change every 6 months. .Net 1.1 came out in 2003. .Net 2.0 came out in 2005. .Net 3.0 (which were strictly only extensions; not required) was 2006/2007. .Net 3.5 was 2007/2008. .Net 4.0 will be 2010. Hardly every 4 months.
Also, Microsoft already has a unified approach to development. That's why all of the new frameworks are based on .Net 2.0. It's a solid foundation that's familiar with every .Net programmer. Why would you want them to create an entirely new framework every-time? Then you'd have to not only learn the new features but also re-learn how to do all the stuff you used to do. The way they're doing it now, you already know half of what you need.
I don’t see the `good reason` the industry is changing so fast that it is difficult even for an above-average professional to keep up with it all. I don’t see that it is good for the industry – which is my original thesis. I don’t see that it makes sense.You don't see a "good reason" because you're bitter. The industry has to change and change fast otherwise we'll never go anywhere. Suck it up or find another industry. Look at it this way:
I'm only 23 and for my profession career I've had to learn the following (roughly in order (does not include the typical office tools such as Access, Excel and Word)):
VB6
C++
XHTML
CSS
Photoshop
Illustrator
QuarkXPress
PHP
MySQL
VB.Net
C#
.Net 1.1
.Net 2.0
DirectX
OpenGL
Flash
Flex
Managed C++
ASP.Net
.Net 3.0 / .Net 3.5
The list goes on. I'm not trying to brag either as I'm obviously not an expert in all of those languages / libraries / applications. Did I need to be an expert? Heavens no. For the past 4 years I've focused mostly on C# and I am still learning. Do I consider myself an expert on C#? I'd like to think so but I don't believe I'm quite there yet. I've managed to keep myself as informed as I needed to be depending on where I was career and school wise.
For some reason you think seem to think that it's impossible to keep up but all modern industries are like this.
Car makers - Every year something new comes out. Companies are releasing cars that run on Bio-Fuel, Solar, Electric, even nuclear powered cars. I don't see car mechanics getting pissed off. My father who has been a car mechanic for over 20 years still goes to school to learn about hybrid cars, electric cars, etc.
Medical - Every month you hear about surprising new treatments for many things. Do you think Doctors automatically know about all of these?
In my opinion it's good for the industry. As better programming techniques, frameworks and languages come about it forces the industry to change or die. This helps weed out anyone who wants to work in legacy because that's all they know. If you don't keep up and only know the old and the legacy then why would you expect to flourish? Seems back-wards to me. Sure it can be hard at times but it's doable if you want to stay in this industry.
TheCPUWizard
Nov 24th, 2008, 09:07 AM
I give up. :ehh:
.
I am just now beginning to feel confident with framework 2.0.
If you are just now "beginning" to feel confident with technology that is OVER 4 YEARS OLD I think there is an issue...compared to many other areas of technology, the evolution .NET is relatively slow.
kasracer made a number of excellent points especially relating the to timing of the various releases, and the high level of compatability.
vbforums.com
Copyright Internet.com Inc., All Rights Reserved.