The fanboys accepted that they could live without copy and paste because they understood that developing features takes time, and it was better to use an early version of iPhone OS instead of having no iPhone to use at all.
If anyone actually said that the platform was better without copy and paste, they were clearly joking.
Assume a blockbuster hit from the late 70's. It was very popular and sold millions of singles. If that song stood on its own merit with talent and artistic meaning instead of fashion and promotion being the reason, wouldn't that song also be just as popular now with a different generation?
The original MacOS was an amazing artistic achievement and reached great success in its time. It is still a fantastic work of art, but I do know of many people who would choose to use it over Snow Leopard. Newer generations laugh at the people who thought using MacOS was amazing. Refinements in technology and learning from the lessons learned all those years ago have allowed artists to create "better" art. Better in the sense of better being able to strike an emotional coord in the consumer using the most advanced knowledge given at the time of creation.
Music really is not any different. There are some amazing musical recordings from hundreds of years ago, but I do not see anyone putting them in their radio station rotation. 70s music has really only persisted as much as it has because baby boomers are afraid to let go of their youth. It is amazing art, it will always be amazing art, but like the original MacOS, it is outdated technology and is not able to have the same effect as modern works.
Stealing isn't even a good analogy to begin with. If we must use a car analogy, it is more like my friend allowing me to borrow his car over the weekend and GM taking me to court because they feel I should have purchased a brand new one instead.
A replicator would remove the need for a job completely, allowing hobbyists to focus their entire lives on building the best car possible. Chances are that the best car designers alive today are not designing cars at all. A replicator would open up the possibility for them.
Since you can duplicate everything, including food and shelter, the whole idea of working to survive goes out the window. If such a device existed, you would be free to do whatever you please with your time. For many, this would be designing amazing cars. For others it would be building amazing cars. Everyone has a hobby, and a replicator would enable everyone to pursue their hobbies; hobbies that are often out of reach of the average person today.
We despised Microsoft because they used their success to push sub-standard products on those who did not want to use them. So far, I have not received an important email attachment that requires an iPad to view it.
Apple, on the other hand, is quite adamant about making content available to everyone. If you don't like the iPad, your Linux system running on the SPARC architecture can do all of the same things.
In fact, Cocoa has a long history of openness. OPENSTEP/GNUStep was designed to be a multi-platform application framework, including support for Windows. Apple, after acquiring NeXT continued development on the framework under the name YellowBox which continued to support Windows. YellowBox eventually became Cocoa with the release of OS X. Cocoa did phase out support for other platforms at this time, but projects like Cocotron have picked up the slack.
iPhone OS carries on with the tradition. The bulk of the work to bring iPhone and iPad apps to other platforms is already done. If you want to build your iPhone app for MIPS/BSD, you are almost just a recompile away. Now let's see how long it takes you to build your Flash app for that platform.
The new SDK rules are harsh, no question. But Apple is pushing a platform designed to be open right from the start. From a developer's perspective it is frustrating to know that I cannot use tools that are better than Apple's own for development. From a user's perspective, however, I am quite excited at the possibilities of Cocoa Touch everywhere. I will be able to buy a device from Acme Inc. and developers will be just a recompile away from bringing their applications to my platform, without having to wait on Adobe to choose to include support.
We get excited about the idea of one platform for web development (HTML5). Why are we so fearful of one platform for native application development?
You can declare an integer and the compiler will enforce the type.
Integers are not Objective-C objects. You have to manipulate them at the C level, which is statically typed. If you use a first-class Objective-C object, like NSNumber, the compiler most certainly does not enforce the type.
Most windows GUI apps are written in statically typed languages like, C++, C#, Java etc.
As I mentioned, one of the most popular toolkits for writing Windows GUIs is Qt, which uses dynamically typed C++. If you choose a statically typed language to build your GUI it is not impossible to do, but you are probably using the wrong tool for the job.
writing large apps in a dynamically typed language like Javascript doesn't seem to be a good idea.
Well, the direct alternative to Cappuccino is Cocoa. Cocoa is implemented in Objective-C, a dynamically typed language. All of the large Mac and iPhone apps using Cocoa seem to manage just fine.
Qt is another popular choice for this type of development. Granted, C++ is not a dynamically typed language, but Qt implements a preprocessor to bring some dynamic-like features to the language.
Which brings us back to Javascript. Dynamic typing and user interfaces seem to go hand in hand. Even if you are not developing your application for the browser, there is a pretty good chance that you would be using a dynamically typed language anyway. That is not to say that static-typed interfaces are impossible. Just more complicated to implement.
Static typing may be useful for heavy lifting code that responds to events from the interface, but even with browser development you are not limited to just Javascript for those kinds of tasks.
ChromeOS appears to be following the application-centric metaphor, much like the iPad, albeit with less consistency since the apps are web pages without strict interface guidelines. I wouldn't expect anything revolutionary from Google that you didn't already see on the iPhone three years ago.
That is the trend, for sure. As more people find they cannot compete with just a degree, they will seek further education to become more marketable.
But eventually everyone will feel that a PhD is the only way to get a job and everyone will get a PhD. Then what? Stay in school until you are 65 years old completing even higher levels of education so that you can, one day, finally get a job?
It was a design job. Given that Apple's primary function is design, I assume it would be a good job. As I said, the description sounded quite interesting for someone looking for a job in that field.
Unless it is legally mandated by the profession that you meet certain educational requirements (i.e. lawyer, doctor, etc.), your education will not prevent you from getting jobs that you desire. The problem is that people have been conditioned to be ashamed about not having a degree and as a result do not have the confidence necessary to acquire said jobs, which then further perpetuates the idea in people's minds.
I recently saw a job ad from Apple that did actually state that no degree is required. I will add that it actually looked like an interesting position, not some kind of menial labor job. I think many people would consider a good job at Apple to be reasonably successful. Heck, there are people who have degrees that would dream to have a job like that.
The vast majority of college attending individuals are there because they have been told that the only way to successful employment is to become a college graduate. The fatal flaw in the logic is that when everyone has a degree, the degree no longer holds any prestige over any other job candidates. You are, again, competing against everyone else.
People need to stop equating education with employment. If you are honestly interested in a subject and feel academia is the only route to fulfil your desires, by all means, please do peruse further education in that area of study. If getting a great job is your goal, however, college is not the place to achieve that. The time would be better spent learning what it takes to get the job you desire.
Works fine Chrome and Safari via the <audio> tag. It works fine in Firefox through the <embed> tag.
I do not have IE installed to test, but I suspect it does fail. However, who cares? If users really want to use your TTS system, they will install another browser. They are going to have to install a native application to achieve the functionality no matter how you look at it.
Javascript is actually a pretty nice language. Browsers, on the other hand, suck. HTML web pages are a terrible place for application development, no question.
You, of course, never need a framework. You can do everything that Cappuccino does yourself. Frameworks are what make development happen, though. No matter what language you develop in, you are going to use a framework of some sort unless you are crazy like RMS and feel the need to write absolutely everything from the ground up.
You can use data: URIs to send the generated audio data to the browser's media player. Not exactly pretty, but it is possible. Wrap it in a sane API and it needs to be no more difficult to use than a native audio API.
Java was on the right track, but was, perhaps, a little ahead of its time. Instead of rendering HTML, the browser needs to provide a virtual machine environment in which applications can be downloaded over the network, much like how web applications are loaded today, but implemented in languages suitable for development (which can include, but should not be limited to, Javascript).
HTML does not need to go by the wayside, of course. If your goal is to display an HTML document within the browser, you can link to the appropriate rendering engine application. The cool thing about this is that you would have the power to instruct Internet Explorer, for example, to download the WebKit renderer in order to display your HTML. If your need is HTML with some wiz-bang feature that nobody has thought of yet, you can write or extend your own HTML rendering engine and have the browser use your engine instead.
Where Java failed is that it tried to mimic the way native applications were installed and executed. It provided no benefit to the end user over a native application. WebStart attempted to solve the problem to some extent, but still did not hit the mark. We do not need to replace the browser, we just need to rethink what the browser needs to be capable of. A full virtual environment accessible to developers through the browser opens up a world of possibilities.
I'm pretty sure the fact that the non-3G iPhone was not available for purchase outside of the US was the real deal breaker outside the US.
The fanboys accepted that they could live without copy and paste because they understood that developing features takes time, and it was better to use an early version of iPhone OS instead of having no iPhone to use at all.
If anyone actually said that the platform was better without copy and paste, they were clearly joking.
Name any OS, or computer software, for that matter. I don't see anyone jumping at the chance to use Windows 3.1 either.
This is a replicator we are talking about. You can replicate land, resources and energy.
The original MacOS was an amazing artistic achievement and reached great success in its time. It is still a fantastic work of art, but I do know of many people who would choose to use it over Snow Leopard. Newer generations laugh at the people who thought using MacOS was amazing. Refinements in technology and learning from the lessons learned all those years ago have allowed artists to create "better" art. Better in the sense of better being able to strike an emotional coord in the consumer using the most advanced knowledge given at the time of creation.
Music really is not any different. There are some amazing musical recordings from hundreds of years ago, but I do not see anyone putting them in their radio station rotation. 70s music has really only persisted as much as it has because baby boomers are afraid to let go of their youth. It is amazing art, it will always be amazing art, but like the original MacOS, it is outdated technology and is not able to have the same effect as modern works.
Stealing isn't even a good analogy to begin with. If we must use a car analogy, it is more like my friend allowing me to borrow his car over the weekend and GM taking me to court because they feel I should have purchased a brand new one instead.
A replicator would remove the need for a job completely, allowing hobbyists to focus their entire lives on building the best car possible. Chances are that the best car designers alive today are not designing cars at all. A replicator would open up the possibility for them.
No need to be rich when you can duplicate money.
Since you can duplicate everything, including food and shelter, the whole idea of working to survive goes out the window. If such a device existed, you would be free to do whatever you please with your time. For many, this would be designing amazing cars. For others it would be building amazing cars. Everyone has a hobby, and a replicator would enable everyone to pursue their hobbies; hobbies that are often out of reach of the average person today.
We despised Microsoft because they used their success to push sub-standard products on those who did not want to use them. So far, I have not received an important email attachment that requires an iPad to view it.
Apple, on the other hand, is quite adamant about making content available to everyone. If you don't like the iPad, your Linux system running on the SPARC architecture can do all of the same things.
In fact, Cocoa has a long history of openness. OPENSTEP/GNUStep was designed to be a multi-platform application framework, including support for Windows. Apple, after acquiring NeXT continued development on the framework under the name YellowBox which continued to support Windows. YellowBox eventually became Cocoa with the release of OS X. Cocoa did phase out support for other platforms at this time, but projects like Cocotron have picked up the slack.
iPhone OS carries on with the tradition. The bulk of the work to bring iPhone and iPad apps to other platforms is already done. If you want to build your iPhone app for MIPS/BSD, you are almost just a recompile away. Now let's see how long it takes you to build your Flash app for that platform.
The new SDK rules are harsh, no question. But Apple is pushing a platform designed to be open right from the start. From a developer's perspective it is frustrating to know that I cannot use tools that are better than Apple's own for development. From a user's perspective, however, I am quite excited at the possibilities of Cocoa Touch everywhere. I will be able to buy a device from Acme Inc. and developers will be just a recompile away from bringing their applications to my platform, without having to wait on Adobe to choose to include support.
We get excited about the idea of one platform for web development (HTML5). Why are we so fearful of one platform for native application development?
If by videos, you mean Flash videos, the iPhone and iPad already support that. And they will support multitasking in the coming months.
Integers are not Objective-C objects. You have to manipulate them at the C level, which is statically typed. If you use a first-class Objective-C object, like NSNumber, the compiler most certainly does not enforce the type.
As I mentioned, one of the most popular toolkits for writing Windows GUIs is Qt, which uses dynamically typed C++. If you choose a statically typed language to build your GUI it is not impossible to do, but you are probably using the wrong tool for the job.
Well, the direct alternative to Cappuccino is Cocoa. Cocoa is implemented in Objective-C, a dynamically typed language. All of the large Mac and iPhone apps using Cocoa seem to manage just fine.
Qt is another popular choice for this type of development. Granted, C++ is not a dynamically typed language, but Qt implements a preprocessor to bring some dynamic-like features to the language.
Which brings us back to Javascript. Dynamic typing and user interfaces seem to go hand in hand. Even if you are not developing your application for the browser, there is a pretty good chance that you would be using a dynamically typed language anyway. That is not to say that static-typed interfaces are impossible. Just more complicated to implement.
Static typing may be useful for heavy lifting code that responds to events from the interface, but even with browser development you are not limited to just Javascript for those kinds of tasks.
ChromeOS appears to be following the application-centric metaphor, much like the iPad, albeit with less consistency since the apps are web pages without strict interface guidelines. I wouldn't expect anything revolutionary from Google that you didn't already see on the iPhone three years ago.
Yes. Linux isn't ready for the desktop, but maybe it is ready for the netbook?
That is the trend, for sure. As more people find they cannot compete with just a degree, they will seek further education to become more marketable.
But eventually everyone will feel that a PhD is the only way to get a job and everyone will get a PhD. Then what? Stay in school until you are 65 years old completing even higher levels of education so that you can, one day, finally get a job?
It was a design job. Given that Apple's primary function is design, I assume it would be a good job. As I said, the description sounded quite interesting for someone looking for a job in that field.
Unless it is legally mandated by the profession that you meet certain educational requirements (i.e. lawyer, doctor, etc.), your education will not prevent you from getting jobs that you desire. The problem is that people have been conditioned to be ashamed about not having a degree and as a result do not have the confidence necessary to acquire said jobs, which then further perpetuates the idea in people's minds.
I recently saw a job ad from Apple that did actually state that no degree is required. I will add that it actually looked like an interesting position, not some kind of menial labor job. I think many people would consider a good job at Apple to be reasonably successful. Heck, there are people who have degrees that would dream to have a job like that.
The vast majority of college attending individuals are there because they have been told that the only way to successful employment is to become a college graduate. The fatal flaw in the logic is that when everyone has a degree, the degree no longer holds any prestige over any other job candidates. You are, again, competing against everyone else.
People need to stop equating education with employment. If you are honestly interested in a subject and feel academia is the only route to fulfil your desires, by all means, please do peruse further education in that area of study. If getting a great job is your goal, however, college is not the place to achieve that. The time would be better spent learning what it takes to get the job you desire.
Works fine Chrome and Safari via the <audio> tag. It works fine in Firefox through the <embed> tag.
I do not have IE installed to test, but I suspect it does fail. However, who cares? If users really want to use your TTS system, they will install another browser. They are going to have to install a native application to achieve the functionality no matter how you look at it.
Javascript is actually a pretty nice language. Browsers, on the other hand, suck. HTML web pages are a terrible place for application development, no question.
You, of course, never need a framework. You can do everything that Cappuccino does yourself. Frameworks are what make development happen, though. No matter what language you develop in, you are going to use a framework of some sort unless you are crazy like RMS and feel the need to write absolutely everything from the ground up.
You can use data: URIs to send the generated audio data to the browser's media player. Not exactly pretty, but it is possible. Wrap it in a sane API and it needs to be no more difficult to use than a native audio API.
Yes, it is a mess, no doubt. But the features are not missing.
Java was on the right track, but was, perhaps, a little ahead of its time. Instead of rendering HTML, the browser needs to provide a virtual machine environment in which applications can be downloaded over the network, much like how web applications are loaded today, but implemented in languages suitable for development (which can include, but should not be limited to, Javascript).
HTML does not need to go by the wayside, of course. If your goal is to display an HTML document within the browser, you can link to the appropriate rendering engine application. The cool thing about this is that you would have the power to instruct Internet Explorer, for example, to download the WebKit renderer in order to display your HTML. If your need is HTML with some wiz-bang feature that nobody has thought of yet, you can write or extend your own HTML rendering engine and have the browser use your engine instead.
Where Java failed is that it tried to mimic the way native applications were installed and executed. It provided no benefit to the end user over a native application. WebStart attempted to solve the problem to some extent, but still did not hit the mark. We do not need to replace the browser, we just need to rethink what the browser needs to be capable of. A full virtual environment accessible to developers through the browser opens up a world of possibilities.