Main reason is that you're hiding logic in the data layer. You don't want to do that. You should encapsulate all business logic in one place. Which, for systems of a certain complexity, is a domain model / layer.
Stored procedures are generally hard to test, and, unless you're using something like SQL Server's CLR integration the available functionality is limited. Not being object oriented, it's harder to manage complexity.
I've built some pretty complex logic in the past with SPs, and they're extremely useful when you need to do some data-only task with maximum performance. In my experience you'll usually get the task done better and faster (in coding time) with your programming language (assuming that you're working with a domain model etc etc).
Triggers are a similar thing, though it's good to treat them as a case of "I'll only use them if forced to" or if the alternative involves a massive amount of work (and if it does, then the triggers are the least of your problems) OR big risks to data integrity (think database which doesn't support cascade deletes).
I used to think the same thing, but that was before I ever had to solve a no-trivial problem.
What do I think now? Basically that business logic belongs in a domain layer, but that shouldn't mean that the database is treated like a black box. You should make use of constraints within the database server to ensure a base level of data consistancy. Default values (especially on auditing columns), correct datatypes, relationships, versioning and not-null constraints all belong within the database. Basically anything which can be supported without resorting to triggers or stored procedures.
Databases are excellent at sorting and filtering data. A massive amount of engineering talent has been invested in shaving miliseconds off of their algorithms. So let your database handle that. Don't filter in the application layer and then start complaining about performance. Need more capacity? Cluster. Throw more databases at the problem. Not more application servers. Make sure they're running on properly specified physical hardware, built to best match the actual usage pattern of the database.
> Don't forget the small group of people who have the crazy idea that the government should serve > the public, not act to punish a large percentage of the public or try to socially engineer their behavior.
People who're both stupid, lazy and very very selfish?
We've got a deposit scheme here (Netherlands) and it works a treat. Doesn't take much effort, and you further reduce the amount of land lost to land fills. What's not to love about it?
> One guy who marries a woman, loves her and has mind-blowing sex with > her three times a week, is clearly ahead of some guy with an iPhone who > had ten one-night stands.
Especially for Microsoft - with their funding the WebOS team could have been given the task of developing WinPhone7 (i.e. WebOS rebranded and with silverlight). They'd actually get a pretty damn good OS out of it then. Considering their current implementation is terrible (sounds like it was designed by a committee of people who've never used a smartphone) it's a no brainer.
Plus graffiti would be perfect for tablets - it's easy to write and much more accurate than standard handwriting recognition.
I understand that the capabilities are the same, I was getting at the fact that to get anywhere you need to hire Pentaho experts in, and then the only real choice was directly from Pentaho USA. Compare to Microsoft, where you could either learn it through books/, or hire a local consultant.
For me (as BI consultant) supporting the commercial operation behind the OSS project needs to be via licensing/support via customers, and via training. Same as it is with the Microsoft stack. The easier it is for people so as myself to get started the easier it is for us to start selling the product:)
Back when I was using the full Pentaho suite (a year ago), it was very hard to get all but the simplest demo working. Mind you my interest was mainly in dashboarding, and that's an area where Pentaho was (and maybe still is?) very weak in. General configuration of the app server was also annoying, but that's also more of an java/app server problem (XML Hell) than anything inherent in the project.
Tthe biggest single problem was outdated documentation, or should I say outdated discussions being returned from Google. That's quite a common problem mind, and something which is being lessened by sites so as stackoverflow.
What is nice is that the project moves along at a very fast pace. New features are constantly being added, and everything is constantly being improved. Will take a look at the latest version the next time I work on a BI project.
BTW thanks for your work, goes for yourself and all the other contributers. Even given my negative comments (they're meant constructively), you're easily the best open source BI platform and within the top-5 when including the commercial platforms.
Seen lots of negative Pentaho experiences here, and I'd generally agree. It's one of those "Open Source" projects which forces you into buying their commercial version because they've made it way too complex.
Luckly the Pentaho project is an umbrella which contains a number of seperate products, most of which were developed independantly. Which results in there being a big difference in the quality of each component.
From my experiences, Kettle is a really nice tool for ETL. It is, IMHO, easier to use than Microsoft's Integration Services (its closest competitor). It's straight forward, performs well and importantly can be used without using the rest of Pentaho.
Want to know why certain schools are forcing kids to buy an overpriced laptop from one specific supplier?
Occams Razor would suggest that the only reason for doing this is that the schools are receiving financial incentives (bribes) from the single supplier of overpriced laptops.
If the school wanted to take a position against the Microsoft monopoly, then the only answer is to standardize on a single Linux distribution. Stable, does everything you need and free from Apple/Microsoft. Perfect.
The summary says that you can 'route your data in way you want', does this mean that you can avoid the internet filter? Or have they implemented the filter properly (i.e. centrally)? Which would make this a non-story.
For the record, it wouldn't surprise me if they had implemented the internet filter at consumer-router/modem level. They're bright enough to do it that way.
> All apps on the Android are candidates for closure if memory is required
Memory isn't the problem. Battery usage is the problem. Some of those apps will drain your battery in no time though background data transfer and the like. That's maybe the problem the writer had, because his battery life was terrible.
Well, it does take some getting used to that most apps don't have a close button... and a lot stay open, only closing when you use a third party task killer...
Which is another critisism, and one which doesn't appear in the article. Probably because the author only spend 5mins playing with the Desire before writing his review.
>Many functions require a press of the menu button to bring up a list of >options, whereas on the iPhone there would be a button on the screen. >This extra step makes the Desire feel a little cumbersome.
The thing is, on the Desire you have a widget for almost everything, so you don't even need to open the application. It's just there. You just need to navigate to the correct home screen.
As I understand it on the iPhone you must load each application, and can only open one at a time. Which is more cumbersome than hitting the menu key occasionally to exit apps.
I also see no mention of the fantastic friends-list. It combines all your contacts from all sources. You can group them. Then you can put a group of contacts on one of your screens. It grabs avatars from gmail/facebook for your contacts, and that's what you can see on the contacts screen. It's useful and way more practical than any 'address book' feature I've seen in other phones.
>Sound quality during calls is noticeably worse than the iPhone. Both >the earpiece and the speaker produce a feeble, tinny sound with a >background hiss.
Sound on mine is fine. It's not as good as a good GSM, but then neither is the iPhone. Don't see any hissing. Speakers are tinny, but all mobile speakers are tinny. You'd not play music with it, just as you'd not play music with any mobile speaker.
> Battery life is appalling. With moderate use I have to charge the Desire > twice each day. The phone loses around a fifth of its charge just sitting > on the bedside table overnight.
I get a little over a day out of mine, with everything turned on to max and whilst playing with apps for several hours. Apparently you can improve this considerably if you turn the polling down and don't leave hefy apps open all the time, but to be honest I prefer having the bells and whistles..
Beautiful screen, Exchange integration works perfectly (even with the exotic configuration I have at work) and the widgets available are really cool.
Battery life is acceptable. Better than my last smartphone (N91).
There are some fantastic apps: Layar in particular is not only technically cool, it actually has a practical use.
Downsides:
1. Not all alls in App Market are available, including goodies like Google Earth. Though I hear that this'll be solved soon enough. 2. Keyboard is terrible when you need to write in multiple languages (in my case dutch & english). For English alone it's fantastic. 3. SMS, twitter dms, emails aren't integrated into one app. I'd love to see a single 'messaging center' for all apps (even if its just via a notification API or something). No idea if the iPhone / Palm can do this btw.
Main reason is that you're hiding logic in the data layer. You don't want to do that. You should encapsulate all business logic in one place. Which, for systems of a certain complexity, is a domain model / layer.
Stored procedures are generally hard to test, and, unless you're using something like SQL Server's CLR integration the available functionality is limited. Not being object oriented, it's harder to manage complexity.
I've built some pretty complex logic in the past with SPs, and they're extremely useful when you need to do some data-only task with maximum performance. In my experience you'll usually get the task done better and faster (in coding time) with your programming language (assuming that you're working with a domain model etc etc).
Triggers are a similar thing, though it's good to treat them as a case of "I'll only use them if forced to" or if the alternative involves a massive amount of work (and if it does, then the triggers are the least of your problems) OR big risks to data integrity (think database which doesn't support cascade deletes).
> Business logic is part of the database.
I used to think the same thing, but that was before I ever had to solve a no-trivial problem.
What do I think now? Basically that business logic belongs in a domain layer, but that shouldn't mean that the database is treated like a black box. You should make use of constraints within the database server to ensure a base level of data consistancy. Default values (especially on auditing columns), correct datatypes, relationships, versioning and not-null constraints all belong within the database. Basically anything which can be supported without resorting to triggers or stored procedures.
Databases are excellent at sorting and filtering data. A massive amount of engineering talent has been invested in shaving miliseconds off of their algorithms. So let your database handle that. Don't filter in the application layer and then start complaining about performance. Need more capacity? Cluster. Throw more databases at the problem. Not more application servers. Make sure they're running on properly specified physical hardware, built to best match the actual usage pattern of the database.
> Don't forget the small group of people who have the crazy idea that the government should serve
> the public, not act to punish a large percentage of the public or try to socially engineer their behavior.
People who're both stupid, lazy and very very selfish?
We've got a deposit scheme here (Netherlands) and it works a treat. Doesn't take much effort, and you further reduce the amount of land lost to land fills. What's not to love about it?
This was trialled in Germany and Netherlands a couple of years ago:
ahref=http://www.dw-world.de/dw/article/0,,2143663,00.htmlrel=url2html-12417http://www.dw-world.de/dw/article/0,,2143663,00.html />
America doesn't really seem to have the notion of a "left".
The democrats are center-right, the republicans are further to the right, and.. well, there isn't a viable 3rd party so that's about it.
Aren't pokes spam? Or does someone actively do that?
With Facebook it's hard to tell.
> You're not doing it right. :)
Well, I do own an Android....
> One guy who marries a woman, loves her and has mind-blowing sex with
> her three times a week, is clearly ahead of some guy with an iPhone who
> had ten one-night stands.
You're not married, are you? :)
Easy traffic for your crappy blog / news channel, ain't it?
That 'talk' was sponsored by Mr Murdoch, who would just love to see the BBC's funding cut.
>Due to rising sea levels companies expect farmers to increasingly have to deal with salt water on their fields.
I'd add a "the" before "companies", as the original text is referring to the the Biemond and Fobek, not 'companies' in general.
Agree 100%.
Especially for Microsoft - with their funding the WebOS team could have been given the task of developing WinPhone7 (i.e. WebOS rebranded and with silverlight). They'd actually get a pretty damn good OS out of it then. Considering their current implementation is terrible (sounds like it was designed by a committee of people who've never used a smartphone) it's a no brainer.
Plus graffiti would be perfect for tablets - it's easy to write and much more accurate than standard handwriting recognition.
>PDF gets used for all kinds of wrong reasons - I freaking loathe web designers who think a PDF is an appropriate substitute for a web page
Are you getting PDF confused with Flash?
I understand that the capabilities are the same, I was getting at the fact that to get anywhere you need to hire Pentaho experts in, and then the only real choice was directly from Pentaho USA. Compare to Microsoft, where you could either learn it through books/, or hire a local consultant.
For me (as BI consultant) supporting the commercial operation behind the OSS project needs to be via licensing/support via customers, and via training. Same as it is with the Microsoft stack. The easier it is for people so as myself to get started the easier it is for us to start selling the product :)
Back when I was using the full Pentaho suite (a year ago), it was very hard to get all but the simplest demo working. Mind you my interest was mainly in dashboarding, and that's an area where Pentaho was (and maybe still is?) very weak in. General configuration of the app server was also annoying, but that's also more of an java/app server problem (XML Hell) than anything inherent in the project.
Tthe biggest single problem was outdated documentation, or should I say outdated discussions being returned from Google. That's quite a common problem mind, and something which is being lessened by sites so as stackoverflow.
What is nice is that the project moves along at a very fast pace. New features are constantly being added, and everything is constantly being improved. Will take a look at the latest version the next time I work on a BI project.
BTW thanks for your work, goes for yourself and all the other contributers. Even given my negative comments (they're meant constructively), you're easily the best open source BI platform and within the top-5 when including the commercial platforms.
Seen lots of negative Pentaho experiences here, and I'd generally agree. It's one of those "Open Source" projects which forces you into buying their commercial version because they've made it way too complex.
Luckly the Pentaho project is an umbrella which contains a number of seperate products, most of which were developed independantly. Which results in there being a big difference in the quality of each component.
From my experiences, Kettle is a really nice tool for ETL. It is, IMHO, easier to use than Microsoft's Integration Services (its closest competitor). It's straight forward, performs well and importantly can be used without using the rest of Pentaho.
From O'Reilly is about the only one which I can think of.
Agree with you 100%!
Want to know why certain schools are forcing kids to buy an overpriced laptop from one specific supplier?
Occams Razor would suggest that the only reason for doing this is that the schools are receiving financial incentives (bribes) from the single supplier of overpriced laptops.
If the school wanted to take a position against the Microsoft monopoly, then the only answer is to standardize on a single Linux distribution. Stable, does everything you need and free from Apple/Microsoft. Perfect.
The summary says that you can 'route your data in way you want', does this mean that you can avoid the internet filter? Or have they implemented the filter properly (i.e. centrally)? Which would make this a non-story.
For the record, it wouldn't surprise me if they had implemented the internet filter at consumer-router/modem level. They're bright enough to do it that way.
He's three months old.
Of course the TV's interesting, it's making full of sounds, colours and moving stuff.
Just buy (or make) him a Hanging Mobile.
Thankfully we don't have software patents in Europe, but does that mean we won't suffer from this?
> All apps on the Android are candidates for closure if memory is required
Memory isn't the problem. Battery usage is the problem. Some of those apps will drain your battery in no time though background data transfer and the like. That's maybe the problem the writer had, because his battery life was terrible.
Well, it does take some getting used to that most apps don't have a close button... and a lot stay open, only closing when you use a third party task killer...
Which is another critisism, and one which doesn't appear in the article. Probably because the author only spend 5mins playing with the Desire before writing his review.
Just RTFA.
>Many functions require a press of the menu button to bring up a list of
>options, whereas on the iPhone there would be a button on the screen.
>This extra step makes the Desire feel a little cumbersome.
The thing is, on the Desire you have a widget for almost everything, so you don't even need to open the application. It's just there. You just need to navigate to the correct home screen.
As I understand it on the iPhone you must load each application, and can only open one at a time. Which is more cumbersome than hitting the menu key occasionally to exit apps.
I also see no mention of the fantastic friends-list. It combines all your contacts from all sources. You can group them. Then you can put a group of contacts on one of your screens. It grabs avatars from gmail/facebook for your contacts, and that's what you can see on the contacts screen. It's useful and way more practical than any 'address book' feature I've seen in other phones.
>Sound quality during calls is noticeably worse than the iPhone. Both
>the earpiece and the speaker produce a feeble, tinny sound with a
>background hiss.
Sound on mine is fine. It's not as good as a good GSM, but then neither is the iPhone. Don't see any hissing. Speakers are tinny, but all mobile speakers are tinny. You'd not play music with it, just as you'd not play music with any mobile speaker.
> Battery life is appalling. With moderate use I have to charge the Desire
> twice each day. The phone loses around a fifth of its charge just sitting
> on the bedside table overnight.
I get a little over a day out of mine, with everything turned on to max and whilst playing with apps for several hours. Apparently you can improve this considerably if you turn the polling down and don't leave hefy apps open all the time, but to be honest I prefer having the bells and whistles..
Beautiful screen, Exchange integration works perfectly (even with the exotic configuration I have at work) and the widgets available are really cool.
Battery life is acceptable. Better than my last smartphone (N91).
There are some fantastic apps: Layar in particular is not only technically cool, it actually has a practical use.
Downsides:
1. Not all alls in App Market are available, including goodies like Google Earth. Though I hear that this'll be solved soon enough.
2. Keyboard is terrible when you need to write in multiple languages (in my case dutch & english). For English alone it's fantastic.
3. SMS, twitter dms, emails aren't integrated into one app. I'd love to see a single 'messaging center' for all apps (even if its just via a notification API or something). No idea if the iPhone / Palm can do this btw.
The ones who haven't died yet are most likely under health care.