Tek-Tips is the largest IT community on the Internet today!

Members share and learn making Tek-Tips Forums the best source of peer-reviewed technical information on the Internet!

  • Congratulations strongm on being selected by the Tek-Tips community for having the most helpful posts in the forums last week. Way to Go!

Linux and Open Source or Microsoft Dot Net 1

Status
Not open for further replies.

jerjim

Programmer
Jan 4, 2001
85
PH
First of all, Hi to everyone who reads this and thanks in advance if you can offer me any advice:

I have not been active in programming for the past four years. But when I was programming, the last language I mastered was Microsoft VB6 accessing a Microsoft Access database. Before that, I programmed in Cobol (on minicomputers), then on the first micros, including the IBM PC, dBASE II, III, Clipper and FoxPro. Then VB5 and as I mentioned, VB6. I was also deep into studying Java and also had a crack at programming Internet applications using JavaScript.

Now, I have the opportunity to again develop applications. But my question is in what language or internet technology should I invest my time and effort? Should I go Linux and all those other open-source technologies (of which I know nothing about)? Or should I go into Microsoft's dot net technologies? C-Sharp (which I find very elegant and appealing), ASP.NET and all that other stuff.

Because of my familiarity with previous Microsoft technologies, my gut feel is to go dot net. But then again, I don't want one company or one technology to dominate the computing landscape. Microsoft technologies also cost a bundle and I feel whether rightly or wrongly that what they charge overgrossly compensates their development, marketing, distribution and whatever costs. Honestly thought, I find the dot net technologies very impressive.
 
I think you have to ask yourself a few questions first:

1. What applications will I be developing? Client/server, utility programs, games, productivity type software, etc...

2. Depending on the application you will develop, what OS is the application intended? Linux, Windows, Mac, etc...

3. What programming language are you comfortable with?

In addition, here are some other considerations. Linux has ventured into DOT Net technologies (see The Mono Project by Novell). That makes C#, ASP.Net and VB.Net more cross-platform compatible. Java and C++ is also a language that can be used accross different platforms although, C++ programs have to be recompilied for a particular OS.

I hope I have helped.


Paul

Work on Windows, play on Linux.
 
Dear Paul:

Thanks for your prompt response. I hope you don't mind if I further muddle the issue for you but I have no definite idea what applications I will be developing but I have this general objective of putting up a website through which people can transact business. A website which sells several products and then people can browse through the products and place orders. So you would have to have a database in which to store the data about the products as well as any incoming orders. My initial idea at first was a website for real estate brokers where they can put up properties for sale and visitors to that website can view their properties.

So to put up websites like that so I go into Linux or Dot Net?

As to what programming language I am comfortable with? I have begun to study C# and I find it very, very elegant.

Thanks again in advance.
 
Linux or .NET? what a weird choice.
Linux is an operating system, .NET an application architecture.

Will you drink dinner or wine tonight?

You can create web applications using all kinds of technologies.
Java, .NET (C#, ASP), PHP, Python, Perl, the list is nearly endless.
 
Hey jerjim:

jwenting has a point. Don't confuse programming technologies with operating systems.

Here is the website for .Net on Linux:


I think C# is great and find the code easier to read than Java. Developing web-enabled applications give you the following choices:

1. ASP - Windows. But I think there are interpreters for Linux.
2. PHP - Linux. Also, interpreters for Windows can be found.
3. Java - Cross-platform. Java and JSP.
4. .Net - Cross-platform but may not be fully developed for non-Microsoft operating systems. C#, ASP.Net and VB.Net

Anybody feel free to append to this list.

Paul

Work on Windows, play on Linux.
 
Personally I would avoid Java like the plague. It's bloated and too wordy. I've been in an environment where I've had to write and maintain java for the past two years and I hate it. I thought I was over tracking down null pointer references and memory leaks when I quit writing C in the 90's, but hey, look at me now.

I learned Perl about 13 years ago and abandoned it after 10 when I finally got fed up with its adhoc syntax, inconsistent language constructs and "bolted on" features that never seemed to be very well thought out.

I currently write a *lot* of PHP and even though there are a lot of useful libraries and add ons on the net, I feel it suffers from all the weaknesses of Perl plus a few more just for good measure.

Right now I'm working on a short term contract to convert a payroll system and given free rein to pick my own tools I was so happy to get back into programming python. It's syntax, OO design and flexible hooks to the language behavior is a joy to work with. My code is more readable, more maintainable and more adaptable to changing requirements.

When I first started writing Python it took me about 6 weeks to become as proficient in that new language as I was in Perl after 10 years. I highly recommend it, it truly a nice language for beginners and experts alike.

As far as .net, I personally detest Microsoft... their software, their attitude and their market practices. However, Python is one of the language options for that environment. You'll probably be stuck with using a MS database, which isn't too bad since they realized their own database products sucked, bought sybase and renamed it SQL Server.

I highly recommend MySQL. Being a long time Oracle developer I was critical of its lack of features and non-standard SQL, but just this month their 4.1 release was pronounced production ready (I've been using the beta/gamma versions in our production for months). 4.1 goes a *long* way to making MySQL a truely viable SQL database and 5.0 promised bigger and better things.

If you're really interested in having a framework like .Net, take a look at Mono, I understand it's coming along nicely. But for most things you can really do a great job with a good language and a couple of days worth of well thought out tool development.
 
Status
Not open for further replies.

Part and Inventory Search

Sponsor

Back
Top