Slashdot is powered by your submissions, so send in your scoop

 



Forgot your password?
typodupeerror
×

Submission + - Driving Force Behind Alkali Metal Explosions Discovered (nature.com)

Kunedog writes: Years ago, Dr. Philip E. Mason (aka Thunderf00t on Youtube) found it puzzling that the supposedly "well-understood" explosive reaction of a lump of sodium (an alkali metal) dropped in water could happen at all, given such a limited contact area on which the reaction could take place. And indeed, sometimes an explosion did fail to reliably occur, the lump of metal instead fizzing around the water's surface on a pocket of hydrogen produced by the (slower than explosive) reaction, thus inhibiting any faster reaction of the alkali metal with the water. Mason's best hypothesis was that the (sometimes) explosive reactions must be triggered by a Coulomb explosion, which could result when sodium cations (positive ions) are produced from the reaction and expel each other further into the water.

This theory is now supported by photographic and mathematical evidence, published in the journal Nature Chemistry. In a laboratory at Braunschweig University of Technology in Germany, Mason and other chemists used a high-speed camera to capture the critical moment that makes an explosion inevitable: a liquid drop of sodium-potassium alloy shooting spikes into the water, dramatically increasing the reactive interface. They also developed a computer simulation to model this event, showing it is best explained by a Coulomb explosion.

The Youtube video chronicles the evolution the experimental apparatuses underwent over time, pursuant to keeping the explosions safe, contained, reliable, and visible.

Comment Re:why? (Score 1) 677

There may be a better pattern, but in a few cases, I found Goto a lot easier to read than 20 layers of nested If statements..

That's a straw-man argument: no-one would seriously argue that having 20 layers of nested conditionals is good code so even shops that religiously avoid goto would rewrite that code to something that doesn't suck.

Comment Re:NONE (Score 1) 55

A contract won't save you from IR35 compliance issues: it's specifically designed to catch people who are for all intents and purposes employees even if they're on a contract. Though of course the lawyers and accountants will tell you if you'll get on the wrong side of IR35 by sticking to it.

I know, but the companies I have worked with have all been very understanding of the IR35-specific clauses and how important it is that we actually *work* this way. The contract's only one piece of the story, but it is a good way to get the story across to companies that aren't familiar with IR35 and start off thinking they can treat you like "just an employee".
IR35 is a mess. No-one can actually tell you for sure what'll happen.

Comment Re:NONE (Score 1) 55

Your anecdotes don't contradict what I said - your client reviewed your commits and requested further changes for actual compliance before acceptance. The grandparent post implied that you paid the freelancer, they disappeared off the face of the earth, and only then the client would realize compliance issues. That has never been how it works in my experience, and clearly not in yours either.

About the contract:
The framework contract/service agreement I work with is about 6 pages of actual text. It's my own text, it has already been reviewed thoroughly (by two sets of lawyers and several accountants specialized in UK contracting), so in case of new agreements it's usually only a few amendments that need review.

Part of the reason it's so long is because of the UK's IR35 regulation - the way I work makes it very important that my contracts are iron-clad in case of a review. Another reason is that I do quite a bit of work for US multinationals in software that has to achieve FDA approval. I'm sure that for a lot of work you could get away with less. I think that's because US companies are more aware of the damage potential of legal issues more so than in other countries. One of the big ones I work with has been involved in IP/patent battles and critical subcontractors declaring bankruptcy unexpectedly in the middle of a project - they needed me to cover those eventualities.

To avoid the issues of having to review long contracts and the cost of review, I use my own framework agreement for clients. If a client wants to use their contract that's fine, but they get a notice that the cost of having to review their contract will be added to the cost of my work.
Though I guess that in all of the above we're not talking about "freelancing" as in the article - a $150 piece of work wouldn't open anyone up to any great liability (one of my contract clauses stipulates that liability can never be more than the amount paid for the work).

Comment Re:NONE (Score 3, Interesting) 55

Further more, out of experience, especially for bigger projects, taking in freelancers is a very bad idea : - You lose the knowledge about the project : - in case of evolution you need to find the same freelancer hoping he/she will be able and have the time to do the job

Only if the hiring party is being cheap and/or is relying on "wishful thinking" documentation (what if one of your in-house devs with a lot of knowledge gets hit by a bus?). A well-run project will have documentation requirements that the freelancer has to implement.

