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."
I wonder if this will include OS X Intel, which Microsoft claims they simply just absolutely cannot port VB to under any circumstamces ever. That would be pretty funny.
"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.
See also: "Ballmer repeats threats against Linux" thread below.
Care about privacy? Read this!
RealBasic may have just lost some customers...
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?
Until Novell apologizes for their M$ deal and withdraws from it, it's a trap.
'Once scientists, even the dim-witted social scientists, get muzzled, the Western Civilization is finished.' - oldhack
so which (non-vb-infected) operating system do I switch to now?
Great. That's like saying now you can eat your lobster with a fork made of frozen shit.
no thanks.
Don't get excited: This new and improved compiler, which supports Visual Basic 8.0 code, is bundled in Mono 1.2.3. In addition to Visual Basic support, this version includes many bug fixes and an almost complete ASP.NET 2.0 API (application programming interface) implementation. WebParts, however, still isn't completely supported.
"God fights on the side with the best artillery." - Napoleon, Marshal of France - speaking truth to power
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,
Interested in Free Open Source High Quality Zero-Hassle Basic on Linux? Try Gambas. Honestly now, aside from a nice proof of concept I consider this VB to Mono thing somewhat pointless. There are better Tools for easy GUI RAD.
We suffer more in our imagination than in reality. - Seneca
Maybe now we'll see some real development on Linux!
Wow... saying that actually made me vomit a little in the back of my mouth...
I'm trying to teach myself to set people on fire with my mind... Is it hot in here?
Yeah. Would you choose a neurosurgeon who pokes around people's brains in his spare time? I wouldn't.
I enjoy that this article comes immediately after the article about Balmer threatening linux vendors to "respect his company's intellectual property"
...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.
. . . I can play that game where the gorillas throw banannas at each other on my Ubuntu box now?
From TFA: "... this (VB run-time on Linux) was rewritten from scratch from Visual Basic by Mainsoft with some help from Microsoft."
So Microsoft actually provided consulting resources to Novell to make this happen.
Does this not worry anyone? What happens when I compile VB code on Linux via Mono on a non-Microsoft (i.e., non-Novell) supported GNU/Linux platform?
Any kind of BASIC -- except, possibly, one of the British dialects such as Spectrum BASIC (would need to get rid of LET, though, now we are no longer using single-key entry) or BBC BASIC (one of the later incarnations with ON ... PROC) -- would be bad enough, but VB? Why?
Je fume. Tu fumes. Nous fûmes!
A. At least if you need to move an application from Windows to Linux you at least have a fighting chance to meet the the deadline or get it done by budget. Most VB apps are actually just Heavy Duty Access Apps so the bulk of the code is portable, at least the important parts. The parts that do Windows or 3rd party calls are usually some silly little interface inhancement that could be fixed with a Mono 3rd Party Tool or making it yourself.
.NET over other languges, Company policy may force VB.
B. Many apps are written in VB including ones that don't need those libraries. VB is a general porpose programming language just because people snub their nose at it doesn't mean that it is used for things that don't requre those libraries. Many time it is use just because everyone know it to an extent so they make their programs with it to make sure they don't get stuck with a obsure languge in the future.
C. Porting apps would be easier if you can keep the bulk of your code, some people actually like
A lot of people are not passionate about what tools they use just as long as the work. with VB working in Mono it is the next step to making cross platform apps. Or at least giving them a fighing chance to port them.
If something is so important that you feel the need to post it on the internet... It probably isn't that important.
Yes I do. So all you MS hater, bite me!
Visual Basic was/is by far the most productive programming environment for client side UI desktop apps.
Drag/Drop components and fill out event handlers for each is simple, straight forward and effective which is the way I like to work. All client side UI apps should be created that way.
I think the next step for Mono should be a secure runtime (as in *NOT* ActiveX) for all browsers so that you can execute VB apps on the web. Burn in hell freaking XML, XHTML, Javascript, JSON, Ajax, A_Millon_Useless_Web_Framework, etc.
Have a nice day, come again!
a decent language for Linux. Now we will see a huge migration of people over the platform. You might as well shut up shop now Microsoft.
But seriously, I thought everyone hated VB?
Since this is about Visual Basic.NET, why did the Mono guys have to develop a new compiler? If .NET is oh-so cross-platform, the bytecode generated by Microsoft's VB.NET compiler should run on Mono's VM without the need for any kind of recompilation.
The only reason I can imagine for Mono having to recompile the source is that their VM is not compatible with the MS one and their compiler is spitting out bytecode that leaves out constructs not supported by the Mono VM. But then, that's clearly a bug in Mono and the whole compiler is just one big workaround...
Of course, having a compiler that will run on systems other than Windows means that development can be shifted to other OSes, but according to the summary and TFA, that is not what the hype is all about - it's about recompiling source so it will run in Mono.
I want to play GORILLA.BAS, dammit.
Slashdot Burying Stories About Slashdot Media Owned
Which is almost identical to VisualBasic, but has compiled on Linux for years and has cross-platform libraries for almost everything it supports and doesn't require Mono.
But, you know, whatever.
Comment of the year
for how long?
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.
. . .porting Microsoft Bob to the Mac.
I decided that behaving ethically was the most nihilistic thing I could do. - Paul Pavel
Almost 10 years ago there was pretty much what you want for VB5. I still have original announce email and even necessary binaries to try it for DOS, SCO, Linux, AIX etc. I can post binaries with readme and sample code if someone is interested. Let me know.
l opment.system/msg/3a0293334be4ec01
k sltd.com/vbvm.htmlc om/
http://groups.google.com/group/comp.os.linux.deve
http://web.archive.org/web/20010203155600/softwor
http://web.archive.org/web/*/http://softworksltd.
There are only a few very specific reasons why some people say GNU/Linux instead of Linux. If you believe in them strongly enough that you're willing to add those three entire syllables to the name, how on earth can you reconcile that with being indifferent enough to use the more common form "Linux" only a few lines later?
In fact, using them like that implies a certain interchangeability between the two. RMS must be turning in his grave.
Eeeeeeewwww
From TFA: .NET developers, 59 percent use Visual Basic.NET as their only programming language. Thus, as of 2006, at least 20 percent of all in-house business programs were still being written in Basic, according to the market analyst firm.
.NET programmers use only VB.NET, so therefore 20% of all bespoke software is in VB?
Though often disparaged by developers, Visual Basic remains one of the world's most commonly used programming languages. According to Forrester Research, 37 percent of enterprises use Microsoft Visual Basic.NET for development and maintenance of their in-house applications. What's more, among
Let's see...37% of enterprises use some VB, 59% of
Ghod, I hope the logic in the programs is better than the logic in that deduction.
-=Maggie Leber=-
FTA: "according to forrester research, 37 percent of all inhouse development uses VB."
.com shops, but for the rest of us who work for a living, C is pretty much the norm.
Say what? I've never worked in a place where VB was used, let alone the norm.
It may be used in a lot of
LANGUAGE WARS!
Someday, I'll have a real sig.
Where's the "Crimes Against Humanity" tag when you need it?
Everyone is entitled to their opinion, but tell me this...
Your comment is that "C# is just VB[.net] with curly braces"
Tell me: What would make it NOT just like VB.Net with curly braces?
I mean, it was written by a separate team.
It has a separate compiler (obv)
It has features not found in VB.Net (as you mentioned..)
It has a different name.
Really, the only thing that _is_ similar about them is that they both compile down to MSIL.
I'm just trying to understand your thinking.
And why is this different, than, say, C++ and C, which both compile down to machine code?
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.
Considering that while VB's a nasty language, there's quite a bit of internal business
applications written in it, without any easier route to get to something other than Windows
with, it is a bar to migration to MacOS, Solaris, or Linux. IF they've done it right and
haven't ran afoul of something MS has patented, this would be one less reason (And one of
the biggies, really) for many businesses to stay with Microsoft with their latest upgrade
cycle. It depends all on how many OCX components they've mixed into the thing to make
their app work in that case- but most of that can be worked around.
I am not merely a "consumer" or a "taxpayer". I am a Citizen of the State of Texas
I wrote a compiler that generated JVM classfiles from VB6 source code... well seeing as I only had 4 months to write it, it supported only a subset of VB6 (it's a fucking huge language). Worked pretty good.
Eh.. I think you already could 'run' a VB .NET compiled CLR binary on Mono. Mono is an implementation of the Common Language Runtime. This announcement means that you can 'compile' VB .NET applications on a Linux system. You already could compile a VB .NET application via a Windows system, and Visual Studio .NET--- and provided that you used an implemented subset of the .NET API, it would run via Mono.
I always thought that mono is a dumb project that will enable MS to make the stupid claims on OSS as it does.
The developers are wasting their own time and ours as community while making life dangerous for us OSS developers.
I will never touch anything that is even remotely connected to what MS is doing.
Big waste of time!!!
We already have a good visual native programming environment under Linux, it's called Lazarus and it's perfectly integrated into Free Pascal. Please give it a try: its stability and features improved dramatically during last year.
Before someone complains it's Pascal and not C, keep in mind that modern Pascal implementations allow the same level of shooting yourself in the foot of traditional C, ie lists of pointers to structures of arrays of pointers to functions returning... etc. Add threads, memory management, sockets, inline assembly and you get the point.
If you ever struggled with Glade or Kdesigner you'll find a much cleaner and productive environment in Lazarus.
isnt that a step toward a more user-friendly environment for Linux? i like my Linux mean!
How about developing a programming tool that was similar to Visual Basic that would program POSIX style code that could be compiled and executed in any operating system? It seems sometimes the open-source community that looks down upon Microsoft in every aspect is constantly trying to copy the things they do? I think it GUI programming tool kit would be great.
Relocating to San Francisco / Palo Alto... Hire me?
Can you clarify whether that was a joke? I can't really tell.
You have tried to support your argument with faulty reasoning! Go directly to jail; do not pass Go, do not collect $200!
I doubt they are compiling old VB6/5 apps.
.net code from vendors without having to screw with emulators, virtual machines, WINE, etc..
Does it allow you to run Visual Studio yet? What about code from microsoft such as Office2007?
While its nice that you can *compile* something that is crossplatform ( though can do that now if you choose other languages ) the real trick is running existing
---- Booth was a patriot ----
What Mono does not support is the migration of Windows applications written using Visual Basic 6 or earlier. The solution for that problem is REALbasic, a cross-platform RAD tool that is similar to VB6 and runs on Linux, Windows and Mac OS X. REALbasic compiles native executables for each platform from a single code base.
Here's what the Mono guys say about it: .NET applications to Linux, REALbasic migrates Basic applications to Linux."
"REALbasic is a great tool for Linux," stated Miguel de Icaza, vice president of developer platforms for Novell. "Where Mono focuses on bringing
http://opensource.sys-con.com/read/244039.htm
REALbasic Standard Edition for Linux is free as in beer.
Get it here: http://www.realbasic.com/download/
Code::Blocks, The open source, cross platform Free C++ IDE
http://www.widestudio.org/
http://www.netbeans.org/
http://www.netcomputing.de/html/main.html
was: how about...(Score:1)
davecb5620@gmail.com
Who cares what API it uses as long as it works in Mac OS X, Win NT, and Linux all from the same codebase? .net is a means, not an end.
Comment of the year
July 16, 2004
.Net?
.NET and Windows Server.
What about patents? Is there a danger that Microsoft may at some point demand that you license portions of
Well, at this point, we don't know of any patent infringement that Mono has (committed).
November 2, 2006
Mono, OpenOffice and Samba:
Under the patent agreement, customers will receive coverage for Mono, Samba, and OpenOffice as well as
Did Miguel get his certificate from the John Kerry school of flip-flopping?
Why would anyone ever trust anything from Miguel and Novell? I flatulate in Miguels general direction.
While .NET developers would like to see the platform become more portable. They aren't interested in making that happen by targetting the lowest common denominator of crap.
So we're targeting Windows. If Linux wants to grow up, add whatever is needed to work, and join the fun... that's awesome. If not, well it's your loss not ours.
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!
VB6 and VB.NET are not anywhere near the same underneath.
---- Booth was a patriot ----
At last, Linux will have shareware !
Most software is NOT written for mass consumption, it's either written in house or for small niche markets.
TONS of this software has been written in VB over the years. Either in house processing forms (for specialized data entry people, some is now web based, some is not). Or screwy niche verticals. My mother has a computer that runs some goofy program for running a small therapists office. It looks like garbage, is CLEARLY a VB app, but it's the only application designed for a single therapist that is inexpensive and runs her office.
She wanted to buy an iMac a few years ago, because she thought that they looked cool, but she wanted to run this application, so she needed Windows.
VB -> VB.Net migrations aren't trivial, but they kind of are... anyone actively maintaining VB code has probably migrated by now, with the painful process and all, or will shortly. Once they are on VB.Net, this makes the transition easy.
We're not talking about general applications, but think about the possibilities.
Small office has a custom VB application for 2 data-entry personnel. All they do is read/send email, put things in this application. Now one of the developers sees this thing on Slashdot, downloads it, and converts their VB application to run under Linux. All of a sudden, the next time these people get their computer trashed by viruses, when the IT guy is bitching about rebuilding their machines again, he mentions that he ported their application to Linux. All of a sudden, these special purpose desktops are Linux.
The Excel Power User WILL NOT switch to Linux... hell, I sometimes fire-up Windows via Parallels to run Excel under Windows because Excel for Mac isn't as strong, but you might get the entry level desktops to Linux... and that's a HUGE start.
If you got most businesses to only buy Windows for the executive suite, you'd cut Microsoft's marketshare from 95% to 50% or 60%, and all of a sudden cross-platform becomes a requirement, not a nice to have feature.
Whats the point of this besides thwarting microsoft. It is the same as taking off the side of your computer and crapping on your motherboard.
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.
It may just me, but running VB on linux seems to be the digital equipment of buying a Ferrari and then putting a set of naked-girl mudflaps on it. Some things were just never ment to go together.
Why is it that the proponents of "one nation under God" are so eager to get rid of "liberty and justice for all"?
Aside from the fact that Novell is a major sponsor of this work, another major contributor was Mainsoft. We know that Mainsoft has had access to MS source code and probably continues to do so despite that mishap they had a few years back when they leaked Win2k's source code to the world. So, from the IP side, I'd be worried about MS coming after me later for royalties if I wanted to use this stuff... and that's before I get over the fact that Mainsoft's technology is as slow as heck.
"...today consumers have been conditioned to think of beer when they see a bullfrog..."
(And two grew increasingly compatible with VB6 which really changed the way Web applications could be developed) I think this is an interesting - and highly excellent - piece of work. The shops I worked with wanted VB because of one of two reasons: 1) It was easy to develop, maintain, get programmers for, etc. or 2) They were a software dev shop and you could throw together a UI with BS functionality behind it to either get some ideas on what the real app would look like or you had a conference the next day and needed to showcase a product that didn't yet exist. Setting aside No. 2, the shops that were looking for ease of development were pretty stuck on Windows environments. It was always a combination of the user experience and (perhaps coincidentaly) the skillsets of the sys admins. The more "geeky" the admins (i.e. wanting to use *nix servers, pushing for *nix on the desktop) didn't really have the clout or skills to convince management to try anything different. And come on, who advertises more often in places C*Os are going to be? MS, by far. So if a C*O knows MS, uses it at home and traditionally at work, and knows that (like it used to be with IBM) no one gets fired for buying MS, they're going to continue to do so.
I guess what I'm saying is that this is a fantastic piece of work (assuming as other comments have pointed out, it actually works as advertised) I don't think it will have much impact on the overall "professional" world - Other than maybe getting more *nix fiends interested in learning VB so as to have some additional skills on their resumes.
Bark less. Wag more.
With REALbasic you can write the code once and compile native binaries for Windows, Linux, and Mac OS X. It's supposed to be very similar to VB.
.NET. Very fast, and it's LGPL'd.
I use wxPython for development, which I'd recommend for anything cross platform. There's also wxPerl, wxRuby, wxBasic, etc. It's a c++ framework and has binding for nearly every language in use, even works with
"The Federal Reserve is a fraudulent system."--Lew Rockwell
End The FED. -
Wot?
Even though most of my coding is in C (and I've done a handful of useful things with it), I've occasionally whipped out my creaky old VB3 for a task of two that was better done there. Am I somehow not a developer because I touched VB, even though it's not my usual language of choice?
-uso.
What you hear in the ear, preach from the rooftop Matthew 10.27b
www.realsoftware.com
It continuously amazes me that people that want to run totally crossplatform (Mac, Linux, Windows), VB like programs don't know about RealBasic.
It does everything you need, the IDE/compiler is crossplatform, platform output is selected via a checkbox , and has been around for ages. It's typically a piece of cake to turn some VB program into a crossplatform binary. Yep binary! Realbasic generates executable files.
Bart
I remember a time when VB was what every aspiring coder used, thinking (erroneously if you ask me) that it'd help them learn how to program. They all wrote little, yet buggy, apps that mostly worked but were coded without any talent and probably very insecure. Now, those people have abandonned VB altogether and moved on to PHP, whose greatest strengths and weaknesses are its ease of use and gradual learning curve.
More to the point, why should we bother use VB in Linux? It's main advantage was that it integrated almost seamlessly with Windows (it was very easy to create forms, dialog boxes, and even Word and Excell documents), which is clearly useless in Linux. And there are already so many languages in Linux that integrate with it so much better (Python, Perl, or even C#) that I doubt anyone would want to use VB.
That was one of the reasons they GPL'd it. So the Linux folks could use it without worry.
I totally agree with the parent.
I come originally from a hardcore x86 assembler, C background. I used to work in commercial video game development.
When I got out of that (ridiculous work ethic) and got properly into the web, I first started using Java, then PHP and finally VB6 + old "classic" ASP. Both of those latter two are wretched.
When I moved to ASP.NET in VB.NET it was a whole new world of difference. It was like the clouds had lifted.
I've coded some enormous web applications in VB.NET. I've also coded some incredibly low-level wire stuff like SMPP servers.
As per the parent's comments: VB.NET is far easier to code and read than C#. C# is so damned pedantic, just like its cousins C and C++. C# just gets in the way and slows down your development. The Visual Studio VB.NET IDE formats your code in a really nice way as you go along, and the layout of VB.NET code makes it far easier to see what is going on, and there is no chance of accidently leaving a semi-colon in the wrong place, forcing lots of debugging.
Parent is right that CType (or DirectCast) is a bit annoying, but I find use of that method pretty rare anyway. And it's nit-picking an otherwise excellent language.
I consider VB.NET the best language I've ever used, and I've used pretty much everything sane you can think of in my 20+ years of coding.
Great news that Mono now supports this. It'll make it much easier to port over my web projects to run on Linux.
If I understand it correctly, merely running VB.NET apps on Mono was possible even before this. If you compiled your VB.NET application on Windows to CIL, you could run the compiled app on Linux with Mono since Day One, couldn't you?
What I believe is new is that you can now also compile VB.NET source code on Linux using Mono, basically making it possible to completely circumvent Microsoft tools (namely, their VB compiler).
Sig erased via substitution of an identical one.
I work with VB.NET a good bit, and this is fantastic news. I'm going to try it out with some of my current projects and see how it goes. This is excellent news, IMHO.
Hmm.. Microsoft partners with Novell. Months later Mono has support for VB.NET? Coincidence? I don't think so. I used to use SHIT.NET before I was exposed to Qt. I'll never look back!!! Mwah, ha ha
Death is life's great reward. R. Hoek
"wheel" group. Maybe they caught they caught the disease after kissing someone's hand, and they originally caught the disease from a bug coming down on them. This is why we have user and group access, so be sure to segregate those flies from the root!
without prejudice
OK, now the GPL sais that you can charge a minimal fee for distribution costs of GPLd software.
But do the novell "coupons" fall in this category. If not, Novell should make arragements with each GPLd program before making a profit from it. (It is heard that some projects already do that)
The problem is that novell is making money by selling services that include *your* software, but then spends its money on Mono and technologies that help ms.
OK, binary adders in the Endeavour Shuttle are very important too, but guess what, that doesn't make their dessigners real hardware gurus. Show me your algorithms and we will talk if you're a real programmer or not.
It was bad enough when it was 'doze only!
Did I mention I switched no 'nix to get away from this stuff?
They'll find a church and go piss in the Holy Water, cause that's the only thing that can top the abomination of Visual Basic on Linux.
No you're still a developer. But you're possibly someone who can't take a joke :)
VB has always been the red headed stepchild of programming languages and it's fun to make fun of it
REALbasic Standard Edition for Linux is free as in... drugs?
I've read that the local drug dealer will give his suckers a few free doses of crack too. REALbasic is proprietary lock-in. Sure VB is proprietary, but you don't jump from pot to frying pan. REALSOFTWARE controls that whole environment and they could easily tank at any moment, just like dozens of other proprietary tools (PowerObjects, OpenDoc, SuperCard, I could go on for hours).
Best bet is to migrate from VB6 to VB.NET like Microsoft wants because now you have option to run VB.NET code on LINUX or OS-X.
You do realize linux is full of GUI apps, right?
:P
What else do you need besides a window manager and a bunch of terminal windows?
With Microsoft beating the patent war drums, I would suggest distancing ourselves from anything tainted with Microsoft's stench.
For God's sake man, let Mono die.
The race isn't always to the swift... but that's the way to bet!
If in your case, you were defining pieces of code to connect the objects, you were behaving like a newbie - no offense to you.
That was how the class was taught. If you can construct complex programs from VB6, it was not obvious from the class or any of the books I read that you can do that. Visual Basic came across as being a "fun" class. Building GUI in Java was a different animal altogether as the instructors didn't let us use a form designer because you needed to understand the code in order to fix what the form designer screwed up. That's programming.
If you use ActiveX data objects, then you are SOL. It refuses to import the saved vb6 project, and leaves you to redesign your forms and then line your business logic back up to the newly created form.
We're migrating from VBA --> VB.NET and it's been an absolute nightmare.
I patented screwing your mom. But it got revoked for "prior art."
What's next? GW-BASIC? COMMAND.COM? EDLIN?
But it sure is retro cool.
thegodmovie.com - watch it
My concern is that you can do serious work with it, even without a good fundemental knowledge of OO or even decent structured programming. It creates the illusion of simplicity, but its all smoke & mirrors.
I fear that it leads to people thinking that creating good software is not hard, 'how hard can it be? just drag some stuff onto a form etc'. It also leads to managers (who once wrote 10 lines of code in a VB6 form) thinking they can make better architectural decisions about complex systems than their programmers.
I've experiments to run, there is research to be done on the people who are still alive.
GNUstep might let you compile and run it on Linux (or other Unix-like platforms). Someone has done a Cocoa/GNUstep port of emacs, for example, that compiles from the same source tree on both platforms.
Stick Men
I took a VB class once, and I noticed the same thing you did. The class was a complete waste of time. OTOH, I'd used VB on my own a few years earlier, coming from a background in C, and didn't really have any complaints. (When Visual C++ came out, I thought it was a total scam, because I expected it to be Visual Basic =~ s/Basic/C++/... but that's another story.)
It's just a different teaching style: you can tell a class full of newbies "Look! Click here, here, here, and then type this line - now press run, click your button, and it says hello world! We're programming already! That wasn't intimidating, was it?", and then work your way to explaining the constructs you can use inside event handlers, finally getting to making your own classes and maybe explaining what goes on behind the scenes. Or you can start from scratch, "This is a variable, this is a subroutine", eventually work your way through the Windows API and show them how VB does the heavy lifting for you, and finally get around to explaining the form designer.
The difference is that one style gets them writing programs with tangible results on the first day, and the other requires a bunch of learning up front for a payoff far in the future. If you start with dragging controls around, using the automatic database bindings, etc. then they might see the manually entered code as voodoo at first, but at least they're putting something together, and as they learn, they get immediate feedback in the form of what they think of as a "program" (as opposed to a console window full of text). And drag 'n drop might even be enough for a lot of lame in-house CRUD apps, which I think is the real audience for these classes: no one starts off their computer science degree by learning VB, at least like that. I hope.
Visual IRC: Fast. Powerful. Free.
That's cool, I've got a couple of VB programs' sources on my computer that my dad rote a few years ago. Making this stuff run should help me understanding and rewriting the code.
Too many Linux on desktop advocates are waiting for this magical day where 50% of Windows users will wake up, throw out their computers, and buy Linux machines... it won't happen that way.
Microsoft's monopoly was built by being the dirt cheap, good enough solution. Attempting to "microsoft them" with the dirt cheap, good enough solution is hard... For most computer users, Windows is "free" it comes with the computer, and even if you are big enough that you buy via site-license and OS-less machines, the cost/license of site licenses gets pretty cheap as well.
However, the maintenance of Windows compared to Linux makes Linux VERY tempting in several parts of an organization. Just like Apple has maintained a presence in Windows companies for graphic designers, web designers, etc., and Server Linux has made inroads for Web Servers, etc., Desktop Linux will make in-roads in chunks at a time.
Is VB6->VB.Net "trivial," sort of. The time frame is MUCH less than a port from VB6 to ANYTHING else. If you are actively maintaining the code-base, you probably bit the bullet a few years ago, otherwise will do so now. If you have legacy VB6 apps that are maintained, then they likely will move over to VB.Net. Microsoft should love this, however, because this creates an incentive to migrate from VB6 -> VB.Net. Even if you don't plan to use the Mono out, it's a reason to modernize your code-base and get to VB.Net compliance.
A small shop, 2-3 coders, that makes a niche product, or an IT team with legacy code to support, now has a viable path to making Linux/OS X viable options. As Mono is free, it's also not unreasonable to bundle Mono/Application and sell it for OS X and Linux now (if you are a small shop, it's eventually going to become a weekend project), or at least keep that option open.
It's trivial compared to any OTHER migration path, that has been "rewrite the application from scratch."
But this is VB.net, an entirely different platform. I don't use either, but we have someone at work who has a lot of VB6 code which is almost impossible to port to VB.net, and has no migration path (for Windows or Linux).
I have tried several times to get him to learn Perl/Python/TCL, and port the code to Linux (our company is primarily Linux based), but have never had any luck.
So when I saw this I thought VB for Linux, but sadly this isn't the case.
What could be better than a jet powered motorcycle? http://www.youtube.com/watch?v=u8l6GTHLSWE
I'm a newbie Visual Basic.NET programmer, but I installed this on wine in ubuntu to see how it would run one of my apps. Sadly, it didn't run my app very well at all, showing the interface, but not letting me do much else. The message boxes didn't support multiple lines either.
Probably making a VB to Ruby translator would just about do that. (-:
It's a frivolous-sounding comment, but think about the real advantages. You'd still have the same initial uphillness that you'd get from a VB6 to VB.NET translation, but after that MS couldn't dictate standards to you any more, & your code would intrinsically run on Mac, Linux, Solaris, DOS, BeOS, OS/2, name it as well as 'Doze.
Oh, yes, and for the first time in years, you'd truly enjoy programming again (-: leap, click
Oh, double-yes, that would get you free entry to Rails, as well. The improvements in your effectiveness will stun & amaze you.
Got time? Spend some of it coding or testing
Sheesh, I already have Visual Basic for MS-DOS, which will run on 'any platform' including those that don't 'support Mono.'
It'll run on anything at all, really. You can build bochs on an ancient Mac SE/30 running NetBSD and run it in that. Don't have enough memory in the PowerBook 165c at the moment, though.
Harumph.
Novell is just trying to set another trap for their new friend Mr. Ballmer to gain legitimate intellectual property grievances against open source. Mono's C# implementation came with an air of legitimacy which they immediately overstepped by including Windows.Forms, ADO.NET, etc. They know full well developers will wind up using mono to build code which is vulnerable to submarine patents and this is just another step to facilitate that process.
Before the Microsoft deal Novell promised to use its own IP to protect against Microsoft's threats. Out came the wallet. This deal has put some wind back in Redmond's sails.
There are wizards that will import office docs and convert VBA modules after they are exported - http://msdn2.microsoft.com/en-us/library/aa537176( office.11).aspx#officevstoexcelvbamigration_migrat ingprojectsfromvbatovsto/ but not UserForms in Excel. I'm curious what the process is like with an Access-based VBA app.
So I'll take that part back - but not the part about inertia and disincentives...
Whats the point? Why are they doing this to me. I thought when I moved over I'd never have to deal with VB apps again. Now they've done this. What are they trying to achieve by this? The complete destabilization of perfectly good OS. This is NOT a good thing. Please stop.
Being able to push .NET to Linux platform means that Microsoft will focus more on developing their coveted Office suite for Linux.
.NET framework under MONO is ECMA-compliant and patent-free. They can adjust accordingly any patent-locked codes they have in Office suite to become patent-free codes under Linux anyway. Most of Office 2007 is now using .NET framework (and with support for Visual Basic. NET for Office application), porting Office suite to Linux will become so easy with Mono.
They won't gain much profit selling OS anymore as the competition is more aggresive from Linux and OS X. PC vendors are more open to any OS to be installed in their package offers. Since operating systems will no longer being the main drive in the coming future as they only allow applications to run anyway, so it is important to make sure an application is portable to any platform.
Microsoft will have no problem to port over their Office suite to Linux because most of
Because I say OS is not important (that is, a need to run an application), to develop portable applications and to make profit from them is important! To support a framework necessary to support one's aplication is important. To protect one's patent over any platform is important.
Note for a few out there: VB.NET is not VB except in syntax!
...a whole bunch of visual basic weenies porting their crapware to linux.
watch out for the flood of non-designed, badly implemented crap software written by people who think that writing spreadsheet macros is a genius-level accomplishment.
The actual terms of the MS-Novell deal are secret, and the CEOs have put forth inconsistent interpretations of what they mean. However, I'm not so sure the actual terms matter, because (if I recall correctly), the MS-Novell deal is scheduled to expire 5 years after it was signed. In other words, it is not a peace treaty, it is a truce. When the truce expires ... all bets are off, because then anything goes.
If you want your life to be different, live it differently.
That does it. I'm switching back to AmigaOS
I don't therefore I'm not.
I once thought I had mono for an entire year. Turns out I was just really bored.
Crap. There's goes the neighborhood.
Don't blame me, I didn't vote for either of them!
Oh crap, here goes the planet.
What do you people have against VB-kiddies. Come to think of it, 0.0001% of them are involved in the future of computers as developers...
You don't even need either of those, you just need Emacs!
Well, I'm not really up to the whole .NET affair and Mono, but if Mono can run .NET applications, what is so specific about VB then? since VB.NET generates a .NET application... So if Mono is really .NET it should also run VB.NET created applications...
Or am I missing something?
and to anyone who says: Why use VB in the first place why not C#, a question back: Why use C# and not VB? with the whole .NET stuff there shouldn't be any difference...
Just to answer the question from my point of view: Because IMHO the VB syntax is much cleaner as C#. because you like C(#) doesn't mean otherpeople think the same, that's why there are so many languages out there...
If you switch on the option in VB.NET (as every good programmer should) then it won't let you convert variables without typecasting them properly.
// do my thing here which will never be called
And I'm not talking about leaving a semi-colon out - that wouldn't necessarily compile, I'm thinking of things similar to this, which are more subtle:
for(i=0;i10;i++);
{
}
http://www.mono-project.com/Downloads
also you can get it in a vm
heres the link to the torrent (1.3 gig) root mono pwd mono
http://svn.myrealbox.com/mono1.2.3_opensuse10.2_v
notes for the torrent
http://www.mono-project.com/VMWare_Image
interesting snipit from that page
"Will binaries from Windows work?
Yes, they will."
The Vmware image seems to be the most interesting download.
Having the development environment self contained and ready to play seems like a really good idea and of course all you need is the free vmware player.
I'd love to see more projects take this approach.
Blarney Quality Restaurant, Plants
Yeah. Would you choose a neurosurgeon who pokes around people's brains in his spare time? I wouldn't.
Awww, sick perverts!
There, behind you! A public health care system
There's more to VB.NET than just an alternative syntax to C#. For example, VB.NET also provides its own runtime library containing a large number of functions that were present in VB6, and it supports late binding of method calls in a similar manner to VB6. Microsoft also provided a converter in Visual Studio.NET that is apparently able to do a reasonable job of adapting VB6-style projects into VB.NET projects including the source code. It can't do all the work for you, but it would certainly be a lot more work to port to C# for most projects.
The most important thing to this discussion is that VB.NET has its own runtime library above and beyond the standard .NET class library. Mono wouldn't be able to run apps developed for VB.NET without supporting this library. The compiler is not necessary for this, but it will at least provide a solution for those who are migrating from Windows to other platforms but have legacy VB.NET code.
Now VB malware written by script kiddies can run on linux too!
Real swift guys..... Thanks for making life just that much
more difficult for the rest of us.
That's a good reason to put your braces on the same line as the control construct they belong to!
Why, vi-mode, of course....
Any decent C# (or Java, or C++) compiler will emit a warning upon seeing such a thing. Good programmers compile with "treat warnings as errors" set to on - this would be roughly equivalent to VB's "Option Explicit", anyway. Some other sane languages with C heritage, such as D, simply disallow such constructs, requiring that one uses a pair of curly braces to denote an empty statement in this case.
Braess paradox
no sig today, come back tomorrow
The horror... the horror...
I wrote a compiler that generated JVM classfiles from VB6 source code...
Dir. ty.
Perl - $Just @when->$you ${thought} s/yn/tax/ &couldn\'t %get $worse;
Yeah. Would you choose a neurosurgeon who pokes around people's brains in his spare time? I wouldn't.
I understand and respect your preference for VB syntax.
However I vastly prefer C++ syntax (except for templates, wich I don't use). Why? because VB6 simply didn't let me do things I wanted to do. I felt extremely frustrated. I have not used VB.Net, so I can't comment on it.
I can catch those (and more complex) errors just by inspecting the code. So your example is simply silly to me.
My point? To each its own.
We are Turing O-Machines. The Oracle is out there.
Well, I've been thinking that for several years Miguel de Icaza has being in MS payroll.
.Mono stuff, open Linux distros to patent infringement.
First, Linux should stop having an unified API towards which to port software. MS knows the value of an API, and that's the reason they have kept backwards compatibility between win95 to XP and Vista. Disrupt the API. So Gnome was born. Should I code for KDE.. or Gnome?
Then the
But it was not enough, so now Novell has made an agreement with MS. And Icaza should be behind that too. I don't think any of it is a coincidence.
We are Turing O-Machines. The Oracle is out there.
It's all been done before in Linux. They tried moving Delphi to Linux (Kylix) and what happened?? Nada! And Delphi is a great language and would have had a big enough impact if the underlying UI system wasn't so caked. VB in Mono is not going to make a difference. We've also seen TCL/TK, Perl/TK, QT, GTK, Glade, etc. And now comes Mono. Yet, still hardly anyone wants to develop Linux GUI apps, and I can't say I blame them. Command line apps are still a dime a dozen in Linux. But GUI apps?? Too much work! Why? The way I see it, regardless of the library or language, there are way too many levels of libraries the user needs to worry about installing and configuring before he/she can even attempt use the application. No one wants to deal with this, which is why Linux still sadly remains a mostly server only system. Plain and simple. Truth is, the XWindows layered design has failed Linux in taking on the proprietary systems and will continue to do so regardless of whatever language, library or development environment you develop in. I've been using and developing in Linux and Windows for a long time and I can say with utter certainty that years will pass and we'll still be having these discussions as long as the GNU/Linux philosophy is to cake on layers of complex GUI libraries. Sadly, adding a bastardized version of VB as a GUI development tool in Linux doesn't change the facts and is destined to suffer the same fate as Kylix. Just no way to put a nice face on it folks. Don't get me wrong I like Linux a lot, but I'll stick with developing GUI applications in the Windows environment for now.