The original Amiga had a keyboard garage: the machine itself was raise a little off the desk, just enough for the keyboard to slide underneath it.
I loved every single thing about that computer. The Amiga 1200 was fine too. The Amiga 500 was great, but Commodore made their first big design snafu there - they put the Zorro expansion slot on the wrong side of the computer and upside down, so you couldn't use Amiga 1000 peripherals without also flipping them upside down.
(Still not as bad as the "PCMCIA" slot on the A600.)
Other things I miss: TUIs like Project Oberon and Symbolics Lisp. Hell, Lisp in general is now such a niche it's sad. "Real" Unix - lots of little programs that do one thing and do them well. cat -n considered harmful and all that.
Right. And how much money did Airbus save by not having to research everything that they learned by being a contractor on the ISS? How much money did Airbus save by having all of the research NASA has done over the decades be in the public domain?
It's like people saying that SpaceShipOne cost one one-thousandth or whatever of one of the Apollo missions. It's very easy to cost a lot less when 90% of the research has been done for you by NASA and placed in the public domain.
Now, all that's going to happen is that programmers are going to write their own memcpy-like routines using a quicky for-loop or something. It'll be just as bug prone, and harder to detect via automated source code analysis.
According to one source, they've estimated that the hole is about 130 meters deep.
How deep would the hole need to be to provide a reasonable atmospheric pressure at the bottom? I realize it wouldn't be *breathable* atmosphere, but at least the pressure would be survivable.
Anyway, we did a big datacenter migration at my last company. I'm not going to name names, but it's a Fortune 100 company based in Austin, TX. The move was happening because we built our own building with our own datacenter.
As part of the technical staff (network engineering/security), I was given a tour of the new datacenter before it opened. My boss and assorted other folks were on the tour. My boss, by the way, was a huge...jerk.
The electrician showed us the Big Red Buttons by each of the exit doors. He also said that each of the Power Distribution Units (of which there were three) had a Big Red Button that would cut power to just the areas powered by that unit.
My boss said, not jokingly, "If you need to cut power in an emergency, see if you can figure out which PDU is involved and just cut that one, so we don't lose the whole datacenter."
I piped up: "If I'm getting 220 across my nipples, cut the whole damn room. I really don't care enough about the company to die. I can see my epitaph now: 'Here lies Dimwit. He died saving two-thirds of the datacenter.'"
I don't normally post to Slashdot anymore, but I just want to point out that Elisha Gray is my great, great, great grandfather. Not that I saw any of the money. Ah well. It's something to tell the kids.
They've been talking about having Objective-C++ in the GCC main branch for years now. There was even talk that 4.0 wouldn't ship without it. Now it's shipped without it and it's still "coming Real Soon Now". Any word on if it's coming any time soon (really)?
When I started up www.e-slashdot.org, over 100,00 people came and read my geek news. Then some lawyers from some Open Source Lab place got all pissy and sent me a letter. Once more a large corporation slams the little guy!
I was posting good news from independent sources. Heck, they should have paid me!
Interface vs implementation, shared libraries, etc
on
Abandoning Header Files?
·
· Score: 3, Insightful
Well, there's the obvious separation of interface from definition. And the problem of duplicate definitions - there's a reason why "extern" is a keyword.:)
Plus, header files define an interface, which is useful if you don't actually have the code (i.e. binary shared library). Moot point in your case, I think, but...
Plus it's just good programming style to have separate definitions and implementations. Easier to track down bugs.
While I'm not debating that privatization lowered the price considerably, don't forget that all the billions of dollars sunk into the space program by the public sector mostly paid for research. Not to disparage the SC team's amazing accomplishment, but most of the "hard" stuff was already paid for - by the public sector. Saying that "see the private sector did it for 1% the price, free markets for everyone!" is a bit disengenous to all the people who did a lot of researcht that these private projects are riding on.
I'm pretty much a democratic socialist. While Badnarik gave compelling arguments in this interview - for example: "How do I pay for my granma's medication?" "Do you have money?" "Yes, but what about the guy with the SUV who has more money than he knows what to do with?" "Well, would you hold him at gunpoint to take the money?" "No!" "But you want the government to..."
That's all well and good, and I can see the point behind it. But then there is the tragedy of the commons. For example, if there is a river that runs through my property, I don't have the right to dam it up and deny people downstream the use of that river, because that river is a common, shared resource.
Look at copyright: Copyright is (supposed to) expire, because there is no such thing as an idea in a vacuum. The idea came from the combined experiences and environment provided by society. Giving up exclusive control of a creation after a certain amount of time is how we pay back society.
Well, Grandma raised a good mother who raised a good daughter, who then went to college to get a better job. She is therefore contributing more to society, possibly creating more jobs, building a better economy, providing living history. Her contributions to society are immeasurable, even if they're not directly monetary.
The problem with Libertarianism is that it assumes we all exist in a vacuum. "It's my money, and society has no right to it unless I give it." If that's your philosophy, then you have no rights to the benefit of society. Note that I said society, not government.
The Electoral College, for those not familiar with the United States Presidental election system, is a particular group of people charged with electing the president.
The electors are charged with voting for the President - the President is elected by this group of people (much like the Holy Roman Emperor was elected by a select group of German/Italian nobles). The people technically vote for electors.
Electors are "pledged" to vote for who the people they represent voted for - but they aren't required. This (electors voting for someone other than the person the popular vote chose) has happened several times in the past, although it has never affected the outcome of the election.
Several reasons have been postulated for the Electoral College system. One, it's a check on the stupidity of the people - make sure a dicatorial demagogue isn't elected. Another reason was that the Founding Fathers didn't trust the communications of their time. For example, if, after the popular election, it was found out that the President-elect was a serial killer, the electors could change their vote.
I think the main reason I write so much stuff in Python and pretty much nothing in Java is simple: Open source and comprehensive standard library.
When I did have to write something in Java - well, better hope you have the right API. Oh, and what's the difference between the 3587324 different XML parsing packages? Oh and download Java Super Micro PDA Library! Only available for Solaris and Windows!
The promise of "write-once-run-anywhere" was pretty much dead. Not that I was even going for portability - I just wanted it to run on Linux. And I wanted to do it without having to download Beans, Java DynamicManagement, Java Metadata, ad nauseum.
Python, on the other hand, simply works. Sure, it doesn't have a standard GUI toolkit (although wxPython is pretty much the de facto standard now...), but it does everything I need it to do. With a clean, nice syntax, no less.
Oh, and I still don't get how Java doesn't let you write a freakin routine to get the permissions on a file without resorting to writing a C function. Sure, it's not "portable", but just do what Perl and Python have done - on platforms with no permissions, return a sane default value. Don't just NOT include the function at all...
Anyway, forgive my rant. Python - good standard library. Java - tons of confusing frameworks and platforms, etc, etc.
I understand that the article is more comparing the kernel implementations. On that point, I actually like the way Windows does a lot of things better - a stable driver API, for one thing.
As for me actually using Windows, well, here's the thing. I don't really care about price (up to a point), nor do I care about source-availability (for most things). I would gladly use Windows if I could do this:
for FOO in `cat iplist` ; do echo "ppp-$FOO IN A $FOO" >> foo.zone ; done
I realize that I could just install cygwin or SFU, but that doesn't change the fact that Windows was not designed with shell-scripting in mind. I need that sort of functionality (I run GNOME because Fedora installs it, but I do 99% of my work (including file management) from a terminal).
(As for Microsoft's much-touted "you can do anything from the command-line in 2003!" thing - I don't consider "dhcp -f ScriptFile" to be elegant or useful. It's one-off and icky. I am interested in the "object shell" concept from Longhorn, though.)
(As another aside - look at StepTalk (http://www.gnustep.org/) - that's functionality I'd like the more mainstream *nix desktops to support...)
If software had to live up to safety standards the same way physical products did, the authors of the software could be sued just like the makers of the physical products.
"But that's great!" you say. "Microsoft could be sued until they were just bits of blackened rubble!"
Yes, that would be wonderful.
Now, what about the floating-point exception handler bug in Linux? Well, looks like we'd have to sue Linus et al.
I'd be willing to bet that Microsoft would take a lot longer to reduce to rubble than Linus and his ragtag crew of happy software authors.
Even if you limit it only to software that's charged for, well, then, good bye RedHat. Ditto Mandrake. Bye SuSe. It's all over.
Basically, if the authors could be sued, then there would be no software industry.
I know the question was also asking why they couldn't be sued for allowing viruses in. Well, why can't Ford be sued for letting me drive my car on roads? There are *wrecks* on roads! What is Ford thinking??
The point of this whole rant is: Software is far, far to complex to be held to the same standards as physical products. Mankind has been making physical products for around 200,000 years now (if not more). We've been making software for 50. Let's wait until we have the same kind of experience making these products before we hold them to the same standard.
Io, which is an awesome, prototype-based scripting language that's super-easy to embed in C applications, and has an incredibly simple and consistent syntax.
REXX (Regina's just one implementation). REXX makes it incredibly easy to do system scripting, with powerful string-manipulation and I/O redirection.
Another one's ficl, which is basically an embedable Forth interpreter. (To all you young geeks out there - LEARN FORTH. You may never need to write a line of it ever in your life, but you'll learn a hell of a lot about how computers work. Trust me on this.)
I'm really curious as to where OpenVMS was on that list, especially given the statistical method used.
The main flaw with the method in this test - that they measured total attacks, not proportional attacks - should not be forgotten. Saying that there were zero successful attacks against FreeBSD means nothing if you have zero FreeBSD machines in your network.
Now, by that logic, I have a) never seen an OpenVMS machine successfully cracked in the last ten years and b) I doubt there are many there. I'd love to see the statistics...
The original Amiga had a keyboard garage: the machine itself was raise a little off the desk, just enough for the keyboard to slide underneath it.
I loved every single thing about that computer. The Amiga 1200 was fine too. The Amiga 500 was great, but Commodore made their first big design snafu there - they put the Zorro expansion slot on the wrong side of the computer and upside down, so you couldn't use Amiga 1000 peripherals without also flipping them upside down.
(Still not as bad as the "PCMCIA" slot on the A600.)
Other things I miss: TUIs like Project Oberon and Symbolics Lisp. Hell, Lisp in general is now such a niche it's sad. "Real" Unix - lots of little programs that do one thing and do them well. cat -n considered harmful and all that.
Right. And how much money did Airbus save by not having to research everything that they learned by being a contractor on the ISS? How much money did Airbus save by having all of the research NASA has done over the decades be in the public domain?
It's like people saying that SpaceShipOne cost one one-thousandth or whatever of one of the Apollo missions. It's very easy to cost a lot less when 90% of the research has been done for you by NASA and placed in the public domain.
I would love a full-size laptop (13" screen or better) with an ARM chip. Long battery life, full size keyboard and display. It'd be great.
The only things I can find with ARM chips these days are tiny netbooks. The largest I've found is only 10".
Anyone know any "big" ARM laptops?
Now, all that's going to happen is that programmers are going to write their own memcpy-like routines using a quicky for-loop or something. It'll be just as bug prone, and harder to detect via automated source code analysis.
Elisha Gray was my great, great, great grandfather.
That is all.
...have my reincarnated soul when you take it from my warm, newly-living hands!
According to one source, they've estimated that the hole is about 130 meters deep.
How deep would the hole need to be to provide a reasonable atmospheric pressure at the bottom? I realize it wouldn't be *breathable* atmosphere, but at least the pressure would be survivable.
Any ideas?
I meant Fortune 500 then. Or Fortune 450.
Wow, I haven't posted in forever.
Anyway, we did a big datacenter migration at my last company. I'm not going to name names, but it's a Fortune 100 company based in Austin, TX. The move was happening because we built our own building with our own datacenter.
As part of the technical staff (network engineering/security), I was given a tour of the new datacenter before it opened. My boss and assorted other folks were on the tour. My boss, by the way, was a huge...jerk.
The electrician showed us the Big Red Buttons by each of the exit doors. He also said that each of the Power Distribution Units (of which there were three) had a Big Red Button that would cut power to just the areas powered by that unit.
My boss said, not jokingly, "If you need to cut power in an emergency, see if you can figure out which PDU is involved and just cut that one, so we don't lose the whole datacenter."
I piped up: "If I'm getting 220 across my nipples, cut the whole damn room. I really don't care enough about the company to die. I can see my epitaph now: 'Here lies Dimwit. He died saving two-thirds of the datacenter.'"
Man, if looks could kill.
Lives aren't so valuable that they are automatically more valuable than everything else.
Yes, yes they are.
You are a horrible human being.
I don't normally post to Slashdot anymore, but I just want to point out that Elisha Gray is my great, great, great grandfather. Not that I saw any of the money. Ah well. It's something to tell the kids.
They have a 64-bit version for Solaris and SPARC.
And they have a 32-bit version for Solaris on Intel.
I'm positive there are more Linux 64-bit users than 32-bit Intel Solaris users. Seriously. So, I don't get it.
They've been talking about having Objective-C++ in the GCC main branch for years now. There was even talk that 4.0 wouldn't ship without it. Now it's shipped without it and it's still "coming Real Soon Now". Any word on if it's coming any time soon (really)?
When I started up www.e-slashdot.org, over 100,00 people came and read my geek news. Then some lawyers from some Open Source Lab place got all pissy and sent me a letter. Once more a large corporation slams the little guy!
I was posting good news from independent sources. Heck, they should have paid me!
Well, there's the obvious separation of interface from definition. And the problem of duplicate definitions - there's a reason why "extern" is a keyword. :)
Plus, header files define an interface, which is useful if you don't actually have the code (i.e. binary shared library). Moot point in your case, I think, but...
Plus it's just good programming style to have separate definitions and implementations. Easier to track down bugs.
While I'm not debating that privatization lowered the price considerably, don't forget that all the billions of dollars sunk into the space program by the public sector mostly paid for research. Not to disparage the SC team's amazing accomplishment, but most of the "hard" stuff was already paid for - by the public sector. Saying that "see the private sector did it for 1% the price, free markets for everyone!" is a bit disengenous to all the people who did a lot of researcht that these private projects are riding on.
I'm pretty much a democratic socialist. While Badnarik gave compelling arguments in this interview - for example: "How do I pay for my granma's medication?" "Do you have money?" "Yes, but what about the guy with the SUV who has more money than he knows what to do with?" "Well, would you hold him at gunpoint to take the money?" "No!" "But you want the government to..."
That's all well and good, and I can see the point behind it. But then there is the tragedy of the commons. For example, if there is a river that runs through my property, I don't have the right to dam it up and deny people downstream the use of that river, because that river is a common, shared resource.
Look at copyright: Copyright is (supposed to) expire, because there is no such thing as an idea in a vacuum. The idea came from the combined experiences and environment provided by society. Giving up exclusive control of a creation after a certain amount of time is how we pay back society.
Well, Grandma raised a good mother who raised a good daughter, who then went to college to get a better job. She is therefore contributing more to society, possibly creating more jobs, building a better economy, providing living history. Her contributions to society are immeasurable, even if they're not directly monetary.
The problem with Libertarianism is that it assumes we all exist in a vacuum. "It's my money, and society has no right to it unless I give it." If that's your philosophy, then you have no rights to the benefit of society. Note that I said society, not government.
I mean, c'mon, seriously, how much power does it really take to run Zork?
The Electoral College, for those not familiar with the United States Presidental election system, is a particular group of people charged with electing the president.
The electors are charged with voting for the President - the President is elected by this group of people (much like the Holy Roman Emperor was elected by a select group of German/Italian nobles). The people technically vote for electors.
Electors are "pledged" to vote for who the people they represent voted for - but they aren't required. This (electors voting for someone other than the person the popular vote chose) has happened several times in the past, although it has never affected the outcome of the election.
Several reasons have been postulated for the Electoral College system. One, it's a check on the stupidity of the people - make sure a dicatorial demagogue isn't elected. Another reason was that the Founding Fathers didn't trust the communications of their time. For example, if, after the popular election, it was found out that the President-elect was a serial killer, the electors could change their vote.
I think the main reason I write so much stuff in Python and pretty much nothing in Java is simple: Open source and comprehensive standard library.
When I did have to write something in Java - well, better hope you have the right API. Oh, and what's the difference between the 3587324 different XML parsing packages? Oh and download Java Super Micro PDA Library! Only available for Solaris and Windows!
The promise of "write-once-run-anywhere" was pretty much dead. Not that I was even going for portability - I just wanted it to run on Linux. And I wanted to do it without having to download Beans, Java DynamicManagement, Java Metadata, ad nauseum.
Python, on the other hand, simply works. Sure, it doesn't have a standard GUI toolkit (although wxPython is pretty much the de facto standard now...), but it does everything I need it to do. With a clean, nice syntax, no less.
Oh, and I still don't get how Java doesn't let you write a freakin routine to get the permissions on a file without resorting to writing a C function. Sure, it's not "portable", but just do what Perl and Python have done - on platforms with no permissions, return a sane default value. Don't just NOT include the function at all...
Anyway, forgive my rant. Python - good standard library. Java - tons of confusing frameworks and platforms, etc, etc.
I understand that the article is more comparing the kernel implementations. On that point, I actually like the way Windows does a lot of things better - a stable driver API, for one thing.
As for me actually using Windows, well, here's the thing. I don't really care about price (up to a point), nor do I care about source-availability (for most things). I would gladly use Windows if I could do this:
for FOO in `cat iplist` ; do echo "ppp-$FOO IN A $FOO" >> foo.zone ; done
I realize that I could just install cygwin or SFU, but that doesn't change the fact that Windows was not designed with shell-scripting in mind. I need that sort of functionality (I run GNOME because Fedora installs it, but I do 99% of my work (including file management) from a terminal).
(As for Microsoft's much-touted "you can do anything from the command-line in 2003!" thing - I don't consider "dhcp -f ScriptFile" to be elegant or useful. It's one-off and icky. I am interested in the "object shell" concept from Longhorn, though.)
(As another aside - look at StepTalk (http://www.gnustep.org/) - that's functionality I'd like the more mainstream *nix desktops to support...)
If software had to live up to safety standards the same way physical products did, the authors of the software could be sued just like the makers of the physical products.
"But that's great!" you say. "Microsoft could be sued until they were just bits of blackened rubble!"
Yes, that would be wonderful.
Now, what about the floating-point exception handler bug in Linux? Well, looks like we'd have to sue Linus et al.
I'd be willing to bet that Microsoft would take a lot longer to reduce to rubble than Linus and his ragtag crew of happy software authors.
Even if you limit it only to software that's charged for, well, then, good bye RedHat. Ditto Mandrake. Bye SuSe. It's all over.
Basically, if the authors could be sued, then there would be no software industry.
I know the question was also asking why they couldn't be sued for allowing viruses in. Well, why can't Ford be sued for letting me drive my car on roads? There are *wrecks* on roads! What is Ford thinking??
The point of this whole rant is: Software is far, far to complex to be held to the same standards as physical products. Mankind has been making physical products for around 200,000 years now (if not more). We've been making software for 50. Let's wait until we have the same kind of experience making these products before we hold them to the same standard.
Two languages missing are:
Io, which is an awesome, prototype-based scripting language that's super-easy to embed in C applications, and has an incredibly simple and consistent syntax.
REXX (Regina's just one implementation). REXX makes it incredibly easy to do system scripting, with powerful string-manipulation and I/O redirection.
Another one's ficl, which is basically an embedable Forth interpreter. (To all you young geeks out there - LEARN FORTH. You may never need to write a line of it ever in your life, but you'll learn a hell of a lot about how computers work. Trust me on this.)
No, it was Germany (you know, in Europe) which established a Gestapo with...well...the Gestapo.
(Sorry, mostly a joke, I swear...)
I'm really curious as to where OpenVMS was on that list, especially given the statistical method used.
:)
The main flaw with the method in this test - that they measured total attacks, not proportional attacks - should not be forgotten. Saying that there were zero successful attacks against FreeBSD means nothing if you have zero FreeBSD machines in your network.
Now, by that logic, I have a) never seen an OpenVMS machine successfully cracked in the last ten years and b) I doubt there are many there. I'd love to see the statistics...
Oh, and VMS and BSD are badass OSes.