Beta
×

Welcome to the Slashdot Beta site -- learn more here. Use the link in the footer or click here to return to the Classic version of Slashdot.

Thank you!

Before you choose to head back to the Classic look of the site, we'd appreciate it if you share your thoughts on the Beta; your feedback is what drives our ongoing development.

Beta is different and we value you taking the time to try it out. Please take a look at the changes we've made in Beta and  learn more about it. Thanks for reading, and for making the site better!

Comments

top

Florida Man Faces $48k Fine For Jamming Drivers' Cellphones

Salamander Re:Guy is a moron (358 comments)

I agree with the first part of your comment, and came here to say almost the same thing. The law of unintended consequences strikes again.

The second part makes you seem like a moron. Seriously, losing access to your e-toy for a minute or two is worth killing over? Get a grip.

about 4 months ago
top

Elevation Plays a Role In Memory Error Rates

Salamander Ancient news (190 comments)

About five years ago, I was involved in the installation of a thousand-node cluster in Boulder. We knew *before we went in* that we needed to change our EDAC (memory error correction) code to account for the higher rate of bit-flips due to the altitude. Some of the people we were working with had been there when those same problems nearly caused a months-long delay in a larger installation at NCAR nearby. We ended up running into a more subtle problem involving lower air density, heat and voltage, but *this* problem was incredibly old news even then.

about a year ago
top

What Early Software Was Influential Enough To Deserve Acclaim?

Salamander Re:First game! (704 comments)

Good point. In fact, what made me think of mentioning Adventure is that I'm hacking on Adventure 2.5 (a.k.a. 550) to make it playable with my daughter. I've already added code to work around one build error, modified some of the game logic having to do with save/restore annoyances, and found one crash if you "say" something too long. The point is that all of this is happening in Linux, based on code that was written well before Linux even existed. Surely there's a lesson there. Thanks for clarifying it.

about a year and a half ago
top

What Early Software Was Influential Enough To Deserve Acclaim?

Salamander First game! (704 comments)

Adventure, a.k.a. Colossal Cave, by Crowther and Woods (extended by others).

http://rickadams.org/adventure/e_downloads.html

This was many old-school programmers' first exposure to computers as entertainment. For example, both my wife and I recall playing it on TI SilentWriters (paper output plus an acoustic modem) when we were kids. Even more than Space Wars, which was written at least a year later and only ran on much less common hardware, this was the start of computer gaming.

about a year and a half ago
top

Ask Slashdot: Do Coding Standards Make a Difference?

Salamander Re:coding style can get you fired (430 comments)

If one developer is that critical within your organization, you've got bigger issues than source code line width.

On most projects, there will be parts of the code that few understand. Yes, if that number is zero or one you have bigger problems, but trying to get it beyond two or three for every single piece is infeasible. Given how mobile people tend to be nowadays, and how variable their working hours across different time zones might be, it's quite common that the only reviewer available at a time of need (e.g. fixing a customer's problem in production) might be in a constrained environment. I guess it's not a problem if all you want is rubber-stamp reviews of simple code, but otherwise it's something you have to consider.

Think of the majority of developers that are sitting in an office environment.

Um, no. Having all of your developers in a single office all the time is increasingly uncommon, especially on open-source projects. Even fairly stodgy companies often have remote workers nowadays, all the way down to cutting-edge startups where practically nobody lives in the same city. Assuming such a majority is a bad basis for deciding policy.

I've seen this kind of thing kill code reviews. Instead of looking for logic problems or design flaws, you'll get that one guy being anal retentive about line width or ratio of one thing to something else.

Yes, I hate that kind of review myself, and I'll bet I've been subjected to about a dozen times more of them than you. However, conforming to a line-length limit is comparatively easy. Required scaffolding and forbidden constructs, function-length and even variable-naming conventions can all be much more of a pain. Part of teams being professional is respecting your colleagues and putting needs before whims. If you can't do that, or if staying within a length limit is so hard for you, then - to borrow your phrase - you have bigger problems.

