Become a fan of Slashdot on Facebook


Forgot your password?

Journal Journal: It's just a damn paradigm!

Okay, let me preface this by saying that I am language agnostic, as few of my fellows seem to be anymore. I know this was the reason they used Scheme at my university for the first programming language, and why 90% of the CS classes are about theory, not languages as units (as opposed to language theory, which is another whole ball of wax).

I guess I missed out on Wednesday when I was catching up on some sleep. Seriously people, do you actively work with the development team of the language? Are you in charge of design decisions? Does Zend personally ask you for language direction? Or more abstractly, has Linus ever called you up and asked what you wanted to do with the kernel?

I thought not.

Anyway, just because a language supports the OO paradigm does not mean you have to use it. I've seen hundreds of programs that force OO-designed languages into the old procedural model. Hell, as embarrased as I am to admit it, my own father does it all the time when working with J2EE. His Java code comes out looking like his COBOL.

Seriously though, if you don't like the effing paradigm, don't use it. Honestly, the whole idea behind OO was to make good modularity easy to acheive. And PHP5 does a reasonably good job at it (better than the misbegotten C++). Those over-reacting should be ecstatic at the opportunity to potentially make their PHP code even better.

It seems like fewer and fewer people are coming out of school with the tools necessary to learn a new language. And to me this sounds like people being frightened because their precious "training" is going to go down the tubes. Their fault for being inflexible. For cripse sake, I learned FORTRAN-70 in about two weeks (needed to check the other side of some fun SQL-code interlocking with som fluid dynamics code); I learned Smalltalk in about a week; I picked up C# and Slate in the same 3 week span. And don't think I'm not proficient in any of them: one of the things I got out of all my CS classes is how to transcend languages and paradigms and be proficient in all combinations.

