Slashdot Mirror


User: zatz

zatz's activity in the archive.

Stories
0
Comments
195
First seen
Last seen
Profile
(view on slashdot.org)

Comments · 195

  1. design or implementation? on Taking Your Programming Skills to the Next Level? · · Score: 1

    If you want to get better at writing correct code quickly, I recommend TopCoder. I spent enough years doing ACM and TopCoder competitions that a lot of techniques have become mechanical, and I no longer have to think hard about them to get the details right. (Perhaps I could have achieved the same effect more easily if I used higher-level languages, but I like to work on performance-sensitive problems which require mutable memory and lots of system calls.)

    If you want to design large software systems or create interfaces meant for use by other programmers, I'm less sure what advice to give. Try to get some exposure to different languages or library interfaces and figure out why programmers might like or dislike them, what might be error-prone about them, what affects ease of extension, how to hide unimportant details and allow a diversity of implementations, etc. Look at some time-tested interfaces, eg unix files or windows message queues. Try to understand what problems they solve, how they could be improved, and some of the trade-offs the designer might have considered.

  2. Re:Define Program on Do Kids Still Program? · · Score: 1

    This is the most "insightful" comment I've read here in ages, thanks. (And those are neither scare quotes nor meant as emphasis.) The distinction between "do this now" and "do this later" is indeed crucial, but I hadn't really thought about programming in those terms. I still disagree with your repurposing of the word "programming", but I'll be a little more gentle the next time someone lists HTML as a "programming language" they know....

  3. ob joke on Drawing uncovered of 'Nazi Nuke' · · Score: 1, Funny

    "Heisenberg was not aware of it," Dr Karlsch explained.

    Yet he knew exactly how fast it was moving....

  4. if I win the auction, he's going to get on Man Auctions Forehead Advertising on eBay · · Score: 1

    POOR IMPULSE CONTROL

    (Not terribly commercial, but the first forehead tattoo that springs to mind....)

  5. Re:Reliable... udp... transfers? on P2P Through Firewalls · · Score: 1

    UDP, which is unreliable by design

    It's not like that took effort.

    Trying to make UDP reliable is totally counter productive. You'll just end up with TCP.

    Not so. Sometimes you want different reliability guarantees than TCP offers, or you want to do multicast.

  6. Re:Liars on 2004 Election Weirdness Continues · · Score: 1

    unfair progressive tax system

    You seem to take it as axiomatic that progressive taxes are unfair.

    I'm an American that has been living overseas for the last 9 years.

    Does this include Europe? You can hardly say that they have rejected socialism.

    Those that profess that a national sales tax is automatically bad for the poor are dweebs with an agenda that want to frighten people. Normally those that want to frighten people are Democrats. There's your answer.

    So when Cheney says that we will suffer another terrorist attack if Kerry is elected, he's not trying to frighten people?

    My only agenda is truth. Sales taxes are by nature regressive, since wealthy people spend proportionately less of their incomes. It's unclear to me that the Federal government has constitutional authority to impose a national sales tax, anyway.

  7. Re:Liars on 2004 Election Weirdness Continues · · Score: 1

    We're talking about taxes, not income. If you're talking about redistributing income then, again, you're pushing your way into socialism.

    Progressive taxes are just another form of redistribution. When you tax people at different rates, some end up with greater buying power than they had before (relative to the others).

    That's an economic system that has basically been rejected by the world.

    I'm guessing you don't have a passport?

    Those in poverty pay no federal taxes.

    Bush says a national sales tax is worth exploring....

  8. Why journalists are annoying on Tele-Immersion at UC Berkeley · · Score: 4, Insightful

    "Dealing with such large amounts of data is an enormous task -- just to start the cameras you must press 50 start buttons," he said.

    They always select a quote which paints you as a simpleton.

  9. Re:Kerry Wins in France on DIY Polling Shows Bush, Kerry Will Win · · Score: 1

    Whoever modded me troll should read this article.

  10. Re:Kerry Wins in France on DIY Polling Shows Bush, Kerry Will Win · · Score: 0, Troll

    At least you know the rest of the world hates Bush. Most Bush supporters are blissfully unaware of how unpopular he and his policies are.

  11. Re:MySQL on MySQL AB Calls v4.1.7 Production Ready · · Score: 3, Informative

    MySQL is not suitable for complex queries.

    Actually, with the new support for derived tables in 4.1, it's as good as any other database product I have used (Informix, MSSQL/Sybase, Postgres). I have a production system which generates large, hairy SELECT statements (I've encountered MySQL's internal limit of 61 tables in a single join, to give you some idea how awful these can be) and runs them on a database with millions of records. It's quite fast (with appropriate choice of indexes) and implements all the SQL-92 features I expect, although the table-level locking of MyISAM is unfortunate.

    If you want to bash MySQL, it has plenty of real weak spots, eg transactions and stored procedures. But if you are going to run messy queries on big piles of read-mostly data, it's brilliant.

  12. Re:Production ready? on MySQL AB Calls v4.1.7 Production Ready · · Score: 4, Informative

    Sure, just use the InnoDB storage engine.

  13. Re:Transport latency and TCP on Replacing TCP? · · Score: 1

    The problem with things like Explicit Congestion Notification is that they ask more of routers. TCP only works at all these days because network hardware tries so hard not to drop packets. I'd like to see more transports which don't panic in the face of a little packet loss, like this "Rateless Internet" thing.

  14. Re:Yet another "reliable UDP" layer on Replacing TCP? · · Score: 1

    The "pipes" do not always have "spare capacity". TCP is only able to saturate some types of links, and the "spare capacity" on others is really *wasted bandwidth which TCP cannot utilize*, because its congestion heuristic is too conservative.

  15. Re:what about... on Can Coal Be Green? · · Score: 1

    If you are saving energy that was truly wasted, sure. But if you were using it to do something, then "conserving" it is a cost itself. And if the choice is between generating more electric power or, eg, replacing all the insulation in your home, the latter probably does not have a lower cost.

    Generating energy has high non-wage costs associated with it,

    Once you've built the plant, nuclear energy has basically no costs other than labor, since the fuel is so abundant.

  16. Re:what about... on Can Coal Be Green? · · Score: 1

    Energy has gotten cheaper throughout history, why should it stop now? Human time is too valuable to spend conserving something of which there is no lack.

    http://www-formal.stanford.edu/jmc/progress/ener gy .html

  17. Re:Na dun burn bridges on Most Fun Way to Leave a Bad Job? · · Score: 1

    No baby formula is better than mother's milk, and that was the real problem. Children were weaned prematurely on free baby food, and then when the free supply was gone, the mothers couldn't afford to buy it and had already ceased lactating.

  18. Re:Astonishing that Gosling is getting things wron on Gosling: If I Designed a Window System Today... · · Score: 1

    Do you think it causes harm for the application to know which regions of its windows are exposed? I agree that it shouldn't be necessary, but at the same time, it is nice to avoid speculatively drawing things which the user can't even see.

  19. Double Buffering on Gosling: If I Designed a Window System Today... · · Score: 1

    From the article:

    These days it's becoming required to implement double buffering. For anyone who's ever used OSX, the experience is totally addicting and quickly become a non-negotiable feature

    I believe Windows XP has this too; you pass WS_EX_COMPOSITED to CreateWindowEx(). Sadly it's not the default... does anyone know of a way to force all windows to get this flag? (Aside from some gross hack like replacing user32.dll, or installing a CBT hook and calling SetWindowLong(hwnd, GWL_EXSTYLE, GetWindowLong(hwnd, GWL_EXSTYLE)|WS_EX_COMPOSITED) for each window created. Hmm, perhaps I'll go try that.)

  20. Maybe on Cygwin in a Production Environment? · · Score: 1

    I use Cygwin all the time, and I would say that it doesn't feel quite solid enough for production. The only long-lived processes I run in cygwin are xinetd and sshd, and I've occasionally seen sshd crap out. On the other hand, I've been using it daily for 8-10 months to run a CVS repository and several clients, and not had one problem with that.

    It could be that my poor impressions of reliability are based on older versions (I've been using it since B19 or so) or a few buggy packages. Most of the weird errors I've seen are due to Cygwin's filesystem games; if they would stop trying to name executables .exe, and use some other mechanism for storing symlinks (NTFS reparse points maybe), that would help greatly.

    I don't use Perl much myself, but one-liners generally work as expected. A surprising number of Unix scripts and programs work without any changes under Cygwin; why not just set up an instance of your software on it, and see what happens?

  21. Re:A few solutions on Remote Backup of Windows Boxes w/o Samba? · · Score: 2, Informative

    Cygwin has it's shortcomings, but I use it for exactly this task and it works well. Some tips for new Cygwin users:

    You will need to run ssh-host-config after you install the ssh package. Under Windows Server 2003, it apparently can't setuid properly unless an actual password is supplied, so change the service to run as the user, instead of local system.

    Cygwin is sometimes a little slower than you might expect, especially for I/O, due to the extra layers of indirection. One huge performance problem is that stat() reads the first block of every file. Non-blocking network I/O is also a little iffy; you may have to fiddle with the options to rsync to get things working in both directions.

    Don't expect it to preserve NTFS ACLs. It does a decent job of simulating Unix-style file permissions, though. I think it uses the Posix subsystem for some file operations, because you can do strange things like create a file named NUL (which you then won't be able to remove within Windows).

    In very rare circumstances, the games Cygwin plays with the filesystem interface will break rsync entirely. For example, if you have a file named SETUP.EXE, rsync will copy it fine. If you later create a directory named SETUP in the same place, rsync will get confused, because it will stat SETUP on the destination and see the file.

    The Cygwin terminal is hopelessly non-standard. The supplied terminfo mostly works, but not entirely. This might be fixable, but I haven't tried very hard.

  22. Re:RSS needs better TCP stacks on When RSS Traffic Looks Like a DDoS · · Score: 1

    That's a cool idea. It's a pity most readers completely misunderstood you.

    Unfortunately it still requires modifying RSS clients, and I think there are lots of lower-hanging fruit if you can do that.

    Anyway, an IP, port, and two sequence numbers is only 14 bytes per connection; if only that was everything. The hard part is keeping track of all the other details required to implement TCP, and in less space and time than the kernel. MTU negotiation, reassembly, window size, retransmission timeouts... it adds up fast. Perhaps you could slide a "window" of a few thousand along your giant array of open connections... send them a TCP windowful of data when they enter, and if there are still ACKs outstanding when they reach the end of that "window", too bad. That way you can talk to a lot of clients without increasing your resident set size. I think you would find it very challenging to remain a compliant TCP implementation while doing all of this chicanery, though.

  23. Re:RSS needs better TCP stacks on When RSS Traffic Looks Like a DDoS · · Score: 1

    It's a different problem, your analogy is not helpful.

    DNS was designed for efficiently querying tiny records which are updated rarely. You don't have thousands of people interested in being alerted the moment your DNS records change, and you can even anticipate updates and plan around them.

    A major use of RSS, on the other hand, is to make updates (which are often too large to fit in one datagram) visible as soon as possible, while facilitating a little aggregation on the client side. Caching is less useful than with DNS, because the data are larger and change much faster. Readers still outnumber writers, so caching can help, but I wouldn't characterize this as entirely a "cache-consistency problem".

  24. Re:What a shame... on Lysergically Yours · · Score: 1

    Sub-threshold doses of LSD have similar effects to hydergine. Maybe Hoffman just went looking for a drug with similar effects but no potential for "abuse".

    If it were the case that nootropics weren't useful, then Nobel laureate Eric Kandel wouldn't have announced devoting the remainder of his career to creating them.

    Consider Linus Pauling and his theories about the use of "megadoses" of vitamin C. Just cause someone has a Nobel prize....

  25. Re:Fat sucks on Windows Alternatives to NTFS? · · Score: 1

    What worthless benchmarks are you looking at? For streaming reads and large files XFS is far superior, for many small files ReiserFS is far superior. Anything with cylinder groups and hashing for free blocks is going to be better for everyday use, eg ext2 or even FFS as shipped with 4.2BSD.

    The only thing FAT32 might beat in a benchmark is NTFS.