Want to read Slashdot from your mobile device? Point it at m.slashdot.org and keep reading!


Forgot your password?

Journal Journal: The 12 Rules of Slashdot

The Rules of Slashdot

1) You can't talk about the rules of Slashdot.

2) Never read the article before commenting on it.

3) Anything proprietary is bad. Anything open-source/free-software is good.

4) Information wants to be free. So IP theft is OK and encouraged.

5) All patents are BAD and should be abolished.

6) Practicality is irrelevant. Running Linux on any piece of hardware that was not meant to run Linux such as a toaster, toilet, or toothbrush is considered uber cool and totally 133t.

7) If you have stolen source code from a previous employer (see Death Star) use the GPL to liberate and protect it, then post it anonymously on the Internet. Using a free hosting site like SourceForge(tm) works best.

8) Open-source/free-software really is communism but you can't admit this publicly. Flame into submission anyone that even hints at the communist connection.

9) Software licenses don't destroy jobs, CEO's do. It is OK for open-source/free-software to destroy domestic software jobs. It is BAD when domestic software jobs are sent overseas "off-shored" to countries with cheap labour rates such as India or China. Yes, hypocrisy is sweet.

10) Those who actually do the work don't waste their time posting on Slashdot.

11) Trolls that push the Slashdot agenda are GOOD. Trolls that offer a differing viewpoint are BAD. Yes, the hypocrisy is again sweet.

12) Slashdot is the new world order and all your base are belong to us!

The above was written by MajorDongle in response to Rob Enderle. I agree heartily with all of it, particularly Rules 8, 10, and 11.

Linux Business

Journal Journal: Some Linux advocacy 2

People who've read what I write on Slashdot will know that I'm generally a vicious troll. (I actually just had one commenter suggest that I try suicide as a form of therapy)