Relax, folks, and take the change. If it scares you that much ... uh, well, you better leave Perl alone (it's doing OO now) ... uh, well get used to OO programming, it's a useful paradigm and a lot of people are picking it up, otherwise, quit now and find something else to do.

I've had it with these people, their fear of change, and their mucking about in programming languages where in general their opinion isn't worth noting.
User Journal

Journal Journal: Another reason to hate SpikeTV

Okay, so I purposefully avoided both SpikeTV video game awards like The Black Death. And so was only exposed to their snide, demaning commercials and other's reactions to them.

But I do like to watch SpikeTV for some of their gear-head shows (Trucks, HorsepowerTV, Car and Driver, etc) that they had from TNN. I guess you could say I'm a geek that is also a closet gear-head.

So I see this little advert today, around fifty or sixty times, for some award show for cars. My first response: "Oh goody, another poorly produced awards-style show, featuring way too much hip-hop culture (which I have nothing against mind you) and not enough about actual metrics of cars. Gonna avoid that one, let's think of it like an Ebola outbreak."

Seriously, "The Mad-Real SUV" what the hell is that? What kind of metric is that? Car and Driver would tell me its horsepower, torque, ground-clearance,mileage, interior feel, handling, braking and acceleration? And besides, I guarantee the auto-industry cares nothing about this little show. People look for "JD Power and Associates", "Car and Driver Recommended", "Consumer's Guide Best Choice" and so forth when really looking at vehicles. I would even venture that an auto-maker might even be ashamed to have its vehicle on the show.

Fuck off, SpikeTV, seriously. I wonder what the guys who actually run the gear-head shows think of this crap? I think they may be gone, to be fully honest. All the shows I've seen have been repeats from a few years ago. Haven't seen anything new in ages.

"SpikeTV: The Real Network For Men!" Don't you mean the network for preening, posturing adolescents with no sense for the work that goes into customising (or completely building) a vehicle? With commercials every seven minutes, even during a movie (I watched the bastards cut on a Bond film in the middle of a scene) for crap no-one out of their teens would want? Yeah, I'm glad RTM got to pick the commercials around it's shows for the most part, so I actually see bona-fide products I may want. But for the most part, it's targetted at those that bought into that whole "X-Treme"/Mountain Dew crap (my feelings on that whole thing fall right where "Harold and Kumar" goes with it).

Screw it, I think I'll just renew my Car and Driver subscription, go and buy all the Bond films on DVD and say goodbye it to SpikeTV.
User Journal

Journal Journal: A PC for the car, hmmm....

After re-reading the G5-in-a-car article, and seeing all the in-car PC kits, I've decided I want one.

For some reason, the cd/mp3-to-tape converters do not work on my car's stereo. So I thought it might be worth the challenge of putting in a PC and getting my entire 3-plus-day music collection to boot.

Although, I do have to question if I need all that extra stuff and I shouldn't just save my money and put in a disc-changer that fits in-line to the antenna.

I dunno, it bears some consideration.
United States

Journal Journal: Bullet with a Bullet

The one glaring flaw in the missile defense program? It treats science as a crutch. Honestly, for an intercept to work correctly, a computer would have to do a whole mess of calculus on a huge input set (under non-nice conditions, which is generally all the time outside of a lab vacuum chamber) in less than ten minutes (scramble any later, and well, sorry Charlie).

I think it was either PopSci or Discover that did a huge piece on this in their October 2001 issue (written after the spectacular test failure, but before September 11th due to publishing deadlines). They talked to a lot of physicists who said yes, it's possible, but highly improbable, much in the same way that time travel is possible, but highly improbable.

For this system to really, really work, the ground will have to wire the work to the missile, and we're talking computers on the scale of the Columbia installation or the Earth simulator. Only systems of this size could actually do the calculus on the input set in the time required. They chose the automata method, but this task is more complicated than the automata method can cope with, hence the continual failures, whether in pre-launch (come on, NASA has launched enough rockets successfully to lend a hand in what should be the simple part) or post-launch.

Besides, they're testing the system like the Tacoma Narrows bridge was tested: right down the middle of the bridge on a calm day.

Christ, first this administration decries science as evil (stem cell (whether or not it actually produces worthy results), contraception, etc.) and then uses it to defend a technically unfeasible. It's not the science, its the practitioners.

Journal Journal: OSS software is more than just Linux

I guess some people completely missed the boat on OSS, and it seems that some KDE developers are in that group. The whole point was to give people something for free-to-cheap that they could modify for their own ends, should they desire to do so.

Stallman may be a fanatic, but he has a point. OSS is more than just the platform you run it on. That's why it's called GNU/Linux. Linux is the kernel, and as far as true GNU apps are concerned, it doesn't matter a tinkers-damn what the kernel is. I can take a true GNU program, and if I have a POSIX compliant compiler to compile it, I can make it run on any kernel: BSD, Solaris, AIX, Linux, Hurd.

The point of OSS is choice. Do I want this super-huge commerical CSS application suite that does things 1,2, and 3 for me, but also does things 4-200 that I don't need? Or do I want this simple OSS application that does things 1 and 2, and we can reasonably make it do thing 3? Most people will choose the first choice, because most people are lazy/stupid and very consumeristic. But there are some people who will choose the OSS, because they like a bit of a challenege and/or they are cheap. What the choice is is completely immaterial, especially in the context that there is only one commercial vendor in the market. If there is no alternative to that vendor, then the choice does not exist, therefore, it perpetuates a monopoly.

The comments on the Ask Slashdot entry that point out that the particular OS should be unimportant are right. The OS was envisioned as a helper to the user/programmer. If one helper is better at some task, use that helper, if another helper is better at another task, use that helper. The point is that what lies underneath should not matter, what the user/programmer uses should be universal. This was one of the points of UNIX and the development of C: you could sit at some IBM iron or some DEC iron, or whatever, and if it was UNIX, you would program the exact same way using the exact same tools. It seperated the OS from the iron. What we need is a way to seperate the programmer from the OS.

As a final note, I'd like to reference a bit of OSS software that runs on many platforms and many OSes, anbd it makes its developer happy. Yes, I'm talking about TeX. Pick someplace, and I bet you TeX can run on it, if it already doesn't. TeX is run by professionals (I asked my school's newspaper, and while they have their own layout app, it generates data to be used by TeX, much like LaTeX) and amatuers alike on an incredible amount of systems and OSes. Ask Knuth if he cares that TeX running on Windows may hurt *nix. The point is that it offers everyone a choice over what type-setter to use.

