Here is my $.02. If you don't stay current with languages, you may be able to find niche employment, but at some point, your fun will most likely end. Some languages are, of course, timeless (C++), but nobody in their right mind would choose to use VB or Delphi over
Part of this is pure marketing psychology. Apple has released this product first (we don't count the lame MSFT tablet PC), therefore, they have set the expected price and feature set. From now on, everyone expects a tablet to cost $499.00, expects it to work all the time, and be simple to use. Price too far above that, and it's to expensive. Price too far below that, and it must be a "cheap" product. The same thing happened with the iPod years ago. Unless there is an Android tablet that offers something significantly better, I think it will be hard for them to compete (outside of the rebel nerd crowd of course).
Hmm. Unless Ballmer said it. He has a habit of putting his foot in this mouth.
So now the player can be nice and slow and want to update my system just as much or more!
Perl and Python are my favorite. If you want a single file solution, you could use Py2Exe or the Perl Development Kit (not free, but worth the $$$) from ActiveState to compile your script to a single exe, requiring nothing else. I have done this even with Perl scripts using Tk gui's. This allows you to stay in the easy scripting world, and still get the portability of a compiled c++ binary.
Looks good in 3.1 Beta
This is like saying that when you have a BMW, you pay a special BMW tax. We could all buy used Chevy Novas an replace them every year and half, but I fail to see how that would really be cheaper in the long run if your time an grief are worth anything to you.
Clearly, as the inventors of the Interweb, Wikipedia, and Flash based pornography, we Americans have cemented our status as the universally acceptable common language providers... If you want bilingual, try learning Perl/Python in addition to your main language.
Since you cannot copyright dead skin that falls off your body, and Twitter posts are about as useful as that...
Clearly, more applications need to be (correctly) multi-threaded. I'm not talking about World of Warcraft or CMU calculation projects here, but more common applications like IE, Office, etc. As polished as Microsoft software is (shielding head against thrown fruit), often the user is still forced to wait while UI rendering is waiting on some other task (Outlook you fat slow pig). Every time the Visual Studio IDE turns white while loading my project, every time Outlook is half rendered and has locked all my input devices, every time some office app "appears" to be idle, yet is locking my mouse (AAARRRGH!), I am reminded of how little (or poorly written) multi-threading there is for mainline software. I assure my boss that my cubicle produces more than just profanity and desk banging.... I have noticed that Mac software appears to be quite a bit better in this regard (shielding head from raging mac haters from earlier posts), as I am not often pounding my fist on the table while using my Mac. I'm not sure if a better architecture, or more "thread aware" programming is the cause.
We mac users just don't have to reboot as often, so we don't get a lot of pent up rage
All the frustrations of a Windows server, now in a super-sized package!
- Web applications do not cost less to develop, or take less time. Anyone who thinks this has never developed anything of substance.
- Client horsepower is not always as "cutting edge" as Microsoft would like you to believe. Contrary to popular belief, employers do not retrofit each employee with a new Vista twelve core laptop every other week, thus using server horsepower is the great equalizer.
- Deploying standard applications is quite problematic in any environment of any size. I deal with it daily in hospitals with thousands of employees. If only Windows had something like, "apt-get install FooWidet"... In this scenario, a web application is greatly appreciated by all. Let's also talk about the continuing cost of software upgrades for deployed applications. This can be equal to, or even more than the initial cost of the installation. For web applications upgrades, your per client cost can be as low as 0.
- Standard applications tend to use fat communication. Databases are contacted on all manner of ports, huge recordsets are retrieved, etc. Windows blocks all the fun ports you would like to use, so do firewalls, routers, etc. It is easy to get simple HTTP anywhere.
- Flash/Flex/Silverlight are not really web applications per say. Their environment happens to be housed inside a browser window, but they are running locally. They have the deployment/access benefits of web applications, but the memory/processor usage issues of standard applications. Their biggest downfall is the strict security sandbox they must run in, which really limits what you can do with them. Even so, I think this is the future of web applications, since I can make my application behave like (mostly) a standard application without the silly amount of effort required when trying to make a regular web application do the same.
Unionizing is the surest way to make sure your job gets out-sourced to China. If you don't believe me, ask the steel workers. We now ship ore to China, have them smelt it, and send it back to us, and all of this is still cheaper than paying union steel workers! Also, point me to this cheap H1B labor. My H1B's make 75-85K....