20031201 Edit by BazB: Changed title from 'Switching Sides'
|
|---|
| Replies are listed 'Best First'. | |
|---|---|
|
Re: OT: Switching Sides
by b10m (Vicar) on Nov 30, 2003 at 01:49 UTC | |
First of all, some myths: You will find a lot of helpful people around the 'net that will help you with your questions. IRC, USENET, or even mail your local geek. You won't be a BOFH within a week, maybe not even within 6 months, but you'll learn everyday :) I wish you a bon voyage and welcome to the free world!
-- B10m | [reply] |
by Coruscate (Sexton) on Nov 30, 2003 at 22:24 UTC | |
That's funny. You cover software, but don't take a look at hardware. I'm a linux fan and all, but last time I checked, it can't support either my printer or my digital camera. Both which are relatively new purchases. No valid drivers in the linux world for me. | [reply] |
by b10m (Vicar) on Nov 30, 2003 at 22:49 UTC | |
That said, Linux runs on far more architectures than, say, Microsoft Windows. What kind of printer and digital cam do you use, that's not supported by Linux? Added:Yes, this all sounds pretty zealous (sorry), but to summarize it all: Yes, Coruscate, hardware support is not as good as it might be with Microsoft Windows, yet a lot does work or will work in days to come. So the OP would do best to check his hardware first, before installing some Linux flavor
-- B10m | [reply] |
by Coruscate (Sexton) on Nov 30, 2003 at 23:21 UTC | |
by sauoq (Abbot) on Dec 03, 2003 at 23:23 UTC | |
by mpeppler (Vicar) on Dec 01, 2003 at 00:40 UTC | |
by DrHyde (Prior) on Dec 01, 2003 at 09:05 UTC | |
I've wasted too much time on Linux, sound, video, power management, USB, PCMCIA and other arcana in the past. Linux is *not* ready for portable use, and only barely suitable for wizards' desktops. | [reply] |
by Coruscate (Sexton) on Dec 01, 2003 at 18:10 UTC | |
by synistar (Pilgrim) on Dec 02, 2003 at 15:53 UTC | |
As far as outline editors go - have you tried leo? It is cross platform (linux/win/mac) and fairly good. | [reply] |
by Arbogast (Monk) on Nov 30, 2003 at 14:27 UTC | |
Hmm???????????????????????????????????????? | [reply] |
by b10m (Vicar) on Nov 30, 2003 at 14:29 UTC | |
-- B10m | [reply] |
by Arbogast (Monk) on Nov 30, 2003 at 15:02 UTC | |
by vacant (Pilgrim) on Dec 01, 2003 at 10:07 UTC | |
PhotoImpact (no, GIMP doesn't replace it, and don't tell me about Wine, either) a decent outline editor - (wish I could figure out the rumored perl scripting for Kate) ...OK, that's about it | [reply] |
by l2kashe (Deacon) on Dec 02, 2003 at 10:20 UTC | |
by hardburn (Abbot) on Dec 01, 2003 at 18:24 UTC | |
For years I have been using Linux now and I cannot think of any application that Windows offers and Linux doesn't. QuarkXpress, a layout design program so complex that it makes Adobe Acrobat look like HTML 2.0. Last I heard, even the Linux Journal keeps a Windows machine around to use this program. ---- : () { :|:& };: Note: All code is untested, unless otherwise stated | [reply] [d/l] |
|
Re: OT: Switching Sides
by pg (Canon) on Nov 30, 2003 at 03:02 UTC | |
I have figured out two rules, as I am living a life as a programmer: Based on those two rules, I gave you two suggestions: | [reply] |
|
Re: OT: Switching Sides
by melora (Scribe) on Nov 30, 2003 at 02:03 UTC | |
On the Windows side I've been using Activestate Perl, which has worked quite well. I keep the script open in an editor, and a command prompt session open for running it. I've found that MacPerl works well on the Mac OS (8.6), and I've found that the scripts I wrote on there ported with no changes except to the shebang line, when I moved them to the Linux box, or to Windows. I think this is a huge advantage to Perl -- it's quite portable. Naturally, there are the usual file-naming and line-ending issues. <digression> I have helped my spousal unit with his VB projects. I deeply dislike VB's built-in limitations, but that is another rant. I do wish that I had a development environment like VB's for Perl, which would show me immediately when I commit my favorite stupid mistakes (e.g. dropping a semi-colon or using InStr instead of index, handicaps which come with using more than one system/language). I think I once read rumors of such a thing and I hope it is coming (although I went for years debugging C at the command prompt. Have I gone soft?). And yes, I still type 'ls' in the Windows command prompt, and 'dir' on FreeBSD... </digression> I have searched for a gui front-end for Perl, and have worked a bit with Perl/Tk and with wxPerl. They have both worked well for me, but I didn't find a way to design things graphically like in VB (I'm not saying it doesn't exist, only that I didn't find it after a brief search). Knowing the C programming language has helped me to learn Perl. (Although I still love C, I would probably learn Perl if I were just starting out today.) I hope this helps a bit. | [reply] |
by jonadab (Parson) on Nov 30, 2003 at 04:18 UTC | |
I think this is a huge advantage to Perl -- it's quite portable. Absolutely. Provided you don't rely on external stuff (e.g., backtick out to system commands, use modules that are neither pure perl nor core, ...), Perl is very portable. I do wish that I had a development environment like VB's for Perl, which would show me immediately when I commit my favorite stupid mistakes (e.g. dropping a semi-colon or using InStr instead of index, handicaps which come with using more than one system/language). The closest thing I know to this is cperl-mode. It will, assuming you turn on syntax highlighting, show keywords like index in a special color, so you'll immediately notice if you typo them, because they won't change color like usual. It also matches grouping and quoting symbols for you; as soon as you type the closing one, the opening one flashes. (Actually, that's a feature of Emacs that works in pretty much all major modes; it is a feature Emacs *has* to have, because it's pretty hard to write good lisp without it; Emacs was developed by lisp programmers originally.) As far as dropping a semicolon, you'll notice when you go to the next line and it indents wrong. Configurable automatic indentation is cool. cperl-mode is in general cool. The only downside to it is that it runs in Emacs, which means you have to learn to use Emacs. Now, Emacs is wonderful in itself and well worth learning, but it's not exactly something you're going to pick up and start using in one afternoon. In fact, you can expect to spend just as much time learning Emacs as you spent learning Perl. And yes, I still type 'ls' in the Windows command prompt, and 'dir' on FreeBSD... You think you've got it bad... I keep getting mixed up between Ctrl-C (DOS, Windows, and *nix), Ctrl-Y (VMS), and C-g (Emacs). Then every once in a while I get stuck working with a pre-X Mac and have to try to remember what the keystroke is for Force Quit; I usually just end up holding down *all* the buckies and start hitting keys. Then there's copy and paste: on Windows it's Ctrl-C/Ctrl-V; under *nix, half the apps do it the Windows way and the other half do it the other way; on Mac it's clover-c and clover-v, and then there's Emacs, where I've got it bound to something yet different. (One of these days I'm going to get tired of messing around and totally transplant the entire Ctrl-C and Ctrl-X prefix keys in Emacs and their whole associated keymaps to different prefix keys, pervasively enforcing the transplant via hooks in all major modes so I can make copy and paste work the way I really want...) (Although I still love C, I would probably learn Perl if I were just starting out today.) I would recommend that newbies (here I mean newbies to programming in general, not just to Perl) learn higher-level languages such as Perl first, later getting into lower-level languages such as C only if they have the aptitude and desire for it. Perl is not the only suitably highlevel language, but it's a good choice. If you are worried that the C programmers will look down their nose at you for only knowing a "scripting language" (a quite silly thing to look down their nose at you for, but some people are indeed quite silly), then learn lisp or one of its derivitives; they're not on as high a level as Perl or Python, but they're *way* higher-level than C, support more paradigms better (doing functional programming in C is a fairly unnatural act), and (except for elisp) cannot be reasonably accused of being "a scripting language". (As an added bonus, if you learn common lisp, you get to patronise the C programmers, call them "whippersnappers", and tell them your language was being used for artificial intelligence research when their language's grandmother (BCL or whatever it was called) was in diapers. This doesn't make them happy, but it shuts them up.) But if you're not worried about the opinion of the C programmers, go ahead and delve right in to Perl. Previous experience in other languages does make learning Perl faster if you happen to have it, but not enough to justify going and learning the other languages first if you haven't already, particularly considering that it goes both ways: knowledge of Perl will make it easier to learn the other languages, too. IMO, Perl is a great choice for a first language.
| [reply] [d/l] |
by DrHyde (Prior) on Dec 01, 2003 at 09:21 UTC | |
I would recommend that newbies (here I mean newbies to programming in general, not just to Perl) learn higher-level languages such as Perl first, later getting into lower-level languages such as C only if they have the aptitude and desire for it I disagree, I don't recommend that anyone learn perl as their first language. It's better, in my opinion, to start with a low-level language, learn how computers work, and then when the apprentice has a thorough grounding in the basics the master can let him loose with high-level tools like perl and java. C makes an excellent first language for someone wanting to be a programmer. In my more old-gittish moments, I think that C is too high-level to get started with and that everyone should learn to program a simple processor like a Z80 or a 6502 in assembly language. | [reply] |
by jonadab (Parson) on Dec 01, 2003 at 16:17 UTC | |
by demerphq (Chancellor) on Nov 30, 2003 at 22:01 UTC | |
using InStr instead of index, Hmm. IME, most InStr work from VB can be replaced with regexes. I would almost go as far as to say that if you index() more than rarely you are probably missing out on better ways to do things.
---
demerphq First they ignore you, then they laugh at you, then they fight you, then you win.
| [reply] [d/l] |
by Anonymous Monk on Dec 01, 2003 at 22:59 UTC | |
| [reply] |
|
It's all about applications.
by jonadab (Parson) on Nov 30, 2003 at 02:16 UTC | |
Some people can switch all at once to a completely new system. I found that for me, a more gradual approach was wanted. One facet of that approach is multibooting, but perhaps the more important part of my approach is the order: applications first, OS afterward. Using Perl for things you formerly did with VB is a start, but what editor are you using? Get one that's available on various platforms. What browser are you using? IE? Get a cross-platform browser, such as Mozilla. Do you use office software? OpenOffice.org probably has all the features you need, but some of the buttons and menu items are in different places. So get it now and learn it. One at a time, replace all of your single-platform applications with cross-platform ones. I did this over the course of about a year (replaced UED and PFE with Emacs, MS Works with OpenOffice, Free Agent and Pegasus Mail with Gnus, learned the Gimp, and so forth) and then was able to switch OSes pretty much painlessly (and can switch again at any time I like, to virtually whatever OS I decide I want to try out), because nothing I do anymore relies on a specific OS to work. I switch to Mandrake at first and used it for a year solid; right now I happen to have Windows booted (a different version from the one I switched from), but I'm also in the process of installing Gentoo. If next week I decide to switch to BSD or Mac, nothing is preventing me. Think about it: how much time do you really spend using Windows *itself*, directly? Maybe you use the file manager features of Windows Explorer, but that's about it, if you're at all typical. How much time do you spend messing with the registry, tweaking control panel settings, or other highly Windows-specific tasks? Almost none, if things are working the way they're theoretically supposed to work. Almost all of what you do, almost the whole set of your habits, hinges rather more on the *applications* you use. The operating system is a commodity. It's only important insofar as it stores your files and enables your applications to run smoothly. So if you use apps that run smoothly on various OSes, the operating system becomes a replaceable part; one is substitutable for another without any significant adjustment on the part of the user. Some people say, switch directly to Linux and then learn the apps that come with your distro. I say, that's backwards. Adopt cross-platform applications, and it won't *matter* what OS you use anymore. You'll be free to use whatever OS you can manage to get installed on your hardware.
| [reply] [d/l] |
|
Re: OT: Switching Sides
by logan (Curate) on Nov 30, 2003 at 02:04 UTC | |
If it's the former, only you can decide that. The only thing Windows can do that Linux can't is run most videogames, although Unreal is available for Linux. Pretty much everything else you'd think was Windows-only (Powerpoint, Quicken, Office) has a Linux counterpart. Oh, yeah, and some people seem to like the Macintosh as well. If it's the latter, this is a good place to start. Odds are, you're going to be wanting Perl/TK, which is a perl interface to the TK Toolkit (hence the name). The fine folks at O'Reilly have a good book on the subject which I haven't read. There's also a Win32::GUI module on CPAN, just in case you're not ready to abandon Windows. All that said, I need more information if I'm gonna help you. What, specifically, do you want to do?
-Logan | [reply] |
|
Re: OT: Switching Sides
by woolfy (Chaplain) on Nov 30, 2003 at 11:15 UTC | |
When you really want to switch sides, think about taking the step completely. Start using LAMP (Linux, Apache, MySQL, Perl). Quite some open source programmers and developers are using PostGreSQL instead of MySQL, by the way. And sometims the P in LAMP represents PHP, but not for me... Well, when you want to do that, download the files necessary to equip your computer. Or buy some ready-to-use things. Linux: the best and easiest to use OS around, lots of distributions available, like RedHat and Suse (even though they might stop providing their distributions for free, but for now, go ahead). The commercial distributions come with a set of good books, but O'Reilly and many other publishers have published a lot of even better books, some of them digitally availabale. Apache: the best web server software around, to run your websites, freely available, several good books written about it. And of course the connection between Perl and Apache, with mod_perl. MySQL for almost all your database needs. Some people prefer PostGreSQL. I've never looked closer into PostGreSQL, my company has used MySQL for almost 10 years and we're quite happy with it. Perl is of course the language of choice. The Monks offer a wealth of knowledge and help, like the Tutorials and my own Where and how to start larning Perl. Too many good books about Perl to read, but a good choice is the Perl CD Bookshelf from O'Reilly. The road to knowledge is read read read, read even more, install, experiment, read more, try to build something, read, experiment, read, and than maybe ask some questions. Update: as Nkuvu pointed out to me clearly, I was giving my opinion here instead of stating facts. My opinion is: open source is better than closed source. And within that open source, I prefer LAMP. But I like the discussion too.... | [reply] |
by Abigail-II (Bishop) on Nov 30, 2003 at 17:13 UTC | |
Linux: the best and easiest to use OS around,"The best"? For which values of "best"? As for 'easiest to use', that's not really my experience. lots of distributions available,Yeah, and multiple versions of libc, toolsets, applications, etc, etc, all slightly not compatible with each other. Each time when I want to install a single application and I've to upgrade an entire forest of dependencies just to get it up and running makes me grumble at Linux again. All software sucks, all OSses suck, and that includes Linux. For some things, Linux might be easier to use, but for other things, it's just a frigging pain in the ass. MySQL for almost all your database needs.Until you start caring about your data.
Perl is of course the language of choice.Except for tasks where other languages are more appropriate. Abigail | [reply] |
by woolfy (Chaplain) on Nov 30, 2003 at 21:49 UTC | |
"The best"? For which values of "best"? As for 'easiest to use', that's not really my experience. For my value of best. Please, if you disagree, make a poll about it, and/or tell everyone what you like instead of Linux, Apache, MySQL and Perl. I gave my opinion: I have worked with several Windows versions and hate(d) it. I have worked with Solaris and liked Linux much better. We had one client with a BSD server and it caused us a lot of trouble. Maybe BSD is better in your eyes, maybe something else. Maybe you make Abinux and maybe I'll like it best.
Yeah, and multiple versions of libc, toolsets, applications, etc, etc, all slightly not compatible with each other. Each time when I want to install a single application and I've to upgrade an entire forest of dependencies just to get it up and running makes me grumble at Linux again. That must be painful. I'm trying to imagine your life, surrounded with a lot of software. Ouch.
Until you start caring about your data. Really really seldom had trouble with MySQL. But of course, our databases hardly ever were larger than 100.000 records, and we hardly ever had more visitors on such a database than 10,000 per hour. Problems only arose when we or one of our programers made a stupid mistake. Our early investment in a NetApp really paid off: snapshots are soooo nice.
Except for tasks where other languages are more appropriate. Like? And even then, so what? | [reply] |
by Nkuvu (Priest) on Nov 30, 2003 at 23:57 UTC | |
by waswas-fng (Curate) on Dec 04, 2003 at 00:46 UTC | |
by b10m (Vicar) on Nov 30, 2003 at 14:21 UTC | |
Linux: the best and easiest to use OS around,These are arguable points. Although I fancy Linux very much, I tend to like Open- and FreeBSD too. I think your claim that Linux is "the best...OS" is quite hard to prove. Especially on servers, I tend to prefer *BSD over Linux myself in terms of stability. Ease of use? I think Linux isn't "easier" than e.g. FreeBSD. lots of distributions available, like RedHat and Suse (even though they might stop providing their distributions for free, but for now, go ahead).If I understand the GPL right (and the Linux kernel is distributed under this GPL, AFAIK), distributions have to be free as in freedom of speech. They may charge you money for support, books and what not, but Linux (the kernel) has to be free.
-- B10m | [reply] |
by woolfy (Chaplain) on Nov 30, 2003 at 21:27 UTC | |
You are very right about Linux to be free, I fully agree, but still articles have been written about RedHat and Suse that they might stop providing their distribution for free. It's just the news. When RedHat and Suse stop the free distributions, I am surely one of the people that will stop using RedHat and Suse. For the rest: I guess we agree: use open source. Wether that is Linux or xx-BSD, I don't care much. | [reply] |
by castaway (Parson) on Dec 01, 2003 at 10:02 UTC | |
by Anonymous Monk on Nov 30, 2003 at 12:25 UTC | |
my company has used MySQL for almost 10 years According to MySQL Company fact sheet, MySQL was "Founded in 1995 by two open source veterans." Unless you are Monty Widenius or David Axmark en travesti, your claim it's hard to believe. | [reply] |
by woolfy (Chaplain) on Nov 30, 2003 at 21:16 UTC | |
| [reply] |
|
Re: OT: Switching Sides
by exussum0 (Vicar) on Nov 30, 2003 at 14:14 UTC | |
So to the monks I humbly prostrate myself - what must I do to start my journey into this new, free world? What great and adventurous trials lay before me? And how long can I expect to venture between these worlds before I can leave my citizenship in the world of Windows behind me?First, don't deny your heritage. Perl is a great wonderful language. It fufills many purposes while being a very stable and complete language. Someday, you'll find VB, or another language you know, to be more fitting to whatever task you are trying to accomplish. While perl isn't a one trick pony, this pony isn't well suited for everything. Keep an open mind and you'll figure out when those times are. Having said that, perl can be a complex language, even in a single line of code. You can do many things in many ways. I would suggest picking up the O'reilly Camel book (Programming Perl) and the perl cookbook. The first will give you base knowledge of how things work. Most of the text can be found in the man pages, but I find the book organized in a way that you have your introduction, a big piece of meat of information, and a good index. Just remember not to get stuck on one thing if you can find another way of doing it. functions like map, foreach and simple for loops can all be used to accomplish the same thing. The perl cookbook is great because there are a lot of solutions to common problems. Aside from preventing you from doing really BAD things, it promotes doing neat things and learning "how stuff works". My favourite, before I really thought about it, was creating a mathematical set w/ no dupes. There is a way of finding such a set from a larger set in the cookbook, which is short and easy to understand, but the idea of a computer science dictionary (the abstract structure) and a hash (perl's popular name for it) never quite registered. So here I would be trying to do thigns the hard way, using standard arrays. Glad I never got that chance :) Anyway.. stick around as well, you'll find that people ask really silly quesions with short answers, and really strange ones that will confuse you on "why they'd wanna do that anyway". You'll learn a lot. And never be afraid to ask questions of the monks and your peers. Providing they aren't google'able questions, we are all willing to help.
Play that funky music white boy.. | [reply] |
|
Re: OT: Switching Sides
by NetWallah (Canon) on Nov 30, 2003 at 03:14 UTC | |
| [reply] |
|
Re: OT: Switching Sides
by Arbogast (Monk) on Nov 30, 2003 at 14:24 UTC | |
As a Gardener, I wouldn't show up to work without a blower AND a chainsaw. As a computer user, shouldn't one be prepared to use Windows AND Linux, seems like they both are indispensable tools? | [reply] |
by logan (Curate) on Nov 30, 2003 at 21:23 UTC | |
Beg to differ. An OS isn't so much a tool as a toolbox. The OS will hold the tools themselves (perl, Office, Quake), and the accessories that make those tools usable (lib files, device drivers, logging mechanisms), but the OS itself does very little. Extending our toolbox metaphor, imagine you have a whole bunch of tools that need different power cords (9 volt, 12 volt, 220 volt). Windows replaces them with a single monster cord that will accept any voltage and self-adjust. Linux allows you to see each and every cord and select for yourself. The upside on the Windows approach is that you can't get it wrong because the decisions are out of your hands. The downside is that this self-adjusting sacrifices stabilty and the ability to self-diagnose. The upside for Linux is that you can see all the cords and decide for yourself. The downside is that it won't stop you from picking the wrong one and screwing things up hardcore. If you're prepared to do some work, you can use one and only one OS. You will, however, have to make some sacrifices. If you refuse to have a Windows box in the house, you won't get to play most PC games. If you feel that gaming peaked with Tetris or you already own a Playstation, this won't be an issue for you. If you use Linux, you'll save a few hundred dollars by using free software, but there will be a learning curve. If you enjoy the learning process, great! You have a project, and there's hours of fun awaiting you. If all you want to do is type a simple letter and read your email, it's probably worth a few hundred dollars to avoid the hassle. If, however, you're a civil libertarian, there are many "features" in Windows that would terrify you. In that case, go with Linux.
-Logan | [reply] |
by sauoq (Abbot) on Dec 04, 2003 at 00:00 UTC | |
The upside on the Windows approach is that you can't get it wrong because the decisions are out of your hands. The downside is that this self-adjusting sacrifices stabilty and the ability to self-diagnose. The upside for Linux is that you can see all the cords and decide for yourself. The downside is that it won't stop you from picking the wrong one and screwing things up hardcore. While I agree with your sentiment and upvoted your node, I have big disagreements with this analogy. Maybe "you can't get it wrong" with Windows, but you can rest assured that Windows will get it wrong for you on occasion. And when Windows screws things up hardcore for you, it'll mean re-installing the whole damn thing. But, with Linux (or Unix), things getting that hosed are pretty unlikely. And when they do, you can rest assured that it was probably the result of something stupid that you did. That means it's something you can prevent next time. I much prefer that to the cross-your-fingers-and-try-again method required of Windows users. Some might argue that they'd rather just spend an hour or two re-installing than spend half a day trying to fix something they broke. I understand that reasoning, but it is short sighted. In five years, such a person will still be re-installing anytime something breaks (which will be just as often as before.) Meanwhile, some who is willing to figure out what went wrong and fix it will have gained oodles of experience that will help them to both fix errors more quickly and prevent them in the first place. In other words, with Linux (or Unix) you get 5 years of experience. With Windows, you get 1 year of experience 5 times over. -sauoq "My two cents aren't worth a dime."; | [reply] |
by converter (Priest) on Nov 30, 2003 at 21:16 UTC | |
We dispensed with Windows years ago, so I don't consider it "indispensable" in any way. Use whatever makes you (or the person who's signing the checks) happy. I prefer the UNIX(ish) way of doing things whenever possible and that's the toolset I'm most comfortable and productive with. | [reply] |