for AV enthusiasts, everyone knows a PS3 plays blurays. It plays them remarkably well apparently, and as its cheaper than some dedicated bluray players, there's a lot of people who've bought one just for that - not to play games on it at all.
I think home cinema choice uses one as their reference BD player for reviews.
hehe. Still, I think you do miss my point somewhat.
1. maximising free ram usage is a fallacy. If you have the entire system to yourself, then it is fine, suck up as much as possible. However, our systems do not have that luxury - I have several apps running, and if each one is written to use RAM like its going out of fashion, they'll only end up starving each other for resources. the GC will be kicking in much more often, or worse case - you'll be swapping. I understand the theory, but the practice is quite different. There's another aspect to this that people forget - RAM is not a free resource, it costs quite a bit to copy that data in and out, which we see with today's monumentally slow startup times.
Performance. I know script languages are crap, but when you have a situation where a slow tool is acceptable, you'd be right to use it. UI is a slow task - human reactions are dreadful in computer terms, so if the UI can be written in script and it performs fast enough, then you'd be choosing the right tool to write your UIs with it as hopefully development time would be insignificant.
Java does not scale, absolutely not, and enterprise java is really a synonym for 'horrible crap' (think Siebel, or similar examples). The examples you give might use some java, but ebay and Google use c/c++ code for their 'good stuff' even if they give them a 'user friendly' java SDK for devs to work with. I'll check out Vuze and see if its any good, but so far the best java app I've seen is still Hudson with its HTML-based UI.
As it is, I am a very competent developer. Maybe that's why I can code stuff up in C++ and not have to fall back on the 'easy' stuff like Java and C#. As it is, I think I do more C# now but its not fun.. the Ruby on Rails stuff I'm getting into though.. now that is fun.
The arguments implying C++ is the one true language are produced only by those lifelong code monkeys
spoken like a true businessman. Let me know how happy you'll be when your job gets sent to India because coding has become so simple the cheapest of the unskilled can do it.
Those guys you libel are actually code professionals, not monkeys. you'll find they want to do a good job, not an adequate or substandard one just because your PHB is counting beans. You'll see why the performance issues are an issue if you ever spoke to your users and saw them struggling with the enterprise Java software that is way slower than the benchmark figures say it should be.
I've never really seen a decent Java application that didn't suck up RAM, perform sluggishly, or scale dreadfully. Hudson did make me question my thought that Java was a total pile of bull, but even then, I've seen the same kind of app written in PHP or Ruby or Perl that performs the same web-UI task just as well. That makes me think that you're right... the right tool for the job, and that's never going to be Java. If I want fast code, it'll be C/C++. If I want quick development, it'll be a script language. Java falls into the "neither" camp. So I wonder why you still use it if you stand by your arguments:)
I used to have a box with a 2x 3Ghz CPU. Now I have a box with a single 1.2 Ghz CPU.
the box has gotten quite a bit smaller too, which is handy as the old PC wouldn't fit in my pocket, or make phone calls.
The Microsoft approach of expecting faster hardward to make up for software inefficiencies no longer applies. We all need to remember that and code better, rather than trying to make development simple enough that your job can be outsourced:)
Its a bit more complex than that. My brief and slightly non-technical explanation goes:
GC is faster for allocations - all it does is grab another block at the end of the heap and say "here you go". That's about as fast as memory allocation can get and is comparable to allocating off the stack (where you just increment the stack pointer register).
The problem starts to show when you need to de-allocate memory. Obviously, the GC doesn't bother doing this very often and is why benchmarks can show stunning performance for a GC, but then benchmarks are often like that. When the GC needs to fre up a load of memory, it locks the heap, then searches through the allocated blocks looking for pointers to them, marks the ones that are not pointed to and then at the end, freers them up. It then copies the memory that is currently allocated down to close up holes that were freed in the heap, so it can resume its allocation-by-giving awya blocks from the end.
This is a rather slow process (ignore the idiots who say that GC collections take next to no time, they're hyping up their preferred technology). Its so slow that the generational GC was invented. This effectively is 3 GCs in 1, partitioning the heap so that the run-through-the-heap collection phase only has to be applied to a smaller set of blocks.
Now with traditional heaps, the allocation and de-acllocation occurs regularly so the performance hit (which is roughly the same as the overall GC hit) is spread out continuously. This means you see slower performance.. until you get to the GC collect phase when things even themselves out. Except there is a performance hit - as you allocate and free blocks you often don't allocate the same sized blocks as you freed, so the memory system has to 'walk the heap' looking for a free block that is big enough for you. This means that the longer you run your program, the longer it takes as you will have a more fragmented heap. There are techniques to solve this - using multiple fixed-blocksize heaps means freeing a block really will be big enough for another allocation so you only have to remember the position of the first free block, but this costs more memory (not that this is an issue if you're comparing to a GC that is inefficient with memory usage too!)
Now, the place where the GC does shine is down to the language that uses it. In a GC languages like java or C#, when you allocate an object it comes off the heap. In a non-GC language like C++, you can still allocate off the heap, but you generally allocate on the stack - this is faster than the GC, but when you leave your functions and the stack loses all local variables, if you want to keep that object, you have to copy it. These repeated copies can slow things down a lot (eg in debug versions of the STL), which is why most compilers optimise the copy away (ie instead of allocate an object on the stack, then copy it to another location further down the stack, it allocates it directly where it would have been copied to). In a GC language, this copy step is not applicable as you only have a pointer to move around the place. Sometimes this means large objects are faster to deal with.
In the end though, it depends entirely on the programmer's use of memory and language features. A junior dev using C# can copy a huge object all over the place and not notice any performance issues. The same guy using C++ would see huge hit to perf. If he had more knowledge of when to use the stack and the heap, then he could allocate said object more appropriately and get the same perfomance as C#. Similarly, the same coder in C# could too easily create lots and lots of 'temporary' objects on the heap that a C++ dev wouldn't do, thus making his C# app much slower than the C++ guy.
So.. GC.. is it bad or not? Not in itself. Is it a magic bullet to solve all memory issues.. not in itself.
Generally I prefer non-GC languages as there is 1 truly important aspect that is often glossed over:
you can, its just that both dlls need to use the same CRT subsystem. ie. its no good allocating in one dll using the debug CRT and then releasing in another using the release CRT.
I guess they could remove one or the other CRTs, like you get with COM or.NET; or you could build everything with the same CRT; or you could keep the "best practice" method of providing a release routine everywhere you provide an allocation routine. The latter is very sensible as it helps you keep group operations on your data objects in the same place.
As you will learn, Microsoft and Visual Studio, specifically, are re-doubling efforts to take part in the native code renaissance. Accordingly, you may see advances in our native tooling that the team thinks of as "C++ first" -> VC++ will extend its capabilities on a faster pace than it has ever done so in the past, at times surpassing the other VS languages/runtimes, in specific scenarios
C++ is undergoing a renaissance at Microsoft. Someone said that it makes sense as the platform team at MS doesn't like.NET and so doesn;t really give a fig what the dev team is trying to push. I guess the Mobile team is pushing Silverlight but no-one cares about them either. It sounds about right knowing Microsoft's huge staff and the infighting between teams.
I welcome a returnto C++ on Microsoft platform,.NET is nice enough but it always felt a bit 'VB' to me, and besides, I have a huge amount of code to keep going (can't afford to rewrite it all). In any case, it does appear MS is moving away from its ".NET only, everywhere" approach to a more heterogenous development platform. I'm sure C# will be in there somewhere, even if WPF and Silverlight are relegated to the attic to keep VB and Foxpro company.
So yeah, everything just keeps going round and round.
chances are he's just another frustrated genius type, pissed off that everyone else couldn't (or he thinks, wouldn't) see everything his way.
Often such arrogance goes hand in hand with hubris as he comes up with amazing stuff that sounds great, perfect in theory, but fails somewhat in the real world where we all know imperfection is good enough.
Maybe he was kicked out, maybe he left. either way, now's his chance to do all that wondrous stuff he dreams of. Slating Google is just unproductive.
no, most users *didn't* install Silverlight. That was most of the problem. If everyone had installed it, then it would have become a flash-killer (well, for Windows platforms at least).
But they didn't and Microsoft was left with a flash-like plugin that couldn't be used by most web devs as they'd be limiting their audience to 60% (microsoft's own figures) of all web users.
Petersenâ(TM)s letter demanded that WPF and Silverlight apps enjoy the same level of integration with Windows 8 tiles and any future Windows app store as apps based on HTML5. He asked that Microsoft publicly commit to its legacy development standards.
Woot! Petersen demands Microsoft publicly commit to VB6 and MFC.
Of course that's not what he means, he means he wants MS to commit to *his* preferred technology. I guess he was there when the VB6 boys were unhappy, standing shoulder-to-shoulder with them as the vicious mill-owner Microsoft took their favourite technology and smashed it in front of them.
Sure, Silverlight will run well on ARM chips. So what.
Its not good enough to run on ARM chipset if it cannot run on Android or iOS or Blackberry. Silverlight is not as nearly cross-platform as they make out, unless you only count Windows platforms and browsers running plugins on Windows platforms.
I think they're making correct assumptions. Microsoft saw Silverlight as a flash-replacement, only it didn't replace flash at all. So now they're lumbered with development costs for smomething that competes directly with HTML5. so like most businesses, they're rationalising development effort on 1 of those internally-competeing products and have chosen HTML5. It makes sense as that has a far greater reach. Maybe years ago, they had to develop Silverlight as HTML didn't have the capabilities they needed. They must see that this is different today, and that (my assumption) it will only be enhanced further in the future.
The Silverlight devs are just pissed that they chose the wrong technology. They'll have to learn new stuff all over again.. which is the same as the rest of us.
most of the password generators do have randomisation, usually asking the user to bash the keyboard or jiggle the mouse. How random and/or useful that turns out to be is debatable.
I meant, and I apologise for getting this wrong, that the 'you' didn't actually refer to you specifically. I meant 'you' in the wider sense, more in the 3rd person.. like this:
I guess it used to be ok when they only did this kind of thing to black people....
But now they've started doing it to people like you, its a whole different matter isn't it.
I think everyone needs to take this as a reminder about supporting the fundamental liberties (not necessarily all the bleeding-heart ones) of everyone, including those groups that you don't belong to.
its technically forced labour anyway - we force the little buggers to learn stuff so that when they grow up and are let out of the pris^H^H^Hschool system, they will be productive and make things that will keep the economy rolling and basically fund our lazy lifestyles in our old age.
If we couldn't do that, then we'd have to invent a lifeforce-sucking machine to keep us all youthful from their essences. Remember that next time you say school sucks!
amen. but lets go one further and make an International version and forget the US one. Tell the USA that they can stick their patents in their software and keep them... and that they can use our nice, un-encumbered software if they can bear the humiliation of using something not invented here.:)
Seriously, I like the Apache Foundation. There now no need for the Document Foundation at all, they should shut up shop and say "hah! we made you do it Larry, now we're going back to business as usual as if you never got involved". To keep the DF around to maintain a fork just to piss on Ellison is egotistical and stupid. Fold and make 1 Apache-OO.
Now... who's going to start the Data Foundation.....
I understand that some great video processing apps are actually a bundle of little apps all stuck together under a fancy GUI.
I know a lot of 'big apps' are also a lot of little apps stuck together under the covers too - though they are sometimes called plugins rather than apps, sometimes they are external exes and sometimes dlls.
I know a lot of huge applications are actually a lot of modules stuck together too. Some dlls, some exes again.
Best practice software engineering is about dividing your problem space up into manageable chunks. This was the driving force of modular, structured programming, object-orientation, componentization and now service-oriented-architecture.
Obviously you don't.
However, I know you think that CentOS is a 'ripoff'. Strange that people say that about RedHat - after all, they took the very free beer Linux kernel, and all the free beer GNU userspace apps and all the other free beer apps written for Linux, wrapped them all up, added some artwork and started selling it as if it was theirs all along! Nobody really minds that much as they contribute back to the Linux community, but then no-one should complain when CentOS takes the free beer Linux system, and releases it without the proprietary bits RedHat added. In many respects, CentOS acts as a introduction to RedHat for many people - I used to run CentOS for my linux servers, and now I sold rather a lot of RedHat licences to the government. Everyone turns out to be happy, assuming they leave the vitriolic bile you spout alone.
I'm not sure that making more money than the GDP of a small country counts as beneficial to society as a whole, Microsoft certainly hasn't made Windows 1000x better than Ubuntu, say, despite having thousands of times more profit then them. I'm Shuttleworth doesn't much care that he made so much money in the tech boom that he can afford to give some of it away to Canonical. See, some people aren't driven by a mindless urge to make more money even when they have more than they could ever spend. Maybe Microsoft's shareholders can tell you how that feels.
Microsoft spends vast sums of money on R&D (and doesn't really get much for it, not if they had to spend another $8.5bn for Skype when their R&D dept could surely have built one to go with the VoIP clients they already have) and polish, though when I go to Display properties in W7, I can't seem to get Explorer's background to change colour. Maybe they need to spend even more money polishing!
What you will find though is the Linux apps tend to be pretty damn solid in comparison to the Windows ones, but they don't tend to be pretty. Server side, admin type apps where a pretty GUI doesn't really matter if you have a text file to configure it. Windows tends to be very pretty (most of the time) but flaky. I guess that's an aspect of what you're getting - if you focus on pretty GUI, you will not spend as much effort on the back end, and vice-versa. I also guess that's why the majority of all the web, internet, email and embedded runs on Linux. you just don't get to hear how many because there's no single company like Microsoft to release sales figures for it.
Incidentally, I installed CentOS on a server the other day (needed a new file server). It asked me where I was and what keyboard I was using and then chunked away until it was done. It didn't even bother to download drivers as they were bundled and patching was a simple 'yum update' run afterwards (I like to do that myself, good practice when faced with patch tuesday on a dozen Windows servers that cannot be broken by an update, well - not again)
Anyway, rant away, it doesn't matter. The future is mobile apps, even Microsoft thinks that which is why they are spending such bogglingly large sums on Windows Phone.
1. no need to do a different licence. RedHat and Canonical make enough money with the current 'free as in beer' licences.
2. The small apps model is the best anyway, because they are easily maintainable. You argue against yourself here as this approach is exactly what the big commercial apps need anyway! And besides, little apps is what lives on mobile phones so expect to see much more of them in the near future.
a 'Make $$$ Fast' app.. probably but how about something like 'Bubble Boinger'... would you be confident that *didn't* contain malware.. 'cos if you can't be sure, that's pretty much half the apps in the Market off limits to you.
Sure, if you put lots of security walls in place, the user can still be tricked into saying yes. ("restart app to apply update" says one, you say 'yes', oops. Not all malware asks 'install malware' in their popups).
So you still need to fall back on security measures like AV scanners and system monitors. I think it would also be useful to decline certain parts of app requests - Bubble Boinger doesn't need to make calls or send texts, but sometimes they ask for such. If you could prevent those parts from being available to an app, it might make things more secure.
only some of them left... the others were fired by Ballmer to get rid of the competition.
They say the replacement will be Kevin Turner - ex Mr Wallmart. It sounds about right, companies go through phases:
run by their owners run by their managers run by their accountants run by their administrators.
Ballmer is the manager, KT is the next one along. He'll cut the badly-performing divisions, maybe spin them off, and that can only be a good thing. Maybe some of them will survive without the free influx of Windows and Office cash!
perhaps they asked the wrong people.
for AV enthusiasts, everyone knows a PS3 plays blurays. It plays them remarkably well apparently, and as its cheaper than some dedicated bluray players, there's a lot of people who've bought one just for that - not to play games on it at all.
I think home cinema choice uses one as their reference BD player for reviews.
hehe. Still, I think you do miss my point somewhat.
1. maximising free ram usage is a fallacy. If you have the entire system to yourself, then it is fine, suck up as much as possible. However, our systems do not have that luxury - I have several apps running, and if each one is written to use RAM like its going out of fashion, they'll only end up starving each other for resources. the GC will be kicking in much more often, or worse case - you'll be swapping. I understand the theory, but the practice is quite different. There's another aspect to this that people forget - RAM is not a free resource, it costs quite a bit to copy that data in and out, which we see with today's monumentally slow startup times.
Performance. I know script languages are crap, but when you have a situation where a slow tool is acceptable, you'd be right to use it. UI is a slow task - human reactions are dreadful in computer terms, so if the UI can be written in script and it performs fast enough, then you'd be choosing the right tool to write your UIs with it as hopefully development time would be insignificant.
Java does not scale, absolutely not, and enterprise java is really a synonym for 'horrible crap' (think Siebel, or similar examples). The examples you give might use some java, but ebay and Google use c/c++ code for their 'good stuff' even if they give them a 'user friendly' java SDK for devs to work with. I'll check out Vuze and see if its any good, but so far the best java app I've seen is still Hudson with its HTML-based UI.
As it is, I am a very competent developer. Maybe that's why I can code stuff up in C++ and not have to fall back on the 'easy' stuff like Java and C#. As it is, I think I do more C# now but its not fun.. the Ruby on Rails stuff I'm getting into though.. now that is fun.
The arguments implying C++ is the one true language are produced only by those lifelong code monkeys
spoken like a true businessman. Let me know how happy you'll be when your job gets sent to India because coding has become so simple the cheapest of the unskilled can do it.
Those guys you libel are actually code professionals, not monkeys. you'll find they want to do a good job, not an adequate or substandard one just because your PHB is counting beans. You'll see why the performance issues are an issue if you ever spoke to your users and saw them struggling with the enterprise Java software that is way slower than the benchmark figures say it should be.
I've never really seen a decent Java application that didn't suck up RAM, perform sluggishly, or scale dreadfully. Hudson did make me question my thought that Java was a total pile of bull, but even then, I've seen the same kind of app written in PHP or Ruby or Perl that performs the same web-UI task just as well. That makes me think that you're right... the right tool for the job, and that's never going to be Java. If I want fast code, it'll be C/C++. If I want quick development, it'll be a script language. Java falls into the "neither" camp. So I wonder why you still use it if you stand by your arguments :)
but they're not getting faster.
I used to have a box with a 2x 3Ghz CPU. Now I have a box with a single 1.2 Ghz CPU.
the box has gotten quite a bit smaller too, which is handy as the old PC wouldn't fit in my pocket, or make phone calls.
The Microsoft approach of expecting faster hardward to make up for software inefficiencies no longer applies. We all need to remember that and code better, rather than trying to make development simple enough that your job can be outsourced :)
Its a bit more complex than that. My brief and slightly non-technical explanation goes:
GC is faster for allocations - all it does is grab another block at the end of the heap and say "here you go". That's about as fast as memory allocation can get and is comparable to allocating off the stack (where you just increment the stack pointer register).
The problem starts to show when you need to de-allocate memory. Obviously, the GC doesn't bother doing this very often and is why benchmarks can show stunning performance for a GC, but then benchmarks are often like that. When the GC needs to fre up a load of memory, it locks the heap, then searches through the allocated blocks looking for pointers to them, marks the ones that are not pointed to and then at the end, freers them up. It then copies the memory that is currently allocated down to close up holes that were freed in the heap, so it can resume its allocation-by-giving awya blocks from the end.
This is a rather slow process (ignore the idiots who say that GC collections take next to no time, they're hyping up their preferred technology). Its so slow that the generational GC was invented. This effectively is 3 GCs in 1, partitioning the heap so that the run-through-the-heap collection phase only has to be applied to a smaller set of blocks.
Now with traditional heaps, the allocation and de-acllocation occurs regularly so the performance hit (which is roughly the same as the overall GC hit) is spread out continuously. This means you see slower performance .. until you get to the GC collect phase when things even themselves out. Except there is a performance hit - as you allocate and free blocks you often don't allocate the same sized blocks as you freed, so the memory system has to 'walk the heap' looking for a free block that is big enough for you. This means that the longer you run your program, the longer it takes as you will have a more fragmented heap. There are techniques to solve this - using multiple fixed-blocksize heaps means freeing a block really will be big enough for another allocation so you only have to remember the position of the first free block, but this costs more memory (not that this is an issue if you're comparing to a GC that is inefficient with memory usage too!)
Now, the place where the GC does shine is down to the language that uses it. In a GC languages like java or C#, when you allocate an object it comes off the heap. In a non-GC language like C++, you can still allocate off the heap, but you generally allocate on the stack - this is faster than the GC, but when you leave your functions and the stack loses all local variables, if you want to keep that object, you have to copy it. These repeated copies can slow things down a lot (eg in debug versions of the STL), which is why most compilers optimise the copy away (ie instead of allocate an object on the stack, then copy it to another location further down the stack, it allocates it directly where it would have been copied to).
In a GC language, this copy step is not applicable as you only have a pointer to move around the place. Sometimes this means large objects are faster to deal with.
In the end though, it depends entirely on the programmer's use of memory and language features. A junior dev using C# can copy a huge object all over the place and not notice any performance issues. The same guy using C++ would see huge hit to perf. If he had more knowledge of when to use the stack and the heap, then he could allocate said object more appropriately and get the same perfomance as C#. Similarly, the same coder in C# could too easily create lots and lots of 'temporary' objects on the heap that a C++ dev wouldn't do, thus making his C# app much slower than the C++ guy.
So.. GC.. is it bad or not? Not in itself. Is it a magic bullet to solve all memory issues.. not in itself.
Generally I prefer non-GC languages as there is 1 truly important aspect that is often glossed over:
GC only handles memory well. that's its whole
you can, its just that both dlls need to use the same CRT subsystem. ie. its no good allocating in one dll using the debug CRT and then releasing in another using the release CRT.
I guess they could remove one or the other CRTs, like you get with COM or .NET; or you could build everything with the same CRT; or you could keep the "best practice" method of providing a release routine everywhere you provide an allocation routine. The latter is very sensible as it helps you keep group operations on your data objects in the same place.
yes actually.
As you will learn, Microsoft and Visual Studio, specifically, are re-doubling efforts to take part in the native code renaissance. Accordingly, you may see advances in our native tooling that the team thinks of as "C++ first" -> VC++ will extend its capabilities on a faster pace than it has ever done so in the past, at times surpassing the other VS languages/runtimes, in specific scenarios
C++ is undergoing a renaissance at Microsoft. Someone said that it makes sense as the platform team at MS doesn't like .NET and so doesn;t really give a fig what the dev team is trying to push. I guess the Mobile team is pushing Silverlight but no-one cares about them either. It sounds about right knowing Microsoft's huge staff and the infighting between teams.
I welcome a return to C++ on Microsoft platform, .NET is nice enough but it always felt a bit 'VB' to me, and besides, I have a huge amount of code to keep going (can't afford to rewrite it all). In any case, it does appear MS is moving away from its ".NET only, everywhere" approach to a more heterogenous development platform. I'm sure C# will be in there somewhere, even if WPF and Silverlight are relegated to the attic to keep VB and Foxpro company.
So yeah, everything just keeps going round and round.
chances are he's just another frustrated genius type, pissed off that everyone else couldn't (or he thinks, wouldn't) see everything his way.
Often such arrogance goes hand in hand with hubris as he comes up with amazing stuff that sounds great, perfect in theory, but fails somewhat in the real world where we all know imperfection is good enough.
Maybe he was kicked out, maybe he left. either way, now's his chance to do all that wondrous stuff he dreams of. Slating Google is just unproductive.
no, most users *didn't* install Silverlight. That was most of the problem. If everyone had installed it, then it would have become a flash-killer (well, for Windows platforms at least).
But they didn't and Microsoft was left with a flash-like plugin that couldn't be used by most web devs as they'd be limiting their audience to 60% (microsoft's own figures) of all web users.
Petersenâ(TM)s letter demanded that WPF and Silverlight apps enjoy the same level of integration with Windows 8 tiles and any future Windows app store as apps based on HTML5. He asked that Microsoft publicly commit to its legacy development standards.
Woot! Petersen demands Microsoft publicly commit to VB6 and MFC.
Of course that's not what he means, he means he wants MS to commit to *his* preferred technology. I guess he was there when the VB6 boys were unhappy, standing shoulder-to-shoulder with them as the vicious mill-owner Microsoft took their favourite technology and smashed it in front of them.
Wasn't he?
I suspect Microsoft has an executive with an agenda to implode the company.
Ballmer's already on that case!
Sure, Silverlight will run well on ARM chips. So what.
Its not good enough to run on ARM chipset if it cannot run on Android or iOS or Blackberry. Silverlight is not as nearly cross-platform as they make out, unless you only count Windows platforms and browsers running plugins on Windows platforms.
I think they're making correct assumptions. Microsoft saw Silverlight as a flash-replacement, only it didn't replace flash at all. So now they're lumbered with development costs for smomething that competes directly with HTML5. so like most businesses, they're rationalising development effort on 1 of those internally-competeing products and have chosen HTML5. It makes sense as that has a far greater reach. Maybe years ago, they had to develop Silverlight as HTML didn't have the capabilities they needed. They must see that this is different today, and that (my assumption) it will only be enhanced further in the future.
The Silverlight devs are just pissed that they chose the wrong technology. They'll have to learn new stuff all over again.. which is the same as the rest of us.
most of the password generators do have randomisation, usually asking the user to bash the keyboard or jiggle the mouse. How random and/or useful that turns out to be is debatable.
oh, obviously I have struck a nerve there!
I meant, and I apologise for getting this wrong, that the 'you' didn't actually refer to you specifically. I meant 'you' in the wider sense, more in the 3rd person .. like this:
First they came for the Jews,
and I didn't speak out because I wasn't a Jew.
Then they came for the trade unionists,
and I didn't speak out because I wasn't a trade unionist.
Then they came for the communists,
and I didn't speak out because I wasn't a communist.
Then they came for me
and there was no one left to speak out for me.
I guess it used to be ok when they only did this kind of thing to black people....
But now they've started doing it to people like you, its a whole different matter isn't it.
I think everyone needs to take this as a reminder about supporting the fundamental liberties (not necessarily all the bleeding-heart ones) of everyone, including those groups that you don't belong to.
and I've heard about American comprehension. I'm not sure you do anything to shatter the stereotype.
sometimes I just want to reach up and jab at the screen instead of using the mouse
I feel like that too when I'm using various Windows apps, but I'd like to use all 5 fingers, curled up tightly together.
its technically forced labour anyway - we force the little buggers to learn stuff so that when they grow up and are let out of the pris^H^H^Hschool system, they will be productive and make things that will keep the economy rolling and basically fund our lazy lifestyles in our old age.
If we couldn't do that, then we'd have to invent a lifeforce-sucking machine to keep us all youthful from their essences. Remember that next time you say school sucks!
amen. but lets go one further and make an International version and forget the US one. Tell the USA that they can stick their patents in their software and keep them... and that they can use our nice, un-encumbered software if they can bear the humiliation of using something not invented here. :)
Seriously, I like the Apache Foundation. There now no need for the Document Foundation at all, they should shut up shop and say "hah! we made you do it Larry, now we're going back to business as usual as if you never got involved". To keep the DF around to maintain a fork just to piss on Ellison is egotistical and stupid. Fold and make 1 Apache-OO.
Now... who's going to start the Data Foundation.....
I understand that some great video processing apps are actually a bundle of little apps all stuck together under a fancy GUI.
I know a lot of 'big apps' are also a lot of little apps stuck together under the covers too - though they are sometimes called plugins rather than apps, sometimes they are external exes and sometimes dlls.
I know a lot of huge applications are actually a lot of modules stuck together too. Some dlls, some exes again.
Best practice software engineering is about dividing your problem space up into manageable chunks. This was the driving force of modular, structured programming, object-orientation, componentization and now service-oriented-architecture.
Obviously you don't.
However, I know you think that CentOS is a 'ripoff'. Strange that people say that about RedHat - after all, they took the very free beer Linux kernel, and all the free beer GNU userspace apps and all the other free beer apps written for Linux, wrapped them all up, added some artwork and started selling it as if it was theirs all along! Nobody really minds that much as they contribute back to the Linux community, but then no-one should complain when CentOS takes the free beer Linux system, and releases it without the proprietary bits RedHat added. In many respects, CentOS acts as a introduction to RedHat for many people - I used to run CentOS for my linux servers, and now I sold rather a lot of RedHat licences to the government. Everyone turns out to be happy, assuming they leave the vitriolic bile you spout alone.
I'm not sure that making more money than the GDP of a small country counts as beneficial to society as a whole, Microsoft certainly hasn't made Windows 1000x better than Ubuntu, say, despite having thousands of times more profit then them. I'm Shuttleworth doesn't much care that he made so much money in the tech boom that he can afford to give some of it away to Canonical. See, some people aren't driven by a mindless urge to make more money even when they have more than they could ever spend. Maybe Microsoft's shareholders can tell you how that feels.
Microsoft spends vast sums of money on R&D (and doesn't really get much for it, not if they had to spend another $8.5bn for Skype when their R&D dept could surely have built one to go with the VoIP clients they already have) and polish, though when I go to Display properties in W7, I can't seem to get Explorer's background to change colour. Maybe they need to spend even more money polishing!
What you will find though is the Linux apps tend to be pretty damn solid in comparison to the Windows ones, but they don't tend to be pretty. Server side, admin type apps where a pretty GUI doesn't really matter if you have a text file to configure it. Windows tends to be very pretty (most of the time) but flaky. I guess that's an aspect of what you're getting - if you focus on pretty GUI, you will not spend as much effort on the back end, and vice-versa. I also guess that's why the majority of all the web, internet, email and embedded runs on Linux. you just don't get to hear how many because there's no single company like Microsoft to release sales figures for it.
Incidentally, I installed CentOS on a server the other day (needed a new file server). It asked me where I was and what keyboard I was using and then chunked away until it was done. It didn't even bother to download drivers as they were bundled and patching was a simple 'yum update' run afterwards (I like to do that myself, good practice when faced with patch tuesday on a dozen Windows servers that cannot be broken by an update, well - not again)
Anyway, rant away, it doesn't matter. The future is mobile apps, even Microsoft thinks that which is why they are spending such bogglingly large sums on Windows Phone.
1. no need to do a different licence. RedHat and Canonical make enough money with the current 'free as in beer' licences.
2. The small apps model is the best anyway, because they are easily maintainable. You argue against yourself here as this approach is exactly what the big commercial apps need anyway! And besides, little apps is what lives on mobile phones so expect to see much more of them in the near future.
isn't Google Earth written in Qt too?
well, what's a dubious application?
a 'Make $$$ Fast' app.. probably
but how about something like 'Bubble Boinger'... would you be confident that *didn't* contain malware.. 'cos if you can't be sure, that's pretty much half the apps in the Market off limits to you.
Sure, if you put lots of security walls in place, the user can still be tricked into saying yes. ("restart app to apply update" says one, you say 'yes', oops. Not all malware asks 'install malware' in their popups).
So you still need to fall back on security measures like AV scanners and system monitors. I think it would also be useful to decline certain parts of app requests - Bubble Boinger doesn't need to make calls or send texts, but sometimes they ask for such. If you could prevent those parts from being available to an app, it might make things more secure.
only some of them left... the others were fired by Ballmer to get rid of the competition.
They say the replacement will be Kevin Turner - ex Mr Wallmart. It sounds about right, companies go through phases:
run by their owners
run by their managers
run by their accountants
run by their administrators.
Ballmer is the manager, KT is the next one along. He'll cut the badly-performing divisions, maybe spin them off, and that can only be a good thing. Maybe some of them will survive without the free influx of Windows and Office cash!