Tableau Desktop is an interactive analysis and visualization product that connects to relational and cube data sources to help people see and understand their data. There was a webinar (slides - PDF) back in November 2008 covering Blastrac Global's success in using Tableau with their ERP system.
Also keep in mind that Sprint has up to 90 MHz of bandwidth at 2.5 GHz. Arguments about 2.5GHz being better-suited to data often implicitly rely on that point.
The better propagation characteristics do have a drawback: limited frequency reuse. The cells will have to be spaced further apart to avoid overlap, resulting in more users communicating with the same tower. Furthermore 700 MHz doesn't have the scattering properties of higher frequencies that allows for multipath signal combining, which is tremendously useful in non-line-of-sight situations. This means that coverage in dense urban environments will have to rely exclusively on the partial propagation through buildings, which may leave shadows on a coverage map. These quiet zones could be targeted with additional tower placement, if not for the frequency reuse problem.
I'm by no means the expert on some of your questions, but I'll try to help you out as best as I can.
There is not currently a text format for LabVIEW programs, but your concern about version control has existed in the professional LabVIEW users community for quite some time. The core LabVIEW product has an excellent graphical Diff tool and integrates with standard source code control providers such as Perforce for version control. I don't recall seeing this in Robolab, but I could be mistaken (I was never a power user). I am also not certain how the software for Mindstorms NXT will handle this, though I imagine that it will be more of a concern in an academic package if one is released separately.
The Robolab compiler was quite clever, and was essentially built right into the blocks that kids drop in Robolab. When you "run" a program in Robolab, the blocks execute and save state information into global variables, in addition to emitting low-level bytecodes as they go along. When the end of the program has finished "running", all of the code and state that was collected is packaged together and downloaded to the brick. The downside to this single-pass approach was that no analysis could be done on the program for optimizations or even transformations like register allocations. Basically the kids had to be their own register allocators, choosing from colored "containers" to keep track of different variables.
The Mindstorms NXT compiler is a more traditional multi-pass, optimizing compiler. No containers are required, and instead the variables are inferred from the wires that carry data between two blocks. Unlike Robolab, where parallelism was explicitly managed with task splits and joins, all of the parallelism in Mindstorms NXT is inferred from the inherent parallelism that exists in a dataflow program. I'm not sure how much more detail I should delve into, so I'll leave things at that for now:)
I designed the compiler for the Mindstorms NXT (not counting the parser), so your statement strikes me as odd... because the entire compiler was written in LabVIEW itself. Given that the Mindstorms NXT is a product, that would make it a production programming language, would it not? The compiler does significant dataflow analysis, constant propagation, dead code elimination, register allocation, and identifies opportunities for parallelism, just for starters.
Regarding your other point - I find that most people are much more comfortable with visual concepts and cues than they are with words, excepting those who are CLI gurus. True, LabVIEW's collection of palettes and tools has been confusing, even for adults - this is why they've redesigned the palette system in LabVIEW 8.0; but they *completely* redesigned the entire concept of palettes for Mindstorms NXT. When you start seeing demos of the software you'll quite simply be blown away.
See my other post here as well for more info about the product:
Note, I left NI shortly after I completed the majority of my work on this project, so I feel I can (and should!) defend our hard work without fear of reprisals from management:)
I'll try to dispel some myths here without stepping on the toes of my former employer, National Instruments, which is working with LEGO on the software interface and programming environment for this product. I designed and built the compiler infrastructure (excepting the parser) for targeting the virtual machine running on the brick from a program built in the Mindstorms NXT software environment, so I speak with some authority (and little fear of reprisal as long as I stay within reasonable limits in discussing as-of-yet unpublished details:)).
If anything, this product is designed to be more extensible than ever. They *want* third party providers to create new hardware and augment the software environment to support it. We built the brick's virtual machine with the understanding that the prior one was extremely limited for C-style programming languages that operate with a stack and a flat memory space. It is still more oriented with the highly parallel nature of the dataflow programming language kids will use, but this should only make things more interesting for the C/compiler hackers and enthusiasts out there.
Finally, the entire compiler was written in LabVIEW itself, which is the dataflow programming language that the Mindstorms NXT programming environment is based on. The LabVIEW-based compiler can parse, analyze, optimize and generate code for other LabVIEW programs, so theoretically the programming environment provided by the product is all the enthusiast or third party needs to extend the product with new functionality. In reality, much of the API used by the compiler won't be initially available to everyone, mostly because that's not what the product is really about -- but this is mostly a matter of time and resources since they're on an aggressive schedule, and it's only a matter of time before they provide an SDK.
They want this product to be accessible, and have nothing to lose by doing so. Fortunately this time however the underlying technology was designed to make this even easier after the product launches.
One last request to NI is something that we discussed while I still worked there... Since NI is not ultimately a compiler company, I'd love to see the compiler open-sourced for anyone with access to LabVIEW or Mindstorms NXT. How 'bout it Joel? I've still got some G in me.
-Robert Morton
p.s. I left NI on very good terms, and I hope I didn't just undo that:) I'm at Intel now, focusing more closely on the types of performance analysis on which I am so keen, but NI continues to do amazing work, both for its customers and the community.
I agree, there's a lot of hypocrisy in this debate. I believe though I can clarify this explanation of the knee-jerk response techies have: I should have said that people think "knowledge and creativity" want to be free, not information in general. My SSN is not useful to the general public unless someone wants to "steal" my identity.
Here's the premise of music swapping as I see it: I'm guessing that most Slashdotters who pirate music/warez are leechers instead of sharers - they claim they would be perfectly fine without the product and the victim loses only a potential sale; but sharing with others is allowing those who absolutely need the product get away with not buying it. Most slashdot pirates aren't trying to inflict financial damage on others, they just want something for free that they'd never pay for - but they don't wish to be complicit in helping others "steal" potential revenue. This seems to imply that there are ethical pirates and unethical ones, which I don't understand:)
To answer your question about personal info, I believe many Slashdotters feel that they would gladly share their own ideas, creativity and intellectual property to the broader community. But that doesn't mean they want to share their bank PIN, street address or mother's maiden name.
There is a fundamental difference, though it doesn't necessarily excuse our behavior:)
Works that are GPL'd start out free and open, and we strive to keep it that way.
Copyrighted works start out as proprietary and (sometimes) not free, and are vigorously defended.
Basically the Slashdot crowd's emotional response is not to the copyrighting involved but to the idea that "information wants to be free"... whatever that means.
The C.Crane FM transmitter kicks ass. It can use battery power or a DC power supply, so I run mine in my car for road trips and in my house for parties (a stereo receiving in every room).
There's also a way you can mod it to break the part 15 FCC regulation, for those of you outside of the US...
If the employees are being exploited, it's their own fault for staying there.
Wow, that's narrow minded. If a woman is beaten by her husband, it's her fault for not leaving him? If we're unhappy with the direction our country is headed, we'd better pack up or shut up?
the amazing amount already being poured into "Get Out The Vote" style programs. I'm not sure if any of the current programs are goverment sponsored in any way, but I would not be surprised if they were.
One side comment: I would be willing to believe that Republicans would most oppose this measure for one reason (which they may not acknowledge), and that is that the socio-economic class that largely funds state lottery systems is more likely to be Democratic.
XP Pro does still BSOD. I did it this past week when trying to access some profiling performance counters that apparently don't exist on the processor I was using.
Oh, I'm typing this from home on my 12" Powerbook that I just got. My favorite downloads have been Camino, a Mozilla-based browser designed to behave like an OS X app better than Firefox; and Remote Desktop Client, the free client provided by Microsoft for connecting to machines that have remote access turned on (which is supported but not enabled by default in XP).
There's an extension for Firefox that will allow you to copy the text as plain directly from the browser. No notepad required, no paste special required. It gives you an extra context menu option for copying - and maybe even a keyboard shortcut?
I could recite the original source to DeCSS by reading the raw Hex from an encrypted version of the source. The key for the encryption? - the checksum of the DeCSS source itself. Only those who have access to DeCSS could decrypt my message, and they would already be in possession of illegal information so I would not be providing anything useful; to everyone else it would be useless gibberish.
Yeah, okay maybe this scenario doesn't fit your challenge. But I wouldn't mind a gmail invite anyway:) morton2002 at myrealbox *d0t* c0m.
If the public weren't so scared and misinformed about "nukyoolar" power then we could power these beasts for a long time. The Cassini spacecraft, the size of a large truck, runs on nuclear power and will survive the cold, dark reaches of space around Saturn for half a decade thanks to this.
Okay, let's calm down... I've done this already, and accidentally discharged the capacitor through myself. It hurts and will really piss someone off if you catch them unawares, but it surely won't stun them.
Actually now that Apple and AMD have successfully?/vigorously argued against the MHz myth, Intel can simply ride on customers' nascent acceptance of performance numbers.
Compared to the incongruous numbering schemes between most consumer electronics, and especially car models, customers will likely accept a marketed performance scheme and forget about any meaning behind the raw numbers.
Tableau Desktop is an interactive analysis and visualization product that connects to relational and cube data sources to help people see and understand their data. There was a webinar (slides - PDF) back in November 2008 covering Blastrac Global's success in using Tableau with their ERP system.
Disclaimer: I work at Tableau Software, so I encourage you to see for yourself with a free trial: http://www.tableausoftware.com/products/tour
Also keep in mind that Sprint has up to 90 MHz of bandwidth at 2.5 GHz. Arguments about 2.5GHz being better-suited to data often implicitly rely on that point.
The better propagation characteristics do have a drawback: limited frequency reuse. The cells will have to be spaced further apart to avoid overlap, resulting in more users communicating with the same tower. Furthermore 700 MHz doesn't have the scattering properties of higher frequencies that allows for multipath signal combining, which is tremendously useful in non-line-of-sight situations. This means that coverage in dense urban environments will have to rely exclusively on the partial propagation through buildings, which may leave shadows on a coverage map. These quiet zones could be targeted with additional tower placement, if not for the frequency reuse problem.
I resent that!
Sounds familiar ... and a little scary!
I'm by no means the expert on some of your questions, but I'll try to help you out as best as I can.
:)
There is not currently a text format for LabVIEW programs, but your concern about version control has existed in the professional LabVIEW users community for quite some time. The core LabVIEW product has an excellent graphical Diff tool and integrates with standard source code control providers such as Perforce for version control. I don't recall seeing this in Robolab, but I could be mistaken (I was never a power user). I am also not certain how the software for Mindstorms NXT will handle this, though I imagine that it will be more of a concern in an academic package if one is released separately.
The Robolab compiler was quite clever, and was essentially built right into the blocks that kids drop in Robolab. When you "run" a program in Robolab, the blocks execute and save state information into global variables, in addition to emitting low-level bytecodes as they go along. When the end of the program has finished "running", all of the code and state that was collected is packaged together and downloaded to the brick. The downside to this single-pass approach was that no analysis could be done on the program for optimizations or even transformations like register allocations. Basically the kids had to be their own register allocators, choosing from colored "containers" to keep track of different variables.
The Mindstorms NXT compiler is a more traditional multi-pass, optimizing compiler. No containers are required, and instead the variables are inferred from the wires that carry data between two blocks. Unlike Robolab, where parallelism was explicitly managed with task splits and joins, all of the parallelism in Mindstorms NXT is inferred from the inherent parallelism that exists in a dataflow program. I'm not sure how much more detail I should delve into, so I'll leave things at that for now
-Robert
Patience, grasshopper!
c id=14402793
http://games.slashdot.org/comments.pl?sid=173049&
I'm hoping for the same things too!
-Robert
I designed the compiler for the Mindstorms NXT (not counting the parser), so your statement strikes me as odd... because the entire compiler was written in LabVIEW itself. Given that the Mindstorms NXT is a product, that would make it a production programming language, would it not? The compiler does significant dataflow analysis, constant propagation, dead code elimination, register allocation, and identifies opportunities for parallelism, just for starters.
c id=14402793
:)
Regarding your other point - I find that most people are much more comfortable with visual concepts and cues than they are with words, excepting those who are CLI gurus. True, LabVIEW's collection of palettes and tools has been confusing, even for adults - this is why they've redesigned the palette system in LabVIEW 8.0; but they *completely* redesigned the entire concept of palettes for Mindstorms NXT. When you start seeing demos of the software you'll quite simply be blown away.
See my other post here as well for more info about the product:
http://games.slashdot.org/comments.pl?sid=173049&
Note, I left NI shortly after I completed the majority of my work on this project, so I feel I can (and should!) defend our hard work without fear of reprisals from management
-Robert Morton
I'll try to dispel some myths here without stepping on the toes of my former employer, National Instruments, which is working with LEGO on the software interface and programming environment for this product. I designed and built the compiler infrastructure (excepting the parser) for targeting the virtual machine running on the brick from a program built in the Mindstorms NXT software environment, so I speak with some authority (and little fear of reprisal as long as I stay within reasonable limits in discussing as-of-yet unpublished details :)).
:) I'm at Intel now, focusing more closely on the types of performance analysis on which I am so keen, but NI continues to do amazing work, both for its customers and the community.
If anything, this product is designed to be more extensible than ever. They *want* third party providers to create new hardware and augment the software environment to support it. We built the brick's virtual machine with the understanding that the prior one was extremely limited for C-style programming languages that operate with a stack and a flat memory space. It is still more oriented with the highly parallel nature of the dataflow programming language kids will use, but this should only make things more interesting for the C/compiler hackers and enthusiasts out there.
Finally, the entire compiler was written in LabVIEW itself, which is the dataflow programming language that the Mindstorms NXT programming environment is based on. The LabVIEW-based compiler can parse, analyze, optimize and generate code for other LabVIEW programs, so theoretically the programming environment provided by the product is all the enthusiast or third party needs to extend the product with new functionality. In reality, much of the API used by the compiler won't be initially available to everyone, mostly because that's not what the product is really about -- but this is mostly a matter of time and resources since they're on an aggressive schedule, and it's only a matter of time before they provide an SDK.
They want this product to be accessible, and have nothing to lose by doing so. Fortunately this time however the underlying technology was designed to make this even easier after the product launches.
One last request to NI is something that we discussed while I still worked there... Since NI is not ultimately a compiler company, I'd love to see the compiler open-sourced for anyone with access to LabVIEW or Mindstorms NXT. How 'bout it Joel? I've still got some G in me.
-Robert Morton
p.s. I left NI on very good terms, and I hope I didn't just undo that
18 characters are removed from Internationalization to make I18n. 10 characters are removed from Localization to get L10n.
-Robert
I agree, there's a lot of hypocrisy in this debate. I believe though I can clarify this explanation of the knee-jerk response techies have: I should have said that people think "knowledge and creativity" want to be free, not information in general. My SSN is not useful to the general public unless someone wants to "steal" my identity.
:)
Here's the premise of music swapping as I see it: I'm guessing that most Slashdotters who pirate music/warez are leechers instead of sharers - they claim they would be perfectly fine without the product and the victim loses only a potential sale; but sharing with others is allowing those who absolutely need the product get away with not buying it. Most slashdot pirates aren't trying to inflict financial damage on others, they just want something for free that they'd never pay for - but they don't wish to be complicit in helping others "steal" potential revenue. This seems to imply that there are ethical pirates and unethical ones, which I don't understand
To answer your question about personal info, I believe many Slashdotters feel that they would gladly share their own ideas, creativity and intellectual property to the broader community. But that doesn't mean they want to share their bank PIN, street address or mother's maiden name.
-Robert
There is a fundamental difference, though it doesn't necessarily excuse our behavior :)
Works that are GPL'd start out free and open, and we strive to keep it that way.
Copyrighted works start out as proprietary and (sometimes) not free, and are vigorously defended.
Basically the Slashdot crowd's emotional response is not to the copyrighting involved but to the idea that "information wants to be free"... whatever that means.
-Robert
There's also a way you can mod it to break the part 15 FCC regulation, for those of you outside of the US...
http://www.blogdom.org/archives/000930.php
-Robert
If the employees are being exploited, it's their own fault for staying there.
Wow, that's narrow minded. If a woman is beaten by her husband, it's her fault for not leaving him? If we're unhappy with the direction our country is headed, we'd better pack up or shut up?
Think about it some, please.
-Robert
the amazing amount already being poured into "Get Out The Vote" style programs. I'm not sure if any of the current programs are goverment sponsored in any way, but I would not be surprised if they were.
One side comment: I would be willing to believe that Republicans would most oppose this measure for one reason (which they may not acknowledge), and that is that the socio-economic class that largely funds state lottery systems is more likely to be Democratic.
spreadin' the OT GMail love:
Gmail 1
Gmail 2
Gmail 3
Gmail 4
Gmail 5
Gmail 6
-Robert
XP Pro does still BSOD. I did it this past week when trying to access some profiling performance counters that apparently don't exist on the processor I was using.
Oh, I'm typing this from home on my 12" Powerbook that I just got. My favorite downloads have been Camino, a Mozilla-based browser designed to behave like an OS X app better than Firefox; and Remote Desktop Client, the free client provided by Microsoft for connecting to machines that have remote access turned on (which is supported but not enabled by default in XP).
Enjoy!
-Robert
There's an extension for Firefox that will allow you to copy the text as plain directly from the browser. No notepad required, no paste special required. It gives you an extra context menu option for copying - and maybe even a keyboard shortcut?
Enjoy!
Oh dear god, how could a Reuters article make such a stupid mistake?
"...which claims its members loose billions of dollars annually to copyright piracy".
*Sigh*
I could recite the original source to DeCSS by reading the raw Hex from an encrypted version of the source. The key for the encryption? - the checksum of the DeCSS source itself. Only those who have access to DeCSS could decrypt my message, and they would already be in possession of illegal information so I would not be providing anything useful; to everyone else it would be useless gibberish.
:) morton2002 at myrealbox *d0t* c0m.
Yeah, okay maybe this scenario doesn't fit your challenge. But I wouldn't mind a gmail invite anyway
With Firefox/Mozilla extensions you can:
Take quick notes
Nuke an image
Save your sessions
But since I don't want those extensions, I don't have them installed. Less bloat for me! Hope this helps...
If the public weren't so scared and misinformed about "nukyoolar" power then we could power these beasts for a long time. The Cassini spacecraft, the size of a large truck, runs on nuclear power and will survive the cold, dark reaches of space around Saturn for half a decade thanks to this.
Who'd be the first to hack the client and return frames containing porn snippits like Tyler did in Fight Club?
:)
C'mon, you know you'd be tempted
Okay, let's calm down... I've done this already, and accidentally discharged the capacitor through myself. It hurts and will really piss someone off if you catch them unawares, but it surely won't stun them.
Actually now that Apple and AMD have successfully?/vigorously argued against the MHz myth, Intel can simply ride on customers' nascent acceptance of performance numbers.
Compared to the incongruous numbering schemes between most consumer electronics, and especially car models, customers will likely accept a marketed performance scheme and forget about any meaning behind the raw numbers.