Visual Basic on GNU/Linux
jeevesbond writes "The Mono Project announced that it has developed a Visual Basic compiler that will enable software developers who use Microsoft Visual Basic to run their applications on any platform that supports Mono, such as Linux, without any code modifications."
"With no code changes"? And it works? Call me skeptical, but I'll believe it only after I see it. This seems a bit far fetched, considering how tied to Windows Visual Basic is. I use VB6 daily, and it would be great if that ran smoothly under Linux, but this project only works with "VB 8.0", so I'm curious to hear if this thing actually works.
I don't respond to AC's.
I love it. The list of choices is growing and growing. The fact that Mono can do this, and after having struggled with WINE, this is a massive leap.
This will get more .NET developers over to Linux. Then, it will get more .NET developers too look a other ways of doing things.
There are those will decry this as bad, but think about the possibilities.
Politics is the art of looking for trouble, finding it everywhere, diagnosing it incorrectly and applying the wrong fix.
This is Visual Basic.NET, not actual Visual Basic...
If there were a VB6 compiler for Linux, that would be much more interesting to me.
-uso.
What you hear in the ear, preach from the rooftop Matthew 10.27b
But,
A) Most VB applications are tightly linked to OS and application-specific libraries.
B) Most applications that do not require those libraries are not written in VB.
C) Anyone versed enough in languages to be using MONO is probably not married to any language--and certainly not VB
So, other than being novel, what's the point?
From TFA: .NET framework. "
.Net or any other Microsoft born encumbrance.
"Novell Inc. sponsors Mono, which is an open-source development platform that aims to be compatible with Microsoft's
I'm not a fan of bringing Microsoft technology to the Free Software realm, not for purist reasons (although they are at least pertinent) but because, with this Novell-MS agreement in practice, it would not take a lot of effort for Microsoft to find a way to either forbid any non-Novell distros to use the technology or to wait and sue distros that include it (in case there is some patented technology included, mistakenly or purposely, and people know that, at least on U.S., everything is patentable, even the double click).
Furthermore, with Java becoming free as in free will, I don't see how free software benefits by having VB,
I believe that the formal specification of a language cannot be patented.
At least, I hope so, in order to believe that there's still some sanity in this world.
Your ad could be here!
...Drop objects on a form and define pieces of code that connects the objects. There wasn't any real programming being done....There was no "real programming?" Why don't you first define what "real programming" is? If in your case, you were defining pieces of code to connect the objects, you were behaving like a newbie - no offense to you.
On the other hand, I have developed more than 22 serious projects using VB and the forms you might have used. I agree VB was not a "wise" platform in many cases, but that was due to my employer's environment.
These projects/systems included cargo handling, hospital management, roster/scheduling in the hospitality world, schools and traffic management environments.
Let me tell you this: To a Joe User VB kicks ass big time as compared to anything in the Linux world. You can decide to be very simple and do forms as you might have done, or you can do some serious work like some of us have done.
Maybe because the application is already written and the vendor doesn't want to port it? After all, being able to operate with a single code base is generally a nice incentive to avoid creating ports.
GreyPoopon
--
Why is it I can write insightful comments but can't come up with a clever signature?
Yes, I did mean VB.NET. And I consider C# a bastardization of both C++ and VB.NET. It was Microsoft's way of telling Java developers, "Hey, we've got an easy to use language with C-style formatting!" In the grand scheme of things, there was no need to create it.
But now, they are essentially forcing people to switch to it by making the XNA toolkit use C# exclusively.
Miguel de Icaza appeared on the LUG Radio podcast, and gave a really good description of how this sort of thing fits into a coherent business strategy:
.NET.
.NET apps use, and they've been trying to pick off the APIs that will give them the most apps running in the real world on linux.
.NET people who want to make their apps more portable -- which mostly means doing things one way, using some APIs, instead of another, using other APIs. According to Miguel, they're getting a good response from .NET developers, who would like to see their stuff become more portable -- they'd love to see .NET pick up some of that "write once run anywhere" magic that java has. They'd like to not be locked in.
http://www.lugradio.org/episodes/69/
Basically, the argument goes like this. If you look at what's locking people in to windows now, it's not so much the big stuff -- office apps, browsers, email programs, etc. We have all of that stuff, and most of what we have is pretty terrific.
The stuff that locks people in is small and narrow -- software to do some odd, specific, business related thing. Some app that's tweaked to run scheduling in a dental office, or whatever. My mom has a travel agency, and she uses an app that manages all of her customers, and that's windows specific. I have a friend who installs burglar alarm systems, and he has software that programs alarms, and which only runs under windows.
There isn't one big thing that's locking people in -- it's thousands and thousands of small things. Everyone has something different, but almost everyone has *something*. And a giant chunk of those little things, now, are running under
The Mono guys have been using an automated tool that looks at what libraries
On top of that, they've been working with
The point that's getting lost in a lot of the fights over Mono and the infamous deal (about which I personally have many misgivings) is that Novell is mounting an incredibly audacious attack on the Desktop, and this sort of thing is a big part of it. They're not satisfied with servers.
I don't know if it will work, and again, every time I read something about Ballmer talking smack about linux, I get nervous about that deal. But at the same time, I sort of love the bigness of what Novell is doing, the audacity of it.
For whatever reason, Novell is doing an incredibly bad job of explaining all of this to us. Which is why I really encourage everyone to grab that podcast episode, linked above, and listen to what Miguel says about mono.
Which is, of course, the reason hundreds of thousands flocked to it when it was created. Right? Heck, they weren't even forced into it. Microsoft simply made the tools available.
I've seen environmentalists view a heavily-trafficked road and declare that building it was completely unnecessary. This seems like some of the same attitude.
I got my Linux laptop at System76.
A classic example are Outlook/Exchange admins. They consider themselves IT professionals, but very few of them whom I've met actually understand how the network infrastructure really works. They are, however, convinced that they do. :)
I know of one such guy who is supposedly a name in the Microsoft world, to whom other Exchange admins look up to (he runs a popular website on this stuff). He was actually completely unfamiliar with what port 25 was! He was under the impression that it was "a Linux thing". I tried to explain to him how email actually worked, but he just didn't want to grok it.
He was comfortable with his buttons, and didn't want to progress farther. Of course the IT infrastructure is the usual disaster, always requiring patches and the mailserver always having the usual Exchange problems. You just can't educate people like this that there are better, more reliable ways.
Sorry if this pops some people's bubbles, but buttonpushers aren't programmers nor are they IT professionals.
In find it interesting that now Java, C#, and OO PHP5 (which as recently gained some credibility in the "Enterprise" world by Sun throwing their weight behind it in rolling out a Apache+PHP+MySQL - what they are calling an AMP stack) all have the very much the same syntax.
I think it's turned out to be a nice syntax for writing easily maintinable / clear code that people are broadly happy with. It nice not having to deal with wildly differnt syntax when changing languages.
No, it's the other way: There was no point in creating VB.NET
.NET as well. Of course what VB.NET turned out to be is completely useless to a VB6 developer, as nothing is compatible. VB.NET is simply the .NET library, with a VB6-ish syntax on top.
.NET was promised.
The only point of VB.NET was to be able to lie to VB6 developers and promise them that VB would be in
This in the grand scheme of things was completely pointless. Great, I can take my 70K lines of VB6 code, and... wait, no, it's not compatible, so even if I switch to VB.NET I'll have to rewrite the whole thing from scratch anyway. This is definitely not what was on anybody's mind when VB in
Since VB.NET is completely useless migration-wise, and C# was going to get done anyway, VB.NET is just a rotten bone tossed to the VB6 developers to get them to shut up. But I guess we deserve it, that's the reward you get for becoming dependent on a single vendor.
There. I said it. Now shoot me.
.NET came along - then I switched to VB.NET for the same reason. I never wanted to touch "classic" VB because it was a steaming pile of donkey poo, however.
.NET, it's mostly about the framework, anyway, as it's language-agnostic. You cannot get far if you don't know the framework; if you do, then the actual language is mostly irrelevant, the differences can be picked-up in half an hour.
But I honestly do prefer VB over C# because I find it easier to read. I have never *liked* the "C syntax". 15 years ago, I switched from Borland C++ to Borland Pascal (I honestly did!) because I enjoyed Pascal's verbosity. I used Delphi for a long time, until
It's not like I can't read C-style syntax or write it; I can. I do a lot of JavaScript programming, I extensively use both PHP and C# at work, but when it comes to personal projects, VB(.NET) all the way.
I guess it's just a matter of preference. Some people like && || !, some like And Or Not. Some like curly braces, some like Begin..End blocks. And with
That said, some things in VB irritate me. The stupid typecasting via CType(var, type) is something I wish would just die in favour of C-style (type)var. Multiline strings as well, and the root namespace is something I always forget to destroy when starting a new project...
Anyway, congratulations to the Mono team. When I get rid of Windows soon, in favour of Linux, I will be glad to know that my pet language is going to be usable for ASP.NET apps!
That's an awesome example, I have a similar one. One of my old Interns wrote a program in Cocoa for Mac, because he was a Mac fan and it was a prototype. One of my guys thought that it would be fun to learn Cocoa, so adapted and rewrote the application over several revisions. It doesn't do THAT much, the heavy logic is server side, but it's a pile of code and the developer that wrote it isn't with us any more.
Well, I had 8 people using that program, so what the hell, rather than re-writing/porting, we bought 8 Mac Minis and used those as desktops. Nothing they ran (besides this in-house orphaned program) required OS X, but Apple and OS X got the sales for that reason. Had it been written by the guy who was playing with Qt at the time, who knows, we might have Linux machines there.
Most Slashdot whiners have NO CLUE how computers get used, because they think that their home use of computers is at ALL indicative, or they work in an IT company or school... they don't understand how a few legacy applications may have multiple people (with their computers) can have the oddest software requirements if their job is built around an old legacy code base.
I just toured a potential partner's warehouse, his whole system is manual. The accounting is Quickbooks, the shipping is Fedex's software, and their "integration" is some only shopping cart solution where he can download the information into Quickbooks and Fedex... There is no glue code for managing the warehouse... But he has several people whose job revolve around these applications, and the computers and OS's are purchased to run these apps.
Let me count the ways...
I'm not claiming Java's type system completely sucks, it just hasn't incorporated any features from the last 20 years or so of programming languages.
Done with slashdot, done with nerds, getting a life.
Wait, what? I'm confused. Microsoft had the only Java runtime? The power to decide Java's fate was in Microsoft's hands, not Sun's? Sure seems like...poor planning on Sun's part, no?
I think it's pretty good for a static typesystem.. Compared to other statically typed languages, Java's type system is extremely rudimentary, and before generics, it was positively primaeval.
For instance, take the following Java code snippet: And the equivalent in Haskell: Both Haskell and Java are statically typed, and both functions have equivalent typing, yet there is a clear difference between their respective type systems.
Not only is the Java hugely more verbose, as it lacks any sort of type inference, the type system also fails to catch null values. In Haskell, there is no equivalent of the infamous NullPointerException.
> Which is, of course, the reason hundreds of thousands flocked to it when it was created.
.NET? Case closed. Tools with the same (or higher) productivity as .NET have been around for a while (see Borland Delphi), but were gradually edged out of the enterprise by convenient comprehensive software contracts with Microsoft--the old "why pay for another tool if we already get one for free"?
> Heck, they weren't even forced into it. Microsoft simply made the tools available.
Well, the WHY is a different can of worms entirely and has much more to do with the choices available to an enterprise developer than with any best-of-breed issues. Most enterprises adopt a single software development platform, and that often is Microsoft. Given only Microsoft choices, would you rather develop in VB6, MFC or
Microsoft created C# and stopped supporting Java in the windows environment. This is just another one of microsoft's "me-too" technologies that are essentially the same thing as something that is already implemented.
.net
PS2 -> XBox
Java -> C# &
Palm Pilot -> PocketPC
iPod -> Zune
It's like Microsoft feels that they need to be the market leader in every single market that includes a computer chip or software in the product. Instead of real innovation, they just reimplement whats already out there.
I got nothin'