That being the case, I decided to mention something which I *do* feel enormously positive about...a couple of wonderful Linux distributions, and why I like Linux in general.

  • First off, Slackware. I love this. It's the first distro I used. It's very clean, clear, and (for me anyway) simple. A base install has an extremely small memory footprint. Also, if you add pkgsrc to it you'll have a great form of package management as well. You can read some testimonials about pkgsrc here, and you can also read about how to install pkgsrc with Slackware here. It might not be as good as Ubuntu for new users, but for people who know their way around and who want a hardware efficient system, (maybe for use on older hardware, or just if you like keeping ram free) you might like it.
  • Gentoo. From what little I've seen, it seems to have a wonderful design, and I've also read about Daniel Robbins being a truly masterful Bash scripter. The package management system was inspired by ports, which I'm also very fond of, and apparently the discovery of the source building process was instrumental in forming the Linux From Scratch Project.
  • Linux From Scratch. Although I'm a great fan of Slackware, LFS is overwhelmingly my distro (if it can be called that) of choice. As the book for it says, it produces a wonderfully clean, compact base system, which you can then use to install whatever else you like. Needless to say, there's also no better way than LFS to learn how a Linux system works at a deep level. LFS's other main virtue is that you don't get anything that you don't want or aren't likely to use, which in other cases might either waste system resources or even pose a security risk.
  • FreeBSD. This of course isn't a Linux distro, but is the other FOSS *nix system. I recently did a couple of network installs of 6.1-RELEASE, and aside from some initial hiccups with fdisk, found it a joyous experience. The Ports Collection is the single greatest form of package management that I have ever used, and for me anyway the combination of freshports.org and the portaudit and portupgrade commands were a dream not only in terms of user friendliness, and ports is also considerably more robust than forms of package management for Linux that I have used. The handbook is great, and I was also amazed at how much more simple it is to compile a FreeBSD kernel. Compiling the Linux kernel usually takes me a lot longer. Installing VLC in FreeBSD was also actually easier for me than an initial codec install is in Windows...pkg_add meant I was literally watching video in minutes, and I had no codec issues either. An easy (if a bit more time consuming) install of the nVidia video card drivers meant I was able to play Neverball, a visually beautiful, fully 3D FOSS game which is also available from Ports. I was able to install GAIM in order to use the MSN messenger service as well.

    Some people will probably find the early stages of a FreeBSD install a bit bumpy, and it's true that FreeBSD hasn't quite caught up to Linux in terms of hardware support yet, (although it's still very comprehensive) but if you can forgive those two nitpicks, it's very much worth the download, especially considering how good ports is. I was particularly surprised at how good multimedia support is via ports these days, and precocious newbies shouldn't have too much trouble following the handbook 's instructions for compiling their own kernel.

So why do I use Linux or FreeBSD? I will admit that I come down very strongly on the Raymondian/"open source" side of the ideological fence. My use is motivated primarily by a passionate belief in the technological superiority of UNIX in general, and an appreciation of the vast additional flexibility which the availability of source code allows. Specifically, however:-

  • Automation. I can start a make script for LFS, turn the monitor off and go to bed, and wake up nine hours later with a fully installed Linux system. For most Linux/BSD users, such a thing is probably very old news, but as far as I know that degree of unattended automation simply is not possible in a Windows environment. As is written here, a need for automation was one of the motivations behind UNIX's early design, and it is still an enormous strength of the operating system, to a degree that Windows has never been able to match.
  • Robustness. Except for some minor issues with X Windows at times, I can have total assurance when using a Linux or FreeBSD system that the only time anything is going to go wrong is when *I* screw up, unlike in Windows where I can be entirely passive and the system will decide to entirely randomly die on its' own. Although my own usage scenarios probably aren't anywhere near as demanding as most people's, I also still feel a need for an operating system that can take whatever I have to throw at it. Slackware/LFS and FreeBSD can do that.
  • Security. For the most part, the malware problem endemic to Windows simply does not exist with Linux or FreeBSD. I also have the option to do hardened compiles of my system's software which largely eliminates the possibility of buffer overflow/asm shellcode based attacks. There is also a tremendous degree of psychological peace of mind. When in a Windows environment, I periodically feel a need to monitor running processes in order to ensure that they all actually belong to me and that the system is not being compromised by a rogue process. With a sound firewall under Linux or FreeBSD, that is largely a given, allowing me to relax.
  • Flexibility. When, for example, I wish to run a 3D game within Linux/FreeBSD, I can write a custom .xinitrc file so that either Wine or the game itself is the *only* thing which X Windows runs. I can also kill *all* background processes, effectively turning my desktop PC into the equivalent of a console with regards to the machine's entire hardware resources being devoted purely to the game. This allows a level of gaming performance which again, simply is not possible within a Windows environment. More generally, I never have to have anything on my machine other than exactly what I want, with none of what I don't.
  • Price. Although the commercial Linux distributions are not free as in beer, the ones I generally use are. Linux or the BSDs allow the possibility of a corporation hiring a consultant/s to put together an entirely customised operating system, built from scratch, for zero software or registration cost. The TCO implications of this are surely staggering, even if education is taken into consideration, and I do not understand why more organisations haven't done this.
  • Consistency. Both Debian and the BSDs have the capacity for the operating system to be installed once, and then never have to be re-installed for the life of the hardware. The entire operating system and applications can be maintained/upgraded on an incremental basis, within a system the programming API of which has remained stable for over 30 years. No other operating system on the planet that I know of can make that claim, and for change averse corporations or governments, I don't know why you'd use anything else. Contrast it in particular with another operating system we are well acquainted with, but shall here remain nameless. ;)

    The capacity for incremental upgrades of a stable base over time also means that organisations are able to deploy the latest innovations, but not at a rate faster than their retraining budget/timetable is able to cope with; that's the best of both worlds.

So in closing, if there's anyone reading this who by some chance has still only ever used Windows, I definitely recommend grabbing Slackware and diving in. As a convenience, Windows has it's place...I still use it for a few different things. However, depending on what you do with a computer, you may find that you can discover some uses for FOSS UNIX as well. If nothing else, a rescue CD for the next time Windows crashes could just end up being a lifesaver.


