10 ms·
Introducing ASP.NET vNext
- li2 12y agoIf you are serious about your career path as software engineer stay away from windows technologies.
- abrudtkuhl 12y agowhy? seems to be a fine choice for tens of thousands of devs
- li2 12y agoyes, it is fine to be a janitor as well for thousands of thousands of people. Would you like to be one of them?
- Swinx43 12y agoYour troll-craft is weak. For your own sake move to another platform where such blatant attempts at trolling might yield a response.
- UK-AL 12y agoYou really didn't answer his question?
- guiomie 12y agoThis is the third comment I read from you on this page, and you really are useless to this community. Go back to your school books.
- Swinx43 12y agoI would most definitely like to also know why? There are many developers that work using Microsoft technology, everyone organisation does not build their services or products on open source.
- li2 12y agoLook at some job descriptions of some cool companies facebook/google... Do you see a simple word being related with windows technologies?
- UK-AL 12y agoBecause they are built on Linux? Fair few good companies built on .net Stackoverflow for one. I agree they tend to be hidden behind the scenes companies. But those companies can be nice companies to work for(Sane work hours, good benefits, not expected to work overtime etc).
- rbanffy 12y ago> Stackoverflow for one. That's no longer completely true. While the core continues to run on Windows, SQL Server and .NET, pretty much everything around it is Linux-based and without that additions, the system would be unable to maintain its current performance.
- UK-AL 12y agoAs far i'm aware that's the caching software. .NET is performant(And probably faster) than the common open source platforms like python, php, ruby. Any platform would have problems without caching.
- wfjackson 12y agoI remember they had to patch the OpenSSL bug so they are not using IIS for the SSL endpoint.
- Guvante 12y ago[Blizzard Entertainment uses .NET](http://us.blizzard.com/en-us/company/careers/posting.html?id=13000CE http://us.blizzard.com/en-us/company/careers/posting.html?id...) Unless you don't consider Blizzard a cool company. Not to mention Microsoft itself.
- 12y ago
- Goosey 12y agoLuckily .NET is no longer a windows technology.
- tomp 12y agoTechnically, Windows is no longer a windows technology, since Wine exists, but still it's mostly windows. Can you even run Visual Studio on another platform?
- Aaronontheweb 12y agoVisual Studio is still pretty dependent on Win32 / x86 under the hood - a lot of the UI was ported to WPF and more of the tooling, including the compiler, is being ported to C#. So no, I think VS for Mac / Linux is still a ways off. They're moving in that direction though - wouldn't be surprised if they bought Xamarin in order to make it happen.
- rbanffy 12y agoMicrosoft is still the one leading .NET, defining what .NET is and what technologies it includes (and which it doesn't). While Mono is a nice subset that runs on non-Microsoft OSs, .NET is pretty much a Microsoft-centric technology. You don't need to go further than the recent announcements and the excitement they generated among .NET users to see how dependent on Microsoft they are. It's Microsoft's show to run.
- daviding 12y agoWhat is a 'cloud-optimized library'? Does it mean 'small' or have I underestimated it?
- ahmelsayed 12y agoI think he is referring to running different versions with different CLRs side-by-side. It means Platform-as-a-Service friendly. Since in PaaS you usually don't own the machine, you just run code somewhere. You don't want to be tied in with is framework X installed on the machines or not. You want to be able to pull in what ever framework you like, as you would do with node.js for example
- daviding 12y agoThat makes sense - thank you. I sort of remember that the core CLR didn't really rev that much, in that it spent the longest time on 2.x, with only the data access technologies built on top changing what seemed like every other week. LINQ was the next nice additive. I don't recall exactly why now, but I know that the term 'strong naming' can still instill terror in me. I guess that all goes away if you can distribute a statically linked lump per app. The cycle continues..
- thwarted 12y agoI think "cloud-optimized" means "vaporware".
- DougWebb 12y agoFor a long time the CLR came in 'regular' and 'client' versions, where the 'client' version was a subset that didn't include server-type namespaces. There was also a Silverlight variant. These were pretty similar to the various JRE distributions, if you're more familiar with the Java ecosystem. A year or two ago Microsoft decided to get rid of the subsets because they didn't make sense anymore; "client-server" gave way to "distributed mesh" and it became perfectly reasonable for desktop application to expose a web service port in order to communicate with other apps. 'cloud-optimized library' sounds like a return of the subset idea, but going in other direction. It surely doesn't contain any of the WPF stuff that's used for creating desktop applications. It probably lacks other namespaces that are unlikely to be used in server applications too. I just hope they didn't cut too much out so that it's only usable for MVC/WCF/WebAPI servers. If I want to write my own low-level socket-based service, I hope I will be able to do that.
- slg 12y agoAs a .Net developer, I find all of the recent announcements from Microsoft really exciting. I just wonder if these type of things are enough to sway people's opinions regarding the platform. There is just so much baggage in the developer community when you say .Net or Microsoft (edit: as one of the three comments at the time of this posting proves). Are these moves just going to stave a potential exodus of .Net developers or will it actually lead to new developers picking up the language?
- ragesh 12y agoAs someone who recently moved from C# to working with Node, Angular and Python full time, the recent announcements definitely make me want to go back to using .Net again. I love where all of the new stuff is headed.
- UK-AL 12y agoI've worked with various languages C#, Python, Ruby, Objective-C(I was an iOS developer) but I prefer strongly typed languages for larger projects, and the refactoring tools that it allows for. Eventually I would like a completely statically typed inferred language, go mainstream(Aka Demand for it) C# is my best option atm.
- ragesh 12y agoI agree. My recent forays in to javascript have left me wanting to rewrite big chunks of my new app in TypeScript instead. :)
- malaporte 12y agoSeems pretty interesting. And official MS support for running the whole thing on Mono, right now, isn't that pretty big?
- edwinnathaniel 12y agoI'd say from capability perspective it's huge. But capability is half of the story. Tooling/ecosystems is the other half (re: MonoDevelop is still not up to the snuff).
- ragesh 12y agoThat's a fair point, but now you can develop in VS on Windows and target pretty much every platform out there. They've also announced official support for Cordova, and they have the whole Xamarin thing going on. VS already has Python support, and Node.js tools are also being added. This is starting to look like a pretty decent environment to work in.
- edwinnathaniel 12y agoI stopped using Windows for development platform for a while already. While Windows ecosystems are gaining momentum, it's just not there yet. Like you said it's just "decent environment", not better than what I use today.
- malaporte 12y agoYes. If only JetBrains could release an IntelliJ-based IDE for C#, that'd be nice.
- pionar 12y agoIt really wouldn't be that hard, Roslyn's out there for compilation, and doing things like Intellisense.
- edwinnathaniel 12y agoIDE probably one big important piece, but I love to have Maven + its ecosystem for .NET (NuGet is not there, far from it).
- Xdes 12y ago"ASP.NET vNext (and Rosyln) runs on Mono, on both Mac and Linux today. While Mono isn't a project from Microsoft, we'll collaborate with the Mono team, plus Mono will be added to our test matrix. It's our aspiration that it 'just work.'" I wonder whether we will be seeing a .NET web server for mac and linux. Hosting a C# MVC app on linux will be sweet.
- Guvante 12y agoMaybe for Linux, very doubtful for Mac since the number of people running Mac servers is near zero.
- malaporte 12y agoYou seem to be forgetting the folks writing the code running on those servers...
- rbanffy 12y agoI write code on a Mac and script-built VMs seem to be the way to go. Sharing host folders the VM mounts and letting the actual code run on the VM is much closer to the server environment (leading to much fewer surprises). While it may hide a bug that would manifest itself under OSX (or other Unix) it's a useful setup. Having said that, I've also worked a lot with slimmer environments - venv on top of the native OS - with reasonable success.
- yawgmoth 12y agoIt'll also lower licensing costs for a bunch of companies who mix EC2 with their Microsoft tech stack. Exciting!
- DougWebb 12y agoThey're already providing a .NET web server. That's the 'self-hosting' examples Scott shows in the article: when you run the application that way, it becomes a web server for your app. It's just like a Node.js application. For a production deployment on Linux I'd probably run the app using Mono on a localhost port, and run Apache in front of it with a reverse-proxy config pointing to localhost. BTW, if you're not a fan of ASP.Net MVC's style of web framework, take a look at Nancy[1]. It's much more lightweight, and can also run under Mono on Linux. [1] http://nancyfx.org/ http://nancyfx.org/
- chris_wot 12y agoWhen will they be releasing ASP.NET vNext Compact Enterprise MVC Edition?
- Goosey 12y agoThis is extremely exciting. The lack of a 'No-compile developer experience' has been one of the biggest annoyances for me and my team. It actually has lead to influencing our coding patterns: since we can "refresh and see new code" for anything that is in the view templates (Razor *.cshtml in our case) we have become increasingly in favor of putting code there (or in javascript frontend 'thick client' code) to take advantage of not needing to recompile. It's not like recompiling is slow (maybe 5sec in our case), but it still breaks your flow and more importantly requires stopping the debugger if it is in use. In some ways the code has improved, in some ways it hasn't, but in either case it feels like the tail wagging the dog when you are changing how you structure code based on your tool's inadequacies. I'm equally excited for the intentional mono support and "Side by side - deploy the runtime and framework with your application". ASP.NET MVC and Web API are really pleasant and mature frameworks, but configuring IIS has always been really unpleasant and clunky.
- edandersen 12y agoYou are putting increasing amounts of code in your Razor views?
- nickstinemates 12y agoJust wait until they discover PHP :)
- roller 12y agoFrom my experience, the initial compile is fast, it's the app pool recycle and JIT on first page load that leave you in the hallway playing chair mounted sword fights. I'm hoping that with ahead of time compile option at least will give you some actual feedback as to what's happening. That'd at least be better than watching the browser sit there loading a page for while.
- Guillaume86 12y agoPutting code in razor views is a very bad idea, have you tried .NET Demon for continuous compilation? If you write tests you might want to consider NCrunch?
- TheRealDunkirk 12y agoYet another piece of mature web-development puzzle that Microsoft is trying to emulate. That's great, and good luck to them, but my recent efforts with trying to use Entity Framework suggest that this may not be a viable solution for a long time to come. I'm typing this to delay the effort of ripping EF out of my project, and do ADO.NET Linq-to-SQL. (I guess. Maybe it'll just be raw SQL at this point.) Unless someone here can answer this question? It's worth a shot... http://stackoverflow.com/questions/23528335/how-can-i-implement-a-rails-like-has-many-through-in-entity-framework http://stackoverflow.com/questions/23528335/how-can-i-implem... I miss Rails.
- adamdavis 12y agoGood luck with that. For what its worth, in my experience, I've found .NET development to be less painful when not using Entity Framework.
- NicoJuicy 12y agoFor some things, EF can be paintfull, but i'd just use SQL queries instead if it takes to long.
- Swinx43 12y agoI have never been a fan of EF, mainly because my background is more on the database side. That said it has its place but to do everything blanket EF is not always a good idea.
- df07 12y agoTry Dapper for a simple .NET ORM. We created and use it for Stack Overflow. https://code.google.com/p/dapper-dot-net/ https://code.google.com/p/dapper-dot-net/ Here's the original post describing how we made it: http://samsaffron.com/archive/2011/03/30/How+I+learned+to+stop+worrying+and+write+my+own+ORM http://samsaffron.com/archive/2011/03/30/How+I+learned+to+st...
- steverb 12y agoAnother plug for Dapper. I tell people it's an ORM for developers who aren't afraid of SQL. It doesn't hide the database, or force you to pretend it's not there. It excels at taking your rows of data and transmogrifying them to objects.
- troygoode 12y agoFinally switching away from the horrible XML-based CSPROJ files to a more sane JSON format (that hopefully doesn't require you to list every. single. file. individually) is the feature I'd be most excited about if I was still using .NET. I recall CSPROJ files being the primary source of pain for me as I started to transition out of the Microsoft world and into the open source world, as it prevents you from using editors like vim & emacs if you're working in a team environment.
- guiomie 12y agoCan you elaborate on why a json format would be better for a csproj ? I have issues with the .csproj also, but I don't think json would fix anything, my issue is usually with visual studio and the confguration manager not applying changes...
- malkia 12y agoFor me - it'll be reading it. I have to deal quite often with "Unload Project file" in MSVC IDE, edit by hand, "Load again" - because no matter how good the IDE is (and Visual Studio is a good IDE overall) there are lots of edge cases where it fails (merging multiple settings per project / per configuration / etc.)
- ghuntley 12y agore: readability project.json (.csproj/packages.config/nuspec file replacement) has been unveiled: https://github.com/aspnet/DependencyInjection/blob/dev/src/Microsoft.Framework.DependencyInjection/project.json https://github.com/aspnet/DependencyInjection/blob/dev/src/M... re: load/unload process VSCommands Pro Extension adds the ability to right click on a project to automate the unload, edit, reload cycle and offers editing inline. http://visualstudiogallery.msdn.microsoft.com/c6d1c265-7007-405c-a68b-5606af238ece http://visualstudiogallery.msdn.microsoft.com/c6d1c265-7007-...
- troygoode 12y agoI personally find the human readability of JSON to be superior to XML in this kind of configuration scenario, but I think what I really meant to say was that switching to JSON hopefully provides them the opportunity to redesign the file format from the ground up to be more sane. My specific hopes: 1) That the new format will be more convention-over-configuration based and not have to be 100+ lines for a default project. 2) As I've mentioned in the parent post, I hope that you don't have to list individual files in the equivalent of <ItemGroup> blocks - you should instead only need to add an exceptions to whatever convention is being applied.
- bananas 12y agoI've been through EVERY ASP.net update on every version of .net and every MVC update from CTP2 onwards, dealt with WWF being canned and rewritten, moved APIs between old SOAP stuff (asmx), WCF and WebAPI and rewritten swathes of ASP VBnand C++ COM code, ported EF stuff to later versions and worked around piles of framework bugs including the MS11-100 fiasco. That and been left royally in the shit with silverlight. Not one of the above has actually improved the product we produce and are all reactionary "we might get left in the shit again" changes. I'm really tired of it now.
- troygoode 12y agoWhy are you still using it?
- bananas 12y agoAs for the company, we've got over one million lines of c#. As new subsystems appear they are being moved to other technologies (Angular + Java + Jersey + maven + guice + Jetty + Redis + postgresql). This takes time. The amount of code is tiny compared to the old implementations and the time to market and reliability is awesome. As for me, because I'm in charge of the migration. When its gone I'm not even going to go to the funeral.
- troygoode 12y agoFair enough. :-)
- _random_ 12y agoUsing Java after C#? I am so sorry for you :(. You could've at least chosen Scala.
- bananas 12y agoWhy? We write less code in Java than we did in C#. To be fair NetBeans writes most of it. I still write C and don't hang myself because it doesn't have generics!
- slipstream- 12y agoDoes anyone else spot the irony of an MS guy using Chrome?
- pistle 12y agoYou should see all the non-MS things that shanselman uses and is aware of. But shhhhhhh, Microsoft would have his hide if they found out. If you think there is irony, you haven't been paying attention. It's the point of what's been happening. This ain't your older sister's Microsoft.
- pionar 12y agoIt's actually very common for MS devs to use Chrome. I was at a talk given by Mads Kristensen recently (PM for ASP.NET Tooling), and he used Chrome.
- lavamantis 12y agoGood catch, but not terribly surprising. Developers don't use IE except when they have to test for non-standard behavior. IE hopefully will soon go the way of the dodo - I no longer see any reason for it to exist.
- ToastyMallows 12y agoI guess you weren't aware that Hanselman also owns an iPhone :P I'll also echo what everyone else said. I feel the only reason IE is staying around is so I have something to download Chrome with on a fresh installation.
- adrianlmm 12y agoI'd really like that the next ASP MVC comes with full Owin support.
- PallarelCoedr 12y agoIt does, but internal abstractions have been rewritten. Webforms view engine won't be ported I reckon.
- adrianlmm 12y agoIn MVC5 the security layer works on OWIN, I'd like to see the rest of the stack like routing also decoupled from modules and handlers, fingers crossed for MVC6.
- kr4 12y ago> ... your choice of operating system, > we'll collaborate with the Mono team, plus Mono will be added to our test matrix. It's our aspiration that it "just work This. is. superb! I love developing on VS with ASP.NET, and I love *nix tooling (ssh is pure fun), I was secretly hoping for this to happen.
- cuong 12y agoHow realistic is it to use a self-hosted OWIN server running ASP.NET vNext on Mono? What can we expect in terms of performance? I was always under the impression it was pretty far away from being a viable option, Microsoft help or not.
- giulianob 12y agoI started a thread on the Mono mailing list a couple months ago about web hosting performance on Mono ( http://mono.1490590.n4.nabble.com/FastCGI-Performance-td4662454.html http://mono.1490590.n4.nabble.com/FastCGI-Performance-td4662... ). It turns out the default implementation for FastCGI is really slow. Some members of the community have created a few different implementations. The fastest one currently is a thin wrapper over evhttp which can handle over 100k requests per second on a simple benchmark. There are other discussions as well about how to improve performance.
- konstruktor 12y agoI can hardly imagine a more effective developer advocate than Scott Hanselman. He seems to be doing more good for Microsoft's reputation among developers than anybody else. Of course he out-HNed the official msdn article. For those not familiar with his name, here is some of his other stuff: http://www.hanselman.com/blog/MakingABetterSomewhatPrettierButDefinitelyMoreFunctionalWindowsCommandLine.aspx http://www.hanselman.com/blog/MakingABetterSomewhatPrettierB... http://www.hanselman.com/blog/ScottHanselmans2014UltimateDeveloperAndPowerUsersToolListForWindows.aspx http://www.hanselman.com/blog/ScottHanselmans2014UltimateDev...
- mountaineer 12y agoTomorrow is my last day as a professional .NET developer, nothing here to make me think twice about saying goodbye.
- deleted 12y ago[deleted]
- robertlf 12y agoSo glad I'm no longer a .NET developer. Every year it's a new razor blade.