Could you please give us an estimate, if you have one, of how much innovation has been destroyed by patent trolls? Also, if you happen to know, how many startups?
While I agree with what you say about height, I think it overlooks something of greater importance. I am more interested in increasing the size of something else rather than overall height.
Over a year ago I could pick up sub $100 Android tablets at my local Walmart. And there are actual third party applications that are available for Android. Sub $100 Android tablets make good children's toys.
My mathematical model tells me that they will keep the show going for as long as possible as long as ratings are good. Then it will suddenly end. Maybe on a cliffhanger.
You step on the accelerator. Chemical reactions occur within thousands of small cells, instantly releasing vast amounts of pent up energy as huge volumes of electrons are forced through the path of least resistance through the motors that propel the vehicle. The huge torque of electric motors causes sudden intense acceleration that pushes you back in your seat. The car gains speed. Faster. Faster.
Finally, it reaches MECO1 and the back half of the car falls away and gently glides back to earth to soft land vertically at the launch pad.
India was able to do a Mars satellite so cheaply by cutting lots of corners that NASA would have required.
For example, India failed to generate documents necessary to form a committee that would make plans to do a study on how to begin planning the mission. Definitely cutting corners.
You've got it wrong. This is not talking about Redundant Array of Inexpensive Drives, this is talking about how to protect The Pirate Bay data from a specific brand of insecticide.
Apple needs to work on putting copy protection onto floppy disks. That worked out quite well before.
Can't Be Pirated is the holy grail of the copyright idiots. It's more important than profit, fame or success. It won't let common sense stand in its way.
The only format that can't be pirated is a format that you cannot listen to. Hey I'm going to encrypt this music and then hand your player the decryption keys! We can try moving the decryption closer and closer to your ears, or to your eyes (as in HDMI), but ultimately it has to interact with your senses and can be picked up using sensors (mics, cameras).
Please tell me again, how many anti piracy measures have actually been effective?
Aren't monopolies, bribes, dirty tricks, and protecting obsolete business models within the laws of nature? Aren't things done by horrible people within the laws of nature?
You're doing it wrong. It's easy to get fired as a teacher. Just start teaching critical thinking, how to express yourself, creativity, questioning of authority and independent thought, and see how long it is until you get fired.
Religion used to carry out other agendas? Naaaaaah.
Comcast will be thrilled, just thrilled, I tell you to explain that by providing substandard and slow internet service, they are obeying Sharia and complying with moral standards. There is no agenda there. Comcast was just trying to honor religious and moral laws all along.
It's not just the JVM. It's the fact that Java (and all JVM languages) have Garbage Collection.
When people (even in this Slashdot comments) talk about non-GC languages and compare then to GC languages such as Java, they are missing something important.
I have seen comments here comparing the language features, and concepts computer science students learn from either C or Java, etc. But they miss something very important.
When you have GC, you have something that deeply enables the ability to create vast libraries of code that interoperate well together. It is something so deeply implied in the source and binary ABI and APIs that you don't see it. Because of GC, there doesn't need to be any 'contract' in APIs about who owns what data structures. Who is responsible to delete what. What the protocols are for who is responsible for disposing of what, etc.
This cannot be overstated. This enables the creation of libraries that can create, or be passed external data structures, and can create and return data structures, without any concern for who owns what or who is responsible for disposing of what.
This is true whether the language is Java, Python, Ruby, etc, etc, etc. The GC languages are in an entirely different class than C or C++. Yes, I know that those languages have GC grafted on. But which GC mechanism? Do all of your libraries support it? Universally? What about some libraries use this memory management protocol and contract (maybe even non GC), and other libraries use a different memory management protocol and discipline?
The JVM does some pretty amazing things. It has some pretty amazing optimizations. You can run a lot of languages on the JVM.
Most modern languages now take garbage collection for granted. If you build your new language on the JVM, you get GC for free. And a GC that has been researched, developed and optimized for almost two decades. You get a choice of GC algorithms. Each GC has many tuning parameters. (More than you need.)
You're right. It's not Java that is cool. It's the JVM.
The JVM compiles the JVM bytecode to machine code. On the fly. It continuously dynamically profiles your code to determine what needs to be compiled to native code. It aggressively inlines functions. Even though all methods are virtual functions, if the JVM can prove that there is only one implementation that exists for this method, or only one implementation that could be the actual one that would be invoked at a certain point, then it compiles it as a direct non-virtual call.
But, classes can be dynamically reloaded during runtime. So other code that inlined methods from the class being reloaded now has inlined code that is obsolete! The JVM will ensure that those methods are recompiled (possibly re-inlining, or not) the code from the newly loaded class. And it will ensure that this recompile happens before the stale inlined code can be executed again.
All of this is cross platform. Because your code is compiled by a compiler that knows about the actual hardware you are running on, it can do optimizations that are impossible in an ahead-of-time compiler like C. It can use extended instructions from the instruction set of the actual processor you are using. Furthermore, since it knows the entire set of code making up the application, it can do global optimizations that are also impossible with ahead of time compilers. An ahead of time compiler doesn't know anything about the implementation of the libraries that your program will link against at runtime. If the compiler knew about the actual implementation of the libraries that your application code was calling, there are optimization opportunities that an ahead of time compiler cannot make assumptions about.
With the JVM you can have heaps that are tens of gigabytes (or hundreds with some third party JVM implementations) and have max GC pause times in the tens of milliseconds.
That is what makes 'java' cool. It's the JVM. It's also the JVM that makes Java so darned fast. Not the Java language itself. Nor the Java compiler to JVM bytecode. The JVM has a unique perfect storm of amazing features that make it so attractive.
While I personally like to deeply understand the languages I program in, I don't think it should be necessary for an average programmer to have to understand the entire language specification in order to use the language.
If you can't just grab some code online and expect it to work on your compiler, then this is a major design fail in the language.
I can understand a language having unspecified aspects, poorly specified aspects, or things that are well specified to act in a compiler defined manner. However those should be extremely obscure features that an average programmer, and average code would never use.
Even better, don't have any compiler dependent behavior in a language. Compiler extensions should be okay -- and they, by design, should cause a compile time error on a different compiler -- or alternately have a way of being ignored so you can stack compiler specific blocks together in a single source file. Although having a source file that only supports a specific list of compilers also seems like a bad idea.
I'm glad it is not an issue in the languages I use.
Can't we just outsource prisons?
Send poor people to serve time in some third world hell hole. Send rich people to serve time in some vacation paradise.
When naming your blog, why did you choose an oxymoron of such contradictory terms? Sort of like Microsoft Morals. Or Apple Humility.
Thanks
Hi Florian,
Thanks for being interviewed on Slashdot.
Could you please give us an estimate, if you have one, of how much innovation has been destroyed by patent trolls? Also, if you happen to know, how many startups?
Thanks
Who (or how many parties) paid you to do a Q&A on Slashdot?
Thanks
While I agree with what you say about height, I think it overlooks something of greater importance. I am more interested in increasing the size of something else rather than overall height.
Over a year ago I could pick up sub $100 Android tablets at my local Walmart. And there are actual third party applications that are available for Android. Sub $100 Android tablets make good children's toys.
My mathematical model tells me that they will keep the show going for as long as possible as long as ratings are good. Then it will suddenly end. Maybe on a cliffhanger.
You step on the accelerator. Chemical reactions occur within thousands of small cells, instantly releasing vast amounts of pent up energy as huge volumes of electrons are forced through the path of least resistance through the motors that propel the vehicle. The huge torque of electric motors causes sudden intense acceleration that pushes you back in your seat. The car gains speed. Faster. Faster.
Finally, it reaches MECO1 and the back half of the car falls away and gently glides back to earth to soft land vertically at the launch pad.
India was able to do a Mars satellite so cheaply by cutting lots of corners that NASA would have required.
For example, India failed to generate documents necessary to form a committee that would make plans to do a study on how to begin planning the mission. Definitely cutting corners.
SpaceX could still face a major setback if states make SpaceX sell launches only through dealer networks.
You've got it wrong. This is not talking about Redundant Array of Inexpensive Drives, this is talking about how to protect The Pirate Bay data from a specific brand of insecticide.
Apple needs to work on putting copy protection onto floppy disks. That worked out quite well before.
Can't Be Pirated is the holy grail of the copyright idiots. It's more important than profit, fame or success. It won't let common sense stand in its way.
The only format that can't be pirated is a format that you cannot listen to. Hey I'm going to encrypt this music and then hand your player the decryption keys! We can try moving the decryption closer and closer to your ears, or to your eyes (as in HDMI), but ultimately it has to interact with your senses and can be picked up using sensors (mics, cameras).
Please tell me again, how many anti piracy measures have actually been effective?
> He should make songs and not talk about things he hasn't got a clue about.
Nooooooo! Please don't make more songs! (Also do not talk about things he doesn't have a clue about.)
Make is a social network enabled app to enable sharing of results and aggregation of important statistics.
Did you mean weakly instead of weekly?
Aren't monopolies, bribes, dirty tricks, and protecting obsolete business models within the laws of nature? Aren't things done by horrible people within the laws of nature?
Even if the patent is thrown out, another way that SpaceX can be harmed is by states forcing SpaceX to sell through dealers.
You're doing it wrong. It's easy to get fired as a teacher. Just start teaching critical thinking, how to express yourself, creativity, questioning of authority and independent thought, and see how long it is until you get fired.
Religion used to carry out other agendas? Naaaaaah.
Comcast will be thrilled, just thrilled, I tell you to explain that by providing substandard and slow internet service, they are obeying Sharia and complying with moral standards. There is no agenda there. Comcast was just trying to honor religious and moral laws all along.
You cannot wait patiently for 3 days to download 8 GB?
Then you should not be on Comcast / Time-Warner.
It's not just the JVM. It's the fact that Java (and all JVM languages) have Garbage Collection.
When people (even in this Slashdot comments) talk about non-GC languages and compare then to GC languages such as Java, they are missing something important.
I have seen comments here comparing the language features, and concepts computer science students learn from either C or Java, etc. But they miss something very important.
When you have GC, you have something that deeply enables the ability to create vast libraries of code that interoperate well together. It is something so deeply implied in the source and binary ABI and APIs that you don't see it. Because of GC, there doesn't need to be any 'contract' in APIs about who owns what data structures. Who is responsible to delete what. What the protocols are for who is responsible for disposing of what, etc.
This cannot be overstated. This enables the creation of libraries that can create, or be passed external data structures, and can create and return data structures, without any concern for who owns what or who is responsible for disposing of what.
This is true whether the language is Java, Python, Ruby, etc, etc, etc. The GC languages are in an entirely different class than C or C++. Yes, I know that those languages have GC grafted on. But which GC mechanism? Do all of your libraries support it? Universally? What about some libraries use this memory management protocol and contract (maybe even non GC), and other libraries use a different memory management protocol and discipline?
The JVM does some pretty amazing things. It has some pretty amazing optimizations. You can run a lot of languages on the JVM.
Most modern languages now take garbage collection for granted. If you build your new language on the JVM, you get GC for free. And a GC that has been researched, developed and optimized for almost two decades. You get a choice of GC algorithms. Each GC has many tuning parameters. (More than you need.)
You're right. It's not Java that is cool. It's the JVM.
The JVM compiles the JVM bytecode to machine code. On the fly. It continuously dynamically profiles your code to determine what needs to be compiled to native code. It aggressively inlines functions. Even though all methods are virtual functions, if the JVM can prove that there is only one implementation that exists for this method, or only one implementation that could be the actual one that would be invoked at a certain point, then it compiles it as a direct non-virtual call.
But, classes can be dynamically reloaded during runtime. So other code that inlined methods from the class being reloaded now has inlined code that is obsolete! The JVM will ensure that those methods are recompiled (possibly re-inlining, or not) the code from the newly loaded class. And it will ensure that this recompile happens before the stale inlined code can be executed again.
All of this is cross platform. Because your code is compiled by a compiler that knows about the actual hardware you are running on, it can do optimizations that are impossible in an ahead-of-time compiler like C. It can use extended instructions from the instruction set of the actual processor you are using. Furthermore, since it knows the entire set of code making up the application, it can do global optimizations that are also impossible with ahead of time compilers. An ahead of time compiler doesn't know anything about the implementation of the libraries that your program will link against at runtime. If the compiler knew about the actual implementation of the libraries that your application code was calling, there are optimization opportunities that an ahead of time compiler cannot make assumptions about.
With the JVM you can have heaps that are tens of gigabytes (or hundreds with some third party JVM implementations) and have max GC pause times in the tens of milliseconds.
That is what makes 'java' cool. It's the JVM. It's also the JVM that makes Java so darned fast. Not the Java language itself. Nor the Java compiler to JVM bytecode. The JVM has a unique perfect storm of amazing features that make it so attractive.
How can Apple retain total, maniacal control by giving up some control?
While I personally like to deeply understand the languages I program in, I don't think it should be necessary for an average programmer to have to understand the entire language specification in order to use the language.
If you can't just grab some code online and expect it to work on your compiler, then this is a major design fail in the language.
I can understand a language having unspecified aspects, poorly specified aspects, or things that are well specified to act in a compiler defined manner. However those should be extremely obscure features that an average programmer, and average code would never use.
Even better, don't have any compiler dependent behavior in a language. Compiler extensions should be okay -- and they, by design, should cause a compile time error on a different compiler -- or alternately have a way of being ignored so you can stack compiler specific blocks together in a single source file. Although having a source file that only supports a specific list of compilers also seems like a bad idea.
I'm glad it is not an issue in the languages I use.
Yes, I should have put a smiley. And as another poster points out, I should not have put the semicolons. But It's been awhile since I used C / C++.