You are aware there are millions of children with various developmental delays, right?
Re:Review Ruby for the perl enthusiast please
on
Ruby 2.0.0 Released
·
· Score: 1
It's hard to gauge exact numbers, but pointing to Ruby on Rails as the whole of the Ruby ecosystems is a bit of a chestnut these days. Ruby is become an increasingly important systems language. See, for example - vagrant, chef, puppet, mcollective, capistrano, aeolus, logstash, beanstalk, facter, buildr, etc etc.
Even within the realm of web applications, Rails isn't the only game in town. Sinatra has rocketed in popularity, inspiring inspiring similar micro-frameworks in a dozen other languages (see: dancer, flask). And there are a number of other smaller frameworks (like Grape, which is specifically for building RESTful APIs).
You have to download (or otherwise trasfer) a game on multiple devices if you want it on multiple devices, regardless of whether it is implemented as an HTML5 application or something else.
And you're assuming HTML5 applications are browser only. Mobile platforms are increasinly supporting installed, offline "web" applications. In the case of WebOS (yes, yes, largely defunct) it is the primary development platform. Even run within a browser, the application cache provides an explicit percistence mechanism under modern browsers.
High qualitity private institutions like Princeton, Harvard, Brown, Dartmouth,Stanford, MIT, Vassar, Columbia, Wellesly, Notre Dame, Hillsdale, Wheaton, blah blah blah.
(Yes, I know, most of them also receive public funding. But you said "public universities" and "private institutions". Perhaps you meant to criticize for-profit education?)
I'm familiar with the hows and whys of sigils. I just think the combination of sigil variance and allowing the same identifier to be used for different types (i.e. both $foo and @foo) is particularly awful. Of course I think sigil variance is awful on it's own.:)
You specifically asked, "What would you prefer?" and gave silly alternatives. I gave suggestions that are clearer and more accurately reflect the contents of the variable.
My point is that the ability to use the same variable name with a different sigil doesn't add any real value and only serves to make code more confusing, especially for neophytes. Even once you've mastered the quirky syntax, it still makes it harder to skim code (or to search it, for that matter).
Not particularly good naming, you're calling a file name, lines of input and formated output all "file". With more sensible naming:
sub read_file{
my $filename = shift;
open(FILE, $filename) or die "$!";
chomp(my @lines = );
close(FILE) or die "$!";
my %data;
while my $line (@lines){
my($key, $value) = split/=/, $line;
$data{$key} = $value;
}
return %data; }
Of course once you remove the dubious reuse of the same variable name for different types, the sigils are rendered unnecessary and confusing. The same steps in Ruby:
Sure, part of the name, unless you're referencing a element (i.e. '@foo = (1,2,3); $foo = "bar"; print $foo[0]')
So in order to reference a variable that allegedly included the sigil as part of it's "name" you have to type in the "name" of another variable that "is not the same" and "coexist[s] without interference". This sucks and *is* confusing. Which is why they changed it in perl6.
Like the changes Tolkein started and abandoned. As per the link you yourself provided:
He abandoned the new revision at chapter three after he received criticism that it "just wasn't The Hobbit", implying it had lost much of its light-hearted tone and quick pace.
You realize that to some people $1000 is an awful lot of money. Or $500. Or even $100. You may have the money to replace a TV or vacuum cleaner or clothes dryer at a whim, but plenty of people still consider those major purchases.
If you're alluding to the stem cell therapy, no. Manning had autologous stem cell therapy; i.e. he was injected with cells from his own body. Religious objection is almost exclusively to embryonic stem cell research and therapies. Those using adult stem cells are not just acceptable, they're actively funded by religious organizations (including the Vatican).
They were selling the iPhone 3G as new hardware until June of last year. I don't think it unreasonable to think a smartphone vendor should release at least security updates for the duration of a standard service contract.
Actually, WebOS is overwhelmingly standard open source Linux component. Base system is a far more standard Linux kernel than Android uses and stock GNU glibc. The IPC is d-bus. System services run on top of either a JVM with the Apache Harmony classes in 1.x or on Node.js, which is powered by Google's V8 engine. Audio and media handling is PulseAudio and GStreamer. The official ROM includes a full suite of shell utilities with the busybox package, GNU binutils and even an ARM assembler.
And, probably most importantly, you can get root access without resorting to any sort of jailbreaking or re-flashing. Simply use the official developer kit and follow the official instructions to get access. Once logged in, it's a simple matter to add third-party repositories and install whatever packages (in the standard ipkg format) you want. Even an sshd daemon, for easy access.
It's turbo-charged and direct injection. Expect to see more of that as manufacturers go with higher tech, higher cost options to meet tightening efficiency requirements.
So to both developers and consumers, iPhone OS is the most open.
The platform that forbids any language other than C, C++, Objective C and Javascript, forbids interpreters and doesn't allow you to install third party apps is "the most open". Gotcha.
All the Pentium III processors release from 2000 forward should be Vista Capable, though perhaps with a memory upgrade and/or a new video card. Most would run Windows 7 as well.
It's not all G4s up to nine years either. The iBook G4 800MHz was sold until early 2004, only six years ago, so your analogy would be like not being able to install Vista on a 2.8GHz Pentium IV. (And of course the Mac Mini shipped with a G4 through 2006, which got dropped a little of three years later in Snow Leopard.)
The Xeon X7560 already has 28.5MB of cache (64KB L1 per core, 256KB L2 per core, 24MB L3 shared). A fully loaded quad processor system could theoretically have a terabyte of ram (four channels off each processor, four banks per channel, 16GB DIMM per slot).
Could you even buy an ink jet for $99 ten years ago? As I remember it, prices were closer to $200-300 at the low end. Factor in inflation and today you'd be spending somewhere in the neighborhood of $250-400. Bet you could get a solid printer for that much.
Ever heard of a little thing called visualization?:) Even in the single-host space, there is plenty of software with a high degree of parallelism and horizontal scalability. We have several types of servers that run hundreds (and in some cases) thousands of threads or processes.
I've seen several WinCE devices in the wild, never seen an n900 outside of a store. CE may look childish, but its still a hell of a lot more popular, theres a reason.
Erm, ever hear of Android? Palm's WebOS? Linux. And moving a hell of a lot more units than Windows Mobile.
The reason there are no good rules of thumbs is because environments and applications vary widely. Are the applications canned or custom? Are we supporting general services like file sharing or printing? If so, are we talking about printing documents here and there, high volume legal or medical printing, floor plans on a giant honking plotter, pre-press ad copy? Are the files the usual office flotsam and jetsam, high value CAD files that demand rigorous snapshots and backups, raw video files that require high speed workstation storage? Are there natural downtime windows to perform maintenance? Are there internal or external SLAs to meet? Are users given administration privileges, or is everything centrally managed? What mobile devices are in use? Are networking needs managed in house or contracted? Is there need for VPN access? Is mail storage done in-house or outsources? If so, what's the spam and virus filtering? Are there quotas? Synchronization with mobile platforms? Integration with an instant messaging platform? What about hardware? Does the hardware cycle match the warranty cycle, or does the company expect the IT staff to do their own maintenance?
In other words, the correct ration of admins to users or computers is "as many it takes".
You are aware there are millions of children with various developmental delays, right?
It's hard to gauge exact numbers, but pointing to Ruby on Rails as the whole of the Ruby ecosystems is a bit of a chestnut these days. Ruby is become an increasingly important systems language. See, for example - vagrant, chef, puppet, mcollective, capistrano, aeolus, logstash, beanstalk, facter, buildr, etc etc.
Even within the realm of web applications, Rails isn't the only game in town. Sinatra has rocketed in popularity, inspiring inspiring similar micro-frameworks in a dozen other languages (see: dancer, flask). And there are a number of other smaller frameworks (like Grape, which is specifically for building RESTful APIs).
You have to download (or otherwise trasfer) a game on multiple devices if you want it on multiple devices, regardless of whether it is implemented as an HTML5 application or something else.
And you're assuming HTML5 applications are browser only. Mobile platforms are increasinly supporting installed, offline "web" applications. In the case of WebOS (yes, yes, largely defunct) it is the primary development platform. Even run within a browser, the application cache provides an explicit percistence mechanism under modern browsers.
High qualitity private institutions like Princeton, Harvard, Brown, Dartmouth ,Stanford, MIT, Vassar, Columbia, Wellesly, Notre Dame, Hillsdale, Wheaton, blah blah blah.
(Yes, I know, most of them also receive public funding. But you said "public universities" and "private institutions". Perhaps you meant to criticize for-profit education?)
I'm familiar with the hows and whys of sigils. I just think the combination of sigil variance and allowing the same identifier to be used for different types (i.e. both $foo and @foo) is particularly awful. Of course I think sigil variance is awful on it's own. :)
You specifically asked, "What would you prefer?" and gave silly alternatives. I gave suggestions that are clearer and more accurately reflect the contents of the variable.
My point is that the ability to use the same variable name with a different sigil doesn't add any real value and only serves to make code more confusing, especially for neophytes. Even once you've mastered the quirky syntax, it still makes it harder to skim code (or to search it, for that matter).
Not particularly good naming, you're calling a file name, lines of input and formated output all "file". With more sensible naming:
sub read_file{
my $filename = shift;
open(FILE, $filename) or die "$!";
chomp(my @lines = );
close(FILE) or die "$!";
my %data; /=/, $line;
while my $line (@lines){
my($key, $value) = split
$data{$key} = $value;
}
return %data;
}
Of course once you remove the dubious reuse of the same variable name for different types, the sigils are rendered unnecessary and confusing. The same steps in Ruby:
def read_file(filename)
file = File.open(filename)
lines = file.read.split($/)
file.close
data = {}
lines.each do |line|
key,value = line.split('=')
data[key] = value
end
data
end
Which looks cleaner?
Sure, part of the name, unless you're referencing a element (i.e. '@foo = (1,2,3); $foo = "bar"; print $foo[0]')
So in order to reference a variable that allegedly included the sigil as part of it's "name" you have to type in the "name" of another variable that "is not the same" and "coexist[s] without interference". This sucks and *is* confusing. Which is why they changed it in perl6.
Like the changes Tolkein started and abandoned. As per the link you yourself provided:
You realize that to some people $1000 is an awful lot of money. Or $500. Or even $100. You may have the money to replace a TV or vacuum cleaner or clothes dryer at a whim, but plenty of people still consider those major purchases.
If you're alluding to the stem cell therapy, no. Manning had autologous stem cell therapy; i.e. he was injected with cells from his own body. Religious objection is almost exclusively to embryonic stem cell research and therapies. Those using adult stem cells are not just acceptable, they're actively funded by religious organizations (including the Vatican).
There was a ULC minister doing this thirty years ago. Google: "ron jaenisch" "reverend apple"
Even better, look at at the trade weighted exchange index maintained by the Federal Reserve. Or the ICE dollar index.
They were selling the iPhone 3G as new hardware until June of last year. I don't think it unreasonable to think a smartphone vendor should release at least security updates for the duration of a standard service contract.
Of course the iPhone 3G was sold through 2010-06 and received its last update on 2010-10.
Actually, WebOS is overwhelmingly standard open source Linux component. Base system is a far more standard Linux kernel than Android uses and stock GNU glibc. The IPC is d-bus. System services run on top of either a JVM with the Apache Harmony classes in 1.x or on Node.js, which is powered by Google's V8 engine. Audio and media handling is PulseAudio and GStreamer. The official ROM includes a full suite of shell utilities with the busybox package, GNU binutils and even an ARM assembler.
And, probably most importantly, you can get root access without resorting to any sort of jailbreaking or re-flashing. Simply use the official developer kit and follow the official instructions to get access. Once logged in, it's a simple matter to add third-party repositories and install whatever packages (in the standard ipkg format) you want. Even an sshd daemon, for easy access.
It's turbo-charged and direct injection. Expect to see more of that as manufacturers go with higher tech, higher cost options to meet tightening efficiency requirements.
C API:
- Android: closed
- WebOS: closed
You apparently haven't heard of the Palm PDK.
So to both developers and consumers, iPhone OS is the most open.
The platform that forbids any language other than C, C++, Objective C and Javascript, forbids interpreters and doesn't allow you to install third party apps is "the most open". Gotcha.
All the Pentium III processors release from 2000 forward should be Vista Capable, though perhaps with a memory upgrade and/or a new video card. Most would run Windows 7 as well.
It's not all G4s up to nine years either. The iBook G4 800MHz was sold until early 2004, only six years ago, so your analogy would be like not being able to install Vista on a 2.8GHz Pentium IV. (And of course the Mac Mini shipped with a G4 through 2006, which got dropped a little of three years later in Snow Leopard.)
The Xeon X7560 already has 28.5MB of cache (64KB L1 per core, 256KB L2 per core, 24MB L3 shared). A fully loaded quad processor system could theoretically have a terabyte of ram (four channels off each processor, four banks per channel, 16GB DIMM per slot).
Could you even buy an ink jet for $99 ten years ago? As I remember it, prices were closer to $200-300 at the low end. Factor in inflation and today you'd be spending somewhere in the neighborhood of $250-400. Bet you could get a solid printer for that much.
Ever heard of a little thing called visualization? :) Even in the single-host space, there is plenty of software with a high degree of parallelism and horizontal scalability. We have several types of servers that run hundreds (and in some cases) thousands of threads or processes.
s/Apple created the SmartPhone market place/Apple created the consumer SmartPhone market place/
Fixed that for you. Apple still hasn't even caught up with the leader (Blackberry) in the overall smart phone market.
I've seen several WinCE devices in the wild, never seen an n900 outside of a store. CE may look childish, but its still a hell of a lot more popular, theres a reason.
Erm, ever hear of Android? Palm's WebOS? Linux. And moving a hell of a lot more units than Windows Mobile.
The reason there are no good rules of thumbs is because environments and applications vary widely. Are the applications canned or custom? Are we supporting general services like file sharing or printing? If so, are we talking about printing documents here and there, high volume legal or medical printing, floor plans on a giant honking plotter, pre-press ad copy? Are the files the usual office flotsam and jetsam, high value CAD files that demand rigorous snapshots and backups, raw video files that require high speed workstation storage? Are there natural downtime windows to perform maintenance? Are there internal or external SLAs to meet? Are users given administration privileges, or is everything centrally managed? What mobile devices are in use? Are networking needs managed in house or contracted? Is there need for VPN access? Is mail storage done in-house or outsources? If so, what's the spam and virus filtering? Are there quotas? Synchronization with mobile platforms? Integration with an instant messaging platform? What about hardware? Does the hardware cycle match the warranty cycle, or does the company expect the IT staff to do their own maintenance?
In other words, the correct ration of admins to users or computers is "as many it takes".