Hacker News new | past | comments | ask | show | jobs | submit login
Show HN: DotNetFiddle – JsFiddle for .Net (dotnetfiddle.net)
217 points by refactormonkey on Nov 20, 2013 | hide | past | favorite | 88 comments



While this one doesn't have the nice "fiddle" suffix, it has been around for a while and supports a lot of platforms:

http://ideone.com/


There is also https://compilify.net/ and http://executify.com/. But it's always good to have more options.


compilify seems to take a long time to compile code :(


It is open source though.


There's also https://jitjot.net

The blog entry explaining how to use it is here: http://sbknull.blogspot.com

It's built on ASP.net MVC. We're thinking of open sourcing it.

It saves a new version of your code with each save and you have a repository of code entries via your user link:

https://jitjot.net/u/acoma https://jitjot.net/u/mlatham

Of course you can just park code there if you'd like.


We do something similar at http://runnable.com/.NET We run mono however on the back-end


Huh, first time I've seen this one, very interesting. Any idea what kind of volume they handle and whether or not they're profitable?


I doubt they're profitable (yet), they have only started playing with business models recently.

But the same platform has been used to run spoj.pl, a rather popular programming contest site, for many years.



Great! I was going to say F# should be supported, but then I remembered there's this: http://www.tryfsharp.org/Create

Still, I can definitely see myself using this to share little pieces of code where currently I write it up in linqpad and email to colleagues.

Any chance you could add an extension method like linqpad's Dump() to pretty print objects?


Yes, that sounds like a great idea. Will add it in next couple of days.


Nice work! Is this inspired by Compilify? How are you securing execution? Source? I did a blog post a long time ago on hosted execution with Roslyn and that is how we do it with Compilify (which is open source).


Yeah we definitely looked at some Complify code and the blog post was helpful also.


Great tool! I even tried to make an infinite loop (excuse me for that :) ) which was handled gracefully by your program.


This is great. One small bug cropped up, I collaborated on a fiddle with a work colleague and he couldn't see any output from clicking Run.

http://www.dotnetfiddle.net/lN6m0S

Great work though, will be in my favourites :)


Yes, will be fixed by tomorrow. Thanks for reporting it.


Good stuff!


Those are some curious methods, but I'm not sure the names fold and foldback are appropriate given what they actually do.


You're right, they don't work. I was flattening recursive versions of Fold and FoldBack as a test of DotNetFiddle. Clearly the flattening has bugs :)


Very sweet! I like it a lot! It's nice to see that people still remember of .NET


Xamarin and Unity are heavily used and are based on .NET. There is plenty of .NET around, we just don't scream "it's the future!" all the time and do not post [useless] 30-liners. The latter might change now :).


haha! How patronizing...


Very nice! I have a "scratchpad" project for fiddling around with things, but this might wind up a permanent tab on my browser. Less overhead than a VS project, for sure.


Try Linqpad for a scratchpad too. Don't let the linq name fool you - its great for general purpose fiddling about. It has been truly indispensable when developing on .Net.

http://www.linqpad.net


I usually use PowerShell for fiddling which is often nice enough for trying out things with the BCL.


Back when I worked with .NET and Linq, I was a fan of this tool


If I'm in VS, I just use the F# interactive window. Even when I'm not coding in F# it's always nice to have a repl around.

If I'm playing with data and still want to poke .Net objects, I use Sho[1] which gives an IronPython REPL and some decent numerics support

[1] http://research.microsoft.com/en-us/projects/sho/


Mono ships with a C# REPL: http://www.mono-project.com/CsharpRepl

After using F# and having F# Interactive onhand, I cannot imagine working without a REPL. There's so many small things that become simple to check if you've got a REPL handy.


What kind of hardware are you using? Are the jobs parallel? I do not know about .NET very much, but it seems very slow. Would that be feasbile for you to maintain this?


Using Azure cloud - medium Web Role server (2 x 1.6GHz CPU, 3.5GB RAM). It is set to auto-scaling so it should be adding new instances if first server is being swamped.

The jobs are done using Worker processes and there could be up to 20 of them running at the same time.


.NET CLR is faster then most VMs.


Than, not then.


This is super awesome! I was thinking of building something like this the other day because I wanted to test some code and not make a new test console app.

Totally awesome!


As stated elsewhere linqpad is really great for testing ad-hoc, throwaway C# code (much more than just linq expressions). It kind of like a REPL for .net.


If you're doing any Entity Framework development, you should be using LinqPad and checking generated SQL for pretty much every canned (read re-used, not inline) query you write. Somethings can be unexpectedly ugly and badly performing if not optimized properly.


