I disagree re: navigating MSDN to find classes and methods for.NET... when I was coding with.NET, I always had Reflector open for navigating our own libraries, as well as the.NET ones.
Now, whenever I code in PHP, I'm often on php.net and I *HATE* it.
One of my favorite things about Ruby is how sweet the reflection is and how ridiculously easy it is to look for objects or grep method names, etc, in IRB.
That said,.NET and PHP have shells too - which I always use whenever I code with them. I always used Booish in.NET (Boo's interactive console). For PHP, I use phpsh. Ofcourse, for.NET, you should use Powershell... but I hate, hate, hate it.
But, in my opinion, nothing beats how easy it is to navigate objects / scope in Ruby. Hell, you could alias a method to print its local_variables and instance_variables before returning. You can eval in the scope of any of your objects, to peek in and see what's what. It's yummy.:)
P.S. While I, too, had many headaches getting new users up and running with.NET, we offered all of our programmers the choice to code in whatever they wanted. Most people used VS, but someone used Eclipse, and I used vim. You don't NEED VS to code.NET. I was happy with vim + NAnt ( + Reflector + Booish ).
*FINALLY*... Windows servers are starting to make some friggin sense. With a headless install and a strong emphasis on automation / scriptability. This is great, especially for people like me who have some WMI experience, as well as lots of.NET. I also have a bit of Powershell experience from when I was coding with.NET.
The only thing I'm struggling with is howto get SSH up and running, so I an actually use the server. The installation went fine... I just can't remotely connect to the friggin thing!!!
I've tried using get-command / help in Powershell and googling everywhere.
apt-get install openssh-server just doesn't seem to work!?!?
I can't even figure out howto search packages. Where's apt/yum/etc? I figure, cause everything's binaries (no source code), that there's a binary package management system, rather than portages. I just cant seem to figure it out.
Windows *is* free to most users, eg. people who use Windows at work or get it pre-installed with their systems.
If you asked people how much Windows costs, I'm sure most people would have NO IDEA. Seriously, who buys Windows anyway? You get it for "free" with the system you buy. Or, at work, it's magically installed on all of the workstations.
To the general public, Windows *IS* FREE !!!
I'm sure most people don't even know that you can install operating systems besides Windows on their PCs. Hell, the term 'PC' essentially means 'Windows' to lay-people and technical support employees.
The *real* way to spread linux is, in my opinion, to do it without letting on that it's 'linux.' Kindof like the new microlaptops have been doing - they run linux but they haven't overly promoted that facts. All consumers here is 'Web browser'... 'Office software'... and they're good.
My boss and many of our employees use my workstation (Ubuntu) just fine... tho they tend to think that it's a Mac. My girlfriend doesn't care that her Eee runs linux - she just cares about browsing the web and writing documents... the same as most people!
Besides us geeks, people aren't going to buy computers and devices because they run linux. They're going to buy them because they're affordable and meet their needs. That's all. End of story.
I tried running Ruby on Rails on my cellphone and, let me tell you... it truly sucks monkey balls.
On the other hand... I've been coding my latest web app in Assembly for *some time now* It's taking a little longer than I (or the client) had initially anticipated, but it's very stable.
( If only I could figure out why I can't get AppleScript running on my Xbox!! )
[...] soft engineering/programming is a subset of computer science
true! i would take that even a step further... it depends on the target consumer of your applications, as well.
mr. awesome computer science man, who can program in everything, might not be what a business wants for someone who's good at whipping up quick, user-friendly (potentially resource-hungry and not secure enough to face the public internet or for commercial distribution) applications to help streamline business processes.
and, obviously, mr. business programmer, who's good at getting the employees what they need, probably isn't the guy you want to program some super computer... math... stuff. or even a decent performing application that could be sold and distributed, commercially.
i'm sure Java's *perfect* for some people to learn. C or even Assembly are *perfect* for other people. C# / Python / Ruby might be perfect for someone else. [some other languages here].
it depends on the person and their career / interests / environment.
IT Dept == Guardian Angels. IT Vendor == Fire Dept
on
Is the IT Department Dead?
·
· Score: 5, Insightful
See the IT department as the fire department for computer management
While you _did_ mention proactive work, I don't think you give it enough credit.
Proactive IT work is the difference between having guardian angels watching over your company... and a million bunny rabbits running out of a blazing, burning building.
In my experience, companies that use IT 'vendors,' the out-sourced IT departments, are the ones that have to call 'IT' when something's on fire. Companies with IT departments... though the company doesn't often realize it... have guardian angels watching over them, keeping the fires from happening (often).
IT Departments are likely to make everyone pissed because your email will be down for a few *_MINUTES_* (!ZOMG!! not My EMAIL!~!%!)... (to free up space on the server before the email goes down)
IT Vendors are likely to "save the day" after everyone's email has been down for a day and a half ("Thank you, fireman!")... (because the server ran out of space and everyone's email went down)
I have to agree that, for me, the best writing environment is a terminal with vim (often using Compiz' ADD Helper to dim the desktop and all other windows)
Also, a lightweight markup language, like Markdown, lets you write normally - but be able to convert your document to XHTML, LaTeX, PDF, etc etc.
The biggest downside to using vim is that, unlike Scrivener, it doesn't give you explicit places to put your notes / outline / etc. So, using vim, you're free to put your notes / etc wherever you want... both an upside (freedom) and a downside (something you have to figure out and that might distract you).
For drafting, I often using an SCM like git or subversion, but for little snippets and free-writes, etc? They might be written down on paper, they might be in a random note file... who knows?
It might be worth it to use screen or vim split screens to reproduce something like Scrivener provides, with designated places on the sides to have notes, etc etc. I think I might try that out...
But, come-on, really... don't we use vim because it's what we use all day, anyway? As sysadmins / programmers / etc, it makes sense for us to use the editor that we always use (which is available on all OSes, as well).
I use vim for my writing, because it's what I use all day anyway. I use git for keeping track of my files / drafts / revisions, because it's what I use all day anyway. I use markdown for my markup, because it's what I use all day anyway.
Some projects come along and "kill off" their open-source "competitors," surpassing them in functionality or ease-of-use or... whatever. So there is a bit of a sense of danger.
This is a good and healthy thing. Projects benefit from competitiveness, just like businesses do.
I, for one, am exceptionally happy to hear this. I'm a very happy Ubuntu user, on the desktop and server, but I've been waiting for an excuse to use and support another distro for awhile, if for no other reason than to learn it.
IMHO, a lot of the improvements to desktop linux over the past few years have come from trying to clone (or show up!) the functionality in OSX and Vista. I think linux has done a good job showing up OSX and Vista in terms of 3D effects and whatnot, so... now what? It'll be another 10-15 years til Microsoft releases another Windows, if it'll be anything like Vista. We need competition, even if its not driven by the normal market forces (like sales), to drive innovation.
I'm happy to see more competition between linux distros, specifically directed at Ubuntu, who's been king of the mountain for too long, I say! It's about time for another distro to step up to the challenge of knocking Ubuntu off its mountain!
It shouldn't matter [...] it makes no difference. It is ultimately just software. A tool that can do a job. Zealots proclaiming that open source is the only way make it sound like Open Source software is somehow different. It's all just software.
While I understand why you might think that, your statements are simply untrue. It matters. It matters a lot, especially to folks like the military where security is so important.
[security of the source / ability to test for exploits] Let's say the military decides to use X software for some task. If X is open-source, people could use the source to search for exploits / weaknesses. "But," you say, "even if the code is compiled to binary, you could still test for exploits." Well, yes... and no. Yes, if you *have* the binary, you can use it directly to find flaws or 'decompile' it to look for potential weaknesses in the generated source code... but not as easily as if you had the real source, in its original condition. And, even so, that's assuming that you have the source code, at *ALL*! If the software isn't open-source, there's a good chance that you'll never get your hands on the source OR the binary. At all. This is ideal for folks like the military.
[freedom of development / customizations to open-source code]
A lot of free source code is used legitimately in closed source apps
Another issue depends on the licensing of the open-source code. Many licenses would *NOT* allow the military (or whoever) to legitimately use the code in their closed source apps. That's not all licenses, but there are ones that might legally force the military to release their modifications to the original source code. Obviously, the military has to beware of such licenses.
So you see, just from these 2 examples... it's simply not the case that open-source versus closed-source software doesn't matter or that "it's all just software." I'm sure lots of people can point out numerous other reasons why it matters - these are the two that came to mind for me.
Maybe that's just been my experience though and it doesn't reflect reality. Who knows.
I can't help but to think that you've simply had a very, very unfortunate experience. I am, however glad to see that you remain open-minded.
[cultural/usage differences, eg. installing apps] Too many times, people install Linux and, expecting it to work just like Windows, get frustrated and give up. Just like switching from Windows to OSX, there are some core differences in how the systems behave and how to install software, etc etc.
For example, I *love* package management systems. I love them to death. I *much prefer* this:
* open terminal
* type: [package-manager] install [app-name] or this:
* open GUI package management app
* search for app name
* select and click "Install" over this:
* open browser
* search for application
* find their official website (hopefully, perhaps lots of various other versions available on other sites)
* finally find the right download link
* click and download
* find and execute the installer (or unzip and run an installer... or unzip and copy to Program Files?)
* Next > Next > Next > Next > Next > Next > Finish
Similarly, I prefer typing "man [app-name]" over Googling around and around to find the documentation for howto use something I just installed.
It's a cultural thing. Can you treat Linux like Windows and download software from websites and double-click to run an installer? Many times, yes. Otherwise, you can almost always download the source and install that. A side benefit is - your package manager takes care of software updates for you. You don't have to re-download something when you find out there's an update (or rely on the application's own auto-updater).
For me, as a software developer and sysadmin... the Linux way just feels easier for me. Take the above install example... now say you need to install 20 apps. That's not unusual... maybe if you just reformatted. Compare this:
* open terminal
* type: [package-manager] install [app1] [app2] [...] [app20] to this: [app 1]
* open browser
* search for application
* find their official website (hopefully, perhaps lots of various other versions available on other sites)
* finally find the right download link
* click and download
* find and execute the installer (or unzip and run an installer... or unzip and copy to Program Files?)
* Next > Next > Next > Next > Next > Next > Finish [app2]
* open browser
* search for application
* find their official website (hopefully, perhaps lots of various other versions available on other sites)
* finally find the right download link
* click and download
* find and execute the installer (or unzip and run an installer... or unzip and copy to Program Files?)
* Next > Next > Next > Next > Next > Next > Finish [... app20]
* open browser
* search for application
* find their official website (hopefully, perhaps lots of various other versions available on other sites)
* finally find the right download link
* click and download
* find and execute the installer (or unzip and run an installer... or unzip and copy to Program Files?)
* Next > Next > Next > Next > Next > Next > Finish
[experiences with the community / communities] The experiences that I've had on forums and Google group, etc, for Linux and for other open-source projects is a *huge* selling point for me. I can always hop onto
I hear you. I've been looking in the opposite direction for awhile now.
I've been using Ruby for a few years and I've been looking for excuses to learn Python. I've gone so far as to buy some books, in case I find the time to go through them... but I haven't found a reason, as of yet.
They certainly do seem to occupy the same niche, so there may not be very good reasons for learning one if you know the other. If anything, I might learn Python because it appears to be more popular for *nix programming... but the Ruby community is great and growing.
Either way, I can't see myself leaving Ruby as my language of choice for awhile to come... I've very much in love with it.
Re:Two words why I absolutely cannot work with Ubu
on
Vista Vs. Gutsy Gibbon
·
· Score: 1
It wasn't too stable either, meaning you could not modify any display settings using the GUI; This had to be done directly in Xorg.conf.
I wouldn't say this means it's any less stable. I directly edit.conf files for lots of things... apache2, subversion, samba, nfs, ssh,... does that mean these aren't stable?
As far as the dual-head card versus 2 cards go... I don't know. Gutsy is the first time I've ever had a GUI for editing my display settings. For my dual-head setup, it got me up and running faster than ever before.
I've setup 2 Gutsy desktops now and both required at least 1 tweak in xorg.conf to get *Compiz* working (in one case to get it working properly with 2 monitors, in another to enable Composite for an ATI setup)... but, without Compiz, everything worked out of the box or by using the GUI to configure. I'll argue that both setups were just as easy as Windows setups. While single line xorg.conf tweaks were required for Compiz... Windows doesn't have Compiz (and, if it did, who's to say that tweaks wouldn't be required on Windows, as well).
Ubuntu Version Numbers = Year and Month of Release
on
Vista Vs. Gutsy Gibbon
·
· Score: 1
if the other people who replied didn't mention... it's 7.10, not 7.1 because they're simply release dates. 7.10 == October 2007. 7.04 == Feisty Fawn == April 2007.
But you're right - Gutsy added a lot. But so did Feisty. And Edgy. And Dapper. And...
just so you know:)
Re:Two words why I absolutely cannot work with Ubu
on
Vista Vs. Gutsy Gibbon
·
· Score: 1
Looks like others have replied (probably with the same message) but... this works with Gutsy, out of the friggin box, just like Windows. By which I mean: 1) install & run 2) open the display dialog and enable the second monitor
DONE!
I was *so* excited for the new X config GUI that ships with Gutsy - and it made things just as easy as I'd hoped.
Now... it's not 100%, and here's why... if you want all the sweet Compiz Fusion effects, you might need to use TwinView for your dual monitors, instead of whatever the dialog sets you up with. *NO* this does not mean you need to edit config files... you can configure it using the nvidia settings dialog (all assuming you have a nvidia card, because this is what I had to do).
NOTE: you may say that's more work than Windows... but it's not. It's the same amount of work to get to dual monitors - Windows doesn't have the sweet effects. If it did, there's a good chance you'd need to configure them.
For the first time, for me, it was ridiculously easy to setup: * Dual Monitors * Effects (previously using Beryl - now Compiz Fusion):)
But these days I simply don't have time to spend all day and night just getting an OS to work. I have a wife and kids now, not to mention actual work to accomplish.
Interestingly, this is part of the reason why I switched all of our home PCs => Linux last year... I didn't have the time to deal with spamware and being sure Windows was up-to-date and trying to keep it somewhat speedy. I always reformatting every year or so anyway because Windows always feels like it needs a reformat after 6 months / a year. Windows maintenance can be such a hassle.
Now, my systems require basically no maintenance at all. *Far* less than when we ran Windows at home.
(I think I last rebooted our file/backup server sometime in early 2007?)
I should've also mentioned - I'm a.NET developer, so I've got a big reason to use Windows instead of linux. To me, that makes my switch to linux even more meaningful. Not only do a prefer linux over Windows... I prefer a linux environment over Windows for programming MS.NET!
It's hilarious that he can't seem to figure out how to shut down the computer... But these "opinion articles" with their "I can't be bothered to figure out a slightly different Control Panel - instead, I switched operating systems!" matra are just annoying and stupid.
I've been using Windows since good old Windows 3.1, and MS's operating systems (MS-DOS) before that. I've administered NT, 2000, and 2003 Windows servers. I'm not bragging - rather, I'm making the case that I'm not an idiot and I've used and administered most of Windows' operating systems.
2 days ago, I got a new workstation with Vista on it and I decided to use it for a little while, to give it a second chance (the first time I got a workstation with Vista, it blue screened within 5 minutes - I was simple trying to change the styles to look like Windows 'Classic'... I'm not kidding... less than 5 minutes to BSOD and I wasn't doing anything to try to crash it).
So I tried to get the Vista box on our network... it took me *15 minutes* to figure out how to set a Static IP... *AND* I had to call over a buddy to help me with it. We tried every view of the control panel, tried different sections, tried clicking everything in the network section... we never did find a screen that shows all network devices, as they are in other versions of Windows... I eventually find my way to a property dialog and got to the right screen that way. Later, I couldn't find how to restart it (as you mention)! I was stunned how unintuitive everything was.
Hilarious, though it may be... I, too, installed Ubuntu (7.10 Gutsy Gibbon) after about an hour of trying to give Vista a second shot.
While you can't learn a whole OS in one hour, it's at least easy to figure out how to do things in all other Windows OSes, as well as with Macs (I administer a few for our designers) and just about any desktop Linux distro (I can't speak for them all as I haven't tried them all... but Ubuntu, PCLinuxOS, CentOS, DSL, Puppy Linux, and many other are all easier to work with, in my opinion, than Vista).
This is my first time using linux for my workstation at work (been using Ubuntu at home since 6.06)... and I couldn't be happier:)
I support your thoughts; however, IMHO, there's a key difference between Windows and Linux that's greatly increased my productivity since moving to Linux (after *so* many years of using/administrating Windows):
~ Automation ~
For the most part, Windows was made for point and clicking, while Linux was made for scripting.
Now, that's not to say that you can't script many/most things in Windows or that you can't point and click in Linux, but *everything* seems to be scriptable in Linux. With Linux apps, it seems like there are always easy to access config files, great command-line interfaces, manual pages, and often APIs that make scripting easy.
Dramatization:
== Linux
* 1 minute spent telling your package manager to install all of the apps you need
* 30 minutes waiting for the latest versions of the apps to download and install
== Windows
* 120 minutes going to all the websites for all the apps you need and finding the link(s) for the most recent download(s) and manually installing each and every single app you need (you may have local copies of the installers for your apps but are they up-to-date?)
* 50+ times clicking 'Next'
Interestingly, I'm in the opposite boat as the parent... I'm an ASP.NET developer and I have to deal with lots of Windows boxes... but Linux is my desktop of choice, even developing for.NET
Submit and Preview look *so* similar sometimes,... don't they?
Nevermind! As many, many, many others have pointed out... the thoughts in TFA are pretty lame. If the whole company uses PHP, why did you use Ruby? If you like your own 'little self-made system,' why did you choose Rails? Is there anything Rails can do that PHP can't? Well... yes, in a way. Rails is a framework and PHP is a language. A better question would be... can Rails do anything that CakePHP (or another similar framework) can't? Or can ruby do anything that PHP can't? Well, the answer to both of those questions might be Yes but, if YAGNI (You Ain't Gonna Need It), then why bother?
In the agile world, the best teams are supposed to be made up of "generalizing specialists." These are folks who have one or more specializations, but who also have a working knowledge of many systems / technologies / business domains.
For instance, not everyone on the team might design a database as well as Joe, the database savvy guy, but everyone on the team has a working knowledge of databases and could design one. Not everyone on the team might be able to easily write our deployment/automation scripts, but everyone on the team is familiar with how these work and could modify them. Not everyone knows exactly how our server clusters are configured, but everyone knows enough to safely work with the servers.
To begin with, it might sound like it doesn't leave you with much job security if everyone knows a good bit about everything, so you could lose any member of the team and the project would survive. That's potentially good for the project as "Joe could get hit by a bus," but it's also not true, when it comes to job security. Those who learn the business model and the ins-and-outs of our system become huge assets to the team, and to the company. We would be far more likely to lay off someone who isn't willing to learn new things. What's the point of someone like that?
Actually, hello world is *exactly* the same in ruby as it is in python
... when i don't have access to ruby, i use python because ... well ... THIS IS AN EX-PARROT!!! )
The only difference is what they use for "foo" and "bar"
ruby:
print "chunky bacon"
python:
print "spam and eggs"
( personally, i prefer cartoon foxes but
that's Read the F...ing URL
I disagree re: navigating MSDN to find classes and methods for .NET ... when I was coding with .NET, I always had Reflector open for navigating our own libraries, as well as the .NET ones.
.NET and PHP have shells too - which I always use whenever I code with them. I always used Booish in .NET (Boo's interactive console). For PHP, I use phpsh. Ofcourse, for .NET, you should use Powershell ... but I hate, hate, hate it.
:)
.NET, we offered all of our programmers the choice to code in whatever they wanted. Most people used VS, but someone used Eclipse, and I used vim. You don't NEED VS to code .NET. I was happy with vim + NAnt ( + Reflector + Booish ).
Now, whenever I code in PHP, I'm often on php.net and I *HATE* it.
One of my favorite things about Ruby is how sweet the reflection is and how ridiculously easy it is to look for objects or grep method names, etc, in IRB.
That said,
But, in my opinion, nothing beats how easy it is to navigate objects / scope in Ruby. Hell, you could alias a method to print its local_variables and instance_variables before returning. You can eval in the scope of any of your objects, to peek in and see what's what. It's yummy.
P.S. While I, too, had many headaches getting new users up and running with
*FINALLY* ... Windows servers are starting to make some friggin sense. With a headless install and a strong emphasis on automation / scriptability. This is great, especially for people like me who have some WMI experience, as well as lots of .NET. I also have a bit of Powershell experience from when I was coding with .NET.
... I just can't remotely connect to the friggin thing!!!
;-)
The only thing I'm struggling with is howto get SSH up and running, so I an actually use the server. The installation went fine
I've tried using get-command / help in Powershell and googling everywhere.
apt-get install openssh-server just doesn't seem to work!?!?
I can't even figure out howto search packages. Where's apt/yum/etc? I figure, cause everything's binaries (no source code), that there's a binary package management system, rather than portages. I just cant seem to figure it out.
Help! Code examples???
TIA!
Windows *is* free to most users, eg. people who use Windows at work or get it pre-installed with their systems.
... 'Office software' ... and they're good.
... tho they tend to think that it's a Mac. My girlfriend doesn't care that her Eee runs linux - she just cares about browsing the web and writing documents ... the same as most people!
If you asked people how much Windows costs, I'm sure most people would have NO IDEA.
Seriously, who buys Windows anyway?
You get it for "free" with the system you buy.
Or, at work, it's magically installed on all of the workstations.
To the general public, Windows *IS* FREE !!!
I'm sure most people don't even know that you can install operating systems besides Windows on their PCs. Hell, the term 'PC' essentially means 'Windows' to lay-people and technical support employees.
The *real* way to spread linux is, in my opinion, to do it without letting on that it's 'linux.' Kindof like the new microlaptops have been doing - they run linux but they haven't overly promoted that facts. All consumers here is 'Web browser'
My boss and many of our employees use my workstation (Ubuntu) just fine
Besides us geeks, people aren't going to buy computers and devices because they run linux. They're going to buy them because they're affordable and meet their needs. That's all. End of story.
Do you care which brand of toaster you buy?
When I switched over to Linux a year and a half ago, it was to avoid being a prisoner to Vista.
Now [after years of administering/user Windows], you'd have to pay me [a million dollars] to go back to Windows
I tried running Ruby on Rails on my cellphone and, let me tell you ... it truly sucks monkey balls.
... I've been coding my latest web app in Assembly for *some time now*
On the other hand
It's taking a little longer than I (or the client) had initially anticipated, but it's very stable.
( If only I could figure out why I can't get AppleScript running on my Xbox!! )
true! i would take that even a step further
mr. awesome computer science man, who can program in everything, might not be what a business wants for someone who's good at whipping up quick, user-friendly (potentially resource-hungry and not secure enough to face the public internet or for commercial distribution) applications to help streamline business processes.
and, obviously, mr. business programmer, who's good at getting the employees what they need, probably isn't the guy you want to program some super computer
i'm sure Java's *perfect* for some people to learn. C or even Assembly are *perfect* for other people. C# / Python / Ruby might be perfect for someone else. [some other languages here].
it depends on the person and their career / interests / environment.
While you _did_ mention proactive work, I don't think you give it enough credit.
Proactive IT work is the difference between having guardian angels watching over your company
In my experience, companies that use IT 'vendors,' the out-sourced IT departments, are the ones that have to call 'IT' when something's on fire. Companies with IT departments
IT Departments are likely to make everyone pissed because your email will be down for a few *_MINUTES_* (!ZOMG!! not My EMAIL!~!%!)
IT Vendors are likely to "save the day" after everyone's email has been down for a day and a half ("Thank you, fireman!")
see: Markdown Extensions
I use Maruko (ruby) but the most popular, so far as I can tell, is PHP Markdown Extra.
A lot of people like Textile, but it feels like writing HTML to me.
Compare (Textile): To (Markdown): ... I can look at my Markdown files and easily see that outline. Not so, in my opinion, with Textile.
Example Markdown Extra table (i tried putting it in the comment
I have to agree that, for me, the best writing environment is a terminal with vim (often using Compiz' ADD Helper to dim the desktop and all other windows)
... both an upside (freedom) and a downside (something you have to figure out and that might distract you).
... who knows?
...
... don't we use vim because it's what we use all day, anyway? As sysadmins / programmers / etc, it makes sense for us to use the editor that we always use (which is available on all OSes, as well).
Also, a lightweight markup language, like Markdown, lets you write normally - but be able to convert your document to XHTML, LaTeX, PDF, etc etc.
The biggest downside to using vim is that, unlike Scrivener, it doesn't give you explicit places to put your notes / outline / etc. So, using vim, you're free to put your notes / etc wherever you want
For drafting, I often using an SCM like git or subversion, but for little snippets and free-writes, etc? They might be written down on paper, they might be in a random note file
It might be worth it to use screen or vim split screens to reproduce something like Scrivener provides, with designated places on the sides to have notes, etc etc. I think I might try that out
But, come-on, really
I use vim for my writing, because it's what I use all day anyway.
I use git for keeping track of my files / drafts / revisions, because it's what I use all day anyway.
I use markdown for my markup, because it's what I use all day anyway.
Danger is my middle name.
... whatever. So there is a bit of a sense of danger.
... now what? It'll be another 10-15 years til Microsoft releases another Windows, if it'll be anything like Vista. We need competition, even if its not driven by the normal market forces (like sales), to drive innovation.
Some projects come along and "kill off" their open-source "competitors," surpassing them in functionality or ease-of-use or
This is a good and healthy thing. Projects benefit from competitiveness, just like businesses do.
I, for one, am exceptionally happy to hear this. I'm a very happy Ubuntu user, on the desktop and server, but I've been waiting for an excuse to use and support another distro for awhile, if for no other reason than to learn it.
IMHO, a lot of the improvements to desktop linux over the past few years have come from trying to clone (or show up!) the functionality in OSX and Vista. I think linux has done a good job showing up OSX and Vista in terms of 3D effects and whatnot, so
I'm happy to see more competition between linux distros, specifically directed at Ubuntu, who's been king of the mountain for too long, I say! It's about time for another distro to step up to the challenge of knocking Ubuntu off its mountain!
( ^ tongue sharply in cheek )
While I understand why you might think that, your statements are simply untrue. It matters. It matters a lot, especially to folks like the military where security is so important.
[security of the source / ability to test for exploits]
Let's say the military decides to use X software for some task. If X is open-source, people could use the source to search for exploits / weaknesses. "But," you say, "even if the code is compiled to binary, you could still test for exploits." Well, yes
[freedom of development / customizations to open-source code]
Another issue depends on the licensing of the open-source code. Many licenses would *NOT* allow the military (or whoever) to legitimately use the code in their closed source apps. That's not all licenses, but there are ones that might legally force the military to release their modifications to the original source code. Obviously, the military has to beware of such licenses.
So you see, just from these 2 examples
I can't help but to think that you've simply had a very, very unfortunate experience. I am, however glad to see that you remain open-minded.
... or unzip and copy to Program Files?)
... the Linux way just feels easier for me. Take the above install example ... now say you need to install 20 apps. That's not unusual ... maybe if you just reformatted. Compare this: ... or unzip and copy to Program Files?) ... or unzip and copy to Program Files?) ... or unzip and copy to Program Files?)
[cultural/usage differences, eg. installing apps]
Too many times, people install Linux and, expecting it to work just like Windows, get frustrated and give up. Just like switching from Windows to OSX, there are some core differences in how the systems behave and how to install software, etc etc.
For example, I *love* package management systems. I love them to death. I *much prefer* this:
* open terminal
* type: [package-manager] install [app-name]
or this:
* open GUI package management app
* search for app name
* select and click "Install"
over this:
* open browser
* search for application
* find their official website (hopefully, perhaps lots of various other versions available on other sites)
* finally find the right download link
* click and download
* find and execute the installer (or unzip and run an installer
* Next > Next > Next > Next > Next > Next > Finish
Similarly, I prefer typing "man [app-name]" over Googling around and around to find the documentation for howto use something I just installed.
It's a cultural thing. Can you treat Linux like Windows and download software from websites and double-click to run an installer? Many times, yes. Otherwise, you can almost always download the source and install that. A side benefit is - your package manager takes care of software updates for you. You don't have to re-download something when you find out there's an update (or rely on the application's own auto-updater).
For me, as a software developer and sysadmin
* open terminal
* type: [package-manager] install [app1] [app2] [...] [app20]
to this:
[app 1]
* open browser
* search for application
* find their official website (hopefully, perhaps lots of various other versions available on other sites)
* finally find the right download link
* click and download
* find and execute the installer (or unzip and run an installer
* Next > Next > Next > Next > Next > Next > Finish
[app2]
* open browser
* search for application
* find their official website (hopefully, perhaps lots of various other versions available on other sites)
* finally find the right download link
* click and download
* find and execute the installer (or unzip and run an installer
* Next > Next > Next > Next > Next > Next > Finish
[... app20]
* open browser
* search for application
* find their official website (hopefully, perhaps lots of various other versions available on other sites)
* finally find the right download link
* click and download
* find and execute the installer (or unzip and run an installer
* Next > Next > Next > Next > Next > Next > Finish
[experiences with the community / communities]
The experiences that I've had on forums and Google group, etc, for Linux and for other open-source projects is a *huge* selling point for me. I can always hop onto
Usenet / NNTP *** SUCKS *** ... you can't get any Music or Movies over it. It's all chatty and crappy.
go chase after limewire and torrent users.
go.
move along.
nothing to see here.
I hear you. I've been looking in the opposite direction for awhile now.
... but I haven't found a reason, as of yet.
... but the Ruby community is great and growing.
... I've very much in love with it.
I've been using Ruby for a few years and I've been looking for excuses to learn Python. I've gone so far as to buy some books, in case I find the time to go through them
They certainly do seem to occupy the same niche, so there may not be very good reasons for learning one if you know the other. If anything, I might learn Python because it appears to be more popular for *nix programming
Either way, I can't see myself leaving Ruby as my language of choice for awhile to come
I wouldn't say this means it's any less stable. I directly edit
As far as the dual-head card versus 2 cards go
I've setup 2 Gutsy desktops now and both required at least 1 tweak in xorg.conf to get *Compiz* working (in one case to get it working properly with 2 monitors, in another to enable Composite for an ATI setup)
if the other people who replied didn't mention ... it's 7.10, not 7.1 because they're simply release dates. 7.10 == October 2007. 7.04 == Feisty Fawn == April 2007.
...
:)
But you're right - Gutsy added a lot. But so did Feisty. And Edgy. And Dapper. And
just so you know
Looks like others have replied (probably with the same message) but ... this works with Gutsy, out of the friggin box, just like Windows. By which I mean:
... it's not 100%, and here's why ... if you want all the sweet Compiz Fusion effects, you might need to use TwinView for your dual monitors, instead of whatever the dialog sets you up with. *NO* this does not mean you need to edit config files ... you can configure it using the nvidia settings dialog (all assuming you have a nvidia card, because this is what I had to do).
... but it's not. It's the same amount of work to get to dual monitors - Windows doesn't have the sweet effects. If it did, there's a good chance you'd need to configure them.
:)
1) install & run
2) open the display dialog and enable the second monitor
DONE!
I was *so* excited for the new X config GUI that ships with Gutsy - and it made things just as easy as I'd hoped.
Now
NOTE: you may say that's more work than Windows
For the first time, for me, it was ridiculously easy to setup:
* Dual Monitors
* Effects (previously using Beryl - now Compiz Fusion)
Interestingly, this is part of the reason why I switched all of our home PCs => Linux last year
Now, my systems require basically no maintenance at all. *Far* less than when we ran Windows at home.
(I think I last rebooted our file/backup server sometime in early 2007?)
I should've also mentioned - I'm a .NET developer, so I've got a big reason to use Windows instead of linux. To me, that makes my switch to linux even more meaningful. Not only do a prefer linux over Windows ... I prefer a linux environment over Windows for programming MS .NET!
I've been using Windows since good old Windows 3.1, and MS's operating systems (MS-DOS) before that. I've administered NT, 2000, and 2003 Windows servers. I'm not bragging - rather, I'm making the case that I'm not an idiot and I've used and administered most of Windows' operating systems.
2 days ago, I got a new workstation with Vista on it and I decided to use it for a little while, to give it a second chance (the first time I got a workstation with Vista, it blue screened within 5 minutes - I was simple trying to change the styles to look like Windows 'Classic'
So I tried to get the Vista box on our network
Hilarious, though it may be
While you can't learn a whole OS in one hour, it's at least easy to figure out how to do things in all other Windows OSes, as well as with Macs (I administer a few for our designers) and just about any desktop Linux distro (I can't speak for them all as I haven't tried them all
This is my first time using linux for my workstation at work (been using Ubuntu at home since 6.06)
I support your thoughts; however, IMHO, there's a key difference between Windows and Linux that's greatly increased my productivity since moving to Linux (after *so* many years of using/administrating Windows):
... I'm an ASP.NET developer and I have to deal with lots of Windows boxes ... but Linux is my desktop of choice, even developing for .NET
~ Automation ~
For the most part, Windows was made for point and clicking, while Linux was made for scripting.
Now, that's not to say that you can't script many/most things in Windows or that you can't point and click in Linux, but *everything* seems to be scriptable in Linux. With Linux apps, it seems like there are always easy to access config files, great command-line interfaces, manual pages, and often APIs that make scripting easy.
Dramatization:
== Linux
* 1 minute spent telling your package manager to install all of the apps you need
* 30 minutes waiting for the latest versions of the apps to download and install
== Windows
* 120 minutes going to all the websites for all the apps you need and finding the link(s) for the most recent download(s) and manually installing each and every single app you need (you may have local copies of the installers for your apps but are they up-to-date?)
* 50+ times clicking 'Next'
Interestingly, I'm in the opposite boat as the parent
*shakes head*
... don't they?
... the thoughts in TFA are pretty lame. If the whole company uses PHP, why did you use Ruby? If you like your own 'little self-made system,' why did you choose Rails? Is there anything Rails can do that PHP can't? Well ... yes, in a way. Rails is a framework and PHP is a language. A better question would be ... can Rails do anything that CakePHP (or another similar framework) can't? Or can ruby do anything that PHP can't? Well, the answer to both of those questions might be Yes but, if YAGNI (You Ain't Gonna Need It), then why bother?
Submit and Preview look *so* similar sometimes,
Nevermind! As many, many, many others have pointed out
In the agile world, the best teams are supposed to be made up of "generalizing specialists." These are folks who have one or more specializations, but who also have a working knowledge of many systems / technologies / business domains.
p ecialists.htm
For instance, not everyone on the team might design a database as well as Joe, the database savvy guy, but everyone on the team has a working knowledge of databases and could design one. Not everyone on the team might be able to easily write our deployment/automation scripts, but everyone on the team is familiar with how these work and could modify them. Not everyone knows exactly how our server clusters are configured, but everyone knows enough to safely work with the servers.
Scott Ambler has a good article about "generalizing specialists" here: http://www.agilemodeling.com/essays/generalizingS
To begin with, it might sound like it doesn't leave you with much job security if everyone knows a good bit about everything, so you could lose any member of the team and the project would survive. That's potentially good for the project as "Joe could get hit by a bus," but it's also not true, when it comes to job security. Those who learn the business model and the ins-and-outs of our system become huge assets to the team, and to the company. We would be far more likely to lay off someone who isn't willing to learn new things. What's the point of someone like that?