Follow Slashdot blog updates by subscribing to our blog RSS feed

 



Forgot your password?
typodupeerror
×

Comment Re:Not gonna help you, bro (Score 1) 420

* ALL sweeteners, regardless of their source or chemical composition, trigger insulin production in the same way that sugar does. This is a reflexive response, where the body ramps up insulin production in response to the *taste* of sweet, not waiting until blood sugar actually goes up. This results in lower blood sugar levels in response to non-nutritive sweeteners, which induces hunger and sugar/carb cravings. This is why switching to diet soda from regular causes weight *gain* rather than loss in often-replicated studies.

Citation or reference? I'm not doubting you---I honestly want to read more about this phenomenon.

Comment Almost good for NAS... (Score 2, Interesting) 106

I keep seeing new boards like this come out, hoping one will have all the features I want for an ideal NAS (network attached storage) build. Right now, there is always some trade-off for what I want. Show me the board that has...

  • Support for ECC RAM. AFAIK, all modern AMD CPUs all support ECC RAM. Seems like AMD should be able to make something that competes with the Atom on the low-wattage side of things. A full-blown 4850e or even Sempron is overkill.
  • At least six SATA ports. Eight to 10 would be perfect. Modern Intel (ICH10) and AMD (SB700) chipsets seem to max out at six SATA ports. And Intel likes to pair the Atom with even older chipsets (ICH7 I think) that support at most four SATA ports.
  • A PCIe x16 slot. Not necessary if and only if the motherboard has everything needed integrated. This requirement is really just a stop-gap, assuming the board itself will lack some crucial feature. Or for providing for unforseen future expansion.
  • A built-in compact flash slot. My understanding is that PATA and CF are closely related (one is a subset of the other maybe?)... in this day and age, I would imagine PATA controllers are dirt cheap. But the idea is to use CF as the system drive, i.e. the place to hold the OS and config files. (You could also use USB + thumb drive, so as a compromise I'd settle for an on-board USB socket into which a thumb drive can be directly plugged.)
  • At least one Gigabit LAN port, preferably a high quality controller like Intel makes. Two Gigabit ports for bonding would be ideal.
  • Super-low power CPU. The load on this machine will be virtually all I/O. Intel Atom, AMD Geode, or even ARM should suffice.
  • Chipset with sufficient IO muscle and integrated video without the high power consumption. The chipset Intel is supplying with the Atom is awful from a power consumption perspective (actually, none of Intel's chipsets are particularly low-power). AMD's 740G and 780G look decent, but still have way over-powered video. Super old school, VGA only video is sufficient. I'd even be happy with serial console only.

One board comes close: the VIA NAS 7800, but it doesn't appear to be available to the general public. And I don't see anything about supporting ECC memory. For no reason other than hearsay, I'm not so sure I'd trust important data to a Via chipset.

The next best, IMO (and I actually have one of these), is the Gigabyte GA-MA74GM-S2. Check out SilentPCReview's writeup on this board. Only problem: I'm not sure if it supports ECC or not (AMD CPUs do, but I've heard it still requires the motherboard vendor to enable it). One annoying problem is that the PCIe x16 slot is for video only---you can't put a SATA controller card, extra NIC or anything else useful to a NAS in there. Still, while it's a very low-power board when paired with the right CPU, it's still overkill for a NAS. In general, I think the power draw for a NAS (excluding the hard drives) should be under 15 Watts.

The Point of View Ion/Atom board linked above looks promising. But, as far as I can see, no compact flash, and probably no ECC memory support.

Comment My approach... (Score 4, Insightful) 393

I have two home-built servers: one is an always-on, live NAS; the other is a backup server that I power on only to do backups (or restores if it comes to that). First rule I go by: always use the slower 5400 RPM drives, such as the Western Digital "Green" or the Samsung EcoGreen. For both media streaming and backup purposes, these hard drives are still plenty fast. The biggest benefit, though, is that they use less energy (particularly important if your system is always on), and don't get as hot, making cooling much easier (which usually also translates to quieter).

My live server is currently 4 x 1TB drives in RAID-5, using Linux software RAID. (I know RAID is no substitute for backup, but I still consider it "quasi" backup. But I also have real backup.) This system is fairly un-interesting: it's your typical DIY NAS.

The backup server is housed in the Norco RPC-4020. For $300, you get 24 SATA hot-swap bays. That price is hard to beat. I haven't filled this case up with drives yet, and I have plenty of physical space going forward. The hardware is just some unused spare components I had lying around. Extra SATA ports are provided by the Supermicro AOC-SAT2-MV8 (which works fine in "regular" 32-bit PCI slots).

This, IMO, is a pretty simple set up. I just power up the backup server whenever I need it, and turn it off when I'm done. I don't care about performance, since backups are always run as a batch job (typically over night).

Before I bought that Norco case, I was just using individual drives with a Thermaltake BlacX SATA-to-USB hard drive docking station. This is cheaper, just slightly less convenient. I did order 50 "zip lock"-style anti-static bags for $13. I ordered them from staticbags.com ("GRC Enterprises" was listed on my invoice). After I copied data to the drive and put it in an anti-static bag, I just added it to the stack of drives I had on my bookshelf. The Norco case definitely looks better! :)

All in all, I consider my system fairly robust. It's only semi-secure against my stupidity, and since its all housed in the apartment, does not safeguard against fire. But since the media rips are just copies of DVDs I actually own, my insurance policy becomes the ultimate backup.

Comment Re:Oh they'll crash all right (Score 1) 1316

My recommendation is to avoid hiring the obvious jerks, and treat the ones who get through with decency and respect, while both challenging them and mentoring them to the challenge (not as hard as you think), and you'll get more than your money's worth.

That's a refreshing viewpoint. I don't see this attitude advertised too often; I'm not sure if I'm looking in the wrong places, or it truly is rare.

I've worked two "real" jobs since graduating college about seven years ago. I was assigned a mentor at the first place who really helped me understand the business, the big picture, always took time to answer my questions, helped me when I got stuck, etc. The job itself was "just ok", but I honestly feel that I was imbued with a higher degree of engagement thanks to the quality coaching I received early on---that itself was enough to turn a "just ok" job into a pretty interesting one.

In contrast, my current job was basically "sink or swim" when I started. I've been here almost three years, and never developed half the enthusiasm I had at the old job. The environment I'm in now views any kind of coaching or mentoring as "hand-holding"---if someone needs more than a few sentences' of instruction, they're no good.

Comment Re:Seconded, kind of... (Score 1) 479

[...] The reason why the HDHomeRun isn't coupon-eligible is its lack of an RF output

Sounds like a business opportunity for Silicon Dust. I wonder how hard it would be for them to graft an RF output onto their device? They they could advertise it as being coupon-eligible. If I could get $40 off, I'd go buy another one! Really, if they made the device coupon-eligible, then you'd have a cool device that's exactly what the topic starter wanted!

Comment Re:Expected (Score 1) 1654

For anything but dialup accounts, there's nothing to it. Most OS's come set up for DHCP on the ethernet. Plug the cable in, turn it on, and you're done.

I've had at least one ISP where they had to get the MAC address of whatever you plugged into their modem before it would work. I think this was with Ameritech (who I believe have now been swallowed up by AT&T) DSL. That was one thing the "magic CD" did for you: you ran it, and it went to some special address and registered your MAC address. And if you didn't have Windows (or didn't want to reverse engineer what the CD software did), you had to call and pray you got someone kind enough to help you out. At least half would just say, "Sorry, we only support Windows." After going through this once or twice, I learned exactly what to say to get my stuff working, but it was painful getting there. This situation may have improved, as this was several years ago.

Comment Re:As an interviewer I agree (Score 1) 372

Show that you can work with others.

I used to pride myself on that fact, because I feel I am good at working with others. But based on what I've seen in the trading industry, working with others is a secondary concern to being able to write working code. In fact, if you can write code that works, that's practically all that matters.

Case in point, the guy I work with. To me, the best programmer-employee is one who ranks high on all the following attributes: writes code that works; self-motivated; works well with others; good architecture and software engineering skills; is consistent in his approach to writing code; writes readable code that others can use; communicates well (both understanding requirements and vocalizing what he's done)... few people probably excel in all categories, but the guy I work with is a zero in all but the "writes code that works" category. At the end of the day, his code is helping us make money. But communicating to him what needs to be done is a painful, labor-intensive process; understanding what he's done is an exercise in patience and frustration management (both looking at his code and asking him what his stuff does is painful); and he won't do much of anything unless continually prodded.

Comment Re:Best Advice is to Stand Out (Score 1) 372

I had no papers to my name, and I started at 68,000 which got bumped to 73,000 on my 30 day review. And it was in '97. I did have a couple of solo programming projects, and an internship at an evil corporation...

I say an MIT grad could get 60k with a bit of effort.

What geographical location was/is that? At least in the US, in some parts of the country, $70k is an extremely comfortable salary; in others, it's near poverty level.

Comment An answer and a question... (Score 1) 372

It appears to me that the finance/trading industry is still going fairly strong, i.e. still has a lot of job opportunities. I'm not actively looking for a job, but I have my resume out there, as well as a LinkedIn page (I figure it's always good to at least be "passively" looking for a better opportunity). I receive emails from recruiters/head hunters about once a week on average. Most of the opportunities are basically doing exactly what I'm doing now: connectivity/infrastructure development for a trading company.

Granted, the topic starter was asking about system administrator-type jobs, but presumably, the companies that need developers probably also need good admins.

Now, bad news. At least with my employer, we are basically only looking for people with previous experience. "Training" is not in our vocabulary. Effectively, we are only willing to consider people who can come in and start delivering excellent work with a minimum of support and direction.

My previous job was at a huge corporation, where they hired more on personality "type" and believed training would solve any knowledge or skill deficiencies.

Obviously, the ideal employee has experience that is a perfect match with job requirements and has the right personality. But realistically, these people are incredibly hard to find. And how long is a firm willing to wait to find these magical people?

So my question is: do companies still offer training programs? I've seen this attitude here on Slashdot that it's lazy to expect training from an employer, that one should be willing to put in the extra effort to come up to speed on whatever knowledge or skill the job demands on one's own time.

And another, related question is: even if companies aren't taking the time to explicitly train new hires, are they at least allowing time to "grow" and/or mentor employees? Looking only at the firm where I now work, I'm afraid that answer is a hard "no". That not only do you need exceptional experience to even get in the door, but once in, you're almost entirely on your own: someone will tell you what needs to be done and expect you to get it done.

I don't like the "sink or swim" mentality; frankly, it's kind of scary. But I think that huge training programs and hand-holding are probably low on the value scale. For me, there's a happy medium: I'm willing to put in extra hours to learn the technology and develop the skills I need, if the employer is willing to spend some time coaching me in the nature of the business, helping me learn the whys behind the things they do, the business models, the firm's culture and values, etc. I think that's a fair trade. But my experience at my current firm, and based at least on what I've heard of similar companies, they don't even take the time to properly introduce the company, i.e. the go by the "trial by fire" method of employee indoctrination. Is this unique to the trading industry, or is this just the way it is now?

Comment How does git compare to Clearcase? (Score 1) 277

Honest question: how does git compare to Clearcase? I ask because we used Clearcase at my previous job. I have fairly vivid memories of cursing it at the time. I started using svn for small projects at home and thought it was the best thing ever. In my current job we use svn as well; it's a small team, and the majority of modules have explicit ownership by a single person.

Anyway, I watched that video of Linus talking about git, and reading many of the posts here, I think it sounds really cool. But if my memory is correct, it seems like Clearcase can do many of the same things. The problem I saw with Clearcase, though, was more of a policy program. There was a tremendous amount of code history from people who had no business using any revision control system in the first place. Then there were histories of different peoples' ideologies on how source should be managed. Finally, while I was there, we had a guy come into our group who, in my opinion, had a really sane approach to Clearcase usage. Basically, the best practices he preached made our Clearcase usage look a lot like the good parts of git that everyone talks about. But still, to have sanity in Clearcase, it required that everyone follow the best practices, i.e. a policy matter. Too many people either didn't understand the rational behind the policy, were too stubborn to do it any way but their own, or simply made too many mistakes trying to keep up with the rules of the best practices.

Also, CC was dreadfully slow---everyone talks about how git is faster than svn, and svn is definitely faster than Clearcase (in my experience anyway).

Another area where we struggled was integrating the offshore development team into our Clearcase environment. I am guessing that git is fairly open by design---how does it fare for distributed groups for proprietary development (i.e. where the code needs to be kept secret)? CC may have improved, but when I was there, the offshore team had to use this Clearcase Web program that had limited functionality that couldn't even do everything we needed to maintain said sane policies mentioned above. I remember the offshore team checking code in, then I would go through and re-work the revision history to make it adhere to our policy. (This is about the time I left for a new job.)

Anyway, I'm not trying to promote Clearcase in anyway---I just wonder how it differs from git. And, even if it is fundamentally different, it looks like CC can somewhat be hammered into acting like git in some (perhaps scary) way.

Final question: the git method (as I understand it) certainly makes a lot of sense. But what about for developers who "don't get it"? It seems like it would be easy in such a de-centralized system to bung things up pretty bad for everyone else. I.e., how is sane usage policy enforced?

Comment My experiences, post CS degree (Score 1) 352

I graduated with a bachelor's in CS in December, 2001. My first job was for a huge manufacturing company. It was like a three-pronged fork: I did training, development, and support. We had a custom in-house application: an enhancement or "plugin" to a solid modeling application (Pro/ENGINEER). I was on a team of three, taking support calls, developing enhancements, bugfixing, and even going on-site to give a two-day training class.

That job was pretty fun, at least for the first few years. Towards the end of my five-year tenure there, I became less of a coder and more of a "project manager". Getting a step closer to management revealed more bureaucracy to me, and it started to get frustrating. I started thinking about some kind of internal transfer, when a friend called with an opportunity: come work with him at the trading firm he and another guy were starting.

So here I am, two years into the trading gig. In the parlance of this industry, I am a "connectivity developer". As our business grows and expands, I basically write the same programs over and over again: one to provide market data to the trading logic, and one to manage orders. I more or less "code all day".

I took the job because I wanted to do more development---in my previous job I felt I was getting too far away from the code, and wanted to stay more technical. What I found when I got here, though, is that spending the first five years not doing "hard core" coding (i.e., only spending about half my time actually programming) made me a weaker programmer than I thought myself to be. Perhaps another perspective is that the trading industry simply demands better coders---I have definitely improved since working here.

One of my points in all this is that you said, "I don't think I would particularly love to write code all day for a living either." I interpreted that as some coding is OK, not just all day every day. And my first job basically was just that---some coding.

Comment Consider a job in the finance/trading industry (Score 1) 262

This isn't exactly what you specified, but you ought to look into development jobs in small trading or financial firms.

Many of them want C++ coders, but there is some demand for Java folks.

Why I suggest this: in my experience, the trading/financial industry pays more---potentially a lot more when bonuses are taken into consideration. If you find a small trading firm that is profitable, chances are they have little bureaucracy and at least semi-intelligent management (it's a competitive field, so stupidity dies quickly).

The other side of the coin is that you'll probably work many more hours than you're used to. But if you're willing to consider taking on part time work in addition to your full-time job, then presumably you are prepared to spend more hours working in general.

I'm working for a small but successful trading firm in Chicago. Even though I have a good thing going, I'm keeping my eyes open. My resume is out there, so I get a fair number of emails from recruiters looking for people with experience in this field. Based on this, my guess is that, even in these depressed times, the demand for competent developers is still high in the trading/financial sector.

Comment Understand your performance requirements (Score 3, Interesting) 517

How many gigabytes are "multiple" gigabytes? Seriously, moving around five GB is much easier than 50 GB and enormously easier than 500 GB.

Another thing to consider: how many consumers are there? A "consumer" is any process that requests the data. If this post is a disguised version of "how do I serve all my DVD rips to all the computers in my house" then you probably won't ever have too many consumers to worry about. On the other hand, I work for an algorithmic trading company; we store enormous data sets (real-time market data) that range anywhere from a few hundred MB to upwards of 20 GB per day. The problem is that the traders are constantly doing analysis, so they may kick off hundreds of programs that each read several files at a time (in parallel via threads).

From what I've gathered, when such a high volume of data is requested from a network store, the problem isn't the network, it's the disks themselves. I.e., with a single sequential transfer, it's quite easy to max out your network connection: disk I/O will almost always be faster. But with multiple concurrent reads, the disks can't keep up. And note that this problem is compounded when using something like RAID5 or RAID6, because not only does your data have to be read, but the parity info as well.

So the object is to actually get many smaller disks, as opposed to fewer huge disks. The idea is to get the highest number of spindles as possible.

If, however, your needs are more modest (e.g. serving DVD rips to your household), then it's pretty easy (and IMO fun) to build your own NAS. Just get:

  • a case that can hold a lot of disks
  • a fairly recent motherboard
  • the cheapest CPU supported by the motherboard (your load is virtually all I/O; very little CPU is needed with modern I/O chipsets)
  • some RAM
  • a high quality, high capacity power supply
  • the disks themselves
  • and your favorite free operating system of choice

You might also want to purse the Ars Technica Forums. I've seen a number of informative NAS-related threads there.

One more note: lots of people jump immediately to the high performance, and high cost RAID controllers. I personally prefer Linux software RAID. I've had no problems with the software itself; my only problem is getting enough SATA ports. It's hard to find a non-server grade (i.e. cheap commodity) motherboard with more than six or eight SATA ports. It's even harder to find non-PCI SATA add-on cards. You don't want SATA on your PCI bus; maybe one disk is fine, but that bus is simply too slow for multiple modern SATA drives. It's not too hard to find two port PCI express SATA cards; but if you want to run a lot of disks, two ports/card isn't useful. I've only seen a couple of four-port non-RAID PCIe SATA cards. There's one eight port gem, but it requires PCI-X, which, again, is hard to find on non-server grade boards.

Comment Processes galore (Score 2, Informative) 268

In my previous job, I worked for a huge manufacturing company. I developed, maintained and supported an add-on (plug-in, extension, module, whatever) for their 3D CAD/solid modeling application (Pro/Engineer).

When I first hired on, and started working with the application, I learned about the quality process we used: SPQA, or software process quality assurance. This was relatively straightforward, and, in my opinion, didn't add too much overhead. It was basically a checklist of things that a manager went over with the development group. Then we added AQA, application quality assurance. Not only did this add more overhead, but some of the requirements of the two processes conflicted!

The projects my group worked on were fun, cool, and cutting edge, and the majority of the staff was quite engaged in their work. So we worked through all this process nonsense, and basically got used to it. However, lurking in the background all the while was 6 Sigma. The company had adopted this methodology wholesale, and was forcing it to be used in every facet of operation. Now, not only did we have our previous processes, SPQA and AQA, but we had 6 Sigma to contend with.

Looking back, it's sad how much time and effort was wasted just trying to figure out how to integrate all these processes into our development. Literally, the whole section (about 12--15 people) spent many meetings and countless hours coming up with process maps, just to explain how our development would proceed, and comply with AQA, SPQA, 6 Sigma and anything else management felt like we needed to do. I used to eat lunch with the supervisor of another group---he had actually worked in the same group as me, years ago. I'd be moaning about how much of my effort was spent just trying to juggle all these processes, and he'd say, "Back in my day, we just thought up an idea and coded it." I'd talk about the growing queue of bugfixes and enhancements, and how none of them could ever be realized without eliminating all this process nonsense (or doubling the staff and budget) and he'd smile and say, "I remember when so-and-so called me up, asking if I could make the program do such-and-such, and I did it the same afternoon!" Sigh.

Slashdot Top Deals

"Unibus timeout fatal trap program lost sorry" - An error message printed by DEC's RSTS operating system for the PDP-11

Working...