Has a Decade of .NET Delivered On Microsoft's Promises?
cyclocommuter writes with this snippet from The Register's assessment of whether
Microsoft's .NET framework has been a success: "If the goal of .NET was to see off Java, it was at least partially successful. Java did not die, but enterprise Java became mired in complexity, making .NET an easy sell as a more productive alternative. C# has steadily grown in popularity, and is now the first choice for most Windows development. ASP.NET has been a popular business web framework. The common language runtime has proved robust and flexible. ... Job trend figures here show steadily increasing demand for C#, which is now mentioned in around 32 per cent of UK IT programming vacancies, ahead of Java at 26 per cent."
Next question.
We will bankrupt ourselves in the vain search for absolute security. -- Dwight D. Eisenhower
The article says that demand for c# is around 32%, but it should also add in the demand for vb.net, which is less but should be added to the total, as it is in use. In my view, the language features, excellent development environment and comprehensive libraries make .NET a win for most LOB applications - which is the vast majority of all PC applications in use at the moment.
Yup see them every day
"Please don't apply if you have C# experience"
I think that java had the momentum, and the quality, so ultimately there was something structurally wrong with it that caused the decline in marketshare. The webapp share was taken over by flash, which is far slower than the java vm, because actionscript was easier to program in. If sun had made a ligthweight version of the vm for the browser and simpler language like visual basic, things might have been very different.
Joking aside, Java is multiplatform in practice and .Net is only in theory.
839*929
It depends what the goals were.
If they wanted to completely depose Java then no, Java is still there.
If they wanted to introduce a Windows-centric alternative to re-invigorate desktop development and replace the horrors of C++ and VB with something with more modern and useful layers of abstraction and code checking that were already in Java (typed delegates, generic types, garbage collection, etc) then it seems to have done all right.
If they wanted to tear the OSS world in two with arguments over whether it .Net "teh evilz" or not then that'd be a definite yes, even thought more and more patent covenants are coming in to cover Mono (despite the fact that patent covenants shouldn't even be necessary if the legal system was sensible enough not to allow the patenting of software).
As a cpython developer for many years now, I think the addition of IronPython to the .NET tools basket holds a lot of promise.
Is that so much of it wraps, and hides the complexity of, COM. I haven't had to deal with COM programming in 5 years now.
Best Slashdot Co
I was initially excited by .net when it was first released and have preferred it over Java, which as a language seemed to have stagnate. Now, I am finding C# quite a disappointment with Microsoft not investing the time and energy to ensure the features they add to the language are polished:
* Adding extension methods without also adding extension properties
* Refusing to implementing covariant return types
* Adding type inference, but disallowing it for class method return types
As so forth. Microsoft simply doesn't have the discipline to finish any feature addition to the language before moving to the next.
That doesn't mean I prefer Java either. I only use Java and C# at work out of necessity.
My language of choice is now Scala.
Microsoft has a monopoly. Maybe less so than before on the "desktop" category, but to state the obvious their monopoly on "Windows" is 100%. So naturally, they have every advantage when creating products for their own platform, and they'll do everything legally possible to shove dev products down developers throats.
So I say whether they call it .Net or .Piss, it does not matter much. The success of ASP is a bi-product of their desktop advantage. If ASP.NET were sold by ASPsoft, then no one would buy it.
Business 101: How do you sell a product regardless of its quality?
Microsoft is great at this, as every other major US corporation is and should be.
BTW I am not saying anything about their quality. I am just saying it doesn't really matter much, because their software is sold by weight.
Well I just receieved a Big Endian version of the .NET Micro Framework, as promised and its a big X-mas present :) ... You guys that dont like MS really have no clue do you ? , try a little harder and keep playing with your Little Endian ARM junk !
bæ8Ã0sÃOE?5r©oÂÃ?âz:ÃÃAÃ?ÃOEÂ6fXÃ?]Â
.NET is not limited to C#, although that is probably the most usual. Any language can be used so long as it is made to conform to the .NET CLR (Computer Language Runtime (?)) standard. In addition to the usual MS suspects, there are Third Party implementations of other languages that fit within that framework. This gives .NET development a flexibility that encourages development from experts in many domains dominated by other languages.
Has it delivered? If it continues to exist, yes.
Is it the best? Depends on your prejudices. Few have the ability to make a truly objective assessment. Objective.
Keep Doing Good.
C# is replacing Java as the language to teach kids new to object-oriented programming how to program. It is gaining widespread acceptance in industry, and works perfectly (obviously) with Visual Studio and other development environments. It has also made creating professional Windows-based GUIs much easier and more desirable to do, which is something that only Visual Basic and hardcore C++ shell API developers could accomplish. Its reporting tools are also held to high regard and are used quite frequently in industry. Finally, with Windows Vista and 7 coming pre-packaged with .NET frameworks, integration is only that much easier for .NET developers. Let's not forget about how it sort of, kind of now works in Linux with the Moonlight Project (by the man that shalt not be nam-ed).
However, that's just C#.NET. Visual Basic.NET didn't share the same success, though its usage is also proliferating. Thus, I'd say that as a platform, it's still growing, but C# by itself has accomplished its goals as an established and well-regarded language in IT and beyond.
All services are provided by Microsoft (Oracle/Sun), but its a full time job trying to figure out how to use them. Have fun!
I think C# is a great language and the .Net framework has many powerful features which make a developer productive.
But still, I think Java has a much wider range of tools to make the developer even more productive. Hibernate, Spring, Apache Shiro, Groovy, Grails, Lucene, Compass are some few of many.
Since I am a web developer, I've never been as productive as when I started with Grails. Compared to Asp .Net we've improved our productivity with 400%
There isn't another language that can be compared to .net it's quite unique in many positive ways. There is always a 'best' set of languages for particular applications, but i find .net has many bases covered well. And yea it's fun.
People like .Net because MS offers tools to allow point & click programming. This means more people can do it and companies can lower wages.
That is one big reason not to support it. We don't need more shitty software that people don't understand how they've created it.
But it has always seemed to me that shipping a commercial closed source product based on .Net is a huge challenge to ensure that it remains closed source. What do people do? Do they simply rely on one of the many obsfucation products out there?
At least in the good old days you could guarantee that disassembling your binary didn't give someone your C code without a bucket load more work
I am Slashdot. Are you Slashdot as well?
So far it seems Microsoft has been sincere about not planning to litigate against projects implementing .NET open source. I'd call that a success any day, given how the Microsoft of yesteryear would have thought about these things.
I'm very much pro-choice in terms of both choice of language/framework and in terms of proprietary vs. open source. Interoperability given a mix of these things is always good. With .NET you can choose different languages for different parts of your project, and properly written the result will run on both Microsoft's platform and Mono. I think that is success enough.
.: Max Romantschuk
It has not been a decade jackass! I know this will not be posted because /. is so one sided and the articles are posted by the same people every day. This was a community site but that is long gone.
I've been a .NET programmer since the start 10 years ago as full time and that platform is really improving nicely.
Just recently I've been started a project in Silverlight and it's so great to use the same syntax and tool, and even 90% of the same code for doing rich application client side.
Silverlight is only a sub-set/lightweight of the .NET framework.
If web application development was still as horrible as it was with asp.net 1.1, I would have given up years ago. With .NET 2.0, it finally became usable. When they introduced AJAX update panels, it became far better than anything else in the market.
I've been using asp.net 3.5 lately, and I have to say that I am very happy with this development environment. Every other data access layer feel like a complete waste of time compared to LINQ to SQL. I love the way it helps me produce insanely good work very quickly.
I can't even begin to express my gratitude for the programming language that has paid my bills for the last 3 years.
Speaking strictly from a Windows development perspective, I think .NET has improved the experience somewhat compared to other kludgy frameworks (MFC / ATL). Assuming you don't plan on any cross platform deployments, you can implement your application within .NET using all of the capabilities of the operating system in an object oriented fashion. It's quick - it's easy - and C# is close enough to C/C++ that anyone with a programming background can pick it up.
Where Microsoft missed the mark is on the promise that their own applications would migrate to .NET. For example, Microsoft Office would get re-written as a .NET application. Ironically, I think it's because of the lack of cross platform capability that .NET was unable to meet this need. Microsoft has a number of key software products that need to run on both Mac and Windows. While native C/C++ can be easily ported, without a compatible CLR moving to Mac isn't that easy.
Had they been able to meet the portability objective (which they never promised), I think .NET could have been much more prevalent. For now, it will continue to be a second-best development environment for Windows computers (with C/C++ being the primary).
Eric Sarjeant
eric[@]sarjeant.com
I think .NET is a good compromise (meaning that it is not the best but it is often good enough) on:
.NET (up to a complete OS) maybe the framework would have become more mature and more adopted.
- learning curve (easy by design)
- functionalities (reflection, anonymous methods, attributes...)
- portability to different "Windows" (Mobile, Server...) and to other OS' (Mono)
- execution speed
I also agree that if Microsoft had distributed more software written in
Working to work less.
I think the register is oversimplifying here. PHP, Ruby on Rails, Python, Scala... Sure Java is a complicated beast and it has become more and more difficult to sell to new customers, but .NET is not the only one eating Java's pie.
Now, I wonder: how much .NET customers have found out they overpaid for a .NET application when they could have done as good with an X language alternative?
The answer is, as always, it depends.
If you expected cure for cancer, it failed miserably.
However, if you were involved with any of the likes of MFC, ATL, Visual Basic 6 and bellow, DAO, Interop & COM (to name just a few), it is to be regarded as the second coming of Christ.
"Blah blah blah." - [citation needed]
We use both heavily in our enterprise. I tend to lean toward Java because of the wide spread use across platforms. But I agree that the underlying framework of Java is ridiculously complex. We spend a huge amount of time dealing with the JRE rather than writing and supporting actual code.
.net, visual studio, MSSQL, AD, and IIS are a seriously tight integrated platform. I've seen even our most junior devs author amazing sites using the pure Microsoft tools.
.net framework methodology. If they could pull that off Java would really start to storm our environments.
On the other hand,
Overall, I'd say I'm on the fence. I wish Sun would remove head from ass and get the JRE to a better versioning system that allows old apps to keep running along with new apps, similar to the
What planet do these guys live on? .NET and C# are being destroyed in the market. Go to Monster.com or Dice.com and do a search on Java/J2EE/JEE versus .NET/C#.
Java has won and the complexity of the platform is merely a sign of its maturity. Also, no shop uses everything--they use what they want and build their own stack. That's not something that's possible in the .NET world where, to paraphrase Henry Ford, you can have any color as long as it's .NET/C#. They define the stack, not you.
I gave up on Microsoft technologies in 1998 and have never spent another dime on any MS products since. I marvel that people still do, given he torrent of trojans/viruses and other malware that plague the platform.
please dont bullcrap if you are not in industry. i am one of the web developers who specializes in ecommerce web development. and the current situation is, nothing is able to come close to php+mysql for developing ecommerce/business websites. leave aside individual requests for quotes, the projects you will see in contract websites like elance, rentacoder and the like will be predominantly php+mysql. you will be hard pressed to find asp / asp.net projects as a fraction of them even.
the situation is so ridiculous that despite new lamp developers get into business every single day, demand seems to be rising faster than the supply and there is not a lack of projects, even for people who are charging a few times the rate indian houses charge.
the only clients who go with, or stuck with asp.net are corporate clients which are bigger than medium size. because they are already locked in with microsoft products, the natural route they choose happens to be going ms all the way. however, the number of such clients are few, because a corporation which is of medium size and larger would easily be able to have their own i.t. department, and make them work on their ecommerce/business project. few such projects are contracted out to software houses or developers. not that there are many medium+ sized corporations looking to set up an ecommerce/business presence on the web either ...
therefore lamp is the predominant choice in all respects. its so very curious that a 'php developer' has become a broad, generic definition - there have come up a lot of specializations. 'scripts' of yesterday have grown to become specialization areas in themselves. the 'php' part is expected by default ...... ecommerce developer. oscommerce developer. phpbb developer. vbulletin developer. joomla developer. postnuke developer. people post up jobs with these titles, not even needing to mention php, because its accepted as default.
dont err me by thinking that i am a php fanatic, or ms enemy. true, i love php. and true, i dislike ms. but foremost, im a professional. the current state of market is as thus, and all are - naturally - obliged to respect its demands.
Read radical news here
On What planet do you live? Java is clearly the standard when it comes to university computer science. I have heard of hundreds of CS programs that use Java and not one that uses .NET. More MS BS.
C# is probably the first choice for .NET development. But I doubt C# is the first choice for all Windows development. Especially considering that no major commercially-available software is .NET-based, .NET isn't even used for Microsoft Office or Microsoft's other software packages, and using .NET requires you to install the rather large .NET framework on a PC before you can even install your app unless you're using Windows 7 (because XP, the world's most popular OS has no .NET framework pre-installed).
Portable versions of Firefox, GIMP, LibreOffice, etc
Java:
-requires 1000's of "class libraries" to do anything useful, better hope you have the right versions too
-requires hundreds of MB of bloatware to be installed
-requires 3 different versions of the interpreter,"just in case" someone decided to use old/obfuscated functions, etc
-slow as frozen molasses, on a good day
Microsoft ".NET"
-requires hundreds of MB of bloatware to be installed
-requires 1000's of "DLL" files to do anything useful, better hope you have the right versions too
-requires 3 different versions of the "interpreter" or "runtime framework". "just in case" someone decided to use old/obfuscated functions, etc
-fast as a bat out of hell, when it decides to work
I'd say they are about the same, except for speed, I'd go with Microsoft [for once]
I don't see anyone talking about performance.
I don't do .NET so I have no idea of its performance.
I do like the concept that Java is far removed from the physical hardware so the compiler can make all sorts of simplifying assumptions and nifty optimizations.
Modern Java compilers turn your java code into machine code that runs just as fast as languages like C and C++ which are pretty much just fancy macro assemblers.
Can someone with experience speak as to the relative performance of java and .NET?
I thought the article may be overstating .NET's popularity, so let's take a quick look at listings on monster.com. Here are the results of a US-wide search for each of the terms (at 9am on 2009-12-18):
C#: 2,920 .NET: 3,632
(Just)
ASP.NET: 1,714
Java: 5,000+
If we narrow it to posts in the last 7 days:
C#: 971 .NET: 1,095
(Just)
ASP.NET: 524
Java: 1,608
Or if I select my location, New York City, over the last 60 days:
C#: 223 .NET: 239
(Just)
ASP.NET: 91
Java: 591
As expected, there is a lot more demand for Java developers than C#, ASP.NET or even .NET framework itself.
(Note: I added the prefix (Just) to the .NET line as otherwise SourceForge won't let it be separated onto a new line)
Portable versions of Firefox, GIMP, LibreOffice, etc
I don't know .NET, never touched it, only superficially read some articles on it, never took the effort to read a book about it, ... because there was no convincing argument to do so. Call me ignorant.
Now if I have a look at what's interesting in the Java world in the last couple of years (hadoop, android, GWT, antlr, ...), I definitely want to stay on this side of the fence.
Please tell me what interesting developments in the .NET world are we Java developers missing out on ? There surely must be something that should make us jealous...
Of course their reasons for doing it are not benevolent, they want software designed for Windows so that users want to use Windows. Regardless, they produce extremely slick dev tools because of it. Often the things maligned by self proclaimed "real" programmers are actually quite useful dev tools in the right situations.
Visual Basic is a good example, all sorts of geeks liked to hate on VB as being stupid. While they were on to something in that VB wasn't powerful like C/C++, they missed that the reason was that VB was a managed language back before such a thing was popular. It allowed you to easily churn out UIs and things like that with minimal effort and without the need to check for the gotchas you got with something like C. Hence it was quite popular.
What MS has done real well is realized that most developers out there are NOT the hard core "Give me a text editor or give me death!" types. They are people in business trying to get something done, and get it done with minimal fuss and hassle. They also likely have to put up with management idiots who want to change the requirements every 5 minutes and thus being able to rapidly change the software is a benefit.
They really do seem to be a company that is in touch with what developers want.
What is .NET? ;)
Any sufficiently advanced intelligence is indistinguishable from stupidity.
Really you should compare JVM to .NET.
JVM and .NET are the implementation platforms.
Both platforms are host to different languages.
Compare languages to languages and platforms to platforms.
The Register is probably the most unreliable site in the tech world. I would take anything these guys publish as highly suspect.
I am not convinced that it is such a bad thing that Java-the-language is 'stagnated'. As language, Java was designed from the start to eliminate features that were, in the parlance of the day, "Considered Harmful". So yes, it was and is a bit restrictive. C# has a richer syntax, including "goto"... The richer syntax can be a plus because it often saves time in coding.
But creating code is what, 20% of the lifetime cost of a software package? And meanwhile C# provides the less disciplined programmer with plenty of opportunities to create write-only code. Never mind lambdas and closures --- I am not so sure that having properties in C# is a great idea, because their very purpose is to hide that code invocation happens. And I positively dislike the opt-out from declaring which exceptions a method throws. Exception handling is simply too important.
Well according to Dice.com... "Java" has about 3,203 job opportunities... and "C#" and "VB" combined have about 1,066 job opportunities... I would say Java isn't anywhere close to dying anytime soon and is still very popular with businesses willing to hire. As an aside, Flex has about 268 job opportunities which is roughly equal to 25% of the number of Microsoft based development jobs. With the turn from traditional desktop application programming to web-based applications, I'm left to wonder whether Microsoft will catch up with the demand of Java developers before Flex grows to overtake the demand for Microsoft developers?
The artical mentions that "Microsoft itself has been slow to adopt .NET". Why? Well, possibly because, like java it's quite slow. Microsoft did put some .NET bits in their products, for instance Visual studio. Visual Studio is primarily written c++. You can even uninstall the .NET runtime and it will still run. However both the project properies dialog and the macros are written in .NET. It's not any coincidence that both these features are by far the slowest parts of the IDE.
I think this area is mixed depending on the group. With the advent of Windows Vista and Windows 7, I foresee a much larger adoption of C# for app development. But one also has to consider the problem deploying a commercially-available software in C#. C#, at least in .Net, doesn't really fully compile, it packages (not unlike Mac's .app files). And unless you employ a source obfuscator, the entire source code and code logic is available simply by "unzipping" the .dlls. My suggestion to Microsoft is either allow a full binary compile in WPF/.Net, or build the obfuscator into VS as it is currently a real pain to employ.
Here's a cookie... *psst* it's MAGIC
It's a TLDN, duh.
Here's a cookie... *psst* it's MAGIC
I do software development in both Java and C# (mostly Java) and what i see happening is that C# is winning in the GUI/Desktop environment (mostly by replacing VB and VS.MFC) while Java is winning in the server space (mostly because in the server space with non-GUI applications Write-Once-Run-Anywhere is mostly true).
Nowadays, almost nobody does GUI development in Java, while at the same time C# never managed to get traction in the server space largelly because in parallel Linux has replaced Windows as the OS of choice for cheap servers.
That said Sun has done little for the success of Java and as of late might in fact have hindered it's adoption by going for increasingly complex, heavy and underperformant libraries/frameworks, making the learning curve for Java in the server steeper and harder to overcome.
The success of Java in the server space has come thanks to Open Source and in spite of Sun - there are now thousands of open source tools, libraries and frameworks for Java which improve the software development process and free developers from having to waste time in "infrastructure" work. As a mater of fact, in the last 4 or 5 years, the Java world has been moving steadilly away from Sun's heavy and complex approach to the server space (J2EE) and towards less monolitic approaches and lightweight frameworks and libraries (such as Spring) designed specifically to replace J2EE.
Although Java-the-language has stagnated a bit (I don't know if JDK 7 will ever be complete, due to all the feature cramming), but there's been a lot of activity during the past few years on other languages that run on Java-the-platform. Groovy and Rhino (Javascript) have been available for the JVM for quite a while. JRuby is actually faster than "native" Ruby for a lot of real-world applications. The Lisp-like Clojure language has a lot of fans. IMO, Scala is the most interesting out of all of these, with a very sophisticated type system, as well as functional features that the cool OCaml and Haskell kids seem to love.
All of these alternate languages can use the wealth of libraries available for Java, generally on all platforms on which the JVM runs. For example, I know of Scala apps that can run on Andriod, which is close enough to Sun's VM.
It further divided the open source desktop effectively by infecting Gnome and even GNU Benchmark Linux, Debian with Mono and made open source nerds call each other names in discussions.
There are millions of Mono infected servers out there which the administrator/IT manager has forced to agree some complex agreement with MS. Otherwise, these people wouldn't even care if MS has existed or not.
those are salaried jobs in medium or bigger corporations. they are POSITIONS. they do not constitute 'ecommerce'. and on dice, one of the biggest places that serves for such hirings, there are only 74 fucking asp.net positions. one of the biggest, and there are 74 positions. which will mean 74 people will at most be working on 1 or 3 projects or so in 74 different corporations.
whereas, in elance, which distributes PROJECTS as opposed to hired salaried positions, there are today PHP (568) and ASP.NET (72) projects. PROJECTS. not salaried positions. that means 568 separate projects as opposed to 74 in your dice's salaried positions are going to be conducted under php whereas 72 opposed to asp.net.
you are the one talking out of your ass, confusing salaried job positions with the volume of ecommerce. and 72, on a site like dice fails at that to boot too. such a serious, high traffic and usage site, and only 72 positions for people to work on 1-2 projects at a time when they are hired, for singular corporations.
but hey - dont let that discourage you from posting something totally out of your ass by confusing 2 separate concepts altogether.
Read radical news here
And avoid any program which requires .net - its dot bloat.
If Google really cared they would fix Android Chrome to reflow text, instead of discriminating
96% of all phones support it,
You mean 'support' by having device-specific runtimes, right? The mythic write once run everywhere is just that, a myth. How about a stop watch application as an example? A stop watch, while not simple is neither overly complex either and has no special GUI, yet phone specific.
“enterprise” server development
The complexity of Java Server apps creates as many issues as they appear to solve and hasn't been shown to provide an overwhelming advantage. "Broken Windows" parable all over again.
Java is no 'silver bullet.' Which is why there are at least a few viable alternatives. You would be wise to step off the Java bandwagon before Oracle screws it up even more.
http://www.maxineudall.com/2010/02/should-economists-be-sued-for-malpractice.html
and all the projects which are contracted out in those sites are made up of 'give me a twitter clone for $100'.
excuse me, but if you are going to retort about something, go learn about it first. the minimum budget of ANYthing on elance can be $50, leave aside a twitter clone for $100. and most often than not, in such postings like the one you mentioned, the budget in the end comes up being readjusted to become more realistic, if there isnt anyone who already has a premade script that fully or approximately satisfies the client's demands for an acceptable budget.
next time you are going to shit online about something you dont know well, dont. you are making yourself look ridiculous.
Read radical news here
http://www.langpop.com/ begs to differ.
1. They pissed all over Visual Basic, which has been used in a lot of fairly critical business applications since the mid-nineties to create applications quickly. Say what you like about it, but an experienced developer could develop very quickly and well with it and it is very widely used. With VB.Net they created an unnecessary and new object oriented language, the need for which was already being fulfilled by C#. I cannot see the point in it as it is merely another .Net language that differs via syntax only.
.Net. Many developers simply don't need the complexity of an object oriented environment foisted on them. They should have implemented VB with .Net as they have with IronPython and at least made it API compatible so you could recompile, or learned from Ruby with or without Rails. Java might be complex but .Net is still complex compared to what else is on offer.
.Net. At least with web applications you only need a very simple client and don't have to deal with that deployment shit.
.Net -> COM and COM -> .Net interaction seems to have been bolted on as an afterthought like they were being forced into it.
.Net is even worse than Java is the moving goalposts. Over the years people have asked whether they should being using WinForms, Avalon and then WPF. No one seems to know. When Windows 9 or 10 comes out then why should I migrate to a yet another new UI or other technology that will not benefit existing users in any way, thereby not making me any money, because Microsoft now won't make new components like WPF available for existing platforms? At least if you develop for XP any applications on there will work on Vista or 7. They might not look as pretty, but making things pretty for a limited userbase doesn't make any money. Just take a look at the Mac.
2. Again, VB related, for the first time you couldn't take your VB code, compile it in a new version of Visual Studio and get all the benefits. Expecting people to throw away millions of lines of code and start fresh for no benefit whatsoever is an epic fail and Microsoft diverged totally from their past views on this.
3. VB related again, but there is still no RAD environment for
4. As such, a great deal of applications, mostly VB, that could went web based and weren't re-written in
5. There is still a ton of stuff written with COM, and interacting with it is still a huge PITA when it comes to deployment issues. They should have focused on simplifying this as much as possible. The
6. There are still a lot of applications where developers are not comfortable running it in a VM.
7. One area where
Microsoft has lost a great deal of what made their development platforms attractive because they think they are losing money by doing it and there are too many divisions like MSDN wanting a piece of the action.
and tell me whether they deserve any reply, leave aside any grammar.
7 out of 10 seems to be corporate slaves who are working their ass off in microsoft infrastructures, and being elitist about it. their image of free contracting world seems to be comprised of $20 scripts and $100 twitter clones, utterly painting a picture of utmost ignorance and cockiness.
the rest seems to be immersed so much in the corporate world that they think some sizeable corporations running ecommerce outfits with ibm products constitute the bulk of commerce on the web, totally being unaware of the innumerable small businesses that are being run on free lamp software. with their logic one would easily say that the content creation on the net comprises of cnn, nbc, facebook, twitter, totally ignoring maybe 90% of the rest of the content on the web. more or less the same thing.
corporate ignorance, and arrogance i say. they wont know anything before they go out to work on their own - which, i admit, is a very, very scary prospect for many that are used to corporate 'comfort'. no point in replying to them.
Read radical news here
If we also include the fact that M$ has a 90% market share for desktop pc, and that to use a sony product with a sony products begats using a ms product with an ms product, it is no real surprise here! I program with .net vb and c# alike, and have found the fact that you can so easily integrate office products into your development and real added bonus, especially now with linq etc.... i think they are a notch above the rest for making innovation easy for developers trying to bring about code in a short amount of time.
Jave requires you know so much about all the modules and constantly keep updated with it, where as most of the time ms usually has a good solid base for you to incorporate modules within the framework itself. Java has yet to prove to me its efficiency in this department. I would much prefer using java (back then) for linux porting, however with wine being able to run the framework, even this now is not a selling feature for java.
tell that to the innumerable ms zealots who posted replies to the parent with scornful retorts.
Read radical news here
first, there are a lot high charging companies and individuals which would make the AVERAGE $20, and i assure you the indian houses which charge supposedly $5-10 are coming up close to average with the methods they employ or extra charges in the end.
and one wonders, what would the real hourly rate of a salaried individual who is working for a corporate position would happen to be if all the extra time s/he is required to spend for the corporation counted in.
Read radical news here
You're duplicating results in your calculations because most .NET job listings include 2 and often 3 of those terms.
For US-wise listings: .NET: 3,632
C#: 2,920
(Just)
ASP.NET: 1,714
Java: 5,000+
You'll find that: .NET: 1,905 .NET + ASP.NET: 1,120 .NET + ASP.NET: 859
C# +
C# + ASP.NET: 1,183
C# +
So we get: .NET (no ASP.NET): 1,046 .NET): 324 .NET + ASP.NET (no C#): 261
C# +
C# + ASP.NET (no
So, your total is actually more like:
Your total: 8266
Subtract out the 2x the 859 listings that you counted 3 times: 6548
Subtract out 1x the 3 double listings referenced above that you counted twice: 4917
So even if you add them all together, you get 4,917. Which is still less than the 5,000+ Java listings... and we don't know how many over 5,000 that number is.
If we're comparing platforms, it's Java vs .NET, which is 5000+ vs 3,623. If we're comparing languages, it's C# vs Java, which is 5,000+ to 2,920.
Any way you slice it, Java is more popular.
Portable versions of Firefox, GIMP, LibreOffice, etc
Me: "Hey programmer guy, we need a small program that does XYZ." .NET guy: "It's going to take 6 months and we'll need to buy a license for these modules."
PHP guy: "Sure, I can square that away in one caffein-fueled night."
I'm not saying PHP is pretty or that it's better, but this sort of thing is a regular occurrence.
or else!
.NET is for all practical purposes a singe platform technology. Is it going to be dominant on that platform? Of course. Java is a thing at entirely different level. It's something that runs on every OS and every type of device out there. So, as soon as there's a chance that you need to support or interact with anything other than Windows .NET is out.
Why not compare the popularity of Visual Basic vs Java?
I have to agree 100%. I have several desktop based applications that I wrote in C#. I found getting users to download and install the .net framework was a huge PITA. You can guard against this if you have a decent installer solution that required the user to download the framework and the smallest framework redistributable is 25 MB I believe. Because of this I have pretty much given up on .net for the desktop. I'm moving back to native code only so users don't have to download entire frameworks to run my apps. With windows 7 this might change since the OS has the latest framework. And I heard somewhere MS is now going to distribute the .net framework via windows update (why they didn't do this from day 1 I have no idea). Java IMO has the same issues users still have to download a runtime and deal with different versions of said runtime. Servers are a different matter entirely, code whatever best suites you and your needs there.
Hold up, wait a minute, let me put some pimpin in it
The problem with "seeming to have been sincere about not planning to" is that it's completely unreliable. Unless they make a clear, legally binding statement to this effect, you shouldn't rely on it. Even if at the moment they really don't plan to do so, who tells you they won't change their mind next year?
The Tao of math: The numbers you can count are not the real numbers.
why shouldnt i become 'defensive', when there are dozens of zealots assaulting with snubbing, scornful, and even irrelevant, personal attacks ?
give me ANY logic that i shouldnt be 'defensive' and be accepting them lovingly, with open arms, like a jesus on the cross, and ignore all the elitism and ignorance in the posts.
just do this, and i will drop all the arguments.
It is quite amusing to me to watch you continually fail to look convincing with your arguments, simply because of your zealotry and arrogance.
i wonder why the fuck one would feel the need to let the 'amusing party' know that they are being amused. if you are being amused, be amused by yourself in a corner or something. trying to belittle someone you are arguing against with such bullshit instead of any tangible argument is much more 'amusing' in itself.
Read radical news here
Java has nothing to do with this article. It's about .NET and yes, I believe Microsoft has delivered somewhat.
Nevertheless, .NET has ramped up it's complexity (especially when you go past the core libraries)..
Just look at the .NET technology soup (Windows Communication Foundation, Windows Presentation Foundation, Entity Framework, LINQ, ASP.NET MVC, Enterprise Library, Managed Extensibility Framework, Windows Worfklow Foundation, etc etc).. Reality is Microsoft is trying their hardest build something more complicated than J2EE for the Enterprise - lol.
Nevertheless, the recently released JEE6 platform (with the help of the larger Java community) improves that stack and makes it easier for enterprise developers to write systems (really started with JEE5). Nevertheless, it'll be another three to four years or so before it becomes the standard deployment platform. Currently, only Glassfish V3 supports the new API's.
Redhat with JBOSS 6 will once again be very late, Oracle should have JEE6 supported added to Weblogic about a year, and IBM will once again take it sweet time (2+ years) to get WebSphere 8 out the door.
Visual Studio isn't "major commercially-available software?" Process Explorer is telling me that "devenv.exe" is a a .NET process.
first, java never held a high percent of development positions. the only thing the article shows is that MSFT successfully converted their existing developers to C#.
second, a WORA language / SDK will never beat one that is written to run on a single platform. .NET is WORA in theory, Java is WORA in practice. there are necessarily some trade offs to be made if you are going to try to be WORA.
third, i agree with other people that Java really slacked in past in terms of providing a polished look and feel, but that has changed. take a look at the new releases of the netbeans IDE for an example.
and, for those that say it's not truly WORA, please point to an alternative that even comes close. yes there are sometimes differences to be worked out, but it's light years ahead of doing a traditional port.
Look, both languages will be around for a long time.
Java == geared for maintainable/long term functionality (code that can be refactored)
C# == geared for short lived, variable customer-changing functionality (code that can be reengineered).
nuff said.
"For a very long time, and still persisting into the present, Java apps often looked downright awful on many systems."
javax.swing.UIManager.setLookAndFeel(UIManager.getSystemLookAndFeelClassName());
Users will not know it is a swing app...
It does not scale well.
And it is insecure (ask your Windows representative what stuff from Active Directory goes into the registry for example).
IANAL but write like a drunk one.
If Microsoft really cared about devs, then the next version of IIS would allow Classic ASP and ASP.NET to share session state.
Nothing like releasing ASP.NET and obsoleting millions of lines of code.
Unlike VB6 to VB.NET there is no migration path from Classic ASP to ASP.NET other than a complete rewrite.
Mono only runs on PC hardware. If you're running Solaris, AIX, HPUX, you're out of luck. A lot of shops could migrate to Mono more easily if it were multiplatform, but it's not.
and you specialize in what ? pulling statistics out of your ass ?
99% ? not 87.5% or 79.1% ? give me a break.
Read radical news here
Dotnet provides a consistant abstraction interface for writing software that happens to run on their OPERATING SYSTEM. What would be the point of an operating system if nobody is/can write software for it?
People wrote software for Windows before .NET existed... That's what APIs are for.
What this whole virtual machine thing gets them is the ability to migrate to other processor architectures without a huge disruption. Right now the large codebase of native-compiled applications ties them to the IA-32 and AMD-64 platforms. They could move Windows to other platforms (and, of course, they have) but without binary compatibility, many of the advantages of Windows are simply lost. Building a VM into their operating system gives them flexibility in the future, and gives them a better bargaining position in terms of determining future architectural decisions for the PC platform.
I don't think users benefit from .NET nearly as much as Microsoft benefits from people coming to rely upon it.
Bow-ties are cool.
How is that ironic?
I don't know, I just remember it was in that Alanis Morissette song... "It's like that guy who design Delphi, who also designed C sharp..."
Bow-ties are cool.
Neither Visual Studio 2003 nor Visual Studio 2008 are written on .NET.
Portable versions of Firefox, GIMP, LibreOffice, etc
Microsoft distributed .NET updates over Windows Update when you already have it installed, but doesn't automatically install it, so most users don't have it since most users only do automatic (aka critical) updates. If you have manually installed .NET 2.0, it won't auto-install .NET 3.0 either... just security updates for .NET 2.0.
I have a breakdown of what .NET versions are pre-installed and available for download for each version of Windows here:
http://johnhaller.com/jh/useful_stuff/dotnet_portable_apps/
Portable versions of Firefox, GIMP, LibreOffice, etc
If JavaFX is that good, how come it is not popular?
The notion of "progress" should involve, err, some kind of enhancement.
IIS 7.0 ASP.Net C# (footprint=1GB) being 5 TIMES slower than plain TrustLeap G-WAN ANSI C89 scripts (footprint=100KB), the question is simple: where is the progress?
The article says that demand for c# is around 32%, but it should also add in the demand for vb.net, which is less but should be added to the total, as it is in use. In my view, the language features, excellent development environment and comprehensive libraries make .NET a win for most LOB applications - which is the vast majority of all PC applications in use at the moment.
College-Pages.com - Online Colleges, Degrees, and Programs
Uh... that's not what .NET is for. .NET has a Common Language Specification (CLS) that is published by the ECMA, so technically anyone can use this to write a compiler. And they have - search google for the Mono project.
But I also think you are confusing something when you say why can't they port Windows to another architecture. .NET, let's make this clear, relies with the operating system, but the operating system does not rely on .NET. There are other reasons why they haven't migrated across to other architectures, but they could always still do this by swapping out their HAL to the new architecture. And, in fact, they did this for Windows NT back in the day for the DEC Alpha, and in the initial prereleases of Windows 2000.
XML is like violence. If it doesn't solve the problem, use more.
"1. It is not a compact format
2. It has to be read into memory often the file itself isnt searchable or indexed.
3. No support for Unicode host names (its an ANSI text file, not UTF8)
4. There is no way to control access for readers and writers its a text file not a database
5. If I was a malware writer this is the first place Id look to change things. Oliver day mentions this in his article. So does Wikipedia. - http://foredecker.wordpress.com/2009/12/07/dear-anonymous-slashdot-guy/
Per your points on HOSTS files, my disprovals of your points are below, 1 by 1, via an emumerated reply:
====
"1. It is not a compact format" - by Foredecker http://foredecker.wordpress.com/2009/12/07/dear-anonymous-slashdot-guy/
APK REPLY/REBUTTAL: It isn't when you folks removed what makes it smaller & F A S T E R to read up from disk/file, into memory (0 blocking address, no longer possible in VISTA, Windows Server 2008, & Windows 7 ever since MS Patch Tuesday 12/08/2008, when Microsoft REMOVED 0 as a legit blocking IP address in HOSTS files in those versions of Windows NT based OS).
Funny - because Windows 2000 had it & still does (as do Windows XP & Windows Server 2003 still). However, Windows 2000 didn't have 0 as a LEGITIMATE BLOCKING ADDRESS FOR HOSTS FILES in its original model for sale on CD... 0 was added in a service pack, afterwards (because it is smaller & faster, & a good thing... a good thing I am wondering WHY you have removed from HOSTS in Windows VISTA onwards... when it DID WORK ON VISTA, up to 12/09/2008 MS Patch Tuesday, but not afterwards!)
----
"2. It has to be read into memory often the file itself isnt searchable or indexed" - by Foredecker http://foredecker.wordpress.com/2009/12/07/dear-anonymous-slashdot-guy/
APK REPLY/REBUTTAL: NO, it does not.
The local DNS client can handle it, but ONLY UP TO A CERTAIN SIZE (another problem IS the DNS CLIENT CACHE ITSELF, failing on larger HOSTS files, mind you)... so, you disable the local DNS client service is all.
Then, your local diskcache subsystem caches the file & "repeated reads" are ELIMINATED!
----
"3. No support for Unicode host names (its an ANSI text file, not UTF8)" - by Foredecker http://foredecker.wordpress.com/2009/12/07/dear-anonymous-slashdot-guy/
APK REPLY/REBUTTAL: The HOSTS file doesn't require this. Not on *NIX variants, not on Windows. It is a text file, period & SPECIFICALLY, an ASCII text file (not the types you stated), per RFC 606, 608, & 627 (nor is it a database as you seem to be alluding to above, this is how it was designed not by Microsoft, but by the folks in the *NIX world, period, via the BSD reference design which Microsoft uses for their IP stack).
----
"4. There is no way to control access for readers and writers its a text file not a database" - by Foredecker http://foredecker.wordpress.com/2009/12/07/dear-anonymous-slashdot-guy/
APK REPLY/REBUTTAL: You can READ ONLY (set this attribute on it) protect it. Easy enough (or more radically, apply ACL security to it)
----
"5.) If I was a malware writer this is the first place Id look to change things. Oliver day mentions this in his article" - by Foredecker http://foredecker.wordpres
Adolf Hitler or Albert Hoffman. One gave us LSD and the other a history so terrible that some people refuse to acknowledge it exists.
I've always wondered about this: .NET is around now for 10 years or so and still most products shipped by MS are not built using it. Why is that? It sends off a really strange message in my opinion... like a chef who doesn't eat his own food.
Pretty good is actually pretty bad.
Uh... that's not what .NET is for. .NET has a Common Language Specification (CLS) that is published by the ECMA, so technically anyone can use this to write a compiler. And they have - search google for the Mono project.
WHOA, HOLY SHIT I READ SLASHDOT AND I NEVER HEARD OF MONO BEFORE.
Anyone can write a compiler or a runtime engine - just as anyone could write a C++ compiler, a Pentium emulator, and re-implement WINE. But that's the thing: emulating the architecture (the processor - or, in the case of .NET, the virtual machine) is one thing... Emulating the software platform (the Windows APIs) is entirely another.
The reason they can't readily shuffle the Windows platform to another architecture is because people have a bunch of applications they still want to run which are IA32-native. This hasn't changed with the introduction of .NET, and Microsoft would suffer greatly if they tried to force such a platform change at this point. If most new applications were built upon .NET, it would still take several years before an architecture transition could be made without seriously impacting Microsoft's position. But this is exactly what Microsoft has done: they've introduced .NET and encouraged people to use it. They've reached a point where a large number of people do use it. Windows hasn't yet reached the point at which it could simply pack up and move to another architecture, but it's moving in that direction... Gradually - which makes the transition much less jarring than, for instance, Apple's move from PowerPC to Intel...
And, in fact, they did this for Windows NT back in the day for the DEC Alpha, and in the initial prereleases of Windows 2000.
I did mention this in my own post, actually. But without any level of binary compatibility, the usefulness of those releases was rather limited. Processor architecture was a problem for Windows CE as well - just about everybody who runs a mobile platform these days is looking to virtual machines as a way to keep dependence upon a single processor architecture from biting them a few years down the road...
Bow-ties are cool.
Though I must agree with some previous posters that java has not really progressed much lately feature-wise, but it is most definatly the corporate standard, at least around these parts (europe). I work in the EAI sector which uses both plain java EE and platforms built on java to integrate a number of systems. Our company works with a lot of suites built on java and only one built on .net... which is microsoft's own suite of course. I even see entire microsoft shops opting for java-based technologies instead of .net.
Java still dominates the industry by far and I don't think this is likely to change. And though java may have stagnated a bit feature wise, there are (much like in the .net world) other languages filling in the gaps. Scala and their ilk can offer features that java does not have, and still run side by side on the jvm.
Uh-huh. .NET doesn't rely on the Windows APIs (i.e. Win32). Go do some reading.
Sure, but that has nothing to do with .NET.
XML is like violence. If it doesn't solve the problem, use more.
Uh-huh. .NET doesn't rely on the Windows APIs (i.e. Win32). Go do some reading.
Nevertheless, the .NET platform relies upon certain libraries and interfaces. The difference between emulating the Common Language Runtime and emulating the entire .NET platform is equivalent to the difference between writing a PC emulator and re-implementing Windows.
Sure, but that has nothing to do with .NET.
It does. .NET is how Microsoft is getting themselves out of that situation.
Bow-ties are cool.
Which ones?
XML is like violence. If it doesn't solve the problem, use more.
Which ones?
All of them! I guess you could look here and see which ones Mono still lacks...
Though I would say, since .NET is a bit of a fresh start, the problem of replicating its libraries probably isn't as complicated as replicating all the stuff WINE needed to replicate... (It seems that way. I only say "probably" because I don't know.)
The ECMA standards cover the C# language and the CLR runtime - and, from what I understand, precious little else. The interfaces are known but things like Windows Forms and Silverlight have to be re-implemented for other platforms (i.e. Mono) if people want support for it outside Windows. If you think I'm wrong on this point, please feel free to elaborate. Provide some information if you've got it.
But in any case, I don't see what this has to do with my point - which was that .NET serves as Microsoft's exit strategy from IA-32 dependence. I believe that Microsoft is letting enough of .NET loose to encourage wider adoption, while keeping enough of it to themselves that they can act as gatekeepers for the platform. But even if they really are completely open with the platform: that doesn't change the fact that its existence provides Microsoft with a way to move their developers, and eventually their users, off of IA-32 code. I don't even understand why that would be a contentious idea.
Bow-ties are cool.