As a loyal Mac user and a regular/. reader, I have not found an anti-Mac bias here. While/. seems to be more concerned with OSS and Linux (somebody has to do it), coverage of Apple has been taken seriously.
I suspect you have your comment filter set to 3 or higher. There's a lot of anti-Mac statements, but they're always from trolls or people who obviously have no first-hand experience, and never get modded up.
What's the fun of being a Mac pundit unless you are biased?
Pudge, was that a shot, or just good-natured ribbing? Gruber writes the best-written (and yes, most opinionated) columns on Apple-related topics anywhere, on the web or in print. In other words, it's not just a diary with a few sentences about whatever came into his head on the way to work that day, nor is it hype-mongering drivel about Apple, but rather they are extremely well thought-out and tightly-written articles. Pudge, you're a smart guy (I've heard you speak and read your own blog/mail list posts), you don't need to be reminded that all news media contains bias. I'm glad that Gruber has the sack to acknowledge this, and write what he really thinks rather than tone down his writing to get syndicated on some mainstream Mac site.
I don't agree with everything Gruber says, but his feed is at the top of my NetNewswire client and I look forward to his content every week. I think a lot of people will take your comment out of context -- care to explain?
A lightning strike in my neighborhood a year ago somehow managed to damage the motherboard in my family's G4 tower. My father brought it to the Apple store and they estimated the repairs at being ~$800. Of course, it ended up being covered by AppleCare.
I'm willing to put down $200 under the assumption that at some point within three years I'll make it back in the form of covered repairs. I've recommended it to everyone whom I've switched to Macs, too.
Re:GNU-Darwin Background - Pudge is right
on
The GNU-Darwin World
·
· Score: 5, Funny
In that case one idea is that you wrap the code with the Adapter design pattern so that if the original author of the code does eventually provide a public interface, you can just adjust your adapter to use the public API and all of the places where you called the Adapter code will be updated too.
Putting a large block of code into a while or for loop.
Do what you should be doing in any other braces-based language like C or Java -- refactor a big chunk of ugly code like this into its own private function or method and put an invocation of this method in the while loop instead. If you need to act on local variables, pass them into the function/method as parameters.
TABS and order of whitespace
When would you ever use both tabs and spaces in your whitespace in any other source code file? Some people standardize on tabs of a certain width (2, 4, or 8 chars), others such as myself standardize on spaces, but I never mix them up simply because I can't "see" the difference. All of my editors and IDEs are configured for this. (The official recommendation in the Python style guide is to use 4-space indentation, but this is not enforced.)
Also, there is an option that will generate warnings if you run the program using differing whitespace characters to let you know you've been bad.
For decently-complex programs there might be so many nesting levels that the indented code is spaced so far inwards that one needs ridiculously-wide displays for sanity.
Again, if you find this to be the case, then you are not refactoring appropriately. Read Fowler's Refactoring and learn how to break up your code into more-manageable chunks (plus other great tips).
In general I find Ruby's way easier to read than Python's, especially in the case of weenies who haven't yet learnt to indent properly and have tabs/spaces randomly mixed in with their indents (a practice that seems so common as to outnumber the more traditional spaces OR tabs methods many times over).
Interesting... seeing as how Python doesn't let weenies indent improperly, and you can run Python scripts with a flag (-O) that gives warnings if tabs and spaces are intermixed in the whitespace... you would think that Python's way would be easier.
After describing two ways that one can (somewhat inelegantly) bridge PHP with Java using current technologies, the author of this article then mentions Erik Hatcher's weblog lamenting something to the effect of 'it would be nice if this were not limited to serverside app development'. I find this interesting, because there is a great scripting language (Python) which already has a Java-compatible implementation (Jython) -- so compatible that the language is actually written in Java and runs in a JVM! Yes this means you can access just about any Java class from a Python script, and not only that, the final Python scripts are Java executables.
I haven't read your book straight through, but I did spend quite a bit of time in the store skimming and debating on whether to get it, and have recommended it to others. I agree wholeheartedly that it would have been perfect for this CD Bookshelf -- as the reviewer said, a Perl title would diversify it a bit from the PHP/JavaScript-specific stuff, plus your book seemed to deal more with scripting the tedious day-to-day tasks in web development rather than just how to generate a database-driven web application (which is pretty much all I've ever used PHP for). The only reason I didn't purchase it was that I felt I already knew a lot of the content it covers.
I'm a pretty fanatical Python programmer these days, so I don't use Perl as much anymore, but this is easily one of the best references for newbies getting into web development who don't have any pre-formed language bias. (The closest Python equivalent is Steve Holden's "Python Web Programming".)
Oogg head hurt more when implementation details and "private" methods refactored between v.1.0 and v.2.0, and has to re-code application to use public API after all, as Oogg should have done in first place.
Nothing forcing Oogg to use private/protected in Oogg's own code.
Re:calling clueful car manufacturers
on
Pods Unite
·
· Score: 4, Insightful
There are also the FM senders that you can attach to the iPod, which then are received by the car's FM stereo -- a wireless connection -- but I have heard mixed reviews of the sound quality.
Speaking of sound quality, the song that plays in this commercial is horrible.
The reviewer mentions this in the review. The actual copyright date is 2001. You can't fault this book for not having JSF coverage. Also, what good is JSF coverage when there's no production-ready JSF implementation (not even the RI) available yet? If I'm going to buy a book today on JSP and servlet development, I'd rather have useful information about what is available now than projections of how things are supposed to be in a few months. Especially since the cool tips and techniques ("design patterns", "best practices", whatever) for using a new technology won't even be documented until the technology is available for widespread use.
Its greatest strength is that it is incredibly quick to write, ESR wasn't exaggerating when he said that within a few hours of first learning the language he was writing fully working production-ready code. It is that easy to use. Also, Python tends to be easy to read, but really sloppy coders can still write crap Python code.
Its greatest weakness is that it is incredibly quick to write. It is really really easy to code yourself into a hole without even realizing it. If you are writing something more than just a one-off or casual script, take a step back and give the program the same level of design consideration you would use with C or Java, otherwise you get too caught up in writing working, productive code and suddenly you realize that you're in serious need of some refactoring.
Oh, I agree completely, I just thought the original speculation was about where it all stemmed from.
try reading Moby Dick in Futura
Touche.
Re:What was the default font before?
on
Safari 1.0 Released
·
· Score: 4, Informative
You guys are still all wrong about that. The serifs were used in print in an attempt to replicate the carved stone lettering that adorned buildings and stone-cut signs. And the reason why those serifs appeared (on stone-cut signs) was because the stone was often very brittle and would crumble at the corners of the letters. So the stonecutters adopted a style that would still look good while accounting for this inadvertent crumbling.
My dad told me this when I was a kid. He got a master's degree in print technology from RIT -- I believe him.
Hear hear. Someone on the PostgreSQL mailing list suggested that I investigate DbUnit, a utility for use with JUnit that restores a database to a known state after each unit test for situations in which mock objects are too inconvenient. It looked perfect... until I tried it with my database.
My schema's referential integrity constraints required the re-import of data to be done in a certain order. DbUnit officially only supports Oracle and Sybase (I think), and I suppose this wasn't a problem for those DBs... but I thought I had hit a wall that I could not cross with PostgreSQL. A simple look into the code showed that the change wouldn't be very hard to make. A few hours and a patch later, and DbUnit had new functionality that it did not have before. The point is, not only was I able to use the fact that the utility was open source to make it work better for me, but the change I made went into CVS and will hopefully be of use to others. It is not a myth.
The article states that the buttons are not only larger than existing Treo buttons, but they sport a new "domed" shape that makes them even easier to hit without accidentally hitting their neighbors. Also, I have one of the existing Treos and they are not hard to type in. And I have such thick fingertips that I can't even play guitar (I have to play bass because the strings are further apart).
/. isn't condoning it or condemning it in the article, just making people aware of this.
In general I agree with your post wrt free speech, but the above is just not reality -- by posting it (esp. on the front page, which is how I got here), Slashdot is implicitly condoning this.
...I only buy a system when I can get Zelda for it for less than retail. For some reason, the Funco's near where I live don't have any used copies yet.
I guess that means that it's a pretty good game. Maybe you might want to think about paying for it?
As a loyal Mac user and a regular /. reader, I have not found an anti-Mac bias here. While /. seems to be more concerned with OSS and Linux (somebody has to do it), coverage of Apple has been taken seriously.
I suspect you have your comment filter set to 3 or higher. There's a lot of anti-Mac statements, but they're always from trolls or people who obviously have no first-hand experience, and never get modded up.
What's the fun of being a Mac pundit unless you are biased?
Pudge, was that a shot, or just good-natured ribbing? Gruber writes the best-written (and yes, most opinionated) columns on Apple-related topics anywhere, on the web or in print. In other words, it's not just a diary with a few sentences about whatever came into his head on the way to work that day, nor is it hype-mongering drivel about Apple, but rather they are extremely well thought-out and tightly-written articles. Pudge, you're a smart guy (I've heard you speak and read your own blog/mail list posts), you don't need to be reminded that all news media contains bias. I'm glad that Gruber has the sack to acknowledge this, and write what he really thinks rather than tone down his writing to get syndicated on some mainstream Mac site.
I don't agree with everything Gruber says, but his feed is at the top of my NetNewswire client and I look forward to his content every week. I think a lot of people will take your comment out of context -- care to explain?
A lightning strike in my neighborhood a year ago somehow managed to damage the motherboard in my family's G4 tower. My father brought it to the Apple store and they estimated the repairs at being ~$800. Of course, it ended up being covered by AppleCare.
I'm willing to put down $200 under the assumption that at some point within three years I'll make it back in the form of covered repairs. I've recommended it to everyone whom I've switched to Macs, too.
Guess that makes them eligible for the Darwin awards.
In that case one idea is that you wrap the code with the Adapter design pattern so that if the original author of the code does eventually provide a public interface, you can just adjust your adapter to use the public API and all of the places where you called the Adapter code will be updated too.
And while you are at it, if you like semicolons, you can always add #; to the end of statements.
Actually, Python allows the user of semi-colons at the end of statements in most cases. Think of it more as if Python doesn't enforce them.
Putting a large block of code into a while or for loop.
Do what you should be doing in any other braces-based language like C or Java -- refactor a big chunk of ugly code like this into its own private function or method and put an invocation of this method in the while loop instead. If you need to act on local variables, pass them into the function/method as parameters.
TABS and order of whitespace
When would you ever use both tabs and spaces in your whitespace in any other source code file? Some people standardize on tabs of a certain width (2, 4, or 8 chars), others such as myself standardize on spaces, but I never mix them up simply because I can't "see" the difference. All of my editors and IDEs are configured for this. (The official recommendation in the Python style guide is to use 4-space indentation, but this is not enforced.)
Also, there is an option that will generate warnings if you run the program using differing whitespace characters to let you know you've been bad.
For decently-complex programs there might be so many nesting levels that the indented code is spaced so far inwards that one needs ridiculously-wide displays for sanity.
Again, if you find this to be the case, then you are not refactoring appropriately. Read Fowler's Refactoring and learn how to break up your code into more-manageable chunks (plus other great tips).
In general I find Ruby's way easier to read than Python's, especially in the case of weenies who haven't yet learnt to indent properly and have tabs/spaces randomly mixed in with their indents (a practice that seems so common as to outnumber the more traditional spaces OR tabs methods many times over).
Interesting... seeing as how Python doesn't let weenies indent improperly, and you can run Python scripts with a flag (-O) that gives warnings if tabs and spaces are intermixed in the whitespace... you would think that Python's way would be easier.
Oogg have point. Make profkyne laugh.
After describing two ways that one can (somewhat inelegantly) bridge PHP with Java using current technologies, the author of this article then mentions Erik Hatcher's weblog lamenting something to the effect of 'it would be nice if this were not limited to serverside app development'. I find this interesting, because there is a great scripting language (Python) which already has a Java-compatible implementation (Jython) -- so compatible that the language is actually written in Java and runs in a JVM! Yes this means you can access just about any Java class from a Python script, and not only that, the final Python scripts are Java executables.
I haven't read your book straight through, but I did spend quite a bit of time in the store skimming and debating on whether to get it, and have recommended it to others. I agree wholeheartedly that it would have been perfect for this CD Bookshelf -- as the reviewer said, a Perl title would diversify it a bit from the PHP/JavaScript-specific stuff, plus your book seemed to deal more with scripting the tedious day-to-day tasks in web development rather than just how to generate a database-driven web application (which is pretty much all I've ever used PHP for). The only reason I didn't purchase it was that I felt I already knew a lot of the content it covers.
I'm a pretty fanatical Python programmer these days, so I don't use Perl as much anymore, but this is easily one of the best references for newbies getting into web development who don't have any pre-formed language bias. (The closest Python equivalent is Steve Holden's "Python Web Programming".)
Oogg head hurt more when implementation details and "private" methods refactored between v.1.0 and v.2.0, and has to re-code application to use public API after all, as Oogg should have done in first place.
Nothing forcing Oogg to use private/protected in Oogg's own code.
There are also the FM senders that you can attach to the iPod, which then are received by the car's FM stereo -- a wireless connection -- but I have heard mixed reviews of the sound quality.
Speaking of sound quality, the song that plays in this commercial is horrible.
If someone did this every time a Dunkin Donuts opened up in Massachusetts, they'd be a bona fide homeless person.
This book looks seriously out of date.
The reviewer mentions this in the review. The actual copyright date is 2001. You can't fault this book for not having JSF coverage. Also, what good is JSF coverage when there's no production-ready JSF implementation (not even the RI) available yet? If I'm going to buy a book today on JSP and servlet development, I'd rather have useful information about what is available now than projections of how things are supposed to be in a few months. Especially since the cool tips and techniques ("design patterns", "best practices", whatever) for using a new technology won't even be documented until the technology is available for widespread use.
What are its strengths and its weaknesses?
Its greatest strength is that it is incredibly quick to write, ESR wasn't exaggerating when he said that within a few hours of first learning the language he was writing fully working production-ready code. It is that easy to use. Also, Python tends to be easy to read, but really sloppy coders can still write crap Python code.
Its greatest weakness is that it is incredibly quick to write. It is really really easy to code yourself into a hole without even realizing it. If you are writing something more than just a one-off or casual script, take a step back and give the program the same level of design consideration you would use with C or Java, otherwise you get too caught up in writing working, productive code and suddenly you realize that you're in serious need of some refactoring.
It's all because of readability.
Oh, I agree completely, I just thought the original speculation was about where it all stemmed from.
try reading Moby Dick in Futura
Touche.
You guys are still all wrong about that. The serifs were used in print in an attempt to replicate the carved stone lettering that adorned buildings and stone-cut signs. And the reason why those serifs appeared (on stone-cut signs) was because the stone was often very brittle and would crumble at the corners of the letters. So the stonecutters adopted a style that would still look good while accounting for this inadvertent crumbling.
My dad told me this when I was a kid. He got a master's degree in print technology from RIT -- I believe him.
Hear hear. Someone on the PostgreSQL mailing list suggested that I investigate DbUnit, a utility for use with JUnit that restores a database to a known state after each unit test for situations in which mock objects are too inconvenient. It looked perfect... until I tried it with my database.
My schema's referential integrity constraints required the re-import of data to be done in a certain order. DbUnit officially only supports Oracle and Sybase (I think), and I suppose this wasn't a problem for those DBs... but I thought I had hit a wall that I could not cross with PostgreSQL. A simple look into the code showed that the change wouldn't be very hard to make. A few hours and a patch later, and DbUnit had new functionality that it did not have before. The point is, not only was I able to use the fact that the utility was open source to make it work better for me, but the change I made went into CVS and will hopefully be of use to others. It is not a myth.
All of the existing Treos have that cover as well. This is the first Treo that will not use it.
The article states that the buttons are not only larger than existing Treo buttons, but they sport a new "domed" shape that makes them even easier to hit without accidentally hitting their neighbors. Also, I have one of the existing Treos and they are not hard to type in. And I have such thick fingertips that I can't even play guitar (I have to play bass because the strings are further apart).
And soon we J2EE developers will be doing similar with JavaServerFaces. It seems like a much nicer level to work in.
In general I agree with your post wrt free speech, but the above is just not reality -- by posting it (esp. on the front page, which is how I got here), Slashdot is implicitly condoning this.
I guess that means that it's a pretty good game. Maybe you might want to think about paying for it?
You've been playing too much SimCity.