I would run validation code on the client but.... the caveat is that its not as good or reliable validation that you will still do on the server. Think of it as filtering the truly bad input at source, the server still has to do the validation proper.
And then there are others who see languages such as JavaScript rising from the browser and colonizing the server. A unified platform makes everything simpler. Yes, Netscape wanted this to happen years ago, but thanks to the lightning performance of the new JavaScript semi-compilers, the language is bound to look even more attractive.
However, on its' own merit, I find the.Net stack (especially since 2005) to be really nice,/i>
that's exactly the problem......... see, MS has panicked when it realised a lot of developers jumped ship for mobile, internet and Linux based development platforms, so it reorganised significantly around their new programming platform and spent a lot of marketing money persuading you that it was the only game in town. Added some syntactic sugar and a new IDE and you've fallen at their feet declaring undying love. And now you'll be writing.NET apps, that run on... Windows only.
I do think Mono is a curve ball to the plans that they didn't expect (ok, maybe not the developers at the bottom, but the executives at the top, charged with making money for MS shareholders and bringing in ever-increasing growth of windows software), the question is what they will do about it. I don't think anyone is naive enough to think MS will sit back and say 'no problem' if everyone starts developing in Mono and leaving Windows for a more credit-crunch friendly platform.
Currently they're happy with their domination of the developer mindset, give us fancy tools, 'easy to use' framework and we all go back to Visual Studio, Expression Blend, SQL Server, Windows Server... and they make a ton of money and laugh at the other 'failed' platforms that looked so promising as free/open source grew.
Its a pretty interesting time at the moment, MS is fighting back against Linux and Google,.NET is the weapon they're using. I don't know how it'll pan out but.NET is not an altruistic platform-agnostic development system. Its really designed to make you into a Windows developer, developing Windows-only software just like the last few years.
they are compatible with everything in 2.0 that matters
yeah? Which bits on.NET 2.0 don't matter (linux geeks - that was not an invitation to say 'all of it', k).
I wish they'd spent their time working on a better OS-level library for multiple languages than burden us with a locked-in Java clone (even if you can write the byte-code in other languages, where they fit with the.NET architectural model, that is)
true, but I think the screen will be fixed relatively shortly, even if you have to wear Austin Powers style specs. The controls... I reckon voice activation and a more touchscreen-yness will suffice (considering the teeny keyboards people actually use today!), so I doubt it'll be too long. For sure, just look at how technology has progressed over the last 10 years to think about what might happen in the next ten. I mean, I remember playing cyberpunk 15 years ago where the idea of a personal cellphone was literally science-fiction. Today we have Blackberries and the iPhone...
I did say that I wasn't sure about the 10 year timeframe... but on the other hand, you never know.
Mobile phones have more power today than desktops of 10 years ago. Modern desktops are reaching a plateur of processing power - not necessarily because we can't squeeze more from them, but because they have enough juice for most people. Its not like years ago when you had to buy a new PC every year or two.. today a 3 year old PC will happily run almost everything as fast as you want. (sure, you can stick Vista on it and need more RAM, which is why lots are sticking with XP)
So, I see a trend for more power from mobiles, especially as people use them more for surfing and emailing... and then want things like Word and Powerpoint on them. That will drive usage, plus the fact that you can get more revenue from these things that are connected to the web - ISPs will want you to use them, and companies will think they can grab market share and become the next Microsoft. The new touch-screen displays are showing people what they can do with mobiles, expect more advances to come in this area, and more growth in their usage.
The small screen can be fixed already (well, maybe not) with projection spectacles, but lots of people are using their tiny-screen blackberries more than their desktops.
This doesn't mean there are issues to resolve - better input using either voice or gesture style 'typing', better projected displays, more CPU and RAM and battery. But these can be surely be fixed in 10 years!
One day, if the above comes true, then the small device will replace the desktop. Probably not in 10 years (unless you're a salesman/journalist/etc) unless the technology takes a leap forward.. which could happen as easily as the eee pc revived the notebook market!
maybe not in 10-15 years, but I see the future as more mobile devices. If we can fix battery life (possibly) and displays (probable with in-eye HUD type affairs) then processing and capacity will increase. We'll probably see a lot of 'download what you need as you need it' combined with local processing. Your desktop and big monitors will probably go the way of the abacus.
baldness does contribute to depression - ask any baldie, or old man. (as thinning hair is associated with disappearing youth and all that entails in today's society) but they usually get used to it, and then they're fine.
Patrick Stewart (famously) said that he went bald early on, and hated it, really had a hard time accepting it. He said that no-one should become depressed by it, just accept it and get on with life and he wishes he hadn't spent so much time worrying over it. I guess its easy to say that in hindsight, but if it happens to you (and remember everyone has thinning hair eventually, just wait until you're 40) hopefully you'll remember this.
one day it'll probably happen, and we'll have albinos walking the streets, along with bright orange and purple people... then 'pinko commie' will really mean something.
the latter is the only chance, the DoJ had the opportunity to break MS up and was persuaded it was a bad idea, so they went for the 'open your protocols' instead. (they should have done both).
But, with the credit crunch, recession (maybe depression) will make the lure of free software too good to pass down as IT budgets are slashed, MS may find their 'de-facto' platform status reduced to being a legacy thing, though I think they'll keep Windows on the desktop, but sell a lot less applications. You can see how they think of this by the massive marketing effort directed at.NET - gotta grab developers and lock them in to Windows-only development.
Putting the end user first is an admirable but misplaced sentiment.
The customer is always right. They pay your salary.
You can continue to put yourself first, but you may find your more customer-focussed competitors do rather better than you.
PS. most business apps are still MS-based, and Java is an increasingly irrelevent tech on Windows. MS is making sure of that by pulling developers to.Net as fast as they can.
Time and time again, Slashdot users say OOXML can not be implemented by any third party. This release means that OO.o is compatible with MS office and that OOXML is a perfectly fine format.
Time and time again, Slashdot users say OOXML can not be implemented by any third party. This release means that OO.o is compatible with MS office.
its more complicated than that when you sart to factor in how they got round the regulatorary rules. Banks must hold some liquid asset to cover themselves if their leveraged investments go wrong, and they used to count how much they had using a 'mark to market' approach - where you figured out how much you had by seeing how much it was worth on the open market right now. So they changed that to a 'mark to model' approach where you count what it might be worth in the future when you came to sell them.....
You can see where I'm going with this now... that just let them leverage up more and more, and their models said the investments were worth more... etc.
I think a windfall tax on all those banker's bonuses over the last few years would be a good idea. That, and asset siezures. We might only have to pay out $690bn instead of $700 to cover the fool's losses, but every little helps.
Beta means something different to Google. It doesn't mean 'unfinished', they use it to mean 'available to change'. You should compare Google's Beta to Microsoft's 'version 2'.
A spokesman from Google said:
"We have very high internal metrics our consumer products have to meet before coming out of beta. Our teams continue to work to improve these products and provide users with an even better experience. We believe beta has a different meaning when applied to applications on the Web, where people expect continual improvements in a product. On the Web, you don't have to wait for the next version to be on the shelf or an update to become available. Improvements are rolled out as they're developed. Rather than the packaged, stagnant software of decades past, we're moving to a world of regular updates and constant feature refinement where applications live in the cloud.
So if you used Google definition, all of Microsoft's products except for the no-longer-supported ones are 'beta' too.
I think they should choose a different word to avoid confusion, but that's the way it is at the moment.
or they're just moving to a more distributed data system, they want to spy on you so they can see the data you now hold. Its like a bittorrent data-storage solution, all these 'lost' laptops and pendrives is a secret mechanism of distributing the data in the most widely and random way - thus adding to the security of the overall system, as no-one else knows where its ended up.
With IPv6 you can have every device having its own (even static) IP and as such can have it act as a reliably reachable server. This thought is a nightmare for some.
Not for me!! When you return home to find a truck-sized box of butter on your doorstep, you'll know to go to your fridge and turn off the 'automatically reorder on low stock' option on its internal webserver. Mouhhaahahahahhaa, my dreams of dairy domination will take over the world!
I think you're labouring under the impression that you use a SP for logic, which is wrong.
Once you create a SP, to retrieve a load of data that is further manipulated by your app servers, you find your execution plans are precompiled and cached, your locks are held much less, in fact the whole thing gets well optimised by the DB engine.
SPs do not need the kind of parallel running I think you're referring to. Firstly, the DB engine is very efficient at extracting that data, in parallel if it wants. It can do it much better than you running 2 queries at the same time. In a large scale system, you're going to have lots of connections executing simultaneously anyway, so this is a pretty pathetic point to make.
Let me put it this way, if you write an ORM to retrieve data that you then filter to weed out the bits you don't want, you will kill your performance. If you write a SP to retrieve only the data you want, you are using the DB in its most efficient way, and reducing the size of the caches needed, and reducing the transfer and the memory needed in the connections. Things go faster then.
If you write 'select a,b,c from customer where cust_num = x' then your ORM will be almost as fast as a SP.
If you have a customer table, customer history, products tables and you want to retrieve a full view of all the customer details.. then a SP will be quite a bit faster than your ORM.
Go profile a complex query yourself - see what the profilers say about your ORM v the equivalent SP.
Stored procedures are the fastest way to get data from a database. ORM cannot compete. Think about what happens under the covers of the ORM framework to see that this is always true.
PL/SQL isn't a scripting language, its a query language (ok with bits added that you don't have to use) designed to get data from a DB, and the DB is designed to give data using it.
ORM stuff is for developers who want to get data without having to learn SQL, or go through a DBA, or to make programming data-access easier. That's all. Its not a better way of accessing the DB, its not more efficient (far from it in some cases), but its easier for the application programmer. That's why it feels wrong, its designed for your mind-set so it feels like it integrates with your programming. Its like how buying shoes feels so right if you're a woman. You or me, we know 2 pairs of shoes is optimal.
So if you have a small DB then feel free to use it. If you have a very large one, you'll want to ask your DBA how to do things. I guarantee he won't tell you to use the wizard to setup the ORM for your app!
BTW, if you are trying to put logic in your DB, you're using it wrong. A SP is for fetching subsets of data, you should further filter and manipulate it in your application server.
You can't build pure.NET implementations... The goal isn't to create "Python for Windows" so the goal is to build Python for.NET, which is practically the same thing.
Like I said, you're not expanding Python, you're expanding.NET by adding a language to it. Python doesn't gain from your work. Now, if you were to add capabilities to Python (and obviously then porting them to.NET) then I think you'd be making a much more positive contribution.
for the same reason (whatever it was) that made MS want to do IronPython.
Now if you truly wanted to be part of the open source community, you'd have added to Ruby and Python codebases directly instead of making your own version. OSS community is about adding to existing code, building on the shoulders of others for the benefit of those who come after you. IronPython is a waste of effort considering python already exists, even for Windows.
I've no problem with you doing it, its OSS after all, but I feel the benefit of your work is to Windows and not to the Python community.
I'm not sure that's true in the real world. I've never seen a "enterprise class" server-side Java app that didn't scale except with lots and lots of servers. It could be due to poor implementation or OO-misuse from the kind of companies that build those things (think big consultancies and application providers), but I think its more due to the architecture of the language/platform.
It doesn't matter so much anymore though, servers are super fast and expandable themselves, so the overhead of a scripting language is less significant nowadays, so if you want a server app, you might as well take advantage of the productivity gains from a script language and basically write apps like the CGI architectures we did in the 90s:-)
Which sites have good uptimes with Windows? I only want to know because some.. err.. associates of mine.. would like to.. erm.. do some consulting.. yes consulting.. with those companies about the importance of running Windows Update regularly.
(I thought the last one I did a few weeks ago required a reboot.)
I would run validation code on the client but .... the caveat is that its not as good or reliable validation that you will still do on the server. Think of it as filtering the truly bad input at source, the server still has to do the validation proper.
from TFA:
And then there are others who see languages such as JavaScript rising from the browser and colonizing the server. A unified platform makes everything simpler. Yes, Netscape wanted this to happen years ago, but thanks to the lightning performance of the new JavaScript semi-compilers, the language is bound to look even more attractive.
See, MS crushed your dreams too :-)
However, on its' own merit, I find the .Net stack (especially since 2005) to be really nice,/i>
that's exactly the problem......... see, MS has panicked when it realised a lot of developers jumped ship for mobile, internet and Linux based development platforms, so it reorganised significantly around their new programming platform and spent a lot of marketing money persuading you that it was the only game in town. Added some syntactic sugar and a new IDE and you've fallen at their feet declaring undying love. And now you'll be writing .NET apps, that run on... Windows only.
I do think Mono is a curve ball to the plans that they didn't expect (ok, maybe not the developers at the bottom, but the executives at the top, charged with making money for MS shareholders and bringing in ever-increasing growth of windows software), the question is what they will do about it. I don't think anyone is naive enough to think MS will sit back and say 'no problem' if everyone starts developing in Mono and leaving Windows for a more credit-crunch friendly platform.
Currently they're happy with their domination of the developer mindset, give us fancy tools, 'easy to use' framework and we all go back to Visual Studio, Expression Blend, SQL Server, Windows Server... and they make a ton of money and laugh at the other 'failed' platforms that looked so promising as free/open source grew.
Its a pretty interesting time at the moment, MS is fighting back against Linux and Google, .NET is the weapon they're using. I don't know how it'll pan out but .NET is not an altruistic platform-agnostic development system. Its really designed to make you into a Windows developer, developing Windows-only software just like the last few years.
they are compatible with everything in 2.0 that matters
yeah? Which bits on .NET 2.0 don't matter (linux geeks - that was not an invitation to say 'all of it', k).
I wish they'd spent their time working on a better OS-level library for multiple languages than burden us with a locked-in Java clone (even if you can write the byte-code in other languages, where they fit with the .NET architectural model, that is)
true, but I think the screen will be fixed relatively shortly, even if you have to wear Austin Powers style specs. The controls... I reckon voice activation and a more touchscreen-yness will suffice (considering the teeny keyboards people actually use today!), so I doubt it'll be too long. For sure, just look at how technology has progressed over the last 10 years to think about what might happen in the next ten. I mean, I remember playing cyberpunk 15 years ago where the idea of a personal cellphone was literally science-fiction. Today we have Blackberries and the iPhone...
I did say that I wasn't sure about the 10 year timeframe... but on the other hand, you never know.
Mobile phones have more power today than desktops of 10 years ago. Modern desktops are reaching a plateur of processing power - not necessarily because we can't squeeze more from them, but because they have enough juice for most people. Its not like years ago when you had to buy a new PC every year or two.. today a 3 year old PC will happily run almost everything as fast as you want. (sure, you can stick Vista on it and need more RAM, which is why lots are sticking with XP)
So, I see a trend for more power from mobiles, especially as people use them more for surfing and emailing... and then want things like Word and Powerpoint on them. That will drive usage, plus the fact that you can get more revenue from these things that are connected to the web - ISPs will want you to use them, and companies will think they can grab market share and become the next Microsoft. The new touch-screen displays are showing people what they can do with mobiles, expect more advances to come in this area, and more growth in their usage.
The small screen can be fixed already (well, maybe not) with projection spectacles, but lots of people are using their tiny-screen blackberries more than their desktops.
This doesn't mean there are issues to resolve - better input using either voice or gesture style 'typing', better projected displays, more CPU and RAM and battery. But these can be surely be fixed in 10 years!
One day, if the above comes true, then the small device will replace the desktop. Probably not in 10 years (unless you're a salesman/journalist/etc) unless the technology takes a leap forward.. which could happen as easily as the eee pc revived the notebook market!
Google would like to disagree with you.. :)
maybe not in 10-15 years, but I see the future as more mobile devices. If we can fix battery life (possibly) and displays (probable with in-eye HUD type affairs) then processing and capacity will increase. We'll probably see a lot of 'download what you need as you need it' combined with local processing. Your desktop and big monitors will probably go the way of the abacus.
baldness does contribute to depression - ask any baldie, or old man. (as thinning hair is associated with disappearing youth and all that entails in today's society) but they usually get used to it, and then they're fine.
Patrick Stewart (famously) said that he went bald early on, and hated it, really had a hard time accepting it. He said that no-one should become depressed by it, just accept it and get on with life and he wishes he hadn't spent so much time worrying over it. I guess its easy to say that in hindsight, but if it happens to you (and remember everyone has thinning hair eventually, just wait until you're 40) hopefully you'll remember this.
one day it'll probably happen, and we'll have albinos walking the streets, along with bright orange and purple people... then 'pinko commie' will really mean something.
the latter is the only chance, the DoJ had the opportunity to break MS up and was persuaded it was a bad idea, so they went for the 'open your protocols' instead. (they should have done both).
But, with the credit crunch, recession (maybe depression) will make the lure of free software too good to pass down as IT budgets are slashed, MS may find their 'de-facto' platform status reduced to being a legacy thing, though I think they'll keep Windows on the desktop, but sell a lot less applications. You can see how they think of this by the massive marketing effort directed at .NET - gotta grab developers and lock them in to Windows-only development.
Putting the end user first is an admirable but misplaced sentiment.
The customer is always right. They pay your salary.
You can continue to put yourself first, but you may find your more customer-focussed competitors do rather better than you.
PS. most business apps are still MS-based, and Java is an increasingly irrelevent tech on Windows. MS is making sure of that by pulling developers to .Net as fast as they can.
Time and time again, Slashdot users say OOXML can not be implemented by any third party. This release means that OO.o is compatible with MS office and that OOXML is a perfectly fine format.
Time and time again, Slashdot users say OOXML can not be implemented by any third party. This release means that OO.o is compatible with MS office.
there,. fixed that for you.
its more complicated than that when you sart to factor in how they got round the regulatorary rules. Banks must hold some liquid asset to cover themselves if their leveraged investments go wrong, and they used to count how much they had using a 'mark to market' approach - where you figured out how much you had by seeing how much it was worth on the open market right now. So they changed that to a 'mark to model' approach where you count what it might be worth in the future when you came to sell them.....
You can see where I'm going with this now... that just let them leverage up more and more, and their models said the investments were worth more... etc.
I think a windfall tax on all those banker's bonuses over the last few years would be a good idea. That, and asset siezures. We might only have to pay out $690bn instead of $700 to cover the fool's losses, but every little helps.
Beta means something different to Google. It doesn't mean 'unfinished', they use it to mean 'available to change'. You should compare Google's Beta to Microsoft's 'version 2'.
A spokesman from Google said:
"We have very high internal metrics our consumer products have to meet before coming out of beta. Our teams continue to work to improve these products and provide users with an even better experience. We believe beta has a different meaning when applied to applications on the Web, where people expect continual improvements in a product. On the Web, you don't have to wait for the next version to be on the shelf or an update to become available. Improvements are rolled out as they're developed. Rather than the packaged, stagnant software of decades past, we're moving to a world of regular updates and constant feature refinement where applications live in the cloud.
So if you used Google definition, all of Microsoft's products except for the no-longer-supported ones are 'beta' too.
I think they should choose a different word to avoid confusion, but that's the way it is at the moment.
or they're just moving to a more distributed data system, they want to spy on you so they can see the data you now hold. Its like a bittorrent data-storage solution, all these 'lost' laptops and pendrives is a secret mechanism of distributing the data in the most widely and random way - thus adding to the security of the overall system, as no-one else knows where its ended up.
See, its simple really :-)
With IPv6 you can have every device having its own (even static) IP and as such can have it act as a reliably reachable server. This thought is a nightmare for some.
Not for me!! When you return home to find a truck-sized box of butter on your doorstep, you'll know to go to your fridge and turn off the 'automatically reorder on low stock' option on its internal webserver. Mouhhaahahahahhaa, my dreams of dairy domination will take over the world!
Now, who needs more cheese.....
I think you're labouring under the impression that you use a SP for logic, which is wrong.
Once you create a SP, to retrieve a load of data that is further manipulated by your app servers, you find your execution plans are precompiled and cached, your locks are held much less, in fact the whole thing gets well optimised by the DB engine.
SPs do not need the kind of parallel running I think you're referring to. Firstly, the DB engine is very efficient at extracting that data, in parallel if it wants. It can do it much better than you running 2 queries at the same time. In a large scale system, you're going to have lots of connections executing simultaneously anyway, so this is a pretty pathetic point to make.
Let me put it this way, if you write an ORM to retrieve data that you then filter to weed out the bits you don't want, you will kill your performance. If you write a SP to retrieve only the data you want, you are using the DB in its most efficient way, and reducing the size of the caches needed, and reducing the transfer and the memory needed in the connections. Things go faster then.
If you write 'select a,b,c from customer where cust_num = x' then your ORM will be almost as fast as a SP.
If you have a customer table, customer history, products tables and you want to retrieve a full view of all the customer details.. then a SP will be quite a bit faster than your ORM.
Go profile a complex query yourself - see what the profilers say about your ORM v the equivalent SP.
maybe it'll increase the adoption of postgresql instead, or at least prompt developers to write their queries so they run on both databases.
Stored procedures are the fastest way to get data from a database. ORM cannot compete. Think about what happens under the covers of the ORM framework to see that this is always true.
PL/SQL isn't a scripting language, its a query language (ok with bits added that you don't have to use) designed to get data from a DB, and the DB is designed to give data using it.
ORM stuff is for developers who want to get data without having to learn SQL, or go through a DBA, or to make programming data-access easier. That's all. Its not a better way of accessing the DB, its not more efficient (far from it in some cases), but its easier for the application programmer. That's why it feels wrong, its designed for your mind-set so it feels like it integrates with your programming. Its like how buying shoes feels so right if you're a woman. You or me, we know 2 pairs of shoes is optimal.
So if you have a small DB then feel free to use it. If you have a very large one, you'll want to ask your DBA how to do things. I guarantee he won't tell you to use the wizard to setup the ORM for your app!
BTW, if you are trying to put logic in your DB, you're using it wrong. A SP is for fetching subsets of data, you should further filter and manipulate it in your application server.
You can't build pure .NET implementations... .NET, which is practically the same thing.
The goal isn't to create "Python for Windows"
so the goal is to build Python for
Like I said, you're not expanding Python, you're expanding .NET by adding a language to it. Python doesn't gain from your work. Now, if you were to add capabilities to Python (and obviously then porting them to .NET) then I think you'd be making a much more positive contribution.
And I agree, we all sleep better at night with Nagios around (except when I hear a whoop-whoop :)
you have it sending alerts to the Police?! I'm not sure that's what the IT guys had in mind when they said '24 hr emergency response'. :)
Why should MS need to "want to do IronPerl"?
for the same reason (whatever it was) that made MS want to do IronPython.
Now if you truly wanted to be part of the open source community, you'd have added to Ruby and Python codebases directly instead of making your own version. OSS community is about adding to existing code, building on the shoulders of others for the benefit of those who come after you. IronPython is a waste of effort considering python already exists, even for Windows.
I've no problem with you doing it, its OSS after all, but I feel the benefit of your work is to Windows and not to the Python community.
I'm not sure that's true in the real world. I've never seen a "enterprise class" server-side Java app that didn't scale except with lots and lots of servers. It could be due to poor implementation or OO-misuse from the kind of companies that build those things (think big consultancies and application providers), but I think its more due to the architecture of the language/platform.
It doesn't matter so much anymore though, servers are super fast and expandable themselves, so the overhead of a scripting language is less significant nowadays, so if you want a server app, you might as well take advantage of the productivity gains from a script language and basically write apps like the CGI architectures we did in the 90s :-)
Which sites have good uptimes with Windows? I only want to know because some.. err.. associates of mine.. would like to.. erm.. do some consulting.. yes consulting.. with those companies about the importance of running Windows Update regularly.
(I thought the last one I did a few weeks ago required a reboot.)
oh you're a b*st*rd.
you made me smile too and I don't even program Perl! :-)