Journal Journal: Looking for a job in or near Seattle

So, I'm looking for a job now. My résumé is updated and I've called a few people I know. I'm curious if any of you know anybody.

Here is what I'm looking for:

Ideally someone would point me at an investor who was interested in funding CAKE development for a couple of years with possibly another couple of people. The focus would be on creating a web-service that provided various services for CAKE users, not selling CAKE itself. A business model like LJs is the idea.

Barring that, I would really like to work for a company that wasn't so interested in someone who was capable of cranking out code. I'm not any good at that. I can program well, but I'm not fast, and I'm very cautious about working with a system I don't fully understand, especially if it's not easy to play with and test. OTOH, I am pretty good at talking to people about technical stuff, talking about design, pointing out flaws in designs, and creating new ones. So, a job that focused on the latter more than the former would be good.

And here's a few bullet points:

  • Working on code that was going to be published as Open Source code would be a huge plus.
  • I know Python and C++ best out of all the programming languages I know.
  • I would really vastly prefer working with a POSIX-like environment like Linux. :-)
  • I do best when working with systems level software, not UI software

Journal Journal: PCMan File Manager

Another entry in the "RAM saver" category, this is one which was mentioned by someone on the #lfs-support IRC channel earlier today.

Although I haven't actually tried it out myself yet, the verdict on #lfs-support was that it's very good, and apparently also very fast and resource-efficient. If you're needing to put together a FOSS desktop environment for an older machine, or just like resource-efficient desktops yourself, you might want to give it a look.


Journal Journal: Some Firefox tweaks I've come across

For any of you who don't already know about these, I recently came across this article outlining a number of useful config modifications for Firefox. The main one I was interested in was the "minimise hack," which can radically reduce Firefox's memory consumption while it is minimised. Might be good for people without a huge amount of RAM.

User Journal

Journal Journal: If people want to get together anyway 7

If people would like to get together anyway, despite the cancelled meetup, let's use this entry to arrange a time and place. :-) I was thinking of doing that anyway, and then droleary suggested it as well, so I'm all for it. :-)

I bought a new PowerBook as well, so I'd have a toy for people to ogle. :-)

User Journal

Journal Journal: I have a job now 5

I'll be working for Amazon in Seattle. I'm going to have to move. So please, people here in Minnesota, sign up for this month's Slashdot meetup so I can say goodbye to you all before I go. :-)


Journal Journal: CAKE

Well, I have a name for my project, and a website. It will be known as CAKE. :-)

I need to set up a Wiki and a mailing list for it, and some other ways of getting feedback from people. I want to build a community around this project fairly quickly as there will be a number of aspects of the project that others would be much more suited to attacking than I.


Journal Journal: What's in a name?

Well, it's starting to come together a bit, and I'm needing a name. I'm building a protocol in which all objects are named with self verifying names that aren't human readable. Messages are sent to a public key, and are always signed by the sender's public key. Files are named by secure hashes of their contents. That kind of thing.

I have grand plans of using this protocol for email, instant messages, web browsing, remote filesystem and database access, and almost anything else you can imagine. I intend for the basics of the protocol to form a layer above TCP or UDP, though it should be able to be layered inside of almost anything. I intend to write layerings for SMTP/IMAP, and AIM/Yahoo/MSN/ICQ/Jabber (via a gaim plugin).

I have some of the basics working using a mixture of C++ and Python, but it's not quite ready for public consumption. One obstacle is a name. I made a post in my LiveJournal about naming it. I'd like input from people here, if they're interested. Please feel free to make posts (anonymous or otherwise) to my LiveJournal with opinions or suggestions.

I don't consider the non-human readability of the names to be an obstacle. After all, IP addresses aren't particularly human readable either.

Also, if you care to look at the source at it currently stands, it can be found at: http://www.cakem.net/