about 2 years ago
top

Ask Slashdot: Do Coding Standards Make a Difference?

Salamander Re:coding style can get you fired (430 comments)

The only issue I have is with code diff utilities that don't work well with multi-monitor setups.

You should try to appreciate that not everyone shares your circumstance. Sometimes the most senior developers on a project might have to review code while on the road, e.g. visiting customers or presenting at conferences. Not too many laptops have multiple monitors, and you wouldn't want to carry one if it did. Some of the very latest have pretty decent resolution, but they cost a lot more and they have a very fine dot pitch so the number of characters doesn't scale up as much as the number of pixels. Under those circumstances, code that doesn't display well in a *side by side* diff on a single small-ish monitor is a more serious issue than the junior developer's fetish for super-long lines. Eighty columns might not be the absolute best width, but it's in the range that makes such diffs under such circumstances productive, and it's a width that a lot of people (and tools developed over the last few decades) can handle reliably.

Also, people who study reading have known for half a century that long lines are hard to scan accurately without a saccade leaving the reader's eyes on the previous or next line, which means that they're bad for readability even on wide monitors. There's a reason newspapers used to set type in columns instead of all the way across the page. You'll need a much better reason than personal aesthetics to do something that's bad for readability and a pain for other members of your team. Without such a reason - and I haven't seen any, anywhere in this thread - that's just selfish and immature.

about 2 years ago
top

Ask Slashdot: Best File System For Web Hosting?

Salamander Re:Go old school (210 comments)

Actually, there is a reason not to have different apps using different filesystems in partitions on one disk. If those apps just use subdirectories within one filesystem, that filesystem can do a pretty good job of linearizing I/O across them all, minimizing head motion (XFS is especially good at this). If those apps use separate partitions, you'll thrash the disk head mercilessly between them if more than one is busy. Your advice is good in the multiple-disk case, but terrible in the single-disk case, and any well trained sysadmin would know not to lump them together. Perhaps next time you shouldn't be so quick to attack others for asking reasonable questions.

about 2 years ago
top

B&N Pummels Microsoft Patent Claims With Prior Art

Salamander Re:Fraud (332 comments)

It probably has something to do with the difference between claims and description in a patent application. Claims are the part that matter. Often the claims are constructed so they *just barely* pass the obviousness test, e.g. by taking two ideas that are too obvious by themselves, but combining them in a way that's less obvious. The description can then be far more general, and is often shared between many patents, but that doesn't affect the validity of the claims *at all*. To determine the validity of a patent you have to look very carefully at what is being claimed, and only refer to the description as background to understand the claims.

Disclaimer: IANAL and I don't give legal advice. I've just been through this nearly a dozen times.

more than 2 years ago
top

Which OSS Clustered Filesystem Should I Use?

Salamander Other Options (320 comments)

Disclaimer: I'm the project lead for HekaFS, which is based on GlusterFS.

If you're concerned about data protection, you'll want to worry about node as well as disk failures. Some distributed filesystems, including Lustre and PVFS*, take a rather old-school "use RAID and implement your own heartbeat/failover between server pairs" approach, and that just sucks. GlusterFS and Ceph don't have that wart; neither do MooseFS or XtreemFS, which I would consider the other alternatives. They all have their own forms of replication built into the filesystem, so you don't need to set up and maintain another layer for them. Unfortunately, neither MooseFS nor Ceph survived even simple tests - write a few files in parallel, flush caches, read them back in parallel - when I ran those tests on the same hardware as GlusterFS and XtreemFS which did fine. That was a while ago, though, so take that with a grain of salt. Ceph in particular has a lot of awesome technology and has a very bright future IMO, but it's taking a while for it to realize that potential.

