To come up with a standard, or use an existing one, and write a couple of VBA macros or Add-in to import that file-format and export to it?
Haven't looked at Word's automation API recently, but I suspect you could get a lot of the data necessary that way and export accordingly. Perhaps I'm totally off the mark...
Looking at it now, it would probably be pretty cumbersome, but probably manageble. I'm just thinking, it would be nice if Microsoft would do it for us, but I suspect that the applications at some level probably expose an API making available most of the needed information, and that could be used to export the type of file people want.
Seriously, I don't know what the XBox has to do with this, but I think there's money to made in more "adult" (not that kind of adult...) arcades. I suppose Microsoft could use it as a marketing thing, have a room with some big TV's, nice stereo, some couches and some networked Halo action...
I'd love to see more "arcades" with a 21+ only after 10pm thing going on. Serve liquor, and have not only arcade games, but a room with a bunch of machines on a LAN with the "big" games loaded up.
I'd certainly frequent a place like this...
I know Minneapolis (downtown) has an arcade similar to this (no LAN room), and it's a blast. They've got plenty of arcade games, and liquor to go around, and the prices aren't half bad. $50.00 kept three people playing racing games and such for a couple of hours.
I haven't stuck around with them, they're just out there, and we get brought in when the tower of crap they've made begins to crumble...:)
All of your points are good, I'm just saying so many people I see using Lisp write piles of crazy poop...and they DO data morph, whether they should or not is irrelevant...
Scheme is a super-set of Lisp I thought...and I'm just saying they made it too customizable, never said it was or wasn't minimalist....you can do some powerful and some amazingly stupid stuff.
And I think it's easier for people to write bad LISP than bad C/C++ (though I could be wrong). It seems to me that LISP suffers from "data morph" issues more than any other language.
(5 256 "Item" "Description") represents your base data type.
Programmer A: "I don't need that first number..." (256 "Item" "Description")
Programmer B (who get's A's data): "What happened to that number?" (256 "Item" "Description" 5)
Programmer C (who get's B's data): "Strings? We don't need no stinking strings, we can look those up in a table! I can make that table global! Sweet!" (256 1 20 5)
Person hired 2 years later to fix a bug: "What the f*ck?!?"
It seems to me that Scheme and Lisp over-extended themselves, and are just too powerful/flexible for their own good, and that some "rules" should be in place...
And as the previous poster said... ((((()())))) Lisp will make you hate parenthesis.
The real issue we're "arguing" about here is where I'm stepping in with intentionality. I believe (as did the original poster) that Turing's argument was bigger than making a machine that could emulate the human brain (and sure, he was thinking about the TM being that emulator), but he was also making the argument that even if that did happen, people still wouldn't call it "intelligent."
As the original poster said, it was an ad absurdium idea. He wanted to show that even if a machine "acted" intelligently, we still wouldn't want to call it that. We're obsessed with "human" intelligence.
1912 (23 June): Birth, Paddington, London 1926-31: Sherborne School 1930: Death of friend Christopher Morcom 1931-34: Undergraduate at King's College, Cambridge University 1932-35: Quantum mechanics, probability, logic 1935: Elected fellow of King's College, Cambridge 1936: The Turing machine, computability, universal machine 1936-38: Princeton University. Ph.D. Logic, algebra, number theory 1938-39: Return to Cambridge. Introduced to German Enigma cipher machine 1939-40: The Bombe, machine for Enigma decryption 1939-42: Breaking of U-boat Enigma, saving battle of the Atlantic 1943-45: Chief Anglo-American crypto consultant. Electronic work. 1945: National Physical Laboratory, London 1946: Computer and software design leading the world. 1947-48: Programming, neural nets, and artificial intelligence 1948: Manchester University 1949: First serious mathematical use of a computer 1950: The Turing Test for machine intelligence 1951: Elected FRS. Non-linear theory of biological growth 1952: Arrested as a homosexual, loss of security clearance 1953-54: Unfinished work in biology and physics 1954 (7 June): Death (suicide) by cyanide poisoning, Wilmslow, Cheshire.
Think I'm still making it up?
TURING TEST != UTM
You go read about the Turing Test ok?!? Then respond again.
Turing wasn't looking for a UNIVERSALY INTELLIGENT MACHINE, he was looking at how machines could act intelligently. We're not talking about human in a computer, we're talking about can a computer act intelligently. If you think it's impossible, tell that to people that can be "fooled" by bots on IRC or MUDS for weeks or more.
Seriously, we're obsessed with the idea of human intelligence, which is often times an oxymoron, but that's what we want...
It's a hell of a lot easier to get a "programmer" to learn a scripting language, and make good use out it, than it is to take a "scripter" and have them learn a programming language and make good use of it.
I'll use the AutoCAD example:
AutoCAD has a built-in LISP interpreter. AutoCAD also has a C++ interface called ObjectARX.
Many "CAD Managers" have picked up LISP (become "scripters") over the years and have used that to automate repetative tasks in AutoCAD. Although useful and helpful, this LISP code is often a train wreck. Suddenly they will reach a place where they can't figure out how to move forward, or need something beyond this simple functionality.
You also have people that have "picked up" ObjectARX to write "C++" applications, that in reality are just LISP routines ported to C.
Then you have trained "programmers" that understand OOP and design. These individuals can step in and make use of the "true" power of the engine that AutoCAD has. These same programmers can write LISP or VB/VBA if they have a "quick and dirty" or need a "proof of concept" app. However, you'll never have the other guys comming out with a real robust add-on like the "programmers" can.
It's not that it's "descrimination," the issue is that people trained in CS are able to choose the right tool for the job, not "fumble around until they figure it out." This has unfortunately become the stigma for "scripters", because scripting is a lot easier to pick up than real software development methods, and as such you have people that may not really understand what they're doing performing the task.
The language or programming paradigm in use doesn't determine the rules of compliance, nor does whether the GPL'd code has been modified. The situation is no different than the one where your code depends on static or dynamic linking of a GPL'd library, say GNU readline. Your code, in order to operate, must be combined with the GPL'd code, forming a new combined work, which under GPL section 2(b) must be distributed under the terms of the GPL and only the GPL. If the author of the other code had chosen to release his JAR under the Lesser GPL, your contribution to the combined work could be released under any license of your choosing, but by releasing under GPL he or she chose to invoke the principle of "share and share alike.""
Based upon this, wouldn't any software linking against libraries (assuming they GPL-ed) on a system be required to be GPL-ed? Seems like it would be difficult to write any software that didn't need to be GPL-ed if you were doing it on a Linux system.
This is about engineers, but might be a good taste.
I was also thinking that perhaps placing some web-cams in a computer lab around the deadline for large projects would be interesting. In my software engineering courses, the groups of students working together going back and forth is a great example of what software development ends up being like.
Seriously, people in STS programs should be taking this as a hint, more studies please!:)
It seems to me that something like this can only serve to hurt an already weak economy. Seems like a bad idea to ask people to pay more for online goods when people are already spending very little.
Of course, CS programs should be including at least a basic graphics course (3D Geometry, vectors, matricies, transforms, clipping, pipelines, etc...not Photoshop or Maya...though I've seen some good courses that have written shaders for Renderman, but I digress). What you learn in school shouldn't be what you'll do in the real world.
CS programs don't teach you C++, C, Pascal, Fortran, or even Java. They teach you concepts. Sure you may realize them in a language, but you're learning how to attack a problem. You learn how to manage projects, and a whole lot of other things, that aren't VB applications. You may be employed writting such applications, but your CS department didn't put you in that place. This is why CS departments most often don't care if they've got Visual Studio.TURKEY. It doesn't matter if they teach you the correct concepts.
Honestly, that object oriented design world that you're coming from is just now beginning to take hold in the gaming world. So often C++ was bashed for not being fast enough (and they were right, the compilers didn't do a good job), but only recently has component based design started to take hold. This is why companies are making money with physics engines (among others).
Gaming is a weird world. Games need art, more than they need code. I've found that art drives the technology. "We need this effect..." Well, that wasn't in the engine, so hopefully our well desgined engine doesn't make ti to hard to add that.
Unfortunately, it's a tough place to land a job. Everyone wants to work for a game company, and there are so many mediocre programmers out there. If you want to break in, write some code (it's really not hard), and learn how to write games. Don't sweat it, you may spend your first few weeks reading lots of documentation...you'll figure it out. Don't copy programs out of books, what do you learn? Take their application and make it better. Go code!
Well, so far design tools are primarily based around UML, which is useful and helpful, but certainly hasn't been the answer to the prayers of software engineers. eXtreme Progamming is more of a process model and not a design model.
I would say that visual languages have done a great deal for prototyping, the unfortunate fact being that those prototypes are seen an used, and development of a true solution forgotten. (The only reason i can come up with for the proliferation of VB applications)
Off-the-shelf components have not taken off, though the game development community seems to be one environement where this can occur quite succesfully. The key being cross-platform. So many "off-the-shelf" components are sold only as ActiveX controls. What does that get us? Those developers taking the time to write a robust physics engine are writing it in C/C++/etc and marketing to people who can use it on any major platform.
What have we gained as far as real usable helpful tools? Not much. We still type out our.h's and.cpp's. I have no idea why as I type a function declaration in a header (assuming it's not virtual) it isn't being added to a.cpp. Developers spend hours a day dealing with processes that could be greatly improved. Interfaces for handling complex code could be done. Don't get me wrong, there are some companies/people trying to do this, but it's really hard. It's what we should be trying to figure out.
We need to integrate our design tools with our solution creation tools. This goes above and beyond code generation, refactoring needs to be a major component.
Good designers can make do with just about anything, but we need to enable ourselves to do better. Unfortunately it costs money, and companies don't like to spend money on code tools.
I've always told the clerk, "no" when they ask for personal information that I don't want to give. Tell them to put their information in. You're not required.
It's humorous the first time you tell a clerk "no" when they've never heard it before. Sometimes they'll even have a manager come over. Just keep telling them they can't have the info.
If for some reason they insist on asking for the information, provide obviously false data:
Seymor Butts 123 Stickit Ave Floobybooby, IL 12345
(911) 911-9111
What are they going to do? Say it's not real information? Have them test out the phone number.
I remember when no one (ATI or Nvidia) supported linux at all, and the only drivers that were out there were the ones created by us freaks that were able to glean (convince a nice engineer to give us), or poke and prod the system to get.
The only reason ATI cards were better supported was because more people had them, so the hackers were obously trying to get them to work.
The companies could have given a rats ass that we were working on it.
My company, Fog Creek Software, has just released FogBUGZ 3.0, the latest version of our innovative system for managing the software development process. Check it out now!
I don't really see that as helping the issue of having problems with "leaky abstractions."
The issues really seems to be several fold:
1.) Our current abstractions are not good enough.
2.) Many code generation tools are subject to errors, deriving from the underlying implementation they are abstracting.
3.) People don't know the underlying structure, and depend upon the abstractions.
I think that this is over simplifying where the problems are. Our current abstractions are obviously limited by thier underlying impelementations. What we need are better base level tools, this means better object oriented programming languages, that aren't merely an abstraction of existing languages, because again they fall victim to resting on top of a faulty abstraction. What we also need is better documentation. I hate to say it, but often times example code looks like a train wreck.
Abstractions are important to computer science, if it were not for them, we wouldn't have any high level languages. Without those higher level languages, we wouldn't have complex applications. We need abstraction, it's the only way to handle complexity. Where does that leave us? What we need are tools designed from the ground up to be cross platform, object oriented, robust core data types, and useful error/exception handling.
It seems like he's talking about a lot of problems, but not presenting any solutions, other than his little advertisement at the bottom, which helps us abstract our development team, but little for the developers...how very constructive. Try again with some constructive criticism, not just criticism.
The issue isn't blocking pornography as far as I'm concerned. It's the blocking of information that has incorrectly been blocked by a filter.
Suppose there is someone without any other access to the internet at the library wishing to read up about possible birth control methods. If the word penis or vagina is in there, my best guess is that it will be blocked.
At the same time I don't really agree that you should force that person to look at those web sites in view of everyone.
Perhaps a solution would be to have several different sets of computers, several that are "kiddie safe," and others that are un-touched. I do agree with you that people shouldn't be looking at porn in the library, but who chooses the clasification is the problem. Of course lewd acts should be prosecuted...
I think the issue is beyond porn. Porn is easy for people to unite against, harder to identify.
Campaigns against general purpose MV's (motor vehicles) are the best way to control roadway property. You can instead sell a device that only goes to the places you allow, which no one can steer to another place. Then you allow the device to download new destinations from certain sites on the internet, store those sites in a format like MSWord.Doc format, and put in so many features that the user is perfectly happy to go only where they are told.
-- Until someone hacks the destination server and sends tons of "happy" people flying off the 1 (Pacific Coast Highway) into the sea.
I would first ask, do you find the App's slow, or the OS? I'm running on an 450MHz G4 with a Radeon graphics card (1GB of RAM). Prior to 10.2 I typically waited for the finder under several circumstances (sort by type), but otherwise the OS is very responsive.
The biggest problem I've found is unresponsive apps (IE). These often times seem to be the carbon applications that have been ported over to MacOS X. Having worked with both Cocoa and Carbon, I'm not sure if it's an issue of these apps still using some of the older (but supported) Carbon event messaging that tends to be much slower under MacOS X (because they have to wait their turn now instead of being able to monopolize the OS).
The old style of application loop was written like:
Of course now those applications are forced to wait in places they previously didn't have to.
New applications can attach event handlers to certain events, so that call back routines are fired only when certain events happen. Carbon application written in this manner tend to be more responsive (not being obnoxious like above).
Cocoa also uses the idea of receiving messages, if it doesn't need anything from the OS it doesn't ask, if something happens that it should handle, it does.
I think the real issue comes down to Apps. I've never found the OS to be particularly slow.
To come up with a standard, or use an existing one, and write a couple of VBA macros or Add-in to import that file-format and export to it?
Haven't looked at Word's automation API recently, but I suspect you could get a lot of the data necessary that way and export accordingly. Perhaps I'm totally off the mark...
Looking at it now, it would probably be pretty cumbersome, but probably manageble. I'm just thinking, it would be nice if Microsoft would do it for us, but I suspect that the applications at some level probably expose an API making available most of the needed information, and that could be used to export the type of file people want.
Seriously, I don't know what the XBox has to do with this, but I think there's money to made in more "adult" (not that kind of adult...) arcades. I suppose Microsoft could use it as a marketing thing, have a room with some big TV's, nice stereo, some couches and some networked Halo action...
I'd love to see more "arcades" with a 21+ only after 10pm thing going on. Serve liquor, and have not only arcade games, but a room with a bunch of machines on a LAN with the "big" games loaded up.
I'd certainly frequent a place like this...
I know Minneapolis (downtown) has an arcade similar to this (no LAN room), and it's a blast. They've got plenty of arcade games, and liquor to go around, and the prices aren't half bad. $50.00 kept three people playing racing games and such for a couple of hours.
I haven't stuck around with them, they're just out there, and we get brought in when the tower of crap they've made begins to crumble... :)
All of your points are good, I'm just saying so many people I see using Lisp write piles of crazy poop...and they DO data morph, whether they should or not is irrelevant...
Scheme is a super-set of Lisp I thought...and I'm just saying they made it too customizable, never said it was or wasn't minimalist....you can do some powerful and some amazingly stupid stuff.
And I think it's easier for people to write bad LISP than bad C/C++ (though I could be wrong). It seems to me that LISP suffers from "data morph" issues more than any other language.
(5 256 "Item" "Description") represents your base data type.
Programmer A:
"I don't need that first number..."
(256 "Item" "Description")
Programmer B (who get's A's data):
"What happened to that number?"
(256 "Item" "Description" 5)
Programmer C (who get's B's data):
"Strings? We don't need no stinking strings, we can look those up in a table! I can make that table global! Sweet!"
(256 1 20 5)
Person hired 2 years later to fix a bug:
"What the f*ck?!?"
It seems to me that Scheme and Lisp over-extended themselves, and are just too powerful/flexible for their own good, and that some "rules" should be in place...
And as the previous poster said...
((((()()))))
Lisp will make you hate parenthesis.
C
Got to thinking...
The real issue we're "arguing" about here is where I'm stepping in with intentionality. I believe (as did the original poster) that Turing's argument was bigger than making a machine that could emulate the human brain (and sure, he was thinking about the TM being that emulator), but he was also making the argument that even if that did happen, people still wouldn't call it "intelligent."
As the original poster said, it was an ad absurdium idea. He wanted to show that even if a machine "acted" intelligently, we still wouldn't want to call it that. We're obsessed with "human" intelligence.
That is what my comment was about.
BUT THAT IS STILL DIFFERENT THAN THE TURING TEST!
http://www.turing.org.uk/turing/
1912 (23 June): Birth, Paddington, London
1926-31: Sherborne School
1930: Death of friend Christopher Morcom
1931-34: Undergraduate at King's College, Cambridge University
1932-35: Quantum mechanics, probability, logic
1935: Elected fellow of King's College, Cambridge
1936: The Turing machine, computability, universal machine
1936-38: Princeton University. Ph.D. Logic, algebra, number theory
1938-39: Return to Cambridge. Introduced to German Enigma cipher machine
1939-40: The Bombe, machine for Enigma decryption
1939-42: Breaking of U-boat Enigma, saving battle of the Atlantic
1943-45: Chief Anglo-American crypto consultant. Electronic work.
1945: National Physical Laboratory, London
1946: Computer and software design leading the world.
1947-48: Programming, neural nets, and artificial intelligence
1948: Manchester University
1949: First serious mathematical use of a computer
1950: The Turing Test for machine intelligence
1951: Elected FRS. Non-linear theory of biological growth
1952: Arrested as a homosexual, loss of security clearance
1953-54: Unfinished work in biology and physics
1954 (7 June): Death (suicide) by cyanide poisoning, Wilmslow, Cheshire.
Think I'm still making it up?
TURING TEST != UTM
You go read about the Turing Test ok?!? Then respond again.
Yes, turing did invent the "Turing Machine", but he ALSO invented the "Turing Test". Totally different things...
"Turing Machine" - Universal computing device
"Turing Test" - Argument to show that most people even if a computer could act just like a human, people wouldn't say it was "intelligent."
*ding ding*
Turing wasn't looking for a UNIVERSALY INTELLIGENT MACHINE, he was looking at how machines could act intelligently. We're not talking about human in a computer, we're talking about can a computer act intelligently. If you think it's impossible, tell that to people that can be "fooled" by bots on IRC or MUDS for weeks or more.
Seriously, we're obsessed with the idea of human intelligence, which is often times an oxymoron, but that's what we want...
It's a hell of a lot easier to get a "programmer" to learn a scripting language, and make good use out it, than it is to take a "scripter" and have them learn a programming language and make good use of it.
I'll use the AutoCAD example:
AutoCAD has a built-in LISP interpreter. AutoCAD also has a C++ interface called ObjectARX.
Many "CAD Managers" have picked up LISP (become "scripters") over the years and have used that to automate repetative tasks in AutoCAD. Although useful and helpful, this LISP code is often a train wreck. Suddenly they will reach a place where they can't figure out how to move forward, or need something beyond this simple functionality.
You also have people that have "picked up" ObjectARX to write "C++" applications, that in reality are just LISP routines ported to C.
Then you have trained "programmers" that understand OOP and design. These individuals can step in and make use of the "true" power of the engine that AutoCAD has. These same programmers can write LISP or VB/VBA if they have a "quick and dirty" or need a "proof of concept" app. However, you'll never have the other guys comming out with a real robust add-on like the "programmers" can.
It's not that it's "descrimination," the issue is that people trained in CS are able to choose the right tool for the job, not "fumble around until they figure it out." This has unfortunately become the stigma for "scripters", because scripting is a lot easier to pick up than real software development methods, and as such you have people that may not really understand what they're doing performing the task.
C
"Eben:
The language or programming paradigm in use doesn't determine the rules of compliance, nor does whether the GPL'd code has been modified. The situation is no different than the one where your code depends on static or dynamic linking of a GPL'd library, say GNU readline. Your code, in order to operate, must be combined with the GPL'd code, forming a new combined work, which under GPL section 2(b) must be distributed under the terms of the GPL and only the GPL. If the author of the other code had chosen to release his JAR under the Lesser GPL, your contribution to the combined work could be released under any license of your choosing, but by releasing under GPL he or she chose to invoke the principle of "share and share alike.""
Based upon this, wouldn't any software linking against libraries (assuming they GPL-ed) on a system be required to be GPL-ed? Seems like it would be difficult to write any software that didn't need to be GPL-ed if you were doing it on a Linux system.
I'm just curious, trying to understand better.
Exactly, that kind of stuff would be funny/entertaining, but at the same time the kids in school would get a taste of the real world.
"What the f*ck does he mean by, "doesn't work."? Not load, not display, ah!"
http://www.pbs.org/wgbh/nova/bridge/
:)
This is about engineers, but might be a good taste.
I was also thinking that perhaps placing some web-cams in a computer lab around the deadline for large projects would be interesting. In my software engineering courses, the groups of students working together going back and forth is a great example of what software development ends up being like.
Seriously, people in STS programs should be taking this as a hint, more studies please!
> He's like the Robin Williams of print.
:)
Only less hairy.
It seems to me that something like this can only serve to hurt an already weak economy. Seems like a bad idea to ask people to pay more for online goods when people are already spending very little.
Just a thought.
Well said...
.TURKEY. It doesn't matter if they teach you the correct concepts.
Of course, CS programs should be including at least a basic graphics course (3D Geometry, vectors, matricies, transforms, clipping, pipelines, etc...not Photoshop or Maya...though I've seen some good courses that have written shaders for Renderman, but I digress). What you learn in school shouldn't be what you'll do in the real world.
CS programs don't teach you C++, C, Pascal, Fortran, or even Java. They teach you concepts. Sure you may realize them in a language, but you're learning how to attack a problem. You learn how to manage projects, and a whole lot of other things, that aren't VB applications. You may be employed writting such applications, but your CS department didn't put you in that place. This is why CS departments most often don't care if they've got Visual Studio
Honestly, that object oriented design world that you're coming from is just now beginning to take hold in the gaming world. So often C++ was bashed for not being fast enough (and they were right, the compilers didn't do a good job), but only recently has component based design started to take hold. This is why companies are making money with physics engines (among others).
Gaming is a weird world. Games need art, more than they need code. I've found that art drives the technology. "We need this effect..." Well, that wasn't in the engine, so hopefully our well desgined engine doesn't make ti to hard to add that.
Unfortunately, it's a tough place to land a job. Everyone wants to work for a game company, and there are so many mediocre programmers out there. If you want to break in, write some code (it's really not hard), and learn how to write games. Don't sweat it, you may spend your first few weeks reading lots of documentation...you'll figure it out. Don't copy programs out of books, what do you learn? Take their application and make it better. Go code!
Ok...
Done.
If BR's in there, I'm in!
Thanks.
Unfortunately there are so many out there that are really like this, unlike this poor soul who must surely just deal with them. :)
Well, so far design tools are primarily based around UML, which is useful and helpful, but certainly hasn't been the answer to the prayers of software engineers. eXtreme Progamming is more of a process model and not a design model.
.h's and .cpp's. I have no idea why as I type a function declaration in a header (assuming it's not virtual) it isn't being added to a .cpp. Developers spend hours a day dealing with processes that could be greatly improved. Interfaces for handling complex code could be done. Don't get me wrong, there are some companies/people trying to do this, but it's really hard. It's what we should be trying to figure out.
I would say that visual languages have done a great deal for prototyping, the unfortunate fact being that those prototypes are seen an used, and development of a true solution forgotten. (The only reason i can come up with for the proliferation of VB applications)
Off-the-shelf components have not taken off, though the game development community seems to be one environement where this can occur quite succesfully. The key being cross-platform. So many "off-the-shelf" components are sold only as ActiveX controls. What does that get us? Those developers taking the time to write a robust physics engine are writing it in C/C++/etc and marketing to people who can use it on any major platform.
What have we gained as far as real usable helpful tools? Not much. We still type out our
We need to integrate our design tools with our solution creation tools. This goes above and beyond code generation, refactoring needs to be a major component.
Good designers can make do with just about anything, but we need to enable ourselves to do better. Unfortunately it costs money, and companies don't like to spend money on code tools.
Cheers.
I've always told the clerk, "no" when they ask for personal information that I don't want to give. Tell them to put their information in. You're not required.
It's humorous the first time you tell a clerk "no" when they've never heard it before. Sometimes they'll even have a manager come over. Just keep telling them they can't have the info.
If for some reason they insist on asking for the information, provide obviously false data:
Seymor Butts
123 Stickit Ave
Floobybooby, IL 12345
(911) 911-9111
What are they going to do? Say it's not real information? Have them test out the phone number.
I remember when no one (ATI or Nvidia) supported linux at all, and the only drivers that were out there were the ones created by us freaks that were able to glean (convince a nice engineer to give us), or poke and prod the system to get.
The only reason ATI cards were better supported was because more people had them, so the hackers were obously trying to get them to work.
The companies could have given a rats ass that we were working on it.
C-out
My company, Fog Creek Software, has just released FogBUGZ 3.0, the latest version of our innovative system for managing the software development process. Check it out now!
I don't really see that as helping the issue of having problems with "leaky abstractions."
The issues really seems to be several fold:
1.) Our current abstractions are not good enough.
2.) Many code generation tools are subject to errors, deriving from the underlying implementation they are abstracting.
3.) People don't know the underlying structure, and depend upon the abstractions.
I think that this is over simplifying where the problems are. Our current abstractions are obviously limited by thier underlying impelementations. What we need are better base level tools, this means better object oriented programming languages, that aren't merely an abstraction of existing languages, because again they fall victim to resting on top of a faulty abstraction. What we also need is better documentation. I hate to say it, but often times example code looks like a train wreck.
Abstractions are important to computer science, if it were not for them, we wouldn't have any high level languages. Without those higher level languages, we wouldn't have complex applications. We need abstraction, it's the only way to handle complexity. Where does that leave us? What we need are tools designed from the ground up to be cross platform, object oriented, robust core data types, and useful error/exception handling.
It seems like he's talking about a lot of problems, but not presenting any solutions, other than his little advertisement at the bottom, which helps us abstract our development team, but little for the developers...how very constructive. Try again with some constructive criticism, not just criticism.
C-out
The issue isn't blocking pornography as far as I'm concerned. It's the blocking of information that has incorrectly been blocked by a filter.
Suppose there is someone without any other access to the internet at the library wishing to read up about possible birth control methods. If the word penis or vagina is in there, my best guess is that it will be blocked.
At the same time I don't really agree that you should force that person to look at those web sites in view of everyone.
Perhaps a solution would be to have several different sets of computers, several that are "kiddie safe," and others that are un-touched. I do agree with you that people shouldn't be looking at porn in the library, but who chooses the clasification is the problem. Of course lewd acts should be prosecuted...
I think the issue is beyond porn. Porn is easy for people to unite against, harder to identify.
Cheers.
The MSDN Site
Can't take credit for it, already posted by the Slashdot folk...Both the download and documentation download is present on this page.
Campaigns against general purpose MV's (motor vehicles) are the best way to control roadway property. You can instead sell a device that only goes to the places you allow, which no one can steer to another place. Then you allow the device to download new destinations from certain sites on the internet, store those sites in a format like MSWord .Doc format, and put in so many features that the user is perfectly happy to go only where they are told.
-- Until someone hacks the destination server and sends tons of "happy" people flying off the 1 (Pacific Coast Highway) into the sea.
I would first ask, do you find the App's slow, or the OS? I'm running on an 450MHz G4 with a Radeon graphics card (1GB of RAM). Prior to 10.2 I typically waited for the finder under several circumstances (sort by type), but otherwise the OS is very responsive.
The biggest problem I've found is unresponsive apps (IE). These often times seem to be the carbon applications that have been ported over to MacOS X. Having worked with both Cocoa and Carbon, I'm not sure if it's an issue of these apps still using some of the older (but supported) Carbon event messaging that tends to be much slower under MacOS X (because they have to wait their turn now instead of being able to monopolize the OS).
The old style of application loop was written like:
while(!done)
{
gimmeEventNowDamnit();
handleEvent();
giveOutAWeeCycleToEveryoneElse();
}
Of course now those applications are forced to wait in places they previously didn't have to.
New applications can attach event handlers to certain events, so that call back routines are fired only when certain events happen. Carbon application written in this manner tend to be more responsive (not being obnoxious like above).
Cocoa also uses the idea of receiving messages, if it doesn't need anything from the OS it doesn't ask, if something happens that it should handle, it does.
I think the real issue comes down to Apps. I've never found the OS to be particularly slow.
Cheers.