It's the Developers, Stupid!: The Real NT-Linux Battle
Kelly McNeill writes "The media is nutso for bigness. All you hear about in the tech press these days is that Linux is attracting big partners like IBM, finding big users like Deja.com, and making big IPO money like RedHat. That's all good, and I'm sincerely grateful for anything that helps me make a living without using Visual Interdev -- but to me, small and raw is where it's all at." The quote's from the article, which is big and cooked - and full of graphical comparisons between NT and Linux as useful development environments for small Web businesses.
dead url
I would love to have something as featured as Visual Interdev that actually worked.
For linux, the following comes to mind.. Visual SlickEdit, VIM, Nedit. But they are hardly an IDE. It would be great to do Step-Through debuging with PHP from ANY editor.
ColdFusion Studio was nice for that, except it was just so damn buggy.
Seems /. already.
Error 503 Service Unavailable
Powered by Zeus Web Server v3.1
--
Why pay for drugs when you can get Linux for free ?
echo '[q]sa[ln0=aln80~Psnlbx]16isb572CCB9AE9DB03273snlbxq' |dc
Was that a bad link or an amazingly fast /. effect?
Either way, based on the summary, the media just doesn't get geekdom as a whole.
They realize that the IT industry (god, I hate that buzzword) is important, but they have no real knowledge about what is going on down deep. On the kernal level, so to speak.
In a way, this has been discussed before, with the media/movie portrayal of geeks and computers. Most computer geeks are going to see a news story like that and think "Cool, now I will be able to get some really kick-ass stuff to put in/on my boxen!" (or something like that)
The MBA's and media types see the same story and just see the numbers: "x number of dollars start going to support product y, that means it must be a Good Thing, therefore I will go buy/support product y and everyone will think I am cool! Boxen!" (or something like that)
What gets missed is that most of us really don't care who is making the goods or coding the toys, as long as it is better than what we had before. Better games, better hardware, (in this case) a better OS.
End point: Ignore traditional media. Just read Slashdot.
Computers can only simulate determinism. ~Hermetic.
I recently discovered the power of ASP scripting and this is one of the biggest things keeping web sites from switching to Linux. Hell, my manager wants to go completely to Linux, but ASP and an affordable mid-sized SQL database back-end similar to SQL Server is the only things standing in the way. Running Oracle on Linux would double the current costs.
I've seen a Perl version of ASP, which is the spawn of hell, and I've seen a pretty good Java-based ASP implementation, but if I'm going to run this on a rack of servers, I will worry about Apache staying up but I will not worry about Apache and Java.
I've said something very similar a couple of times before. As long as I can help it, I am staying away as far from NT as possible. I can do VB, and I can do VC++, but I'd rather not to thankyouverymuch.
Every time I attempt to do any work in Win32, I feel like I have to undergo a lobotomy first. Win32 IDE may look like eye candy up front, but when you strip away all the makeup, underneath you'll find one ugly beast. The Win32 API is a complete and utter joke. In fact, it's so bad that you can't really work with it directly, and you have to use MFC to get a barely workable API to work with.
Ever tried to put together a simple process, under Win32, to listen on a socket for connections, for some simple processing? This is a ten minute job in *NIX. Win32 forces you to use a convoluted event-driven architecture that absolutely makes no sense, and is a royal pain in the ass. This is just an example, but is quite typical of Win32's idiocy.
I don't really know why people thing that graphical IDEs are so sexy. I have absolutely no problems with autoconf, automake, and make. A graphical IDE would probably be nice to have, but absence of it does not really make much of a difference to me.
--
Microsoft delivers an operating system to users (and you pay again for development software).
Linux delivers an operating system and development software to every user.
Which approach is going to encourage more developers in the long run?
As the market stands at the moment, Linux is certainly attractive to would-be developers. And as computer use spreads into countries where it is not yet widespread among the general populace (China springs to mind), Linux is going to have further advantages: It requires less powerful hardware, and it is open to home grown localisation.
I wonder what effect of 1,000,000 Chinese hackers will have on Linux? Of course a lot of work will go into some really good Chinese language support, but I expect to see some stuff come out that we can all use.
Unless Microsoft can buy off China. But I think China is old enough skeptical enough enough to see through that.
Of course, while developers are pretty important, developers without users are of questionable value.
I've just started programming in Perl and I tell you something - it beats the hell out of VB (not a hard thing to do I suppose!)
Microsoft have always tried to bend over backwards for it's development community - no developers - no software !
But as Linux becomes more popular - an increasing number of Windows programmers are turning to Linux.
Why ?
As a developer for Windows, I hate the way that with every new release of one of their developer packages a 'new' API or programming model is introduced.
(Don't forget the increasing system requirements)
In Vb there are at least four different APIs to develop DB applications - can't they get it right first time (not to mention careless bugs in the components??
The MFC that was introduced is quite simply a mess - the learning curve for MFC is ghastly to say the least. When is a *sane* abstraction layer going to be introduced?
(Then again the Windows api has always been a mess anyway!)
Their development products can only be used for the Windows platform.
The development products in the Open Source Community are cross-platform. For example I use the Windows port of Perl at work (won't allow Linx) and then at home I can continue on my linux hardware.
I suppose at the heart of the linux community are the developers who create the software.
This is the achilles heel of Microsoft.
If there is one way to tackle Microsoft - converting the developers is an answer.
I personally have nothing against Microsoft as a business - only their products are just not up to scratch - this is one of the many reasons why I use linux.
Oh well...back to programming in VB...(I wasted a day trying to get my databound flexgrid to refresh it's contents - then discovered in the MSDN dox that this is a bug and a suggested fix was to use the dbgrid or a 'third party control')
If you get Error 503, keep hitting Reload until it burps out the text. Slow, but not dead.
-- Liquor up front, poker in the rear.
While the article extols the financial advantages of using OpenSource/GNU software for cash-strapped startups without a VC fund and tons of hype behind them, there's also other advantages. A recent article pointed out that ... copyright was less of an issue as many programmers wrote for Microsoft platforms which had their own Application Programming Interfaces (APIs). In effect, much of the intellectual property was de facto handed over to Microsoft in these instances and it was only the integration of business objects - ready-made slabs of programming code ready-to-run - that mattered. So it comes down to how you see your role, as a architect creating new forms or as a building constructor knocking prefabs into shape. The rather interesting factor is that like all professionals and artists, there is that inner urge to "show off" to peers which means ideas are circulated. Much like a Jazz band, structures and improvised, creating unique on-the-spot music rather than repetitive pop tunes.
The other constraint is the choice of language/tools automatically limits your designs. While big companies can only tackle the average needs of their customers, OpenSource has the flexibility to satisfy the specialised demands of niches. This is particularly the case with scientific applications which though it likes big and cheap computing power, would be less than 1% of the total computing market. The shift away from tools to services (e.g. Zope) will add a further dynamic to the equation as the limitation then becomes skilled people capable of using the tools. The key to long-term success here is winning the fickle attention of the development crowd.
Oh well, if all you have is a penguin, then everything looks like a fish.
LL
You can use PHP/Apache/Sybase.. gives you everything and more SQL has...
:)
.. your cheeper.
:)
and its free for use.
DB2/Informix.. etc.. cost about the same as a microsoft solution, and if you take away the cost of the NT/MS Licenses
BTW, you can use PHP/Apache to talk to SQL 6.5.. (though I wouldn't..)
Would someone please moderate this poor dumb schmuck down?
Computers can only simulate determinism. ~Hermetic.
If I were king of the world, I'd be running AOL Server with Oracle as the back end. Tcl scripting; yummy ;-).
-- ultra1
Use PHP and MySQL ... Faster, Cheaper, Better...
I just found this sense of humour on the floor, is it yours? you seem to have lost one..
"The important thing about Linux (and Open Source and the Web) is that it shifts the balance of power back to the independent developers, the underfunded experimental coolness-of-the-thing-itself startup-type hackers"
For the time, yes it does bring back that power and the interest in the changing/hacking/creating a new environment that fits your exact needs. However, if one thing has proved evident in everything I have ever experienced, money motivates all too well. My concern is that all the recent hype and corporate adoption of *nix will corrupt what most of the geeks find to be "experimental coolness-of-the-thing-itself". What's to happen when those how have set the standards for these platforms pass on? Just look at what happened to the internet once John Postel left us.
SL33ZE, MCSD
em: joedipshit@hotmail.com
SL33ZE - Artificial Intelligence is No Match For Natural Stupidity -
In light of the /. effect, the error and Zeus link arerather humorous!
"Zeus' performance is god-like", Infoworld Review
I guess they're expect you to pray that it works, but don't expect an answer.
Then, of course, there's always PHP. "But by code is all IN ASP!" you cry! So run it through the ASP2PHP translator that's floating around. Problem solved, with any luck.
Apache is reasonably stable, and there's no reason why it shouldn't stay up. However, if you're concerned about that, install some Linux High Availability software and have Apache migrate as and when necessary.
Databases - Postgres is a decent-sized database system, and MySQL is surprisingly rugged. I don't know the commercial price for Informix, but that is an impressive DBMS system (although it's BLOB system is, well, blobby.) It might be worth checking the commercial price for DB/2 for Linux, as well, as that is an awesome system.
It's a small world and it smells funny; I'd buy another if it wasn't for the money; Take back what I paid (SoM)
I got to read the 1st page of three, then when I tried to make it to the next page, I got the same error. Damn early morning Slashdotters. =P At any rate..
I've never read nor been inclined to even look at OSO before, but from the blurbs I saw during my brief stay it looks like all of their stories or articles or whatever you want to call them are submitted by readers/users/lusers/whatever.. As such, I wouldn't exactly refer to it as your traditional media (unless I misread or misinterpreted what I saw.. it is early, after all).
J. Random Idiot will never understand computers, the software industry, or what makes things like the Internet and the Web "go". They'll certainly never understand GNU/Linux, much less hackers. I don't really get bothered by them trying to make a buck of capitalize on the whole "geek" thing, because, well, being a geek, I don't spend a lot of time "out in the world", so to speak.. so the only time I realize how clueless these people are are through my random encounters with reality and the news. All in all, I'd say it doesn't affect me very much.
Warning.. I'm about to go on a tanget.. ;)
I also don't think it's important whether or not GNU/Linux makes it big in the commercial world. ESR seems to disagree, but since when did I ever care about his thoughts? Sure, I don't entirely agree with RMS, either, but surprisingly enough, his views seem much less fanatical and hypocritical to me. With the advent of the Web, it's simply not necessary to be big in the commercial world to make decent software available to those who want it, so all of ESR's bitching about not wanting another hacker project to fail even though its technically superior are a decade or two too late. The network is now large enough that such software can be distributed to everyone without having to bother with commercial vendors.
On top of which is the fact that distributions of the OS were begun by commercial vendors and other groups some time before the term "open source" was coined. But, I've talked enough. I say fuck it, let the public and ESR think and do whatever they want. It doesn't really matter in the long run, because I don't care if Joe Public wants to use Linux or not, or if companies want to market it. If so, fine. Who cares? Let's all get back to doing something more important.
~ Kish
dude, get over vb and perl and learn some real languages. A VB programmer will naturally complain about the win32 api or MFC because it looks to complex, he doesn't understand the bloody thing and will switch to the next easiest thing he can get his hands on. The funny part is, here is a VB programmer complaining how bad the win32 api is.. hahahaha
I heard that Borland/Inprise are thinking about making a linux version of Delphi - now that would be great !
the link is supposed to be at www.borland.com/linux/survey
but their servers are currently downI've worked for a MS Certified Solution Provider. They are licenced to give copies of any MS product to their employees (at least where I worked)
MS is also providing the resources and incentives to be a MS developer. Have you ever seen the MSDN website? It is really, really good - a better resource for developers than anything except dejanews. (Okay, so it has a little to much eye candy, but still)
MS does pretty good promotions to do their developer exams, too - Trips to conferences in the US (from Australia), stuff like that.
They "pay" (in the form of discounted softwear) solution developers to get their developers certified - and developers don't mind the automatic doubling of market worth for a MCSD.
Believe me, I'm 2 years out of Uni, make AUS$90K (which is HUGE money here - a uni graduate makes 27-32K), and are bored senseless by the work. I'd do anything to do interesting work on Linux, but I can't find any work like that here, even if I take a 50% pay cut.
(BTW, for all you Aussies, did you see the SGI ad in Tuesdays Australian for Linux developers in Melbourne? Who's applying? - I'm in Adelaide, and can't move at the moment)
The other point is that MS is putting out some really cool stuff at the moment, eg SOAP, their XML support in IE5, etc, and under Linux you have to produce it yourself, or maybe use Java. (please IBM, Java2? Please!)
As for VB, say what you will (and I won't argue with you - I use Delphi), but it does allow less skilled "programmers" to produce reasonable programs quickly.
Anyway, the point I'm making (sorry for rambling!) is that I'm sure these startups do exist, but don't underestimate MS. Microsoft understands it needs mindshare and it is going after it.
So much as now it's just broken. Wow, you peoples know how to kill something, I'd say...
Target Practice
There's a 68.71% chance you're right.
Just a few thoughts:
As a full time sysadmin and (in my opinion anyway - others may refer to me as a programmer but I don't think so) and a budding script-kiddie I like Linux because it is EASY to manage. I manage some HP-UX Servers and have managed IRIX ones (they were actually pretty cool), all of which I manage(d) remotely from the prompt. I have found managing Linux to be the easiest in all areas fron upgrading, adding hardware, users, server processes etc.
Additionally I agree with all of the opinions that say "It is just plain easier to program on Linux". I peruse VC++ on win32 and of course gcc-lib on Linux and Perl on both. Programming on Linux is so ridicously low overhead it just can't be matched.
I think what a lot of people may confuse is the programming environment issue. That is really where the hardline win32 programmers I know attack Linux. Seeing as how I was introduced to Computers from a mainframe perspective (I never really used a PC until Linux came out) this is hard for me to undestand, but the counter argument is -- there is emacs, there is the shell-interpreter (where you can create your own environment --- geez), emacs and so on - or make your own!
I think a lot of it boils down to perspective and how open minded a person is, for me, Linux actually introduced me to PC architectures, but for people who went to say a school somewhere and were taught the MS way (whether a college or some trade school - whatever) they simply "don't get it" all of the time and some folks are just plain disagreeable (on the flip side, I couldn't manage a win32 PC until I downloaded cygwin's GNU utils - so am I suffering from the inability to comprehend win32?).
Well -- food for thought anyway.
" -- ow my brain hurts again -- "
I put up a mirror of the 3 pages, it doesn't include the ads, but at least you can read all the text.
Link
--
Why pay for drugs when you can get Linux for free ?
echo '[q]sa[ln0=aln80~Psnlbx]16isb572CCB9AE9DB03273snlbxq' |dc
Yep, they announced it a while ago.
It is called Kylix, but no one knows much about it. It is supposed to be relased next year, though... Sweeeettt!
This is a ten minute job in *NIX. Win32 forces you to use a convoluted event-driven architecture that absolutely makes no sense, and is a royal pain in the ass
Actually, I have, and having done Winsock API coding, I can say that Winsock is Berkley sockets compliant and so you can use select instead of the event driven model. Why did I use the event driven model? Because I still remember using Trumpet Winsock for 3.1 and enabling a feature on it that prints out every winsock call. I did this to learn how to program Winsock. What did I see? Netscape (one of the 1.x versions) in what appeared to be a tight loop selecting the whole time. As a fan of interrupt v. polling, I decided to use the event model.
The event model is also not that arcane to people who do Window API programming. Or PalmOS programming, since it's the same model. I hear Mac operating systems are like that too.
I agree there are cleaner models (Java JDK 1.1+ for instance), but it really isn't as horrible as all that.
-no broken link
We're not dealing with a lack of development tools on Linux but an overwhelmingly large number of people who want to do develop on Linux such that every job posting for a Linux developer gets millions of resumes. If you want to develop on Linux you're better off doing it at home than whining about a lack jobs for it. The reason anything is employable is that no-one wants to do it.
It's important to remember that the media are like cops. They always arrive at the scene after a thing has happened. They are the first draft historians. I'm stating the obvious, but just because some thing doesn't get any media attention doesn't make it less worthwhile and vice versa. The media has a pack mentality, a self-replicating tendancy. That makes it hard to adjust the course they're on. But once a story really takes hold, it will spread like a bush fire.
Automatic Sites, LLC
Interesting article, but the whole thing is definitely slanted towards developers working on web-applications. What about all of us ISV's out there?? While I would love to have my main development machine running Linux, I can't until 95% of my customers run Linux!
Contrary to what the "mass-media" wants the entire world to believe, there is still a HUGE market for small, well-built, custom applications for a wide variety of things: Contact Management (real stuff, that actually works well for a small business), db applications, niche markets, etc. This is the area that I work in. Developing apps for niche markets and "small" db apps that typically run against desktop databases. While I know and love Linux, my customers are like lambs to the slaughter...lock, stock, and barrell to the Redmond camp. This forces me to develop for Win32 as opposed to *nix, X/Win, etc..
So what comes first?? Do people like me just take the plunge and develop for an "emerging" platform and possibly make no money?? Or do we develop for the demand from customers (which is still _VERY_ clearly Win32)?? This is the real battle in the "small and raw" camps (at least in mine).
Having just (about) been converted to linux, I really can't see why it took me so long.
:o)
So far, as far as I can tell, it has now been developed to the point where the difficulty of installation is not really any greater than win9x.(And this is coming from a person who has reinstalled Windows about 3 times.)
In fact, the more I look at it, the more it seems to be a case of Big Brother vs An Infinite Number of Monkeys. And I mean that in a _good_ way.
Infact, I only wrote this so I could call Linux progamers monkeys
Shawn Poulsen (Fruan)
"On Slashdot, many obvious things are insightful." - Annonymous Coward, 2000/7/9
You're correct that mindshare is important. However MS is loosing mindshare for several reasons.
1) I'll take over your market.
2) I'll lock you into my products.
3) I'll make what you're developing for a moving target for no good reason.
As for "As for VB, say what you will (and I won't argue with you - I use Delphi), but it does allow less skilled "programmers" to produce reasonable programs quickly."
Quick n' Easy is great for the selling of cake mix but it's lousy for producing robust code. Also those 'reasonable programs' end up having a longer shelf life than anticipated. If we learned anything from y2k, one lesson is clear. Making short-sighted decisions can come back to haunt you. Those 'reasonable programs' will come back to haunt us.
.
They would have had to start in 1995, or switch over their whole database at some more recent date.
As has been pointed out before, the important thing is programmer mindshare. Many programmers are locked into Windows development because they have spent a good deal of time learning the API's and the development tools for it. Not because they love it. And, so long as there are so many jobs available doing VB or MFC development, there is no incentive to retrain.
One point I haven't seen mentioned here much is this -- VB, MFC and COM make possible the creation and easy re-use of pre-built components. Although it is certainly true that 'real programmers' don't use ActiveX controls, business software development (the lion's share of code being written every day) is made easier and cheaper because of them. Until the Open Source movement can provide similar component based environments (and plenty of third party components to go with it) there will always be at least one good reason to develop that new accounting program in VB.
Enterprise Java Beans do provide much of the same plumbing as COM (arguably, even better), and many Java tools vendors are working to support EJB's as seamlessly as ActiveX controls in VB. But Java is not Open Source. It is controlled by yet another big company...
However Microsoft is dropping the ball in this area themselves. It seems to me there is a real opportunity here for the Open Source Movement. If we are willing to step up to the plate.
Jack
- -
Are you an SF Fan? Are you a Tru-Fan?
Developing Linux is important. But to me, and most people I know, eating is more important. Having a job that supports me and allows me to eat is critical to my ability to hack on Linux in my free time. ESR talks about the "gift culture". This culture supports Linux because most of the developers of Linux have other jobs which feed them. For most people, those other jobs don't have Linux as the central focus, if it's even used at all. Linux is something done in spare time, for pleasure's sake. It isn't something that helps put food on the table.
But, if the economy were to get tighter, and fewer jobs became available for developers, those who would be willing to spend personal time on work related projects, would have a competitive market advantage over those who weren't. Thus the development of Linux would slow down, because fewer developers would be spending time on it. In that scenario, the market would not be able to support Linux as a hobby.
Linux in the business environment can only help to dedicate more minds to thinking about Linux and deploying applications for Linux, not as a hobby, but as a critical part of our economic infrastructure. This is why (IMHO) supporting Linux in commercial settings is so important, and why an announcement from IBM (et al) is such big news.
Key to financial independence: Spend less than you earn. Save and invest the difference. Do it for a long time.
MySQL may be okay for really simple applications (like a guestbook) but it is lacking features that a robust dB application needs. There is no support for Foreign Keys nor does it look like there will be any in the future. Foreign keys are needed to ensure data integrity and they just aren't there. You basically get a lot of the same problems as in weakly types languages with really no gain (unlike the gain you get from weakly typed languages). There are no stor ed procedures or triggers. While I'll agree that SP code can be done in the dB client (the ASP), you have to make sure you call trigger code before every operation and check the result and it really isn't the same as having actual triggers.
However, these two things are kind of forgivable, but mySql doesn't have support for transactions! So if an operation fails in the middle, you can't roll it back. They claim they will have something like transactions without rollback soon. While that helps with some concurrancy issues, the roll backs are really needed when entering data into a normalized dB.
Maybe, you can use MySQL for the back end to EJBs for object persistance. The EJBs ould give you the data integrity and the event model that you would use for triggers (you'd trigger code in the EJB anyway since it is suppsed to encasuplate business logic), but I'm not sure if you can do EJBs on a dB without tranactions.
So, if you are going to have a novel web technology, I would suggest against using MySQL, although if you Web application is novel because of content or something and you want to save some money, it might be okay to forget about the robustness at first.
-no broken link
I'm running Apache, mod_jserv under Blackdown 1.1.7.v1, and Sybase ASE 11.0.3.3 on RedHat 5.2.
:-)
Cost: $0. Sybase 11.0.3.3 is free.
This setup has been running since February/March(? can't remember exactly). I've only had to bring Java down to reload new Java classes, and at one point it had been running for several months without a peep.
This system supports remote/local reporting through a web browser on a 200M database that is refreshed in its entirety every 30 minutes.
I think I had to dump a transaction log once. It's the most hands-off system in the company, and I wuv it.
The box was up running for 180 days after I installed it without intervention. It went down once (gracefully, thank you APC) from a power outage a month or so ago.
Regards,
Regards,
-scott
One of the first big sites that did. They used to let people know about it, too, but now I can't find any mention on their site about it at all.
The point is that VB lets a bad (or lets say average programmer produce a program quicker and probably better than say Python/GTK or something.
Unfortunatly, companies can't always find talented programmers, and for those untalented programmers, and for simple programs, VB is better. I guess it could be argued that if everyone used C and Perl and command line interfaces it would get rid of a lot of the crappy coders around, but that isn't likely to happen.
Yes, those "1 week" projects end up growing into huge, unmaintainable messes, but that happens in any language (Mozilla anyone?), and is more a factor of project management than the language.
Try telling that to management, though!
Of course, it isn't ready for commercial quality code yet.
Say what you will about MS. I currently work with an Microsoft Provider. It is great. I agree MS products aren't the best, but their market share and job potential is. I love developing and enjoy my job, but that is what it is: a job; means of supporting myself. And this one does it best. I do run Linux @ home. I have been learning all I can about it. It also has a steep learning curve(some things are easy and intuitive, others are not). One main shortcoming I see in Linux is this: Businesses mainly want the job done quickly and cheaply; a large amount of the work is very simple data storage and retrieval. VB can do that very easily. same reason COBOL has been around so long...it works and is fairly simple. with Linux the ability to produce and distribute apps quickly is not there...the tools aren't as nice and the developer pool isn't real deep...(maybe, hopefully that will change) also, there are a lot of bad programmers out there giving VB a bad name, a good programmer can write some slick code in VB.
I've been running our intranet on Halcyonsoft Instant-ASP, jdk1.1.6 and Apache 1.3.4 for 6 months now. No problems at all. Instant-ASP has caused zero crashes.
Then, you use XML, which is easy as hell to implement in ASP, and you have separated the code and the content, and made data handling easy. Don't underestimate ASP
I just love ASP- heck, I turned from wintendo to linux somewhere in '96 - to return back to the windows mogul about a yaer ago. And, well, I'm sorry, but there are just *so* many advantages:
1) I can produce efficient code in ASP that can be maintained by *any* stupid webmaster -unlike most perl scripts ( $g>% doesn't make much sense to most ordinary people, heck, I can't tell if this is valid perl code) , oh, and,
2)ever tried to open a database on *any* platform in just 2 elegant lines of code on linux/perl? guess not.. let alone send someone a script with an access database (made in an hour or so), let him just upload it to the webserver and it works. show me, linus!
And then I forgot to mention intellisense, autocomplete, components, or the just *wicked* IDE of visual studio..
I love ASP- heck, I turned from wintendo to linux somewhere in '96 - to return back to the windows mogul about a yaer ago. And, well, I'm sorry, but there are just *so* many advantages:
1) I can produce efficient code in ASP that can be maintained by *any* stupid webmaster -unlike most perl scripts ( $g>% doesn't make much sense to most ordinary people, heck, I can't tell if this is valid perl code) , oh, and,
2)ever tried to open a database on *any* platform in just 2 elegant lines of code on linux/perl? guess not.. let alone send someone a script with an access database (made in an hour or so), let him just upload it to the webserver and it works. show me, linus!
And then I forgot to mention intellisense, autocomplete, components, or the just *wicked* IDE of visual studio..
In the days of the 8-bit machines, home development was almost as common as machine ownership, because most of the machines came with BASIC on ROM. The likes of the Amiga had cheap BASIC-derived environments like AMOS. These days, the only way a young Windows user can get their paws dirty writing software for their machine is by pirating software... What fourteen year old, after having forked out $1000+ for a machine already can possibly afford another $1000 or so for development tools?
As the article suggests, the low-end segment of the developer market is an important one - any platform needs to convince people to start programming for it at some point - the only way this can be made possible for a Windows user is by pirating.
I wouldn't be surprised if MS deliberately turns a blind eye to High School/College students who pirate the likes of VB and Developer's Studio - after all, the more people who become familiar with these tools, the more people who are going to be programming for Windows.
So the contention that the price of all that Windows software prohibits people from becoming MS junkies is a false one. Perhaps honest businesses can afford it, and these are the people MS really has to convince to pay, but right at that crucial low-end, software can be just as free as it is on Linux
I have read a few posts here that seem to suggest that VB programmers are "softcore", "less skilled" than other programmers.
FYI I am versed in C, C++, Pascal, various machine code programming on a variety of platforms (e.g. z80 embedded systems, Windoze, Linux etc...) and have been for the last 10-15 years(Yes I am an old fart by today's standards!)
I am not by any means a wizard of all the languages I have used but I believe I understand the principles of programming.
I would like to make it clear that the programming language *Does not define how skilled a programmer is* it is the understanding of the concept and fundementals of programming, analysis/problem solving, logic, understanding of hardware..etc.. that make the difference.
To suggest that Visual Basic programmers are lesser skilled is an inaccurate generalisation and somewhat insulting when this is implied.
I personally do not use VB because I want to - I use it because it the standard developing platform in the companies that I work for.
Please think twice before bashing VB as a development platform. The fact as I see it is this:
* Linux makes good servers
* Win95 is EVERYWHERE as far as desktop machines in business is concerned
* MS VC++ is a powerful tool, but it takes alot of work to get the same result as a monkey can get in VB.
* What else are you gonna write the front end to your Linux server in if there is a room full of users with low comp. literacy who need their data quickly
* Sure it's not the most elegant soloution, but most importantly it's good for the purpose.
* Two other things in it's favour, any monkey can learn it, and the support is great. Both reducing the cost of maintenance
POINT: Less OS bashing guys, the two can play *together*
Having said that, my home network is still (all but one machine) Linux
I've become intrigued lately with the open source Zope project. Zope has a templating system (DTML) that looks simpler than PHP. And according to zope.org, it has hooks for connecting to a number of backend databases. Is anyone using Zope? What are your thoughts?
Once all those youngsters get older, they will be used to the UNIX paradigm of programming and anyone who's programmed in UNIX will find that the Windows method of doing thing will make their flesh crawl.
Get 'em while they're young, best way to go.
I'm trying to teach myself to set people on fire with my mind... Is it hot in here?
I was the one who used the term "softcore". My gist was that there is a group of C/C++ programmers who see VB as a language beneath their skills. VB is perceived as an easy language that makes every programmer instantly equal. In my experience these same people tend to view Perl as a language equal to their "talents". This, of course, is bogus. There are a lot of cases where not using a language like VB is simple arrogance.
1) I can produce efficient code in ASP that can be maintained by *any* stupid webmaster -unlike most perl scripts ( $g>% doesn't make much sense to most ordinary people, heck, I can't tell if this is valid perl code) , oh, and,
Any language can be used to create obsfucated code.. The more important question is which languages can be used to create robust code.
2)ever tried to open a database on *any* platform in just 2 elegant lines of code on linux/perl? guess not.. let alone send someone a script with an access database (made in an hour or so), let him just upload it to the webserver and it works.
Yep, and yep.. mysqldump dbname > outfile. And connecting to any db is simply a matter of having libs for it (last I knew both Perl and PHP supported quite a large range of db's as well as ODBC) then pass it a connect() [or equivalent] and query(). And what's this any platform thing.. You mean: any platform that has ASP. Last I knew there weren't a hell of a lot of those out there..
show me, linus!
Why do you want to see linus?
dan
I don't know, that error message is probably one of the fastest I've ever seen.
It must be some kind of capacity issue, the server doesn't seem to be suffering any speed problems at all... I just can't figure out why the page doesn't say "capacity exceeded" or something.
Sorry guys... looks as if my web site got slashdoted... I'd like to attribute this problem to my web hosting company. Despite promising me unlimited bandwidth for $8.95 per month, they've been giving me nothing but grief for the two weeks that I've been using them. (I knew it was to good to be true...) Anyways, I fired them yesterday, and found a new host the same day. Unfortunately I wont see the results of that for another day ot two. What lessons can be learned from this... Never buy anything from icom http://www.icom.com BASTARDS! - Kelly McNeill
It's the developers, stupid!: the real NT-Linux battlefield
The media is nutso for bigness. All you hear about in the tech press these days is that Linux is attracting big partners like IBM, finding big users like Deja.com, and making big IPO money like RedHat. That's all good, and I'm sincerely grateful for anything that helps me make a living without using Visual Interdev -- but to me, small and raw is where it's all at. As a recent Salon story hinted, by the time something gets big enough to have major media outlets and MBAs and marketeers crawling over it, much of the juice of the thing is gone. The masses might find Bill Gates worthwhile because he's on the cover of Forbes magazine; but for a minority, the one interesting thing he ever did was write a little BASIC compiler on a crappy paper tape when he was a teenager. It's all been downhill from there.
The tiny raw startup is the real locus of the Microsoft-Linux showdown. Forget the desktop, forget the enterprise, forget the few big content/commerce sites -- it's unclear whether Linux can win in any of those segments, and in any case it doesn't matter. The important thing about Linux (and Open Source and the Web) is that it shifts the balance of power back to the independent developers, the underfunded experimental coolness-of-the-thing-itself startup-type hackers.
OSS (including Linux) has radically reduced the costs of development and vastly increased opportunities for collaboration. The Web has opened up new vistas of demand, and nullified most distribution problems. Funding and business services are far more available now; while the potential for personal peculation (or the opportunity costs of developing within a corporate framework) tend to make startups seem relatively attractive. The most innovative and productive segment of the tech industry has famously been the two geeks in a garage, and now they can compete strictly on the basis of ideas and skills rather than corporate resources. Somewhere in this segment are the Yahoos and Inktomis and Netscapes and ids and ebays and even slashdots -- basically all the things that make people buy computers in the first place -- of the future. It's all about the applications, baby -- because without a continuing stream of gotta-have-it apps (and the sites on which they're implemented, often transparently to the user), computers are just typewriters and the Internet is just a color fax machine.
Microsoft cares about developers, or they say they do -- and they should, because that's how they got to be the giant iguana of the software industry in the first place. DOS/Windows/NT has always been about as sexy as a Depends adult undergarment; but even if an OS ain't cool, it can still win by being super-dependable, ultra easy to use, or overwhelmingly popular with application developers. The last rationale has traditionally been Microsoft's trump card, the reason that developers grumbled and cursed at Visual Basic but kept buying. I'm one of many people who basically keeps a Windows machine around just to read PowerPoint documents (and, I confess, I'm gonna keep using IE until something better comes along) -- which suggests that one or two killer apps make the OS decisions for you.
But in August 1999, the Gartner Group released a study claiming that the number of Windows-first developers is in the middle of a sharp decline from 65% in 1998 to 40% in the year 2000. A quick flip through the job ads in bellwether Silicon Valley shows more *nix than Windows development jobs, especially in the hot new sectors. For the first time in a long time, the road to software nirvana does not go directly through Redmond.
Thus, for the first time in a long time the question of how the startups developing the apps of the future choose their platforms is an interesting one. As I hinted in my previous essay, I will argue that Microsoft may now be putting out halfway-decent small business software, but their marketing strategy utterly fails to reach the more innovative part of the developer community. Linux, in contrast, seems to effortlessly meet the needs and philosophical convictions of the raw tech startup. This seemingly insignificant difference, almost impossible to account for in traditional marketing terms, could have startling consequences down the line.
How startups choose their platforms
Let's say my partner and I are developing something: a product recommendation system that makes sense to humans, unlike the bad jokes heretofore palmed off on the public under the rubric of "collaborative filtering". We've written a bizplan, learned a few stupid PowerPoint tricks, given slide presentations, schmoozed with suits -- and for those of you who've never done it, let me tell you what a thrill it is to sit through dozens of "where the software industry is going" sermons (summary: technical innovation is dead/pointless/the problem and big corporate power is good/inevitable/the solution) by a bunch of people who don't know Hello World from Hello Kitty -- but that's a different essay topic.
But for us, the crucial thing is the implementation. We just think it's lame to go after funding with nothing but a pile of paper, a slideshow, and a song in our hearts. We've also discovered that finance types, many of whom are refried bankers or accountants or real-estate moguls, don't really like to invest in software. Startups that are basically about tweaking a business model tend to get more dates than the ones that depend on complex new systems working as designed, which give VCs bad dreams about all the things that can go wrong. (Caveat: this may not apply to Silicon Valley, where all the VCs are hackers and the streets are paved with gold.) So for a software venture to compete with the mass of SellOnTheWeb.coms hatched up by MBAs who speak the same language as the funders, the idea needs to be fully implemented or as near as dammit. Realizing this, we're going to put up an extensive alpha on the Web, complete down to the last font style and hyperlink. It's gotta rock -- this is our whole business at stake here. So how will we choose a development platform?
Cash-poor
The very first variable is that we're knowledge-rich and cash-poor. Really, really poor. We keep hearing how people in Silicon Valley can get millions of dollars just for the right concept, but that ain't how it works here in the Midwest. In Palo Alto, "startup" connotes the thrill of entrepeneurship, the adventure of high growth, the possibility of massive stock options. Saying you work for a startup can get you some play with that cute girl/guy at the espresso bar. Here in Chicago, "startup" means you and your buddies gotta look under the sofa cushions for enough change to buy a CheapBytes CD-ROM. Plus, your mom calls you up every other day to beg you to get a real job so she can hold her head up at your cousin's upcoming wedding reception -- you're good with technology, have you ever considered becoming a Xerox machine repairperson? So the idea of spending thousands of dollars putting together a little network so you can put out a demo that may never come to anything is a laugher.
Programming tools
We certainly can't claim to be visionaries here: my partner actually wrote our first web application (the recommendation engine currently used on www.mysteryguide.com) in Macintosh Common Lisp. As the probability of Lisp world domination dwindled, we did finally decide to move over to Java. Of course, that's a tiny bit awkward in Microsoft world due to the long-running Scott-hates-Bill soap opera (J me no plus-pluses and I'll violate you no licenses).
We've also started to use Java servlets and Java Server Pages. I had sort of thought Microsoft might buy Live Software, makers of leading commercial servlet engine JRun -- all together now: embrace, extend, exterminate -- but those clever Allaire boys scooped it up instead. We've used both the JavaSoft Win32 JDK with JRun, and the Blackdown Linux JDK with JServ (the Apache Project's first servlet engine). The latter combo has the definite edge because it's free (speech and beer). (And before you flame me for hypocrisy: we are seriously considering GPLing our e-commerce software tool but nothing's final yet.)
There are still people who have a specific reason to develop native, like game makers. But I think we can all feel the momentum toward cross-platform and especially web-based apps, once those bandwidth and privacy issues get worked out. And this is where what went around is coming around for Microsoft. They've done tons of things over the years to make developers -- especially those in small shops -- fear and distrust them. Like a straying spouse who's just been served with the divorce papers, Microsoft wants the love back now -- but is a free subscription to Microsoft Certified Professional Magazine gonna do the job?
Client-server versus server-server
Everyone in our shop develops on a server. Clients are just bimbo-boxes for reading mail and data entry and goof-off web surfing. I can't even look at most of my work without having it processed by a web server, and I'm always needing to connect to local and remote databases (it's possible I could work around this issue if MS Proxy Server didn't choke on telnet, but that's already in the subjunctive tense). Because we run separate NT and Linux networks, we need to move things back and forth between machines (remember, BackOffice Small Business Server doesn't form trust relationships with other servers, and the ftp on my SBS installation doesn't work). We need to run big processes that tie up tons of cycles. Finally, we're a virtual organization with people doing parts of projects in disparate locations. So client-server computing in the SBS sense is already a paws-up model for us.
Here's a chart of the stuff we use on a daily basis in our business. It clearly shows the awkwardness which NT imposes on the tech startup, versus the "instant tech startup in a box, just add connectivity and stir" flexibility of the Open Source model.
Function BackOffice SBS Linux Web service Server (up to 5 domains) Choice of servers (we use Apache) DNS No Primary, secondary, or caching SMTP/POP Server (one domain) or client Server Networked servers No Yes Scripting language ASP (or sold separately) Choice of products (we use PHP) SQL database SQL Server 7.0 (see note) Choice of products (we use MySQL) Servlets Sold separately (we use Jrun)Choice of products (we use Jserv) Java Yes (we use the JDK) Yes (Blackdown JDK) JDBC driver Sold separately Yes (we use MM.MySql)
Note: it's not clear under what circumstances, if any, SBS allows you to deploy SQL Server on the backend of a public website, as opposed to in a development/intranet environment. There's no technical barrier to doing so. The enterprise version of SQL Server requires a $3000 per processor Internet Connector License, but there's no mention of the topic one way or the other in SBS materials. Thanks to Jiva DeVoe for this info.
Software licenses
When people talk about "scaling", the implied modifier is always "up" -- presumably from a big server farm to a humongous one. But let's get real: a relatively small number of businesses require more than 16 processors, more than a thousand simultaneous connections, databases stable over hundreds of GBs, and instantaneous mass-customization for millions of users. Why don't we ever talk about scaling down -- in other words, that part of the spectrum from a big server farm down to one box? The vast majority of businesses, and an awful lot of the most interesting ones, live here.
In the real world, Linux grows seamlessly from the first workstation to the quite large office. You can churn out all the custom boxen you need whenever you need them without worrying about a thing. Microsoft, on the other hand, requires a software startup to endure what we might call "punctuated equilibrium" in order to stay within the bounds of restrictive licenses and technologies. At any given point, a MS solution will require you to pay for something you don't need, or go without something you really do need but not quite enough to justify the cost, or violate the license. Wasn't it de Toqueville who said bad licenses force good customers to cheat?
I certainly don't claim to be an expert on Microsoft licensing; in fact, the whole subject confuses and bewilders me. I tried to learn about it on the MS website, but didn't get too far into the arcana: the licensing glossary was a dead link so I still don't know a PUP from an UPG, and it's not easy to get info on volume discounts and Open License deals. But this is my first crude whack at trying to figure out a typical software upgrade path from the needs of a small development-only environment to those of a 51-person software company running both a production website and a development-oriented intranet:
Redhat Linux Microsoft 1 intranet server, up to 5 clients 79.95 1499 1 developer software package (programming and office) 1079 (Visual Studio)249 (Office2000)
1328 subtotal per (x 51) Each 5 additional clients (up to 50) 299 (x 9)
2691 subtotal Back Office Server upgrade (over 50 clients) 4349 1 single-processor web server with database 158 (MySQL) 639 (NT Server)
1239 (Site Server)
2999 (Internet Connector)
1399 (SQL Server)
2999 (Internet Connector)
9257 subtotal per TOTAL 237.95 85524.00
I realize that this chart is completely artificial. On the one hand, if you had a 51-person development team, the price of Visual Studio would be the least of your concerns. On the other hand, I can't imagine 51 programmers being willing to share one intranet server for everything. Also, while it's true that many smaller organizations aren't going to run their own web servers, application developers find it harder and just as expensive to be hosted elsewhere. My main point, however, is still valid: that the Microsoft licensing maze hinders the tech startup that chooses it.
Business rationales
Here I must venture into a sensitive topic: who makes the IT decisions, and on what grounds? Leaving aside the edgy cracks about nerds and PHBs, I think we all know there is a gap as wide as the Grand Canyon between the thinking of the two sides. The party of the first part makes decisions based on their own training and experience plus discussions with other techies they respect; their motto is either "Once you go *nix, you never go back", or "Mo' bugs, mo' money.". The party of the second part gives priority to non-technical rationales, including customer preference, the difficulty of hiring skilled workers (meaning those you can't treat like fry cooks at McDonald's), and the ability to sue vendors when things go wrong. Both sides have their prejudices: semi-rational hatred of all Microsoft products on the one hand and unquestioning reliance on Microsoft marketing materials on the other.
Until recently, there was an uneasy balance of power between the two which varied by location and industry but basically resulted in the suits getting their way. In business circles, the statement "[Authority figure] says NT is the industry standard; besides, Microsoft's stock is soaring while [competitor]'s stock is sinking" was the unanswerable trump card which ended all discussion. However, this smug acceptance of the Microsoft party line is being challenged more frequently of late, particularly by the Silicon Valley types who make money by spotting the waves of the future.
Here's an object lesson: I know a startup full of genius hackers that decided to develop their application on a 100% Microsoft platform -- NT, Visual Basic, the whole nine yards. They did this despite the fact that all their programmers were true artistes on *nix and Mac who had previously scorned Windows, and furthermore that all of them had been early users of the Web. They were definitely following a strict client-server model as late as the end of 1998, when their CEO told me "the Web isn't a legitimate business tool, therefore our customers won't use it". Within weeks of this conversation, every enterprise software vendor -- including the leader in this startup's market -- announced the death of client-server and a mass rush to get their apps on the Web. So much for MBA herdthink.
I can't believe this attitude wasn't partly engendered or reinforced by the fact that Microsoft has been (for understandable reasons) so dependent on its market share and so reluctant to see the Web as a legitimate tool. Their brand of Follow the Leader works because of the huge anxiety engendered by technical change. Everyone's looking for something solid to hold onto, one thing that will continue to be true no matter what. For some, it's good technology. For others, it's market dominance. But what does that phrase even mean today? Maybe it designates the OS with the most desktops; but maybe it means that the most successful and innovative companies in every category are running some flavor of Unix. Small startups in particular need to think hard about the growing risks of hitching a ride on the Redmond express. If Ballmer and company guess wrong about something, they've still got billions of bucks in the bank. If you go along with their wrong guess, game over.
Consequences
For all these reasons, we decided to do our alpha on Linux instead of NT. Now Linux is part of our global business strategy -- not because of any ideological issues we might have, but because it works. From a Linux/Java base, it's easy to port to other platforms like the other Unices that dominate the server market, if necessary. NT is on the way out and W2K seems to be stuck in the birth canal, but developers can be comforted by the thought that *nix has endured a lot already and will probably be around for a while longer.
Now I don't know whether my particular startup will get off the ground or not -- that was just a convenient illustration. My point is to suggest that every "two geeks in a garage" team now must discuss whether Linux (or some other *nix, and/or other Open Source solutions) are right for them. The arguments in favor are too overwhelming, the cost of choosing wrong too great.
A modest proposal
If Microsoft truly wants to focus on customer service, developers, and the Internet, they've gotta come up with some new marketing ideas which take cognizance of the unusual value of the small developer market. This entails reversing one of the fundamental tenets on which the company was built, which is that mass beats class every time. In years past, it made sense to cater to the lowest common denominator while alienating the few pesky independent-minded developers -- because of the desktop monopoly, which was the city hall no one could fight -- but now developers have to be convinced it's in their interest to work native rather than go web-delivered.
So here's my humble proposal: maybe Microsoft should try to appeal to the raw startup, so more of the cool apps of the future might run on some version of Windows. If I were Steve Ballmer, I would form a small team to bring out another version of Small Business Server deliberately oriented toward the raw Internet startup. It must be built on top of a rock-solid TCP/IP layer, because everything will employ that protocol -- so fix my Proxy Server problems or forget it! Get some development tools in there -- I don't need to share a fax machine, I need to use servlets and make database queries. Move faster to figure out what new stuff independent developers want, and give it to them tout de suite. Carve out a logical upgrade path through the thicket of licenses. Microsoft shouldn't think of this SBS as a moneymaker at all, they should think of it as developer relations -- meaning it should be cheap (free for CS students -- an awful lot of the innovation is coming out of a really small number of these folks), update frequently, and go very lightly on the more annoying usage restrictions. The goal is to match most Linux distros' "instant tech startup in a box, just add connectivity and stir, appeal.
But I guess no one wants marketing advice from me, the most successful software company in the world least of all. Little software startups like us will be attracted to Linux in larger and larger numbers, while the Colossus of Redmond spends its time trying to squeeze the last drops of blood from its desktop dominance.
Hmmm, you're right, but why limit yourself to the poor and inexperienced?
... Holy Scheisse!!!) and still have the top-notch techie tools to which I was so attached. It was, in a nutshell, the best of all worlds: an honest to goodness and cheap Unix on commodity hardware.
I was a 30 year old techie who could afford, and owned, a SPARCstation at home when I switched to Linux in 1995. I had a SPARC because I wanted to have the same home and work platform. Yes, I used all the GNU stuff on SunOS even before Solaris 2.x made it an even better choice to do so.
Linux let me go back to owning a hardware platform that didn't gouge me for every little hardware extra (chech the prices for SBUS video boards etc
You don't have to be a 13-24 to see a good thing as a good thing.
-M
I thought only the developer's edition was free with a maximum of three seats? Do they have a free edition you can use on your website?
"We're sorry, but the website you're trying to reach has been disconnected."
I agree..
My concept of a programming language is that it is only a tool.
A simple example: If I had a choice of using C++ or Visual Basic to connect to a simple Oracle database application(under Windows!) I would use Visual Basic (especially for a tight deadline).
On larger/complex applications I may choose C++.
If I had to extract text from html documents I would use Perl not C (I could use C but it would take longer to write the same thing!)
The old saying rings true - "use the right tools for the right job!"
... play on Linux and work on a commercial Un*x. That way you can eat and play and the skills you develop in play can easily be used at work making you even more valuable and allowing you to eat even more.
Why bother with Win32 at all. Even if (Solaris|HP-UX|AIX|IRIX) isn't Linux, it's a lot closer to the mark than any Window pain.
-M
...for me, isn't an IDE. I hate those big, overblown things (although Borland's is somewhat tolerable), and am quite happy compiling and locating errors within Emacs. But what I've missed in Linux is a "resource editor" for creating dialogs without writing code for each button. But now there's Glade, a GTK GUI builder; and from the little I've played with it, it's excellent!
At least in the Windows world. VB was released in about 1991, and it became popular, and then all the C++ programmers drooled when they talk about it.
THEN, VC++ was released to ride on the VB hype. It turned out that the word "Visual" wasn't meant as literally. But, a lot of copy were bought before the fact was well-known.
So, it is the way VC++ thus Visual Studio became popular. In itself they are nothing fancy, but people just got used to them.
The closest Linux "equivalent" to it in terms of mode-of-operation and look-and-feel is KDevelop.
I guess it was done deliberately, to make the transition easier for Windows programmers.
The point? Visual Studio may not be something as powerful as emacs, but it is what most developers use everyday and it is got used to by people.
Suppose you make a query that you know will result in an empty result, then store the value. You could then try to compare to that value to see if you've got an empty result.
I see a lot of Zope discussion on comp.lang.python - perhaps it might be worthwile to look there?
I found the NewtonOS API pretty cool. IMHO one of the most interesting operating systems. Although the NTK wasn't exactly a very developer-friendly IDE.
Isn't that the main selling point for VB. You can use controls other made. MS hypes the bound control control thing to no end. It's supposed to make your life easy. Don't blame the programmer who is trying to use some control blame the idiot who wrote a unusable and crappy control.
War is necrophilia.
Why would you be crazy enough to lock yourself into calling fucking COM crap? What's the matter, got a mad on against portable code? Sheesh!
-- ultra1
> I'm one of many people who basically keeps a Windows machine around just to read PowerPoint documents
I guess she never heard of Star Office. It can do PowerPoint just fine.
-- Don't Tase me, bro!
They try to get a point across, and end up mucking up the details.
It's a BASIC interpreter, NOT a BASIC compiler. Even Bill Gates wouldn't make that mistake.
It doesn't matter whether a new phenomenon is 'big' or 'small', as long as it can stay agile and get fresh ideas. Linux has a big advantage here due to its development model. If the next two great programmers want to hack and rewrite it, they can feel free to do so, and send patches.
Once we get to page two, we finally get to the real reason: NT either doesn't work, or is too expensive!
NT: no, but you could give us more money instead.
Linux: would you like fries with that? ketchup?
Now, I could do without the journalist speak here. There's a good message buried in some of this Katz-ian drivel, which goes something like this: people without lots of cash, and people concerned with quality will find a free, UNIX-like solution. People with a lot of money who believe sales reps will use a Microsoft solution. Innovative startups don't have a lot of money. Ergo, the future is Linux, *BSD, or something, with Linux being the most popular at the moment.
However, we could just post a link to NT vs. Linux every week and be done with that.
An interesting point could have been: since Microsoft doesn't write good code, why don't they just steal code from *BSD? It's free, it's legal, and the advertising clause is gone. Probably they wouldn't because of their arrogance, and MacOS X has a head start on them for stealing from BSD.
---
pb Reply rather than vaguely moderate me.
pb Reply or e-mail; don't vaguely moderate.
I am using Zope. Rocks. Our intranet now runs on Zope, and soon a customer's.
Let me start off that I am primary a microsoft developer. I know VB/ASP/C++/MFC/ATL/COM pretty much all the stuff Microsoft would like developers to learn.
:)
So you can tell I'm already biased.
But without screaming about how much better microsoft's development environment is to linux's I'll admit I don't know jack about linux development. The only time I ever wrote an app is on a SCO/UNIX box a few years back. It was pure ANSI/C++; all it did was r/w to ONE file. And took a few parameters. Although I do know vi and have wrote some small test crap in it I opted for VC++ IDE.
Here's what I like about developing with Microsoft tech:
- nice IDE's. the VB/VC/InterDev IDE is assume. Integrated debugging, initi-pop-up-thingy. Class tree thing. And of course pretty colors for key words
- VB, great for prototype's, testing COM objects, and little crappy apps.
- ASP brain dead web development, super easy and has COM automation support
- COM, I'm in love with COM. Write reusable distributed black box's in any language. (and soon coming to linux guys
- Documentation [BIG POINT]: I almost always know where to find documentation, (1) msdn, (2) dejanews, (3) msdn online. Even if it's not that good, I can figure it out with what I find. And after enough digging, I find what I need to know 95% of the time.
And now what I DON'T like
- MFC: I like to call MFC the VB for C++. It's REALLY REALLY good for making ONE type of app. The big mololithic MDI app with file/open/save and edit/paste/ yadda yadda. Anyway. Other then that. It stinks. it spoils you from knowing the Win32 API in SOME parts, then in others it's like "welcome to the registry"
- Win32 API: ehh... it's OK. I mean I have some sympathy for microsoft. They have to make this thing backwards compatible with crap from the 1980's. but like many have you said there's a million ways to do anything, and each way you have to choose from passing 15,000,000 parameters or 4 parameters with a structure with 15,00,000 parameters.
- C++ type InSaniTy!. Bstr, BSTR, string, Cstring, OLECHAR, unicode, ANSI, or multibyte? CcomPtr, IdispatchPtr, FAR PASCAL* etc.. etc... C++ is partly to blam here. But it would be nice if it didn't take me 2 days to figure out how to convert a DB_DATETIME to a DATE type (it really did take that long).
- Million ways to do anything: lots of competition within microsoft's own madness. Lots and lots and lots of ways to do anything. What's really bad is you pick up a book and it shows you how to say, sink event's from IwebBrowser2, then you pick up another book and they do it a totally different way. It makes it hard to know which is the "best" way, or even the "approved, modern" way. I guess if you've actually mastered this stuff you can decide, but for people like me who learn by copying stuff our of books and messing around with it, it sucks.
So what id like to hear is how is linux better, the good points and the bad. From my impression (ignorant as it is). Developing in Linux means you need to know basic POSIX stuff. Know how to compile stuff in GNU C++. And know what's up with glib, libc,(I think that's what there called) or gdk, or tcl/tk, or perl, or? I'm just through stuff out. How would linux make me development a smoother more pain free.
I've seen some gdk stuff and it didn't look much better then Win32, still wasn't C++ OOP. Still had funny pointers and type's. honestly it looks like the same good and bad, except that there isn't one big central place to get everything from. No "way to do this". Just lots of stuff thrown in from everyone and there dog.
-Jon
this is my sig.
The source seems useless but still cool, so what if other OSs rip it to pieces. It would be cool to see the functions and sharp feel reimplemented on todays hardware. Also the amiga for me hardly crashed except with dodgy games and MCP.
Instead of moaning about VB's popularity, why don't you come up with something that matches its features? Well, because there's nothing. As long as there is nothing, you can't write the apps that people are now writing in VB, and therefore, you cannot abandon Windows, and therefore, Linux will never be used by the masses.
It wouldn't be difficult to move from MsOffice to any office suite on Linux, if it weren't for the automated office procedures written in MsAccess and VB.
Forget MsOffice: it's not keeping people on Windows. VB and Access are!
How? When? Where? :)
Take a look at Be OS. The API's are pretty nice.
Developing and deploying in VB is a nightmare. Activex registration is a hit and miss episode from DLL hell. The future of app development is through a browser. I suggest you'll at least start learning ASP or PHP because VB app deployment is headed for the trashbin of IT history.
I'm sorry, but, Microsoft Developer Network is by far and away the best development support platform for developers ever known to the software world. The documentation is voluminous, connected together, the tools make some sort of cohesive sense together. I'm not a "sysadmin, wish I was a developer" or some high-school kid with delusions of adequacy. I've got 25 years developing on Mac, Sun, *nix, Microsoft, Novell, VMS, and yes (for you folks whose long term memory only goes back to '95) all the way back to PDP-8's when real men programmed. Basically, you can get every MS tool known to mankind for $3K (i.e. a Universal MSDN subscription). I just got a letter in the mail from Microsoft saying that now every local developer on a network is licensed to use the complete package. So for N developers it's $3K, period. Please don't give me the crap that some 14-year old wannbe can't afford that therefore the world is gonna be lacking some revolutionary software. Decent, commercial software is done by professionals who CAN afford 3K. Even if I'm in a lean startup (which I've been in several) the tool cost from MS is cheap. Sun, Apple et al.. can't give developers a decent development environment, why do you think they depend on GNU?
PHP
PHP:
Perl:
$dbh = new Sybase::CTlib 'user', 'password', 'database';
$dbh->ct_command('select * from compunity.dbo.vat');
Now take a hike Troll.
It's more advanced than NotePad and just this side of an IDE. I've been using it for 2.5 years and haven't stopped.
ASP and PHP are essentially equivalent. It's important to note re cheap developers like students and so on you can do full Win32 web development on a standalone 95 box with Personal Web Server, ASP, ActivePerl, and (ugh) Access. or mysql for Windows I guess. But if AOL/Sun/Netscape doesn't stay competitive on the desktop (ie the browser) there'll be a monopoly there to be exploited with propietary extensions to HTML, nonstandard Java, nonstandard Javascript etc. They're fighting the war on many fronts.
The problem is that the MS APIs are a constantly moving target. It might take someone a few years to learn to really use the Unix API, but once they do they can quickly produce quality code or maintain existing code. This code can be used on a wide variety of platforms with little or no changes.
In contrast, with MS APIs developers are forced to relearn the APIs just as they begin to master them. They're so complex they *require* assistance tools. The changes greatly complicate life for someone who needs to maintain existing clients - and in fact many people believe that MS changes them specifically to force people to upgrade their software. And the APIs will never, ever, be usable on non-MS platforms. (You might be able to run emulators on other platforms, but they will always be forced to play 'catch-up' to changing standards.)
This is a classic example where playing for the short term will kill you in the long term. In the immediate future companies that use "easy to use" MS software will have a modest competitive advantage, but over a remarkably short time they will be saddled with "hard to maintain" MS software. Their competitors who didn't fall into this trap and survived the short term challenge will then be able to eat them alive, since they won't have the same ever-increasing maintenance costs.
ADO is simple, nice, easy. OLEDB is a multi-headed dragon that will bite you at every chance. Unless you have the grizzly task of writing an OLEDB provider, the functionality you seek is most likely contained in ADO.
Really. It is nice to hear from someone else who finds VB a tool that removes complexity and is good enough for 98% of tasks, and in the hands of a capable developer is almost untouchable. Now excuse me while I hide from the oncoming flames from C++/UNIX/Perl bigots. Cheers mate!
So what you're saying is that Microsoft is feeling the heat in the competition for developers, probably at least in part from its open source competitor, Linux.
Decent, commercial software is done by professionals who CAN afford 3K.
That's arguable, but kids out of school who want something to learn and play with usually can't afford $3K. The article has an excellent point - Microsoft, to a large extent, in its push into the big iron world occupied by Sun, Oracle, and IBM, has a licensing policy that's started to look a lot like that of minicomputers when PCs were up-and-coming. This is leaving young and small developers out in the cold - the same class of people who helped get Microsoft where they are now, back when all Microsoft's development tools put together didn't add up to $3K.
Hmm, I'll bet you compsed this note from a MS product then cut-n-past into ./?
Wanna guess how I know?
Jim
beautiful, absolutely beautiful... On the bad side, tools are a bit skimpy :(
Any high schooler who's dinked around with VB can wire a form to an ODBC table. That really is beneath me - you can throw away 90% of what I know about design and programming and still make it work, because it's largely already built in. But when you need to write, say, an X.509v3 decoder you're going to <KIBO> fry your brane!</KIBO> The moment VB's special functionality is available with a real language, VB should be relegated to people who don't want to be programmers, and programmers who aren't smart enough to learn a real language.
we call you stupid because weve seen your attempt at a web page. prick.
It's already happened. It's called Visual J++, all the features of VB, with an elegant, easy to use, designed language. :)) sold me out and I haven't touched VB (which I used to use primarly for testing) since....I'm sure I'll still use it for testing and writing quick apps, but J++ does basically everything I need. I have access to all my COM objects i've written in ATL, and most of the ActiveX controls VB had access to. It's a dream come true really :D.
That's why I'm not so critical of MS melding java and com together in their JVM, it lets me simply use activex controls/com objects just as if I were in VB.
Basically, VJ++ 6 (can't handle not having intellisense
Now, if Microsoft would just get off their butts and write a Java2 implementation for J++ 7....
Borland Inprise has promised to release it's full featured RAD, Delphi, by next year. I can't wait. Just imagine how easy it would be to write applications for Windows and Linux with such a tool! Check it out @ http://www.borland.com/linux/
Sorry for hittin' a raw nerve there, buddy :)