Slashdot Mirror


User: ttfkam

ttfkam's activity in the archive.

Stories
0
Comments
1,083
First seen
Last seen
Profile
(view on slashdot.org)

Comments · 1,083

  1. Implementations on JADE Project Reborn As Javolution And jScience · · Score: 2, Interesting

    Looking at Text and TextBuilder, I can't help thinking that the interfaces between them and String and StringBuffer are basically the same. Aside from deprecating StringBuffer.capacity(..) method, anyone out there know why the implementations here couldn't simply be folded into the standard JRE/JDK? I realize the library is LGPL, but nothing in Text or TextBuilder appears to be new tech but rather old techniques applied to a new problem.

    The strengths of Java are not only in platform consistency but in API consistency. Is there guaranteed behavior of StringBuffer that cannot be handled by TextBuilder?

    As for the new interfaces, I wholeheartedly agree with Javalution's moves. Most simply amount to using CharSequence instead of String and this is a change that Sun IMO should have been more aggressive about. It would have broken some code, and I totally understand Sun's historical reluctance to do this, but Java 1.5^H^H^H5.0 did a lot of this anyway with the enum keyword et al. In for a penny, in for a pound.

    Maybe next time...

  2. Re:It Sounds Pretty Basic on High Performance MySQL · · Score: 1

    No data integrity

    MySQL has a modular design, allowing you to use any of several database backends, each with different design priorities. If data integrity is a priority for you, RTFM and pick the right backend.

    And all of those backends fail on data integrity. How? Is the following logically correct?

    'My new purple crayon' == 0

    Show me a single programming language where this evaluates to true. Show me a reasonable human being who say that this seems reasonable. And yet if I try to insert that string into a column marked integer, 0 is what I get. No error. No warning. No notification. No equivalent of a compiler error. Nothing except "query successful".

    That my friend is an example of data integrity problems. And if you feel the desire to cite programmer error, you are right. Inserting a string into an integer column is programmer error. In the real world, programmer error happens. The issue isn't the programmer error. The issue is that your datastore never lets the programmer know there was an error. That is fundamentally wrong for a datastore. Hell, that's fundamentally wrong for any software at all!

    Completely non-standard SQL

    This is true of pretty much all DBMS's. MySQL's development cycle is quite delightfully quick, meaning that if people want certain features added, it doesn't take long to get them added.

    Try comparing PostgreSQL's SQL syntax to SQL92. Do the same with MS SQL, Sybase, Firebird, Oracle, SQLite, etc. Yes there is deviation, but the lionshare is standard.

    Now look at MySQL. No, I don't mean unique features of MySQL. I mean the features that are common with all other RDBMS software. It's not even close. Quoted integers are acceptable?

    And don't get me started on the CHECK keyword. CHECK constraints are in my opinion a bread and butter feature of any database. MySQL used to throw an error when a CHECK statement was used. What was their solution? Implement CHECK constraints? No! Their solution was to have the parser accept the CHECK syntax and simply not do anything about it. No error. No warning. Hmmm... I could see the conversation like it was yesterday...

    "Hey! Why didn't my CHECK work?"

    "Didn't you read the docs? The documentation clearly states that the CHECK syntax is ignored."

    "Why would I? Every other piece of software I use, if it supports the syntax, it supports the functionality. Do I need to make sure that UPDATE is supported too?"

    "Of course not. Stop bashing MySQL."


    It's like anytime anyone mentions any of MySQL's proverbial elephants in the corner, the response is to claim that grossly inappropriate behavior is justified by its adequate documentation.

    No extensibility in the engine (functions, stored procedures, etc.)

    Ummm... MySQL has those.

    In the alpha branch, yes. Until that is in code that is recommended for production, I'm sorry. You don't get to use it for a feature comparison.

    Weird handling of '0' vs. null

    The special handling of null forces you to write slightly less braindead code.

    I don't see this at all. If you write "braindead code", any other RDBMS would cry foul and spit out an error. So what does the programmer do? S/he fixes the code and moves on.

    With MySQL, submarine bugs are easier to write since there is no real validity check being made. Your argument is like someone saying you should write C code with nothing but void pointers. Why not! If you know what you're working with and you aren't making braindead decisions, everything should work! People who can't handle simple offsets are just a bunch of stupid crybabies who need extra hand holding from the compiler.

    In the real world, "NOT NULL" means "I need actual data there." "DEFAULT 0" means "if you don't supply data, put in this defau

  3. Re:Apples and oranges on High Performance MySQL · · Score: 2, Insightful

    This would be all well and good but PostgreSQL isn't standing still either. By the time MySQL 5.0 stabilizes, PostgreSQL will have a new host of features that MySQL lacks.

    But that's fine. Not everyone needs all of the current features of PostgreSQL let alone all of the potential new ones.

    HOWEVER, MySQL needs to work on data integrity post haste. "my new purple crayon" being logically equal to 0 is not a missing feature; it's a data loss bug. No error. Not even a warning. A bug in software that tries putting a string into an integer field will have no notification that anything went wrong until after the data is retrieved later. It's things like this that keep me from liking MySQL, not its lack of features.

    Until then, when I need SQL and something small, I'll be using SQLite.

  4. Re:MySQL Performance on High Performance MySQL · · Score: 1

    SQLite is faster, more SQL92 compliant, and simpler than MySQL. So if you're just looking for an SQL front end to a simple dataset, there are better choices.

    If you are (as I think) using MySQL has a web data backend and not updating/inserting often (meaning less than every few hours), why use a live database at all? Pregenerate static files for the site and get a massive speed improvement.

    I honestly believe for most small projects mysql is a usable tool for the job. However, it is very rarely the best tool for the job. In terms of learning good database practice, it is almost never a good tool.

    You may never have seen MySQL lose data, but that doesn't mean that MySQL will bother to tell you when a bug in the code tries to insert a string into an integer column. As far as MySQL is concerned, "my new purple crayon" is logically equal to 0. My main beef with MySQL is that you can go extended periods of time with MySQL losing data and not know it.

    Make backups often.

  5. Re:1.3 VS 2.0 on Apache 1.3.32 Released · · Score: 2, Interesting

    The old license (and the BSD license) only dealt with copyright, not patents. The Apache 2.0 license adds a patent clause.

    If you get into a patent war with the ASF, you can't use ASF code anymore. This is terribly unfree? Apparently we have differing views on what "free" is. Since a software developer needs a cadre of patent lawyers on their side with the way things are going on the software patent arena, I for one welcome the clause. It allows me the freedom to compete and participate in a field that is steadily becoming more and more hostile to independent developers thanks to the USPTO and WIPO.

    If he (Theo) has an argument with parts of the new license, then he should critique those parts of the new license. "More stuff" does not make an effective or lucid critique in my opinion nor does your assertion of "unfree stuff."

    Unfree stuff like what? Be more specific. Convince me. Unfree stuff like what? Like the fact that the license is legalese? C'mon. That's laziness. It's what? 200 lines long? Spend an hour or two some evening going over it and be done with it. If there's something there that truly concerns you, let me know. I would like to know what you see as a problem.

  6. Re:Where not to use 2.0 on Apache 1.3.32 Released · · Score: 1
    I wrote:
    There is absolutely no reason for a sane webmaster to use Apache 1.3.x on new installations unless they have an absolute showstopper incompatibility.
    I don't use client SSL certificates, so it's not a showstopper for me.

    If a bug in any one feature disqualifies a version, then surely the HTTP 1.1 problems in 1.3.x's mod_proxy would surely apply. In this case, 1.3.x is not an option because I need and use mod_proxy. In fact, I would wager that more people use mod_proxy as a reverse proxy than use client SSL certs.

    Go back to your cave, troll.
  7. Re:Practical difference between Apache 1.3 & 2 on Apache 1.3.32 Released · · Score: 4, Informative

    Some differences:
    1. mod_proxy has been completely rewritten so as to be fully compatible with HTTP/1.1
    2. caching has been removed from mod_proxy and made into its own module, mod_cache, with a couple of implementations available
    3. your choice of pre-fork (1.3.x model), single process/multiple threads, and various hybrids

    As a point of fact, OS X Server comes with Apache2 as well (check your /opt directory). It doesn't have a GUI interface though. I don't know why. Since the GUI only edits the 1.3.x config files and starts/stops the service, there is no technical reason why it couldn't be supported by the GUI. My guess is that Apple, just like any other company, has to pick and choose what it spends effort on. Opportunity costs and all that. They probably started development on the Admin GUI while 2.0.x was still relatively new and untested. At the time, supporting 1.3.x was a no-brainer.

    The web accelerator's tendency to redirect clients to port 16080 in some configurations is annoying though. It makes me wonder if Apache2 configured as a reverse proxy and using mod_cache would work just as well.

    As for your security concerns, switching to 2.0.x will not arbitrarily hand your bandwidth and personal files to everyone on the internet. File and Directory directives still apply.

  8. Re:1.3 VS 2.0 on Apache 1.3.32 Released · · Score: 4, Informative
    Where to begin...

    There is absolutely no reason for a sane webmaster to use Apache 2.0.

    1. HTTP 1.1 compliant mod_proxy
    2. Caching separated out from mod_proxy
    3. Faster flat file serving
    4. Content filtering
    5. Ability to match processing model to problem at hand (yes, some operating systems have fast threading libraries)
    6. New development done on this branch
    7. Better reuse of code and platform abstraction with APR

    Shall I go on? The proxy and cache improvements alone were worth the upgrade to me. As far as problems with PHP, the pre-fork processing module retains the advantages of 2.0.x while retaining the robustness of PHP on 1.3.x.

    There is absolutely no reason for a sane webmaster to use Apache 1.3.x on new installations unless they have an absolute showstopper incompatibility.

    That said, 1.3.32 has the newer Apache 2.0 license, not the old one. So here you have the choice of the new license or older versions with bugs and security flaws.

    Theo and his OpenBSD team have dropped support, it's true. Can you find the reason why? Is it because the FSF states that it isn't GPL compatible? No, that can't be it because the older license wasn't either. Could it be because of the patent termination clause -- if you put a patented algorithm in the code and sue someone over patent violation, you can no longer use Apache software? I never knew Theo and Co. to be in favor of protecting software patents in open source software. So why?

    I was able to find this comment from Theo: "We've been clear: Their new license contains more stuff, and we do not accept MORE STUFF in licenses."

    I'm sorry, that's a bullshit argument. Imagine if a group of lawmakers were writing code on the side to make their jobs easier, a group of professional programmers found a problem with the small program, submitted a patch, and the lawyers proclaimed, "We will not accept this new code patch because we lawyers can't understand it at first glance." It's the same thing here folks. If you want no legalese at all, you submit your code to the public domain and be done with it. Why do we have these licenses with legalese? Because the public domain isn't good enough in many regards. That's why the various open source and free software licenses exist. They are not present so that coders can sit back with a cup of tea by the fire reading them with enjoyment. They are formulated by a group of people working in the problem area in which they have specialized so that you and I don't have to reinvent the wheel badly. THIS IS THE SOLE REASON THE APACHE SOFTWARE FOUNDATION EXISTS!

    The day I want Theo acting as my legal advisor is the day that I want OJ's lawyers hacking my production kernel. That said, the Apache 2.0 license is NOT that hard to understand. As for Theo's charge of containing "more stuff", that's like saying v1.0 of the Linux kernel is automatically better than v2.6.9 because they've added "more stuff" to the newer version.

    I have worked both with 1.3 and 2.0. 2.0 is modular and some people like it, but I think that monolithic programs are more stable and much more faster than modular ones.

    As for the modular vs. monolithic tripe, what pray tell do you think 1.3.x is? See all those LoadModule directives in your httpd.conf file? Take away modules and Apache 1.3.x does NOTHING. What's that? You can compile modules in statically with 1.3.x? Guess what Einstein? You can also do it with 2.0.x. Apache 2.0.x is simply slightly more fine-grained modularity.

    Regarding the speed and stablility argument, I call bullshit. 2.0.x is faster than 1.3.x under every metric I have seen used from dynamic content generation to flat file serving. Hell! Even server-side include processing is faster in 2.0.x. As far as stability, where is your data? Neither goes down for me. Then again, when running PHP apps, I use the pre-fork module because so

  9. Re:MySQL Performance on High Performance MySQL · · Score: 1

    It's not just you.

  10. Oops on Zero-emission Power Plants Proposed · · Score: 1

    My bad. Nice catch.

  11. Re:Whats the motivation? on Zero-emission Power Plants Proposed · · Score: 4, Interesting

    We'd probably also have newer, more efficient nuclear power plants and decommissioning many fossil fuel plants if it weren't for "bleeding heart California liberals and environuts."

    Every group seems to take turns saving us and screwing us over.

    That said, you're absolutely right. Bush's Clean Air Act is like a line from Orwell's 1984 doublespeak.

  12. you forgot something... on Zero-emission Power Plants Proposed · · Score: 1

    How much CO2 is removed from the atmosphere from natural causes (photosynthetic plants for example)? Overall production of CO2, while an important metric, is not the only metric needed in this case.

  13. ZEPPs Already In Service on Zero-emission Power Plants Proposed · · Score: 1

    We get about 20% of all our electricity from them. They're also known as nuclear power plants.

    And before some wise ass decides to say, "The waste is an emission," no it's not. At least it's not in the context of this article.

  14. Re:Condorcet is easy... on Bush, Kerry, and Nader Respond to Youth Voter Questions · · Score: 1

    You can understand it. I can understand it. Then again, I thought Calc 1 and 2 were really interesting and fun. My idea of a good time is whipping up a photo gallery web site for my friends.

    We are not representative of the general population.

    The advantage of IRV is that anyone who likes football (read: a much higher number than the ones who code or enjoy higher math) can understand it. You make analogies to the playoffs. The team with the lowest number of wins gets dropped. Repeat until there is one left (SuperBowl). Condorcet requires more.

    I like to think of it as IRV being like the person who checks stats at the end of the season to see what the win-lose-tie record is. Condorcet is like the person with the clipboard keeping tallies of all the games, injuries, and draft picks during the season and calculating up to the minute propabilities. If I had to rely on the judgement of only one as to who would win the SuperBowl, I'd obviously choose the latter. But not all of us have that much time and interest so we just check the win-loss stats before the game, drink beer, and enjoy the show.

    Condorcet is quite possibly the best in accuracy. That unfortunately doesn't make it the best once people are added to the equation.

  15. Well when you put it that way... on Bush, Kerry, and Nader Respond to Youth Voter Questions · · Score: 1

    Think of it like the arguments about capitalism and democracy. Both are terribly flawed and even perhaps downright terrible. They are the absolute worst except for the alternatives.

    I can see how IRV isn't perfect. In fact, it suffers from many of the same problems as what we have now. As far as being 2% away from a landslide versus a close race, who cares!?! In both your cases, the candidate preferred by the majority of the populace is chosen. In addition -- and this is the most important selling point -- it keeps the nuances of public sentiment in full view instead of making decisions seem either-or. The current system allows for deeply divided populaces and candidates who are elected contrary to popular mandate.

    Let's say we have a strong two-party system (stretch of the imagination, I know) and a minor 3rd party.

    45%: R
    44%: D
    11%: G

    Here, R wins by a slim majority even though everyone KNOWS that supporters of G would rather have D by a huge margin. But let's say that even though a small group prefers G, they absolutely hate R, and so they vote for the electable candidate D contrary to their real preference.

    45%: R
    46%: D
    9%: G

    Here, D wins. Wow! A 2% shift changed the outcome. Even better, because many supporters of G hate party R, they are torn between voting for reform or playing a part in moving in a direction quite the opposite of what they want. At least in your IRV example, you could see the collective thought processes involved in the choice much better. It may have been a landslide versus close, but even minor analysis like yours demonstrated that at least we could see what was going on.

    No matter what voting method is used, strategic voting will play some part. However with the current plurality voting, transition to other parties is basically impossible. When federal matching funds come into play, IRV becomes much more important. The difference between 10% of the vote and 15% is negligible to the outcome. But it terms of visibility, funding, and access, that 5% makes a world of difference.

    IRV is not anywhere near perfect. Then again, we're dealing with people and populations here. No solution will EVER be perfect. But I encourage you to take another look at your example. In both cases, the candidate that the majority does not like will not take office.

    Most plurality elections don't represent the exact will of the people. You think Republicans would have preferred Gore to just about any other Republican in the primaries? Ditto for the Democrats.

    Try this thought on for size: IRV makes primaries obsolete. With the demise of the primaries, parties become diluted. 3rd party doesn't mean what it means today anymore.

    And let's face it, the outcome of the last election may very well have been similar. Ultra-liberal votes for Nader, Bradley, Gore. Ultra-conservative votes for Buchanan, Forbes, McCain, Bush. It would still take some time for people to shake off their stereotypical political ideologies. The last election would still be liberal vs. conservative with the moderates pulling them both to the center. In the end, the result would probably have produced someone not quite so reviled by half the populace.

    At least with IRV, the least wanted candidate in a three-way race is guaranteed not to win. This isn't the case today. Given sufficient time, two-way and three-way races would go the way of the do-do anyway. (See note about primaries.)

    -----

    And before someone mutters Condorcet, I must say, 'shut up.' Not because Condorcet isn't better. Mathematically, it's great! However, it is complicated. One of the requirements of an election is that a populace trusts the election process. If a large proportion doesn't understand the mechanism (for better or for worse), that mechanism isn't viable. IRV is simple enough to understand but markedly better than plurality.

  16. Considering... on Mobile Phone Use And Acoustic Neoroma · · Score: 4, Insightful

    Considering that cell phones have been out for more than twenty years and that digital cell phones (higher frequency but lower power) have been out for more than ten, are we seeing significantly higher rates of acoustic neuroma?

    Let's face it. We have a sample size in the hundreds of millions. It would be pretty easy to pick out pathology rates with any significance.

    And is it the radio frequency that would cause the problem? The power output? The heat? The volume level?

    I applaud these researchers for looking into it, but I am not looking forward to the crackpots who will inevitably come out of the woodwork proclaiming this to be proof that cell phones and cell towers are obviously the cause of every ailment that plagues them from toothaches and bed head to their 89 year-old grandmother's lumbago and lactose intolerance.

  17. Ummm... no on Presidential Candidates Arrested at Debates · · Score: 1
    While I applaud the candidates in their acts of civil disobedience, this is NOT the same as the Civil Rights Movement of the 50s and 60s. Absolutely not.
    1. There were no firehoses
    2. Libertarians and Greens are allowed to vote
    3. Libertarians and Greens can marry members of other political parties
    4. There are no "Republicans and Democrats Only" and "Libertarians and Greens Only" drinking fountains, bars, and diners
    5. No one has publicly threatened to kill the Libertarian and Green party leadership on sight
    6. No one has publicly threatened to kill supporters of the Libertarian and Green party leadership on sight
    7. Most important, at the end of the day, a Green or Libertarian party member can change their political affiliations
    Their actions may be justified, but they are not on par with MLK, Malcolm X, Rosa Parks, or even my great uncle who got his barn burned down by the KKK because his kids were in the Civil Rights Movement.

    Perspective.

    Badnarik and Cobb have done a good thing, but to compare this to the Civil Rights Movement belittles it more than you apparently realize.

  18. Pot meets kettle on Did Kerry Use a Cheat Sheet? · · Score: 1

    If it's against the rules, they *both* broke the rules. This isn't partisanship. Go to c-span.org and click on the first presidential debate. After the video starts playing, fast forward to 42 minutes 20 seconds into the 90 minutes. This is a segment where Bush is speaking. Oh! What's that clearly in his right hand? Would that be A PEN!?!

    Watch the video in ten minutes leading up to that point. Bush periodically looks down at the podium and moves that pen around. Is he writing?

    Personally I don't care either way. Why? Debates are about arguments. Arguments don't become more or less cogent because you have notes. When I'm in a debate, it's nice to be able to take notes on what your opponent said to better use it against them. That's what a debate is. It's ridiculous to me that pen and paper are not allowed.

    But even so, if a pen is against the rules, they *both* broke the rules.

  19. Re:Who ever said Java was slow? on Resin Released Under GPL · · Score: 1

    Why do I get the feeling that your cited benchmark started a JVM and immediately started hitting it? The server JVMs with Hotspot need warmup time so that they can do their code analysis. Since servers generally run for extended periods of time (months?), this is not an unfair requirement for testing.

  20. Re:Wow, only need 199 more! on World's Largest Wind Turbine · · Score: 1

    Don't forget that these wind turbines need space. Did you see those pictures? Those things are huge. So you have to space them out both side to side and how far back they need to be to avoid the previous one's air disruption so that their power output is maximized.

    So what are we talking? A quarter acre per 5MW turbine? An eighth? A half? Get more than a few and you're talking about large tracts of land. You also start talking about filling up a particular wind corridor. You may be able to build more wind turbines, but can you fit them all in the sometimes narrow wind corridor?

    I'm not saying that wind is a bad idea, but you can't necessarily just "build the windmills one after the other and attach them to the grid." 3.848 trillion kilowatt-hours of electricity were used by the US in 2003. A 5MW turbine at 100% capacity 24/7/365 gives 43,800,000 kilowatt-hours of electricity. That's close to 90,000 of these high capacity wind turbines needed in the best of circumstances. Looking at a map of wind patterns over the US, I'm at a loss as to where we can fit 90,000 of these in an area with sufficiently strong and consistent wind.

    I also didn't see any mention of cost on the web site. Certainly more than $1,000. $500,000? $1,000,000? When you're talking about one, the cost isn't as big a factor. When you're talking about the equivalent of 90,000, cost becomes a major factor.

    Noise? From the look of their designs, you'd get a steady "whoomp" every few seconds where the blades pass by the support column. Perhaps in high wind areas, you wouldn't be able to hear it. Then again, we're talking about a few of these per square mile. "Whoomp... whoomp... WHOOMP!" I know it would drive me nuts if I lived nearby.

    I really want wind to work out, but I just can't see actually happening in any role other than supplementary, secondary grid power or for localized, small communities.

  21. Re:Well, on World's Largest Wind Turbine · · Score: 1

    On the very small scale perhaps. On the scale of your typical home, a full rooftop solar array, they most certainly do NOT pay for themselves in 2 to 3 years. I don't know about you, but I don't spend tens of thousands of dollars on electricity from the grid every 2 to 3 years, and I have not seen a full rooftop array that costs less than $20K.

    If you have, I'll wager a tax rebate or other form of subsidy was at work in which case it didn't pay for itself that quickly, you simply had your costs shared by all the folks around you who didn't get a PV array but pay taxes.

  22. Re:Why MySQL? on Beginning PHP and MySQL · · Score: 1

    Yes, PostgreSQL can do fulltext searches.

    With the tsearch2 module, you can even order results by relevance/accuracy rather than just return in row order.

  23. Re:Why MySQL? on Beginning PHP and MySQL · · Score: 1
    My statement was true. I'm currently running MySQL 4.0.21, and text is able to be entered into integer fields without error or warning.
    mysql> create table slashdotproof (numbers_only INT);
    Query OK, 0 rows affected (0.06 sec)

    mysql> insert into slashdotproof (numbers_only) values ('the giant purple crayon');
    Query OK, 1 row affected (0.00 sec)

    mysql> select * from slashdotproof;

    numbers_only

    0

    1 row in set (0.00 sec)
    Note: select output edited for slashdot junk filter

    'the giant purple crayon' is not equal to 0 in any programming language or any other database management system that I am aware of. My string has been converted to an integer with loss of data in the conversion. This was done without an error or warning.

    Ergo, MySQL is a steaming pile.
  24. Re:php + mysql == beginner on Beginning PHP and MySQL · · Score: -1, Flamebait

    php == beginner who never wants to get better
    python == a fucking great first language
    perl == a great first language when not using python
    lisp == terse

    postgres == really cool (google for autovacuum)
    mysql == steaming pile, but if all you know is steaming piles, pretty good
    oracle == five gojillion dollars but if you need it, you already make enough money

    slashdot == home of the generalizations

  25. Re:Why MySQL? on Beginning PHP and MySQL · · Score: 1

    More hosting of MySQL means more books. More books means more hosting.

    So when are people going to step back and realize, "Hey! This isn't very good?" Although with PHP 5.0 it looks like that community is trying to clean up their act, MySQL is still a steaming pile with hackish functionality tacked on top.

    The string "the giant purple crayon" should never be allowed in an integer field let alone without at least a warning dammit!