Coffeehouse Thread

60 posts

Forum Read Only

This forum has been made read only by the site admins. No new threads or comments can be added.

What is your prediction for .NET framework 4.0?

Back to Forum: Coffeehouse
  • User profile image
    AndyC

    SecretSoftware wrote:
    
    In the flow of the program you know that between point A and point B in the program execution plan that s will assume , say a stirng value, and your code would handle a string value.


    It's fundamentally impossible to determine that at compile time. Even a trivial sample like the one above demonstrates that at a given point you cannot automatically infer the type.

  • User profile image
    littleguru

    SecretSoftware wrote:
    Another thing I want to see is support for multi-language GUIs. So you can support many of the famous languages into your GUI directly.


    Are we talking about the same .NET? I mean we did a lot of localization in .NET 1.0, 1.1 and 2.0 and it works GREAT. You can even change the UI culture of the current thread and everything switches to the other language...

    Some of the other things about .NET you are pointing out is just bogus. I mean if the hacker has the assemblies he can always crack it open and change it in a way to make it work. I mean this is even done with games that are checked by far more advantage security systems.

    Also for the compiler: you don't know what the runtime and the jitter exactly do. So how can you suggest improvements? Once again the compiled MSIL code is not the FINAL code that runs on the machine.

    Multi-core: yes we are now wasting them to do memory encryption. Especially since I don't have anybody reading my memory. Why shouldn't I? Somehow fear is driving people...

    What is so wrong about typing in the Type name? I mean if you don't like it, you can use var in .NET 4.0. I only think that making it completely flexible to have v of type T and then of type X and then of type Z makes the code unreadable. Anyway, how will the compiler decide which one is coming in... Since it could be everything. I mean you could pass this variable also to methods. What's the overhead of typing the type? Intellisense makes it zero.

    Well... I think some of the stuff might be implemented and I think too that Microsoft doesn't only have jerks at the .NET department. They know what they are doing. And the clearly can think too...

  • User profile image
    iStation

    Adding "Sh#" to .NET for the multicore blues

    RAPIDMIND : Home
    http://www.rapidmind.net/

    Wink

  • User profile image
    DouglasH

    well we know 3.5 is going to have improvements in clickonce. or the orcas update.

    linq and the like will be the primary focus on that update.

    Anders has already stated he wants to look at the Paraelle(sp) issue, so Imagine that will be the focus on v.next after 3.5.

    Side by Side is also a big thing in 3.5

    douglas

  • User profile image
    JChung2006

    SecretSoftware wrote:
    
    3.0 is out the door. So its always good to keep future tech trends in mind as you design future projects.

    Here is some advice:  finish the projects that you are currently working on before you starting designing your "future projects."  *rolls eyes*

    I hate beta chasers.  Too busy chasing alpha this or beta that to ship anything themselves.

  • User profile image
    cescotto

    littleguru wrote:
    
    SecretSoftware wrote: 13) I wish that the .NET framework and the Runtime in general would encrypt in memeory strings by default. No one should see whats in memory except the application itself (perhapse symmetric crypto between memory space and application?).


    Damn that gets slow... Next everybody would cry that .NET is so slow... Should be only optional and disabled by default (to avoid the crying)


    When the TPM specifications will be fully supported memory curtaining should be able to solve that problem (and without encryption).

  • User profile image
    Secret​Software

    littleguru wrote:
    
    SecretSoftware wrote:Another thing I want to see is support for multi-language GUIs. So you can support many of the famous languages into your GUI directly.


    Are we talking about the same .NET? I mean we did a lot of localization in .NET 1.0, 1.1 and 2.0 and it works GREAT. You can even change the UI culture of the current thread and everything switches to the other language...

    Some of the other things about .NET you are pointing out is just bogus. I mean if the hacker has the assemblies he can always crack it open and change it in a way to make it work. I mean this is even done with games that are checked by far more advantage security systems.

      To say that they are bogus is to suggest that you dont appreciate the magnitude of the problem. Things are crackable yes, but you can make it harder and costly to crack something. If you say every thing is crackable and just give up, then why invest in security in the firstplace?

    littleguru wrote:
    

    Also for the compiler: you don't know what the runtime and the jitter exactly do. So how can you suggest improvements? Once again the compiled MSIL code is not the FINAL code that runs on the machine.

    How do you know that? And I know that MSIL is not machine code Wink

    littleguru wrote:
    

    Multi-core: yes we are now wasting them to do memory encryption. Especially since I don't have anybody reading my memory. Why shouldn't I? Somehow fear is driving people...

    why do you say wasting them? Multi-Cores are too powerfull, so why not use them to do something useful (not wasting them) (Playing games can be considered wasting them versus computing NASA data for example).

    littleguru wrote:
    

    What is so wrong about typing in the Type name? I mean if you don't like it, you can use var in .NET 4.0. I only think that making it completely flexible to have v of type T and then of type X and then of type Z makes the code unreadable. Anyway, how will the compiler decide which one is coming in... Since it could be everything. I mean you could pass this variable also to methods. What's the overhead of typing the type? Intellisense makes it zero.

    The compiler does not decide, it just convert your human readable code to intermediate langauge, which then is converted later to machine code. I am not suggesting you remove or get rid of the hard-coded types , in which the variable would assume only 1 type throughout its lifetime, I am suggesting to add the capability for types that can hold many types in their life times.

    littleguru wrote:
    

    Well... I think some of the stuff might be implemented and I think too that Microsoft doesn't only have jerks at the .NET department. They know what they are doing. And the clearly can think too...


    Yes, I hope at least the security stuff gets added in.

  • User profile image
    Secret​Software

    JChung2006 wrote:
    
    SecretSoftware wrote:
    3.0 is out the door. So its always good to keep future tech trends in mind as you design future projects.

    Here is some advice:  finish the projects that you are currently working on before you starting designing your "future projects."  *rolls eyes*

    I hate beta chasers.  Too busy chasing alpha this or beta that to ship anything themselves.


    I am not beta chaser. I am just expressing what I would like to see in the future product.

    I use many other languages including .NEt languages. So I am expressing some of the pains that exist with .NET languages that I want to see gone as the product progresses overtime.

  • User profile image
    Tom Servo

    SecretSoftware wrote:
    6) Add support for multi-core processing, in a way that will get rid of the problems with multi-threading in the .Net framework. I mean the race conditions, the locks , and the mutexes problems. Make these problems disappear so we can debug our apps easily and detect more cross thread problems easily.

    You started that discussion already and proved that you don't have a clue in that area.

    SecretSoftware wrote:
    7) Add support for AES-128 bit and improve the Random class to use cryptographically generated random numbers.

    Did you ever take a look at the respective namespace?

    SecretSoftware wrote:
    8) Add Memory space randomization. So that when your application starts its memory space fingerprint looks different than last time. Making it hard for exploit code to work in .NET framework applications (This should be supported by the runtime).

    You don't understand the idea of a JIT and GC, either.

    SecretSoftware wrote:
    9) Make it easier to use IPv6 natively int he .NET framework for connected applications. (Set it and forget it approach).

    It's as easy to use as IPv4.

    SecretSoftware wrote:
    12) Applications should be able to do self diagnostics and also be able to check their integrity on their own. The CLR should refuse to run applications whose compile time hash is different than their pre-runtime hash, or even during runtime hash. Find a way to make the application self-aware of its integrity as part of the services provided by the CLR. the Strongname while good, its still a mess because malicous hackers can sign the assembly themselves and the modify it.

    What the hell?

    SecretSoftware wrote:
    13) I wish that the .NET framework and the Runtime in general would encrypt in memeory strings by default. No one should see whats in memory except the application itself (perhapse symmetric crypto between memory space and application?).

    Oh hell yea. It's not like there's no point in obfuscating all strings and that there might be a performance hit.

    SecretSoftware wrote:
    14) the compiler should be a smart compiler. Basically when you have repetitive code that is similar in manipulation of things, but is different in minor areas, that it groups the similar stuff together into new methods, and arrange for the flow to be correct at the same time. This would result in small size product and efficent code.

    And the point is? Saving a couple of kilobytes of memory just to make the CPU pipeline stall all the time?

  • User profile image
    Secret​Software

    Tom Servo wrote:
    
    SecretSoftware wrote:6) Add support for multi-core processing, in a way that will get rid of the problems with multi-threading in the .Net framework. I mean the race conditions, the locks , and the mutexes problems. Make these problems disappear so we can debug our apps easily and detect more cross thread problems easily.

    You started that discussion already and proved that you don't have a clue in that area.

    SecretSoftware wrote:7) Add support for AES-128 bit and improve the Random class to use cryptographically generated random numbers.

    Did you ever take a look at the respective namespace?

    SecretSoftware wrote:8) Add Memory space randomization. So that when your application starts its memory space fingerprint looks different than last time. Making it hard for exploit code to work in .NET framework applications (This should be supported by the runtime).

    You don't understand the idea of a JIT and GC, either.

    SecretSoftware wrote:9) Make it easier to use IPv6 natively int he .NET framework for connected applications. (Set it and forget it approach).

    It's as easy to use as IPv4.

    SecretSoftware wrote:12) Applications should be able to do self diagnostics and also be able to check their integrity on their own. The CLR should refuse to run applications whose compile time hash is different than their pre-runtime hash, or even during runtime hash. Find a way to make the application self-aware of its integrity as part of the services provided by the CLR. the Strongname while good, its still a mess because malicous hackers can sign the assembly themselves and the modify it.

    What the hell?

    SecretSoftware wrote:13) I wish that the .NET framework and the Runtime in general would encrypt in memeory strings by default. No one should see whats in memory except the application itself (perhapse symmetric crypto between memory space and application?).

    Oh hell yea. It's not like there's no point in obfuscating all strings and that there might be a performance hit.

    SecretSoftware wrote:14) the compiler should be a smart compiler. Basically when you have repetitive code that is similar in manipulation of things, but is different in minor areas, that it groups the similar stuff together into new methods, and arrange for the flow to be correct at the same time. This would result in small size product and efficent code.

    And the point is? Saving a couple of kilobytes of memory just to make the CPU pipeline stall all the time?


    Perhapse you are dismisive in your attitude because you are like those script-kiddies who just copy and paste code without having the slightest idea of how they work underneath the hood.

    So your response is understandable in that view.

  • User profile image
    Secret​Software

    And also, generally, why not suggest what you want to see in 4.0 rather than just critisize the things I like to see happen there? What are your ideas then?

  • User profile image
    Tom Servo

    SecretSoftware wrote:
    Perhapse you are dismisive in your attitude because you are like those script-kiddies who just copy and paste code without having the slightest idea of how they work underneath the hood.

    So your response is understandable in that view.

    You are just requesting functionality that's either already there or doesn't make sense. I rubbed this under your nose, now you're getting defensive. I win.

    SecretSoftware wrote:
    And also, generally, why not suggest what you want to see in 4.0 rather than just critisize the things I like to see happen there? What are your ideas then?

    Give me C# 3.0, add inline regular expressions a la Perl, and I'm set. And .NET hardware APIs were a nice idea.

  • User profile image
    Secret​Software

    Tom Servo wrote:
    
    SecretSoftware wrote:Perhapse you are dismisive in your attitude because you are like those script-kiddies who just copy and paste code without having the slightest idea of how they work underneath the hood.

    So your response is understandable in that view.

    You are just requesting functionality that's either already there or doesn't make sense. I rubbed this under your nose, now you're getting defensive. I win.



    The stuff I am asking for are not there. *_Some_* of the points might have been *_Partially_* addressed and due to product time cycles were not completed or were not included with all the stuff people want. So hence I ask for that.

    But I am not getting defensive about anything. Your dismisive behavior about these things shows that you dont really know what the problem is beneath the surface. Perhapse its because I have seen stuff you might not have come across or seen. But I have and I am asking for the level of security in .NET so as to prevent super smart crackers from producing zombie applications that looks like yours but do different things. Part of that is the ease by which script kiddies are able to decompile .NET assemblies and recompile them after doing few modifications here and there. This is one big thing that is turning people away from .NET.

    So dont be dismisive because some of the stuff you see here are not to your liking or that you see no use for them in your senarios, but others want it, and its something missing in their senarios too. Hence if you have no problems, good for you, but others do, and MS should also try to address all problems that will help us all.


    Tom Servo wrote:
    

    SecretSoftware wrote:And also, generally, why not suggest what you want to see in 4.0 rather than just critisize the things I like to see happen there? What are your ideas then?

    Give me C# 3.0, add inline regular expressions a la Perl, and I'm set. And .NET hardware APIs were a nice idea.


    Good, any one else?

  • User profile image
    PaoloM

    sirhomer wrote:
    .NET 4 should add full Java compatability.

    LOL!

  • User profile image
    littleguru

    SecretSoftware wrote:
    And also, generally, why not suggest what you want to see in 4.0 rather than just critisize the things I like to see happen there? What are your ideas then?


    Secret, the problem is that you just said things that should be added, but are already there... It's highly disliked by people to point out things that are missing without knowing even if they exist.

  • User profile image
    littleguru

    PaoloM wrote:
    
    sirhomer wrote: .NET 4 should add full Java compatability.

    LOL!


    Even the hardcore JAVA guys at university would laugh at this - LOL!

  • User profile image
    Kevin Daly

    It's actually pretty simple: all they have to do is realise what an idiotic a regrettable marketing-led decision it was to brand WinFX as .NET 3.0, and change the versioning of the upcoming 3.5 (which really should have been 3.0) to 4.0.
    And then you have your 4.0.
    No fuss.

    Otherwise the platform will spend the rest of its lifetime burdened with the results of Premature Major Versioning Syndrome (PMVS), an unfortunate and embarrassing condition but one which can be cured if caught in time.

    So act now Microsoft before this madness goes any further.
    Think of the children.

  • User profile image
    JChung2006

    Yeah, I'm just waiting for Microsoft to starting versioning .NET by years rather than numbers, .e.g, .NET 2008.  They're already halfway there with the Visual Studio versioning.

Conversation locked

This conversation has been locked by the site admins. No new comments can be made.