Your legs and feet are not designed for you land on your heels ( but shoe companys and podaitrists would like you to think so ).
Yeah, because I know that my wife spent four years in med school and several more in residency without ever managing to learn the physiology of the part of the body she specializes in. We also get a fat monthly check from the American Heel-Strikers, Inc., for her vocal support of not using your toes.
Signed,
The husband of a podiatrist who knows more about feet than you do.
How can SCO hope to win if they have South Dakota State University nipping at their heels? IBM, Novell - mere tots compared to the mighty SDSU... something.
Classic example: "Can you figure out how to tell if this program is going to crash?" Sure! As long as I can publish my solution to The Halting Problem without your name on it.
When I was in college, I wanted to install Red Hat (5.x? it's been a while) but didn't have the bandwidth to download it myself. So, I went to the campus library and discovered, happily, that they had a copy in the software section.
When I tried to check it out, I was told that you couldn't actually check out software, but you could run it on "that one over there" (librarian points at a Gateway P5/60). "I'm not sure you understand," I said, "this is something you'd use instead of Windows, and you have to install it on your own computer to really use it." She looked at me in horror: "we do not condone piracy at this school!"
A second trip a few days later got a slightly better reaction: "Well, we don't have a system for checking out software CDs, but you can copy it to a floppy and take it home if you want. We even sell them if you don't have one with you." I replied that I was going to need, oh, about 500 of them, and could I put the cost on my student loan account?
It's nice to see that at least some people in some libraries are a little more knowledgeable now.
The class probably has few direct applications to coding
Note that "few" != "no". There were two times when it was exactly applicable:
I was taking discrete math concurrently with digital logic design. Ninja-mad Karnaugh mapping skills came in pretty handy when we (hi Alex!) were given a box of NAND gates and an assignment to built a simple arithmetic logic unit with as few components as possible. Some people in the lab were bartering with neighbors to get more gates, and some of us where cheerfully optimizing gates out of the circuit by proving that whole blocks of paths were redundant.
In an processor design course, we were given a project to implement MMX-type instructions in MIPS assembler. Most of the class was implementing the design as a set of loops. Some of the class was unrolling those loops. Two of us were looking at the bitwise transformation that occurs when you add two parallel sets of numbers. The first group managed to get their solution down to 40 or so cycles. I think that some of the second group trimmed that to around 20. My friend and I (hi Aaron!) got that down to 7, and one of those was a one-time register initialization that could be skipped after the first iteration of a tight loop. As a bonus, we could change the algorithm to add 4 sets of 8-bit numbers, 2 sets of 16-bit numbers, or 3 sets of 7-bit numbers plus a 15 by changing the value in that register.
Any date representation that picks one calendar system as canonical, Gregorian included, is not "culture neutral". Someone's bound to be upset that ISO dates don't look like Prickle-Prickle, Discord 51, Year of Our Lady of Discord 3170.
You're answering a question I never asked - re-read my post. I was saying that with CSS, even if two entities have common attributes (like color="red"), there is a clear distinction between them, and that no such distinction exists without CSS.
Now all you hear is "ooh tables are bad, all tables are bad"
All tables are not bad
First, I agree with your main point. I use a lot of tables on my website to display, well, tabular data. However, I haven't heard anyone say that using tables are bad. The usual assertion is that using tables for layout is bad. There's a subtle but important difference.
Re:CSS, oh how I love thee...
on
Core CSS (2nd ed.)
·
· Score: 2, Insightful
With CSS, the browser gets much more control over the final presentation by allowing the user to load locally-defined stylesheets that override remote settings.
Our website is actually very, very simple by most design standards. I built it from the ground up to be extremely lightweight and "clean" so that our customers, who spend their days filling in forms and submitting them, aren't distracted by anything that wasn't explicitly designed to make their work more efficient.
The huge win for us wasn't a gee-whiz-that's-amazing appearance; it was a well-structured architecture that we can build on and alter without tracking hundreds of embedded tags throughout the site. We don't do anything in CSS that couldn't be done directly in the HTML. We just do it far more efficiently than we could've otherwise.
where the first two folder are for mail that Spamassassin classifies as "maybe spam" versus "is certainly spam", and the second two are where you put email that's been misclassified and that you want to use to train the filter.
Re:CSS, oh how I love thee...
on
Core CSS (2nd ed.)
·
· Score: 5, Insightful
No offense, but never say never. Coding in part is about adapting and simplifying and sometimes, sometimes, it is easier and better to hard code something than to make it elegant.
This is probably the one time where I am perfectly comfortable saying "never". In my years programming, not one have I ever seen a situation where
my $grav = 9.8; ... my $y1 = 23 * $grav; my $y2 = 5 * $grav;
wasn't much more understandable and maintainable than
my $y1 = 23 * 9.8; my $y2 = 49;
Using constants (or CSS) gives meaning to things that don't have obvious relationships. Seeing
says nothing more than that the designer likes "red". "Hard" and "easy" are abstract concepts, until you're looking at your own code a year later and don't understand what you meant - then they're quite concrete.
Re:CSS, oh how I love thee...
on
Core CSS (2nd ed.)
·
· Score: 2, Insightful
No, that's not very efficient at all, especially since it discards all semantic information. In other words, if you've chosen the same particular attribute for two unrelated entities, and you later want to change that property on one of the entities to something else, then you're going to have a heck of a time distinguishing between them.
For example, suppose that you use red text to highlight error conditions in one part of the site, and red text to indicate mandatory form items on another part of the site. Later, you decide to change required fields to blue. With CSS, you edit the style for "td.mandatory", and every occurence of <td class="mandatory"> is instantly affected. Without CSS, you search for every match of "red" and decide whether or not to alter each one. Strangely enough, most employers aren't too thrilled with a 30-second change takes 3 hours.
Re:CSS, oh how I love thee...
on
Core CSS (2nd ed.)
·
· Score: 2, Informative
I completely disagree. It's never easier to hardcode constants right into the middle of a block of code than to pull them into their own section, and that holds true for HTML, too.
At some point, you will want to change that to <font color="blue"> (also note that quotes are mandatory in all recent versions of HTML); when you do, your definition of "easier" will change to be more like mine.
CSS, oh how I love thee...
on
Core CSS (2nd ed.)
·
· Score: 5, Interesting
I was hired at my new job in part to completely re-write the website that our customers use to access information in our database. Since I was starting over with a blank slate, I got to pick every detail of the platform, so we jumped in with FreeBSD, Zope, Python, and XHTML/CSS.
I truly don't understand why anyone is still using <font> tags. Instead of making the site design more difficult, strictly seperating appearance from content has made maintenance far easier. I'm still slightly amazed that I can completely re-do the appearance of my employer's website by editing a single file, and when my boss decided that he hated the way links looked, he was thrilled that it took me about 30 seconds to globally change them.
Seriously, this is the way web design was meant to be.
KMail pissed me off so much recently that I wrote a little comparison of common Unix email clients. What irritates me is that KMail is so close to being my ideal GUI client, but they completely dropped the ball on some critical features. Namely:
I want a button to hide read messages. It seems like every other client on the planet does this, but not KMail. I read a lot of mailing lists, and I don't want to see the 10,000 messages in debian-user from 6 months ago.
IMAP filtering. Here, let me say that again: IMAP filtering. The Bayesian trainer on my email server works by reading messages in a particular folder in each user's IMAP setup and passing each of them into Spamassassin's trainer. Every single client I've used makes it easy to set filters so that I can mark a lot of messages in my inbox as spam, run one filter, and have all of them moved into INBOX.spam.train.spam - each, that is, but KMail. In a corporate environment where the admins want us to leave mail on the server for backup purposes, this is a deal-breaker. Sure, I can manually move messages around by clicking-and-dragging, but that just ain't gonna happen.
If KMail otherwise sucked, I wouldn't care. However, it's obvious that they put a lot of time into making it a really nice client, except for the absolute critical flaws that make it worthless to a lot of people. I'll keep trying it each time a new version comes out; if they can fix these problems, I'll switch in a heartbeat. Until then, I'm staying with Emacs/Gnus.
Re:The amount doesn't matters, it's the stickinnes
on
Tuning Linux VM swapping
·
· Score: 3, Interesting
I have a laptop with 192Mb of ram, I always hate when 2/3 of the ram is "free" while it takes 10 seconds for the kmail window to move to the front. Even if the machine has been idle for hours.
I know what you mean, but in this case, it seems like your machine is making a reasonable guess: you haven't used Kmail in hours, so the odds of you wanting to resume using it at any particular instant is pretty low. On the other hand, reading from a drive is quite a bit faster than writing, so the penalty for incorrectly swapping out old pages when the system is idle is significantly less than incorrectly not swapping out old pages before users launch giant processes that want to allocate a lot of RAM very quickly.
At least, that's the rationale I've read behind OS X's strategy of swapping things out long before all physical memory is used (and of keeping a pool of zeroed memory pages ready to fulfill most requests).
That's what FreeBSD's been doing for years, and for a long time kernel hackers spoke in awe of the much-vaunted FreeBSD VMM. Now that Linux has implemented a similar strategy, everyone's freaking out like it's some new ego trip that noone's ever tried before.
The "new" system is what other OSes have been doing for years, and it makes sense. Sometimes it's better to learn why such big changes are made than to gripe on Slashdot that things aren't the way they used to be.
We've turned swapping off on our servers because we were sick of seeing almost a GB of cache/buffer memory, while it was swapping 500MB of shit to disk.
Your server apparently believed that it was accessing that cache and buffer more often than that half gig of random pages. Do you have real reason to believe that it was wrong, or does that just "seem" bad?
In other words, do you have actual numbers to demonstrate that your kernel was making poor decisions, or are you only fairly sure that it was?
A global computer network, usable by a large portion of the world's population, that will allow people to redistribute copyrighted material and enable terrorists to form their plans?
This will never happen period.
Sometimes things sneak up on governments and inertial corporations that they just can't predict the ramifications of ahead of time, and that are too big to shut down once everyone gets their hands on them. This may very well be one of them.
Personally, I see no problem with one day having high level application programmers who know nothing of hex, memory management or physical hardware but rather algorithms, computability and productions, etc. Of course, there will always be a place for the "computer programmer", but also a place for the "analytical abstractionist engineer".
A lot of us already work in that space. I do happen to know my way around bare metal, but I haven't done any low-level coding in a long, long time. I'm currently writing a lot of Python that runs within a Zope server, and none (repeat: none) of my programming involves hex, memory management, or physical hardware. Instead, whenever we find a bottleneck, I analyze the high-level algorithms to find non-obvious design characteristics that can be remodeled.
I have tens of thousands of Python LOC (would be hundreds of thousands of C LOC) online and used by customers every day, and I have no idea what the memory profile of any of it would look like. I know that the system never touches swap, and that the whole site is robust and responsive, but beyond that, I simply don't care anymore.
I've put in my time at the hardware level. However, that's not what I want to be doing for the rest of my life, and with the current crop of programming languages and design environments, I don't have to.
That apparently only works for OS5 units - I've tried several times on my m130 with OS4 but it always just ignores the new files.
Besides, I'd still be in the same boat as if I install and go with TealScript - it's a temporary solution with no assurance that it will continue to work when I next have to upgrade.
I agree 100% - Grafitti 2 is far worse than the original. I've seen ill-informed discussion on Palm forums claiming it's an improvement and more "up-to-date", whatever that means.
My favorite is that it "has an easier learning curve". Great. So it's easier for the first two hours, but slower and clumsier for the rest of the time you have the unit.
Note: I've also been told many times that I'm hallucinating, and that my m130 really has Grafitti. Never mind that I have libraries named "Graffiti 2 Extension" and "Grafitti 2 Prefs" in ROM (and the "copy libraries from another unit" trick doesn't work for me).
But Grafitti 1 was so elegant: writing a k, for example was much easier.
Oops, I'd forgotten about that one. That's another keystroke that I can't write to save my life. I wish my brain had an "unlearn Grafitti" button so that I could get a fresh start.
Yeah, because I know that my wife spent four years in med school and several more in residency without ever managing to learn the physiology of the part of the body she specializes in. We also get a fat monthly check from the American Heel-Strikers, Inc., for her vocal support of not using your toes.
Signed,
The husband of a podiatrist who knows more about feet than you do.
How can SCO hope to win if they have South Dakota State University nipping at their heels? IBM, Novell - mere tots compared to the mighty SDSU... something.
Classic example: "Can you figure out how to tell if this program is going to crash?" Sure! As long as I can publish my solution to The Halting Problem without your name on it.
When I tried to check it out, I was told that you couldn't actually check out software, but you could run it on "that one over there" (librarian points at a Gateway P5/60). "I'm not sure you understand," I said, "this is something you'd use instead of Windows, and you have to install it on your own computer to really use it." She looked at me in horror: "we do not condone piracy at this school!"
A second trip a few days later got a slightly better reaction: "Well, we don't have a system for checking out software CDs, but you can copy it to a floppy and take it home if you want. We even sell them if you don't have one with you." I replied that I was going to need, oh, about 500 of them, and could I put the cost on my student loan account?
It's nice to see that at least some people in some libraries are a little more knowledgeable now.
Note that "few" != "no". There were two times when it was exactly applicable:
I was taking discrete math concurrently with digital logic design. Ninja-mad Karnaugh mapping skills came in pretty handy when we (hi Alex!) were given a box of NAND gates and an assignment to built a simple arithmetic logic unit with as few components as possible. Some people in the lab were bartering with neighbors to get more gates, and some of us where cheerfully optimizing gates out of the circuit by proving that whole blocks of paths were redundant.
In an processor design course, we were given a project to implement MMX-type instructions in MIPS assembler. Most of the class was implementing the design as a set of loops. Some of the class was unrolling those loops. Two of us were looking at the bitwise transformation that occurs when you add two parallel sets of numbers. The first group managed to get their solution down to 40 or so cycles. I think that some of the second group trimmed that to around 20. My friend and I (hi Aaron!) got that down to 7, and one of those was a one-time register initialization that could be skipped after the first iteration of a tight loop. As a bonus, we could change the algorithm to add 4 sets of 8-bit numbers, 2 sets of 16-bit numbers, or 3 sets of 7-bit numbers plus a 15 by changing the value in that register.
That was a good semester.
Circa 1999.
Any date representation that picks one calendar system as canonical, Gregorian included, is not "culture neutral". Someone's bound to be upset that ISO dates don't look like Prickle-Prickle, Discord 51, Year of Our Lady of Discord 3170.
I think you fnord meant "locale neutral".
You're answering a question I never asked - re-read my post. I was saying that with CSS, even if two entities have common attributes (like color="red"), there is a clear distinction between them, and that no such distinction exists without CSS.
All tables are not bad
First, I agree with your main point. I use a lot of tables on my website to display, well, tabular data. However, I haven't heard anyone say that using tables are bad. The usual assertion is that using tables for layout is bad. There's a subtle but important difference.
Our website is actually very, very simple by most design standards. I built it from the ground up to be extremely lightweight and "clean" so that our customers, who spend their days filling in forms and submitting them, aren't distracted by anything that wasn't explicitly designed to make their work more efficient.
The huge win for us wasn't a gee-whiz-that's-amazing appearance; it was a well-structured architecture that we can build on and alter without tracking hundreds of embedded tags throughout the site. We don't do anything in CSS that couldn't be done directly in the HTML. We just do it far more efficiently than we could've otherwise.
INBOX.spam.possible
INBOX.spam.probable
INBOX.spam.train.ham
INBOX.spam.train.spam
where the first two folder are for mail that Spamassassin classifies as "maybe spam" versus "is certainly spam", and the second two are where you put email that's been misclassified and that you want to use to train the filter.
This is probably the one time where I am perfectly comfortable saying "never". In my years programming, not one have I ever seen a situation where
wasn't much more understandable and maintainable thanUsing constants (or CSS) gives meaning to things that don't have obvious relationships. Seeingindicates that those two are somehow related. On the other hand,says nothing more than that the designer likes "red". "Hard" and "easy" are abstract concepts, until you're looking at your own code a year later and don't understand what you meant - then they're quite concrete.For example, suppose that you use red text to highlight error conditions in one part of the site, and red text to indicate mandatory form items on another part of the site. Later, you decide to change required fields to blue. With CSS, you edit the style for "td.mandatory", and every occurence of <td class="mandatory"> is instantly affected. Without CSS, you search for every match of "red" and decide whether or not to alter each one. Strangely enough, most employers aren't too thrilled with a 30-second change takes 3 hours.
At some point, you will want to change that to <font color="blue"> (also note that quotes are mandatory in all recent versions of HTML); when you do, your definition of "easier" will change to be more like mine.
I truly don't understand why anyone is still using <font> tags. Instead of making the site design more difficult, strictly seperating appearance from content has made maintenance far easier. I'm still slightly amazed that I can completely re-do the appearance of my employer's website by editing a single file, and when my boss decided that he hated the way links looked, he was thrilled that it took me about 30 seconds to globally change them.
Seriously, this is the way web design was meant to be.
If KMail otherwise sucked, I wouldn't care. However, it's obvious that they put a lot of time into making it a really nice client, except for the absolute critical flaws that make it worthless to a lot of people. I'll keep trying it each time a new version comes out; if they can fix these problems, I'll switch in a heartbeat. Until then, I'm staying with Emacs/Gnus.
I know what you mean, but in this case, it seems like your machine is making a reasonable guess: you haven't used Kmail in hours, so the odds of you wanting to resume using it at any particular instant is pretty low. On the other hand, reading from a drive is quite a bit faster than writing, so the penalty for incorrectly swapping out old pages when the system is idle is significantly less than incorrectly not swapping out old pages before users launch giant processes that want to allocate a lot of RAM very quickly.
That's what FreeBSD's been doing for years, and for a long time kernel hackers spoke in awe of the much-vaunted FreeBSD VMM. Now that Linux has implemented a similar strategy, everyone's freaking out like it's some new ego trip that noone's ever tried before.
The "new" system is what other OSes have been doing for years, and it makes sense. Sometimes it's better to learn why such big changes are made than to gripe on Slashdot that things aren't the way they used to be.
Your server apparently believed that it was accessing that cache and buffer more often than that half gig of random pages. Do you have real reason to believe that it was wrong, or does that just "seem" bad?
In other words, do you have actual numbers to demonstrate that your kernel was making poor decisions, or are you only fairly sure that it was?
Nope, I was legitimately saddled with Jot - it wasn't just my imagination. :-)
This will never happen period.
Sometimes things sneak up on governments and inertial corporations that they just can't predict the ramifications of ahead of time, and that are too big to shut down once everyone gets their hands on them. This may very well be one of them.
Most schools will continue to let you "work" there as long as you keep paying tuition.
On the other hand, I can't think of a single programmer I respect that doesn't understand "different tools for different jobs".
A lot of us already work in that space. I do happen to know my way around bare metal, but I haven't done any low-level coding in a long, long time. I'm currently writing a lot of Python that runs within a Zope server, and none (repeat: none) of my programming involves hex, memory management, or physical hardware. Instead, whenever we find a bottleneck, I analyze the high-level algorithms to find non-obvious design characteristics that can be remodeled.
I have tens of thousands of Python LOC (would be hundreds of thousands of C LOC) online and used by customers every day, and I have no idea what the memory profile of any of it would look like. I know that the system never touches swap, and that the whole site is robust and responsive, but beyond that, I simply don't care anymore.
I've put in my time at the hardware level. However, that's not what I want to be doing for the rest of my life, and with the current crop of programming languages and design environments, I don't have to.
Besides, I'd still be in the same boat as if I install and go with TealScript - it's a temporary solution with no assurance that it will continue to work when I next have to upgrade.
My favorite is that it "has an easier learning curve". Great. So it's easier for the first two hours, but slower and clumsier for the rest of the time you have the unit.
Note: I've also been told many times that I'm hallucinating, and that my m130 really has Grafitti. Never mind that I have libraries named "Graffiti 2 Extension" and "Grafitti 2 Prefs" in ROM (and the "copy libraries from another unit" trick doesn't work for me).
But Grafitti 1 was so elegant: writing a k, for example was much easier.
Oops, I'd forgotten about that one. That's another keystroke that I can't write to save my life. I wish my brain had an "unlearn Grafitti" button so that I could get a fresh start.