Browser Load of Coolness
Welcome to Browser Load of Coolness. This site is the product of Pizzasgood. Pizzaswho, you ask? Well, the short answer is that I'm a hyperactive 21 year old guy who likes a little bit of everything. I program, draw, snowboard, read, bike, camp, build computers, and make websites. I can even cook chicken cordon bleu in a campfire (yummy). This place is where I put any cool stuff I make, do, or find. It's also kind of a portfolio. If you feel like hiring me to do something, feel free to drop me a line. I could always use a little more dough. :)
Random Blurb
Inertia is a property of matter. --Bill Nye

Updates
These are the last 5 updates.
Saturday, February 20, 2010
So, what have I been up to lately? Well, school of course. Taking "Internetwork Security", which is almost entirely lab-based, and relatively time consuming. Also taking "Japanese 2001", as I mentioned previously. That got off to a really rocky start, but I'm at least keeping up with everybody now. "Senior Design" is interesting - doing a DSP project about recording a clip of music, identifying the notes, and determining whether they were played in tune (we're requiring that only one note at a time is played for this - it's to be used to test the player's accuracy, not to test production music with the whole orchestra!). "Ethics in International Affairs" is as boring as it sounds. More so, actually.

I'm also still a TA for the "Embedded Microcontrollers" class that I took Spring '09. We have these boards that we build that use PIC microcontrollers. But to avoid having to mess with the PicKit programmers (saving the students some money), we have them set up so you can program them over the serial port. The professor has this custom kernel that a former student wrote, which provides that serial port programming feature along with some debugging features over the serial port. The only problem is that the program we use to interface with it is for Windows. So, being the geek I am, I wrote a simple Linux program to let me program the board. I was too lazy to implement the debugging stuff, but it lets me program, pause, run, erase, and reset the chip. It's in my Git repo if anybody is interested (though it's probably useless to you unless you have one of these boards, or are just looking for examples of serial port programming). Someday I may get around to adding the debugging stuff too. Right now I don't use the boards for much, so I don't miss it yet.


I've also finally gotten started on CheesyRamHog, my personal Linux distro. I decided to begin by going through the Linux From Scratch process, since I've never compiled Linux from the ground up before (unless you count Gentoo, but that was a much more automated process). Once I get it working I intend to put together a minimalist source-based package manager and then automate the process. Then I'll fiddle around with using newer versions than those specified in the LFS book. The next step would be to expand the list of packages it uses to include the main ones I need and their dependencies.

At that point I plan to start looking into more sophisticated package managers like Paludis, which is based on Portage but supposedly better. I'm not sure yet whether I'll go with an existing source-based package manager or just stick with my own (possibly augmented with something like src2pkg from the Amigo Linux Project). Since I'm making CRH for myself, it isn't a big deal if the package management isn't all that fancy. It just would be nice to piggy back of an existing source based system's repo so that I could focus more on the architectural work.

Architecturally (not in the CPU arch sense!) what will make CRH different from other distros is that I intend to adopt some of the things I liked most from Puppy Linux, but to expand on them and combine them with a more fully featured Linux disto. Puppy is very good in its own right, especially for newbies. But if you start really getting into the Linux mindset, certain things become annoying. Lack of the normal man system, for example. And they still have a number of cut down busybox-based programs instead of the "real" versions (for some though, the full version is there, with -FULL appended to the name). I don't fault them for this - Puppy is supposed to be small, and I feel they've made the right decisions in that regard. But I don't need a small system anymore and would rather have more power.

That said, I really like the clean modular nature that Puppy offers, and the ability to load part of the OS into a ramdisk. Being able to boot without the save file to get a pristine environment is also really cool, as is the ability to run off dang near any bootable media. I intend to have CRH follow a similar approach. One difference is that it will allow any module to be loaded into ram, including the save file. So if you use the games module a lot but don't use the word processing stuff except on rare occasions, you can specify to only load the games module into ram. (All this ramdisk useage is where the "RamHog" part of the name comes from.) I also want to have some integrated tools to simplify working with modules. I want it to be easy to move packages from one module into another, to split modules into smaller ones, and to combine them into larger ones. I'm not sure how I'll do this yet, because I haven't decided on a module format. I'll probably use SquashFS, but I'm going to first do some research on compressed filesystems that remain writable, because that would make this much easier. I do intend to let it use several different types of filesystem image for the modules though, so if you want to make one that's an ext2 image instead of being compressed, that would be supported.

Another thing that comes up from time to time on the Puppy message boards is people who request the ability to cache their changes in ram and optionally commit them to the save file before they reboot. That would allow you to test things on your running system, without messing it up if things go wrong. Several of us have made prototype Puppies that incorporate that feature (search the Puppy forum for "Groundhog Day" and you should find the main thread where this happened). That will be a core feature of CRH.

