OK, so maybe the guy/team doing the cutesy web comic are just too young or ignorant of things that occurred before their time, but the statement:
"People are watching and uploading videos, chatting with each other, playing web-based games⦠All these things didnâ(TM)t exist when the first browsers were created."
is either pure BS or just plain ignorance.
It's sort of obvious that they don't know anything about Usenet and the (in)famous alt.binary.* groups where pictures, music, programs, etc. were uploaded years before there were web browsers.
There were also several ways to chat via the Internet that existed prior to web browsers (Usenet groups, bulletin boards, services like AOL, GEnieNet, CompuServe, etc.).
It's sort of overstating the obvious that you couldn't play web-based games before there were web browsers (duh), but to imply that people weren't playing games over the internet before web browsers either indicates complete ignorance by confusing the Internet with the Web (which seems to be a common trend these days) or just plain, outright dishonesty.
Maybe Google needs to have its employees learn how to do the basic research associated with due diligence before it allows its employees to embarrass it with this sort of outright fabrication. But then again, it's all about the spin.......
Corporate Management wants to view all developers as being the same. Year in and year out, they spout the mantra of "replaceable cogs in the machine theory" that just doesn't apply to technology personnel. That is how Java managed to grow at the pace it did in spite of a number of deficiencies (C#/.Net grew the same way).
Sadly, nobody wants to look at better ways to do things because they're too hard and non-technical corporate management wants to dehumanize (and devalue) their workers.
Ever wonder why offshoring is so popular? If you can reduce anything to a manufacturing process, you can move it where labor is less expensive.
Unfortunately, nobody seems to want to rock that boat because they've been dumbed down to think there are no other jobs out there that might be better nor should they have the right to expect to be treated any differently.
just install Cygwin (http://cygwin.com) and learn the command line tools (awk, sed, etc.)? I realize it may require working at the command line (in the Bash shell), but it sounds more like you're doing text manipulation more than anything else. The 'built-ins' provide a very powerful set of tools that can be strung together with pipes, used in shell scripts, etc. Also look into regular expressions as they will most likely provide most of the punch that you'll need.
And for those who don't know Cygwin, it's a Unix-like environment that supports a number of standard 'Unix' tools.
OK, let's take it apart and see what's really going on here.....
The Sun page on the topic describes it as a scripting language (JavaFX Script) and a mobile platform (JavaFX Mobile). Hmmm, wow, a new scripting language. A new mobile platform. Ok, the latter might be interesting since J2ME is, and has always been a fragmented steaming pile serving tribute to Sun's efforts to sell more servers (heard that from a lot of ex-Sun guys, not just my observation).
So let's take a peek at JavaFX Mobile. Now according to their architectural diagram, they are using a Linux kernel with their JVM and a lot of frameworks and APIs. That aren't on any devices. And most likely not on any wireless operators' device roadmaps.
So the solution to the fragmentation of J2ME (which was really an effort to sell more servers, see above) is not to fix the J2ME spec, but to roll out a Linux-based stack (and play down its position as being the hardware "integration/management" layer) and play up the Sun "mobile" JVM as the cure for all of those nasty fragmentation issues.
With Java losing much of its "promise" due to broken "promises", I think I'll continue to pass.......
But your mileage (especially if you are a member of the Cult of Java religion) may vary....
So the answer would be no, you wouldn't recognize a modern mainframe if you saw one. Got horrible news for you, but clusters of commodity microcomputers can't replace mainframes for the things mainframes are good at. They can replace some of the functions that mainframes used to do (and have in many cases), but they can't replace them for all of the functions.
One of the sad things about the "microcomputer mentality" is the lack of understanding of mainframes, mainframe architectures, etc., because most people have never worked in that environment and have only heard gossip and urban myth about them. It's sort of like being afraid of something you don't know so you immediately classify it as bad/evil/etc.
I'm not sure that you correctly read and understood the point I was making.
To be clear, I understand *why* Java has primitives versus objects. My point was that it is *inaccurate* to refer to Java as a "purely object oriented language" and to provide an example of why it is not. I was not addressing or attacking *why* the decision was made to select that particular implementation. Like every other implementation decision, there are tradeoffs to be considered (especially in language design).
I can only assume that you took my post as an attack on Java (which it was not meant to be) and thereby missed the point of my reply. Therefore, I would disagree that my point was pointless and in fact would state that you replied to a perceived statement that I didn't make (which appears to be some sort of defense against a perceived attack on Java) thus demonstrating that your response was indeed pointless.
Point of information. Java is *not* a purely object-oriented language. Certain data types are not objects and have to be wrapped in an object (Integer leaps to mind, for example). Languages like Ruby and others treat *everything* as an object so if I wanted to write (in Ruby) a loop that iterated 5 times over printing a string (admittedly a simplistic operation, the body of the loop is not the issue) I could simply write:
5.times { print "Hello, world!\n" }
where I would write much more code to do the same in Java (not just the loop code, but I'd have to create a class, etc.).
Realistically, there are some tasks where Java is simply overkill and others where Java is not the correct technology choice just as there are tasks where Java is the correct choice. J2EE and J2ME have certainly not been the best poster children given the hideous complexity of J2EE and the lack of standardization of the J2ME JVM across embedded devices. Other frameworks (as mentioned in the article) have come along to address many of the J2EE issues, but the J2ME JVM seems to be a case of getting everyone to agree on the lowest common denominator that serves nobody's needs, and that's a shame.
I'm not a particular fan of Java because it doesn't fit my needs (and to be honest, never has), but I'd hardly declare it dead. Perhaps its more a case of Java is trying to find its niche in the world instead of trying to be the kitchen sink (which nothing does well at).
A lot of people set up applications (IM, screen eye-candy, etc.) to start during boot-up and that can lead to excessive delays in starting the computer. Also, if you know what you're doing you can fine-tune the services that automatically start when Windows boots up. Be warned that if you *don't* know what you're doing that you can brick your system pretty quickly. Other ways to speed up your boot times (especially if you've been running the same install for a longish period of time) is to reformat the hard drive and reinstall Windows. You'll be horrified at the amount of clutter that accumulates over time to slow things down (caveat: back up all data and have all of your application installation software handy as well as a day of movies/etc. while you are reinstalling).
My assumption is that you want to stay with Windows and not explore other operating systems (as has been suggested by other respondents), so I won't go down the path of suggesting the same.
How is deciding to enter consumer electronics after other players have already created the market niche innovative?
XBox360 competes with Nintendo and Sony who had already come to dominate the market (pushing earlier competitors like Atari to focus on software, not gaming consoles).
The Zune is yet another competitor to the iPod (like many others).
If this is any indication of the effects of the "fresh new blood" at Microsoft, I'd be worried if I were an executive there........
To be fair though, Microsoft has never been a first-mover and prefers to let others create the market before it enters and attempts to overpower.....
Another case of history attempting to repeat itself?
You know, statements like these are so obviously out of line that it becomes apparent that the new IT minister is getting paid by someone to make those statements. It's really hard to write it off as "he's a complete wanking idiot" (though he may well be). He's literally begging for a payoff for standing against the "evils of open source"..........
While buying SCO out would have ended the dispute, it's similar to rewarding a child for bad behavior. The only outcome will be to encourage other children to emulate the bad behavior.
I guess the Demopubs need to find something to say since they don't seem to be organized enough to have a platform for the next election. Sort of funny, the Dems complaining about a "stolen" election when Mayor Richard Daley was caught stuffing the ballot boxes during JFK's election (wonder why folks never mention that while they're complaining about losing an election). JFK even joked that his father Joe (who made his money as a bootlegger during Prohibition) told him to only buy the votes needed to win because he wasn't paying for a landslide". Oh well, meet the new boss, same as the old boss.
I agree that Apple's margins aren't thin, but the Mac cult of cool still has only single digits in worldwide market share http://www.macrumors.com/pages/2006/06/20060601164 133.shtml/. While it may be enough to keep Apple in the personal computer space for a while, if the numbers don't go up it may not make good business sense for them to stay in that segment. However, they've been in the low single-digits for some time so it may not matter much to the business right now.
OK, now that I've got your attention the reality of the situation is that there are some Windows applications that will not be ported to the Mac and emulation was, at best, a poor option. With the change of processors, Apple would be foolish to not provide a method that it controls to allow dual-booting Windows so that their users can have the applications that they need to use for work. I'm not aware of any great cries for commercial apps (outside of games) that most home users need that would be Windows-only. That situation usually occurs when people want to use their Macs at work.
In many ways, Apple is still primarily a hardware company so it should not be surprising to anyone that Bootcamp was released to enable Apple to increase its market share. Of course, with its success in small consumer electronics (yes, I mean the iPod) and the relatively thin margins on personal computers it would not be surprising to see Apple slowly back out of the PC market.
It does make one wonder when/if OS X will be enhanced (?) to work with commodity hardware or if it will ultimately be released as Open Source.
This question was boring 20 years ago. The short answer is to use a compiled binary where appropriate and use an interpreted language where appropriate. The difficult part is knowing when to use one vs. the other and in some cases it is not a black-or-white choice.
Of course, monolinguists will insist on writing everything in their language of choice because they don't want to learn any other language or the other language is "too hard" (or worse, isn't supported in their IDE of choice). The sad statement is that if this attitude persists, there will be nobody to write the VMs or JITs for the "non-native" languages.....
"It's that clients don't care about or understand those basic principles, and managers often don't see the ROI for such activities. Documentation and test suites are going to take significantly more time for initial development of the product. Yes, if the project is even remotely complicated, these efforts will reduce long-term development time of the product through fewer downstream bugs, easier integration of new features or other products, and less ramp-up time for new team members."
Oh, one other note. You mention that building documentation and test suites will take significantly more time. I agree that they take time. Of course, doing anything correctly takes more time than putting things together haphazardly to meet an unrealistic deadline. And it takes more time to debug and correct the deployed system/program/etc. after the fact so in reality more time is probably spent than if proper practices had been followed. Technologists need to suck it up and educate their management and have the courage to push back on unreasonable schedules.
As you note, it's a laborious process to change a corporate culture. The alternative is worse in the long-term for the business and the individual.
On the contrary, I've worked in corporate IT shops for decades and have seen very few shops that consistently do the right things. In fact, I'm often the one who insists on deploying version control, requirements management, change control, etc. to try to minimize the wasted cycles. Invariably the changes are met with skepticism and resistance until the first project is completed successfully because:
1) It's too much extra work
2) There's not enough time
3) It's too hard
It always struck me as being odd that there's never enough time to do it right once but there's always time to do it over several times.
You mention that management's lack of understanding is an issue, and I've encountered that as well. However, very few of the developers I've worked with have displayed any interest in commenting their code, building test harnesses, etc. and would rather just bang out code. It's a sad statement, really, when you look at the state of the schlock, er, art. However, I can't fix the world, only comment on the parts I see.
Oddly enough, it seems that we agree that there are problems.....
Nah, I haven't even started trolling and didn't even intend it as a troll. If I was trolling there would be no doubt on anyone's part.:-)
I notice that the software engineering points weren't disputed, so I'll offer the following observations.
1) I didn't realize that HP paid that poorly. Thanks for tipping me off.:-) 2) I've heard the story. However, at some point cultures need to mature and move on (avoid the Peter Pan syndrome at all costs). 3) IT is a volatile industry, but I'm merely repeating the comments I've heard from current and former Amazon employees as well as following the number of job postings.
I wouldn't say, and didn't mean to imply that Amazon is a *bad* place to work, but the culture and practices don't appeal to me. Of course, I work for myself so my perspective may be somewhat skewed.
Soylent Green is the best thing since sliced bread. Where's HOME?
and nobody calls them on it.
OK, so maybe the guy/team doing the cutesy web comic are just too young or ignorant of things that occurred before their time, but the statement:
"People are watching and uploading videos, chatting with each other, playing web-based games⦠All these things didnâ(TM)t exist when the first browsers were created."
is either pure BS or just plain ignorance.
It's sort of obvious that they don't know anything about Usenet and the (in)famous alt.binary.* groups where pictures, music, programs, etc. were uploaded years before there were web browsers.
There were also several ways to chat via the Internet that existed prior to web browsers (Usenet groups, bulletin boards, services like AOL, GEnieNet, CompuServe, etc.).
It's sort of overstating the obvious that you couldn't play web-based games before there were web browsers (duh), but to imply that people weren't playing games over the internet before web browsers either indicates complete ignorance by confusing the Internet with the Web (which seems to be a common trend these days) or just plain, outright dishonesty.
Maybe Google needs to have its employees learn how to do the basic research associated with due diligence before it allows its employees to embarrass it with this sort of outright fabrication. But then again, it's all about the spin.......
Corporate Management wants to view all developers as being the same. Year in and year out, they spout the mantra of "replaceable cogs in the machine theory" that just doesn't apply to technology personnel. That is how Java managed to grow at the pace it did in spite of a number of deficiencies (C#/.Net grew the same way).
Sadly, nobody wants to look at better ways to do things because they're too hard and non-technical corporate management wants to dehumanize (and devalue) their workers.
Ever wonder why offshoring is so popular? If you can reduce anything to a manufacturing process, you can move it where labor is less expensive.
Unfortunately, nobody seems to want to rock that boat because they've been dumbed down to think there are no other jobs out there that might be better nor should they have the right to expect to be treated any differently.
Oh well, the future is bleak......
just install Cygwin (http://cygwin.com) and learn the command line tools (awk, sed, etc.)? I realize it may require working at the command line (in the Bash shell), but it sounds more like you're doing text manipulation more than anything else. The 'built-ins' provide a very powerful set of tools that can be strung together with pipes, used in shell scripts, etc. Also look into regular expressions as they will most likely provide most of the punch that you'll need.
And for those who don't know Cygwin, it's a Unix-like environment that supports a number of standard 'Unix' tools.
OK, let's take it apart and see what's really going on here.....
The Sun page on the topic describes it as a scripting language (JavaFX Script) and a mobile platform (JavaFX Mobile). Hmmm, wow, a new scripting language. A new mobile platform. Ok, the latter might be interesting since J2ME is, and has always been a fragmented steaming pile serving tribute to Sun's efforts to sell more servers (heard that from a lot of ex-Sun guys, not just my observation).
So let's take a peek at JavaFX Mobile. Now according to their architectural diagram, they are using a Linux kernel with their JVM and a lot of frameworks and APIs. That aren't on any devices. And most likely not on any wireless operators' device roadmaps.
So the solution to the fragmentation of J2ME (which was really an effort to sell more servers, see above) is not to fix the J2ME spec, but to roll out a Linux-based stack (and play down its position as being the hardware "integration/management" layer) and play up the Sun "mobile" JVM as the cure for all of those nasty fragmentation issues.
With Java losing much of its "promise" due to broken "promises", I think I'll continue to pass.......
But your mileage (especially if you are a member of the Cult of Java religion) may vary....
So the answer would be no, you wouldn't recognize a modern mainframe if you saw one. Got horrible news for you, but clusters of commodity microcomputers can't replace mainframes for the things mainframes are good at. They can replace some of the functions that mainframes used to do (and have in many cases), but they can't replace them for all of the functions.
One of the sad things about the "microcomputer mentality" is the lack of understanding of mainframes, mainframe architectures, etc., because most people have never worked in that environment and have only heard gossip and urban myth about them. It's sort of like being afraid of something you don't know so you immediately classify it as bad/evil/etc.
I'm not sure that you correctly read and understood the point I was making.
To be clear, I understand *why* Java has primitives versus objects. My point was that it is *inaccurate* to refer to Java as a "purely object oriented language" and to provide an example of why it is not. I was not addressing or attacking *why* the decision was made to select that particular implementation. Like every other implementation decision, there are tradeoffs to be considered (especially in language design).
I can only assume that you took my post as an attack on Java (which it was not meant to be) and thereby missed the point of my reply. Therefore, I would disagree that my point was pointless and in fact would state that you replied to a perceived statement that I didn't make (which appears to be some sort of defense against a perceived attack on Java) thus demonstrating that your response was indeed pointless.
Have a nice day.
Point of information. Java is *not* a purely object-oriented language. Certain data types are not objects and have to be wrapped in an object (Integer leaps to mind, for example). Languages like Ruby and others treat *everything* as an object so if I wanted to write (in Ruby) a loop that iterated 5 times over printing a string (admittedly a simplistic operation, the body of the loop is not the issue) I could simply write:
5.times { print "Hello, world!\n" }
where I would write much more code to do the same in Java (not just the loop code, but I'd have to create a class, etc.).
Realistically, there are some tasks where Java is simply overkill and others where Java is not the correct technology choice just as there are tasks where Java is the correct choice. J2EE and J2ME have certainly not been the best poster children given the hideous complexity of J2EE and the lack of standardization of the J2ME JVM across embedded devices. Other frameworks (as mentioned in the article) have come along to address many of the J2EE issues, but the J2ME JVM seems to be a case of getting everyone to agree on the lowest common denominator that serves nobody's needs, and that's a shame.
I'm not a particular fan of Java because it doesn't fit my needs (and to be honest, never has), but I'd hardly declare it dead. Perhaps its more a case of Java is trying to find its niche in the world instead of trying to be the kitchen sink (which nothing does well at).
But, your mileage may vary......
Would you recognize a mainframe if you saw one?
A lot of people set up applications (IM, screen eye-candy, etc.) to start during boot-up and that can lead to excessive delays in starting the computer. Also, if you know what you're doing you can fine-tune the services that automatically start when Windows boots up. Be warned that if you *don't* know what you're doing that you can brick your system pretty quickly. Other ways to speed up your boot times (especially if you've been running the same install for a longish period of time) is to reformat the hard drive and reinstall Windows. You'll be horrified at the amount of clutter that accumulates over time to slow things down (caveat: back up all data and have all of your application installation software handy as well as a day of movies/etc. while you are reinstalling).
My assumption is that you want to stay with Windows and not explore other operating systems (as has been suggested by other respondents), so I won't go down the path of suggesting the same.
Of course, your mileage may vary....
How is deciding to enter consumer electronics after other players have already created the market niche innovative?
XBox360 competes with Nintendo and Sony who had already come to dominate the market (pushing earlier competitors like Atari to focus on software, not gaming consoles).
The Zune is yet another competitor to the iPod (like many others).
If this is any indication of the effects of the "fresh new blood" at Microsoft, I'd be worried if I were an executive there........
To be fair though, Microsoft has never been a first-mover and prefers to let others create the market before it enters and attempts to overpower.....
Another case of history attempting to repeat itself?
You know, statements like these are so obviously out of line that it becomes apparent that the new IT minister is getting paid by someone to make those statements. It's really hard to write it off as "he's a complete wanking idiot" (though he may well be). He's literally begging for a payoff for standing against the "evils of open source"..........
If the data center becomes extinct, so will most of Sun's revenues. Since Sun is busy "open sourcing" all of its software, what would it have left?
While buying SCO out would have ended the dispute, it's similar to rewarding a child for bad behavior. The only outcome will be to encourage other children to emulate the bad behavior.
I guess the Demopubs need to find something to say since they don't seem to be organized enough to have a platform for the next election. Sort of funny, the Dems complaining about a "stolen" election when Mayor Richard Daley was caught stuffing the ballot boxes during JFK's election (wonder why folks never mention that while they're complaining about losing an election). JFK even joked that his father Joe (who made his money as a bootlegger during Prohibition) told him to only buy the votes needed to win because he wasn't paying for a landslide". Oh well, meet the new boss, same as the old boss.
(And I, for one, ignore our new overlords)
I agree that Apple's margins aren't thin, but the Mac cult of cool still has only single digits in worldwide market share http://www.macrumors.com/pages/2006/06/20060601164 133.shtml/. While it may be enough to keep Apple in the personal computer space for a while, if the numbers don't go up it may not make good business sense for them to stay in that segment. However, they've been in the low single-digits for some time so it may not matter much to the business right now.
I can't believe this is even an issue.
People!!!!!! Get up and walk away from your keyboard and get some freaking sunshine!!!!!!
There's this really cool thing out there in the real world called having a life..........
Sheesh!
to Apple getting out of the PC market.
OK, now that I've got your attention the reality of the situation is that there are some Windows applications that will not be ported to the Mac and emulation was, at best, a poor option. With the change of processors, Apple would be foolish to not provide a method that it controls to allow dual-booting Windows so that their users can have the applications that they need to use for work. I'm not aware of any great cries for commercial apps (outside of games) that most home users need that would be Windows-only. That situation usually occurs when people want to use their Macs at work.
In many ways, Apple is still primarily a hardware company so it should not be surprising to anyone that Bootcamp was released to enable Apple to increase its market share. Of course, with its success in small consumer electronics (yes, I mean the iPod) and the relatively thin margins on personal computers it would not be surprising to see Apple slowly back out of the PC market.
It does make one wonder when/if OS X will be enhanced (?) to work with commodity hardware or if it will ultimately be released as Open Source.
This question was boring 20 years ago. The short answer is to use a compiled binary where appropriate and use an interpreted language where appropriate. The difficult part is knowing when to use one vs. the other and in some cases it is not a black-or-white choice.
Of course, monolinguists will insist on writing everything in their language of choice because they don't want to learn any other language or the other language is "too hard" (or worse, isn't supported in their IDE of choice). The sad statement is that if this attitude persists, there will be nobody to write the VMs or JITs for the "non-native" languages.....
Of course, your mileage may vary.....
Of course, I'm in <fnord> group 3 </fnord> (never mind the fnords, nothing to see there, just move along...)
OK, so why does it not surprise me that a Swiss company is the first to do this (at least in public)?
"It's that clients don't care about or understand those basic principles, and managers often don't see the ROI for such activities. Documentation and test suites are going to take significantly more time for initial development of the product. Yes, if the project is even remotely complicated, these efforts will reduce long-term development time of the product through fewer downstream bugs, easier integration of new features or other products, and less ramp-up time for new team members."
:-)
Oh, one other note. You mention that building documentation and test suites will take significantly more time. I agree that they take time. Of course, doing anything correctly takes more time than putting things together haphazardly to meet an unrealistic deadline. And it takes more time to debug and correct the deployed system/program/etc. after the fact so in reality more time is probably spent than if proper practices had been followed. Technologists need to suck it up and educate their management and have the courage to push back on unreasonable schedules.
As you note, it's a laborious process to change a corporate culture. The alternative is worse in the long-term for the business and the individual.
But.........
Your mileage may vary.
On the contrary, I've worked in corporate IT shops for decades and have seen very few shops that consistently do the right things. In fact, I'm often the one who insists on deploying version control, requirements management, change control, etc. to try to minimize the wasted cycles. Invariably the changes are met with skepticism and resistance until the first project is completed successfully because:
1) It's too much extra work
2) There's not enough time
3) It's too hard
It always struck me as being odd that there's never enough time to do it right once but there's always time to do it over several times.
You mention that management's lack of understanding is an issue, and I've encountered that as well. However, very few of the developers I've worked with have displayed any interest in commenting their code, building test harnesses, etc. and would rather just bang out code. It's a sad statement, really, when you look at the state of the schlock, er, art. However, I can't fix the world, only comment on the parts I see.
Oddly enough, it seems that we agree that there are problems.....
Nah, I haven't even started trolling and didn't even intend it as a troll. If I was trolling there would be no doubt on anyone's part. :-)
:-)
I notice that the software engineering points weren't disputed, so I'll offer the following observations.
1) I didn't realize that HP paid that poorly. Thanks for tipping me off.
2) I've heard the story. However, at some point cultures need to mature and move on (avoid the Peter Pan syndrome at all costs).
3) IT is a volatile industry, but I'm merely repeating the comments I've heard from current and former Amazon employees as well as following the number of job postings.
I wouldn't say, and didn't mean to imply that Amazon is a *bad* place to work, but the culture and practices don't appeal to me. Of course, I work for myself so my perspective may be somewhat skewed.
Unlike others, I appreciate wry humor. ;-)