The main useful thing about computers is the layers of abstraction. Kinda like GUI keeps you away from the CLI, the CLI keeps you away from having to hardcode your programs to do your tasks in C or whatever, while C is there to keep you from coding in ASM which is just a level of abstraction over machine language, which is just a level of abstraction over opening and closing some electic sqitches, which is just a mechanisation of something you can represent on paper with truth tables.
The more levels of abstraction you heap onto the Von Neuman machine the more useful it becomes to a normal person and to society.
I found that setting the power switch to the 'off' position greatly reduces the amount of software greatly reduces the amount of "anoying dialog boxes that pop up at you.
I mean, I literally can't click an icon on my desktop without some "application" deciding to launch itself.
This is a real easy implementation that doesn't require PHP or dot-NET, and is completely open source, cross platform, and imune to the slashdot effect:
I wrote this for posting on a different forum. It was reject it. I know you'll eat it up though;-)
"It is vital to understand the importance of doing nothing. Slacking is a necessity; it is Yin to activity's Yang"
So said the comedian Simon Pegg in endorsement of last month's England's National Slacker Day (August 23rd). This current week (September 1-5) is Work-Life Balance week for Britons, centered around pretty much the same idea. It is no wonder that these ideas are popular in the UK, since British get the fewest vacations of any European nation.
While some view leisurely time off as a right, does slacking really mean happiness? Some lament that the slacker lifestyle isn't what it used to be. Simon Pegg himself broke the first and only rule in the Slacker Day handbook, by working: "there, perhaps, is the problem with slacking in a world which does not owe any of us a living"
Contrary to what most of us believe, the workaholics are not especially stressed, nor are they particularly unhappy -- at least no more than the rest of us.
Why is that? Because they like working.
A significant point is being made here. The work-life propagandists constantly see the office as the enemy and emphasize that more time has to be allowed for family and other interests.
But work is a life as well. We live in a hedonistic age, but our grandfathers, many of whom grew up among stern Victorian moralists, would have understood that work is what gives shape and purpose to our lives.
Most of us work because we have to make a living. But we also work because it gives us a role, status, a sense of achievement, and just occasionally the respect of our peers. And those are things we crave just as much as material goods.
So fess up. Are you a slacker or a workaholic? How do you achieve a healthy balance between success in the office and a happy life outside of it?
This is going to be the vaguest useful answer given...
Back in the day I needed to turn some XML files into HTML files by applying an XSL transformation. I also found out that the same process can be done for making PDF files using something called FO (or was it XO?) from the Apache people (not the Indians)
I made XSL files with PDF-generating tags and then ran 'em through this Java library. Since out backend was made in Java anyway it was a perfect fit.
It would be quite exciting if I was a geek and cared about this sort of thing.;-)
I readily acknowledge that my post should have been much different linguistically to better convey the point I wanted to make, you hightlight a part of what I was trying to get at.
If there is no reprecussions from ignoring a cease and decist (and I don't think there are in this case, 1st amendment and all) then how does it get labeled "civil disobedience"?
Civil Disobedience doesn't mean what you think it does. And why are they're petitioning "Dean Bob Gross" about a non-Academic matter?
I mean I care about election integrity as much as the next guy (ie: not too much) but if there's one thing that pisses me off more than rigged elections, it's hippie-wannabes who engage in "Civil Disobedience" and then act all surprised when there's a response. What's the penalty for ignoring a cease-and-decist anyway? I bet it's not as heavy as a buldozer, but it's the same kinda deal.
You people need to chill out just a little bit. Because:
The first time these machines are used, regardless of what the election is for and who wins, the results will be appealed by the losing party.
In court, the losing party's lawyers will easily demonstrate flaws in the system and show that there's no trail to do a recount.
The court will have no choice but to throw away the election results as void and have a paper election. Even if the results of this vote are identical to the ones electronically recorded, every oponent of the digital voting systems will have a legal precident to support his point.
Personally, I do not vote, but the idea of someone being able to tamper with election outcomes is sinister enough for most people to take note when the issue arises in the proper context.
Geeks bitching about it on a technical forum is not this context. But it will happen, and these things will go away.
they would have launched their own music download service months ago.
If they did, wouldn't you be blaming them for anti-competitive practices, and for using their desktop monopoly against the "good guys" like iTMS?
I can just imagine you, about 7 years ago, saying "If MSFT understood the web, they would have bundled a browser into their OS months ago. They suck, unlike Netscape. Netscape gets it"
Just imagine if every shiny new Dell came with a big BUY MUSIC icon right on the destop. And hey, Dell's got this great promotion: since you bought a PC from them, you get to download 5 songs from MicrosoftTunes for free! All of a sudden you've got a huge new market of people who just discovered buying music online - and hey it's just a buck a song. iTunes? Never heard of it.
Do you think that would get MS into legal trouble the way MSIE being embedded did?
This question is idiotic, and in fact given the kind of code I get to work with every day, I should like to punch you in the nuts for asking. But since I cannot do that, I am going to give you a real answer;-)
BTW, if you only read one part of my post, read the last paragraph.
For small, non critical projects the difference is indeed smaller because the complexity is much more manageable. Let's say you're building a house for your dog and your design forgot to specify which way the door should be facing. It doesn't really matter at which point you figure this out, because at any time you can pick the house up and turn it so the door faces the right way. Cost for error correction is exactly the same because the unit is stand-alone, the error is obvious, and easily correctable.
On the other hand, let's say you're building a pedestrian bridge between the Student Union and the Library, which are also being built at the same time. If during design you realize that "wait a minute, the library's entrance is facing away from the union, how's this bridge going to work", you can correct the issue fairly quickly. By the time the bridge and the library are built, your options for fixing the issue are very expensive. Which is why the bridge we had at Stony Brook wasn't all that convenient for about 20 years. It finally got torn down last year.
Analogies aren't even necessary here because there's plenty of real-world experience (mine!). Here's a quick example. Client does something and the server crashes. It is easy to detect this at the time of bug introduction, because "hey, chances are that the code I just made is the buggy one" so you know where to look. Five years later, when someone else is working on your code and something crashes because the clients started entering new kinds of trades or whatever, or because this guy is Indian and his name is longer than you allocated for, it's going to be a BITCH to find which part of the code does the crashing. Sure, the fix may take the same amount of time (just allocated 20 more chars and you'll be fine until aliens with REALLY long names land and start using our system) but bug identification took you a whole lot longer, and it cost you more.
The biggest incentive to detecting errors at the stage they are introduced is that the stages are developed one from another. In the above paragraph, I show that even an implementation error caught during maintenance stage is more expensive than one caught immediately - but they both stem from the fact that the spec and the design eroneously omited (for example) how long a name should be. It is a spec error all along. If the spec stated the required name length, the programmer would likely implement it correctly. If not, the QA testers would certainly detect it during testing stage.
You can argue with your instructor all you want, but in the real world not only is it more time consuming to find the error later on, it has more of a chance of affecting a customer - which can become an expense of its own easily enough.
The question makes no sense outside of context. If what you're doing is really important, you would:
Have cool air coming up from the floor into each machine (and it'd be freezing)
Have a diesel generator with at least a few day's worth of fuel, and contingency plans for obtaining more fuel. It should be feasible to run on generator indefinately in case of a major power outage.
Redundant data centers. Have data mirrored between them for complete redundancy in case of any disaster striking one of the locations.
Obviously I am being facetious. If you had a budget and the necessity to do something on that scale, you wouldn't be asking/. However, it would be worthwhile to specify the degree of importance and the budget of this project.
I have a copy of Streets 98 on a CD. When you need some flexibility as to what needs to be displayed, how to control your route (waypoints) etc, it is more useful than web-based technologies.
The downside is that, like a paper atlas, the CD is not kept up to date - and is not 5 years old. Though it has not been a problem.
There is one side-effect in iTunes that has come in very handy, giving it its one advantage over MusicMatch Jukebox that I generally use.
I have a Creative Nomad Jukebox, which in its artists list would list the same artist a few times. Why? Because if the ID3 tag said "50 Cent" vs. "50 Cent " vs. "50 Cent " (padded spaces on the right, if you are confused - oh and Slahsdot removed the spaces...) the Nomad thought of them as different artists. MusicMatch and others were "smart" enough to not pay attention to trailing spaces (were they written in fortran or something?) So there was no real easy way to track down artists with extra spaces.
In iTunes, on the artist list I will see "50 Cent" 3 times which makes it really easy to visually identify the ones that got extra spaces and fix those. Unfortunately once I see an artist name like that, I need to click into it, select all songs, then fix the Info. In MusicMatch you can right click on the artist itself and it will apply the changes to all selected songs.
Another useful bug...
When Nomad encounters missing/bad frames in the MP3 file, it breaks out into bit-farf. Winamp skips them over, so it's harder to detect broken songs. iTunes also breaks out into annoying barf-bit, which is terrible for your listening pleasure, but is useful to help you spot files that are gonna screw up the Nomad.
Market forces define who is "normal" and who isn't. You and your roomie are the Slashdot/Linux demographic. Most computer users are the "e-mail my kid" demographic.
Most home users (believe me, even if it doesn't match your personal experience) just want to see that website, send that e-mail, maybe listen to that song or play that game.
In a business environment they just want to write that document or spreadsheet and run that terminal connection to the 30 year old propriatary database machine that thinks it's year 1903.
Keep that in mind, that's what normal people do with their computers. They don't hack the kernel or mount file systems or whatever you and your roomate occupy your time with.
Now, in the above criteria, if these people bitch and complain about MS products, do you think they'd bitch more or less if they were using Linux instead?
I can name you several key criteria where Linux (or rather, Unix in general) is superior to Windows. Some of these criteria have to do with server aspects, which is not what we're talking about here. The rest of the features are really of interest to people whose "living" has to do with computers, but that's not most people.
And by the way, since Unix is the programmer's choice of the OS, why the fuck isn't there a real proper IDE for Unix? I would guess I can get JBuilder to run on a Linux machine, how about something that can do C and still have something like CodeInsight?
Yes yes Emacs, I know. I use Emacs. Not a real good IDE.
When you have some product for the general public there will always be dissatisfaction. However, how many of these people who are "frustrated with Windows" will move away to Linux and not be frustrated, immediatelly, and severely?
Microsoft is doing a great job in the field of usability by NORMAL PEOPLE. They've been listening to their customers the whole time.
That always bothered me. If Linux is so good, why would you ever need to boot into Windows? I don't ever hear Windows users say "damn, let me boot into Linux so I can do this"
I think that's a strong statement on where Linux is today as far as desktop is concerned.
Seriously.
The main useful thing about computers is the layers of abstraction. Kinda like GUI keeps you away from the CLI, the CLI keeps you away from having to hardcode your programs to do your tasks in C or whatever, while C is there to keep you from coding in ASM which is just a level of abstraction over machine language, which is just a level of abstraction over opening and closing some electic sqitches, which is just a mechanisation of something you can represent on paper with truth tables.
The more levels of abstraction you heap onto the Von Neuman machine the more useful it becomes to a normal person and to society.
Incorporate WHAT into WHAT and add WHAT with support for mp3 and/or WHAT?
Does anyone know if Apple's anti-competitive practices are behind my Creative Nomad Jukebox not turning on after I got it soaked?
It's ready for YOUR desktop, it's just not ready for THE desktop.
I found that setting the power switch to the 'off' position greatly reduces the amount of software greatly reduces the amount of "anoying dialog boxes that pop up at you.
I mean, I literally can't click an icon on my desktop without some "application" deciding to launch itself.
This is a real easy implementation that doesn't require PHP or dot-NET, and is completely open source, cross platform, and imune to the slashdot effect:
When it's HOT over there, DO NOT GO!
Meanwhile you can play tetris on your cell phone.
The name is FOP. I remember now. Of course a higher-rated comment by Mulligan tells you the same now.
So said the comedian Simon Pegg in endorsement of last month's England's National Slacker Day (August 23rd). This current week (September 1-5) is Work-Life Balance week for Britons, centered around pretty much the same idea. It is no wonder that these ideas are popular in the UK, since British get the fewest vacations of any European nation.
While some view leisurely time off as a right, does slacking really mean happiness? Some lament that the slacker lifestyle isn't what it used to be. Simon Pegg himself broke the first and only rule in the Slacker Day handbook, by working: "there, perhaps, is the problem with slacking in a world which does not owe any of us a living"
More to the point, Professor Michael Rose at University of Bath (he seems to do a lot of research in the field of work) found that working long hours does not lower one's quality of life - and indeed improves it. Not only are workaholics making more money and getting promotions - they are happier as well.
So fess up. Are you a slacker or a workaholic? How do you achieve a healthy balance between success in the office and a happy life outside of it?
This is going to be the vaguest useful answer given...
;-)
Back in the day I needed to turn some XML files into HTML files by applying an XSL transformation. I also found out that the same process can be done for making PDF files using something called FO (or was it XO?) from the Apache people (not the Indians)
I made XSL files with PDF-generating tags and then ran 'em through this Java library. Since out backend was made in Java anyway it was a perfect fit.
It would be quite exciting if I was a geek and cared about this sort of thing.
But maybe I should thank them for generating extra business for me to remove their program from clients' computers.
Heh, did you have to go to trade school for that?
I readily acknowledge that my post should have been much different linguistically to better convey the point I wanted to make, you hightlight a part of what I was trying to get at.
If there is no reprecussions from ignoring a cease and decist (and I don't think there are in this case, 1st amendment and all) then how does it get labeled "civil disobedience"?
Does someone really believe in electronic voter fraud in that case, and if so, why aren't they pursuing it?
Civil Disobedience doesn't mean what you think it does. And why are they're petitioning "Dean Bob Gross" about a non-Academic matter?
I mean I care about election integrity as much as the next guy (ie: not too much) but if there's one thing that pisses me off more than rigged elections, it's hippie-wannabes who engage in "Civil Disobedience" and then act all surprised when there's a response. What's the penalty for ignoring a cease-and-decist anyway? I bet it's not as heavy as a buldozer, but it's the same kinda deal.
You people need to chill out just a little bit. Because:
;-)
The first time these machines are used, regardless of what the election is for and who wins, the results will be appealed by the losing party.
In court, the losing party's lawyers will easily demonstrate flaws in the system and show that there's no trail to do a recount.
The court will have no choice but to throw away the election results as void and have a paper election. Even if the results of this vote are identical to the ones electronically recorded, every oponent of the digital voting systems will have a legal precident to support his point.
Personally, I do not vote, but the idea of someone being able to tamper with election outcomes is sinister enough for most people to take note when the issue arises in the proper context.
Geeks bitching about it on a technical forum is not this context. But it will happen, and these things will go away.
I promise. Relax
they would have launched their own music download service months ago.
If they did, wouldn't you be blaming them for anti-competitive practices, and for using their desktop monopoly against the "good guys" like iTMS?
I can just imagine you, about 7 years ago, saying "If MSFT understood the web, they would have bundled a browser into their OS months ago. They suck, unlike Netscape. Netscape gets it"
Just imagine if every shiny new Dell came with a big BUY MUSIC icon right on the destop. And hey, Dell's got this great promotion: since you bought a PC from them, you get to download 5 songs from MicrosoftTunes for free! All of a sudden you've got a huge new market of people who just discovered buying music online - and hey it's just a buck a song. iTunes? Never heard of it.
Do you think that would get MS into legal trouble the way MSIE being embedded did?
(*)Just F*cking Do It
:)
it's called 'Incremental Development'
This question is idiotic, and in fact given the kind of code I get to work with every day, I should like to punch you in the nuts for asking. But since I cannot do that, I am going to give you a real answer ;-)
BTW, if you only read one part of my post, read the last paragraph.
For small, non critical projects the difference is indeed smaller because the complexity is much more manageable. Let's say you're building a house for your dog and your design forgot to specify which way the door should be facing. It doesn't really matter at which point you figure this out, because at any time you can pick the house up and turn it so the door faces the right way. Cost for error correction is exactly the same because the unit is stand-alone, the error is obvious, and easily correctable.
On the other hand, let's say you're building a pedestrian bridge between the Student Union and the Library, which are also being built at the same time. If during design you realize that "wait a minute, the library's entrance is facing away from the union, how's this bridge going to work", you can correct the issue fairly quickly. By the time the bridge and the library are built, your options for fixing the issue are very expensive. Which is why the bridge we had at Stony Brook wasn't all that convenient for about 20 years. It finally got torn down last year.
Analogies aren't even necessary here because there's plenty of real-world experience (mine!). Here's a quick example. Client does something and the server crashes. It is easy to detect this at the time of bug introduction, because "hey, chances are that the code I just made is the buggy one" so you know where to look. Five years later, when someone else is working on your code and something crashes because the clients started entering new kinds of trades or whatever, or because this guy is Indian and his name is longer than you allocated for, it's going to be a BITCH to find which part of the code does the crashing. Sure, the fix may take the same amount of time (just allocated 20 more chars and you'll be fine until aliens with REALLY long names land and start using our system) but bug identification took you a whole lot longer, and it cost you more.
The biggest incentive to detecting errors at the stage they are introduced is that the stages are developed one from another. In the above paragraph, I show that even an implementation error caught during maintenance stage is more expensive than one caught immediately - but they both stem from the fact that the spec and the design eroneously omited (for example) how long a name should be. It is a spec error all along. If the spec stated the required name length, the programmer would likely implement it correctly. If not, the QA testers would certainly detect it during testing stage.
You can argue with your instructor all you want, but in the real world not only is it more time consuming to find the error later on, it has more of a chance of affecting a customer - which can become an expense of its own easily enough.
Have cool air coming up from the floor into each machine (and it'd be freezing)
Have a diesel generator with at least a few day's worth of fuel, and contingency plans for obtaining more fuel. It should be feasible to run on generator indefinately in case of a major power outage.
Redundant data centers. Have data mirrored between them for complete redundancy in case of any disaster striking one of the locations.
/. However, it would be worthwhile to specify the degree of importance and the budget of this project.
Obviously I am being facetious. If you had a budget and the necessity to do something on that scale, you wouldn't be asking
I have a copy of Streets 98 on a CD. When you need some flexibility as to what needs to be displayed, how to control your route (waypoints) etc, it is more useful than web-based technologies.
The downside is that, like a paper atlas, the CD is not kept up to date - and is not 5 years old. Though it has not been a problem.
There is one side-effect in iTunes that has come in very handy, giving it its one advantage over MusicMatch Jukebox that I generally use.
I have a Creative Nomad Jukebox, which in its artists list would list the same artist a few times. Why? Because if the ID3 tag said "50 Cent" vs. "50 Cent " vs. "50 Cent " (padded spaces on the right, if you are confused - oh and Slahsdot removed the spaces...) the Nomad thought of them as different artists. MusicMatch and others were "smart" enough to not pay attention to trailing spaces (were they written in fortran or something?) So there was no real easy way to track down artists with extra spaces.
In iTunes, on the artist list I will see "50 Cent" 3 times which makes it really easy to visually identify the ones that got extra spaces and fix those. Unfortunately once I see an artist name like that, I need to click into it, select all songs, then fix the Info. In MusicMatch you can right click on the artist itself and it will apply the changes to all selected songs.
Another useful bug...
When Nomad encounters missing/bad frames in the MP3 file, it breaks out into bit-farf. Winamp skips them over, so it's harder to detect broken songs. iTunes also breaks out into annoying barf-bit, which is terrible for your listening pleasure, but is useful to help you spot files that are gonna screw up the Nomad.
Exactly. It GETS MOUNTED. Passive voice. Not "YOU MOUNT IT"...
You try linux because "hey it's not MS" and "oh yeah I can hax0r the kern4l" , not because of the user experience.
Or, at least, I hope not.
Market forces define who is "normal" and who isn't. You and your roomie are the Slashdot/Linux demographic. Most computer users are the "e-mail my kid" demographic.
Most home users (believe me, even if it doesn't match your personal experience) just want to see that website, send that e-mail, maybe listen to that song or play that game.
In a business environment they just want to write that document or spreadsheet and run that terminal connection to the 30 year old propriatary database machine that thinks it's year 1903.
Keep that in mind, that's what normal people do with their computers. They don't hack the kernel or mount file systems or whatever you and your roomate occupy your time with.
Now, in the above criteria, if these people bitch and complain about MS products, do you think they'd bitch more or less if they were using Linux instead?
I can name you several key criteria where Linux (or rather, Unix in general) is superior to Windows. Some of these criteria have to do with server aspects, which is not what we're talking about here. The rest of the features are really of interest to people whose "living" has to do with computers, but that's not most people.
And by the way, since Unix is the programmer's choice of the OS, why the fuck isn't there a real proper IDE for Unix? I would guess I can get JBuilder to run on a Linux machine, how about something that can do C and still have something like CodeInsight?
Yes yes Emacs, I know. I use Emacs. Not a real good IDE.
Not really..
When you have some product for the general public there will always be dissatisfaction. However, how many of these people who are "frustrated with Windows" will move away to Linux and not be frustrated, immediatelly, and severely?
Microsoft is doing a great job in the field of usability by NORMAL PEOPLE. They've been listening to their customers the whole time.
Yes yes, you like grep better. I know.
Exactly. "Most of your time in the linux boot"
That always bothered me. If Linux is so good, why would you ever need to boot into Windows? I don't ever hear Windows users say "damn, let me boot into Linux so I can do this"
I think that's a strong statement on where Linux is today as far as desktop is concerned.