The point of OSS is to really help as many as possible. To confuse this with helping one project or another is foolish. Apache helped people because it offered a web-server that could compete with commercial offerings (and beat the pants off them) on all the platforms the commercial software ran on. And if Apache runs even better on a *nix platform, well that's just a happy side-effect that may encourage Apache users to switch to a *nix to get even better reliability and performance.

Saying OSS should only be done on OSS systems is a form of vendor lock-in and suicide for an OSS project. If you can encourage users of all possible systems to develop ans use your OSS app, you have a wider base of potential help. If you say only those using an OSS system can develop and use your app, then you are offering most an non-choice. They will stick with the commercial vendor that offers on their system. And the commercial vendor will absolutely crush your app.

This is why I use Emacs. Stallman didn't really give a flying fuck where Emacs ran as long as it was compiled with GCC. And if the GCC wasn't on a POSIX system, that was okay, because GCC only supports POSIX libraries, and it moved people towards POSIX. When I use Emacs, I get the same editor no matter what the system (the exact look of the GUI being dependent on the windowing system). Things like Emacs and vi and their six-million clones are one reason why there is no commercial makret for plain text-editors (that and text editors are reasonably simple to write). Here, OSS apps removed a commercial market (I have seen specialized editors for sale that do syntax highlighting and compiler tie-ins, but this is a micro-niche market, and the players in it are slowly going bankrupt).

Just remember this little nugget: OSS is about choice and providng that choice as many places as possible.

Journal Journal: So long, mini-"iron"

So IBM has given up on PC's. {sheds a single tear}

I think we've had an IBM in our house since ... well since IBM started making them cheap. We got our first one after my brother finally shorted out the old Tandy (I wasn't there at this point). So, yeah, my Dad, having used IBM iron in his business, decided the mini-"iron" was good for home.

And as such, we had only IBM PC's in the family until I committed sacrilege: I built a waaaay better computer for half the price of a name brand PC. And I couldn't be happier: it has more expansion space, uses components that there are many well established open-source drivers for, runs as quiet and uses a faster processor than what I could've gotten for the money.

But still, to read that IBM was selling its PC division was bitter-sweet.

It's great, since this frees IBM for tighter partnerships with its POWER chip makers and consumers and allows them to focus more again on the IRON and what I call titanium (the architectures for super-computers).

Sad in that it signals the end of era of sorts. They really brought a useable PC to the unwashed masses. Yeah, there were Tandys and Comodore's and on and on. But IBM was a name ever synonymous with quality, so people could trust it. They may have made the most beastly devices on the market, but they were rugged beasts. I once successfully put OpenBSD on an IBM PC I found in my uncle's closet.

So long IBM PC's. You were great (if not a wee-bit over priced) while you lasted. You brought the computer from the business to the unwashed masses. Which was good and bad.

Well, I guess I'll just have to mosey on over to Apple and get my Unix fix on a processor architecture developed by Big Blue.
User Journal

Journal Journal: National ID: The Sheeple with buy it.

You know, at one point, I honestly thought that a democracy was the way to go.

Boy was I wrong.

How about a technocracy? A lot of us geeks may be misfits when it comes to social situations (myself excluded), but we by and large seem to have a very egalatarian world-view (excluding a few asshats that like to discuss in politics./. yro./. and so forth).

