Cheap Software Languages for NT? 100
JeanBaptiste writes: "I work for a small company that refuses to spend the money on visual studio. I need this (or some other language) to do my job (which isn't programming), and for about a year now I have had to use borland C++ 3.0 for dos to do the things that need doing. I know C/pascal/basic from years ago, but have not had to write any programs for work until recently. My question: Are there any cheap/free programming languages that will make a stable winNT/2000 app?" Well, there's ActiveState, which has perl, python, and assorted other packages and tools.
cygwin! (Score:4, Informative)
click me! [cygwin.com] also, perl!
python even has gui bindings for windows.. hell, so does java.
Re:cygwin! (Score:2)
I'm not sure about native Win32 GUI stuff, but Ruby [ruby-lang.org] certainly has some pretty decent OLE [rubycentral.com] support.
There's also support for native DLL API calls [rubycentral.com], and a free downloadable book [rubycentral.com] (Programming Ruby [amazon.co.uk]).
The syntax is nice and clean and the object model is lovely. The C API is rather good too; C/ObjC/C++ extensions often end up looking rather like Ruby.
You can grab Win32 binaries [pragmaticprogrammer.com] from http://www.pragmaticprogrammer.com/ [pragmaticprogrammer.com], which includes a nice selection of bundled modules.
Re:cygwin! (Score:2)
"Checking to see if GCC can produce executables...failed"
no matter what I did. No installing apps for me.
Cygwin is free (Score:2)
Re:Cygwin is free (Score:1)
Lcc32 [virginia.edu] - a free win32 Compiler and IDE. The source for lcc [princeton.edu] (which lcc32 is based on) is also available, and it's a neat little cross-compiler (even if the authors are now MS employees)
Having your cake and eating it too (Score:2, Insightful)
Whichever strategy you choose, I wish you the best of luck in exercising your fair use rights as a consumer.
/fug
Re:Having your cake and eating it too (Score:4, Insightful)
If it was _my_ company, I would just look for alternative software like OpenOffice. Shafting the BSA and Big Software* is definitely a good goal though.
* I'm officially coining the term Big Software (same evil connotation as Big Tobacco), if it hasn't be coined already.
Having your theft and stealing it too! (Score:2)
I use pirated software all the time, and feel no guilt about it, just like most people. However, I would feel guilt for posting a comment like yours. Once you've planned a failsafe strategy to get a whole corporation involved in illegal matters, I think you go from theft to Theft.
No, I don't really think theft capitalized differs from one with a little "t," in fact I worked for an ISP that just handed Microsoft, Cytrix and Solaris (etc.) software around like cookies and felt no qualm. We had no "strategy," in case we got caught. I know piracy is simply theft, even when I get my mp3s. But like most of us, I acknowlegde that I am a theif and that it is wrong (if only for the fact that it's illegal.)
This is not a case of consumer rights. "We, the people" do not legislate directly in this country. If we break the laws and steal, let us admit it to ourselves. To use Kazaa is theft, to counsel these "strategies" is uber-theft. We have our open-source, let us use that and protect it --and at least respect the legal status of proprietaries even if we don't obey it.
Sorry, and thank you.
Re:Having your cake and eating it too (Score:1)
He calls this " 100% Legal"? I am as much an advocate for Fair Use as anyone you find on Slashdot, but if you listen to this guy you are asking for trouble. If you want ways to not get caught then maybe you should listen to this guy, but if you want "Legal" advise look in other posts.
Also, from a technical standpoint you really only need a decent text editor and Cygwin or gcc for the compiler, as has already been pointed out in other posts.
I have a better idea (Score:1)
If access to Microsoft's software products is that important to you, an MSDN subscription is both cheap AND legal, up to a certain (small) number of seats. Otherwise, Linux and StarOffice 5.x are close enough as far as your typical small office goes.
Re:Having your cake and eating it too (Score:1)
Moral issues aside, don't newer MS products need to be e-registered with MS (who can detect duplic usage)? Or, are you talking about a hacker-altered version?
(* We came upon the following solution, which is 100% legal
No its not. Perhaps 100% non-prosecutable, but still not legal.
Re:Having your cake and eating it too (Score:2)
The e-registration is only for newer versions of office applications - even VS.NET uses a generic key.
-jerdenn
Re:Having your cake and eating it too (Score:3, Informative)
Lots of trouble just because you don't use something that is already free! Why not Perl/TK or something equivalent if you have to do gui work? Then as others have mentioned, there is cygwin. There are LOTS of options here from the opensource community. Lay-off the bad advice for how the company should re-form itself (the IRS is wise to this, and will still hold the company liable for lack of paying withholding, etc!)
Re:Having your cake and eating it too (Score:2)
As a contractor, I would have to pay for my own health insurance, etc. without the benefit of being part of a group policy. I'd have to contribute my own money to the unemployment fund, or else I wouldn't be eligible for unemployment benefits if I got laid off.
And all as a loophole to avoid paying for pirated software? Do I really want to work for a company like that? I wouldn't trust them for a minute.
Re:Having your cake and eating it too (Score:1)
forced me to be an independent contractor
instead of a W2 employee, for a job that
up until now had been done by an employee."
On the other hand, as a contractor,
wouldn't you have the option of sell-
ing your software to -other- companies
as well as to the (current) employers?
If you design the software to be a bit general
you might do better as a contractor.
Re:Having your cake and eating it too (Score:2)
-jerdenn
Been disbarred long? (Score:3, Informative)
Here's a big clue - the IRS is well aware of this trick, and it has a bunch of questions is asks to determine whether these people are truly independent contractors or if they're de facto employees. If they're employees, you get hit with back (payroll) taxes and penalties and basically have a miserable life for a few years as the IRS investigates whether you're a tax cheat elsewhere.
I don't remember the full list of 20 questions, but I do recall that many issues came down to independence, duration of employment, etc. Are your employees... independent consultants registered as a bona fide local business (LLC, DBA, etc?) Do they carry business liability insurance in addition to personal policies? Do they work for you exclusively?
Re:Been disbarred long? (Score:2)
Revenue Ruling 87-41 [contingentlaw.com]
Go directly to Jail; do not pass GO...do not collect $200.
Re:Having your cake and eating it too (Score:1)
Re:Having your cake and eating it too (Score:1)
I think this advice is disgusting. If you don't want to pay for software, don't use it -- particularly for business use. If you can't or won't pay the fees, use free or open source software or go without. I'm no fan of Microsoft, and I think that license fees are outrageous -- but one of the justifications that M$, Adobe and the rest use to excuse their huge license fees is "piracy." I suppose you'd advocate ways for businesses to avoid paying invoices for other services and products.
BTW: your solution is not "100% legal." That implies that you're following the letter of the law, which you are not. Your solution may be 100% prosecution proof, but it is not 100% legal.
Also: didn't the recent warez busts prove that it's not that difficult to get search warrants for private residences to search for "pirated" software? The BSA and SPA are not government agencies, so they can't get a warrant regardless -- the FBI or local law enforcement will be the ones breaking down your door and confiscating your equipment.
Re:Having your cake and eating it too (Score:1)
Plenty of options available. (Score:1, Redundant)
Python
C/C++ (with gcc)
Re:Plenty of options available. (Score:2)
GCC would've been nice, but unfortunately it doesn't work in windows. ActivePerl is good, although GUIs are't the simplest things to create. Spreadsheets and VBA can get you a certain way, especially on simple tasks.
The best feature of bloodshed C is the look your manager gives you when you mention the name.
Re:Plenty of options available. (Score:1)
.NET (Score:2, Interesting)
Re:.NET (Score:2)
Are you asking the right question? (Score:5, Insightful)
I am aware that commercial IDE environments for MS-Win32 development look nice and have many pleasing buttons, but where is the _real_ functionality?
I have seen _nice_ development front-end tools. I submit that you have not seen the range of tools available, and that your area of development has not required the real, heavy-duty tools which UNIX offers. Or, I should say, you have not _percieved_ this requirement, and the benefit which such tools would offer you in your development arena.
What you speak of (commercial Win32 IDE environments) offer:
Pipeline-capable tools
A real scripting environment to put them together in powerful ways Said tools, used together as above, include:
automate project regeneration, recompilation of course of arbitrary nature (make, GNU Make)
automate project compilation/installation cross-platform, cross-OS (Imake, GNU autoconf)
programatically generate parsers and lexers (lex/flex, yacc/bison)
Check syntax/portability semantics (lint),
Pretty-print source code in various languages,
Find and print patterns (grep),
Extract strings from binaries (strings),
Index symbols in source code(ctags/etags),
Perform powerful macro expansions (preprocessing) of arbitrary nature (m4, notably), (and remember where you got the _C_ preprocessor from)
Create function libraries (of static/dynamically loaded nature, as supported by host OS) (ar, etc)
Generate documentation in (plaintext, HTML, PostScript, {La}TeX, others) programatically from source code (many free and commercial, 3rd party tools, portable to any UNIX),
High quality online documentation in the form of manpages, GNU texinfo/info documents, as well as any vendor-specific documentation in various formats.
...and others I or any other person familiar with the Unix environment could list Those were the basics, and available for _every_ UNIX. Notable higher-level environments worth noting include:
Mr. Uptime
Re:Are you asking the right question? (Score:2)
I'm sorry but I'll take Visual Studio's debugger _any day_ over gdb. I'm not a GUI weenie either. It's just way, way more useable and powerful.
Whoa, hold on there. You can't honestly recommend a complete platform change like that. The asker is looking for a windows IDE, which probably means he already has some hard-earned software he needs to support/maintain.
Re:Are you asking the right question? (Score:2)
I'm sorry but I'll take Visual Studio's debugger _any day_ over gdb. I'm not a GUI weenie either. It's just way, way more useable and powerful.
You've got to be kidding! Or maybe you just haven't RTFM'd the gdb manual. GDB has so many more options for memory tracking, accesses, data display than VS - you just need to be able to learn the commands. If you need a fancy GUI on top of your base-level debugger, run DDD on top of it and get graphs of variable values over time, charts of structure layouts and other goodies.
Cheers,
Toby Haynes
Re:Are you asking the right question? (Score:1)
Windows debuggers are pretty much limited to looking at variables, setting breakpoints, stepping into a function, or stepping over a statement. Good luck with that environment. I think it's a good match for the super-powerful DOS command line shell.
Re:Are you asking the right question? (Score:2)
Emacs: at a _minimum_, Emacs can be considered to be an IDE of a very superior nature, with elisp programming primitives for editor macros of arbitrary complexity/sophistication/power. Emacss' ability to create and use "major modes" for editing of arbitrarily many different languages in a language-specific, nice way, with color syntax highlighting, etc, are not matched by any PC-based IDE I have ever seen, nor expect to.
I'll give you good syntax highlighting over a wide variety of languages, but that's about all. Emacs's interface is awful. The design feels like it's been thrown together haphazardly over a long time--and quite frankly, it's in need of a major rewrite. For instance, whose idea was it to put color syntax highlighting in the help menu, and who decided to call it Global Font Lock?
A good IDE needs to be intuitive and easy to use. Programmers can't afford to spend a long time learning how to use their IDE--that defeats an IDE's purpose. Quite frankly, IDEs like Netbeans, KDevelop, and (god forbid) Visual Developer Studio beat the tar out of Emacs in terms of intuitiveness and general useability.
That said, I use Emacs for my coding at work. If you know how to use it, and you're writing programs that don't require a lot of seperate files to compile, it can be quite helpful. I just wouldn't want to trust it to manage a large project... and before you mention GNU make, I just want to point out that a lot of programmers are different from us, in that they don't really like configuring things with a text editor and a command line interface.
Lendrick
Re:Are you asking the right question? (Score:1)
Which version of Emacs are you using? GNU Emacs 21 has it as the first choice under the Options menu, listed as "Syntax Highlighting (Global Font Lock mode)". Or am I misunderstanding you?
Re:Are you asking the right question? (Score:2)
Re:yeah, yeah (Score:1)
You know, open source and open sores are substantially different things, right?
Meanwhile, there's a reason why projects being concurrently developped on both Linux and Windows (Mozilla for example) work and make better progress on Windows...
Yeah. That's where the user base is.
Re:Are you asking the right question? (Score:2)
GDB: a debugger of certainly adequate power, able to take advantage of UNIX environment concepts such as core files, as well as debugging of actively running programs (and work-in-progress for debugging running _kernals_, both locally and remotely). Correct me if I am wrong as to state-of-the- debugging-art outside of the UNIX world, but I don't recall any mature tools for debugging MS-Win32 (or Win16) device drivers, which are analogous in difficulty and usefullness to debug, and _very_nasty_ to get wrong...
There is a product called 'Soft-Ice' which is billed as a 'kernel mode debugger' which is marketed as able to help you debug device drivers you are writing.
I've never written a device driver, in linux or windows, nor debuged either one using other than print statements, so I don't know how well stuff works on either side of the house, but it is there on both sides.
Re:Are you asking the right question? (Score:2)
Re:Are you asking the right question? (Score:2)
Moreover, the original poster said (which I found a little confusing) that he's not a programmer, but that he needs to be able to work with these kinds of development tools on Windows. Maybe he's involved in testing or documentation, I don't know. But the fact remains that he has explicitly said he's working in a Windows environment, so that's really what he needs to be looking at here. If the code he's doing needs to interact with COM, MFC, ActiveX, etc, then how productive is it going to be to switch to a platform where all of these things are available -- at best -- only in emulation though Wine? Yeech that sounds ugly. Wouldn't it make *a lot* more sense to work on the target platform if possible, especially if that's where he's starting from to begin with?
This kind of axe-grinding, sneering, condescending advocacy is exactly what Linux doesn't need. Yes, it has a lot of nice properties, and is worthy on it's own merits. No, it isn't a drop-in replacement for different, properitary technologies, and in some cases that's a good thing. You seem so impressed by all these tools: hasn't anyone ever told you that you need to match the right tool to the right job?
Windows applications? Forget about it! (Score:2)
A:
How insightful.
Re:Are you asking the right question? (Score:2)
I have been in programming for 15 years, with 5 years of commercial experience in development and software engineering. I work extensively on Windows and Solaris on a daily basis. And this is my 2c.
You have made a massive assumption in this statement and your recommendations regarding it: that developers are familiar and proficient with the "Unix" way of doing things. This is far from a foregone conclusion. Most developers I work with have no familiarity with Unix systems. Often their areas of expertise are not in coding (as the case of the poster of this article), but they use coding to achieve their real job function. In such cases, the easiest tool is often the best tool.
Of benefit because it makes reading source code easier while you are editting it. As you rightly point out, such editors exist for Unix too.
You're either a GUI guru, or you never do GUI work. I have worked with people who are dedicated to GUI coding, using Java, MFC, Gtk or one of many other toolkits. To make a stable, usable interface for even a minimal program can easily take a week. Or you can use C++ Builder (since Borland's tools are the best in this regard) and do it in an afternoon.
The proof of the pudding is in the eating: until very recently we have not seen many attractive, easy to use applications on Unix. They are simply too difficult to implement.
GUI development is often no recognised for the art/science that it is. Most developers don't even KNOW about tab order, accelerator keys, and the psychological principles of layout and choice. While GUI tools can't help you with all of these, they do make most much easier to access and manipulate.
Now let's look at what Unix tools offer.
To an "everyday" developer, what benefit does this really offer? In an edit-compile-test-debug environment, where do pipes assist you?
More questionable benefit. I have worked on one project which required a parser/lexer, mostly because it was involved in source code analysis. Your average user application, including databases, accounting packages, scientific number crunching, etc, does not require a parser. Besides which, all of these tools have win32 ports, and there are good many win32-specific parser generating tools which allow interactive visual specification of the parser rules, which makes yacc grammar files look like tumbleweed on steroids.
Lint is an exceptionally useful tool
Both Visual Studio and Borland's IDEs support regular expression find/replace on all files in your project(s). Not many people know or use this functionality, because its simply too complex to learn unless it will make your life more efficient on a regular basis. And for most people, it doesn't.
One of the biggest problems is that REs are hamstrung when dealing with program code because code is a context-free grammar not a non-deterministic finite automaton. Find/replace across multiple files (which is a lot easier with a dialog than with sed) is often sufficiently powerful.
So
Nothing that you can't do with any C/C++ compiler on win32. If you really want, you can use cl.exe and do it from the command line.
We apparently have different definitions of "high quality". To me, "high quality" means accessible, readable, and understandable. It should include examples, and cross reference related documentation. It should be easy to navigate, indexed, searchable and categorised.
Now I'm sure man provides most of those things, in your opinion. But in the opinion of most developers (as discovered from emperical research for an Honours project) it sucks.
In case you weren't aware, Emacs, GCC and GDB are all available on win32, with or without Cygwin. In addition, you should probably be informed that GCC with maximum optimisations is likely to give you an application about 25% slower than VC (emperical observation based on a server-side non-database processing application with multiple clients, under load).
Cygwin or DJGPP (Score:1)
DJGPP [delorie.com] is another port of GCC for DOS. It uses the protected mode, so you're not limited to 64K segments. If you want an IDE, RHIDE (available at the same place) is very similar to Borland's.
What kind of apps are you writing? (Score:1)
If you're writing things for internal company stuff Cygwin will probably make you happier. You get most of the wonderful posix development environment without dealing with Microsoft oddities.
The reason for my duplicity is simple, you can write an app in Visual C++ that doesn't need a lot of extra redistibutables because it uses Microsoft's own DLL's. With cygwin you have to install cygwin on all the machines you want to run on unless you just stick with the basics, for which I'm sure the Borland compiler is fine anyway.
I'm assuming your not writing code that needs to be really fast or I'd recommend the Intel compiler, but that would make life really complicated.
dev-c++ (Score:1)
Java (Score:4, Informative)
Somebody here will no doubt whine that Java isn't open source. If the whining seems a bit abrupt, that's because these people no doubt are in a hurry to get back to tonights checkin to the GNU Classpath project (or was it gpj?)
Re:Java (Score:2)
Any examples, besides Java development tools/editors/UMLware consumed by Java community itself?
Just curious.
Re:Java (Score:1)
Eclipse (www.eclipse.org) is a Java IDE, written in Java but using IBMs SWT, which is a cross platform GUI toolkit which uses native widgets.
Because it uses native widgets, it works well on NT, less well on Linux, and not at all (I think) on Mac OS X.
But it is a very nice, libre, IDE, and allows you to use Swing (which is *really* cross-platform) as well as SWT.
Tom
Mingw32 or Dev-C++ (Score:4, Informative)
Re:Cheap, but not free (PowerBASIC) (Score:3, Interesting)
It's got BASIC-like abstraction of dialogs, TCP/IP, file I/O, regex, and more. The source output is readable by pretty much any programmer. If you choose, you can also write your apps SDK-style rather than using the dialog-abstraction keywords.
Don't mistake it for a VB-alike. It supports all native Windows datatypes as well as pointers. I've written fairly GUI-intensive apps that do quite a bit of work (regexing, FTPing, SMTPing, and more) where the output file was less than 80K. Also, the output executable is a normal PE Windows exe, and has zero external runtimes.
It's the next best thing to raw assembly, with the ease of coding in BASIC. I'm also a faithful customer of PowerBASIC, and don't work for them.
Consider Tcl/Tk (Score:2, Interesting)
Another solution is to look for a previous version of Visual Studio or Borland on Ebay. Also check on Yahoo, as sometimes Microsoft shuts down auctions of it's software on Ebay.
Truthfully, if your company is too cheap to buy you the tools you need, you have to wonder how serious they are about succeeding.
Get LCC now!! (Score:2, Informative)
There is a great, free win32 C compiler with all the win32 libs and a few extras of its own, called LCC.
It comes with an IDE that includes advanced debugging features and it's pretty easy to use.
The page:
www.cs.virginia.edu/~lcc-win32/
Re:Get LCC now!! (Score:2)
1) It has it's own bastardized version of C
2) It's not ANSI C compliant at all
3) The licensing scheme is all screwed up since it was Open Source and then went closed source.
4) It doesn't produce executable code that's anywhere near comparable with GCC.
5) It was originally written when GCC didn't exist for Windows, well, know it does
If you need a C compiler, get GCC. Develop with Cygwin and compile with Mingw32
Depends on what you are programming (Score:3, Informative)
It's not clear what kinds of areas you are working on, so its not easy to recommend a tool.
Personally, I use C/C++ for general purpose apps. Nevertheless, for text/scripts Perl is hard to beat, for objects/GUIs Python is amazing, and Haskell wipes the floor with all the other languages on numerical/functional work. (OK, I admit, I have no life).
In terms of tools,
DevC++ [bloodshed.net]and Cygwin [cygwin.com], work well for C/C++ development, and together form a nice little set of tools.
Perl can be found at CPAN [cpan.org]which has links to various interpreters and IDEs. It is a language of crazed brilliance, and is wonderfully cross-platform.
Python [python.org] is really great, comes with a very well-thought-out IDE (IDLE) and a very familiar syntax. It has standard modules which will link it to C++ and Windows.
And finally, Haskell is at Haskell.org [haskell.org], and offers Hugs, which is probably the most advanced open-source IDE available for any language.
With so many wondrous open source tools available, I feel pretty bad about saying this, but your best bet in a corporate environment might actually be Java. It's boring, it's a little slow, its overhyped. In short, it is the Devil and whenever I have used it, I have wanted to kill myself and my neighbours. Still, its free, popular and backed by a big old corporation, its very similar to C++ and you won't get fired for choosing it. Best go with Java.
Re:Depends on what you are programming (Score:2)
fyi you CAN get visual studio for cheap (Score:1)
Re:fyi you CAN get visual studio for cheap (Score:2)
I believe that there's currently "duck" legislation (If it looks like a sale and quacks like a sale...) on the horizon that would make software more like books in terms of what you can do with it, but I'm not very optimistic about it actually passing. I suspect that Microsoft, IBM, Oracle and the other heavyweights can buy enough politicos to nip it in the bud.
Re:fyi you CAN get visual studio for cheap (Score:1)
well. if you were a good programmer you would know (Score:3, Informative)
Java, with Borland Jbuilder is free(beer)
Cgywin, with allmost all the stuff for linux for windows, and you can write windows apps.
Ruby, python, etc.
Re:well. if you were a good programmer you would k (Score:2)
But just like many companies who don't let you drink beer, Borland won't let you (legally) use the free Jbuilder for comercial development.
Part of the EULA for the free version of JBuilder is no comercial development. I'm not sure if you are permitted to use it for in-house developement either.
Re:Has to be Delphi (Score:1)
C, Pascal and PHP (Score:1)
Also there is mingw32 and cygwin32, but the
latter is bad in sense of that programmes
compiled with it must be GPL due to the linkage
to cygwin1.dll (libc) which is GPL, whereas
mingw32 produces native Win32 executables linked
against msvcrt.dll which can be found on nearly
any Win32 system (except for NT 3.1 and the very
first version of Win95).
Pascal might be also free, you can download Turbo
Pascal from museum.borland.com, Kylix is IIRC free
for Linux, maybe also for Win32, and there is
FreePascal.
Also you can install php4, either native or as
a plugin for IIS or (better) apache.
PHP4 runs quite stable, not as stable as e.g.
Pascal, because it originally wasn't developed
to support Win32, but it does work.
If you aren't doing web stuff you should choose
the native version over the webserver plugin.
Yee-ouch... (Score:1)
Gosh. Better dust up the old resume. Any company that won't fork over the cash to get you a development environment that you want might soon decide not to fork over the cash to pay your salary. As one other person recommended, you might want to plunk down the cash to get your own license -- it might not be worth the trouble trying to learn a whole new way of doing things if it's going to make you less productive. Plus, you can take it with you elsewhere, and it might even be tax deductible.
That said, RHIDE & DJGPP is available. Textpad [textpad.com] has all sorts of nice IDE editor thingies and a way to compile java programs (not freeware, though). I've heard lukewarm reviews of LCC -- questionable quality of compiled code, at least at the time of my research.
Be careful when using cygwin (Score:2)
Seeing that you have to talk to the redhat sales team for a contract, I imagine it's pricey.
Re:Be careful when using cygwin (Score:3, Informative)
Wong Question (Score:2)
Full stop.
Clearly your issue isn't what tool set you use but exactly what you are being paid to do. If your employer doesn't see value in making you more effective, productive, or whatever else your programming does for you then drop it. Either just do what they want, how they want, or move on.
Trying to find work-arounds is pointless if it means you epend more time and energy on this and produce something that whomever someday replaces you won't be able to maintain or have a clue how to use. In short: Get "buy-in" or get out of coding, at least in this job.
With that said it's quite remarkable what many office applications are capable of. I've seen quite sophisticated work done in word processors, spreadsheets and databases. You may already have all of the tools you need available for simply the time of reading the documentation. Scripting can work for good as well as ill in office applications.
But really; if you can't make a business case for a tool then drop it or get out.
Re:Wong Question (Score:2)
Microsoft's tools are FREE!! (Score:3, Informative)
The .NET Framework is also freely available for download [microsoft.com]. Again, it comes with everything you need to build .NET applications, except the nice UI (use vim/emacs/sharpdevelop...)
The root for the SDK downloads is here [microsoft.com]
.N ET is free without the IDE (Score:1)
What's the question again? (Score:2)
What do you imagine Visual Studio would do for you? It's not any easier to use than any other IDE. Exactly the opposite. What you get when you buy Visual Studio is a huge mass of compilers, interpreters, debuggers, libraries, code generators, "wizards", and god knows what else. Having this tool will not magically make up for your own limitations as a programmer.
You need to sit down and carefully document what kind of programming you do and/or want to do. Then you'll be a position to ask around for a suitable IDE or other development environment. And also in a better position to convince your boss to spend a little money.
GNAT (Ada) (Score:1)
Absolute Best Bet! (Score:1)
You were a little vague but you did state it 'wasn't programming'. Well if you are manipulating files and writing batch files to execute your command line programs then I would highly recommend Python.
The ActiveState Active Python is FREE and comes with the PythonWin IDE that performs code completion, color syntax highlighting, Windows COM interface (you can automate MS-Word, etc.), and a limited debugger.
Python is simple, clean, elegant, and much more powerful than at first look. It's very object based but you are not forced to write classes. It's byte-compiled like Java but much faster. You simply execute a text
It comes with an interactive python interpreter that allows you to type code in to test or experiment.
Python can hook into C/C++ libraries and use their API's. An example of this is the COM interface.
It includes the TK GUI which is simple to code and you won't need a WYSIWYG RAD environment to create the windows. It can automatically align objects in the window. It's perfect for simple interfaces that are quick to create. There are several other GUI options available for multiple platforms as well.
If you are looking for a more powerful IDE, ActiveState's Komodo is quite nice but the PythonWin IDE is not bad either. There is also an IDE written in Python called IDLE that is simpler than PythonWin but still effective. In order of power: IDLE, PythonWin, Komodo, and VisualPython (plugs into
Obviously, you are trying to avoid buying
You can even get Jython and compile your Python code into Java Byte Code! Great for prototyping Java code or just doing small things quickly.
To top it all off Python runs on many different platforms, is very easy to read, is very productive, includes the TK cross-platform GUI, and you'll like it's price; FREE.
Ruby is another interesting language but since it's so very new, there are few books. Python has ton's of excellent books as well as many online tutorials and forums.
Many alternatives (Score:3, Informative)
There are many alternatives for developing with free (as in beer) tools on Win32.
Eclipse (Score:1)
XEmacs + Cygwin == solution (Score:1)
http://www.xemacs.org/Download/win32/setup.exe
http://www.cygwin.com/setup.exe
and you'll be all set! Seriously, evn though gcc has its quirks (as several posters have mentioned), it should be sufficient for any task that you're doing with Borland C for DOS. Additionally you get all the basic dev tools (cvs, make, etc.) if your programs ever get beyond the one-off stage. Cygwin also comes with Python and Perl; handy for those tasks for which C is just too tedious.
SharpDevelop (Score:1)
PLT Scheme (Score:2)
Java is free! (Score:1)
Cheap Software Languages for NT (Score:1)