- If there's a problem, - your own developpers will be pulling out their hair because it's not compliant to their way of working (or worse unreadable spaghetti code)

Why would you pay a freelancer to develop code that isn't compliant to in-house standards?

- no garantees, you've already validated and payed the freelancer, yer on yer own.

need to go on?

And again - why would you hire a freelancer under a contract with no warranty if you feel that is important to your business (because you don't trust your initial validation and acceptance)?

I actually work as a software contractor. My contracts have all kinds of stipulations for the situations mentioned - including an arbitrage and jurisdiction clause. Having a good contract is great for both sides. Don't skimp on it. Clients can be a little intimidated at first (it's not a short document even in draft form) but when they read it they realise that everything that's in there is in there for a reason, and it's really not just to cover my own arse.

Comment Re:Static analysis tools... (Score 2) 233

If you're company is willing to pay for it, you can get something like Coverity. On the free(as in beer) side there is CppCheck and clang.

Coverity is expensive, slow, and failed to successfully compile any of our large real-world projects ("large" here meaning tens of thousands of files). This was with their own consultants / sales people on-site to babysit the process. They couldn't do it and couldn't figure out why it wasn't working. From their explanations it also seemed that on a properly large code-base you'd have to spend a long time tweaking the output to rid yourself of spurious messages/warnings.

From experience, the best way to clean up a large project is to not actually mess it up in the first place. If you think it's messed up anyway, then the first thing you need to do is to think long and hard about cost/benefit. A large, specialized company like Coverity can't actually make a specialized compiler/linker that works for all possible correct C++ programs. C++ is notoriously hard to handle "automatically" unless you follow certain strict rules, and if the project is already that messy it's unlikely that any automatic tool is going to make that much of it.
Where do you want to go with this project? Is it actually working fine now? Does it need changes? Can you afford these changes? If the answers to all of these are "yes" then I think your best bet is good old elbow grease. Start adding unit tests for the code, and then manually start cleaning up the code. Just the act of adding unit tests will teach you a lot about the dependencies of the code.

Comment Re:What the Hell? (Score 1) 262

They really do not. That's like saying Mercedes Benz faces competition from Smart Cars.

Theoretically, both a Smart Car and an S class have four wheels, but nobody who is shopping for one is seriously considering the other.

Likewise, nobody shopping for cable Internet is shopping for DSL.

Not-so-theoretically, Smart are actually owned by Mercedes Benz.

Comment Re:Quiet cars and proportion of accidents (Score 3, Informative) 823

That mandated noise IS entirely a safety issue

It is a perceived safety issue and I don't buy the arguments in favor of mandating noise pollution. If it really were a problem we should expect to see cars that are quieter than average involved in proportionally more collisions that cars that are more noisy. I've not seen one speck of evidence that quiet cars get in more accidents due to their sound levels. It is to my mind a completely nonsensical argument with no evidence to support it.

Studies have been done and have confirmed that quiet cars get in more accidents at lower speeds due to their sound levels.

Comment Re:That's a lot of acronyms, isn't it? (Score 3, Interesting) 39

As a BT Customer, I can assure you that it stands for "Bloody Terrible", and the buyout is only feasible because the telecomms regulator is as toothless as a wet cabbage.

My friends who use it, assure me that EE stands for "Extremely Expensive".

As an EE user I have to disagree. It actually stands for "Eencredibly Eencompetent."
As I discovered when they contacted me to suggest I go from Pay-As-You-Go to Pay-Monthly, on a plan that was actually financially advantageous. Only to find out the next time I was abroad, a week later, that there was no roaming activated on Pay-Monthly. I spent a week attempting to get through to customer service with no success ("We estimate we'll be with you in 1m", for an hour and a half). When I finally managed to get through to them back in the UK, they gleefully told me that roaming could only be activated on pay-monthly if you'd been with them for over a year (W... T.... F.....).
I calmly explained that it was *them* that had contacted me to switch plans, when I'd been using the roaming facility on my PAYG for a week out of every month in the past year, so could they kindly get their thumbs out of their arses and fix it or cancel my plan entirely. And suddenly it wasn't so much of a problem to instantly activate my roaming.
Why am I still with them? Best coverage in the UK and abroad, and best prices for my (very non-average, admittedly) usage pattern. But holy shit, are they ever incompetent.

Slashdot Top Deals

A morsel of genuine history is a thing so rare as to be always valuable. -- Thomas Jefferson

Working...