Subversion is great, and MUCH better than CVS, even though it's still in alpha/beta.

User Journal

Journal Journal: Lost my job today 1

*sigh* The company I used to work for is barely staying afloat. They decided to jettison more development staff today in the attempt. They cut some really excellent people today. They won't be able to move things forward much at all now with so few people. :-(

Oh, well.

If anybody knows someone in MN who wants a really good C++ programmer who also knows enough Unix administration to be a good sysadmin, and who knows Python, Perl, some Java, and a whole slew of other stuff, post them here. :-)


Journal Journal: XML may not be answer, but I'm writing a parser anyway 1

Well, my XML parser understands XML well enough now to turn this:

<fred> <went> <down> <to> <the> <street> </street> <br/> </the> <a><store></store></a></to> </down> </went> </fred>

into this:


Yeah, maybe it doesn't seem like much, but in order for the code to do that, it has to understand what a start tag looks like, what an end tag looks like, and what an empty tag looks like. It also has to keep track of the nesting level.

I'm happy about all this because the parser is carefully designed to for two requirements. The first requirement being that it be as fast as possible. The second being that it give me pointers into the original text where the various elements and tags are. The second requirement allows me to cut out or replace pieces of XML documents without altering the parts I'm not changing.

Since the XML messages I'm working with may have pieces that are digitally signed, it is vitally important I leave them exactly as I found them. Any alteration, no matter how slight, would render the signature invalid, and the message would be rejected by the destination. Most XML parsers forget the original document as they construct an internal structure describing the various elements and their relationships that throws away superficial features (like spacing) found in the original document.

Anyway, I'm pleased with my progress. I've had to stop for careful thought along the way to make sure that it was as flexible and fast as possible. I think it'll be fairly widely useful when I'm done.


Journal Journal: Disappointing Slashdot meetup

Despite 8 people claiming they'd show up, only 3 actually did. It was still fun, but still something of a disappointment. Especially after I reserved a table for 6-12 people on Wednesday. :-(

I wish meetup.com had a way of leaving feedback for other people who claimed they would show up.

User Journal

Journal Journal: Smoothwall 2

After reading about the Smoothwall firewall on the /. post, I decided that, even though a lot of people made Dick Morrell out to be a major dickhead, it was really wierd for the head of the company that makes a firewall to be such an asshole.  So I went looking for smoothwall's IRC channel, and here's the log.

