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
  • More proof MS technologies are on the way out...

    @GoddersUK: Ironically(?) you could make the argument that using the phone as a controller, you'd still want a low latency architecture. I guess the question then would be, why should the low latency architecture be limited to just use as a controller and not also for sound related things.

    Bottom line, I think it's more sensible to start with a low latency architecture and then tweak it at runtime for power saving or whatever needs, than trying to "sprinkle in" the low latency. It's a bit like trying to "sprinkle magic security dust" onto some legacy system (eg. C-based OS for home routers that won't get updated). Was there an alternative? Well if there was a home router running eg. Singularity OS from MS I'd have bought it long ago. I don't get it why MS didn't jump at such obvious opportunity to easily take over the market. (The only thing preventing me from doing it was that Singularity was not to be used for such purpose - but that wouldn't have prevented MS from doing so)

     

  • SpamSpamSpam

    (assuming the spammer is using these forums as test place to develop their methods)

    I'll just repeat this "almost final solution" to deal with these spammers:

    If you want to delay arms race then implement also some way to hide the spam from those who regularly post non-spam. This way, if the spammer checks to see if their spam is being auto-deleted, they see it is not - but they don't see that it's being hidden from regular posters. Of course if the spammer is a regular poster that's not been flagged as spammer, then this won't work.

    Obviously - the forum can look spammy to large amount of people for a while with this method but atleast it won't annoy those who regularly post at eg. Coffeehouse. Either this or the arms race...

     

     

    Another solution is just to have ability for everyone who regularly posts to mark a profile as possible spammer. - First if I mark it - the spammer posts get hidden for me and if enough other people mark then they get hidden from all but admin/mods who can then decide if it was a real spammer or if the marking was done as some sort of campaign against some poster.

  • SpamSpamSpam

    Anyone seen this before? I see that the latest Coffeehouse posts from 2014 late dec and 2015 are gone, the spam is interleaved weirdly: page 1,2 spam, then old posts from early 2014/12, then spam from minutes ago next page and then old posts again.

     

    And seriously, how many minutes would it take to write algo to deal with this spam issue? Perhaps these ASP-Cloud things are way more complicated than I can understand but if same poster is making many threads in a minute, perhaps it's a bot? Just a thought.*

    * If you want to delay arms race then implement also some way to hide the spam from those who regularly post non-spam. This way, if the spammer checks to see if their spam is being auto-deleted, they see it is not - but they don't see that it's being hidden from regular posters. Of course if the spammer is a regular poster that's not been flagged as spammer, then this won't work.

  • TcpListener vs Socket​AsyncEvent​Args

    Now you may wonder what got me interested in ZeroMQ. I read about it from some finance software blog. Then I looked the CERN paper. Logic: If it's good enough for finance and CERN then it might be good enough for me - with the .NET bindings improving monthly it's soon time to test it.

    "In 2011, CERN was investigating ways to unify middleware solutions used to operate CERN accelerators. The CERN study compared two open source implementations of CORBA, Ice, Thrift, ØMQ, YAMI4,[8] RTI, and Qpid (AMQP) and scored ØMQ highest, in part for its versatility, including its easy adaptability to the LynxOS"

    The NanoMsg page does however suggest that ZeroMQ wasn't designed Windows or SCTP in mind, so for Windows you can likely do better still but I also want something that's got some testing and support and don't want to be at the bleeding edge - I want a balance of high perf with no more effort than really needed as I have so many projects going on and ideas planned.

  • TcpListener vs Socket​AsyncEvent​Args

    @dc0d: Here's some talk about what 0mq is: https://news.ycombinator.com/item?id=6739374 - they've added some features over time. My concern is - what kind of perf I get with certain set of features I want. I do implement things often from scratch but if there's a good performing solution for "wheel" then I may focus my effort on more novel things vs reinventing the wheel. Network stuff in my experience requires good bit of testing of various conditions and the most basic solutions might not do everything a basic app needs. That's why I'm looking at things other than plain TcpListener or Sockets. So hopefully - rather than testing various error conditions, I can do comparative perf tests between similar solutions that have someone supporting the low level issues.

     

    NetMQ (ZeroMQ for .NET) does now support IOCP on Windows

    http://somdoron.com/2014/11/netmq-iocp/

    "NetMQ is 100% native C# port of ZeroMQ.

    NetMQ is lightweight messaging library which extends the standard socket interfaces with features traditionally provided by specialised messaging middleware products. NetMQ sockets provide an abstraction of asynchronous message queues, multiple messaging patterns, message filtering (subscriptions), seamless access to multiple transport protocols and more."

     

     

    If this is a low-latency app where you control both client and server SCTP is something to look at. It's supposed to be "next gen TCP". "A .NET 4 assembly now gets installed with version 1.1.6 of SctpDrv; it provides an API that's similar to the Socket class but with new methods for SCTP. "

    http://nanomsg.org/documentation-zeromq.html  (NanoMsg .NET bindings Alpha quality. ... parts of the API will likely change)

     

    Now there's also some more exotic stuff I've actually used long time ago. I had to send files to China 10+ years ago and with TCP speed was like 2 KB/s back then on that route. I found something called MDPv2 that had a file transfer app demo. With it I got something like 100 KB/s.

  • More proof MS technologies are on the way out...

    Also I have *no idea* if this is feasible but I read about a low bandwidth graphics trick. Instead of updating everything, just update what has changed. I would think that audio has a lot of repetitive elements to it. So if you have a large "amount" of audio, large enough to have repetition in it, why bother updating the repeating things in the large amount. Now how would this be implemented in practise .. probably not feasible. With this sort of system, instead of a glitch you'd have some part of the sound stale for a bit too long. Wonder how that'd sound.

    Here's a  proof  of the trick (scroll to bottom). I haven't read it but if it works for gfx, why not for audio?

  • More proof MS technologies are on the way out...

    @BitFlipper: Assuming that's the case - it might be solvable by multiple buffers+scheduling - perhaps just by having a small initial buffer for them, then have them fill that small buffer multiple times while stashing them away until needed in the low latency mixer. Then you can measure how long time it takes to fill the small buffers and adjust how many small buffers you want to request from the "sweet time" app ahead of time.

     

  • More proof MS technologies are on the way out...

    ?Stupid? questions (related to Windows desktop audio):

    I never understood why "high latency mode" is needed or more to the point, why the "low latency exclusive mode" is exclusive. If we assume all apps are rendering at X Khz because the OS told them nothing else is available, and then pipe all the apps to a mixer that uses "low latency mode" at master out, logically all the apps will now share the low latency - proof of this is: just load up any decent VST host and fill it up with VSTi's - then consider those VSTi's as being other apps and games - eg. you could use a directx/mme redirector to have low latency mixed with high latency sources, beats me thus why you can't have apps using "virtual shared mode" redirected to mix at the input of the "exclusive mode" mixer - infact some professional ASIO cards do offer something like this through drivers.

     

  • Can you do this with Roslyn or C# Native?

    If I write something and the computer translates to something else, then I think it's quite reasonable to have ability to see what changed in the translation/destination language if I changed some word in the source language.

    Now there may well be much more useful things that the IDE could do than this. No argument there. To me this would be a cool feature and if doing cross language change-merging, it might even be useful. The blog author needed to see asm for something (optimization or compiler development purposes?) and that's why he's "betting on" that language, to me seeing asm would be merely educational at this point. - I wouldn't bet on a language based on this feature, but if an IDE provided the features I described here (ability to see the changes in destination language of a eg. DSL), then it would probably be more than just educational feature to me.

     

     

  • I'm exhausted but i got my fiber

    FTTP/FTTH is a good start but ideally you could have multiple ISPs and route based on latency - there can be quite large differences in my experience especially when speeds go to 100+ Mbit among different ISP's to specific destinations. Sometimes stuff gets routed in really weird manners and I have to find who to complain to.

    My current approach is to have a completely free 4G LTE connection as a backup - well free until it is actually used. If primary connection fails then that will become active. The problem I have with it is that the IP changes when switch-over happens. The applications I use can handle this however.