Ruby example: do_something() if some_time 7.days.ago
To me, this line of Ruby code is perfectly clear and self-documented. It is also about as short as you could make it. If I had to write the same code in Java, it would be long enough that I would feel it required a comment.
I'll give you a few reasons: 1) Often the amount of time it takes you to code something is WAY more important than performance. 2) How clean and easy a program is to maintain is often even more important. 3) When performance is more important, you probably shouldn't be using a scripting language (or you should go with Lua). 4) JRuby and YARV (different versions of Ruby) are much faster, and the latest Ruby 1.9.1 is even faster than those. 5) If you can stand to extend Ruby in C or with COM objects (it's not that hard), Ruby 1.9.1 will do just about anything you want, and you can control performance by writing the slow parts in C. Your only real problem would be using bloated frameworks like Rails, which can't be sped up so easily. 6) If you can't stand to extend it in C or with COM objects, or if you need native threads, use JRuby. If a piece of Ruby code runs too slow in Ruby, convert it to Java. JRuby doesn't care whether an object is a Java object or a Ruby object.
"Why can't they make a language, or extend a language like Ruby, such that one can program it as a scripting language, but then add verbosity optionally (i.e. declaring the data types and their sizes, private / static etc. & whatever the hell makes a program light weight and fast) optionally?"
They already have that. It's called JRuby. Even better than what you suggested, JRuby supports native threads. Run it with an Apache+Tomcat server and watch it put normal Ruby-based web apps to shame in terms of scalability and ease of deployment (probably in terms of reliability, too).
I think 3 was "Try to make people believe Google is a monopoly so we can sue them and then monopolize another market." That would make 4 the rebranding effort, and I would change the "!!" at the end of 5 to "??".
Wavelength is definitely a full dimension, as it would be possible to read data at a near infinite number of specific wavelengths. Reading should be easy because you can just pass the light through a prism and check a specific angle of refraction to find the wavelength you need. Writing would be trickier, but it's an engineering problem that can be improved upon over time.
I'm not sure if I'd call polarization a dimension because there are only two angles you can work with, the angle you start with and the angle perpendicular to it. If you try to use a third angle, data from other two will mix with what you're trying to read. So I would say polarization adds another bit (allowing you to store twice as much), but not another full dimension (potentially allowing you to store orders of magnitude more).
It sounds like MS wants to charge us for every time we click on the UAC "Accept" button. Wow, the business reasons behind Vista's UAC feature finally make sense to me now. They should change that "ding" sound with a "cha-ching".
If Yahoo removed it, in theory he could post several more the next day under new accounts, and the problem only gets worse.
I'm not sure how the Yahoo posting works in this specific case, but if she can show somehow that it was his Yahoo account that posted it, she should be able to get the police to lock him up. There have been articles about people being arrested for posting photos/videos/private info of an ex without permission (it is against the law, after all). If he posted her photo, number, or address and caused her to get a lot of calls/visits about it, in theory they should be able to nail him with the same law, or something very similar.
This way no law suits are necessary and other assholes are discouraged from doing the same thing. I'm sure there are flaws in the plan, but at least this way, local officials handle local disputes, which is as it should be.
I'm not bashing you, but these two statements seem to go against each other:
"...but unfortunately the only option is an orange color (Covet). Thanks but no thanks, I'll take the industrial-looking graphite."
"A computer is a tool, not an accessory. When it comes to tools I try to be practical."
I think it would be better to say that in many circumstances, a laptop is an accessory. If nothing else, you may have to take it on business trips, where people will take in your laptop's appearance as part of your personal appearance, and appearance is very important in business dealings (no matter how much computer geeks like me wish it wasn't). I agree that orange is a horrible color for a laptop. And men probably care more about their laptop's appearance than women do, but they want it to look "fast", "cool", and "sleek", like they want their car to look.;-)
Engineers: "It's the software!" Developers: "It's the hardware!" Both: "Why didn't the testers catch this?" Testers: "That wasn't one of the use cases, so it's the designers' fault." Designers: "The product wasn't meant to be used that way, so it's a documentation error if the tech writers didn't tell users not to do that." Tech writers: "Don't look at me, I just write what you guys tell me to write."
Open Source Developer: Don't look at me. My users contribute design ideas, code, docs, testing, etc. So if there's a problem, it's their fault 4 times over for designing it, coding it, failing to test it, and failing to document it.;-)
"First of all, you have to grease the local politicians for the sudden zoning problems that always come up. Then there's the kickbacks to the carpenters. And if you plan on using any cement in this building, I'm sure the teamsters would like to have a little chat with you, and that'll cost you. Don't forget a little something for the building inspectors. There's the long-term costs, such as waste disposal. I don't know if you're familiar with who runs that business, but I assure you it's not the boy scouts."
It's not supposed to perform faster on normal benchmarks. It's not like the CPU, memory, or hard drive runs at a different speed when you install Windows 7. Where Windows 7 is noticeably faster is in these areas:
1) Overall UI responsiveness. 2) When you start getting low on memory (7 still seems to be a memory hog, but it seems to handle it better than Vista). 3) It doesn't chew on your hard drive constantly like Vista did (Vista always did that for me, anyway). When I run a few apps simultaneously that need to use my hard drive, the whole Vista UI often hangs completely for 10-60 seconds. I haven't seen Windows 7 do that once yet.
Most benchmarks can't reliably test for things like this, so they don't bother to try. As a developer, I tend to run a lot of IO-heavy apps simultaneously, and having my entire OS hang when I do that is not acceptable because it interrupts my work-flow. So far the worst I've seen with 7 is that when I try to run two instances of a game I'm working on so I can test changes to the networking code, the game instances stutter pretty badly compared to when I run two instances on XP. My 2 CPU cores aren't maxed like they are in XP, so it's probably hitting a bottleneck in the graphics card/driver (which is BETA). Or it may have something to do with how Aero handles multiple instances of D3D apps in windowed mode. Either way, it's not something I can fault Windows 7 for at this time.
DISCLAIMER: I'm not saying Windows 7 is great. I haven't had enough time to get comfortable with it yet, and it still requires more memory than XP. But so far it sucks a lot less than Vista. Despite what this article claims, the differences are very noticeable if you're the kind of person who pushes their PC to its limits a lot. The first time Vista hung for a full 60 seconds with two idle CPU cores on a system with 4GB of memory, it made me want to kick someone at MS in the nuts as hard as I could (just to make sure they felt my pain). I haven't had I/O wait times like that since I had a Commodore-64 with a cassette tape drive (even my C64 floppy drive was faster than that). I really wish I could say I'm exaggerating, but I'm not. For everyone who has had no problems with Vista, I'm happy for you. You're probably not debugging apps in Visual Studio while running SQL Server AND multiple virtual PC's that also do some of those things at the same time. I can barely run Visual Studio by itself on Vista, but I have to do all that other stuff on XP every day I come into work.;-)
I don't even think XP would be good on a netbook. I'd like to see a Tegra-based netbook with a slim version of BSD and an OpenGL ES windowing system written by nVidia on top of it. No X Windows overhead, just go straight to the hardware with a slim windowing library with OpenGL widgits. But that's just me.;-)
I installed the 64-bit version Saturday night (MSDN download), and so far it is much better than Vista. As a developer who beats the hell out of his machines, I've had major performance problems with Vista no matter how much memory I give it. Vista chokes badly when I try to debug apps in Visual Studio on a 4GB machine with nothing else running where XP handles it fine with 2GB of memory and a bunch of other apps running at the same time (even with other virtual machines running).
I installed 64-bit Windows 7 on my home machine (dual-boot with 32-bit XP, just in case). It's a dual-core Athlon with 2GB of memory and a GeForce 8600, and while I haven't had time to beat it up badly yet, so far it seems as smooth as when I run XP on the same machine. Unlike Vista, it does not chew on my hard drive all the time and choke when one of my apps needs it. I just installed Visual Studio last night (which takes like 4 hours including the Service Pack install), so I haven't had time to play with Visual Studio on it yet, but it ran Crysis, Oblivion, and my own graphics demos (http://sponeil.net/) well enough that I'm hopeful about developing on it.
NOTE: I haven't disabled any of the default services 7 starts with. I wanted to see how it ran in its default configuration first. I'll try tweaking it for better performance after I've gotten comfortable with it. Also, for everyone saying it has problems with 1GB or less of RAM, what did you expect? I expected it to choke with 2GB, but so far I have been pleasantly surprised. If I buy Windows 7 when it comes out, I'll probably upgrade to 4GB to make sure I have some breathing room. I don't really like being forced to buy more for the OS, but sometimes you have to move on. (I'll probably keep XP on my old laptop because that's not worth upgrading.)
If you have 2GB of RAM or more and can easily set your system up to run dual-boot (i.e. have a spare hard drive, or can resize your primary partition to make room for a new one), I would recommend giving it a try. I would not recommend replacing or upgrading your only OS with it at the moment.
I think it's because hot chicks like the horny little devil mascot better than the penguin. If nothing else, hot chicks definitely look better when they dress up as a horny little devil than when they dress up as a penguin.;-)
For some reason, this makes me think of that old Cheers episode where the gang was down about coming in last at something. Then Frasier walked by looking pitiful because he wasn't getting any from his wife, and the gang started chanting.
What about cheap power buttons? The companies who make these don't expect you to turn them on/off very often. I had to shut down a PowerEdge 750 the other day, and when I went to power it back on, the damn power button broke and fell inside the case. I had to stay an (extra) hour later to get the damn thing running again, and I'll bet that every time we have to shut it down, we'll have to open the case to turn it back on. I shut down an HP Proliant on the same night, and the 2003 Server startup hung on the infamous acpitabl.dat. That took another hour. I had run into that one about a year ago and had the fix saved in an email, but as that happened to be the mail server, it wasn't much help (it turned out to be an incompatibility with the KVM switch in that rack). I don't think their cost and ROI calculations include the pain and suffering of the IT staff. I'm not even in IT, but we no longer have a dedicated IT person, so various developers maintain the servers.
This article is a real let-down (pun intended). When I saw the title in my RSS feed, I was expecting to read about some novel idea to use balloons to steer a craft in the vacuum of space. Using things like balloons and parachutes to slow things down in the atmosphere is not a novel idea.
Doc Emmett Brown could've used something like this. Then he wouldn't have had to swindle the Libyans, and he wouldn't have gotten shot for it. Kinda makes you wonder if we can attach one of these to a capacitor that can hold 1.21 JigaWatts (or several times that for several lighting strikes).
Actually, it's pretty easy for an organization like the NSA to detect which Skype users are logged into which IP without a powerful machine, which lets them listen in on just the Skype users they're interested in. Or they can just scan calls going to/from IP ranges they're interested in (i.e. from the US to North Korea). The hard part is getting all the Skype users to visit the malicious web site.
I'm sure someone will correct me if I'm wrong, but I thought Intel started this law suit because nVidia has plans to make their own x86 chip. Combined with products like the Tegra on the hand-held side, it looks like nVidia is trying to cut Intel out of the loop entirely, which may cut into Intel's sales even more heavily than AMD has managed so far. If that's the case, Intel will try to slow them down every step of the way. Of course, Intel has been trying to cut nVidia out of the loop for years, but that's business.
I don't think MS will "get in there". To win this one, all they have to do is wait. Web designers all over the world will continue to curse IE for not supporting the best new features, but they still won't be able to add it to their web site because it won't work for 90% of the world.
Woops, my less-than symbol disappeared (even in plain text mode).
verbosity != self-documented
Ruby example:
do_something() if some_time 7.days.ago
To me, this line of Ruby code is perfectly clear and self-documented. It is also about as short as you could make it. If I had to write the same code in Java, it would be long enough that I would feel it required a comment.
I'll give you a few reasons:
1) Often the amount of time it takes you to code something is WAY more important than performance.
2) How clean and easy a program is to maintain is often even more important.
3) When performance is more important, you probably shouldn't be using a scripting language (or you should go with Lua).
4) JRuby and YARV (different versions of Ruby) are much faster, and the latest Ruby 1.9.1 is even faster than those.
5) If you can stand to extend Ruby in C or with COM objects (it's not that hard), Ruby 1.9.1 will do just about anything you want, and you can control performance by writing the slow parts in C. Your only real problem would be using bloated frameworks like Rails, which can't be sped up so easily.
6) If you can't stand to extend it in C or with COM objects, or if you need native threads, use JRuby. If a piece of Ruby code runs too slow in Ruby, convert it to Java. JRuby doesn't care whether an object is a Java object or a Ruby object.
"Why can't they make a language, or extend a language like Ruby, such that one can program it as a scripting language, but then add verbosity optionally (i.e. declaring the data types and their sizes, private / static etc. & whatever the hell makes a program light weight and fast) optionally?"
They already have that. It's called JRuby. Even better than what you suggested, JRuby supports native threads. Run it with an Apache+Tomcat server and watch it put normal Ruby-based web apps to shame in terms of scalability and ease of deployment (probably in terms of reliability, too).
I think 3 was "Try to make people believe Google is a monopoly so we can sue them and then monopolize another market." That would make 4 the rebranding effort, and I would change the "!!" at the end of 5 to "??".
Wavelength is definitely a full dimension, as it would be possible to read data at a near infinite number of specific wavelengths. Reading should be easy because you can just pass the light through a prism and check a specific angle of refraction to find the wavelength you need. Writing would be trickier, but it's an engineering problem that can be improved upon over time.
I'm not sure if I'd call polarization a dimension because there are only two angles you can work with, the angle you start with and the angle perpendicular to it. If you try to use a third angle, data from other two will mix with what you're trying to read. So I would say polarization adds another bit (allowing you to store twice as much), but not another full dimension (potentially allowing you to store orders of magnitude more).
It sounds like MS wants to charge us for every time we click on the UAC "Accept" button. Wow, the business reasons behind Vista's UAC feature finally make sense to me now. They should change that "ding" sound with a "cha-ching".
If Yahoo removed it, in theory he could post several more the next day under new accounts, and the problem only gets worse.
I'm not sure how the Yahoo posting works in this specific case, but if she can show somehow that it was his Yahoo account that posted it, she should be able to get the police to lock him up. There have been articles about people being arrested for posting photos/videos/private info of an ex without permission (it is against the law, after all). If he posted her photo, number, or address and caused her to get a lot of calls/visits about it, in theory they should be able to nail him with the same law, or something very similar.
This way no law suits are necessary and other assholes are discouraged from doing the same thing. I'm sure there are flaws in the plan, but at least this way, local officials handle local disputes, which is as it should be.
Ok, why the heck is that on newegg?
Maybe they can take on the Russian mafia. Then they can have your own computer send you their email scams, side-stepping the spam filters.
I'm not bashing you, but these two statements seem to go against each other:
"...but unfortunately the only option is an orange color (Covet). Thanks but no thanks, I'll take the industrial-looking graphite."
"A computer is a tool, not an accessory. When it comes to tools I try to be practical."
I think it would be better to say that in many circumstances, a laptop is an accessory. If nothing else, you may have to take it on business trips, where people will take in your laptop's appearance as part of your personal appearance, and appearance is very important in business dealings (no matter how much computer geeks like me wish it wasn't). I agree that orange is a horrible color for a laptop. And men probably care more about their laptop's appearance than women do, but they want it to look "fast", "cool", and "sleek", like they want their car to look. ;-)
Hmm, it would probably go like this:
Engineers: "It's the software!"
Developers: "It's the hardware!"
Both: "Why didn't the testers catch this?"
Testers: "That wasn't one of the use cases, so it's the designers' fault."
Designers: "The product wasn't meant to be used that way, so it's a documentation error if the tech writers didn't tell users not to do that."
Tech writers: "Don't look at me, I just write what you guys tell me to write."
Open Source Developer: Don't look at me. My users contribute design ideas, code, docs, testing, etc. So if there's a problem, it's their fault 4 times over for designing it, coding it, failing to test it, and failing to document it. ;-)
"First of all, you have to grease the local politicians for the sudden zoning problems that always come up. Then there's the kickbacks to the carpenters. And if you plan on using any cement in this building, I'm sure the teamsters would like to have a little chat with you, and that'll cost you. Don't forget a little something for the building inspectors. There's the long-term costs, such as waste disposal. I don't know if you're familiar with who runs that business, but I assure you it's not the boy scouts."
Rodney Dangerfield - Back to School
It's not supposed to perform faster on normal benchmarks. It's not like the CPU, memory, or hard drive runs at a different speed when you install Windows 7. Where Windows 7 is noticeably faster is in these areas:
1) Overall UI responsiveness.
2) When you start getting low on memory (7 still seems to be a memory hog, but it seems to handle it better than Vista).
3) It doesn't chew on your hard drive constantly like Vista did (Vista always did that for me, anyway). When I run a few apps simultaneously that need to use my hard drive, the whole Vista UI often hangs completely for 10-60 seconds. I haven't seen Windows 7 do that once yet.
Most benchmarks can't reliably test for things like this, so they don't bother to try. As a developer, I tend to run a lot of IO-heavy apps simultaneously, and having my entire OS hang when I do that is not acceptable because it interrupts my work-flow. So far the worst I've seen with 7 is that when I try to run two instances of a game I'm working on so I can test changes to the networking code, the game instances stutter pretty badly compared to when I run two instances on XP. My 2 CPU cores aren't maxed like they are in XP, so it's probably hitting a bottleneck in the graphics card/driver (which is BETA). Or it may have something to do with how Aero handles multiple instances of D3D apps in windowed mode. Either way, it's not something I can fault Windows 7 for at this time.
DISCLAIMER: I'm not saying Windows 7 is great. I haven't had enough time to get comfortable with it yet, and it still requires more memory than XP. But so far it sucks a lot less than Vista. Despite what this article claims, the differences are very noticeable if you're the kind of person who pushes their PC to its limits a lot. The first time Vista hung for a full 60 seconds with two idle CPU cores on a system with 4GB of memory, it made me want to kick someone at MS in the nuts as hard as I could (just to make sure they felt my pain). I haven't had I/O wait times like that since I had a Commodore-64 with a cassette tape drive (even my C64 floppy drive was faster than that). I really wish I could say I'm exaggerating, but I'm not. For everyone who has had no problems with Vista, I'm happy for you. You're probably not debugging apps in Visual Studio while running SQL Server AND multiple virtual PC's that also do some of those things at the same time. I can barely run Visual Studio by itself on Vista, but I have to do all that other stuff on XP every day I come into work. ;-)
I don't even think XP would be good on a netbook. I'd like to see a Tegra-based netbook with a slim version of BSD and an OpenGL ES windowing system written by nVidia on top of it. No X Windows overhead, just go straight to the hardware with a slim windowing library with OpenGL widgits. But that's just me. ;-)
I installed the 64-bit version Saturday night (MSDN download), and so far it is much better than Vista. As a developer who beats the hell out of his machines, I've had major performance problems with Vista no matter how much memory I give it. Vista chokes badly when I try to debug apps in Visual Studio on a 4GB machine with nothing else running where XP handles it fine with 2GB of memory and a bunch of other apps running at the same time (even with other virtual machines running).
I installed 64-bit Windows 7 on my home machine (dual-boot with 32-bit XP, just in case). It's a dual-core Athlon with 2GB of memory and a GeForce 8600, and while I haven't had time to beat it up badly yet, so far it seems as smooth as when I run XP on the same machine. Unlike Vista, it does not chew on my hard drive all the time and choke when one of my apps needs it. I just installed Visual Studio last night (which takes like 4 hours including the Service Pack install), so I haven't had time to play with Visual Studio on it yet, but it ran Crysis, Oblivion, and my own graphics demos (http://sponeil.net/) well enough that I'm hopeful about developing on it.
NOTE: I haven't disabled any of the default services 7 starts with. I wanted to see how it ran in its default configuration first. I'll try tweaking it for better performance after I've gotten comfortable with it. Also, for everyone saying it has problems with 1GB or less of RAM, what did you expect? I expected it to choke with 2GB, but so far I have been pleasantly surprised. If I buy Windows 7 when it comes out, I'll probably upgrade to 4GB to make sure I have some breathing room. I don't really like being forced to buy more for the OS, but sometimes you have to move on. (I'll probably keep XP on my old laptop because that's not worth upgrading.)
If you have 2GB of RAM or more and can easily set your system up to run dual-boot (i.e. have a spare hard drive, or can resize your primary partition to make room for a new one), I would recommend giving it a try. I would not recommend replacing or upgrading your only OS with it at the moment.
I think it's because hot chicks like the horny little devil mascot better than the penguin. If nothing else, hot chicks definitely look better when they dress up as a horny little devil than when they dress up as a penguin. ;-)
Woohoo! We're #1(%)! We're #1(%)!
For some reason, this makes me think of that old Cheers episode where the gang was down about coming in last at something. Then Frasier walked by looking pitiful because he wasn't getting any from his wife, and the gang started chanting.
"We're not Frasier! We're not Frasier!"
I agree. $250 sounds like a good price point for a Tegra-based netbook. Can't wait to start developing on one of those.
What about cheap power buttons? The companies who make these don't expect you to turn them on/off very often. I had to shut down a PowerEdge 750 the other day, and when I went to power it back on, the damn power button broke and fell inside the case. I had to stay an (extra) hour later to get the damn thing running again, and I'll bet that every time we have to shut it down, we'll have to open the case to turn it back on. I shut down an HP Proliant on the same night, and the 2003 Server startup hung on the infamous acpitabl.dat. That took another hour. I had run into that one about a year ago and had the fix saved in an email, but as that happened to be the mail server, it wasn't much help (it turned out to be an incompatibility with the KVM switch in that rack). I don't think their cost and ROI calculations include the pain and suffering of the IT staff. I'm not even in IT, but we no longer have a dedicated IT person, so various developers maintain the servers.
This article is a real let-down (pun intended). When I saw the title in my RSS feed, I was expecting to read about some novel idea to use balloons to steer a craft in the vacuum of space. Using things like balloons and parachutes to slow things down in the atmosphere is not a novel idea.
Doc Emmett Brown could've used something like this. Then he wouldn't have had to swindle the Libyans, and he wouldn't have gotten shot for it. Kinda makes you wonder if we can attach one of these to a capacitor that can hold 1.21 JigaWatts (or several times that for several lighting strikes).
... 4 out of 5 dentists recommend (pick your brand of toothpaste)
Actually, it's pretty easy for an organization like the NSA to detect which Skype users are logged into which IP without a powerful machine, which lets them listen in on just the Skype users they're interested in. Or they can just scan calls going to/from IP ranges they're interested in (i.e. from the US to North Korea). The hard part is getting all the Skype users to visit the malicious web site.
I'm sure someone will correct me if I'm wrong, but I thought Intel started this law suit because nVidia has plans to make their own x86 chip. Combined with products like the Tegra on the hand-held side, it looks like nVidia is trying to cut Intel out of the loop entirely, which may cut into Intel's sales even more heavily than AMD has managed so far. If that's the case, Intel will try to slow them down every step of the way. Of course, Intel has been trying to cut nVidia out of the loop for years, but that's business.
I don't think MS will "get in there". To win this one, all they have to do is wait. Web designers all over the world will continue to curse IE for not supporting the best new features, but they still won't be able to add it to their web site because it won't work for 90% of the world.