Totally. I find the biggest difference for me when writing static versus dynamically typed languages is when the type errors crop up. In a statically typed language such as C or Haskell, I'll see them when I run the compiler. In a dynamically typed language like Python or Clojure I'll see them when I run my unit tests. Both of those are things I always do before finalizing a changeset so either way the type errors caught.
Slashdot videos: Now with more Slashdot!
We've improved Slashdot's video section; now you can view our video interviews, product close-ups and site visits with all the usual Slashdot options to comment, share, etc. No more walled garden! It's a work in progress -- we hope you'll check it out (Learn more about the recent updates).
As someone who's been working on a fairly large scale application suite in Python for the last 4 years I would say that dynamic typing is both a blessing and a curse during development. It certainly makes writing and reusing code easier to an extent, but it can make some things more difficult especially when you have code that deals with objects of several different types and there's the potential to get things confused.
However, I could probably count the number of times I've seen a part of our system fail in production due to a type error on one hand. The type errors usually crop up during development or in the test suite. They're more of a pain when developing than anything.
That's why I think subscription services are the way to go. I have no qualms with using a service like Netflix or Rdio, even though the content isn't "owned" by me and could disappear at any time. If that happens, who cares? I'm paying a few dollars a month for the access. If either service were to suddenly vaporize, I'd simply start using another service or just do something else with my money.
For the few dollars spent each month on their streaming services I no longer have to worry about storing my media and I can listen / watch a much broader selection than if I was buying things separately.
Or worse, your textbooks will expire at the end of the semester due to DRM. You won't be able to reference them after taking the course, and god forbid you fail the course and have to re-purchase a "license" for your textbook.
Also, where have you been getting your cheap $100 textbooks? Most of the ones I had to buy were nearly $200...
The PDF of the paper has all the details. The article is just fluff.
From the paper:
Previous studies show that some C programs spend up to one third of their execution time in dynamic memory management routines such as malloc and free
You can check the PDF for the cited studies.
This assumes you have identical hardware you can test with. Yes there are some issues you can discover this way, and virtualization goes a long way to mitigating the risk, but there are times when you have a system with a specific configuration that can only be tested there.
I would not trust such a service. Just because a kernel can be upgraded in place doesn't necessarily guarantee that same kernel configuration will be able to boot your system in an outage. Something like a messed up GRUB configuration won't be spotted until you actually try to restart your system. I think part of a regular maintenance strategy is being able to restart your servers and make sure everything is configured to come back up automatically. The last thing you want to is to be trying to figure out what's wrong with your boot config when you have an unplanned outage.
I never said I don't think iPhone isn't any good. I'd own one myself if I had the means. I had a Japanese filp phone while I lived there, and while it didn't have an app store it was more than good enough for GPS mapping, browsing the net, email, etc. Sure I couldn't download a bunch of fancy Google apps, but I didn't strictly need them. Best of all, it was free with a one year contract because it was older than 6 months.
Hardly anyone in Japan actually uses a "smartphone". The regular flip phones are so full featured that there is not much need to. You can even download full TV series to your basic phone to watch while you ride the train. Between that, and email, and a few basic online apps, most consumers seem happy with their "bog standard" phones. The fact that a WinMo phone is in second place should be evidence enough that the smartphone market there is pretty much non-existant. Not once would you ever see someone on a WinMo phone.
Furthermore, phone fashion is a huge thing. While the iPhone is pretty nice by our standards, it's got nothing on some of the glitzy and sleek phones available there. Fashion also changes quickly, while the appearance of the iPhone has remained largely the same.
Exactly. Not like it matters anyway. I even post my email up on my website so people can like, you know, email me!
An IP lawyer once told me: A contract is only worth about as much as the paper it's written on.
That's why configuration management systems like Bcfg2, Puppet, Chef, Cfengine, etc. exist. They can guarantee that all the relevant configuration is identical across your systems.
As for services managed by the HA demon, with the modern configuration of OpenAIS/Pacemaker (even in Heartbeat 2.0) there's a CIB (Common Information Base) that shares the configuration between all the cluster nodes. It makes it pretty much impossible to not have the identical HA services configured cluster-wide.
Reminds me of my senior engineering project which we presented at a highly competitive national conference here in Canada. On the day the judges were coming around to the booths, our device suddenly stopped working. It was still connected to the computer through USB, but for some reason the analog-digital conversion was failing. Literally 10 seconds before the judges appeared in front of our booth my partner whacked the device enclosure with his fist and suddenly everything worked again. We ended up coming in 3rd