This is really awesome, good job!

I've found a minor glitch. Seems that the Intellisense (auto-complete) does not work when I try to call a custom class method inline, like:

Console.WriteLine("Hello World, " + new MyClass().PrintTestSentence());

(Public methods of class "MyClass" does not show up there)

See here: http://www.dotnetfiddle.net/5oF8oR


Thanks for reporting it!

It works if you declare class first http://www.dotnetfiddle.net/IjtjcG

but not if u do initialization and call at the same time. Will take a look.


Also, "intellisense" for the "using" statement doesnt work.

Example:

   using System.
I don't get any choices...


'Roslyn'?


Yep. It is pretty amazing library.


interesting :)


Was it only Roslyn or did you utilize ScriptCS too?


This is really great. Infact you gave it edge over jsfiddle by providing collaborate, auto-complete and compile-as-you-type features.

There are times when I quickly want to test some idea with strings, async, linq etc. without firing full fledged VS IDE. You did an excellent job. Cheers!


This is executed serverside, right?


Yes, all server-side using several worker agents.


Hopefully will change when and if Web becomes actually Open.


Really nice, I can see myself using this tool. Couple of pointers - when typing fast (my usual programming speed), its going a bit awry, but I see it is trying to do some intellisense stuff.

This is perfect tool for teaching/learning coding.


Oh my goodness this is amazing. I've wanted this my whole career.


http://liveweave.com is by far the best HTML/CSS/JS playground out there. you guys should totally try it out.


I can name three problems with it straight-away: 1) HTML, 2) CSS, 3) JS.

The original post is about a decent language, not the ubiquitous ones.


Honest question: Why?


I think I can answer that. IMHO Liveweave has something most of the other JS "playgrounds" do not have. It has context-sensitive code-hinting for core JavaScript and jQuery...also for CSS/HTML/HTML5/CSS3. Personally, I think this makes a huge difference, at least for me and may be some others.


It would be great to see (somehow) method params, types. Intellisense is great, but I'm really missing method signature ... Great work guys, thank you for this!


Boohoo, any file access is disabled, and any Environment.GetFolderPath will return an empty string (except System, which throws a security violation) :P


We may look to add local storage sandbox for this.


IsolatedStorage may work well for this.


Is intellisense case-sensitive for a reason? I typed "Console.w" and auto-complete list was gone. It works fine with "Console.W".


Thanks for mentioning it. Will fix...


Nice. It's a shame http://fiddle.net wasn't available.


On the other hand there will be consistency once wee see more languages/platforms. javafiddle.net? dartfiddle.net?


O M G

Collaboration coding in the browser is SERIOUSLY cool!


VSAnywhere is good for that on live projects.

https://vsanywhere.com

(no affiliation)


If you're into the js/html/css party, Plunker is a more IDE-like experience that has real-time collaboration built-in.

http://plnkr.co/edit/?p=preview&s=RxFWQJqa5yVe8qI5


you should then try http://liveweave.com. they have code-hinting for HTML5, CSS3, JS, jQuery...really awesome stuff. I recently found it, and loving it so far.


JSFiddle has had this for a while.


But for .NET, that's what makes it neater. JSFiddle collab has been helpful, now we have it in .NET too :D


Good for GUI, but for business logic we need the real deal :).


This is really neat. Adding something like LinqPad's Dump() extension method would make this supercool.


Doesn’t seem to work in IE10 ironically.


If the page is completely blank, it may be because you have cookies blocked.


Nevermind. It was IE. Somehow 'Display all websites in Compatibility View' was turned on. Turning it off fixed it. Thanks.


Pretty cool, nested classes do not work though. Throws "Method must have a return type".


Here's one for R:

http://www.r-fiddle.org/


Very useful. This will be a great way to answer questions and demo algorithms


Is it open source? If not, is there any plans of making it?


Great pretty handy. You even got auto complete, kudos.


Great! I totally bookmarked this!


Hey I love your auto-complete !


Is it compiled in server side?


Yes, website passes Run requests to back-end worker processes which compile and execute code and return results back to website for display.


I assume that you have created some kind of sand box in order to prevent malicious code execution. Can you share some details about that?


very nice. please add IronPython & F# if you get a chance :)


Nice ! I support this.


So cool, thank you!


Wow! Very good.


Love it!


Nice try, closed-source proprietary technologies! (Hope that at least they run it in Mono)


Hmm, what part of C# or CLI is closed? They are open standards - you are free to create your own compiler and environment.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: