CWmike writes "Friday Microsoft will demonstrate integration between its new Silverlight browser plug-in and Ruby on Rails. Microsoft's John Lam, a program manager in the dynamic language runtime team, said in a recent blog item: 'Running Rails shows that we are serious when we say that we are going to create a Ruby that runs real Ruby programs. And there isn't a more real Ruby program than Rails.' Also at the event, Microsoft officials will demonstrate IronRuby, a version of the Ruby programming language for Microsoft's .Net platform, running a Ruby on Rails application."
Microsoft: 1. "We love Silverlight!" 2. "We love Ruby!" 3. "We love Ruby so much, we're making Ruby.NET***!" 4. "Hey look, Silverlight and Ruby.NET play together!" 5. "Hey everyone, develop for Silverlight and Ruby.NET!" **Everyone embraces Silverlight and Ruby.NET** 6. "We're discontinuing Ruby.NET, please refer to Silverlight."
***Not compatible with normal Ruby
P.S. Oddly enough, my CAPTCHA today is "strategy". Intelligence perhaps?
P.S. Oddly enough, my CAPTCHA today is "strategy". Intelligence perhaps?
Yes, actually Slashdot has a learning algorithm where it uses the topic and thread to determine which word to use for the CAPTCHA and checks the post for references to the CAPTCHA to see if it guessed correctly. Eventually this will evolve into autotagging and the ability of Slashdot to respond to comments on its own followed shortly thereafter by the Slashdot webserver achieving sentience.
MS' ass is still bleeding from the reaming over Java.
Only thing is, it wasn't Java the language, it was Sun the corporation behind Java that sued Microsoft. Now tell me, which is the big corporation behind Ruby with deep enough pockets to face Microsoft at the courts?
The legal MS extensions to Java, the ones in the com.ms.* packages, were fine (well, except for the Morgan Stanley company having their standard java package prefix usurped), and were not what the lawsuit was about. They created Java applications superbly integrated with Windows - but not portable to any other platform, and were perfectly legal. That should have been enough lock in for even Microsoft. But that wasn't good enough for them.
The lawsuit was about their extensions to the java.* core packages - which were expressly forbidden in the license. The license was an actual signed contract. Microsoft tried to argue in court that the contract only applied to Java 1.0, and they could do whatever they wanted with future versions. The court didn't agree.
Having the core Java packages unpolluted is important for making it simple to ensure your application is run anywhere. (Well, except for bugs in native libraries or JVM.) To undo the damage, Sun ended up having to create the 100% Pure Java campaign with a program to check for core extensions.
However, MS was one of the biggest JAVA proponents, even integrating the VM in their OS as soon as possible. So what did Sun gain in fighting over a 'technical' issue with the Windows VM version?
It gained a Java standard that continued to be write-once run anywhere (modulo platform bugs). Windows specific extensions are fine, and welcome, in a cross platform standard - provided they are *not* in the core libraries. Sun's mistake, like so many others, was trusting Microsoft..NET is not and never will be cross platform (no, mono doesn't cut it, and if it ever does, MS will kill it). It will likely help Microsoft support different CPUs (running Windows), however.
An odd detail for you... In 2000-ish, I worked for a startup with a Java-based server application. It ran significantly faster on really cheap NT hardware using Sun's JVM than it did on really expensive Solaris hardware using Sun's JVM.
...if it was once horrible, the new version can only be barely usable
Yes, it's so barely usable that thousands of businesses stake their existence on it.
Java is relegated to the backend of servers, calculating business logic and serving web apps, though.NET seems to be overtaking Java there too
Really? Provide proof. I've been doing Java development for many years and there's no shortage of gigs I can get. There's TONS of Java jobs. In fact, there's a shortage of people.
"The IronRuby project in general has featured processes that make it easier for Microsoft to develop open-source projects, said Lam.
"What we learn from building IronRuby will be applied in other product groups to help us become more open and transparent than we have been in the past," Lam said."
How does an company like Microsoft "learn" to become more "transparent"?
How does an company like Microsoft "learn" to become more "transparent"?
Same way you make your own life transparent when guests come over: By hiding everything you don't want anyone to see in your bedroom closet, sweeping all the dust under the rug, and pretending like your largely empty but tidy living room where the guests are allowed is always that way.
The upshot is that you should also be able to run IronRuby on the Mono Common Language Runtime, presuming that Microsoft's implementation adheres to it's own ECMA-"approved" CLR standards...
Not only that, the DLR and IronRuby are both released under the MS-PL, which is OSI-approved. If anything depends on proprietary libraries, it can be swapped out with a free alternative.
The upshot is that you should also be able to run IronRuby on the Mono Common Language Runtime, presuming that Microsoft's implementation continues to adhere to it's own ECMA-"approved" CLR standards...
quote from the mono project FAQ (http://www.mono-project.com/FAQ:_General): "The Mono API today is somewhere in between.NET 1.1 and.NET 2.0, see our Roadmap for details about what is implemented."
while looking at the MS website it seems that the latest.Net framework is 3.5.
frankly at this point I would seriously doubt that MS (or Novell, for that matter) has any serious intention of implementing.NET on anything else than Windows. Let's get real and see that the Mono or Moonlight projects are just PR... thanks.
.NET Framework 3.5 is merely.NET Framework 2.0 with an enhanced class library (includes WCF, WPF, and so on). If Mono supports custom.NET classes, it technically is.NET 3.5
There's two main versions of the.NET CLR (Runtime): 1.1, and 2.0..NET 1.1 runs on.NET CLR 1.1.NET 2.0 through to.NET 3.5 runs on.NET CLR 2.0
Effectively,.NET 3.0 and 3.5 were language extensions on top of 2.0. They still execute ontop of the same CLR.
If memory serves, Mono has recently announced full feature compliance against.NET 1.1, and they're now targetting full feature compliance against.NET 2.0.
That doesn't mean.NET 3.5 apps won't run. It just means certain bits (such as LINQ, WPF, WCF, Anonymous Types, etc) are either not present or not completely implemented yet.
In either case, Silverlight/Moonlight are seperate from the.NET / Mono codebases. Yes, they have shared code, however since Silverlight 2.0 is a vastly cut down version of the.NET Framework.
This makes full feature compliance of Silverlight 2.0 by the Moonlight crowd that much easier, since the majority of the functionality that is used in Silverlight is already implemented in Mono.
As for Moonlight/Mono being just MS PR, I think Miguel De Icaza might have something quite strong to say about that.
- Novell is actually using Mono to implement apps on their Linux desktop.
- Second Life, amongst other reasonably big apps, is using Mono to provide (or improve) pluggable/scriptable functionality in their apps.
Parent is a somewhat confused post - it contains various facts, but also some misused terminology. I tend to be a bit pedantic when it comes to the terminology around runtime features vs language features vs libraries, as it's a source of frequent miscommunication.
There's two main versions of the.NET CLR (Runtime): 1.1, and 2.0..NET 1.1 runs on.NET CLR 1.1.NET 2.0 through to.NET 3.5 runs on.NET CLR 2.0
So far, so good.
Effectively,.NET 3.0 and 3.5 were language extensions on top of 2.0. They still execute ontop of the same CLR.
They weren't "language extensions"..NET 3.0 contains solely library extensions: WPF, WCF, Cardspace, Workflow Foundation, on top of.NET 2.0..NET 3.5 contains library extensions, primarily LINQ (in its various guises) and additions to the BCL (e.g. System.TimeZoneInfo). I believe there are ASP.NET and ADO.NET enhancements too, but I haven't looked into them..NET 3.5 also contains the compilers for C#3 and VB9. More on them in a minute.
It's also worth mentioning.NET 2.0SP1, which includes some changes and enhancements to the BCL, such as System.DateTimeOffset.
If memory serves, Mono has recently announced full feature compliance against.NET 1.1, and they're now targetting full feature compliance against.NET 2.0.
That doesn't mean.NET 3.5 apps won't run. It just means certain bits (such as LINQ, WPF, WCF, Anonymous Types, etc) are either not present or not completely implemented yet.
Anonymous types are a purely language feature. They don't need any support from the runtime or the libraries. In other words, you can compile a C# 3 app which uses anonymous types, and it will work on Mono (assuming there's nothing else missing, of course). Most C# 3 features fall into this category - they don't need library or runtime support.
WPF and WCF are libraries. No language changes are needed, although tooling to support XAML is useful, of course.
LINQ is a mixture of many elements. To use "out of process" queries you need an implementation of expression trees (and compiler support). To use LINQ to Objects you need an implementation of that, but it can be completely separate to the rest of the main platform libraries (see http://www.albahari.com/nutshell/linqbridge.html [albahari.com] for example). You can use C# 3 query expressions with no runtime/library support, so long as you've got a C# 3 compiler and a type with suitable methods (or properties).
Last time I looked, mcs support for C# 3 features was somewhat lacking (which surprises me, as Mono had a released version of mcs with C# 2 feature support before.NET 2.0 was fully released, IIRC). However, you can build an app with the MS C# 3 compiler and run it against the Mono platform so long as you don't use any library functionality which isn't supported there. Asking VS2008 to target.NET 2.0 is a good starting point on that front. (It actually targets.NET 2.0SP1, so be careful...)
In either case, Silverlight/Moonlight are seperate from the.NET / Mono codebases. Yes, they have shared code, however since Silverlight 2.0 is a vastly cut down version of the.NET Framework.
This makes full feature compliance of Silverlight 2.0 by the Moonlight crowd that much easier, since the majority of the functionality that is used in Silverlight is already implemented in Mono
Ummm, actually it isn't, because Silverlight encompasses a lot more then just a subset of WPF and XAML. There are related technologies, particularly related to multimedia, around Silverlight, Windows Media in particular, that are very much a part of creating Silverlight content as we see it now on Microsoft platforms. Everyone else is going to have to replicate that, and even worse, keep up with the moving target of successive implementations. It's another classic example of Microsoft keeping their implementation ahead, and first to market, and it's a well worked routine now.
I'd love to be able to say otherwise, but these 'olive branches' that we're seeing are all designed to get the usage of Microsoft technology on the web to some sort of critical mass. Nothing more. If that is ever achieved, your guess is as good as mine as to whether those branches will stay strong and whether Microsoft will ever have a continued, vested interest in Moonlight or Ruby or Rails. I just find what people say around these stories fascinating. There's all sorts of articles and blog entries written by various people about how Microsoft is changing or asking "Is Microsoft changing?", "Is Microsoft Open Sourcing....." etc. etc. It's ridiculous.
At the moment, I'm trying to get over to a female acquaintance why it's a bad idea to get back together with exes. She persists in believing that it's better the second, third or fourth time around and that things will change. Nothing ever does change though. Any apparent change you think you see is short-lived, a leopard doesn't change it's spots and if it ever was going to happen, well, it would have happened by now. You can't get past someone's history, their history is their problem not yours and you only end up getting used.
The object of Moonlight is to essentially be a "feature-complete" implementation of Silverlight, minus those pesky, patented, DRM-laced multimedia codecs.
Then it's essentially useless because the reference implementation that is first to market is Microsoft's Silverlight, and you can bet your bottom dollar Microsoft's tools will be creating Silverlight content with Windows Media and other components right, left and centre. What comes down in practice is what you have to support.
The question is, then: "Does your Silverlight-based business application really need to use these pesky, patented, DRM-laced multimedia codecs?"
If history has taught us anything, it's that people are just not going to ask themselves pointless questions like that.
Which, in the vast majority of cases, is "probably not." Much of this kind of functionality can be had via calls to external (and FOSS) libraries.
You don't get a choice. You have to deal with whatever comes down, and what comes down will have pretty much all been created on Windows systems. The key thing to remember hear is that people are not writing content for Moonlight. They are writing it for Silverlight. If it stops working on Moonlight they're simply not going to care when it boils down to it.
Really? These are well worked standard tactics from the past twenty-five years. Do they really need to keep being explained?
Well, that right there satisfies 'cross platform' as far as I'm concerned. I mean sure, it might not run on -every platform- but very few things that call themselves cross-platform run on my Amiga.
Of course, this is slashdot, so by cross-platform you must mean does it run on linux... and apparenty the implementation that DOES is called Moonlight...
I still remember when most users were using Netscape browsers and Microsoft had a pitiful browser they wanted everyone to use instead. Many technical users pointed out that Netscape was cross-platform and a better choice for a browser. So, Microsoft created Internet Explorer for Macs, Unix and Windows to show that Microsoft understood the importance of a cross-platform browser and would continue to make the browser for all platforms for free. Once they propagated their browser to the bulk of the users, these cross-platform versions stopped being updated. Of course, it was all just a ploy to gain market dominance by confusing the marketplace.
I wish people were smart enough to realize that this latest attempt to tie Ruby to Microsoft is simply the same tactic, used repeatedly by Microsoft, to confuse a marketplace while jamming more poorly conceived Microsoft software into businesses that are not clever enough to look further into the future than the current quarter. Sadly, past examples show that business managers will not learn that Microsoft does not have the best of intentions when they announce any new technology.
It works on Safari on Mac OS, and might be useful to have when the Linux support [tirania.org] is done too. Heck, it's early even for use on Windows. Things only get moderately interesting for me once Silverlight 2 is done, and it isn't yet for any platform.
But I really don't see the last part of it comming, I think Ruby is a little to "Stable" unto itself for Microsoft to really be able to pull it off, Ruby will just continue on...
Since Silverlight isn't cross platform, why bother?
What part of Microsoft's "Windows Strategy" did you not hear about?
It has been quoted by Balmer, MSs entry into open source is "to bring better value to OUR customers" (emphasis is mine). If they get RoR developers to make Silverlight front ends, it benefits mainly MS customers (euphemism for MS may make more $ sales) - goal met.
As opposed to, hm, Apple, which definitely does not want to benefit primarily Apple customers. Which is why iTunes has been released for Linux... ??
Plus, open source people definitely want, primarily, to benefit people that don't use open source.
Seriously. What business DOESN'T want to bring better value to their customers? If your object is to benefit people that aren't your customers, your company (or your investors) won't last long.
If you're going to flame Microsoft, do it on good grounds.
I confess I don't know a lot about Ruby on Rails, but I've looked into it once or twice. I thought Rails was a Server-Side technology for creating dynamic websites? I thought SilverLight is a Flash-clone, for implementing client side interfaces and rich media playback? Is Microsoft talking about a SilverLight-based user-interface which connects to a Rails backend running on the server? Or actually Rails running in the browser? What benefits would Rails in the browser bring you? Also, slightly off-topic, but
In the great/. tradition, I didn't read the article, but the summary suggest that this is a proof of concept. Running Rails demonstrates that you can implement a full Ruby environment in Silverlight. Anyway, I agree with your point about the ever-extending capabilities of browsers -- I thought Emacs should already have served as a warning.
This is the opposite of FUD, or rather something I'd call DUF(f)... for the English, we understand that. Anyway, when MS is telling you that they are improving, embracing, extending, becomming transparent, supporting OSS, and using someone else's technology to do so... they are hyping up the buzzwords to draw you, get your distracted attention. It's of little concern that they are not inventing their own version of Ruby, they are only modifying to use it, then you won't have to have OSS as MS will have a.n
Because there's a whole lot of idle CPU cycles out there, and it's a lot faster and cheaper for people to render things on their desktop rather than have your server crunch and send it back through the web.
Don't get me wrong, I don't necessarily think that something like JavaScript, where the DOM can be manipulated dynamically to create more dynamic webpages, is necessarily a bad thing, or Ajax where data can be sent to the browser to render into the DOM. There could, potentially, be the chance for there to be some kind of buffer overflow in the browser that attackers could exploit - but that is potentially even a problem with straight html + images. I just have to trust the browser developer to do a decent j
Because internet-enabled applications are the way of the future, but your average joe-on-the-street thinks that "Internet Explorer is the Internet." Seriously, for Web Applications which follow the standards, it's a write-once, run-everywhere situation (well, mostly, except for those places where IE mucks things up.) Want to support Windows? It works. Want to support Linux? It works. Want to support Mac? You get the picture. Any platform with a browser which adheres to the standards can "run" your web
by Anonymous Coward
on Monday June 02 2008, @05:35PM (#23632411)
Question 1. I thought Rails was a Server-Side technology for creating dynamic websites?
Yes, and it utilizes scriptaculous and prototype out of the box for client-side programming like DOM Manipulation and Ajax calls.
Question 2. thought SilverLight is a Flash-clone, for implementing client side interfaces and rich media playback?
Well, not really a clone, more like a competitor. It doesn't utilize ActionScript (which is essentially a JavaScript clone) but instead C# or other related MS.Net languages. You can write some rather nifty client side widgets with SilverLight.
Question 3. Is Microsoft talking about a SilverLight-based user-interface which connects to a Rails backend running on the server?
Yes. The same thing can be done with Flash, utilizing things like Ajax calls and JSON or XML parsers.
Question4. Or actually Rails running in the browser?
No, Rails is a server-side technology, a web application framework, similar to J2EE, POJOs + Hibernate/Spring, TurboGears, etc. etc.
Question 5. What benefits would Rails in the browser bring you?
None, because the question is invalid. Rails is a web application framework, and by nature is dealing with server side technology.
Question 6. Also, slightly off-topic, but is anyone else concerned about the security implications of pushing more and more languages/capabilities/functionality into the web browser, which can be controlled by scripts/code loaded from remote, un-trusted, servers?
Of course, but that's true for any application (i.e. Office Macro Viruses).
Question 7. Why can't a web browser just be a web browser?
Because things evolve and progress demands that web applications be much more interactive than simply static forms and web pages. The world is no longer simply hypertext links. Because rich web applications with interactive interfaces are the logical evolution of the web.
I'm not amazingly knowledgeable about Flash' technicality. However, I can say the following about Silverlight: While Silverlight can (in the 2.0 version) be compiled as a kind of CLR-based BLOB that runs in the client, Silverlight can also (and exclusively so in its 1.0 variant) be used as a simple markup, generated from any source. ANY Source.
That is, you can have a PHP page generate a bunch of ECHO statements that make up valid silverlight markup and you're good to go... So that you use PHP, ASP.NET, Ruby on Rails, whatever... markup is markup. Instead of outputting the markup for an HTML form with HTML input, you output the market for a canvas with whatever controls Silverlight supports... its still just text interprated by the browser, with a little bit of Javascript to inject it in a placeholder (usually a DIV tag). It becomes part of the DOM to some extent, can be manipulated with normal javascript, etc. It is basically just a fancier more integrated DOM extension, than anything else.
To make things short, there's basically no "linking" involved between the two. You just change the format of the string you output, nothing more, nothing less.
A Silverlight app can be purely XAML (XML markup language) and JScript. That's all Silverlight 1.0 apps are. With Silverlight 2.0 you can use bytecode, but that's not required.
Having a large share of the browser market doesn't necessarily mean you control it -- not when the majority of Web companies are unwilling to give up the other segment of their potential audience. If you'd said that Microsoft controls the intranet, I could maybe believe that... but between PDF and Flash, you could argue that Adobe controls more of the Web than Microsoft does.
hahaha. No. Flex/Flash is a much stronger implementation of this technology and it is already platform independent. With an Eclipse-based IDE, Open source media and remote data servers and AMF, why bother with silverlight? Frankly, as a web developer, I have enough headaches with Microsoft's loose implementations and platform lock-in. They did this to themselves and they've been left in the cold. I really don't care if they freeze their butts off.
... I won't trust anybody with Rich Client technologies further than I can throw them. Be it Adobe, Curl, Wild Tangent, or - heavens forbid - Microsoft. Take that from an experienced Flash Application Developer. For years and years now Adobe has been keeping Linux on a short leash. Allways coming up late, now, once again, limiting proposed hardware acceleration and certain functions to certain host OSes, ect.
I like Flash and it's a remarkable asset. But I've never fully trusted these guys and my trust in them isn't growing.
Yet it looks as though after 10 years Sun is finally getting serious at attempting move towards RIA territory. If JavaFX [javafx.com] is halfway decent, it could actually become the new king of all things RIA we've all been waiting for. If the core components of it are open source and the reference implementations aswell, then we're all set for a bright new future of RIAs.
The world is trendy, they're just going where the money is. If people say "we want Ruby", they'll deliver..NET is a platform made to support multiple language, and aside when core mechanics are required (dynamic vs static language), making a new language on top of the CLR is actually not all that much work. So today its C#, Python and Ruby.... tomorrow it will be language XYZ.... a language is a fairly insignificant thing in this day and age: its all about the platform.
They want it so that no matter which language you prefer, you can use their technology, for better or worse. It is quite a brilliant really. Why should the language be tied to the platform anyway? That I pick native compilation, the Java runtime, or the CLR.... I should still be able to use the language I want.
(Side note: I despise Ruby. Doesn't mean I think it shouldn't be offered as an option...)
"Version of xxx" (Score:4, Insightful)
Re:"Version of xxx" (Score:5, Funny)
Parent
Re:"Version of xxx" (Score:5, Insightful)
1. "We love Silverlight!"
2. "We love Ruby!"
3. "We love Ruby so much, we're making Ruby.NET***!"
4. "Hey look, Silverlight and Ruby.NET play together!"
5. "Hey everyone, develop for Silverlight and Ruby.NET!"
**Everyone embraces Silverlight and Ruby.NET**
6. "We're discontinuing Ruby.NET, please refer to Silverlight."
***Not compatible with normal Ruby
P.S. Oddly enough, my CAPTCHA today is "strategy". Intelligence perhaps?
Parent
Re:"Version of xxx" (Score:5, Funny)
Yes, actually Slashdot has a learning algorithm where it uses the topic and thread to determine which word to use for the CAPTCHA and checks the post for references to the CAPTCHA to see if it guessed correctly. Eventually this will evolve into autotagging and the ability of Slashdot to respond to comments on its own followed shortly thereafter by the Slashdot webserver achieving sentience.
Parent
Reminds me of the old joke (Score:5, Funny)
Young turk: I know! we could tie the rail and silverlight APIs
Crusty the Unix programmer: yes you could, but then you'd have two problems.
Parent
There's one difference (Score:5, Insightful)
Only thing is, it wasn't Java the language, it was Sun the corporation behind Java that sued Microsoft. Now tell me, which is the big corporation behind Ruby with deep enough pockets to face Microsoft at the courts?
Parent
Not quite (Score:5, Informative)
The lawsuit was about their extensions to the java.* core packages - which were expressly forbidden in the license. The license was an actual signed contract. Microsoft tried to argue in court that the contract only applied to Java 1.0, and they could do whatever they wanted with future versions. The court didn't agree.
Having the core Java packages unpolluted is important for making it simple to ensure your application is run anywhere. (Well, except for bugs in native libraries or JVM.) To undo the damage, Sun ended up having to create the 100% Pure Java campaign with a program to check for core extensions.
Parent
Re: (Score:3, Insightful)
Technically, correct...
However, MS was one of the biggest JAVA proponents, even integrating the VM in their OS as soon as possible. So what did Sun gain in fighting over a 'technical' issue with the Windows VM version?
It gained a Java standard that continued to be write-once run anywhere (modulo platform bugs). Windows specific extensions are fine, and welcome, in a cross platform standard - provided they are *not* in the core libraries. Sun's mistake, like so many others, was trusting Microsoft. .NET is not and never will be cross platform (no, mono doesn't cut it, and if it ever does, MS will kill it). It will likely help Microsoft support different CPUs (running Windows), however.
There are other cross-platform app
Re: (Score:3, Interesting)
You can't really blame that on MS.
Re: (Score:3, Insightful)
...if it was once horrible, the new version can only be barely usable
Yes, it's so barely usable that thousands of businesses stake their existence on it.
Java is relegated to the backend of servers, calculating business logic and serving web apps, though .NET seems to be overtaking Java there too
Really? Provide proof. I've been doing Java development for many years and there's no shortage of gigs I can get. There's TONS of Java jobs. In fact, there's a shortage of people.
"Learn How to Become" More Transparent? (Score:4, Insightful)
"The IronRuby project in general has featured processes that make it easier for Microsoft to develop open-source projects, said Lam.
"What we learn from building IronRuby will be applied in other product groups to help us become more open and transparent than we have been in the past," Lam said."
How does an company like Microsoft "learn" to become more "transparent"?
Re:"Learn How to Become" More Transparent? (Score:5, Funny)
And why do they need to be more transparent? These guys gave us windows. What can be more transparent than that?
Parent
Re:"Learn How to Become" More Transparent? (Score:5, Funny)
Baddabump - tchsh.
That was the comic stylings of Gnavpot. He'll be here all week. Be sure to tip your waitress.
Up next, Steve Balmer and his chair act.
Parent
Re: (Score:3, Insightful)
Same way you make your own life transparent when guests come over: By hiding everything you don't want anyone to see in your bedroom closet, sweeping all the dust under the rug, and pretending like your largely empty but tidy living room where the guests are allowed is always that way.
What's MSFTs Point? (Score:2, Funny)
Re:What's MSFTs Point? (Score:5, Informative)
http://www.mono-project.com/Moonlight [mono-project.com]
Microsoft is assisting in Moonlight's development:
http://lwn.net/Articles/248198/ [lwn.net]
Parent
Re:What's MSFTs Point? (Score:5, Interesting)
Parent
Re:What's MSFTs Point? (Score:4, Interesting)
Parent
Re: (Score:3, Insightful)
Re:What's MSFTs Point? (Score:4, Interesting)
while looking at the MS website it seems that the latest
frankly at this point I would seriously doubt that MS (or Novell, for that matter) has any serious intention of implementing
anybody needs my tinfoil hat?
Parent
Re:What's MSFTs Point? (Score:5, Informative)
Parent
Re:What's MSFTs Point? (Score:5, Informative)
Effectively,
If memory serves, Mono has recently announced full feature compliance against
That doesn't mean
In either case, Silverlight/Moonlight are seperate from the
This makes full feature compliance of Silverlight 2.0 by the Moonlight crowd that much easier, since the majority of the functionality that is used in Silverlight is already implemented in Mono.
As for Moonlight/Mono being just MS PR, I think Miguel De Icaza might have something quite strong to say about that.
- Novell is actually using Mono to implement apps on their Linux desktop.
- Second Life, amongst other reasonably big apps, is using Mono to provide (or improve) pluggable/scriptable functionality in their apps.
Parent
Re:What's MSFTs Point? (Score:4, Insightful)
There's two main versions of the .NET CLR (Runtime): 1.1, and 2.0. .NET 1.1 runs on .NET CLR 1.1 .NET 2.0 through to .NET 3.5 runs on .NET CLR 2.0
So far, so good.
Effectively, .NET 3.0 and 3.5 were language extensions on top of 2.0. They still execute ontop of the same CLR.
They weren't "language extensions". .NET 3.0 contains solely library extensions: WPF, WCF, Cardspace, Workflow Foundation, on top of .NET 2.0. .NET 3.5 contains library extensions, primarily LINQ (in its various guises) and additions to the BCL (e.g. System.TimeZoneInfo). I believe there are ASP.NET and ADO.NET enhancements too, but I haven't looked into them. .NET 3.5 also contains the compilers for C#3 and VB9. More on them in a minute.
.NET 2.0SP1, which includes some changes and enhancements to the BCL, such as System.DateTimeOffset.
It's also worth mentioning
If memory serves, Mono has recently announced full feature compliance against .NET 1.1, and they're now targetting full feature compliance against .NET 2.0.
.NET 3.5 apps won't run. It just means certain bits (such as LINQ, WPF, WCF, Anonymous Types, etc) are either not present or not completely implemented yet.
That doesn't mean
Anonymous types are a purely language feature. They don't need any support from the runtime or the libraries. In other words, you can compile a C# 3 app which uses anonymous types, and it will work on Mono (assuming there's nothing else missing, of course). Most C# 3 features fall into this category - they don't need library or runtime support.
.NET 2.0 was fully released, IIRC). However, you can build an app with the MS C# 3 compiler and run it against the Mono platform so long as you don't use any library functionality which isn't supported there. Asking VS2008 to target .NET 2.0 is a good starting point on that front. (It actually targets .NET 2.0SP1, so be careful...)
WPF and WCF are libraries. No language changes are needed, although tooling to support XAML is useful, of course.
LINQ is a mixture of many elements. To use "out of process" queries you need an implementation of expression trees (and compiler support). To use LINQ to Objects you need an implementation of that, but it can be completely separate to the rest of the main platform libraries (see http://www.albahari.com/nutshell/linqbridge.html [albahari.com] for example). You can use C# 3 query expressions with no runtime/library support, so long as you've got a C# 3 compiler and a type with suitable methods (or properties).
Last time I looked, mcs support for C# 3 features was somewhat lacking (which surprises me, as Mono had a released version of mcs with C# 2 feature support before
See http://csharpindepth.com/Articles/Chapter1/Versions.aspx [csharpindepth.com] for more details on the MS versions available, although that doesn't cover Mono.
In either case, Silverlight/Moonlight are seperate from the .NET / Mono codebases. Yes, they have shared code, however since Silverlight 2.0 is a vastly cut down version of the .NET Framework.
This makes full feature compliance of Silverlight 2.0 by the Moonlight crowd that much easier, since the majority of the functionality that is used in Silverlight is already implemented in Mono
Parent
Re:What's MSFTs Point? (Score:5, Insightful)
I'd love to be able to say otherwise, but these 'olive branches' that we're seeing are all designed to get the usage of Microsoft technology on the web to some sort of critical mass. Nothing more. If that is ever achieved, your guess is as good as mine as to whether those branches will stay strong and whether Microsoft will ever have a continued, vested interest in Moonlight or Ruby or Rails. I just find what people say around these stories fascinating. There's all sorts of articles and blog entries written by various people about how Microsoft is changing or asking "Is Microsoft changing?", "Is Microsoft Open Sourcing....." etc. etc. It's ridiculous.
At the moment, I'm trying to get over to a female acquaintance why it's a bad idea to get back together with exes. She persists in believing that it's better the second, third or fourth time around and that things will change. Nothing ever does change though. Any apparent change you think you see is short-lived, a leopard doesn't change it's spots and if it ever was going to happen, well, it would have happened by now. You can't get past someone's history, their history is their problem not yours and you only end up getting used.
Parent
Re:What's MSFTs Point? (Score:5, Insightful)
If history has taught us anything, it's that people are just not going to ask themselves pointless questions like that.
You don't get a choice. You have to deal with whatever comes down, and what comes down will have pretty much all been created on Windows systems. The key thing to remember hear is that people are not writing content for Moonlight. They are writing it for Silverlight. If it stops working on Moonlight they're simply not going to care when it boils down to it.
Really? These are well worked standard tactics from the past twenty-five years. Do they really need to keep being explained?
Parent
Re: (Score:2)
No, it isn't cross platform. Just tested (w/log) (Score:3, Insightful)
http://www.microsoft.com/Silverlight/ [microsoft.com]
Allowed the site in no-script.
Hit the "click to install" button.
And it downloaded a file called "silverlight.exe"
I clicked on it, and Firefox asked me to choose an application to open it.
I opened a terminal, and here's the results.
[mike@orion ~]$ l Silverlight.exe
-rw-rw-r-- 1 mike mike 1427520 2008-06-02 18:23 Silverlight.exe
[mike@orion ~]$ chmod 775 Silverlight.exe
[mike@orion ~]$
bash:
Re:No, it isn't cross platform. Just tested (w/log (Score:3, Informative)
http://www.apple.com/downloads/macosx/development_tools/silverlight.html [apple.com]
Well, that right there satisfies 'cross platform' as far as I'm concerned. I mean sure, it might not run on -every platform- but very few things that call themselves cross-platform run on my Amiga.
Of course, this is slashdot, so by cross-platform you must mean does it run on linux... and apparenty the implementation that DOES is called Moonlight...
Linux:
http://www.go-mono.com/moonlight/ [go-mono.com]
Does that count as cross platform support
Re:What's MSFTs Point? (Score:5, Interesting)
I still remember when most users were using Netscape browsers and Microsoft had a pitiful browser they wanted everyone to use instead. Many technical users pointed out that Netscape was cross-platform and a better choice for a browser. So, Microsoft created Internet Explorer for Macs, Unix and Windows to show that Microsoft understood the importance of a cross-platform browser and would continue to make the browser for all platforms for free. Once they propagated their browser to the bulk of the users, these cross-platform versions stopped being updated. Of course, it was all just a ploy to gain market dominance by confusing the marketplace.
I wish people were smart enough to realize that this latest attempt to tie Ruby to Microsoft is simply the same tactic, used repeatedly by Microsoft, to confuse a marketplace while jamming more poorly conceived Microsoft software into businesses that are not clever enough to look further into the future than the current quarter. Sadly, past examples show that business managers will not learn that Microsoft does not have the best of intentions when they announce any new technology.
Parent
Re: (Score:3, Interesting)
Re:What's MSFTs Point? (Score:5, Funny)
Since Silverlight isn't cross platform, why bother?
What are you talking about? It runs on all modern versions of Windows.
Parent
Re: (Score:2)
http://developers.slashdot.org/comments.pl?sid=571487&cid=23631965 [slashdot.org]
But I really don't see the last part of it comming, I think Ruby is a little to "Stable" unto itself for Microsoft to really be able to pull it off, Ruby will just continue on...
Re: (Score:2, Flamebait)
It has been quoted by Balmer, MSs entry into open source is "to bring better value to OUR customers" (emphasis is mine). If they get RoR developers to make Silverlight front ends, it benefits mainly MS customers (euphemism for MS may make more $ sales) - goal met.
Re:What's MSFTs Point? (Score:5, Insightful)
As opposed to, hm, Apple, which definitely does not want to benefit primarily Apple customers. Which is why iTunes has been released for Linux... ??
Plus, open source people definitely want, primarily, to benefit people that don't use open source.
Seriously. What business DOESN'T want to bring better value to their customers? If your object is to benefit people that aren't your customers, your company (or your investors) won't last long.
If you're going to flame Microsoft, do it on good grounds.
Parent
Rails. . . In the Browser? I'm confused. . . (Score:2, Interesting)
Also, slightly off-topic, but
Re: (Score:2)
Guys, I got this. (Score:2)
Ooooo, aaahh, dude.....um, yeah. Uh, some folks here are a bit sensitive about that....if you know what I mean....
Re: (Score:2)
It's of little concern that they are not inventing their own version of Ruby, they are only modifying to use it, then you won't have to have OSS as MS will have a
Re: (Score:2)
Because there's a whole lot of idle CPU cycles out there, and it's a lot faster and cheaper for people to render things on their desktop rather than have your server crunch and send it back through the web.
Ajax/JavaScript (Score:3, Interesting)
Don't get me wrong, I don't necessarily think that something like JavaScript, where the DOM can be manipulated dynamically to create more dynamic webpages, is necessarily a bad thing, or Ajax where data can be sent to the browser to render into the DOM. There could, potentially, be the chance for there to be some kind of buffer overflow in the browser that attackers could exploit - but that is potentially even a problem with straight html + images. I just have to trust the browser developer to do a decent j
Re: (Score:2)
Seriously, for Web Applications which follow the standards, it's a write-once, run-everywhere situation (well, mostly, except for those places where IE mucks things up.) Want to support Windows? It works. Want to support Linux? It works. Want to support Mac? You get the picture. Any platform with a browser which adheres to the standards can "run" your web
Re:Rails. . . In the Browser? I'm confused. . . (Score:5, Informative)
Yes, and it utilizes scriptaculous and prototype out of the box for client-side programming like DOM Manipulation and Ajax calls.
Question 2. thought SilverLight is a Flash-clone, for implementing client side interfaces and rich media playback?
Well, not really a clone, more like a competitor. It doesn't utilize ActionScript (which is essentially a JavaScript clone) but instead C# or other related MS
Question 3. Is Microsoft talking about a SilverLight-based user-interface which connects to a Rails backend running on the server?
Yes. The same thing can be done with Flash, utilizing things like Ajax calls and JSON or XML parsers.
Question4. Or actually Rails running in the browser?
No, Rails is a server-side technology, a web application framework, similar to J2EE, POJOs + Hibernate/Spring, TurboGears, etc. etc.
Question 5. What benefits would Rails in the browser bring you?
None, because the question is invalid. Rails is a web application framework, and by nature is dealing with server side technology.
Question 6. Also, slightly off-topic, but is anyone else concerned about the security implications of pushing more and more languages/capabilities/functionality into the web browser, which can be controlled by scripts/code loaded from remote, un-trusted, servers?
Of course, but that's true for any application (i.e. Office Macro Viruses).
Question 7. Why can't a web browser just be a web browser?
Because things evolve and progress demands that web applications be much more interactive than simply static forms and web pages. The world is no longer simply hypertext links. Because rich web applications with interactive interfaces are the logical evolution of the web.
Parent
Re:Rails. . . In the Browser? I'm confused. . . (Score:5, Informative)
That is, you can have a PHP page generate a bunch of ECHO statements that make up valid silverlight markup and you're good to go... So that you use PHP, ASP.NET, Ruby on Rails, whatever... markup is markup. Instead of outputting the markup for an HTML form with HTML input, you output the market for a canvas with whatever controls Silverlight supports... its still just text interprated by the browser, with a little bit of Javascript to inject it in a placeholder (usually a DIV tag). It becomes part of the DOM to some extent, can be manipulated with normal javascript, etc. It is basically just a fancier more integrated DOM extension, than anything else.
To make things short, there's basically no "linking" involved between the two. You just change the format of the string you output, nothing more, nothing less.
Parent
Re: (Score:3, Insightful)
Microsoft has lost control of the web (Score:4, Insightful)
When did Microsoft ever "control the Web"? (Score:5, Insightful)
Parent
Re: (Score:3, Informative)
Help them recover it, use silverlight.
hahaha. No. Flex/Flash is a much stronger implementation of this technology and it is already platform independent. With an Eclipse-based IDE, Open source media and remote data servers and AMF, why bother with silverlight? Frankly, as a web developer, I have enough headaches with Microsoft's loose implementations and platform lock-in. They did this to themselves and they've been left in the cold. I really don't care if they freeze their butts off.
Until we have a full OSS RIA Client VM ... (Score:5, Insightful)
I like Flash and it's a remarkable asset. But I've never fully trusted these guys and my trust in them isn't growing.
Yet it looks as though after 10 years Sun is finally getting serious at attempting move towards RIA territory. If JavaFX [javafx.com] is halfway decent, it could actually become the new king of all things RIA we've all been waiting for. If the core components of it are open source and the reference implementations aswell, then we're all set for a bright new future of RIAs.
Re: (Score:2)
Re:Ruby stinks anyway (Score:4, Interesting)
They want it so that no matter which language you prefer, you can use their technology, for better or worse. It is quite a brilliant really. Why should the language be tied to the platform anyway? That I pick native compilation, the Java runtime, or the CLR.... I should still be able to use the language I want.
(Side note: I despise Ruby. Doesn't mean I think it shouldn't be offered as an option...)
Parent