Slashdot Mirror


User: mcvos

mcvos's activity in the archive.

Stories
0
Comments
5,677
First seen
Last seen
Profile
(view on slashdot.org)

Comments · 5,677

  1. Re:heyho, python - the new perl. on Why Corporates Hate Perl · · Score: 1

    Well, I've been writing in PHP and Python for a living: I like static typing. So many of the ways in which dynamic types are used are essentially error-prone lazy shortcuts that create libraries where you have to check the docs constantly to figure out whether an error is False or Null or -1 or "" etc.

    Surely PHP and Python have exceptions? Abusing returned values for passing error information is Just Wrong. I mean, I know it was the standard in C, but we've grown out of that, yes? Please?

    and it's got the effectively typeless Object class which defeats static typing

    No, it says that the type must be an Object that is a class or subclass of the base Object class. End of story. It doesn't defeat or subvert the static typing system any more than inheritance "subverts" object class restrictions.

    It defeats static typing in the sense that every object is an Object, and once you end up with an Object in your hands, you've essentially lost your static typing. You have to figure out what it was again, and cast it to the correct type.

    And Objects happen quite a lot, particularly in Collections. Now generics are supposed to solve that, but they solve it by forcing you to declare the type of your collection at least three times, and it's still easy to circumvent.

  2. Re:heyho, python - the new perl. on Why Corporates Hate Perl · · Score: 1

    You can argue that Perl's OO is pasted on, which is somewhat true, but that doesn't mean that it isn't powerfull.

    Well no, nobody in his right mind would deny that Perl is powerful. I've seen some amazingly scary Perl code that does in a single line what should rightfully be done in two pages of code.

    But Perl is not very clean or structured. It's often hard to read. And that makes it a bad choice for large software engineering projects.

    Certainly OO is a thing being fixed in Perl6.

    But how much pre-Perl6 code is already out there?

    Until that is available use Moose or try to realize that OOP isn't the only form of programming.

    Ofcourse OOP isn't the only form of programming, but there are a lot of situations where it is a very effective and easily maintainable form of programming.

    Different programming paradigms have different uses, different ecosystems. Different places. Trying to use Perl for enterprise code just doesn't sound like the best use of that language.

  3. Re:heyho, python - the new perl. on Why Corporates Hate Perl · · Score: 1

    Suitability aside, there's nothing that can be written in Java that can't be run at the same scale written in Perl or PHP.

    Could be. I wasn't aware of a Perl or PHP equivalent of J2EE. (Not that J2EE is all that great, mind you.)

    Even so, the fact that you can write something, doesn't always mean it's a good idea. I shudder at the thought what some over-architectured Java projects would look like in Perl.

    Ruby is definitely the shiny buzz of the day, but it will likely end up going nowhere because there's no rational basis for its present popularity and this will be realized soon enough.

    Why do you say that? Is it not a much cleaner and more powerful object oriented language than just about anything else? Is it not so much more productive that hordes of Java programmers who wouldn't touch any other dynamic language with a 10-foot pole, are now flocking to Ruby?

    I admit Ruby still has some issues to work out, but it's definitely what I want the future to look like.

    Expect Java to stick around until something we have yet to see takes over.

    Expect Java to stick around for a long time after that. I'm afraid Java is going to be the COBOL of the future.

  4. Re:Parrots, for another on Magpies Are Self-Aware · · Score: 1

    Mind you, using my hand and thumbnail as a tool for self-gratification is not normal behaviour.

    Nor legal, I suspect.

  5. Re:Crows, for one on Magpies Are Self-Aware · · Score: 1

    It was misunderstood, because the writing was poor. ShieldW0lf says, "We" many times and you assume he means "they".

    Which "they" do you mean? As far as I can tell, he's talking about humans, and I kinda suspect he's human too. What are you?

  6. Re:Crows, for one on Magpies Are Self-Aware · · Score: 1

    The whole concept of a "soul" exists for the purpose of supporting the perspective that we are aliens in this place, that we will go home through some mystical means when our vehicle here (our body) wears out, and we can do anything we like to the place while we're here, because it's alien and inconsequential.

    This makes no sense. If you're dead after you die, there are no consequences to suffer from anymore. If there is an afterlife, we might suffer consequences from our actions that we somehow avoided during our life.

  7. Re:heyho, python - the new perl. on Why Corporates Hate Perl · · Score: 1

    Java kinda sucks

    Java's got a few rough edges but it doesn't suck. What sucks is the crudware bloated frameworks which in turn implement the ShinyNewWillSaveYourBusiness people insist on using pattern that people insist on using, even where something simpler is going to do the job much better.

    In other words Java doesn't suck. EJBs suck. Hibernate sucks. Struts sucks. Spring sucks. Try working on a project that uses them all.

    Nowadays that's almost all of them. Well, not Struts. That one is on the way out, fortunately.

    The other pain in the arse is that none of the technologies last for more than about 3 years before someone finally does say "Hey this sucks" and starts again, only to make the same mistakes with a whole new framework you have to learn.

    I agree. Yes, some of those frameworks really are cool and very productive. Take a look at Wicket, for example. Coolest framework I've seen in ages. Yet also not perfect.

    Seriously, how much did ANSI C change over the years. If you took a 5 year break from coding Java you'd have to practically start again. Even the core language is still evolving.

    And it's evolving in the wrong way. I think static typic is a lost cause. I keep hearing more and more Java veterans praising the joy the working with Ruby or Python. I think the future will definitely look like one of those two. But Java is the present, for now.

  8. Re:heyho, python - the new perl. on Why Corporates Hate Perl · · Score: 1

    Seriously, you love Java, we get that.

    I don't, actually. I used to, but it got rather awkward to work with due to an overdose of architecture. I'm looking for a fresh start with Ruby. Lots of stuff that's hard but necessary in Java, is trivial in Ruby.

    But it doesn't even close to "dominate the web backend." I'm not even sure it gives the Microsoft languages a run for its money; most of the huge sites I deal with on a daily basis are Microsoft technologies. (eBay, to give one example.)

    Ofcourse there are a lot more languages than just Java, but Java is big. "Dominates" is probably an overstatement, as I don't think any language has a more than 50% share, but I'm pretty sure Java is #1 or #2, and it does dominate the enterprise web market. Lots of large companies with more money than sense just don't feel safe without an expensive J2EE server (which is not always better than a simple linux server with Jetty or tomcat).

  9. Re:heyho, python - the new perl. on Why Corporates Hate Perl · · Score: 1

    Job vacancies:

    relative PHP job growth over past 3 years:
    http://www.indeed.com/jobtrends?q=php&l=&relative=1

    relative Java job growth over past 3 years:
    http://www.indeed.com/jobtrends?q=java&l=&relative=1

    If you want the full picture, you'll have to click on "absolute". Then you'll see Java has about 5 times as many jobs. And does this also count job description that ask for Java technologies without asking explicitly for Java?

    One might simply argue that it takes more people longer to do stuff in Java than in other languages, hence the need for more developers.

    Yeah, sure, its lack of productivity is why Java is such a success. Not that I'm claiming that Java is terribly productive, mind you. Ruby is much better, and I suspect so is Python. PHP is no doubt more productive for smaller applications, but I have my doubts about large applications.

    But the real reason Java is so popular is because it's established, well-supported, reliable technology running on one of the best (safest, fastest) VMs currently availlable. You don't do bank transactions in PHP. Lots of people do bank transactions in Java, however.

    I'm primarily talking about the 'shared hosting' market

    But that's only a small part of the market. I'm talking about web development in general. This includes hobby projects and web forums, but also corporate websites, webservices, internet banking, and tons of other stuff.

    in reply to your comment (it was yours, right?) that "java dominates the web market". "Dominate" is a strong word, and I just simply don't accept that word. Difference of definition perhaps? What constitues 'domination'?

    Well, Java certainly dominates the enterprise end of the market, and that's pretty big.

    Ofcourse there are a lot of ways to measure size. Is it number of websites, number of servers, number of programmers, amount of money, lines of code?

    I believe a while ago there was a slashdot article about the most discussed languages on the web, and I believe Java was #1 or #2 on that list.

    This is exactly why I question the term 'dominate'. The huge majority of work out there is not with large corps with 'complex' projects.

    That depends entire on how you calculate your huge majority. For number of websites involved perhaps not, but if you look at number of man-hours involved, it changes.

    It is with small busineses dealing with more narrowly defined (but often still very complex) problems. PHP/Perl/Ruby are eating Java's lunch in this space.

    Are they? I know a lot of Java companies that are quite successful at building websites for small companies. A lot of our older customers are small.

    I also knew of a government website that was built in PHP for that matter, but it fell over everytime people had a reason to visit it. We redid it in Java and now it's rock solid.

    And guess what? Many of those companies grow up to be larger companies. They will not be running wholesale to adopt Java as they grow up because of some idea that Java 'dominates' the web arena.

    There is a reason why Java dominates. As they grow up, their needs and requirements will grow too. Even my employer did some sites in ASP and PHP in its early days. But it turned out Java fit our requirements much better.

    Java's good for some problems. However, it does not lend itself to rapid prototyping (Grails helps)

    I'll grant you that. Although there are also some very productive Java frameworks.

    nor does it lend itself to shared hosting scenarios (which is the majority of 'the web').

    I disagree on both counts. Shared hos

  10. Re:heyho, python - the new perl. on Why Corporates Hate Perl · · Score: 1

    There's one big difference, however: python is a well-designed, highly structured language.

    But still, dynamically typed so we get type errors at customer sites, slow, and memory hogging.

    I can't help you with the speed, but with good unit testing you should be able to catch those type errors.

    I used to think that Java's static typing was a big advantage over dynamic typing, but not anymore. While the compiler will catch type errors for you, you still need to test every possible situation for other bugs. Besides, if you don't use generics everywhere (and who would blame you?), you can still get casting errors.

    And once you've got good unit tests for every conceivable scenario, does it matter if a type error is caught by the compiler or the test? No, it doesn't.

    So despite my Java background, I'm now seriously looking at Ruby (and to a lesser extend Python).

  11. Re:heyho, python - the new perl. on Why Corporates Hate Perl · · Score: 1

    Any language in the right hands can perform small miracles.

    Definitely true. The problem is that commercial software engineering is more reliable when it's actual engineering, instead of miracle working.

    Despite its many failings, one of the strongest points of Java is that it's really hard to produce utter garbage in it. Even the biggest idiot can be somewhat productive in it.

    This is probably one of the reasons why Java is so popular: consider the amount of demand for programmers, and consider the number of idiots in the world, and you'll quickly see a fit. (The other big reason is that C++ was once very popular, and Java is very much like C++, but without the aggravated brain damage.)

    It may also explain why there are so many Java web frameworks that do everything for you; the miracle workers build the framework, and the idiots use it to build sites.

  12. Re:Crows, for one on Magpies Are Self-Aware · · Score: 2, Informative

    I don't think you understand what he's talking about. It's not about soul, it's about rationalising excuses to treat others badly.

  13. Re:Crows, for one on Magpies Are Self-Aware · · Score: 4, Interesting

    I remember reading somewhere that they have quite advanced learning mechanisms. It is enough that one of them gets hit by a car and the rest who saw the incident know not to get hit by cars.

    In a pop-sci magazine I once saw a photo of a robin hovering over a pool, with a story about how it had learned to hunt like a kingfisher. It just sat there watching the kingfisher fish, and when it left, the robin tried the same technique, refining it as it figured out what worked and what didn't. For example, it had to hover over the deeper part of the water to chanse the fish to the shallower part.

    I find it very hard to believe, but the magazine is pretty reputable. Must have been the Einstein of robins.

  14. Re:heyho, python - the new perl. on Why Corporates Hate Perl · · Score: 1

    Right now, Java does dominate the web backend.

    In what context? PHP/Perl and to a growing extent Ruby have scads of hosting options for public projects to fit every budget, which means companies and individuals of every budget can write or use web apps and make them available publically at a domain name.

    Sure, for small scale and hobby projects PHP, Perl, whatever is perfectly fine. That's what those hosting providers are aimed at. Large corporations tend to use their own IBM/HP supplied server parks, or use corporate hosting providers offering J2EE environments.

    Website hosting for Java-based apps is abysmal (and more expensive) by comparison. It's far more complicated to set up and maintain, hence fewer orgs offering it, less competition, fewer innovations, and more expensive service.

    More expensive, yes, but the rest is bullshit. It's aimed at larger, more complex projects with completely different demands in terms of performance and availlability. Fewer innovations is even more bullshit. You should really take a look at some of the web frameworks in Apache. Many of them are quite a bit more innovative than the stuff that'd happening in PHP.

    As for hosting, you can run them in anything from Jetty on a simple linux server, to full blown clustered Websphere environments, to anything in between (JBoss, WebLogic, and many more).

    It's also far more memory hungry than typical PHP (and perl, etc) apps.

    No idea if that's true, but it's often irrelevant. Memory costs nothing, nowadays. So what if my code caches 100 MB of data permanently in memory? If that helps performance, that's what's needed.

    There are dozens of web frameworks to run Java apps. So what?

    Well, that kinda implies it's not marginal.

    It may 'dominate' the 'web backend' in certain vertical markets in internal usage at many companies. But that's defining the 'web' pretty narrowly.

    It dominates the part of the web that pays salaries to programmers. And that matters to a lot of people.

    Take a look at job vacancies. I haven't checked, but I'm willing to bet that big job sites have more job offers asking for Java or Java-based technologies than PHP.

  15. Re:I knew magpies are quite "smart" on Magpies Are Self-Aware · · Score: 1

    Is there any hypothesis about how brain size relates to intelligence and sapience?

    Apparently it's the number of connections, and not the size. Or it's the size ratio compared to the rest of the body. Or it's the structure. The above article suggest that the neocortex was supposed to be pretty important, but now that apparently isn't all that necessary either.

    So basically, we still know nothing.

  16. Re:I knew magpies are quite "smart" on Magpies Are Self-Aware · · Score: 5, Funny

    Several other birds are also known for pretty amazing intellectual feats (symbolic language is a pretty famous one), considering their brain size.

    It's probably because of those scary velociraptor genes.

  17. Re:heyho, python - the new perl. on Why Corporates Hate Perl · · Score: 3, Insightful

    On the edge of what? Java is the biggest programming language in the world today. It dominates the web and mobile phones, and although it's not quite as popular for desktop programs, it's not uncommon there either.

    It's not a scripting language like Perl, however, so if your world looks like Perl, you may not notice Java that much.

    Your assertion that Java 'dominates the web' is laughable,

    No, it's your suggestion that applets are even relevant to this discussion that's laughable.

    Have you ever heard of servlets? Have you head of the dozens of web frameworks that run in them?

    You're living 10 years in the past. Right now, Java does dominate the web backend. PHP and Perl are hasbeens, and simply not suitable for the large scale web applications of today. Ruby is deifintely up and coming, but is still a long way from eating Java's lunch (though I'm sure that will happen someday -- I hope it will, because Java kinda sucks).

  18. Re:heyho, python - the new perl. on Why Corporates Hate Perl · · Score: 3, Interesting

    python seems to be the new perl

    There's one big diifference, however: python is a well-designed, highly structured language. Perl sort of grew organically from a couple of scripting languages, and had OO pasted on later.

    Perl is probably brilliant for simple scripts, but should not be used for large programs. Python is very useful for large programs, however.

    so, what happened to java? I liked it, it never went away but seems to hover on the edge.

    On the edge of what? Java is the biggest programming language in the world today. It dominates the web and mobile phones, and although it's not quite as popular for desktop programs, it's not uncommon there either.

    It's not a scripting language like Perl, however, so if your world looks like Perl, you may not notice Java that much.

  19. Re:Let's end the ruse on Obama's Evolving Stance On NASA · · Score: 1

    I do understand what you are trying to say. But again it penalizes party voters.

    Vote straight ticket republican? Beware of that democrat who just voted against you twice (once as a democrat and once as a green party).

    No, you don't understand. The democrat doesn't vote twice. He approves of two different candidates, but those votes are never added together. If the republican gets more votes than the democrat, and he gets more votes than the green, then he gets elected.

    The other problem being, it literally forces the voter to choose a lesser of two evils. You are creating the very problem that you think that you're solving.

    How?

    The current system assumes that we are voting for the best candidate that represents our ideas (After all we had a lengthy primary season and vetted out all the party odd balls).

    Then the current system assumes wrong. Nobody votes for the best candidate that represents their ideas. Lots of conservatives do not like McCain, yet they have no choice but to vote for him, otherwise they risk ending up with Obama. McCain is the lesser of two evils for them, and the current system assumes they'll vote for him.

    With approval voting, they get to cast their vote for their preferred candidate, yet still vote for McCain in the likely case that their preferred candidate won't make it. Or if they really think McCain is no better than Obama, they can vote only for their preferred candidate, and hope enough other conservatives support him so he will end up with more votes.

    Your system forces us to pick the lesser of two evils after we cast our intended vote. Chose not to cast that second vote, then someone else had more of a say than you.

    How the hell does anyone else get more say than you? If you approve of only one candidate, you can cast a very powerful vote for that one candidate. If you approve of all candidates except one, you can cast an equally powerful vote against that one candidate. If you approve of all left-wing candidates, you can cast an equally powerful vote for all left-wing candidates.

    The end result is that the American voter ultimately decides, instead of the parties who weed out the acceptable candidates for them.

    The ONLY thing your idea does is guarantee votes for a third party (that is nobody's first choice) and place an unfair disadvantage on the incumbent since there will always be more votes against the incumbent than for the incumbent.

    If there are more votes for another candidate, isn't the incumbent supposed to lose? But I get the impression you still don't understand what approval voting means. It means that a single vote for the incumbent is equally powerful as a single vote for all other candidates excluding the incumbent. If you vote for the incumbent, and I vote for everybody else, then all candidates have one vote, annd it's a tie. If someone else also votes for the incumbent, the incumbent wins. He has no disadvantage.

    The current system works.

    But not very well. Not very democratically.

    The current officials represents the majority of the views of their constituents.

    That is at least the assumption. Thing is, the two big parties select their candidates, and the common voter is present with a choice between only two candidates. Vote on anyone else, and you're basically throwing away your vote.

    If you feel that your views are not adequately represented by the 2 major parties then support an alternative party that does.

    But the system is designed so that the third party has very little chance of getting anywhere.

    You're mad because your alternative party can't garner enough votes to get out of the noise, well it sucks to be you.

    I'm not mad. My party has 9 seats in parliament because my country uses proportional representa

  20. Re:Let's end the ruse on Obama's Evolving Stance On NASA · · Score: 1

    The problems with that idea are:

    1. It allows a voter who votes against the incumbent to cast 2 votes versus the incumbent supporters single vote. This violates the idea of 1 voter casts 1 vote, and the equal protection clause.

    I don't think you understand the idea of approval voting. You can still only cast one vote per candidate. Nobody was a bigger influence than anyone else. But it's the candidate with the biggest approval from his constituency who gets elected. Compare that to the current system where a candidate can win despite disapproval of the majority.

    2. It assumes that voter supports the other non-incumbent candidate, and I know a lot more people who voted for a democrat who rather see the republican win over a green party candidate because both the republican and democratic parties appeal to the mainstream where the green party and libertarians do not.

    This is not a problem either. If someone approves of of both the republican and the democratic candidate, he can vote for both. I'm not saying this system will guarantee third-party candidates will get elected, I'm just saying voters won't feel compelled to vote for the lesser evil anymore.

    3. There are independents in congress. The election system works.

    How many of those do not have a history with one of the two major parties? How many recent presidents were independents?

    But my main point is this: have you ever heard that in the 2000 election, Ralph Nader's candidacy may have cost Al Gore votes?
    Or consider this scenario: you have three candidates: A, B and C. 40% of the people like A, 60% hate him, and prefer B or C instead. 30% votes for B, 30% votes for C, A wins, despite lacking the support of the majority of the population. How can you claim a system like that "works"? Well, a dictatorship may work too, but that doesn't make it right, fair or democratic.

    4. Our system of government has safe guards built in like:

    a. A president can only serve two 4-year terms.

    b. There are 535 members, 4 delegates, and 1 resident commissioner in congress that hold the REAL power...

    c. The president may be able to choose the supreme court judges and political appointees, but congress has to approve them. (Well at least the non-cabinet positions).

    d. While the president has the power to start a short-term war, only congress has the power to fund it.

    How is that relevant? Nobody is proposing to do away with checks and balances. I'm only proposing that votes are cast and counted in a better way.

    e. Another neat factoid We do not directly vote for the president. We vote for the electors within the electoral college.

    Yes, I know that. And that means that even without third-party candidates, a president can be elected on only a minority vote. That may work, but it's hardly democratic.

    Even more so, the district system underlying both the electors and the senators/congressmen suppresses third-party candidates even more. A proportional representation system would ensure that all voters would be represented in congress instead of just the majority of each district.

    What this means is that the third-party could technically negotiate with the other non-incumbent party after the November elections and have their electors change their support to help the other non-incumbent defeat the incumbent during the electoral college vote in December. Of course, the third-party would have to win some electoral votes first...

    How how likely do you think that is, with the current system?

  21. Re:Let's end the ruse on Obama's Evolving Stance On NASA · · Score: 1

    And soyuz is much safer than the Space Shuttle.

    Despite having done way more missions, Soyuz hasn't killed anyone yet. The Space Shuttle has exploded twice.

  22. Re:Let's end the ruse on Obama's Evolving Stance On NASA · · Score: 1

    > thanks to the war that W. started

    President Bush (43) didn't start the war. He ended the war that Saddam Hussein started in 1990.

    No, that war was already ended by his father. You may disagree with how Bush Sr. ended it (lots of people do), but that won't change the facts.

    Nor did he start the Global War on Terror (the main front of which just happens to be in Iraq). Islamo-facists started that with their terrorist attacks on civilian targets the world over.

    That's not the War on Terror, that's the Terror. But you're right that people have been fighting it before GW Bush became president. What Bush did, however, was distract from the War on Terror by waging war on a completely unrelated country (while claiming it was related). Had Bush focused on Afghanistant instead of Iraq, the world would probably be a much safer place now.

  23. Re:Let's end the ruse on Obama's Evolving Stance On NASA · · Score: 1

    McCain wasn't always this conservative. He started pandering to the Bushies before the 2004 election... something he'll have to do for four or eight more years if he wins in November.

    I'm still amazed he gets away with calling Obama a flip-flopper. McCain seems to be the most spectacular flip-flopper in the history of the republican party. Wasn't he opposed to torture until quite recently?

  24. Re:Let's end the ruse on Obama's Evolving Stance On NASA · · Score: 1

    The problem isn't the lack of term limits, it's the seniority system in committees.

    Seniority shouldn't matter. Ofcourse people with more experience are valuable, but they shouldn't automatically get more power from the system. Like you say, that seriously distorts the democracy of the system.

  25. Re:Let's end the ruse on Obama's Evolving Stance On NASA · · Score: 1

    Some will say that by voting Libertarian he is in fact helping the incumbent. At least this is what the other party will always whine about.

    Personally I think this is silly. Look at the last presidential election:

    There is nothing wrong with Ralph Nader or anyone else running as a third party. The reason the democrats didn't win the last presidential election wasn't because of Ralph Nader but because they failed to appeal to the people who voted for Ralph Nader. Of course, it's always easier to blame someone else for their shortcomings...

    The real problem is the way the election system works. Currently, people are encouraged to vote for the lesser evil, and if they vote for who they really want, the greater evil is likely to be elected. If you'd change it to an approval voting system, you could vote for the non-incumbent republicrat, and for the green/libertarian that you'd rather have in office.

    This would allow third-party candidates to get a lot more votes, without drawing votes away from the main-party candidates. The only one who loses is the incumbent, the one who currently has power, and that's why we'll never get this system.