For the old Bourne shell I agree, but IME bash syntax can be distinctly better than Perl for certain tasks -- typically stuff that's rather heavy on glueing other stuff together.
And bash is becoming universally available, too.
What can perl do that newer languages such as python and ruby can't do, and do more readably/maintainably?
Don't know Ruby, but Perl is distinctly better than Python for writing text filters with regexes and stuff -- the things you used to use sed and awk for. More readable code, faster execution.
(On the other hand, some people still stick with awk.)
He could have felt burned. I assume it's for a $400 Radeon, not a $50 Radeon, since it's hardly worth putting much effort into the latter (just buy an Intel).
Can you buy Intel cards? All the web shops have hundreds of ATI and nVidia-based cards, and nothing else (well, possibly a weird new Matrox thing for $700).
Personally I use a Matrox card from back when they were good (G450 or something) but it's an AGP card and I'm screwed if I buy a new motherboard...
As an Admin I refuse to deal with this long shit while IPv4 works just fine. I will NAT the crap out of it if I have to just to ignore IPv6 longer.
And I hope it's *real* issue which is preventing me from using IPv6 today, and not this kind of pettiness (or job security, or whatever psychology is behind the anti-IPv6 attitudes you encounter on Slashdot).
There's a large cultural difference. Many guys and girls on asia use web cafes. When they later get own connection theres not usually enough ip's. You're talking about billions of people. Not everyone is going to have their own ip address from that pool.
Which brings us back on topic: IPv6...
I have two IPv4 addresses, four computers, and 18,446,744,073,709,551,616 IPv6 addresses... all that's missing is for the people who run servers to get their shit straight.
That's funny, because I just interviewed with Google last week for an SRE role, and they specifically wanted someone with hardcore Python and Java development experience, at the filesystem and kernel level. They're moving -everything- into those two language engines.
1a. You haven't specified exactly what you'll be doing: if it's just office crap, anything will do
Except for that which doesn't work reliably, e.g. locks up or has graphics bugs.
Or that which needs bizarre, non-free or bleeding-edge drivers.
but if you'll be running the GIMP, games, etc, you'll need higher-end hardware (both CPU and GPU).
I don't know how you use the GIMP, but I use it for plain 2D image editing, and used that way it just needs to render bitmaps. Nothing your web browser doesn't want to do already.
The majority of reply-alls can be replaced by using mailing lists.
+1.
The lack of real (archived, opt-in) mailing lists
is part of what drives useless reply-all usage.
Let workers who are interested in topic Foo look at the archives for the Foo mailing list, decide if they like it, and sign up if they do.
At my workplace we're going even more retro.
On Monday I'm going to sign up on the internal IRC network, and try to convince others to do the same.
Our Enterprisey IM software simply doesn't support the way we work (when it works at all, that is).
No. Like others have said, the only reason code breaks when it moves between architectures this similar is that the author did something obviously stupid, like casting between unrelated types.
An OS may have interfaces which encourage you to do stupid things, like the Unix ioctl() is-this-an-integer-or-pointer thing. Perhaps Windows has more of this?
OK, that *is* something I can actually understand.
I've cursed the Mediawiki editor and version control stuff too, and longed for my trusty Emacs and Git (or CVS, even) setup.
There are several problems which need to be solved to accomplish that, though. Just to mention two that come to mind: you now need a local preview feature, for example. And you cannot expect every contributor to keep a local copy of e.g. Wikipedia-en so you need to partition it...
In many teams at many companies, including the last two that I've worked at, internal wikis have replaced Word as the standard way of sharing documents. It's just so much easier than creating a Word doc, putting it up on some network share and then hoping that no one moves (or worse, copies!) the document. Everyone, regardless of whether they're using Windows, Mac OS X, Linux or their smartphone, can access it,
My company too. We have half a dozen different proprietary collaboration/knowledge database tools, but our plain Mediawiki beats them all. Easily.
But you miss the point of a workplace wiki somewhat -- it's not just to have a mixed bag of documents, but also to have the relationships between different pieces of information, and between people, and yourself.
You get to reflect on the information and discuss it with your peers.
because it's all based on open standards.
Not really. Mediawiki is free software, but not an open standard.
Wikis still suck at collaborative work.
The only good tool for collaborative work is a versioning system, preferably distributed. But most of the existing ones are designed for plain text in mind, not binaries or even computer-generated XML.
Good luck replacing the Mediawiki-based collaboration at my two workplaces with a Git repository containing... well, *what*, exactly? The computer-generated XML you mentioned?
A wiki does a more than decent job of encouraging N people to update a set of shared information, but that's far from everything it does.
Linking and categorizing the information, formatting it, providing search capabilities and so on is just as important.
Or at least so I think. Let Wikipedia BE not that easy to edit: someone that wants to edit will have to go through this small extra step.
And the step really is small.
My experience is, people whine about not being able to write Mediawiki syntax up until the point they actually *try*.
Then it turns out they can use it after all.
This is compounded by the lack of effective centralized management tools for SSH key access...
It works both ways. Precisely because there *is no* centralized control of SSH keys, my workplace cannot implement crazy password aging schemes, or demand at least one digit in each passphrase. End result: I take much better care of my ssh keys than of my plain login passwords.
There's plenty of us here watching from afar with large grins on our face.
Hello from FreeBSD, NetBSD, DragonflyBSD, and OpenBSD.
And some of us Linux people are happy that you are there.
But it is not a good idea for you to gloat -- if Linux fails to keep the Unix legacy alive, your support base dwindles too.
Office has excellent interconnectivity. I don't think that any users really perceive MS Office as being a simple suite of unrelated programs.
I do.
I'm aware that there's some weird embed-an-excel-table-in-a-word-document thing you can do (isn't that where OLE came from?) but I haven't seen it *used*. Not for a decade at least.
They use Powerpoint heavily at my workplace, and Word/Excel a lot too. The usage is very crude and primitive, though.
RedHat makes much of its money from companies that are moving to open-source because they are sick of the downsides of commercial software, which go from quality issues to vendor lock-in.
To me,
quality issues and vendor lock-in sounds an awful lot like the downsides of RedHat (and the other for-profit Linux vendors I have seen).
We have at this point taken control of our own evolution in terms of intelligence and are developing it seperately from the law of the jungle, constructive rather than destructive evolution.
That does not make any sense at all, in several ways.
(a) We have in no way taken control of our evolution; we don't even have control of our technology or economy.
(b) the term "destructive evolution" is as meaningless as, say, "purple evolution".
1) characterise the traffic. could be from a range of ip, targeting specific ip, targeting protocol x or y or having some id characteristic you can 'lock' onto.
2) install filter for such traffic UPSTREAM of you, at the isp. blocking once its crossed the wan to your site is obviously useless
Not obvious to me. The cost of a single packet increases immensely at each step as it
hits some NAT/state tracking device of yours
hits an actual server
hits the IP stack of said server
hits userspace
makes userspace do heavy things like processing, database access...
PETA will demand a monument to the billions of microbes that died when the pools dried up.
Seriously, there are rare and unusual ecosystems around hot springs.
This incident might be a significant loss of biodiversity, unless hot springs are common in the area.
Minor quibbles: it's friggin blog post, not an "article." And it's not about "navigating an ocean of open source" in any sense that you might imagine. It's more along the lines of an About.com "Here are ten tips for using Open Source in your business" page.
Not even that, really.
It's about integrating obscure open source components in the software you're writing.
The article doesn't make sense if you try to apply it to
running a stock Linux server or desktop.
Question: If Canonical announced tomorrow "We are going broke, either we have the Amazon search or we close our doors" which would you choose? Frankly most of the improvements on usability on the desktop can be traced back to Canonical and like it or not if they go under there is nobody lining up to take their place.
IMO the Unix "desktop" was good enough for average users in 1992 or so, so I'd choose a world without Canonical.
I don't quite understand what these usability features *are*, anyway. I have to use Windows at work, and see nothing remarkably usable there. Keymap switching is nice, but everything else is comparable with my plain X11 desktop.
Of course, now someone will name me "part of the problem", mutter things about "the year of the Linux desktop" and so on...
Actually one could make the argument that Java is worse, since at least C++ voodoo can allow a highly trained programmer to accomplish some really cool and unusual things.
Cool and unusual things are *not* something to strive for, and it's not what C++ is for.
More on topic, C++ at least doesn't have the "everything is a class and each class is one file" paradigm Java used last time I checked. I imagine it's slightly harder to work with Java using a normal text editor because of that.
On the other hand, you should structure your code in a natural way, not write 50 kloc files just because you don't know how to navigate between files.
Of course that doesn't change the fact that at least in Java tiny changes in whitespace won't result in two valid but entirely different meanings...
Did you change the topic to Python now? I don't recall any such problem in C++.
I could see some thinking "recent" technology means "good", but my personal experience provides little evidence to correlate "new technology" with good. I could even make a case that it's a red flag.
Yes. An euphemism for "this software used to be Joe's personal playground until he quit" or "all the developers are fresh from school and do what their teacher told them to".
On the other hand an organization can easily be too backwards, too.
FWIW Anyone using X over a network for any kind of serious remote management has rocks in their head. It is a horribly inefficient protocol because of it's age, compared to modern protocols such as VNC and NX.
X over ssh works very well for me. If it's horribly inefficient like you say, it doesn't show on the 100Mbit networks where I use it all day long.
But then I use old, properly written applications, without bling and dancing hamsters.
Better syntax than Bourne shell scripts.
For the old Bourne shell I agree, but IME bash syntax can be distinctly better than Perl for certain tasks -- typically stuff that's rather heavy on glueing other stuff together. And bash is becoming universally available, too.
What can perl do that newer languages such as python and ruby can't do, and do more readably/maintainably?
Don't know Ruby, but Perl is distinctly better than Python for writing text filters with regexes and stuff -- the things you used to use sed and awk for. More readable code, faster execution.
(On the other hand, some people still stick with awk.)
He could have felt burned. I assume it's for a $400 Radeon, not a $50 Radeon, since it's hardly worth putting much effort into the latter (just buy an Intel).
Can you buy Intel cards? All the web shops have hundreds of ATI and nVidia-based cards, and nothing else (well, possibly a weird new Matrox thing for $700). Personally I use a Matrox card from back when they were good (G450 or something) but it's an AGP card and I'm screwed if I buy a new motherboard ...
As an Admin I refuse to deal with this long shit while IPv4 works just fine. I will NAT the crap out of it if I have to just to ignore IPv6 longer.
And I hope it's *real* issue which is preventing me from using IPv6 today, and not this kind of pettiness (or job security, or whatever psychology is behind the anti-IPv6 attitudes you encounter on Slashdot).
There's a large cultural difference. Many guys and girls on asia use web cafes. When they later get own connection theres not usually enough ip's. You're talking about billions of people. Not everyone is going to have their own ip address from that pool.
Which brings us back on topic: IPv6 ...
I have two IPv4 addresses, four computers, and 18,446,744,073,709,551,616 IPv6 addresses ... all that's missing is for the people who run servers to get their shit straight.
That's funny, because I just interviewed with Google last week for an SRE role, and they specifically wanted someone with hardcore Python and Java development experience, at the filesystem and kernel level. They're moving -everything- into those two language engines.
Java? Why?
1a. You haven't specified exactly what you'll be doing: if it's just office crap, anything will do
Except for that which doesn't work reliably, e.g. locks up or has graphics bugs. Or that which needs bizarre, non-free or bleeding-edge drivers.
but if you'll be running the GIMP, games, etc, you'll need higher-end hardware (both CPU and GPU).
I don't know how you use the GIMP, but I use it for plain 2D image editing, and used that way it just needs to render bitmaps. Nothing your web browser doesn't want to do already.
The majority of reply-alls can be replaced by using mailing lists.
+1. The lack of real (archived, opt-in) mailing lists is part of what drives useless reply-all usage. Let workers who are interested in topic Foo look at the archives for the Foo mailing list, decide if they like it, and sign up if they do.
At my workplace we're going even more retro. On Monday I'm going to sign up on the internal IRC network, and try to convince others to do the same. Our Enterprisey IM software simply doesn't support the way we work (when it works at all, that is).
Windows? More like C.
No. Like others have said, the only reason code breaks when it moves between architectures this similar is that the author did something obviously stupid, like casting between unrelated types.
An OS may have interfaces which encourage you to do stupid things, like the Unix ioctl() is-this-an-integer-or-pointer thing. Perhaps Windows has more of this?
well, *what*, exactly?
Plain text files with wikitext in them
OK, that *is* something I can actually understand. I've cursed the Mediawiki editor and version control stuff too, and longed for my trusty Emacs and Git (or CVS, even) setup.
There are several problems which need to be solved to accomplish that, though. Just to mention two that come to mind: you now need a local preview feature, for example. And you cannot expect every contributor to keep a local copy of e.g. Wikipedia-en so you need to partition it ...
In many teams at many companies, including the last two that I've worked at, internal wikis have replaced Word as the standard way of sharing documents. It's just so much easier than creating a Word doc, putting it up on some network share and then hoping that no one moves (or worse, copies!) the document. Everyone, regardless of whether they're using Windows, Mac OS X, Linux or their smartphone, can access it,
My company too. We have half a dozen different proprietary collaboration/knowledge database tools, but our plain Mediawiki beats them all. Easily.
But you miss the point of a workplace wiki somewhat -- it's not just to have a mixed bag of documents, but also to have the relationships between different pieces of information, and between people, and yourself. You get to reflect on the information and discuss it with your peers.
because it's all based on open standards.
Not really. Mediawiki is free software, but not an open standard.
Wikis still suck at collaborative work. The only good tool for collaborative work is a versioning system, preferably distributed. But most of the existing ones are designed for plain text in mind, not binaries or even computer-generated XML.
Good luck replacing the Mediawiki-based collaboration at my two workplaces with a Git repository containing ... well, *what*, exactly? The computer-generated XML you mentioned?
A wiki does a more than decent job of encouraging N people to update a set of shared information, but that's far from everything it does. Linking and categorizing the information, formatting it, providing search capabilities and so on is just as important.
Or at least so I think. Let Wikipedia BE not that easy to edit: someone that wants to edit will have to go through this small extra step.
And the step really is small. My experience is, people whine about not being able to write Mediawiki syntax up until the point they actually *try*. Then it turns out they can use it after all.
This is compounded by the lack of effective centralized management tools for SSH key access ...
It works both ways. Precisely because there *is no* centralized control of SSH keys, my workplace cannot implement crazy password aging schemes, or demand at least one digit in each passphrase. End result: I take much better care of my ssh keys than of my plain login passwords.
There's plenty of us here watching from afar with large grins on our face. Hello from FreeBSD, NetBSD, DragonflyBSD, and OpenBSD.
And some of us Linux people are happy that you are there. But it is not a good idea for you to gloat -- if Linux fails to keep the Unix legacy alive, your support base dwindles too.
Office has excellent interconnectivity. I don't think that any users really perceive MS Office as being a simple suite of unrelated programs.
I do. I'm aware that there's some weird embed-an-excel-table-in-a-word-document thing you can do (isn't that where OLE came from?) but I haven't seen it *used*. Not for a decade at least.
They use Powerpoint heavily at my workplace, and Word/Excel a lot too. The usage is very crude and primitive, though.
RedHat makes much of its money from companies that are moving to open-source because they are sick of the downsides of commercial software, which go from quality issues to vendor lock-in.
To me, quality issues and vendor lock-in sounds an awful lot like the downsides of RedHat (and the other for-profit Linux vendors I have seen).
We have at this point taken control of our own evolution in terms of intelligence and are developing it seperately from the law of the jungle, constructive rather than destructive evolution.
That does not make any sense at all, in several ways. (a) We have in no way taken control of our evolution; we don't even have control of our technology or economy. (b) the term "destructive evolution" is as meaningless as, say, "purple evolution".
1) characterise the traffic. could be from a range of ip, targeting specific ip, targeting protocol x or y or having some id characteristic you can 'lock' onto.
2) install filter for such traffic UPSTREAM of you, at the isp. blocking once its crossed the wan to your site is obviously useless
Not obvious to me. The cost of a single packet increases immensely at each step as it ...
hits some NAT/state tracking device of yours
hits an actual server
hits the IP stack of said server
hits userspace
makes userspace do heavy things like processing, database access
PETA will demand a monument to the billions of microbes that died when the pools dried up.
Seriously, there are rare and unusual ecosystems around hot springs. This incident might be a significant loss of biodiversity, unless hot springs are common in the area.
Minor quibbles: it's friggin blog post, not an "article." And it's not about "navigating an ocean of open source" in any sense that you might imagine. It's more along the lines of an About.com "Here are ten tips for using Open Source in your business" page.
Not even that, really. It's about integrating obscure open source components in the software you're writing. The article doesn't make sense if you try to apply it to running a stock Linux server or desktop.
Question: If Canonical announced tomorrow "We are going broke, either we have the Amazon search or we close our doors" which would you choose? Frankly most of the improvements on usability on the desktop can be traced back to Canonical and like it or not if they go under there is nobody lining up to take their place.
IMO the Unix "desktop" was good enough for average users in 1992 or so, so I'd choose a world without Canonical. I don't quite understand what these usability features *are*, anyway. I have to use Windows at work, and see nothing remarkably usable there. Keymap switching is nice, but everything else is comparable with my plain X11 desktop.
Of course, now someone will name me "part of the problem", mutter things about "the year of the Linux desktop" and so on ...
Actually one could make the argument that Java is worse, since at least C++ voodoo can allow a highly trained programmer to accomplish some really cool and unusual things.
Cool and unusual things are *not* something to strive for, and it's not what C++ is for.
More on topic, C++ at least doesn't have the "everything is a class and each class is one file" paradigm Java used last time I checked. I imagine it's slightly harder to work with Java using a normal text editor because of that. On the other hand, you should structure your code in a natural way, not write 50 kloc files just because you don't know how to navigate between files.
Of course that doesn't change the fact that at least in Java tiny changes in whitespace won't result in two valid but entirely different meanings...
Did you change the topic to Python now? I don't recall any such problem in C++.
I could see some thinking "recent" technology means "good", but my personal experience provides little evidence to correlate "new technology" with good. I could even make a case that it's a red flag.
Yes. An euphemism for "this software used to be Joe's personal playground until he quit" or "all the developers are fresh from school and do what their teacher told them to".
On the other hand an organization can easily be too backwards, too.
FWIW Anyone using X over a network for any kind of serious remote management has rocks in their head. It is a horribly inefficient protocol because of it's age, compared to modern protocols such as VNC and NX.
X over ssh works very well for me. If it's horribly inefficient like you say, it doesn't show on the 100Mbit networks where I use it all day long. But then I use old, properly written applications, without bling and dancing hamsters.