All jokes aside, wouldn't you like to live in a society that thought everyone was worthy of some mere modicum of respect, unless proven otherwise? A society where you are not only assumed innocent until proven guilty, but assumed respectable until proven asshat? Yeah, we'd have a hard time dealing with the Joe Sixpack (you know, this gives good six-packs a bad name, like Guiness Foreign Extra Stout or Leinenkugel's Honeyweiss), but we could find some way to work with them.

The technocracy would also understand that National ID systems and their ilk are no good. They're not hack proof (who keeps telling these security people that computers are foolproof?), they require instantaneous adoption across state boundaries, and they really don't prevent what they are said to prevent. Checking your own populace is no better than McCarthyism and accomplishes nothing.
User Journal

Journal Journal: May I have more gruel, sir?

Sigh...had to take Linux off the laptop. Seing as how I won't spring for the $150 mimi-PCI card from IBM to enable the standard ethernet port, and I couldn't figure out how to get the PCMCIA sockets to start before authentication (trust me, I read and re-read the scripts a hundred times in the last three weeks). Maybe I'd have more luck with SuSE, but I've only got the live CD.

Sigh, so Windows is going back on, since its about the only way to get all the little bells and whistles to work. Ah well, at least I got the servers (it's amazing what you can find in dumpsters behind old tech companies).
User Journal

Journal Journal: ASCII/Unicode then type-set, makes a damn lot of sense

This came up in the poll about files, and I think its interesting (more so than some of the more hilarious comments, gotta stop reading /. so early).

In my freshman year of college, because of class scheduling, I got to start my CS classes a semester before a lot of people, and as such was saved from suffering from the lectures of the Physics Dean (the bolding is intentional, and honestly, if the guy could, I think he would speak in all bold, but his being a pompous ass aside). So I had a lot of free time to dink about on well setup and maintained Unix and Unix-like machines (Solaris and Debian GNU/Linux). So, one day, after reading a PDF prepared by the TA that had all kinds of fancy symbols, I asked how he made such a spiffy thing (I naively thought only Acrobat full-something-pay-$500 could do that). He said we wrote it in plain ASCII using good ol' Emacs (still my favorite editor, you vi elitists can save it (never should have been part of the POISX standard if you ask me)) and used LaTeX to lay it out, and then a helper progam to convert (a filter in true Unix parlance for those of you who have forgotten or do not know) it to a bunch of formats, including the PDF. He then showed me which modules to load up and where I could find documentation.

And so I went off and merrily dinked around and read a lot of documentation. Generally good times. Maybe I'm weird, but I can read good documentaion for hours (maybe the historian in me). Anyway, I figured out a lot of the more scientific aspects of LaTeX and did a lot of experimentaion with generating said documents. By the end of the semester, I could whip off fancy documents fairly easily.

So, up comes the first Physics paper. And I needed to place a few summations in the middle of a paragraph. For some reason (probably my then girlfriend), I started using Word. And then I came to the summations, and I was stuck. Word had some reasonably okay things to do formulas, but the boneheads at M$ (I know, I shouldn't have expected much) didn't put a Sigma in there. So after finishing the paper, I sat and looked at it and said, "I could do better." I copied the text out of Word and into Emacs to ensure I had good ASCII text. I then went to town with my knowledge of LaTeX and formatted up the paper in a nice clean way, including nice scientific symbols. I then uploaded the file to the Unix boxen (I hadn't gotten TeX of any variety on my machine at that point) and ran all the filters over the file and downloaded the resulting PDF. I open said PDF, and here is this beautifully formatted document (okay, nicely formatted) just like I would see in my textbooks.

So I print off my paper and hand it in to the Physics TA. When I got the paper back, the TA asked how I got the document to format with all the scientific symbols. Did I have the fancy extension to M$ Word that apparently exists for scientific work? Nope. Did I figure out some trick in regular M$ Word? Nope. What did I do? I typed it up, and marked it up for LaTeX and did the necessary filtration to make the document. The TA was baffled (she had never used a Unix or Unix-like device before, apparently the scientists studing magentism use Windows, even for hardware control!), and I explained what the CS TA had told me. Apparently after that, she consulted with other TA's and the prof (who, most notably, already used LaTeX to format his lecture notes suitable for online posting after lecute) and was subsequently introduced.

The point of this long and weakly annecdotal story? We need to dump WYSIWYG editors (this includes my beloved and switch back into that old wirte/typesetter modality. Soemthing with the author concentrating on content with vauge ideas for physical layout and the typesetter unconcerned of content and concerned only with good looking and appropraite layout. Generally, this will still be one person, but that one person should concentrate on writing first, and presenting second.

Now I need to go an refresh my LaTeX knowledge, I haven't written anything besides ASCII text (oh yeah, side-note to up-comming college kiddies who have not yet had a literature class: they hate it when you send them unformatted, plain-text documents) for a long time.
User Journal

Journal Journal: Can we get rid of the pander-, er, marketing department

You know, I sometimes wonder what life would be like without marketing. Or more specifically, if we didn't need to sell the technology to Joe Sixpack.

We wouldn't have a bloated and wasteful processor named the Pentium 4 (yes, Virginia, its wasteful, it does all this ridiculous forward computation, with hundreds of steps, and chucks most of it out the window, but because it does this, it can have clock speeds of GHz+). We would have good processors that may be slower in clock-speed but do fewer wasted computations (well, AMD is kinda like this).

We wouldn't have cell-phones with cameras in them. Frankly, when the cell-phone people still can't give me wire-line signal quality, why should I care about crappy, low-res digital photos. Isn't the ether cluttered with enough of these things already? And on top of this, especially with LG's supposed 7 MP camera, how about a phone with reasonably written firmware? My own LG phone will fail to give me audio if it doesn't recieve the signal from the carrier within x-many milliseconds (I'll call someone, I'll hear nothing, then hang up only to get a call from that someone asking if I called).

Who gives a rip about what Joe Sixpack wants? The fact fo the matter is if you have enough of a marketing juggernaut (M$ comes to mind) you can convince Joe Sixpack to buy whatever you want him to buy. Joe and Jane Sixpack are very gullible idiots.

Honestly, its this kind of pandering/marketing that has taken what was a branch of mathematics (every CS prof I've had with, one exception, has had at least a BS/BA in mathematics) and dragged it through the mud. CS used to be about doing something interesting with those chips the physicists, chemists and electrical engineers came up with. Now its about 'enterprise' and use-cases and formalized diagrams through UML. If this crap had existed 30 years ago, UNIX would never have been, we'd still be waiting on Multics. All to please management, which wants to please the investors, which is essentialy a group of John Champagnes. And guess what? John Champagne may have money, but he's every bit as much of an idiot as his cousin Sixpack.

Maybe I'm being a bit harsh here, there are some intelligent, non-computer people out there, but they seem to be few and far between.
User Journal

Journal Journal: It's not capacity, it's distribution

This is something I see a lot, and I feel I need to correct it once again.

The US is not at its generating capacity. In fact, if one looks at it, we most likely over-generate. The problem is one of distribution.

Ever since the deregulation of power companies, distribution has become a problem. There is no incentive for a state to build expensive power-lines to another state, as it will cost them a lot of money and they wouldn't immediately see a benfit.

When the federal government controlled the setup of the grid, it was always trying to ensure that the system was stable as possible. Deregulation would have been a good idea, had the population distribution stayed the same. However, things shifted and power consumption went up (thanks to the computer revolution) while the power system stayed the same.

As such, states weren't getting the system upgrades they had gotten under the federally controlled plan. So when some states come to a point of energy shortage, they build new generators, often way over the capacity required. And as for the others, they often don't have the option of more plants for various reasons, and they just hope the grid can withstand the strain of a harder pull. And when they pull too hard (blackouts last year in the Eastern US) the system fails and fails hard.

Also, it doesn't help that the current nation-wide grid is split more or less down the middle of the country.

Anyways, rememeber, it's distribution that's the problem (which stems from deregulation).

Twas a book on this, but the title escapes me at this hour. I'll update this when I figure it out.
User Journal

Journal Journal: The Lone Coder

Well, since I missed the post about the Lone Coder, it'll be more or less worthless (just as writing here is more or less worthless, except I can find it easily here) to post a comment.

So here are my $0.02:
The "Lone Coder" never truly existed, or if he/she did, they quickly adopted the practice of working with other "Lone Coders: after a short period of time.
For a long while (read: the Gulag institution known as ... well, I'll not utter it here as it is an evil name), I was a "Lone Coder". I wrote lots of stuff, some which was nifty, some which was only for my own enjoyment. Hey, who knew it would take that long to write a Pong(TM) clone in TI-83 BASIC (I hadn't yet learned of
Then I began to work with folks who were better with numbers an procedures than I were, so they fed me scientific algorithms and I produced the C code for the TI-89 and the BASIC code for the TI-83. And then, for them to really do spiffy homeworks (if we had only known how to muck about in either M$ Office or or TeX), I began crafting programs for the PC.
Then in the fall of 2002 I want to the big ol' University of Minnesota (almost finished, in case anyone cares, 24 credits to go after this semester and no required's left). And I took the first semester freshman CS course (lucky enough via the lottery system, which in turn allowed me to have a decent Physics Prof). The entire point of the class, outside of exposing everyone to something other than the pithy Javascripts/VB-Scripts/Weakly-coded-C (don't knock Scheme until you can devise a simpler and more useful teaching language (Karel the Robot does not count)), was to get us to work together. It was here I hooked up with a lab partner that complemented my skills. There were areas he was great at and I was poor at, areas I was great at and he was poor in, and many many areas where we were both great. He's been my lab partner for 4.5 semesters now, and between us, there are few problems we can solve.
I also got a job in a research lab. In the lab, I am somewhat a "Lone Coder", although I do occassionaly talk with the fluid-physicists (the director and the chief scientist) to hash out ideas, or I talk to the other good coder who has been working on some high performance I/O stuff (I muck about with meta-data/data management).
I do still program on my own free time, but I have less and less time to do this (what can I say, I chase tail in my free time after homework). But my programs are mostly for my own self and not a commercial nature. The last thing I tried to develop with comercial intent was a kind of Physics framework and application built on that framework that would in effect allow people to have the computer do thier homework. I figured I could cop at most $5 from students for it (I did have a pretty nifty anti-pirating scheme, although some would consider it slightly extreme: if you were using a bootleg copy, it would systematically destroy its support binaries, no matter how often you reloaded), which would make me a very rich student, very quickly ($5 bucks a copy, need for approximately a thousand copies per year guaranteed, less expenses (initially on CD's then on a website), you can see how quickly this can also bloom when being sold at other schools). But I got bogged down and fucked around by a few girls, and I lost the urge to keep working on it. It's about halfway done, so I may just GPL the code and GDL the documentation and let it go.
Now my code from my "Lone Coder" efforts is for the good of all, or at least immediate good use by me. So as far as the world of commercial software is concerned, any "Lone Coder" is going to be very alone and left quickly behind by those working in large open-source groups or those working in corporations. Not just with patent issues, but just with the fact that, up to a certain point, more coders equals better code and faster rollout of working code.

But best of luck to you loners looking for commercial success. I would recommend you ask for help, and I offer my services if you want them (provided the task is interesting, so if you're looking for someone to help you make a GNU/Linux distro or GNU/Hurd distro or any OS, forget it, there are plently enough eyes on that problem), and I'm sure others would if you ask. If you pull it off, look me up if you need a coder/architect/etc.

Besides, its always fun to root for the underdog.

nohup rm -fr /&