Forgot your password?
typodupeerror
Microsoft

First Look At Visual Studio 2010 Beta 1 236

Posted by ScuttleMonkey
from the you-mean-there-are-people-who-don't-use-vi? dept.
snydeq writes "InfoWorld's Martin Heller takes VS2010 Beta 1 for a test drive and finds the upgrade promising, particularly with regard to improved thread debugging and a revamped UI. But the biggest enhancements have to do with parallel programming, Heller writes. 'I'm not sure that I've completely grasped the power of the new .Net Framework and native C++ support for task and data parallelism in VS2010, but what I've seen so far is impressive.' Heller points to intriguing parallel programming samples posted to CodePlex and offers numerous screenshots of VS2010 Beta 1 functionality. He also notes that the beta still lacks support for ASP.Net MVC, smart devices, and the .Net Micro Framework."
This discussion has been archived. No new comments can be posted.

First Look At Visual Studio 2010 Beta 1

Comments Filter:
  • by tylersoze (789256) on Friday June 05, 2009 @05:28PM (#28227761)

    Heck no one I've worked with has even upgraded to 2008 yet, it's been either VS 2005 or 2003.

  • Re:More security? (Score:5, Informative)

    by Mr2001 (90979) on Friday June 05, 2009 @05:32PM (#28227801) Homepage Journal

    Look at that fourth screenshot. What possible harm could loading a project do, I wonder? Does it already (partially?) execute even when it is just sitting there in the development environment? Is this an attempt to banish evil compilers from accidentally compiling source?

    As it says right there in the screenshot, the possible harm is from custom build steps.

    Unix developers are already used to this, because makefiles have the same risks: if you untar an untrusted project and type "make", you might find that one of the build steps erases your home directory.

  • by sys.stdout.write (1551563) on Friday June 05, 2009 @05:35PM (#28227839)
    We run it at work. It is pretty much the same as VS 2005. The only relevant advantage that I see is access to the .NET 3.5 Framework, which may or may not matter to you depending on what you guys program.
  • Re:More security? (Score:5, Informative)

    by wzinc (612701) on Friday June 05, 2009 @05:37PM (#28227853)

    Does it already (partially?) execute even when it is just sitting there in the development environment

    Actually, it kind-of does execute. Most controls, even user-created ones, have "design mode." That's a special view that gets rendered while you're designing pages or forms. I never thought about it, but it is just code that executes. I don't know if there's anything that prevents you from opening up an FTP connection or calling "del /f /s /q C:\*" from a control in design mode.

  • Re:Themes (Score:5, Informative)

    by WarwickRyan (780794) on Friday June 05, 2009 @05:44PM (#28227911)

    Yes, it is slower. However, being able to put form designer on one monitor and code-view on another makes it all worth while.

  • by shutdown -p now (807394) on Friday June 05, 2009 @05:49PM (#28227953) Journal

    We run it at work. It is pretty much the same as VS 2005.

    If you use it for C++ development, then the C++ compiler in 2008 has better standard compliance, and some nasty bugs [microsoft.com] in the libraries are fixed. Also, VS2008 SP1 adds C++ TR1 stuff.

  • Regarding C++ (Score:5, Informative)

    by xquark (649804) on Friday June 05, 2009 @05:52PM (#28227979) Homepage

    Compatibility and conformance with standards (TR1), also going that extra step forward and implementing some of the upcoming 0x features I can truly say that since VS05 MS has gone a long way. WRT Language/IDE/Debug integration nothing comes close in the OSS world for the C++ language (and please don't say CDT, I've tried using 5 and it can't even do the simple C++ syntax properly let alone templates or even simple metaprograms).

    Disappointing/sad thing with VS10 is that a lot of the interesting source code metric/analysis stuff is only available for C++\CLI. For pure C++ code metrics I've been pinning my hopes for the past 5 years on someone getting around to implementing to-do #6 of doxygen.

  • by shutdown -p now (807394) on Friday June 05, 2009 @06:07PM (#28228109) Journal

    Visual C++ hasn't changed much since VS 2002.

    Eh? It's got C++/CLI since then, for starters. It has become much closer to ISO C++ (before 2003 it was a total joke, it didn't even get the scope of the for loop right - and 2003 was only so-so). It's got checked STL containers & iterators in 2005, and C++TR1 in 2008. And it is getting significantly improved code completion [msdn.com], and on-the-fly error checking [msdn.com] in 2010. Doesn't sound "abandoned" to me.

    On the language front, Visual C++ in 2010 gets a bunch of C++0x features: lambdas, type inference (auto), static_assert [msdn.com], rvalue references (&&) [msdn.com], and decltype [msdn.com]. This is quite a lot, and lambdas are especially nice since they actually let you use STL algorithms as God intended without writing tons of boilerplate code for function objects.

    Then also there's Parallel Patterns Library [microsoft.com], which provides STL-like algorithms with automatic parallelization.

    And no refactoring

    This one is interesting. I do not know of any C++ IDE or plugin that would provide working C++ refactoring, for very simple reason - it is extremely hard to properly parse C++, taking into account all templates and template specializations, and other context-dependent things. Heck, something like a<b>c can be parsed either as expression (a < b) > c, or as a variable declaration a<b> c, depending on the context - and that context, again, includes template instantiations, which form a Turing-complete language that has to be interpreted correctly to produce matching results. I once wrote a C++ program, for fun, which had in it a piece of code as described above, which was parsed and compiled either as expression or as variable declaration depending on whether char type was signed or unsigned was for a given compiler - so you could play with compiler options and get different results. How can IDE possibly handle this?

    You can say that it does it for code completion, but the truth is that a lot of it is guessing and heuristics. And there's the catch - when it guesses wrong, at worst, you get a wrong code completion list, or no list at all. But when you do a refactoring like, say, "rename class", and it fails to correctly determine that the class is referenced at some line of code, and doesn't rename it there, then your program no longer compiles...

    That said, VS2010 IDE C++ parser (used for code completion and "Go to definition") is EDG-based, so it should be much more accurate - so hopefully we'll get reliable C++ refactoring eventually. Just not in this release.

    ... decent GUI toolkit. Both MFC and Win32 API are incredibly difficult to code.

    I agree with that, but there are many good third-party libraries out there - most notably, Qt.

  • by Photo_Nut (676334) on Friday June 05, 2009 @06:10PM (#28228131)

    I heavily use both Visual Studio 2005 and 2008, so I was excited to use 2010. The thing I found most obnoxious about it was the the text in the code editor was blurry at normal font settings (Consolas 10pt). Let me restate that. The text in the primary window of the software that you will be staring at for hours daily... is blurry. How on earth did that get past QA?

    Section 2.4.2.2 of the Readme [microsoft.com] describes why the code can appear blurry:

    2.4.2.2 Text may appear slightly blurry
    Text may appear slightly blurry. This can occur with any font, although different users may see different fonts as more or less blurred. MSGothic, the default font for Japanese system locales, is known to be more blurred than other fonts.

    To resolve this issue:

    We recommend that you keep the default fonts for Visual Studio, for example, Consolas for English SKUs of Visual Studio 2010. There is no alternative that is consistently sharper than MSGothic for Japanese characters, although some users find Meiryo more readable.

    TrueType fonts are the least blurred of the non-default fonts. These fonts appear in bold in the font list on the Fonts and Colors page of the Options dialog box (Tools menu, Options, Environment, Fonts and Colors). The WPF and Visual Studio teams are working to improve font rendering in the text editor before the release of Visual Studio 2010.

    You can also take a look at this white paper [windowsclient.net] for more information on the issue.
    The ClearType Tuner PowerToy [microsoft.com] can also help. If you are running Windows 7, it's built into the control panel.

  • by Anonymous Coward on Friday June 05, 2009 @06:10PM (#28228133)

    I have upgraded to VS 2008 (It required much teeth pulling and a 'conference' with 'The Architect' out back with a baseball bat). The best things available out of the box with VS 2008 are these: Target multiple versions of .NET Framework (2008 can work with .NET 2.0, 3.0 and 3.5, no more direct correlation between .NET and VS versions), WCF and LINQ. The interface seems to be a bit more stable too, but I digress...

  • Re:More security? (Score:5, Informative)

    by shutdown -p now (807394) on Friday June 05, 2009 @06:18PM (#28228209) Journal

    As it says right there in the screenshot, the possible harm is from custom build steps.

    To clarify (since it may not be obvious to those who haven't used VS, and, in fact, even to many who did) - Visual Studio projects are nothing more but MSBuild [microsoft.com] makefiles, which has roughly the same expressive power and extensibility as, say, Apache Ant. In particular, the build steps can include file system operations, and execution of arbitrary shell commands. By default, VS-created projects have nothing like this, and so the verifier lets them load without asking. But if the file was hand-edited to include any such things, you'll see the dialog such as one on the screenshot.

  • by Anonymous Coward on Friday June 05, 2009 @06:32PM (#28228329)

    Sadly the real problem is that it uses Windows Presentation Foundation, which renders text in an idealized grid rather than snapping glyphs to a pixel grid. In other words it renders the font exactly as it is supposed to look, and then blends this into the pixel grid, which makes it appear blurry. GDI, on the other hand, will deform the glyphs to fit them into the pixel grid thus offering better readability at the expense of accuracy.

    WPF can't render aliased text either, which some people prefer, and also has a silly text animation system that will wait a second before doing the blending meaning (to prevent scrolling artifacts) so that if you scroll fast you'll initially get really blurry text that gradually turns somewhat clearer.

    These are well-known problems with WPF, and has always been pushed as "by design" even though it results in horrible text. Microsoft seems to have changed their tune lately and will apparently be adressing the problem in .NET 4. I suspect the reason is because VS 2010 now uses it and the poor text quality was just not acceptable for an application like that.

    Messing with the ClearType settings in Windows doesn't really help much, as WPF's renderer is completely separate.

    WPF is just a big mess really, and far too complex. I'm all for a new GUI toolkit (even though it's .NET-based), but WPF just isn't it.

  • Top 3 features (Score:5, Informative)

    by alphabetsoup (953829) on Friday June 05, 2009 @06:39PM (#28228401)

    Quite a bit actually. Personally for me, the top 3 features are:

    • F# [wikipedia.org] - Finally a functional programming language with a real chance of becoming mainstream. I personally would have liked Haskell though :(
    • Parallel Patterns Library [microsoft.com] - An STL like library for doing parallel computation. For example, instead of the STL for_each you can use the PPL parallel_for_each. Combine this with lambda functions for best results.
    • C++0x goodies - These includes lambdas, auto, [msdn.com] rvalue references, [msdn.com] etc.

    Apart from the above it includes a completely new intellisense [msdn.com] for C++, using the EDG frontend. All this in addition to the usual .Net stuff.

  • by shutdown -p now (807394) on Friday June 05, 2009 @06:39PM (#28228405) Journal

    The ClearType Tuner PowerToy [microsoft.com] can also help.

    It will not, since it only tunes Windows's built-in ClearType renderer. Visual Studio uses WPF, which has its own renderer. There isn't really anything you can do to make it better.

    That said, the blurriness is recognized as a problem [microsoft.com], and will be fixed for 2010:

    We are replacing WPF's text rendering stack in WPF 4.0, and this should allow you to render text with comparable sharpness to what you're used to with GDI. The reason the existing text stack in WPF looks blurrier than GDI's is that GDI text is typically rendered with Compatible Width Layout, whereas WPF's existing text stack always uses Ideal Width Layout. Compatible Width Layout snaps glyphs to pixel boundaries, Ideal Width does not, which is why WPF's text looks blurrier than GDI's. WPF's existing text stack also does not support use of the embedded bitmaps that are included in many fonts and are intended to be used when rendering at smaller sizes.

    The new text stack in WPF 4.0 will allow Compatible Width Layout, and it will also support embedded font bitmaps. We believe this will solve all of our text blurriness issues.

    Thanks!
    -The WPF Graphics Team

    It just didn't get into beta 1 yet.

  • Re:Yay! (Score:3, Informative)

    by Xest (935314) on Friday June 05, 2009 @06:40PM (#28228407)

    Apparently you need to go and read a book on namespaces.

    You can use namespaces that horribly badly in other languages too including Java and C++ if you really want to, but any professional programmer should be at a level where they're not that bad at it.

  • Re:Whatever. (Score:5, Informative)

    by genghisjahn (1344927) on Friday June 05, 2009 @07:03PM (#28228611) Homepage
    Allow me to introduce you too... http://www.microsoft.com/Express/ [microsoft.com] There will be VS2010 versions. It's not the high-end dev environment, but it does quite a bit.
  • Re:Top 3 features (Score:4, Informative)

    by shutdown -p now (807394) on Friday June 05, 2009 @07:10PM (#28228661) Journal

    I personally would have liked Haskell though :(

    I'm sure it's possible to get Haskell running on .NET (in fact, rumor it is that it's what they were trying to do before switching to F#). The problem is that if you implement it using the existing CLR, you'll have to build your own framework for Haskell genericity and typeclasses, since CLR is not powerful enough on its own - and then your Haskell code will only be usable from other Haskell code. On the other hand, F# has the advantage that all its constructs are reasonably accessible from other .NET languages.

    That said, typeclasses on CLR level sure would be cool. And I recall Don Syme said something about them being a possible addition to F# 2.0, so who knows...

  • Re:Whatever. (Score:4, Informative)

    by wjsteele (255130) on Friday June 05, 2009 @07:59PM (#28228999)

    And just to reiterate... it's been free (as in beer) for years!!!

    Bill

  • Re:Whatever. (Score:2, Informative)

    by Anonymous Coward on Friday June 05, 2009 @08:18PM (#28229091)

    Actually Visual Studio is one of top developer platforms and is used for just about anything you can imagine on a regular basis.

  • by pebs (654334) on Friday June 05, 2009 @11:19PM (#28229855) Homepage

    I have all three installed - 2008, 2005, and 2003, though I mainly use 2008 these days (just have the other ones around just in case). I don't get what people like about Visual Studio. I personally like Eclipse much much better, and like using Emacs even better than that. Maybe I'm just scarred from having to use Visual Studio's awful Winforms designer. But they could do so much more for C# editing. Intellisense is good and all, but they should look at Eclipse's quick fixes and try pressing CTRL-1 and CTRL-. (Cmd instead of CTRL if you're on a Mac) and all the little shortcuts that allow you breeze through writing Java code in Eclipse. That said, the code editor is fairly good in 2008, just not as good as the competition as far as editing for a verbose language is concerned, and there's very little in VS that really impresses me.

  • by Anonymous Coward on Saturday June 06, 2009 @01:44AM (#28230441)

    If you have use Visual Studio 6, you have no rights to comments on Visual Studio.
    VS6 dates back to 1997, we're in motherfucking 2009.

    VS6 is 11 years old predates the C++ standard. Time to shut the fuck about it and stop comparing it to gcc versions that came out a year ago/

    We have a very large C++ application that is compiled with Visual Studio 2005 and gcc on the Linux, and there are no problems.

    The idea that Intel C++ is more a more compliant compiler is a myth. We have used it for some of our DLLs and considered using it for more, since it's also on Linux. It's a basic compiler, full of problems with the language, it's very focuses on being code-compatible with Microsoft C++ and doing more theorical optimizations.

  • Re:Yay! (Score:3, Informative)

    by bobintetley (643462) on Saturday June 06, 2009 @04:24AM (#28231023)

    On the other hand, Visual C++ still has the most reliable C++ code completion of all IDEs that I've seen, and it's got even better in VS2010.

    I don't know what you're doing with it then, but as someone paid to write C++ all day every day with VS2008, I can hand on heart say that the C++ code completion in VS2008 is fucking awful. It kills my dual core CPU updating the intellisense database frequently (ok, I'm working on a large project made up of about 140 modules), then fails to find globals and class members quite often in the same file.

    Most times it's only about as useful as grep, but even then manages to be worse since it gives no priority to context - if I have two global variables in two different modules with the same name and ask for the definition in one module, it will quite often open a source file in the other module.

    When testing alternatives, I found eclipse-cpp and netbeans-cpp to be far superior at C++ code completion. Unfortunately, I work for an American corporate who "standardise" on Microsoft products :-(

  • Re:Yay! (Score:3, Informative)

    by Matje (183300) on Saturday June 06, 2009 @04:43AM (#28231119)

    try Resharper. It'll fix that code completion for you, and do tons of more useful stuff.

  • by shutdown -p now (807394) on Saturday June 06, 2009 @03:41PM (#28235629) Journal

    Knowing that F# came out of Microsoft Research and that some other .NET code has been released as free software by Microsoft in the past, I was hoping that the F# compiler would be free software too. Sadly this is not the case - at least as far as the licence in fsharp.zip here is concerned; it's distributable for non-commercial use only. So while F# looks very interesting, for now it's something of a Microsoft lock-in, and I won't be adopting it because it removes the possibility of porting to Mono.

    Don Syme said [gmane.org], and more recently confirmed [hubfs.net], that F# will be released under MS-PL [opensource.org] (effectively a BSDL with patent clause) for the VS2010 release - it's only "shared source" currently because it is still in beta.

"Go to Heaven for the climate, Hell for the company." -- Mark Twain

Working...