Half of me says this is ridiculous, given that there is prior art for a universal representation of hierarchically structured data going back to, say, 1959.
The other half of me says that if we're lucky, this might kill off XML and encourage use of simpler data representations, including my personal favorite.
Thanks for the info - I'd mod it informative if I could.
And nobody who really needs Firewire for video is going to be using an iPod in that capacity anyway; that video would be too important (and probably too big) to transport with anything but an industrial-strength full-size portable hard drive.
But wouldn't it be cool if I could take a consumer-grade video camera and record straight to my iPod? One reason I don't do more home video is the annoying import-from-camera-tape-at-real-time step. I hope Steve is keeping that capability in mind for future video iPods - an iPod camera connector would be something I'd pay extra for.
... it's big-time sad. Google around for "USB vs. Firewire" and you'll see:
The Firewire protocol was designed for video
Pretty much every test shows Firewire 400 outperforming USB2, despite the 400 vs 480 Mbit theoretical speed difference
The performance difference is significant (at least 10%, and often more), and it goes up with bigger files, like video
You would think that a video iPod would be the place you would definitely want Firewire, at least as an option.
My daughter is getting ready to buy herself an iPod, and I may have to tell her to look for one of the previous generation - her desktop at home is a hand-me-down G4 466 MHz, which has Firewire but no USB2. Yeah, I can shove a USB2 card in it, but still...
There is hardly anything in the world that someone can't make a little worse and sell a little cheaper -- and people who consider price alone are this man's lawful prey.
- widely attributed to John Ruskin, seen on the wall of every Baskin Robbins shop. Applied to IT in many places, most notably here.
The C++ specification, by contrast, is both a good spec and a bad spec.
The good part is the core of the language, which was primarily done by the committee ratifying existing practice. Read Stroustrup's Design and Evolution to see how the process worked.
The bad part is the STL spec, which was done in advance of settled, working implementations for templates. Templates in C++ are still dicey across implementations, and having a spec to aim at hasn't helped since the spec is a design document, not a codification of existing practice.
The Common Lisp spec was for the most part codification, which is why it's so good. The only place it got out ahead of community standards was CLOS, and they were smart enough to not standardize the MOP, which would have been even more premature.
Bottom line - specs as documentation of existing practice are good, specs as design documents are not good.
NASA has big archives of space data, and they're only going to get bigger - the next generation of earth observing satellites are expected to generate 4 petabytes/year. That's 4 * 10**15, folks - think 8,000 500 GB drives. Per year. For at least the next ten years. One year is on the order of the size of Google's web cache.
Current archives are merely huge, and off-the-shelf databases are having trouble indexing it all - I've heard of a database holding just metadata (date/time, geographic extent, data type, resolution, format, etc.) for millions of observations where queries were taking tens of seconds, and this was with top-of-the-line commercial database software with all the spatial search bells and whistles.
If anybody can come up with a better way to store and index this stuff, it's Google.
Look at what they did with hurricane katrina, went WAY out of their way to keep private help and citizens out,walmart trucks with water told to go back, citizen convoys with rescue boats, ordered to go back, civilian communication lines CUT by agents of the feds, on and on, until it had dissolved into chaos, THEN they decide to show up to 'restore order". THIS IS A CLUE. That isn't an "intelligence failure" like that additional 9-11 bigfat lie, it was done on purpose.
Never ascribe to malice that which can adequately be explained by stupidity. - Variously attributed around the net to Napoleon, Robert Heinlein and/or Robert Hanlon.
I was going to say something about second system effect here, but it doesn't really apply to Microsoft. I can't think of any first system of theirs that meets the "relatively small, elegant, and successful" criteria... not more than one out of three, anyway.
For me, it's not so much the looks as it is the screen real estate. Fortunately, you can click Options - Show/Hide - Toolbar and poof! They're gone. Click Options - Save Options afterwards and they're gone for good.
Aqua, Brushed Metal, whatever - I need an emacs that works well with OS X. For me, that means:
Trivial install and update
Control and meta work right, and don't interfere with command
Fonts that don't burn my eyes
Non-trivial elisp (like SLIME, that does sockets) just works
Aquamacs works for me. At least, the Aquamacs guys credit Andrew Choi for doing the original Carbon port - from looking at his blog, some people don't do that.
And the lack of consistency with Meta keys is frustrating (on my Mac, Carbon Emacs uses command, the terminal uses option, but on other machines I have to fall back on Esc).
Aquamacs (Carbon Emacs with settings to make it more Mac-like) cleans up a lot of that stuff. If you map meta to option, you can even use standard Mac keystrokes (command-S -> C-X C-S, command-Q -> C-X C-C, etc.). And SLIME works well under it - Aquamacs + Lisp-in-a-box without Emacs worked for me right out of the box (so to speak).
And, its default font is so much prettier...
You obviously haven't heard of Zombie Pete!
on
Review: Darkwatch
·
· Score: 1
He was a sheriff who got killed and (partially) resurrected to track down his murderers. Lyrics here. The song is on their "Of Mythic Distortions: CD, and it's a stitch.
See here for the details. They used Common Lisp for what it excels at - implementation of a domain-specific language which they could prototype in CL, then use a CL-based compiler to generate console code.
... if they get a chance to take their foot out of the PC motherboard backward-compatibility bucket. Apple gives them a chance to do that.
Yes, yes, the Apple X86 developer preview box is a vanilla PC motherboard, boots Windows fine, etc. Doesn't mean the actual shipping Apple hardware has to be that way, does it?
... if you have both the technical chops and the commercial success to back it up, which Google does, especially compared to other big players who are called arrogant.
Research labs like Xerox PARC back in the day were viewed as arrogant, in large part because of their technical success and lack of business success - "if you're so smart, home come you're not rich?"
Microsoft is viewed as arrogant because they're wildly successful commercially, but their technology is middle-of-the-road at best - from a purely geek point of view they don't deserve their success.
Google is an almost unheard-of beast that does truly technically innovative things and profits by doing so.
... will be for Microsoft to drop the Mac version of Office, and Apple to release an Excel-competitor. I'll be skeptical of the all-out-war theory until those two things happen.
As someone who remembers how "long-distance" phone calls were once a rare and expensive thing to do, I think deregulation of telecommunications (and the breakup of the Bell system monopoly) were a really good thing for consumers.
In 1977, an Apple II was $1300 (with 4K of RAM). Using the inflation calculator linked below, that's $4218.48 today
In 1981, an IBM PC was $1565. That's $3501.82 today.
In 1984, the original 128K Mac was $2499, or $4625.58 today.
From those prices, it looks like desktop PC prices have come down a lot more than game consoles, which is funny because they have basically the same technology inside.
According to here, the Star was $16500 at first release. They were great machines for their time, but not really at their best unless connected to a network with file servers and printers - stand-alone support was minimal. I can attest to that from my time at Xerox AI Systems (1986-88) - our stand-alone customers had to make do with Epson dot-matrix printers that sort-of worked, and we sent them system image updates on huge stacks of 5 1/4" floppies whose reliability was questionable on a good day.
Also, I know of two other windowing workstations that were commercially available in 1981:
...issues with language semantics, which is not very important in real life.
Erlang fans would disagree with you. Ericsson uses it a lot to implement their internal telecom switch control programs. Its pure functional semantics allows it to run tens of thousands of threads without requiring locking - equivalent Java or C++ would collapse under that kind of concurrency load.
... but if you know c++, perl, php, java and a few others, your toolbox will contain an appropriate solution for a broad range of problems.
The list of languages above is a good start, but is actually pretty narrow - they're all mostly imperative and Algol-like. For real breadth, you should break out into one or more of:
I prefer to think of that volume as "The Design Rationalization and Mutation of C++". An astounding amount of it is Stroustrup explaining why one feature or another would have been a good idea, but had to be shelved in favor of something simpler to implement, or requiring fewer keywords to change. It shows the extent to which C++'s design was political in addition to being technical (see Lambda the Ultimate Political Party for how this worked in the Lisp community).
It's a good, informative read, though not always a fun one - I still gnash my teeth every time I read about how they settled on termination semantics for exceptions.
Half of me says this is ridiculous, given that there is prior art for a universal representation of hierarchically structured data going back to, say, 1959.
The other half of me says that if we're lucky, this might kill off XML and encourage use of simpler data representations, including my personal favorite.
See my signature below for more flamebait.
But wouldn't it be cool if I could take a consumer-grade video camera and record straight to my iPod? One reason I don't do more home video is the annoying import-from-camera-tape-at-real-time step. I hope Steve is keeping that capability in mind for future video iPods - an iPod camera connector would be something I'd pay extra for.
The Firewire protocol was designed for video
Pretty much every test shows Firewire 400 outperforming USB2, despite the 400 vs 480 Mbit theoretical speed difference
The performance difference is significant (at least 10%, and often more), and it goes up with bigger files, like video
You would think that a video iPod would be the place you would definitely want Firewire, at least as an option.
My daughter is getting ready to buy herself an iPod, and I may have to tell her to look for one of the previous generation - her desktop at home is a hand-me-down G4 466 MHz, which has Firewire but no USB2. Yeah, I can shove a USB2 card in it, but still...
- widely attributed to John Ruskin, seen on the wall of every Baskin Robbins shop. Applied to IT in many places, most notably here.
The C++ specification, by contrast, is both a good spec and a bad spec.
The good part is the core of the language, which was primarily done by the committee ratifying existing practice. Read Stroustrup's Design and Evolution to see how the process worked.
The bad part is the STL spec, which was done in advance of settled, working implementations for templates. Templates in C++ are still dicey across implementations, and having a spec to aim at hasn't helped since the spec is a design document, not a codification of existing practice.
The Common Lisp spec was for the most part codification, which is why it's so good. The only place it got out ahead of community standards was CLOS, and they were smart enough to not standardize the MOP, which would have been even more premature.
Bottom line - specs as documentation of existing practice are good, specs as design documents are not good.
NASA has big archives of space data, and they're only going to get bigger - the next generation of earth observing satellites are expected to generate 4 petabytes/year. That's 4 * 10**15, folks - think 8,000 500 GB drives. Per year. For at least the next ten years. One year is on the order of the size of Google's web cache.
Current archives are merely huge, and off-the-shelf databases are having trouble indexing it all - I've heard of a database holding just metadata (date/time, geographic extent, data type, resolution, format, etc.) for millions of observations where queries were taking tens of seconds, and this was with top-of-the-line commercial database software with all the spatial search bells and whistles.
If anybody can come up with a better way to store and index this stuff, it's Google.
Never ascribe to malice that which can adequately be explained by
stupidity. - Variously attributed around the net to Napoleon, Robert Heinlein and/or Robert Hanlon.
I was going to say something about second system effect here, but it doesn't really apply to Microsoft. I can't think of any first system of theirs that meets the "relatively small, elegant, and successful" criteria... not more than one out of three, anyway.
... 2002.
Aqua, Brushed Metal, whatever - I need an emacs that works well with OS X. For me, that means:
Trivial install and update
Control and meta work right, and don't interfere with command
Fonts that don't burn my eyes
Non-trivial elisp (like SLIME, that does sockets) just works
Aquamacs works for me. At least, the Aquamacs guys credit Andrew Choi for doing the original Carbon port - from looking at his blog, some people don't do that.
Aquamacs (Carbon Emacs with settings to make it more Mac-like) cleans up a lot of that stuff. If you map meta to option, you can even use standard Mac keystrokes (command-S -> C-X C-S, command-Q -> C-X C-C, etc.). And SLIME works well under it - Aquamacs + Lisp-in-a-box without Emacs worked for me right out of the box (so to speak).
And, its default font is so much prettier...
He was a sheriff who got killed and (partially) resurrected to track down his murderers. Lyrics here. The song is on their "Of Mythic Distortions: CD, and it's a stitch.
See here for the details. They used Common Lisp for what it excels at - implementation of a domain-specific language which they could prototype in CL, then use a CL-based compiler to generate console code.
... if they get a chance to take their foot out of the PC motherboard backward-compatibility bucket. Apple gives them a chance to do that.
Yes, yes, the Apple X86 developer preview box is a vanilla PC motherboard, boots Windows fine, etc. Doesn't mean the actual shipping Apple hardware has to be that way, does it?
Everything over IP
IP on everything
and mentioned he had a dog sweater with "IP on everything" on it.
... if you have both the technical chops and the commercial success to back it up, which Google does, especially compared to other big players who are called arrogant.
Research labs like Xerox PARC back in the day were viewed as arrogant, in large part because of their technical success and lack of business success - "if you're so smart, home come you're not rich?"
Microsoft is viewed as arrogant because they're wildly successful commercially, but their technology is middle-of-the-road at best - from a purely geek point of view they don't deserve their success.
Google is an almost unheard-of beast that does truly technically innovative things and profits by doing so.
By Peter Norvig.
Don't miss the rest of his site while you're there.
0. Computer Repair Technician puts something illegal on your computer (and diddles the file date and time appropriately).
I.e, what if the tech isn't a disinterested third party?
... will be for Microsoft to drop the Mac version of Office, and Apple to release an Excel-competitor. I'll be skeptical of the all-out-war theory until those two things happen.
As someone who remembers how "long-distance" phone calls were once a rare and expensive thing to do, I think deregulation of telecommunications (and the breakup of the Bell system monopoly) were a really good thing for consumers.
In 1977, an Apple II was $1300 (with 4K of RAM). Using the inflation calculator linked below, that's $4218.48 today
In 1981, an IBM PC was $1565. That's $3501.82 today.
In 1984, the original 128K Mac was $2499, or $4625.58 today.
From those prices, it looks like desktop PC prices have come down a lot more than game consoles, which is funny because they have basically the same technology inside.
Also, I know of two other windowing workstations that were commercially available in 1981:
The PERQ
Lisp machines from LMI and Symbolics
The Lisa was not the first commercial GUI machine, though it probably does hold the title for the first commercial machine under $10K.
Erlang fans would disagree with you. Ericsson uses it a lot to implement their internal telecom switch control programs. Its pure functional semantics allows it to run tens of thousands of threads without requiring locking - equivalent Java or C++ would collapse under that kind of concurrency load.
Agreed on SQL.
The list of languages above is a good start, but is actually pretty narrow - they're all mostly imperative and Algol-like. For real breadth, you should break out into one or more of:
Common Lisp, Scheme
Haskell, ML, ocaml
Smalltalk, ruby
Prolog
I prefer to think of that volume as "The Design Rationalization and Mutation of C++". An astounding amount of it is Stroustrup explaining why one feature or another would have been a good idea, but had to be shelved in favor of something simpler to implement, or requiring fewer keywords to change. It shows the extent to which C++'s design was political in addition to being technical (see Lambda the Ultimate Political Party for how this worked in the Lisp community).
It's a good, informative read, though not always a fun one - I still gnash my teeth every time I read about how they settled on termination semantics for exceptions.