Out of GlusterFS and XtreemFS, the choice has a lot to do with your exact use case. XtreemFS has a pretty strong focus on wide-area replication, so if that's part of your need now or likely to be in the future then it's probably a bit stronger. GlusterFS does have some wide-area replication, but I consider it rather weak. Within a single data center, I'd give GlusterFS the edge. It has better local performance than XtreemFS in my tests, and it has what I consider by far the best setup/management interface.

The one caveat I'd offer is that all of the filesystem I've mentioned excel for sequential access for large files. For random access, and especially for metadata-heavy workloads, they all suck to some degree. As others have mentioned, you might very well be better off with a simple NFS server pair with cheap shared storage and heartbeat/failover to ensure availability.

more than 2 years ago
top

Rethinking the Nature of Files

Salamander POSIX xattrs (369 comments)

Look them up. They already allow you to attach arbitrary metadata to a file. Most modern filesystems and user-level utilities support them already. They're even used as the underpinnings for security mechanisms such as POSIX ACLs and SELinux. Sure, there are issues with performance when you have *lots* of xattrs on a file, and that's a fruitful area of research, but we sure don't need some brand-new Microsoft-invented thing to deal with metadata.

more than 2 years ago
top

IBM Speeds Storage With Flash: 10B Files In 43 Min

Salamander Re:Numbers (76 comments)

Doing something for 7857 files and doing it for 10 billion are very different situations. 7857 files, including metadata, can easily be sucked into memory in one big chunk and unpacked/examined from there. That simply doesn't work for datasets larger than memory. At the higher scale, modern filesystems do tend to fall apart, badly, so different approaches are needed. Comparing your paper airplane to an F-22 doesn't make it look like you know anything about writing software properly. Quite the opposite.

more than 3 years ago
top

When Software Offends

Salamander This is what happens... (467 comments)

...when people in the community, instead of setting a good example, fetishize the act of trolling itself. When high technical contribution is combined with presentations full of pornographic images/metaphors and Twitter streams full of laughter at others' consternation, such childish behavior becomes the New Conformity. It's just as cliquish and pointless as the Old Conformity these rebels without a clue pretend to reject, but whenever aspiring programmers see that opinions presented in one set of clothes get a quicker/more friendly hearing than the same opinions presented in a different set of clothes it's totally predictable how they'll respond. They'll imitate all the off-color and trollish behavior that they see, and some of them will end up stepping over lines that actually matter. It's all good fun until promising projects and startups fail because would-be users and collaborators get turned off by the hipster posing. What kind of sociopath would make a decision where the only possible upside is a few laughs and the potential downside is colleagues losing their jobs? It doesn't matter if you feel your own job is secure, or if you feel that people shouldn't react as they do; anybody who pulls this kind of stunt doesn't deserve a job or funding or anything else but our contempt.

more than 3 years ago
top

The Most Dangerous Programming Mistakes

Salamander Missing a Big One (213 comments)

The Mitre list does include "Use of a Broken or Risky Cryptographic Algorithm" but in my experience that's far less common than improper use of a perfectly good algorithm. Many algorithms and modes have known weaknesses that require specific generation/handling of keys and initialization vectors to maintain good security. Most algorithms and modes that are secure against unauthorized *reading* of data still require an extra MAC step to prevent unauthorized *modification* of that data (including targeted bit-flips). Developers often take shortcuts in these areas because doing all of "the right things" adds a lot of extra complexity and can absolutely kill performance. Look at recent events involving Dropbox and Jungledisk for examples. I don't think the Mitre list adequately conveys that cryptographic security requires not just good low-level algorithms like AES or Blowfish but also good higher-level (usually domain-specific) algorithms governing how the low-level algorithms and their inputs are used.

more than 3 years ago
top

Facebook More Hated Than Banks, Utilities

Salamander Re:WRONG - you are not Facebook's "customer"! (332 comments)

Exactly, and thank you for saying that. I suspect that Facebook's actual customers - advertisers - are very happy indeed with them. Users? Screw 'em, just not hard enough that they leave.

