Windows developers can now port Visual Basic applications to Linux without modifying their code, using an open source project backed by Novell. The Mono project has built a compiler that lets developers code using Visual Basic inside Visual Studio or other preferred tools environments and run the Visual Basic code on non-Windows platforms without the time and cost of modification.
If this proves to work as advertised, you just know loads of Win only VisBasic dev’s are gonna want to try it.
Looks like MS are not the only ones able to spin this patent deal to they’re advantage. It looks like at least Novell are actually trying to make good on they’re promise at interoperability, which is more than you can say for MS.
Looks like things are heating up. I wonder what ever will be next?
What this brief blurb fails to mention is that this is Visual Basic .NET. And Visual Basic 6 is not the same, even Visual Studio has a tough time going form VB6 to VB.NET.
In my eyes, the VB6->VB.NET converter might as well not exist. I have yet to even semi-successfully convert a project with it.
In my eyes, the VB6->VB.NET converter might as well not exist. I have yet to even semi-successfully convert a project with it.
And it shouldn’t, too.
I read the link and the subsequent text on the update page at the Mono homepage, and I’m still a little confused. I’m hoping a Mono fan can shed some light for me. Mono implemented the CLR from scratch and re-implemented supporting frameworks that they needed to run on other platforms. Why wouldn’t VB.NET code compiled for the CLR already be able to run on Linux or any other platform with the Mono CLR? Is the new feature that you can now also compile the VB.NET code on other platforms rather than compiling under VS or it that there were frameworks referenced by standard VB.NET applications that had yet to be ported? Thanks for the insight.
I don’t get it either
Yes, you could already run pre-compiled VB.NET code on Mono. The new “breakthrough” feature is that it will now compile in Linux as well. Certain projects like ASP.NET require on-the-fly compiling, so VB code didn’t work for them before this. MonoDevelop now supports VB as well as C#.
Edited 2007-02-22 18:14
Eeeh, there were parts missing relating to visual basic features in the framework; I am not too sure what the status of the framework is given that they’ve pulled down the site which used to have whether a part was complete.
I’d love to see Sun embrace mono so then atleast when a customer wants C#/VisualBasic, they can still pitch a system running Solaris, and at the same time, the consumer gets exactly what they want – coupled with the IP sharing agreement between Sun and Microsoft, it would be all kosher to use it, without worries over Microsoft trying to exact royalties at a later date.
VB.Net actualy has a bunch of extra stuff that adds onto the framework. Mostly stuff to make some of the oddities of the VB.Net language work on the CLR. VB.Net 2.0 has even more odd things. What they have done is made it so that you can not only compile, but run VB.Net programs on Linux. It’s not 100% perfect yet (2.0 support isn’t all there yet) but it’s better than nothing.
Isn’t it amazing that the day after Microsoft’s Steve Ballmer makes a big hoopla about Intellectual Property Rights and Linux that you have Novell (SuSE) making such announcements. Clear coincidence, I’m sure.
There’s a more detailed article at Linux-Watch:
http://www.linux-watch.com/news/NS5656359853.html
From the article:
De Icaza also added that these improvements in Mono owe nothing to Microsoft and Novell’s recent technical partnership.
Well, I actually heard about this a day or two ago. It’s just now being posted on OSAlert. So, your timing conspiracy theory may not hold up.
Mono has been around since 2001, and C# has run on it since day one. all they did was implement a VB compiler, that’s no real breakthrough, though it may be pretty useful
It could always run VB.NET code compiled into CLR bytecode though right? The new capability is therefore the native compiler?
Agreed…the word ‘breakthrough’ is a rather sensationalistic, head-line grabbing word in this context.
But then, such is the way of ‘The Register’.
I still think it’s sad that ‘interoperability’ these days involves one company creating something, then other companies and volunteers spending masses and massess of time and effort to reverse engineer and re-implement it.
It seems one is clearly more passionate about computers and the wellfare of the market than the other.
You’re totally right, of course. However, the tide has shifted just enough over the course of the past five years to change the way the IT industry evaluates software and development solutions. IT is now conscious of the MS lock-in and attempts to avoid adding new MS API dependencies wherever a practical alternative exists. This is why Windows users will never experience the full capabilities of Vista. Many of those nifty APIs will be left largely unused for lack of an open and portable implementation.
Today’s reality is that there are two kinds of libraries: those with open implementations and those which fail to achieve much market penetration. Yesterday’s libraries will be around for a long time, however, and it unfortunately falls on the OSS community to provide a migration path for those that require them.
It would be nice if you back up your statements with some evidence.
Where are all the 3rd party software apps on linux?
I use linux as well but the market is very, very small compared to Windows.
It actually seems like Windows developers don’t care much about crossplatform software.
question is, what do you define as third party when it comes to linux? stuff not supplied with a distro? stuff not made by open source groups? that you have to pay for it?
because if you look at it one way, most everything that makes up your average distro is a collection of third party software running on top of the linux kernel.
Where are all the 3rd party software apps on linux?
There aren’t very many of what you would traditionally call “third-party” software products for Linux. However, the philosophy of free software is that the vast majority of mass market software (applications as well as servers) are commodities. The third-party space in the Windows ecosystem is artificially large due to the closed platform. End-users and corporations are forced to pay extra for basic functionality that most end-users and corporations need.
If you need something unique for a niche or custom solution, you should have to pay for it. There’s simply no more economical pay to provide this functionality. But everyone needs a word processor, and most developers need an IDE. They should come with your software platform, included in whatever price you pay if you buy a commercial OS, because they are basic necessities. Basic necessities should be “first party,” and that’s why there aren’t so many third part applications for Linux.
It actually seems like Windows developers don’t care much about crossplatform software.
Sometimes it seems like Windows developers don’t care about much of anything that’s important to users. What goes around (eventually) comes around.
“It actually seems like Windows developers don’t care much about crossplatform software.
Sometimes it seems like Windows developers don’t care about much of anything that’s important to users. What goes around (eventually) comes around.”
Just to mention it: “Windows” is so famous in Germany because it’s all in german. Is it? No, it isn’t. You have your base system in german, “Nero” in german, and maybe a pirated copy of “Office 2000”. Most additional software is not availabe in german.
Why is this? Is there no internationalisation “wrapper” as it is in KDE, or the gettext framework, for example?
Another question, maybe it’s not important, but: Why should a “Visual Basic” developer be interested in a Linux platform to port their applications to? Usually, a “Visual Basic” developer makes a program for “Windows” because his customers want it that way. What benefit could he have in saying: “The program runs on Linux, too.” Typical question: “What is Leenuggs?”
Don’t get me wrong. The article demonstrates how good Linux is in regards of interoperability where expensive MICROS~1 products sill are lacking. But where is the benefit assumed to be?
If I (as a developer) want to be interoperational, I usually rely on some standardized framework, such as Qt or Java allow to use. Why should I uuse something like “Visual BASIC” which reliss on som version of VBRUNn00.DLL?
From the article:
Should this happen, Microsoft will have to decide how to work with Linux and open source vendors to ensure it remains relevant to Visual Basic developers. In recent years Microsoft signed a number of technology agreements with open source middleware and application vendors to keep developers on-side by ensuring Windows worked properly with open source.
They could add a term to their EULA that allows you to run a VB application only with a MICROS~1 “Windows” OS license and prohibits using a noncertified application anywhere else.
If I (as a developer) want to be interoperational, I usually rely on some standardized framework, such as Qt or Java allow to use. Why should I uuse something like “Visual BASIC” which reliss on som version of VBRUNn00.DLL?
Qt and Java are no more “Standardized” than the .NET framework – the framework that modern VB uses.
[…] Most additional software is not availabe in german.
Why is this? […]
Because no one wants to hire a translator?
Detlef
De Icaza seems to relish the chance to bring these things to Linux, though i’m not sure why. Maybe he’s still hoping for that job at Microsoft on the IE team?
He’s pro-OOXML, pro-.Net, pro-everything i’m not.
I can’t reproach someone being pro-.Net if that someone heads the open-source implementation of .Net for years… you have to believe in what you’re doing…
I’m not sure he’s pro-OpenXML, but you could be right on that. In any case, Miguel relishes the chance to bring Windows interoperability to Linux because that’s what the prospective customers are asking for. You have to do everything you can to make the customers happy, even when they don’t really want what they think they want. Humor them.
Novell SLED/S is simply not targeted at folks that hate Microsoft’s guts and refuse to use their technologies. It’s targeted at folks that hate Microsoft’s guts but have no practical migration path away from their technologies.
I don’t think it does Visual Basic 6? This might seem irrelevant now, but I can vouch for everybody from small companies to large enterprises have VB6 code laying around /everywhere/. I’ve worked in a number of offices since 2001 and have not met a business that hasn’t utilized VB6 or VBA somewhere or other.
I don’t think it’s irrelevant, but these things take time. This is a big step forward. Improvements are inevitable.
“This might seem irrelevant now, but I can vouch for everybody from small companies to large enterprises have VB6 code laying around /everywhere/.”
And more than likely it’s already “laying” on a server somewhere and thus doesn’t need to be moved to the *nix platform.
This doesn’t benefit existing code…no business is going to move existing code to a new platform just for the sake of moving it.
The real benefit to this is that developers can write VB code on a local Windows machine using Visual Studio, and then check the code in without having to precompile it first, meaning it can be built on any number of platforms, and thus gain optimizations based on the OS it’s compiled against. At least that’s the biggest benefit I see at first glance.
This doesn’t benefit existing code…no business is going to move existing code to a new platform just for the sake of moving it.
You’re absolutely spot on. No one is going to move from VB6/C++/COM to VB/Net (a huge re-write in itself where I don’t see many companies that are keen), and then move to yet another platform in Mono. You have to move to yet another Windows platform first for Mono to be relevant for anyone.
There is no business case for a lot of people even putting the huge time and effort to re-write for .Net, let alone getting to Mono via .Net.
The real benefit to this is that developers can write VB code on a local Windows machine using Visual Studio, and then check the code in without having to precompile it first, meaning it can be built on any number of platforms, and thus gain optimizations based on the OS it’s compiled against. At least that’s the biggest benefit I see at first glance.
That’s not exactly right. What it means is that you can write and compile on Windows in Visual Studio, and deploy to Mono (on Linux or other) without recompile.
It’s way better than compiling on multiple platforms.
“That’s not exactly right. What it means is that you can write and compile on Windows in Visual Studio, and deploy to Mono (on Linux or other) without recompile. ”
I though this functionality already existed? I think I’m confusing myself (and the vagueness of the article certainly didn’t help any). Can I:
A) Write VB.Net code on any machine, then compile the raw .vb files into a valid Mono assembly on any machine that has Mono installed?
B) Write and compile VB.Net code on a Windows machine, and then run the resulting assembly on any machine that has the Mono runtime installed on it?
C) all of the above?
I thought B was always possible via the mono runtime available for Windows for some time now. I’ve always been a bit wary of not being able to target the specific environment (processor, OS, etc) at compile time due to the .Net compiler being able to optimize itself at compile time based on the platform it’s running on. I don’t know if Mono does this, but I’m assuming it does.
If I can write once/build anywhere (whether or not I have Mono installed locally), that’s definitely big news. If not, this is a bit ho-hum.
You were right originally – B was always possible, and now A is as well.
iirc, VB have never been compiled, just a interpreter and script files wrapped up into a single exe.
and not even then could it run on its own. one would also need a set of special VB libs matching the version of the VB used.
the change now is that said libs have been replaced with .net…
Edited 2007-02-22 23:16
You are remembering incorrectly then. VB apps compiled down to native binary exe’s/dll’s and were not interpreted. They were fully COM compatible as well, meaning they could be used by any other COM aware language, and you could also use COM libraries written in other languages in your VB project.
You are correct in that the target machine needed the VB runtime, but that’s no different than needing the CLR/JVM etc.
Purists love to bash VB (and for good reason), but for what it was (a purely business oriented language) it was fantastic.
http://en.wikipedia.org/wiki/Visual_Basic
it seems we are both right…
pre-VB5 it was interpreted…
that’s really really cool!
I just wrote a programme in VB and I try KBasic and RealBasic to port it, whitout a big succsess. But that’s sound great!
Since a VB compiler is here, maybe an open-source VB IDE is on the way. VB is great for experimenting with programming. It may become the HyperCard of OSS in the future.
You’re looking for MonoDevelop.
MonoDevelop’s GUI designer doesn’t even work with VB.net.
Keep in mind we’re talking about VB.NET here, not VB6. VB6 was the HyperClone, and VB.NET is closer to being C#’s evil(good?) twin
“Keep in mind we’re talking about VB.NET here, not VB6. VB6 was the HyperClone, and VB.NET is closer to being C#’s evil(good?) twin”
Even by adding something like “Visual” or “.Net” to BASIC, doesn’t BASIC stand for “Beginner’s All-purpose Symbolic Instruction Code”? I’m just asking if there are still BASIC influences on all this fancy graphic development tools. I can’t imagine why an educated developer should still stick with a language derivate of BASIC or what it is to be used for, because I left BASIC somewhere on the way out of my childhood (KC85/3)… just kidding, don’t mind.
I wonder how much easier VB.NET is than C#. VB.NET deals with more or less the same objects as in C#.
Granted, the syntax is very vb6 like, but vb6 and VB.NET are quite different beasts.
The difference between C# and VB.NET is that in VB.NET you have to type more
Thought some folks might want to read this. From a day ago.
http://www.zdnet.com.au/news/software/soa/Ballmer_repeats_threats_a…
Still waiting on a complete .Net 2.0 and Winforms support. A nice IDE could be nice also, as it’s pretty difficult to do better than Visual Studio, which IMO is the best IDE currently.
“””
it’s pretty difficult to do better than Visual Studio
“””
I am no VB programmer: I think the word that describes me best is “dilettante.” But I think VB without Visual Studio loses a lot of it’s value.
Unless of course one still writes the code on Windows and just compiles it on Linux.
You have to understand ASP.NET web applications. A web applications compiles the page on the fly. You can modify the page and the runtime will recompile it automatically when the next user accesses it. This on-the-fly compilation is necessary to write ASP.NET apps. Thus, as the article mentions, users can now create VB.NET web apps using Mono. Before, VB.NET support was limited to building VB.NET Windows Forms apps, compiling them in Windows (at which point they are CLR code), and then running them on Mono. Now, you can totally code VB apps under Mono, both Windows Forms and ASP.Net web apps.
Personally, I don’t see the big deal whether I code in VB.NET of C#, as the code will be nearly indistinguishable (same API, same function calls, essentially the same code) except for the syntac difference (semi-colons, Dim X as String vs. String X). However, these minor differences in formatting seem to be a big deal to some developers, who swear by one of the other. I wouldn’t hire a developer who couldn’t easily convert from one to the other (bacause you will often need to to user sample from the Web), but that’s just me.
The good news is this opens up the Mono platform for a large group of users. Come on in, VB Guys!
Edit: Forgive the title. Oops!
Edited 2007-02-22 18:08
This on-the-fly compilation is necessary to write ASP.NET apps. Thus, as the article mentions, users can now create VB.NET web apps using Mono.
This may be the point of view from people who think that Mono is the answer to the prayers of people porting to non-Windows environments, and those who live in the open source world, but think about it for a second.
You’re creating a web application that doesn’t require Windows as a client, just a browser, and you’re then writing applications for a Windows based server platform in ASP.Net, and then porting it to a non-Windows environment with Mono?! That’s right people. For Mono to be relevant people will have to port all of their applications to .Net first, and then see some point in porting them to Mono.
If anybody thinks that makes sense then I’m sorry, you don’t understand development that is going on out there in the world.
However, these minor differences in formatting seem to be a big deal to some developers, who swear by one of the other.
No. There is zero difference between VB.Net and C#. The difference is purely syntax. Many VB developers who have been forced over to VB.Net are simply learning C# now, because what VB once was – a rapid application environment – is now gone. It’s merely yet another .Net language. What it has been replaced with is an environment and language that is full-blown object oriented and is anything but the RAD development that made VB relevant to the people who used it.
Come on in, VB Guys!
VB.Net != VB in any way shape or form. What really is important is the huge amount of VB code still out there and the huge opportunity it represents since Microsoft dropped VB. However, that opportunity has been lost.
No. There is zero difference between VB.Net and C#. The difference is purely syntax
Actually there are some differences beyond just syntax. Static initialization, out parameters, etc. Zero is not correct, but I would agree they are fairly insignificant.
and you’re then writing applications for a Windows based server platform in ASP.NET
If I bothered to write my ASP.NET Mono application on Linux/BSD using Mono, I’m guessing I would deploy it on Apache using mod_mono, mostly likely on a Linux/BSD server, not on a Windows server.
There are other fundamental differences as well, namely the fact that by default VB passes parameters by value, whereas C# passes them by reference. Of course some would say this is the safer route, however there are plenty of so called “programmers” who don’t understand the difference.
This can lead to larger footprints if you start passing around large objects such as datasets, or collections, etc.
If I bothered to write my ASP.NET Mono application on Linux/BSD using Mono, I’m guessing I would deploy it on Apache using mod_mono, mostly likely on a Linux/BSD server, not on a Windows server.
So why are you using .Net then?
If I bothered to write my ASP.NET Mono application on Linux/BSD using Mono, I’m guessing I would deploy it on Apache using mod_mono, mostly likely on a Linux/BSD server, not on a Windows server.
So why are you using .Net then?
I happen to like Java for a lot of things, but I could certainly point out areas where .NET is superior to it. Maybe the developer is just already familiar with C# and doesn’t want to learn a new language. There are lots of reasons, although I’m sure the scenario isn’t too common yet.
I wouldn’t touch VB with a 10 foot pole though.
The title doesn’t specify .Net but there are other variants of Visual Basic out there and in use which have nothing to do with .Net or even share the exact same syntax (<=VB6, VBA). I guess when mono is mentioned it sort of gives it away, though still misleading at first glance.
It’s getting harder and harder for people religiously opposed to open-source software to use a computer without compromising their morals.
Samad: Why not just make a new Hypercard? The original was developed by a tiny team for tiny systems (back when the 68040 was blazing fast); it wouldn’t be hard at all, as long as you don’t fall into the trap of adding too many complex new features (as many of would-be successors of Hypercard have done).
Why not just make a new Hypercard?
There are several already.
Revolution, which is commercial, and almost a clone with lots of extensions. PythonCard, which is GPL but more of a gui on top of Python. And further away in detail, but still close in spirit, Rebol. Closed source, but free.
But two things come to mind:
1) Microsoft and their position on Visual Basic – is it patented, and are they going to take advantage of this and enforce (which they’re entitled to) their rights as the IP holder to ask for payments relating to its use.
2) Mono is in dire need of a decent IDE; The day when you can drop widgets onto a forum, double click on the widgets, assign code and then click on build/run, then you’ll have progress – currently right now its stuck 30 years ago with the need to manually write makefiles and worse still, use seperate applications like Glade and gluing the front code with the back code, which maybe alright for large projects, but for small ones, it can be time consumeing and a waste of time.
3) It opens up the question in regards to ‘how dependent are we on Microsoft technology’ – we’re heavily reliant on SMB when shouldn’t the better thing to do is povide an easy to use client for Windows which utilises LDAP + NFS instead of relying SMB?
1) Microsoft and their position on Visual Basic – is it patented, and are they going to take advantage of this and enforce (which they’re entitled to) their rights as the IP holder to ask for payments relating to its use.
MS could enforce their patents, but it’d likely be for specific implementation details or copying of proprietary libraries. I don’t think they’d enforce them just because someone creates an alternative implementation since they publish the language spec on their website.
http://msdn.microsoft.com/library/default.asp?url=/library/en-us/vb…
http://www.microsoft.com/downloads/details.aspx?FamilyId=6D50D709-E…
True, but at the same time, I am still concerned – they need to come out with a blanket declaration covering their intellecualy property; what are they going to expect payment for, what will they allow to slide along with out needing to worry about possible litigation at a later date.
They have declared that they’ll allow others to implement OOXML and XPS, but it still leaves the door open to other technologies that would be great to be implemented, but raising concerns about the legality of it.
Anything listed under the OSP is free for implementation.
http://www.microsoft.com/interop/osp/default.mspx
Other resources with details about whether an MS technology is available for licensing and under what terms include:
http://www.microsoft.com/interop/
http://www.microsoft.com/about/legal/intellectualproperty/default.m…
On the interop page, most of the interesting bits are under the Access tab.
All they’ve done is write a compiler for yet another language for Mono. Now, if this had been about Gambas or Real Basic (and WINE), and the Mono and Novell people really getting involved with them so that the huge amount of classical VB and COM code could be used on a non-Windows platform in a shiny new environment – that would have been news.
You see, in the move to .Net Microsoft crapped on VB developers. For the first time you could not take VB code from one development environment and compile and run it in the new one. This has left an awful lot of VB code in limbo (well, on VB6 at least), where there is simply no business case at all for re-writing in Microsoft’s shiny new pet project. Any re-written application will not run faster, run better, provide any new features, be less bug free………….pointless in a word. Microsoft’s MSDN department may believe everyone has the time, money and is so truly excited about .Net to do that, but the reality is anything but.
Now if Novell or anyone else really wanted to get Linux desktops into any average company, their best bet was to take advantage in this bit of Microsoft’s stupid thinking and help VB developers out. Make sure their code could be ported and make them feel at home.
As it is, VB developers are going to have to re-write for .Net and then port to Mono. Never going to happen, and it’s really sad that an awful lot of people think that this is news and that this will help people move from Windows in any way. The people who created Mono obviously haven’t met very many Windows developers or seen any Windows development environments out in the wild.
Edited 2007-02-22 22:33
Not to be mean, but after spending many years as a Windows developer in the COM world (VB and Visual C++), all I can say is good riddance COM! Welcome to the world of coding for VM’s. We have the choice of the CLR, the JVM, and soon Parrot (Perl6, Python, et al).
Honestly, I enjoyed by VB days, but the writing has been on the wall for COM-based application development for many years. It’s a maintenance nightmare.
However, if you long for the good old days of Basic Programming (which .NET is not), I would recommend Liberty Basic. It is fun, easy to learn, and in very active development. Version 5 will run on Windows/Mac/Linux.
However, if you want to remain relevant in the Business world as a developer, wrap you brain around Java, .NET or one of the dynamic languages like Ruby/Python/PHP.
Growth is painful, and we rarely get to vote on it!
“Welcome to the world of coding for VM’s.”
I hate to be nit-picky, but Classic VB was an example of one of the first mainstream (i.e. for business use) examples of a VM. Also, while new development against COM may be on the severe decline, COM itself isn’t going anywhere for a long time, hence the heavy investment by MS in .Net Interop. Like it or not, MS developers still need to have a basic understanding of how COM works (reference counting, interface driven development, etc) since Windows itself is still largely COM driven.
COM itself wasn’t the nightmare…compared to say, CORBA it was on order of magnitude easier to understand and implement. Unfortunately it was the implementing that gave it such a bad rap. Too many careless programmers (including myself).
Are you kidding? COM *was° a nightmare.
Agreed, but compared to something like CORBA? *shudders*
Yay this means we’ll have yahoo flooders and trojan tools
Does this VB compiler only apply to Linux or does it work on all platforms supported by Mono, such as System X, FreeBSD, and Solaris?
It should work everywhere mono is installed, since the compiler itself is written in VB.NET.
The official page has a lot more info than the linked article.
http://www.mono-project.com/VisualBasic.NET_support
Edited 2007-02-22 23:51
Now I’ll be able to compile my VB.NET 2.0 apps written in class nativly, since we’re taught VB.NET rather than C# and Java only in the introductory classes.
Are the libraries for accessing databases, which are what I need for this semester, accessible through MonoDevelop?
ah, I actually thought from the title you meant Visual Basic rather than Visual Fred
VB on Linux a breakthrough?! Sounds like a setback to me..
Good to hear this, but I’ll be really glad to hear it’s compatible with the 2.0 framework since I’ve been spending my time digging through the beast.
I wrote and compiled a “hello”-ish (but mildly functional) VB.mono app under OSX almost a year ago. The system.windows.forms namespace didn’t really seem to work yet, but I could console the heck out of it. I can only assume it’s progressing faster on Linux as that’s mono’s (native?) platform (is it?).
Yay for compatability!
I think this is a mistake.
In fact, I think the Mono thing is a huge mongo mistake for the open source community.
Microsoft is buying its time, and waiting too see how infested “mono” becomes in distributions world wide.
It has the plan, and the corporate precedent with its deal with Novell, to enforce its intellectual property rights.
It also has a War chest the size of most small third world countries total GNP.
This is a very fool hardy endeavor using that sort of software API in the patent and copyright climate here in the USA and its all going to blow up in everyones faces.
Stay away from Mono, especially if you are developing applications in the United States for Linux or its colonies like Austrailia or Japan.
Stay away from Novell and anything that has a Ximian logo on it.
Stay away at least until Microsoft’s war chest is down to a manageable size or the patent/intellectual property laws are changed in the USA.
Please do reward companies like SUN that export technology to assist their business customers by open sourcing the products and change the value of I.T. from software licenses/patents to people and community business relationships.
-Hack