Session Start (adams.openprojects.net:#smoothwall): Thu Jan 10 08:16:40 2002
[08:16] *** Now talking in #smoothwall.
*** Topic of #smoothwall: try #smoothwall on irc.smoothwall.org
*** Set by neuro_ 731 minutes ago
*** Users on #smoothwall: iGawyn @neuro_
*** End of /NAMES list.
*** Mode for channel #smoothwall is "+mtn"
*** Channel #smoothwall was created at Wed Jan 09 18:06:24 2002
[08:16] *** Join to #smoothwall completed in 0 seconds.
Session Close (#smoothwall): Thu Jan 10 08:16:52 2002

Session Start (uk0.irc.smoothwall.org:#smoothwall): Thu Jan 10 08:19:39 2002
[08:19] *** Now talking in #smoothwall.
*** Topic of #smoothwall: vote for us in the Linux Format Awards 2001 :: (Link: http://www.linuxformat.co.uk/awards/)http://www.linuxformat.co.uk/awards/ :: please don't expect free support if you haven't donated :: (Link: http://redirect.smoothwall.org/donate)http://redirect.smoothwall.org/donate
*** Set by neuro 71 minutes ago
*** Users on #smoothwall: iGawyn guy dickmorrell lw @dang LoneWolf +togtog[watchin_movE] @Aslak +beezly +Tucks +SWoody @MacGyver[work] @HiltonT +Chakara @neuro @Hellcore[zzzz] +HeatherC @dustmite
*** End of /NAMES list.
-ChanServ- Welcome to #smoothwall :: Please do not expect free support if you haven't donated.  (Link: http://redirect.smoothwall.org/donate)http://redirect.smoothwall.org/donate
*** Mode for channel #smoothwall is "+nt"
*** Channel #smoothwall was created at Wed Nov 28 04:58:40 2001
[08:19] *** Join to #smoothwall completed in 0 seconds.
[08:19] <dustmite> or, leading into it:
[08:20] <dustmite> "A mother and her two were terrorised by a naked, dribbling man"
[08:20] <dustmite> +children
[08:21] <dustmite> "It went quiet again, so I left the door, opened the bedroom window, and threw my son out"
[08:30] <iGawyn> If you withhold tech support until a user donates money to you, how exactly is it "free support"?  It's basically charging a flat rate for any future tech support.  Most linux applications (or distros) will give you all the free tech support you want without asking anything in return.
[08:30] <dickmorrell> iGawyn: TAKE YOUR HEAD OUT YOUR ARSE
[08:30] <dickmorrell> will ask you nicely
[08:30] <dickmorrell> once
[08:30] <dickmorrell> then you'll be ejected
[08:30] <dickmorrell> do you understand
[08:31] <dickmorrell> this project COSTS money
[08:31] <dickmorrell> BIG money
[08:31] <dickmorrell> less than 1% donate
[08:31] <dickmorrell> who use
[08:31] <dickmorrell> work it out
[08:31] <dickmorrell> "if" you dont donate
[08:31] <dickmorrell> you're a freeloader
[08:31] <dickmorrell> and dont ask for support you muppet
[08:31] <dickmorrell> and as for your information
[08:31] <dickmorrell> the panel of judges says
[08:31] <dickmorrell> WRONG
[08:31] <dickmorrell> Redhat charge
[08:32] <dickmorrell> Suse ALWAYS charge
[08:32] <dickmorrell> Mandrake wouldnt know how to
[08:32] <dickmorrell> Redmond Charge
[08:32] <dickmorrell> Trustix charge
[08:32] <dickmorrell> fuckwit
[08:32] <iGawyn> If you don't like freeloaders, then don't release your product for free.  And I'm not asking for support, I don't even use it.  I was curious, as I was considering using it, for my new OpenBSD box that I'm building.
[08:32] <dickmorrell> good luck
[08:32] <dickmorrell> remembre
[08:32] <dickmorrell> power lead dude
[08:32] <iGawyn> And Redhat/SuSe/Redmond/Trustix is not everyone out there.
[08:32] <dickmorrell> it goes IN your mouth
[08:33] <dickmorrell> now dude but they're the only ones charging
[08:33] <dickmorrell> and making revenue
[08:33] <dickmorrell> the rest are pimples on their arse
[08:33] <dickmorrell> but you're a BSD user so why the fuck are you here ?
[08:33] *** Mode change "+o dickmorrell" for channel #smoothwall by neuro
[08:33] <dickmorrell> by the power vested in me
[08:33] <dickmorrell> yada yada
[08:33] <dickmorrell> yada
[08:33] <dickmorrell> yada
[08:33] <dickmorrell> yada
[08:33] *** Mode change "+b *!*Hibiki@rawhide-16620.uscg.mil" for channel #smoothwall by dickmorrell
[08:33] *** dickmorrell has left #smoothwall
Session Close (#smoothwall): Thu Jan 10 08:33:49 2002

After this, he proceeded to /msg flame, swearing at me at great length, saying that I was the sort of "fucking muppet" who was the downfall of Open Source, refusing to pay for anything, etc.  As I told him in the /msg chat, if I like software, I'll donate to the creators, but I'd like some support first.  Which led to more cursing.  I forgot to send myself that log file, but I'll have it up tomorrow from work.

At the time, I didn't realize that Smoothwall was a standalone firewall solution, which in retrospect made my comment about OpenBSD seem wierd, but ah well.  Even with that misconception of mine, I think the point gets across rather well.

Slashdot Top Deals

You have a tendency to feel you are superior to most computers.