more than 3 years ago
top

Why Johnny Can't Code and How That Can Change

Salamander Better game frameworks (527 comments)

I recently went through a related exercise with my daughter. I showed her ponycorns because it's exactly the kind of game she already likes. She got the idea that we could create a game too, since I'm also a programmer and she's a whole two years older than Sissy. At that age I'm not about to teach her actual programming, but I thought it might be a good way for her to see the creative process at a higher level - plus we'd end up with something that she could enjoy and show off to her friends. We had a lot of fun with her drawing the characters which I then turned into sprites, and recording audio, and brainstorming about what puzzles would be in the game. Now the effort has stalled, mostly for lack of a decent framework. I mean, all we need is basic point-and-click stuff, maybe even an inventory and stuff like that, but it would sure be nice to have the characters actually *move* smoothly from one place to another instead of just disappearing from one place and appearing in another. Oh, it would be extra nice to have something open source, or at least runnable on Linux. I looked at dozens of frameworks that I found on http://www.ambrosine.com/resource.html and elsewhere, and very few could meet those simple requirements without getting into full-out 2D suitable for side-scrollers and platformers - meaning that they're way more complicated than I need and generally don't "scale down" to the simpler stuff very well. I tried Adventure Maker but quickly ran into its limitations even with a project as simple as this. I might try GameMaker next, even though it's also Windows-centric (I can use my wife's machine if I have to), because the other offerings out there seem so incredibly thin.

The point is not that I personally need help finding a tool with which to make this particular game - though suggestions would certainly be welcome. The problem is that the "state of play" is just so incredibly piss-poor overall. Forget about finding something that even an older child could use *themselves* to create a game that doesn't totally suck. It's hard enough to find something that a *professional programmer* (albeit not a game programmer like Sissy's dad) can stand to work with long enough to get such a result. Something just good enough to let parents and kids put together a simple adventure/puzzle game on par with ponycorns, to give them something that's fun and that just barely hints at what you can do if you can program, would go a long way toward making them want to learn more. As far as I can tell, such a thing doesn't exist.

more than 3 years ago
top

Open Source Alternative To Dropbox?

Salamander Re:CloudFS (482 comments)

(NB: I'm the founder/lead for CloudFS)

Thanks for the mention. To be quite clear on this, the at-rest encryption that's currently in CloudFS is not as secure as we'd like it to be, or as secure as it will be when it's released. To put it another way, it's more secure than Dropbox or Jungledisk have proven to be, it's probably more secure than a couple of dozen other similar cloud-storage options (it's hard to tell since so many are not open source), but it does have flaws. To be more specific, it's secure against inspection by someone who only has the ciphertext - such as your cloud provider. However, it is not secure against transparent modification (flipping a bit in the ciphertext flips the corresponding bit in the plaintext). Also, since it's currently CTR-mode encryption, if someone has both ciphertext and plaintext for the same part of a file then that part of the file becomes readable from just ciphertext thereafter. These flaws are not acceptable; the current code is only a stopgap. This is exactly why I made the point on Twitter recently that even the strongest ciphers with long keys can still result in weak protection if used improperly. I'm sick of seeing cloud-storage providers crow about how strong their transport encryption is but say nothing about on-disk encryption, or mention using "military grade AES-256" on disk but say nothing about how. Worst of all are the ones -who require that you give them keys - which for all you know will be stored unprotected right next to the data.

The good news is that I've been consulting with some real crypto experts - I admit I'm not one myself - on this. We've worked out a block-based scheme that all involved believe will address the above flaws, while also handling concurrent writes correctly (something most "personal backup" alternatives fail to do). The performance cost is more than I'd like, but I think it's no more than necessary and the parallelism inherent in the underlying system should still yield more-than-adequate performance. I've already begun implementation, and will fully disclose all the details once I get a bit further along.

more than 3 years ago
top

Anatomy of a Privacy Nightmare

Salamander Re:A tricky problem (275 comments)

You've decided to permanently archive only your side of the record and he never got the privilege of adding his defense (or eventual outcome) to it.

Not true. Even aside from the fact that anyone can get their own blog, he has commented on my site and I have allowed him to. If he wants to add more in his own defense, he may and he knows that.

You've decided to permanently archive only your side of the record and he never got the privilege of adding his defense (or eventual outcome) to it.

"Sociopathically"? You certainly can think what you want, but I'm not the one posting like a sociopath.

more than 3 years ago
top

Anatomy of a Privacy Nightmare

Salamander Re:A tricky problem (275 comments)

I should take lessons in civility from someone who joins the conversation with "You're a dick"? I don't think so. It's hardly a surprise that someone who acts like that would take an extreme "forget what happened" attitude, either. Very self-serving of you. Maybe an argument for people to be kind and forgiving shouldn't be delivered with such jarring contrast to your own behavior.

For what it's worth, I don't want to punish this guy forever. That's why I made the post un-searchable, helping him "move past the idiot stage" as I hope someone will do for you someday. It does have a little to do with accurate historical documentation, though I don't think there's anything fucked up or fanatical about that. I don't believe in censorship or revisionism. It was part of the public record once, and it should remain so. I've seen the power to edit the record used for ill *far* more often than I've seen it used for good, and I'm not going to start down that path. Once posted, everything on my site stays posted. It's my site, so deal with it.

The key point here is that you don't have to forget in order to forgive. If this had reached the courts, which it nearly did, that would be part of the public record and would remain so with nothing I could do about it even if I wanted to. It would also, rightly, be considered part of the *past* once the offender had been punished or made reparations appropriately. We need to teach people to forgive *without* forgetting, because forgetting is antithetical to learning.

more than 3 years ago
top

Anatomy of a Privacy Nightmare

Salamander Re:A tricky problem (275 comments)

Valid questions. Yes, I did some homework to convince myself that the story was valid, but that would have made the anecdote too long. ;)

more than 3 years ago
top

Anatomy of a Privacy Nightmare

Salamander A tricky problem (275 comments)

I've long since gotten used to the idea that everything I say online - going back to Usenet days and even before - will stay with me forever. Some times you just have to remind people that it was X years ago and people/opinions change. Would you take advice from someone in mid-life whose opinions hadn't changed since their teens?

That's all garden-variety stuff by now, but I did have a more interesting case come up on my website. I had occasion to write about someone who was trying to scam people with an online "contest" that was rigged. Yes, I named names, especially after the guy (who went by more than one name BTW) tried to intimidate me with fake legal threats. Years later, I got email saying that he'd reformed, he was trying to get a job, but potential employers would Google for his name and find my site. Tough luck, I thought, and continued to think as the pleas kept coming every few months for years. What finally got my attention was when he mentioned that he now had a family. This little piece of history, no matter how valid, was now starting to affect *other people* who were completely innocent. While I don't believe in censorship, I do believe in the validity of the "statute of limitations" concept so I decided on a compromise. The article about this guy is still on my site, you can even find it by searching there, but you can't find it by searching on Google. (Robots.txt plus referer blocking specific to that post, for those who care.)

The lesson is that the existence of information and the ease with which it may be looked up are two different things. Dirt is just too easy to find, for the same reasons that gold is too hard: search engines' evaluation of "importance" or "relevance" doesn't always match any sane human's. While it should be *possible* to find someone's decade-old forum posts, perhaps it's not quite right for the most inflammatory thing they ever said to be the very first thing that shows up in a casual search . . . and it often will be, because controversy drives higher rankings. Making stuff just a little bit harder to find, like we all do here with low-rated comments and like I basically did in this little anecdote, deserves more frequent consideration as an alternative to deletion.

more than 3 years ago

Submissions

Salamander hasn't submitted any stories.

Journals

Slashdot Login

Need an Account?

Forgot your password?