Slashdot Mirror


User: Moraelin

Moraelin's activity in the archive.

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

Comments · 5,521

  1. Re:Excellent on U.S. Students Shun Computer Science, Engineering · · Score: 1

    I will partially disaggree with "you don't -need- a CS degree to do computing work". Technically it is right. You don't absolutely need it. But there are some theoretical things you better learn from _somewhere_, or you'll be forever at best the IT equivalent of a burger flipper.

    E.g., I have entirely too often discussions like this with co-workers (mostly contractors that actually come from another company):

    ---
    Burger Flipper 1, with a debugger: "Java is buggy!!! Look what the stupid HashMap is doing! It's replacing my old element with a new one!"

    Burger Flipper 2: "Yes! I've seen that before in a program! We had to manually set the hash map's initial size, so it doesn't happen!"

    Me: "Umm... guys? A HashMap is an array of linked lists. What happened there is just normal. It didn't 'replace' your object, it just pushed another element into the list. Just click on that 'next' pointer and you'll see your old object."
    ---

    or

    ---
    Me: "We'll use a tree."

    Him: "What's a tree?"
    ---

    Etc. Sorry, I'm talking about even the most elementary stuff. Stuff like elementary data structures. Stuff like the difference between an O(n * n) algorithm and an O(n) one... and why the first will look like it's fast enough on small sets of test data, but will become a flaming disaster when in production n=3,500,000.

    I've actually seen two so called "programmers" who actually couldn't cope with something as simple as a tree, or with recursion. They spent months trying to transform the data into a flat array. The catch? On the fastest computer available at the moment, and for even a small tree, saving the data to disk took a couple of minutes. Reading it took 5 minutes. No, honestly, that's the actual measured time. By contrast, just using a tree produced times under 1 second.

    Now _you_ may have learned those on your own. Lots of people do. The problem is that 20 times more people don't. They're content to do what I call "cargo cult programming."

    The term "cargo cult" refers to the savage tribes which, at one point or another, received goods from ships or airplanes. So when the goods stopped coming in, they started carving statues of ships or airplanes and worshipping them. Hoping it would actually achieve anything.

    Well, a lot of the untrained burger-flippers of IT do just that. They never understood, for example, what a singleton or a factory really mean, nor when they're really used, nor why. They just saw some code which used that, and they proceed to mindlessly copy it into the most idiotic and unneeded places. They'll religiously carve a statue of a singleton (or the code equivalent of a statue), and a statue of a factory, and hope that blind faith in those will make their code work.

    (Or a statue of whatever else. Of a cache, for example. Or of an XML handler. Or whatever else. No technique or technology is too good to be mis-used by these clueless clowns.)

    And when it doesn't help, they don't even have a clue why. Just like those savage tribesmen. They'll just carve more statues, and have faith that enough such mindless copying will eventually bring forth the blessing of the singleton gods.

  2. Re:Hear hear on U.S. Students Shun Computer Science, Engineering · · Score: 2, Interesting

    Psst. It's safe to get off the high horse already.

    It's not about calling the users "tards". I'll be the first to say that the end user should _not_ have to be a High Priest of the Sun (or IBM or Microsoft) to be able to use a computer.

    It's about those who are supposed to be programming the damn computer. And sorry, if they can't do the damn job they're _paid_ for, then I'll call them "tards" all right.

    That is, when they even have any intention of doing that work in the first place. I've seen entirely too many people who keep their job purely by office politics (e.g., being the resident brown-noser). Or hop from one job to another, adding more buzzwords to their resume after each project, in spite of the fact that they caused more harm than good in that project.

    A study down here said the 3 out of 4 "programmers" (or paid as such) can't program. No, I don't mean "can't program well", nor "can't write bug-free exploit free code". I mean they can't really program at all.

    At best, they'll painfully blunder through copy-and-pasting bits of tutorials and other people's code, and spend years trying to actually make it work. E.g., I've literally seen someone patiently trying all permutations of * and & and nothing at all variables in a C functions, until they got the pointers to work. But these are the good guys.

    Then come the ones who realize that they just have to _look_ like they're producing any code. They'll tend to piggy-back upon a real programmer and make him write their code too. Some nicely. (Flattery and looking like a friend goes a long way to make a lonely geek do your work.) Some by pretending it was team work. (Good version: "_we_ coded this". Bad version: "_I_ coded this. Oh and that geek guy just got in the way.")

    A lot of those will be rabid proponents of XP. It gives them an official excuse to be paired with the one actually doing the work.

    Some pretend to work by just randomly editting and commiting files, just so it appears with their name in the CVS. Sometimes to catastrophic results.

    And a lot just do backstabbing office power games to keep their job.

  3. Re:Wow! on KDE And Gnome Together At Last? · · Score: 2, Funny

    Nah, you're not thinking far enough. Let's really merge them.

    Let's have a desktop which now starts _two_ sound daemons on startup. Nevermind that ALSA already can mix sounds very well on its own. We're hackers. We want to write yet another complex handler, especially if it involves threads. In fact, let's write a third sound daemon, whose job is just to interface with the other two.

    Let's also load and initialize two damn huge graphics libraries, and the usual gazillion wrappers around each of them, right on startup. (E.g., each of them just has to come with its very own clever font renderer.) Of course, that also goes without saying for each of the gazillions of other personalized libraries that KDE and Gnome just had to include. And, of course, the gazillion programs and applets that each of them just has to load into RAM on startup.

    Now we can really compete with Windows XP. If not on ease of use or mindshare, at least in the hundreds of megabytes of RAM used and minutes to wait on startup and shutdown. But, hey, it's a start. It worked for Microsoft.

    Me? I'll be the guy running XFCE 4. It does everything I ever wanted from a desktop and window manager, and starts in a quarter of a second.

  4. I.e., bad management on The Unhappy World of IT Professionals · · Score: 1

    I.e., you're telling me that people don't like working in a grossly mis-managed environment.

    Why was the other guy allowed to check-in something that breaks the application? Are there no test-cases? No integration tests? Now if it happens once or twice is one thing, but if it happens regularly, it's just an incompetently managed project. It's that simple.

    And that goes double if untrained monkeys off the street are hired and left to wreck havoc upon the project. One of the most depressing aspects of being a programmer is seeing clueless PHB's who can't even program their VCR's clock, decide that "hey, programming is easy. Let's just hire any burger-flipper who's skimmed through some 'java for retards' booklet." Then said retard wrecks havoc upon other people's work, blames everyone else, and... nothing happens. The incompetent clod happily keeps his job, because, hey, he's cheap.

    And changes? Yes, most of us can accept changes. But the questions are:

    1. Is time also allocated for those changes? Or are people forced into doing 84 hour weeks just to meet someone's accepting 4 months of extra changes in a 6 month project, without also changing the deadline? Nothing gives someone more of a feeling of "my boss is incompetent, but it's _me_ who gets punished for it" than constantly being forced to do overtime because the boss is too weak to say "no".

    2. Are those changes pointless blundering? Like spending 6 months changing the reports from landscape to portrait and back, because the client can't decide how he wants them? Could that stupidity have been prevented? E.g., by showing the client some mock-up first to help him make up his mind?

  5. Re:I think... on Wooden Computer Accessories · · Score: 4, Insightful

    Well, here's what I don't understand. (And please don't take it as a flame or anything.) Why would anyone want an ugly transparent contraption?

    The innards of my computer are a twisty maze of cables, all alike. Between the hard drives, two CD drives, Audigy 2 Platinum front tray, case fans, etc, it's one big mess of cables.

    Not that it would be any better without the cables. It's a colour cacophony of red PCBs, blue PCBs, traditionalist green PCBs, aluminum heatsink on the CPU, copper heatsink on the graphics card, and whatever else.

    Now if I were to also add some lit fans or neon lights, as seems to be the custom, then it would only get an even uglier colour cacophony.

    What's that supposed to look like? A cheap circus tent? A bad acid trip? A sad clown on a really bad makup day? A terror attack on a paint warehouse?

    And the real question: why on Earth would I want to look at that every day? Also: why would I want the others to see that?

    Now I can see haow that would have a novelty factor in the beginning, and can appreciate at least the work of those who personally modded their own case. (Even if to a butt-ugly result.) But... you know... it's been some years already. The novelty ought to have worn off, and you can already buy that kind of cases mass-produced.

  6. Re:Peering into my crystal ball... on Microsoft To Be Fined E500M By European Union? · · Score: 0, Offtopic

    Well, no offense intended to the US military, but... you may notice how even the first Iraq exercise wouldn't have been possible without having Saudi Arabia as a staging area. And Saudi Arabia isn't just a patch of sand. It's a country with good infrastructure, and a metric buttload of airports which it let the US use.

    And even then, it took how long to get enough troops and supplies there, before the US could launch the attack?

    Right.

    So basically if you extrapolate this to something the size of the EU or USA, you can see how neither is ever going to get enough troops over the Atlantic to tackle the other.

    Also note that the flow of troops and materials towards Iraq was not obstructed in any way. The supply airplanes didn't have to deal with enemy fighters. The ships didn't have to deal with enemy navies, subs and enemy airplanes launching missiles at them. In a hypothetical EU vs USA slug-fest, neither side would have that luxury. The USA would do its best to interdict any EU convoys, and viceversa.

  7. Re:Speed on Intel's Pentium 4 3.4GHz Processors Reviewed · · Score: 1

    Let me tell you about my day at work.

    Just generating the RMI stubs for one small module with WebSphere's lobotomized Ant tasks takes anywhere between 1 and 3 minutes, depending on the module I'm compiling. On a Pentium 4 2.26 GHz. It's a purely command line process, so how would a GPU help?

    Deploying anything on the Solaris test server takes ages. Deploying the GUI takes literally half an hour, punctuated by needing to click on the "next" button in that stupid wizard approximately once every 5 minutes.

    Exporting the whole application from the test server takes 4 hours.

    Could that server use a faster CPU? You bet.

    And even in games, there's one factor which the marketroids at Nvidia and ATI conveniently ignore: the AI and physics.

    All those screenshots may help sell a game, but people have started expecting more from the enemies than standing in place and waiting for you to shoot them. Or in flight sim you might have to not only run the AI for 20 planes dogfighting, but also a hefty physics engine to simulate their flight.

    Then there are moddable games, and more interesting here are the scriptable ones. E.g., in "Morrowind", and even more so in "X2 - The Threat", a whole lot is programmed in an interpreted script language in the first place. The turrets' choice of whether to shoot an enemey or an incoming missile (and which enemy or missile), the freighters' choice which goods to buy from where, the destroyer captain's choice of which targets will get a broadside, those are all scripted.

    Better yet, you can write your own scripts if you're a modder, or change the existing ones. Some people have done wonderful things with those scripts.

    Run too many script heavy mods in either of the two games, and you may well discover why the CPU is still important.

  8. Re:It is linux's fault on Freeware for Windows -- Where Did It Go? · · Score: 2, Insightful

    Yes, god forbid that anyone might try to come up with a better API.

    Surely something like that would never happen in the Linux world... oh, wait. It does happen. Everyone and their grandma has to come up with their own widgets (QT, GTK, Motif, Mozilla's own crap, etc), their very own font rendering library, their very own sound daemon, their very own graphics library (e.g., I'm sure SDL or SVGALib don't exactly align 1-to-1 with OpenGL either), etc.

    So I hope you'll have some understanding if I find this kind of double standards funny. If it's in Linux it's cool to reinvent your own API for everything, but if it's Microsoft, it's a heinous crime to do the exact same thing. Right. Can I have some of those funny cigarettes too? ;)

  9. Re:Awesome! on Video-Game Publishers Outsource Development · · Score: 1

    Sorry to break some reality upon a jolly good rant, but the US didn't have that much of a video game industry to start with. Most of the games made, or copies sold, came from Japan and Europe, not from the USA. The UK alone has a bigger game industry than the whole USA.

    So the difference this will make, in the USA or globally or whatever, is the proverbial split in the bucket.

    Second, I keep reading the stupidity that it's all the plan of some fat capitalists to line their pockets with billions. What lining the pockets? Most video game companies _and_ most publishers went bankrupt and/or got bought. Where are those fat capitalists lining their pockets? So far everyone's been making a loss, not raking up 100,000,000 a year salaries.

    The reality is that most of the money in the PC video game industry is in retail. The shop selling those games makes a nice buck. The dev making it is probably either bankrupt already, or going that way fast.

    The publisher of that game? Either:

    1) Struggling with financial problems, and looking for a buyer (e.g., Interplay), or

    2) Taking money with both hands from some of their sports games or MMO franchises to cover the loss incurred by publishing that game (e.g., EA), or

    3) Taking money with both hands from some other core business to cover the losses incurred by publishing that game (e.g., Microsoft)

    The reality is that everyone wants flashier graphics and funny effects and whatnot. Everyone and their grandma will sneer if the latest and greatest game doesn't model every single hair on a human, or the exact reflection of the streetlights on a car. You do anything less than that, it gets crap reviews.

    And all that cost big bucks to make. The ever increasing polygon counts and animations take more and more man-hours to make.

    Most games have budgets which would need the game to be a best-seller just to recoup the investment, and a _huge_ success to make a profit at all. They're published in some vain hope that it will be such a huge success. Sadly, the vast majority of games aren't.

    Oh well... Maybe the next game will be. Except that next one will need even more polygons and animations. It's a death spiral of costs increasing faster than revenues.

    I.e., it's not about some fat capitalists lining their pockets, it's about survival. If that video game industry doesn't cut down its costs, everyone in it will simply go bankrupt.

  10. Re:Bad idea for several reasons on Video-Game Publishers Outsource Development · · Score: 1

    1. This is bull. The Japanese never had a problem making, for example, Valkyrie Profile. A complex RPG based on Norse mythology.

    Why did a game based on Norse mythology have to come from Japan? No, seriously. Why didn't anyone in Europe or the USA make that? Someone from a non-Confucianist country, and all that?

    Oh, wait. The US devs were too busy making yet another brainless clone of Quake, C&C or Diablo. It sold well last year, so let's just skip any design work and just do an uninspired clone.

    2. Right, unline American devs, who surely never miss a deadline and whose patches always work. Oh, the bullshit.

    Sorry to break some reality upon your holier-than-thou act, but I've played several PC game coming from Eastern Europe. Serious Sam, Rage of Mages, Evil Islands, etc. Guess what, lemming? They got patched. Or some of them were already incorporating the latest patch by the time they were released in the US. So get off that high horse already.

  11. Re:Wrong, Blizzard servers do more than matchmake on Blizzard's World of Warcraft Beta Goes Live · · Score: 1

    Yes, I know where Diablo II saves. So it's a matchmaker with a file server for your tiny saved file. Big deal. There is a difference between "saved on their servers" and "played on their servers", no? Even just the sheer amount of data processing that a MMOG game must do, is a whole different league from sharing a large-ish hard drive for saved games.

  12. Re:Oh, please... on Blizzard's World of Warcraft Beta Goes Live · · Score: 1

    Well, here's my take on it.

    We're, sadly, living in an age when shovelling out unfinished and untested buggy crap is not just accepted, but practically _expected_.

    Hordes of drooling fanboys will rush to lynch you in effigy if you dare complain that the game you've paid good money for is buggy. On one bulletin board I've been literally told "Then pack your computer in a box and take it back to the store, because you're officially too stupid to own a computer." when I dared say that no, I did update all drivers and defragged, and it still doesn't work. (After a brainless drone gave me that "the game is perfect, it's your system that's set up wrong" speech.)

    It's got so low that at least one game I've bought ("Victoria" from Paradox Entertainment, German version) just threw a script syntax error right on startup. Not a crash to desktop, not a sound lockup, nothing even remotely blamable on my computer or drivers. A script syntax error. A game which couldn't have possibly worked on _any_ hardware and/or driver configuration. Noone had even _started_ that game before packing it on a CD and selling it.

    The publisher pointed its finger at the devs, the devs pointed fingers at the publisher, and none of them felt responsible at all for it.

    And as usual, the regular fanboy squad was nevertheless preaching about how ungrateful and petty we are to be complaining about bugs, or about the utterly non-fun gameplay. (The patch which fixes the script error, also changes the game so the first about 50 out of 80 years in the game you have to just wait, because you simply can't buy any resources to build something. Anything. They just don't exist on the world market.) And, quite literally, how grateful we should all be that Paradox, in its infinite benevolence, has bestowed such a great game upon us.

    Yes, quite literally, there were some posts which sounded like they were originally written for a religious scripture.

    But either way: we live in a screwed up world. A world where "normality" means selling something untested and unfinished.

    And in such a world, I don't know, Blizzard gets a lot of respect from me for still sticking to the old fashioned idea of selling finished and tested stuff.

  13. Re:Oh, please... on Blizzard's World of Warcraft Beta Goes Live · · Score: 1

    AFAIK, none of the Blizzard games actually had a dedicated server run by Blizzard. All that BattleNet really provides is a match-making service, so you can find someone's non-dedicated server to play on. I.e.: they offer for free... the exact same minimal matchmaking service that Id, Epic, EA, Activision, etc, offer for free.

  14. Re:Where are the native compiled tests? on Anand Reviews Athlon 64 FX-53 · · Score: 1

    Well, I don't know, I thought that these benchmarks are supposed to be more useful for people buying a CPU now, in Q2 2004, than for people who'll buy one in a year and a half. Or at least _my_ decision to purchase something is based on how it performs now, rather than on how it _might_ perform in some future.

    How the Athlon64 will perform in Q3 2005, well, I'll worry about that in Q3 2005. A year and a half is a long time. A lot of things can happen until then. New compilers, new apps, better drivers, a better X11 architecture, people starting to write x86_64 assembly. No idea what.

    Basically IMHO at the moment the main use for an Athlon 64 is for running 32 bit apps on the 32 bit OS of your choice. For some it'll be Windows, for some it'll be Linux, but unless you're masochistic it'll be 32 bits. Hence, the benchmarks will, naturally, tend to be in that context.

  15. Re:YaST - great for newbs but... on YaST to Become Open Source · · Score: 1

    Oh no! A 45 MB file, in an age of 300 GB hard drives! The horror! ;)

  16. Re:Where are the native compiled tests? on Anand Reviews Athlon 64 FX-53 · · Score: 1

    Let me tell you about my attempt about running a 64 bit Gentoo Linux 2004.0 system, with 64 bit apps. To start with a punchline: x86_64 Linux is the biggest practical joke ever. Not a flame, just a non-exaggerated story of my attempt at getting it to work.

    Trying to install ATI's drivers? Nope. Sorry, Dave. Can't do that. They're 32 bit only. Can't run a 64 bit X11 with 32 bit drivers, now can you?

    So now the whole thing ran on VESA framebuffer graphics. Yippee. So now I have an uber-fast 64 bit CPU, except even painting the mouse cursor takes ages. Oh the fun. The Performance. Or lack thereof.

    Oh yeah, better get used to staring into a flickering 60 Hz screen, too. Because you can't set the refresh rate of VESA. Made me want to go buy a TFT monitor. (Then again, it got uninstalled before I got around to that.)

    Compiling even the kernel drivers? Well, you know, 75% of those don't even appear in the list when you're configuring the kernel on an x86_64 machine. No AGP for my mobo, for example, if I remember right. (Not that it matters when using the VESA framebuffer, I guess.)

    Compiling some cool uber-fast 64 bit apps? Huston, we have a problem. The _vast_ majority of those don't even want to "emerge" (the Gentoo command to download and compile something) for the x86_64. Not OpenOffice Org, not Pingus, not almost anything.

    Now, just to be fair: none of that is, strictly speaking, Linux's fault. Can't really blame Linux for the fact that ATI doesn't write 64 bit drivers, or that apps are written by people who think everything is 32 bit.

    And also to be fair: Microsoft's 64 bit XP doesn't fare any better in that aspect, either.

    But, you know, having an OS without drivers or apps is about as useful as having a pen, but neither ink nor paper. Again, that applies to Microsoft's 64 bit XP just as well.

    So, dunno, I'd like to hereby apologize to all the Mac zealots I've picked on before. I'm sorry, guys. Yes, if you really have to have 64 bit Unix system today, forget about Linux. Get a Mac.

  17. Re:HELP THE USER AND NOT THE PROGRAMER on Coding The Future Linux Desktop [updated] · · Score: 1

    I'm with you.

    And I'll add another thing. It never ceases to amaze me how, instead of using the extra CPU power to do more advanced stuff, we just find ways to do the same old things less efficiently. Or with more clueless monkeys instead of programmers.

    I was reading that, in the last 30 years, computing speed increased a million times. Roll it around in your head. A MILLION TIMES! 1,000,000.

    Do we do 1,000,000 times more with them? Nope. We just added wrappers after wrappers of crap and buzzwords, to waste those cycles.

    E.g., a program back then would have just printed the damn data. Nowadays, nah, we'll serialize/desrialize it 10 times through CORBA/EJB/SOAP/whatever, then convert it to XML, parse it right back through a slow and bloated XSLT template on it, to get HTML out, then use a browser to parse the HTML and actually display that data. Buzzword Driven Architecture at its finest.

    And, no, I'm _not_ against using those cycles to actually offer something of value for the user. GUIs are good. Extra services, like spell-checking on the fly or auto-completion in an IDE, are great.

    But 99% of computing power does not go into those useful things. It goes into allowing unskilled monkeys to throw together a half-arsed program, and be able to add 20 buzzwords to their resume. It goes into layers upon layers of useless (for the user) crap, that just slows everything down.

  18. Re:How about still using C on Coding The Future Linux Desktop [updated] · · Score: 1

    That's an easy question to answer:

    1. Server-side programs are long lived. A servlet runs in a JVM that's started once and runs happily ever after. (Well, not ever after, but at least days.) So the few seconds of extra startup time only happen once, and the user never sees them. Which is more than I can say about small utilities written in Java.

    2. Server-side programs spend 90% or more of their time waiting for the database server. Hence, java's performance problem doesn't really matter. You could still write 10 HTML pages in Java before the database server gives you the data for one. Java is not the bottleneck there.

    3. Server-side programs don't have a Swing GUI. 'Nuff said.

    4. For that reason, they don't have a memory leak problem with listeners, either.

    5. The swapping issue is less important for servers, since those tend to be big machines with lots of RAM. If a website requires 256 non-swappable MB all by itself on the server, that's peanuts.

    By contrast, if a desktop program requires 256 non-swappable MB all by itself on a user's home machine, that's ludicrious. That user might have 256 MB total RAM nowadays. Given that any OS (including command line Linux without X loaded) takes _some_ memory for itself, that already pushes the user's machine in a thrashing frenzy.

    (Thrashing means: Each swap page is loaded, checked, then discarded to make room for loading and checking the next page. Repeat ad nauseam. Your HDD LED stays bright and your machine makes funny grinding noises.)

  19. Re:How about still using C on Coding The Future Linux Desktop [updated] · · Score: 1

    I've been programming for some 10 years in C, and then some 5 years in Java. (Plus one year before that of playing with Java at home, on my free time.) Not small stuff, either. I'm talking hundreds of thousands of lines programs in both cases. So let's please drop the "if you disaggree with me, then you're obviously inexperienced" arrogance already.

    Yes, occasionally I'd get to spend a day or two chasing a memory leak. (Ironically, never in UI code.) But then I had a program which worked well and fast. Which is more than I can say about any Java GUI programs I had to work with.

    There are situations when you might wish you had a GC in C, but those usually involve complex graphs of objects pointing to each other. Most problems aren't like that, though.

    Then I moved to Java. Now instead of occasionally spending a day or two debugging a memory leak, I had months of tuning the performance to be acceptable.

    Everyone wrongly thinks of desktop apps as stuff that just spends 99% of the time waiting for the user to type the next letter, so performance doesn't matter. Wrong.

    Even if on the average that's the case, there comes the moment when the user asks for such stuff as spell-checking a 20 megabyte document. Or recalculating a horribly complex spreasheet, which requires several passes. Or applying some complex filter on an image, fast fourier transforms and all. Or whatever else.

    That's when he/she'd rather not wait 3 times longer than strictly necessary.

  20. Re:I have to say it: on Coding The Future Linux Desktop [updated] · · Score: 1

    I can relate to your pain, somewhat, but you don't really need to go all minimal to have a snappy and usable system.

    E.g., check out XFce 4. If you spend some minimal time configuring it right (e.g., setting the margins so that maximized windows don't overlap the panel, maybe also moving the panel to the right or left edges), it does everything I ever wanted from a window manager, it has themes, it can set the fonts/colours/whatever in GTK and KDE apps... and it starts up in less than half a second.

    E.g., for a long time my favourite combo was ICEwm and DFM. ICEwm gives you a window manager, task bar, and start menu, like on Windows. DFM manages your desktop (so for example you can have icons on your desktop like on Windows), and gives you a decent file manager too.

    Between the two of them, they use up a mere couple of megabytes of memory and keep X startup time under half a second. And, dunno, they do what my Windows desktop does. (Minus Microsoft's HTML crap which I don't want in Windows either.) I wouldn't really call that "minimalist".

  21. Re:How about still using C on Coding The Future Linux Desktop [updated] · · Score: 5, Insightful

    I don't know about him, but I've spent time debuging malloc/free bugs. I also earn a living with Java right now. So I have at least some clue of its advantages.

    And, sorry, I think there's a reason why Java is popular on the server side, and why you don't see any killer desktop apps written in Java. And why I'd actually like it to stay that way.

    Off the top of my head:

    1. I'll say _you_, then, haven't spent days debugging a Java memory leak. Especially in a Swing program. One single listener you've forgot to explicitly remove can keep whole forms or even whole windows still loaded in memory. No, the garbage collector doesn't automatically free those.

    2. The garbage collector does _not_ play well with the swap file. It causes each page belonging to the Java heap to be regularly paged in. Often. Several times per garbage collection pass, in fact.

    So whereas a system which stuck to C or C++ will still run at full speed when I load 550 MB of programs in a 512 MB of RAM, a 100% Java system would trash to death at that point. (In fact, see point 2: much sooner than that.)

    Or if only 300k out of that is Java stuff, it will act all elbows to the other apps. It will keep bringing its own pages in, and forcing everyone else to do with less memory.

    And no, this problem isn't solved by compiling to ELF. As long as you have a garbage collector, it happens anyway.

    3. Java RAM usage is ludicrious, especially for a system based on small utilities, like *nix is. I've actually had to write once the exact same small GUI utility in both C and Java. The C version ran in under 1 MB. The Java version allocated 16 MB right upon startup.

    It gets worse from there. Even minimal string manipulation or use of trees will easily use 2-3 times more memory than in C. Stuff which in C/C++ goes on the stack, or is allocated together as part of a single struct, in Java ends up a twisty little maze of individually allocated objects, each with its own memory overhead, above the size of the data in it. A simple String is two objects for example.

    4. It also has horrible startup time. No, sorry, I don't want to wait a couple of seconds just for the JVM itself to initialize, each time I launch an application. And I think that both Gnome and KDE are already proverbially slow to start as it is; they don't need to add half a minute to their startup time just because the gazillion apps they run on startup are Java.

    5. Swing is slow. It insists on painting every single pixel in the window personally. Basically if you have one form in a swing window, the whole window is one big canvas, on which the individual buttons/fields/toolbars/menus/etc are rendered in software, pixel by pixel. If that's your idea of a fun desktop, may I humbly suggest setting your X to use the VESA framebuffer instead of whatever accelerated driver you're using?

    6. It also requires quite a bit of clue to use well. See for example the listener leaks I've mentioned before. Or it's very easy to write GUI code that's dead slow, if you don't know what you're doing. E.g., code which takes several seconds just to fill in the values in a combo box.

    Etc.

    Basically, I'm all for Java and all, but I sure as heck don't want it on my desktop, if I have a choice. When I run a web browser or an IRC client program, I very much like them to be well behaved applications which don't play hardball with the paging. I also appreciate if they don't allocate 3 times more memory than they really need.

    So, sure, the Gnome team is free to switch to whatever language they please. But the day they release a desktop based on Java, it'll very likely be the day when I kick Gnome as whole off my hard drive.

  22. Re:Almost, Re:For the most part..... on How Not To Sell Linux Products · · Score: 1

    I'm with you.

    And to be honest, I don't think that anyone really does the idealized linux geek thing of looking into all sources, bending all software to do their own will, and learning how everything works.

    Take for example the popularity of Gentoo's Portage, among the die-hard compile-everything-yourself crowd. What does it do? Allows you to get everything automatically compiled and installed _without_ having to personally track down all the library versions needed, optimization switches that make the compiled program crash, etc.

    It's basically at heart nothing short than a Windows-style installer, except it's based on a compiler. Launch it and at the end you automagically have some programs installed and running.

  23. Re:"Free" as in not answerable to anyone else. on How Not To Sell Linux Products · · Score: 1

    IMHO that's false. Projects where noone is in control and noone answers to anyone, end up just growing in all the wrong directions like a cancer, spending years on all the wrong things, and ultimately not doing what they were supposed to do.

    You may notice that even the big OSS projects invariably aren't just a big open CVS server, where everyone can edit or delete whatever they damn please. There are people in control. People who have the power decide what goes into the next release and what doesn't. The kernel, XFree86, KDE, whatever. You name it. If it grew past the useless-waste-of-space-on-sourceforge stage, chances are that there was someone managing that project.

    Ironically, you seem to ignore that the most commercial projects that fail, typically fail for the very reason that you praise in OSS: lack of control. The ones supposed to manage it weren't doing a proper job of managing it. Often they didn't even understand that which they were managing. They just bend over to the customer and marketroids, but have no clue if what they promised there is even possible. Or when something went wrong, how to get it all back on track.

  24. Re:Yup nobody uses single client. on Hardware Review Sites and Vendor Relationships · · Score: 1

    "Do you know anything about IT? Or are you one who think IT is only the million dollar projects? A small companie orderbook or a mere webshop don't count?"

    Ever heard of "threads"? Or of "concurrent" connections?

    Even a small web shop may have to serve more than a connection at a time. Ever heard of fluctuations and statistical flukes? Even without getting slashdotted or one day being mentioned in some major magazine, the day _will_ come when 10 users click on the search button at the same time. That's what multiple clients means.

    It might also want to have some more complex statistics going over that database now and then. Practically every single web project I've been in had some admin page where they wanted to have some statistics running. One of them ran for 5 minutes straight, if all the caches were empty (e.g., first thing in the morning), in parallel with the normal requests.

    Do you absolutely need Oracle for that? Nope. Stick with MySQL or whatever at that size. If nothing else, because from a ROI point of view you probably don't need to pay for a copy of Oracle at that size.

    But the issue remains: even for those a test with a single client is skewed. That's all we're talking about.

    "A webmonkey can maintain mysql. Oracle needs a dbm"

    If you just need a piss-poorly designed database, without indexes to boot, and piss-poorly configured too, sure, go ahead and use a webmonkey for that. They'll do just as bad a job in Oracle as in MySQL.

    It's when you actually want that program to run fast that you could use someone with a clue.

    Yes, I know, the nice salesmen sold you a ton of snake oil, under claims that now you can do rock-stable enterprise projects with clueless people off the street, instead of programmers and database experts. Sorry to break some reality upon your little phantasy world, but they lied to you.

    And at the risk of offending my fellow programmers too, funny how much of those disdain any knowledge of databases too. I see projects which start with designing a beautifully encapsulated class structure, and continue by optimizing silly stuff like manually unrolling loops. But noone pays attention that 90% of the time is spent in the database, and therefore noone even thinks of optimizing _that_ part.

    And there you end up with idiotic stuff like 4 tables with 1-to-1 relationshiops. None of them is used from anywhere else, and the data is always read and written together. Why not put all t5he columns in a single table then? Right. Because the database wasn't designed for the problem at hand, it just had to mimmic that class abstract structure.

    And then they're not even read together with a single join, but each object independently reads its own table, in a separate query. You get flurries of 20+ queries to retrieve a piece of data. Half of them resulting in full table scans, because noone thought about using indexes.

    But hey, we're so cool. We didn't need someone with a clue of databases.

  25. Re:Agreed. on Life After the Video Game Crash · · Score: 1

    Umm, way I see it, MMO games are already as fscked up as it gets even without the griefer squad dropping by. Now I hate griefers as much as the next guy, but IMHO even if they all mysteriously dropped dead one day, the MMO genre would still be the proverbial bottom of the barrel.

    I've tried a bunch of them, and I still have at least half a dozen CD's around catching dust. Beats me what's the point in those games. There's no story, no plot, no excuse. There is no gameplay, and debatably no _game_.

    Trying to actually _play_ _the_ _game_ (as opposed to simply using it as a chat room with graphics, and ignoring the actual game) is invariably just a mechanical repetitive exercise in beating up small rats with a small stick. For no obvious reason, other than that it gives XP and "phat l3wt". When you got enough XP, you'll get promoted by a level. Which only means that you can travel farther to beat slightly larger rats with a slightly larger stick. Oh, and this time you'll have to work 3 months for the next promotion.

    The whole "strategy" involved is periodically hitting the healigh potion or heal spell, when your hp is below x%. Wait for the mana to regen, attack the next monster, repeat literally ad nauseam. (I.e., until it makes you want to puke.)

    That's not a game, it's boring mindless repetitive _work_. It's so mindless and repetitive that you could write a shell script to do it better. There's as much game, entertainment and cunning tactics in there as in ploughing a field. Keep going forward to the next edge of the field, turn around, keep going forward to the first edge, turn around, repeat. Ooh, the endless fun. Not.

    Except unlike RL work, you're not paid for it. Au contraire, you have to pay per month to be allowed to clock 8 hours a day of mechanical clicking on monsters.

    Oh yeah, and presumaby to uphold the sacred tradition dating from UO's founding the genre, all MMOs are released buggy, incomplete and unbalanced. Followed by many years (and literally gigabytes) of patches which blunder aimlessly and introduce two problems for every problem fixed.

    So, I don't know. Even without griefers, I really can't see the MMO genre becoming _the_ killer genre that everyone and their grandma just has to play. Someone will have to rethink the whole genre from scratch before that has a snowball's chance of happening.