Entries:
Comments:
Posts:

Loading User Information from Channel 9

Something went wrong getting user information from Channel 9

Latest Achievement:

Loading User Information from MSDN

Something went wrong getting user information from MSDN

Visual Studio Achievements

Latest Achievement:

Loading Visual Studio Achievements

Something went wrong getting the Visual Studio Achievements

Discussions

androidi androidi
  • Windows 10 stinks!

    Part of what you say could be forced by similar situation as with Longhorn/Vista & various stuff - with the store using tech not available on win7, the best course (resource-wise) is to try to get everyone to update to 10. The problem here is that even if the update is free from 7, there's so much changes and the net experience isn't clearly positive - it just makes more sense to wait as long as possible hoping that a future version gets things together.

    I could see third party bringing as much of the 7 UI experience to 10 as possible and that might be good enough for those on the fence. I just don't like the idea of replacing even more of the shell and control panel with 3rd party stuff as that stuff is the most prone for compat issues and serviceability/security patching is potential issue as well. And business users probably don't like the implementation either while the idea* might seem sound. (*of turning 10 taskbar,start menu, control panel into not much different than 7)

  • New convenience shortcuts & key ideas for C#

    Ok finally I came up with a bunch of snippets that reduce the method body creation to couple keypresses.

    s<tab><tab> gives a list of pub/priv&w/wo static snippets returning string

    sl<tab><tab> gives a list of pub/priv&w/wo static snippets returning List<string>

    d<tab><tab> gives a list of pub/priv&w/wo static snippets returning double

    dl<tab><tab> gives a list of pub/priv&w/wo static snippets returning List<double>

     

    So just sl<tab><tab> now gives:

            private List<string> Method()
            {
                List<string> r = new List<string>();
                | // caret here            
                return r;
      }

     

  • New convenience shortcuts & key ideas for C#

    Ok I pretty much got what I wanted after "learning" the snippet stuff (copy paste from foreach snippet). There's a bit of manual editing and this only works from inside existing method with } being the next line. (to avoid the need to go outside of the current method to create a new method.

    for the "mps" snippet just change "mus" to "mps" and public to private.

     

    <?xml version="1.0" encoding="utf-8"?>
    <CodeSnippets xmlns="http://schemas.microsoft.com/VisualStudio/2005/CodeSnippet">
      <CodeSnippet Format="1.0.0">
        <Header>
          <SnippetTypes>
            <SnippetType>Expansion</SnippetType>
          </SnippetTypes>
          <Title>mus - Create public static method</Title>
          <Author></Author>
          <Description>
          </Description>
          <HelpUrl>
          </HelpUrl>
          <Shortcut>
          mus
          </Shortcut>
        </Header>
        <Snippet>
          <Declarations>
            <Literal Editable="true">
              <ID>name</ID>
              <ToolTip>Method name</ToolTip>
              <Default>Method</Default>
              <Function>
              </Function>
            </Literal>
            <Literal Editable="true">
              <ID>type</ID>
              <ToolTip>Return type</ToolTip>
              <Default>double</Default>
              <Function>
              </Function>
            </Literal>
            <Literal Editable="true">
              <ID>ctor</ID>
              <ToolTip>Constructor</ToolTip>
              <Default>0d</Default>
              <Function>
              </Function>
            </Literal>
          </Declarations>
          <Code Language="csharp" Delimiter="$"><![CDATA[
            }
            
            public static $type$ $name$()
            {
                $type$ r = $ctor$;
                $selected$ $end$
                return r;]]></Code>
        </Snippet>
      </CodeSnippet>
    </CodeSnippets>

  • Reddit programming language popularity contest

    Nice for the historical stats. I gathered these for last 6 month % gain:

    2014-09-20 2015-03-20
    +262% unrealengine 2859 7482
    +62% rust 5683 9214
    +44% swift 6390 9214
    +31% unity3d 17557 23018
    +30% golang 10658 13853
    +25% csharp 14982 19242
    +21% java 33441 40123
    +18% python 80204 94529
    +17% cpp 22916 27071

    If rust was bit more mature I'd desire a nice IDE & debugger support to play around with it - it does have some things that one would have desired in some sort  "C##" though I'm not sure how easy it's to build something that's always running and have the code editable without stopping. For c# I think VS should have some sort of console app template project that after you press F5 when you can start building the app while it's running... And there's no requirement for it to have anything to do with web services. It could be a engine of some sort or user mode driver.

     

  • Sign in link not working

    I'm noticing this now too. Randomly changing between "Sign out" and not signed in status. Just clicking a forum thread link or pressing F5 changes it.

  • New convenience shortcuts & key ideas for C#

    I bolded the shortest way in default VS2013 install I found (are there even ways with less keystrokes?) and the proposed new compiler powered "smart snippet".

    I'll still investigate what can be done with VS2013 snippets to get close to the smart snippet, perhaps that will bring something satisfactory.

  • New convenience shortcuts & key ideas for C#

    Snippet approach:

    Lets say this is the desired result:

    public static RType NewMethod()
    {
         RType result= {IDE queries compiler how to minimally construct the RType or uses MinValue, or zero/default(RType) etc. with fallback to null if RType was abstract }
         return result;
    }

    Where cw<tab><tab>"RType" would give Console.WriteLine(|); // | is caret.

    mus<tab><tab>RType<enter> would produce this:

    public static RType NewMethod()
    {
         RType result= new RType(); // or whatever needed to make this compile depending on what RType is;
         |  // with snippets you could control that the caret ends here after done editing the templated values
         return result;
    }

     

    mps<tab><tab>RType<enter> would produce this:

    private static RType NewMethod()  ... (rest same as earlier)

     

    (mus and mps were chosen because they have least other stuff colliding in intellisense, so just typing mu or mp is enough if you want non-static version immediately)

  • Fanless 13-14 inch ultrabook with 10GbE or pcie?

    Intel can build the 10 Gb stuff into or near the CPU so it would land under the same cooler as CPU. Further, similar throttling can be applied as with CPU.

    If PCIe could be optionally passed through USB 3.1 after approval from OS, that would also allow creation of 10 GbE externally cooling dongles without the USB overheads and avoiding the DMA attack exposure.

  • New convenience shortcuts & key ideas for C#

    Idea: Create a value returning static method with least amount of keystrokes and also have a way to change accessibility in least amount of keystrokes.

    Currently possible way:

    Here's the best I came up with for plain VS2013 install using extract method. It's much less keystrokes than what did earlier but it's still too much I think. See my own reply for the snippet proposal.

    r<esc><ctrl+enter>var r=0d;<shift+home><ctrl+r,m><enter><down><ctrl+x><ctrl+, ...> // Edit.NextMethod doesn't work even if assigned in VS2013 (tried text editor:c+a+down)

    result:

         r = NewMethod(r);
    }

    private static double NewMethod(double r)
    {
         var r = 0d;*
         return r;
    }

    (I would like <Ctrl+r,m> to use the current line if nothing is selected)

    Remaining question here is - since with snippet the caret lands in the method, how do I get caret to (*) in least amount of keystrokes...

     

    Changing accessibility / staticness: 


    Since changing stuff from private to public and back is annoying, I had the idea that all you need to do is have caret anywhere inside private, public or static keywords. Here, if you press <tab>, it would pop a list so you can select with arrow keys. The context menu/list looks like this for private static:

    public (2 up arrow keys lands here)
    public static (1 up arrow key lands here)
    ---private static--- (current value)
    private (1 down arrow key lands here)

     

  • Ever heard of a CDN?

    @cheong: Yeah there's a ton of variables with these CDN's but wanted to rule out the obvious first. (if you are watching a low quality/bw video, packet loss might actually have larger effect, so in that case you'd want to run ping -t for a while (ideally during the typical viewing/busy hours over a week, then aggregate the stats) to the last non-content provides hop to gather statistics (and another to the last hop possible). Also of course 3rd ping -t to nearest hop @ your isp to rule out issues on that end. The packet loss should be 0-1% to all 3 destinations).

     

    Are you saying you have the same problem as OP? Further info the op left out: does the problem affect just flash/sl/html5 or the direct download links or all? Or live events? Any difference between old and new high quality videos viewed with WMP? And if direct link is used, which clients you tested on (they might give better service to known things like WMP). What kind of connection (3g,lte?).

    The nearest CDN personally happens to be my ISP so I can't really hard to say what kind of bandwidth they are offering to the other ISPs "nearby". I do recall another local ISP's having multi-year complaints with YouTube videos on their network as they are pulling the content from abroad while my ISP also happens to be the cdn for youtube...

    I can only say that speeds seem to fluctuate between 1.3-1.8 MB/s for wget on the "High quality" video link, WMP somehow manages to get 2.5 MB/s - requests from unknown players might be getting 'best effort'/idle resources.

    I can't say if it's the case for c9 videos but I have noticed that when MS releases some new developer ISO, if I rush to download it immediately, it goes about 100-200 KB/s - clearly the CDN hasn't still received it entirely. So another thing to do is to try downloading same video again later - perhaps if there's some new CDN's they are only getting the videos into the CDN in "on demand" and assuming those fresh CDN's also get 100-200 KB/s into them on the first video view, that's not enough for all resolutions. For new videos I would suspect though that the non-live videos are first propagated in entirety before publishing(?).