Back in '96 I discovered that my 150 MHz PowerPC 604 was about half the power of the original Cray 1, which cost millions of dollars.
My current MacBook Pro has a 1.83 GHz Intel Core Duo CPU. If that's not a supercomputer, I don't know what is.
I paid good money for these gigahertz dammit (or actually, my Mom did...) and I want them doing useful work for me, and not covering up for sloppy, inefficient coding.
My MacBook Pro had 512 megabytes when I bought it. That ought to be enough memory for anyone. But I found that running Parallels (a virtual machine that can host Windows or Linux) at the same time as FireFox was completely intolerable, even if I set Parallel's memory allocation to a minimum level.
Whenever I clicked from one window to the other, I'd get the Spinning Pizza of Death for a minute or so while the other task's memory was paged in. I had to add another gig of RAM before I could switch windows quickly.
That made this old coder wanna cry. My first Mac had only 512 kilobytes (kilo - not mega) but that was enough for me to write GUI applications with.
Mathematician Kurt Godel, known for Godel's incompleteness theorem and portrayed in the book Godel, Escher, Bach, died of starvation after refusing to eat because he thought his food was being poisoned.
Mental health laws are administered by the states, but I know specifically in California the Lanterman-Petris-Short act specifies the rules under which you can be judged incompetent, lose all your legal rights and have your affairs taken over by someone appointed by the government.
I expect it's like that in most states.
In many states, those judged mentally incompetent lose the right to vote. How that's considered constitutional is completely beyond me.
Whe you check into a psychiatric hospital in California (I've been in several) they give you a little yellow booklet that explains your rights under the LPS act. Curiously, though they can take away from you the right to manage your own affairs, you retain the right to wear your own clothes.
Back in the day, one could put a computer with magnetic core memory to sleep just by shutting the power off, and then start it up just by turning it on.
Magnetic core memory is nonvolatile. It has to be explicitly erased to change its value.
If 32 kb of magnetic core was good enough for the Apollo 11 lunar lander, then it's good enough for me!
My wife was visiting the Boston acquarium when an aquarium staff member called out the name of one of the penguins. The penguin came excitedly swimming, eager to show off for the visitors.
But wait, there's more: the aquarium had given the penguin a human name, but it seems that penguins know the names they give each other. The way penguins can find their ways back to their mates and parents amid hundreds or thousands of other penguins is that they call out each others' names.
But I am as confident as I am that the Sun will rise tomorrow that it will be safe from terrorists. After all, we have the children to think about.
If one is able to find any privacy or anonymity in this new Internet, it will be because of some undiscovered security hole, which will be quickly repaired, rather than any kind of conscious design decision. Probably one reason they are accepting proposals before rolling it out is to avoid the sort of accidental security holes that enable pr0n, peer-to-peer filesharing and left-wing political activism.
Microsoft, a leading contributor both to this nation's technology base and to the campaign coffers of its leaders, will embrace this new technology and extend it in such a way that the development and dissemination of Open Source software will be, if not mathematically and physically impossible, at least as difficult as factoring a 2048-bit public key.
Imagine, if you will, Trusted Computing implemented at the router level, in such a way that any packets that go farther than one hop are certified not only to support protocols whose patent licenses are fully paid-up and on file with the legal department in Redmond, but whose content is compliant with the Windows standard. The faintest whisp of a Public License, GNU or otherwise, will result in the dropping not only of the individual packet, not only in the cancellation of the entire file transmission, but, within microseconds, the physical location of the offending server. The identities of its rogue administrators will be fetched instantly from the database maintained by the Homeland Security Department. (You will have to submit fingerprints and DNA samples to obtain a Windows server license, as after all, Internet servers can be used to disseminate explosives recipes or the formulas for nerve gases.) The supercomputers that constantly monitor the cameras mounted on every lampost in the United States of (God Bless It!) America will be ordered to recognize the criminals' faces, and when they are spotted trying to flee to the Amazon jungle, orbiting lasers will vaporize their bodies, leaving nary but a whisp of smoke.
When a close family friend tries to comfort one of the grieving mothers for the loss of her son, she will desperately proclaim "No, I have no children! You must have mistaken me for someone else. Please leave me alone!" before she scurries rapidly away.
National firewalls such as those employed by The People's Republic of China are expensive and difficult to maintain. They are notoriously leaky, and easy to circumvent by anyone determined enough to find out how. But worse, they impede the economic potential of emerging economies such as China, which necessarily bottleneck technical data and eCommerce in order to have a single chokepoint for the Four Horsemen of the Infocalypse (Taiwan, Tibet, Hong Kong and Pornography).
Imagine, if you will, the potential of our New Internet: not only by technical design, but by international treaty (enforced by the threat of military intervention on the part of the UN Security Council), each nation will have a national firewall which is as transparent to the air to fully-licensed Windows Media Video files of Barney the Dinosaur and paid-up Wal-Mart orders, yet absolutely impenetrable to content not sanctioned by Homeland Security, the Republican Party, the 700 Club and the Boy Scouts.
I, for one, am weary of our present Internet, cesspool that it is of moral depravity and copyright infringement. I long for the days of yore, when men were men, women wore hoopskirts, and racial minorities were separate but equal. And so, I raise my right hand and shout with an enthusiastic "Heil!":
This work is licensed under the Creative Commons Attribution-NoDerivs License. To view a copy of this license, visit http://creativecommons.org/licenses/by-nd/2.5/ or send a letter to Creative Commons, 559 Nathan Abbott Way, Stanford, California 94305, USA.
Onyx Technology's homepage says pretty clearly "QC and Spotlight are trademarks of Onyx Technology."
I think Onyx has a pretty good argument to get an injunction to put a stop to any "Spotlight" feature of Mac OS X.
What's really odd is that Onyx' Spotlight is one of the best Mac OS developer tools around. It's like Boundschecker or Purify, but for the Mac: it validates memory accesses and finds leaks, among a lot of other things.
I bought my license back in 2000. Best investment I ever made in a development tool: I am able to find bugs I never would have found otherwise, and quickly too!
Maybe Apple figured they could steal the trademark because Spotlight only works on OS 9, because it works by editing the binaries of Code Fragment Manager executables.
If I were Onyx Technology, I'd start looking for an intellectual property attorney willing to take work on spec. If nothing else, they could win a big enough settlement to fund development of an OS X version.
How is it that Adobe makes Acrobat for Mac OS, which runs on PowerPC, but the Acrobat for Linux is only available for x86?
My Linux box is a Macintosh, thank you very much - Debian Sarge for PowerPC, running on a 1996 Power Macintosh 8500. It was too slow to run Mac OS X, but Linux works great on it.
I'll be starting paid advertising Monday evening or so, once my adsense check clears. But I'm tapped out today, so I use what opportunities are available to advertise for free.
C'mon, link whoring at slashdot isn't spamming. Everybody does it. It's even respectable.
My plan is to place a new kuro5hin text ad each day this month, and over the next couple weeks to get all my articles into Bonita's new XHTML/CSS design. I'm working on The Valley is a Harsh Mistress as I write this.
If I can somehow manage to draw more revenue from my website than I spend from advertising, I'll be reinvesting the proceeds back into promoting GoingWare's Bag of Programming Tricks, and later, once I get my first book review posted, Recommended Reading.
It's all part of my secret plan to get out of programming altogether and go to music school.
Those recordings are ten years old though. I've come a long way since then. It's just a matter of getting the money for the equipment, and the time, to record my latest work, but I expect there will be new music there by the end of summer.
Idiotic management and greedy venture capital will beat hard work and genius every time in the struggle to determine which company will succeed and which are doomed to fail.
Who will be next, to take the hopes and dreams of their employees and investors down with them?
I mentioned two companies that were still alive, but on the ropes at the time I wrote the essay - Be, Inc. and Working Software. Now both are gone, with not even a domain name to mark their graves anymore.
Most security holes aren't simple dumbshit design flaws like the ebay redirector, but programming errors like the failure to check boundary conditions.
Did you read the review of the book at the ACCU? I learned about it because I might get some contract work writing web applications, and wanted to brush up.
I posted the book because I felt it would be genuinely useful to the people reading this story.
If you're such a hero, why don't you log in under your real name, like I do.
... that doesn't mean my article is irrelevant. If you actually read it, you would see why it will likely help the web application programmers reading this story who wonder what eBay's problems might mean for their own businesses.
I haven't read it yet, but
it's review at the Association of C and C++ Users says it's good. It emphasizes the importance of validating any data received over the network, especially not to trust it.
His brother Bruce was a classman in Ricketts house at caltech. Bruce majored in chemistry, and had an interest in laser dyes. I'd visit Bruce at home during vacations, when their father was a visiting professor at Stanford, and got to know Michael that way.
You could tell early on he was going to go far. He had a microcomputer he had soldered together himself from components, and ran a prolog interpreter on. It was the first I ever saw prolog.
Funny little anecdote, I decided to try out photography after dropping out of Caltech, so Bruce lent me Michael's very expensive Canon A-1 SLR camera. It would accurately meter a thirty second exposure at night.
I'm sorry I don't have a link, but once I saw an ad for a stress testing tool that would cause exceptions to be randomly thrown from within a java program. The objective was to test whether you handled them all, most importantly whether you handled them all gracefully, or if your app would just fall over.
Basically, anywhere within a java program where an exception could legally be thrown, the tool would cause your program to throw one of the allowed exceptions.
Sure, java has checked exceptions, and you have to either catch and handle them, or propagate them, but requiring this doesn't guarantee you do it correctly. Also there are some exceptions, like running out of memory, that aren't checked or declared in a throws clause, that could happen just about any time.
Java being an interpreted language makes it possible to do this to a binary, which I don't think would be possible for a C++ executable, but I think some kind of source code preprocessor would allow such testing for C++ programs. Maybe a good open source project for someone with more time on their hands than I.
Yeah, those are affiliate links. I get a small commission if you buy the book after clicking them. It's part of my effort to stop working for The Man. I'm not proud.
The first thing Lakein says to do is to write down your goals. First your goals for your entire life, then your goals for the next five years, and then what your goals would be if you knew you only had six months to live.
Then he explains how to prioritize the activities and tasks you spend time on each day based on how they advance you towards these goals. Any activities that don't advance you to your own goals for your own life are to be considered low priority, and unless you have a lot of spare time, not performed at all.
Now for the reason your boss doesn't want you to read this time management book: Lakein seems pretty businesslike throughout most of the book, but in discussing how activities should advance one's goals, he comes right out and explicitly says that if your job isn't helping you to achieve your goals, then you should quit it and get a better one.
Works for me. I'm still working as a software consultant, but that's just a means to an end. A goal I'm working towards, presently by spending two hours a day practicing on my piano, is to quit working altogether and to go back to school to major in musical composition. I want to be a composer someday.
Well, I am already am, I guess. Here are some MP3s of my playing my own piano compositions:
My current MacBook Pro has a 1.83 GHz Intel Core Duo CPU. If that's not a supercomputer, I don't know what is.
I paid good money for these gigahertz dammit (or actually, my Mom did...) and I want them doing useful work for me, and not covering up for sloppy, inefficient coding.
Whenever I clicked from one window to the other, I'd get the Spinning Pizza of Death for a minute or so while the other task's memory was paged in. I had to add another gig of RAM before I could switch windows quickly.
That made this old coder wanna cry. My first Mac had only 512 kilobytes (kilo - not mega) but that was enough for me to write GUI applications with.
Kids these days don't know how to write code.
I expect it's like that in most states.
In many states, those judged mentally incompetent lose the right to vote. How that's considered constitutional is completely beyond me.
Whe you check into a psychiatric hospital in California (I've been in several) they give you a little yellow booklet that explains your rights under the LPS act. Curiously, though they can take away from you the right to manage your own affairs, you retain the right to wear your own clothes.
Magnetic core memory is nonvolatile. It has to be explicitly erased to change its value.
If 32 kb of magnetic core was good enough for the Apollo 11 lunar lander, then it's good enough for me!
But wait, there's more: the aquarium had given the penguin a human name, but it seems that penguins know the names they give each other. The way penguins can find their ways back to their mates and parents amid hundreds or thousands of other penguins is that they call out each others' names.
Penguins are smart!
If one is able to find any privacy or anonymity in this new Internet, it will be because of some undiscovered security hole, which will be quickly repaired, rather than any kind of conscious design decision. Probably one reason they are accepting proposals before rolling it out is to avoid the sort of accidental security holes that enable pr0n, peer-to-peer filesharing and left-wing political activism.
Microsoft, a leading contributor both to this nation's technology base and to the campaign coffers of its leaders, will embrace this new technology and extend it in such a way that the development and dissemination of Open Source software will be, if not mathematically and physically impossible, at least as difficult as factoring a 2048-bit public key.
Imagine, if you will, Trusted Computing implemented at the router level, in such a way that any packets that go farther than one hop are certified not only to support protocols whose patent licenses are fully paid-up and on file with the legal department in Redmond, but whose content is compliant with the Windows standard. The faintest whisp of a Public License, GNU or otherwise, will result in the dropping not only of the individual packet, not only in the cancellation of the entire file transmission, but, within microseconds, the physical location of the offending server. The identities of its rogue administrators will be fetched instantly from the database maintained by the Homeland Security Department. (You will have to submit fingerprints and DNA samples to obtain a Windows server license, as after all, Internet servers can be used to disseminate explosives recipes or the formulas for nerve gases.) The supercomputers that constantly monitor the cameras mounted on every lampost in the United States of (God Bless It!) America will be ordered to recognize the criminals' faces, and when they are spotted trying to flee to the Amazon jungle, orbiting lasers will vaporize their bodies, leaving nary but a whisp of smoke.
When a close family friend tries to comfort one of the grieving mothers for the loss of her son, she will desperately proclaim "No, I have no children! You must have mistaken me for someone else. Please leave me alone!" before she scurries rapidly away.
National firewalls such as those employed by The People's Republic of China are expensive and difficult to maintain. They are notoriously leaky, and easy to circumvent by anyone determined enough to find out how. But worse, they impede the economic potential of emerging economies such as China, which necessarily bottleneck technical data and eCommerce in order to have a single chokepoint for the Four Horsemen of the Infocalypse (Taiwan, Tibet, Hong Kong and Pornography).
Imagine, if you will, the potential of our New Internet: not only by technical design, but by international treaty (enforced by the threat of military intervention on the part of the UN Security Council), each nation will have a national firewall which is as transparent to the air to fully-licensed Windows Media Video files of Barney the Dinosaur and paid-up Wal-Mart orders, yet absolutely impenetrable to content not sanctioned by Homeland Security, the Republican Party, the 700 Club and the Boy Scouts.
I, for one, am weary of our present Internet, cesspool that it is of moral depravity and copyright infringement. I long for the days of yore, when men were men, women wore hoopskirts, and racial minorities were separate but equal. And so, I raise my right hand and shout with an enthusiastic "Heil!":
Copyright © 2005 Michael David Crawford.This work is licensed under the Creative Commons Attribution-NoDerivs License. To view a copy of this license, visit http://creativecommons.org/licenses/by-nd/2.5/ or send a letter to Creative Commons, 559 Nathan Abbott Way, Stanford, California 94305, USA.
I think Onyx has a pretty good argument to get an injunction to put a stop to any "Spotlight" feature of Mac OS X.
What's really odd is that Onyx' Spotlight is one of the best Mac OS developer tools around. It's like Boundschecker or Purify, but for the Mac: it validates memory accesses and finds leaks, among a lot of other things.
I bought my license back in 2000. Best investment I ever made in a development tool: I am able to find bugs I never would have found otherwise, and quickly too!
Maybe Apple figured they could steal the trademark because Spotlight only works on OS 9, because it works by editing the binaries of Code Fragment Manager executables.
If I were Onyx Technology, I'd start looking for an intellectual property attorney willing to take work on spec. If nothing else, they could win a big enough settlement to fund development of an OS X version.
My Linux box is a Macintosh, thank you very much - Debian Sarge for PowerPC, running on a 1996 Power Macintosh 8500. It was too slow to run Mac OS X, but Linux works great on it.
C'mon, link whoring at slashdot isn't spamming. Everybody does it. It's even respectable.
My plan is to place a new kuro5hin text ad each day this month, and over the next couple weeks to get all my articles into Bonita's new XHTML/CSS design. I'm working on The Valley is a Harsh Mistress as I write this.
If I can somehow manage to draw more revenue from my website than I spend from advertising, I'll be reinvesting the proceeds back into promoting GoingWare's Bag of Programming Tricks, and later, once I get my first book review posted, Recommended Reading.
It's all part of my secret plan to get out of programming altogether and go to music school.
Care to download my MP3s?
Those recordings are ten years old though. I've come a long way since then. It's just a matter of getting the money for the equipment, and the time, to record my latest work, but I expect there will be new music there by the end of summer.
Who will be next, to take the hopes and dreams of their employees and investors down with them?
- The Valley is a Harsh Mistress
It's at GoingWare's Bag of Programming Tricks.I mentioned two companies that were still alive, but on the ropes at the time I wrote the essay - Be, Inc. and Working Software. Now both are gone, with not even a domain name to mark their graves anymore.
Maybe an expensive lawsuit, and I expect only a lawsuit, will eBay and their partner-in-crime, PayPal, start paying attention to security.
I posted the book because I felt it would be genuinely useful to the people reading this story.
If you're such a hero, why don't you log in under your real name, like I do.
[ Buy at Powell's City of Books]
It is Free Documentation, under the GNU FDL.
It's at GoingWare's Bag of Programming Tricks.
You could tell early on he was going to go far. He had a microcomputer he had soldered together himself from components, and ran a prolog interpreter on. It was the first I ever saw prolog.
Funny little anecdote, I decided to try out photography after dropping out of Caltech, so Bruce lent me Michael's very expensive Canon A-1 SLR camera. It would accurately meter a thirty second exposure at night.
The photos on this page of my article Living with Schizoaffective Disorder were taken with Michael Tiemann's camera.
I've lost touch with them over the years though.
- Shipping a successful product
- Raising venture capital
- A successful IPO
Learn why in The Valley is a Harsh Mistress at GoingWare's Bag of Programming Tricks.-- Mike
Basically, anywhere within a java program where an exception could legally be thrown, the tool would cause your program to throw one of the allowed exceptions.
Sure, java has checked exceptions, and you have to either catch and handle them, or propagate them, but requiring this doesn't guarantee you do it correctly. Also there are some exceptions, like running out of memory, that aren't checked or declared in a throws clause, that could happen just about any time.
Java being an interpreted language makes it possible to do this to a binary, which I don't think would be possible for a C++ executable, but I think some kind of source code preprocessor would allow such testing for C++ programs. Maybe a good open source project for someone with more time on their hands than I.
- How to Get Control of Your Time and Your Life by Alan Lakein
- Buy at Amazon
- Buy at Powells
Yeah, those are affiliate links. I get a small commission if you buy the book after clicking them. It's part of my effort to stop working for The Man. I'm not proud.The first thing Lakein says to do is to write down your goals. First your goals for your entire life, then your goals for the next five years, and then what your goals would be if you knew you only had six months to live.
Then he explains how to prioritize the activities and tasks you spend time on each day based on how they advance you towards these goals. Any activities that don't advance you to your own goals for your own life are to be considered low priority, and unless you have a lot of spare time, not performed at all.
Now for the reason your boss doesn't want you to read this time management book: Lakein seems pretty businesslike throughout most of the book, but in discussing how activities should advance one's goals, he comes right out and explicitly says that if your job isn't helping you to achieve your goals, then you should quit it and get a better one.
Works for me. I'm still working as a software consultant, but that's just a means to an end. A goal I'm working towards, presently by spending two hours a day practicing on my piano, is to quit working altogether and to go back to school to major in musical composition. I want to be a composer someday.
Well, I am already am, I guess. Here are some MP3s of my playing my own piano compositions:
- Geometric Visions
I write more about my career change in this rough draft of my upcoming Kuro5hin article, I Have So Many Questions About Music.I also have more to say about Lakein's book in my k5 diary: Time Management.