Resources For Windows Developers Moving To Unix?
abh asks: "I can't be the only one out there who has a background programming under Windows, primarily using Microsoft's Visual Studio. I'm a Linux enthusiast who is looking for information (books? Web sites?) on developing using the GNU tools. Since most of my experience is with a visual design environment, are there similar environments available Linux?"
Hey, somebody was going to suggest it. :>
I haven't used it myself, but CodeWarrior exists... http://www.supershops.com/supershop/product.asp?sk u=M24+0345
IDEs like KDevelop and KDE Studioare remarkably like Visual Studio. Whenever I've used both, they've always seemed (mostly) feature complete and stable. There are other IDEs out there, but from my expierence, these are the most mature ones out there. (and, imho, Emacs doesn't count as in IDE)
;-)
And now, I have a question for you (or anyone else out there): Are there any good books/materials for learning Win32 or Carbon/Coco/etc programming? I'm a pretty good programmer, but I don't want to be tied to Unix/POSIX forever
--------------------------
Freshmeat has a development environment section:m ents.html
http://freshmeat.net/appindex/development/environ
Here you will find Code Crusader, a CodeWarrier look-alike. Never used it, but there are some favourable comments on freshmeat.
For rapid development of GUIs I suggest Glade. It works with gtk and can output in C, C++ and other languages. I had an independent study on software engineering in college and we created an IMAP email client, Althea. None of us knew anything about making a GUI or gtk. We seemed to come out just fine in that category and we only had 10 weeks to finish!
As for an entire development suite, I agree with the other suggestions above.
Check out Althea for a stable IMAP email client for X. Now with SSL!
For non-GUI, UNIX specific programming details, I've found the following to be very useful:
Oracle must be upset...
--
-=DaveHowe=-
Because it will improve your grammer, especially your subject/verb agreement problem.
This might help you if you switch back and forth as you get more used to linux. I don't think it's very mature on linux yet, but it may be worth keeping an eye on.
Almost all windows programmers agree that a good place to start is:
It's pretty big, but it covers the basics + more. Even if you plan on mostly using MFC or something similar and not rolling your own raw-API program, this is definitely a worthy purchase.Charles Petzold's Programming Windows
It is GRAMMAR not GRAMMeR. Want a real reason? Every operating system in history has tended to be strong either as a Client or a Server. I have a formal background in math and computer engineering, and I know of no theoretical reason why this is so, but I have some opinions concerning the pragmatic reasons. The fact is that the kids at Microsoft have really focused on making Windows a competitor to MacOS in the past. MacOS is particularly strong as a Client (as I climb into my asbestos suit) it is weak as a server. The boys and girls at MS, tending to lack orginality, basically cloned the MacOS with the caveats that they were stuck with a MS-DOS heritage. Windows (which I use often, and dislike) is a successful Client OS. It is a ROTTEN Server OS. UNIX derived systems derived from mini-computer OS thinking (with a LOT of very original ideas added). UNIX and LINUX are SUBERB at Server applications and (asbestos suit zipped up to the nose here) not quite as good as a Client OS. While I personally would rather use UNIX / LINUX as a Client, it is because I am a programmer. I am forced to admit that the typical college student finds Windows easier to use than UNIX systems. Far better that they should all use Macs, but I am not in charge of that. So, long winded background later ...
YOU should learn UNIX / LINUX because the world has seen VERY little innovation in Client software in the last 5 years (honest). There is a limit function to client software that DOES NOT EXIST in server software. This is because as Clients become more complex, they become less stable, etc. (See elsewhere for Thick Client discussions.)
In constrast to this, SERVER software is in a renaissance. UNIX / LINUX is the premier and OPEN server environment - ipso facto, YOU should learn UNIX / LINUX.
Borland is working on Kylix and should be done soon (not like 2.4 soon, hopefully sooner! ;)
It is a port of their (IMHO) superior Windows dev tools - Delphi and C++ Builder - to Linux.
meh.
Well, right off the top of my head, here are a few items:
And a little more to the point:
I maintain GNUSoftware.com - which may be a little bit relevant.
It stores pointers to Linux/Unix applications that are available on the Windows platform - this could enable you to try out, for example, Emacs on your current platform and get used to it before you switch.
Similarly you could download a port of GCC and get used to its command line interface, options etc, without leaving the environment with which you're already comfortable..
Steve
---
What's good for you - it's working on both Linux and Windows (among other OS's).
Kamzik