I also intend to support encrypted modules (any module, not only the save file). I will need to do some research into that area to make sure I do it right. IIRC the current best way is DM-Crypt, as opposed to the cryptoloop method used by Puppy. But like I said, I need to research this. (Yes, I will also be looking at TrueCrypt.) In a related vein, I want to have Tor support too.


Why not just upgrade Puppy to have these features? Because I'm a masochist! And I also want a system that is "easy" to recompile from source so that if I want to adjust it to use different compile flags I can do that. With Puppy, the process is not very automated. (I think some work may be underway in that regard, however, under the name "Tpup".) And really, Puppy is not targeted at me. I've used it for years because it's the closest existing system to what I want, but it's like a glove that doesn't quite fit right and becomes really irritating. Instead of taking something that wasn't designed for me and trying to twist it to my needs, I decided to just go make my own. And this way I don't have to worry about whether to maintain compatibility with the main line.

No hard feelings toward Puppy of course; it is a very good distro. And I probably will port some of the features I implement over to Puppy at some point, and would certainly be willing to help anybody else who is wanting to do so for the things I don't done. This is the open source world. We compete cooperatively. And in the CRH vs. Puppy case, there is very little competition, because they target different niches. Puppy is aimed at newbies, Windows converts, and people who just want a simple system that handles their daily tasks. CRH, on the other hand, targets people who crave power, like getting their hands dirty, enjoy the commandline, and love being different.




I'm gradually getting little bits and pieces of work done on this site too. Once I get bored with CheesyRamHog and feel like taking a break, I'll probably start writing my own forum software. Lots of good forum software out there of course, but it was written by other people (eeewwww). If you haven't noticed yet, I prefer writing things myself. More fun. And then I understand the things better. I'll probably start by adding a comment system to my posts, since I notice that letting people leave comments is the hip thing nowadays. (I am very behind the times!) Hmmm.... will need to work on that anti-spam system some more too, because my maleness needs no enhancing and my videos need no converting, so I'd rather not have that junk cluttering up my DB. Math-O-Lantern is on hold until a later date. I will finish it eventually, just have more important stuff right now.
Thursday, February 18, 2010
Whew. Been busy lately. But I finally got around to adding a "Links" page, which includes banner links to some of my favorite webcomics. (I'm considering adding an area to the main-page that shows one of them at random. The code is written, I just have to decide where to put it.)
Thursday, December 31, 2009
I've been working on Retrovol on and off for the last several months. I finally have it finished enough to tag a version and make a release, so I did.
http://www.murga-linux.com/puppy/viewtopic.php?p=376904

In other news, I'm obviously still alive. Chilling out in the mountains over Christmas Break (which sadly ends a week from Sunday). Managed to pull off straight A's last semester, which was nice. I intend to do some more work on this site sometime in the next couple months, to prepare it for hosting more of my projects now that I'm phasing out of Puppy-specific development. With the bulk of Retrovol off my shoulders, maybe I'll feel more inclined. But right now I'm just kicking back and doing whatever I feel like, other than a little bit of studying up on my Japanese (I'm taking JAP-2001 this spring, and it's been about two years since my last Japanese class so I'm pretty rusty).

Pizzasgood, over and out.
Saturday, November 7, 2009
Well, it's looking like I'll never get around to finishing up that picture, so I've gone ahead and uploaded what I've got so far to the Art Page. (If I had more time and motivation I'd clean up the lines a little, make my ride's innards glow more, have some flames blowing out the edges, and add some stuff in the background. And maybe add some shading everything so it looks less flat.

But I'd rather do other stuff. Like work on my anti-spam-bot, or play VO.


Which reminds me, I never mentioned Vendetta Online here. It's a twitch-based space-fighting online game. They have a native Linux version. The game costs $10 a month unless you buy in bulk, which is about 30% cheaper. But it's pretty fun, so I've been subscribing for the last couple months. They aren't the most realistic space game out there (there are velocity caps, and if you turn off your turbo you actually slow down...) but fun none the less. Runs great in Puppy Linux, assuming you can get your graphics card running properly, which generally isn't very hard. (BTW, if you are anything like me, you will be happy to realize that one of the F keys, I think F7, lets you resize the stupidly large HUD. It looks much more serious after that.)

They do have a free trial too, good for eight hours in-game. Eight hours is plenty of time to get a feel for the game. So if you're looking for a good Linux game to play and willing to subscribe, check it out.

(In case you are one of those poor souls who uses Windows or Mac, I feel obligated to let you know that they do have versions of this for those OSes. Also, they have a Linux AMD64 version too, besides the IA32 version.)
Sunday, October 4, 2009
At long last I've finally finished Multiuser Puppy. I also documented the process for the sake of anybody who wants to go through the same process on another version of Puppy, or otherwise know what I did in great detail.

Haven't touched the drawing as I was busy finishing off the above. Maybe I'll work on it some more tonight. I need to get it done in the near future as it's a bit of a seasonal image...


missing-image: /art/logos/mine/FlaminHotPizza.png