Ubuntu 8.04 LTS: Hardy Heron
The Hardy release is almost upon us! For those of you not in the know — oh who am I kidding, everyone’s heard of Ubuntu at this point. Well, if you haven’t, it’s a Linux distribution based on Debian. It adheres to the principles of usability and user-friendliness.
My first foray into Linux was messy. I tried Gentoo some time ago, and could not get it to install despite numerous attempts and expert assistance. For a long time, it’s been plagued on the desktop by niche-itis. This has all changed, however, and at this point I could probably convince my grandmother to use it.
I downloaded the Hardy beta (almost release-ready) yesterday and installed it, all in an incredibly easy manner (I just had to start the Update Manager from the console so I could add the flag to download pre-release distro upgrades). Apparently the Update Manager will automatically offer the next release. This, I must say, is 1000x simpler than Windows.
And one really must understand the depth of these updates. Every six months, Ubuntu takes a leap that took Windows seven years to accomplish. It’s absolutely amazing what Canonical, the Debian project, and all the independent developers have created with Ubuntu.
Today I feel a bit stunned. After my first attempt with Gentoo, I said to myself “This isn’t ready for most people yet.” I decided it was probably always going to be like that.
A few years later, when Ubuntu made its first release, I started to wonder. It was getting fantastic press. Suddenly I had a picture in my mind that by 2010, some distribution of Linux, probably Ubuntu, would be in the same category as OS X.
And here we are, four months into 2008, and it’s rapidly becoming the case. At school, I probably see more Linux-running laptops than Macbooks, although Windows still dominates.
We’re at a juncture here where OS X is great, but is very difficult to run on anything other than a Mac .. and still costs $200. Windows, on the other hand, as surged to around $500 and Vista’s problems are nothing short of world-renown. There is no more opportune place for Linux to suddenly thrive in the market of the affordable.
And all of a sudden, we have not one, but two Linux-based mobile phone platforms battling for dominance in the next generation of mobile devices. Windows Mobile has been utterly dethroned in an instant, its clunky interface, sluggish API, and nightmare-inducing distribution system (an utter lack thereof) stand in sharp contrast to the sleek interface, fluid responses, and (soon) free SDK of the iPhone… and Android stands to wipe even that off the map if the OHA plays its cards right.
And then there’s the Eee PC and a host of mobile internet devices (MIDs) running various flavors of Linux.
We have truly arrived ahead of schedule. I’m psyched about Hardy, and have set up a countdown banner in the sidebar to hopefully draw someone’s attention. If your interest is piqued, why not take it for a spin?
(In your DVD tray, I mean. ^^)
No commentsWorld of Warcraft: Revisited
A few days ago my good friend from the East coast got me interested in World of Warcraft again — in private servers, specifically. I’ve been spending a bit of my free time in those areas, and I must say the experience is quite interesting.
The servers run the gamut from the “harder than Blizzard” lot, to the “Blizz-like”, clear up to the “level 80 upon first login, every item in the game for free, and more than enough Talent points to max out all three trees” variety.
Thus far my favorite servers are one “Funserver” which has drop/xp rates of like 60x/40x compared to Blizzard’s, which I like for playing around with character ideas, and the one I actually play “seriously” on, which is something like 10x Blizzard’s rates. Even with this considerably smaller multiplicand, the outcome is still pretty near to ridiculous — aforementioned friend (see first paragraph) gave me 10,000 gold, and said he had about 90,000 more where that had come from. Apparently it “accumulates”
Indeed, I found myself gathering my first gold around level 7 due to the 10x multiplier on coin drops. This server feels like a good compromise between random insanity and Blizzard’s harsh regime… I think a server balanced a bit closer to the latter would be better, though.
WoWscape is the name of the website that houses the servers, one of the same name, the other three being WoWcrack, WoWlegion, and WoWstorm. WoWcrack is the “Blizz-like + high rate” server I described, the one I like best.
For the truly random, there’s FreeWoW, administered by a different group. It’s an interesting setup in which you start at level 80 in some strange place with tents where scores of NPCs will happily sell you anything and everything in the game for free. And I mean anything — from tailoring supplies and reagents to complete sets of epic armor and weapons with names like “Sun Eater”.
The last few hours of my time were spent trying to coerce WoW to run on my laptop. After getting one unexplained sputter of functionality, it has fallen apart once more. The OpenGL mode has painful rendering glitches with my graphics (Intel 945GM) + the drivers used, and the D3D mode seems to (1) have color problems? and (2) run at like 0.1 FPS. That’s 10 seconds-per-frame.
So I guess wine and WoW aren’t going to play nicely. That’s a shame. Actually, I should rephrase that — wine seems not to be the source of the problem at all. In fact, wine may be the only component which isn’t contributing to the failure. At any rate, the setup seems a failure, which kind of sucks. I was looking forward to being able to explore the multiverse of private WoW servers on my portable computing machine without having to resort to booting into Windows.
I’m considering attempting emulation of the Mac WoW client. I wonder if a MacOS emulation layer even exists for Linux. I can’t imagine it wouldn’t… And if it does exist, would the combination work better than wine?
Probably not. It seems the biggest problem here is the driver for my graphics processor. I wonder if there’s a restricted driver or something…
Anyway, that’s what I’ve been up to!
<3 Katie
No commentsA Fun New Idea
So here’s this cool idea I had today at work. I was toying with the idea of making a VM to interpret a procedural langauge based on XML when I stumbled into it. The idea does use XML, but not for that.
To invoke the idea, imagine an app you might use — a text editor, let’s say. What is it made of? A menu bar and a big text box, probably. Widgets - that’s the point. All your apps are made of widgets of one atomicity or another. But how many of your apps contain another window? Unless it’s one of a shrinking number of MDI apps, that number is probably zero.
I think we’ve been trapped in the idea of windows, trapped in windows literally, as a matter of fact, for too long. I’m not suggesting windows are bad, they’re useful for organizing a bunch of widgets. The borders of application windows, though, have become too hard. Copy and paste is employed regularly to bridge these gaps, and that can only get us so far. Why can’t we have a more robust way of loading up components, gluing them together, saving these as new, more composed applications, and so on?
So that’s what I propose. My idea is fairly simple: the desktop becomes the IDE and the runtime all in one. Components (which are themselves full-fledged applications, even if they don’t do anything useful) are loaded up from their ZIP-based file format and wired together at runtime. These connected lumps can then be saved off as their own components. A huge amount of flexibility exists without typing a single line of code.
My initial idea is to implement this in python using pygame for the visuals, followed by an eventual “sequel” in C++ using SDL directly.
The power of the system comes in how easy it is to create and change applications. It’s important to realize that what I’m suggesting here is not a visual programming language. from what I’ve seen, VPLs always tend to reinvent the wheel with limited success. I think visual programming is going to be the future of the art, but not at the low level we currently think of as programming. Rather, what I’m proposing here is a sort of merger between the desktop and the IDE.
In other words, this could be fun.
No commentsEclipse, Android, and Love
The new Android SDK dropped recently, apparently, and I am stunned by how incredibly easy it is to use, especially with Eclipse. Well, I had some issues getting Eclipse working. It was a breeze to apt-get install eclipse of course, but then that lacked something for one of the two parts of the Android Eclipse plugin.
I spent most of my C++ class today trying to grok operator overloading (and the problems therein inherent) while simultaneously trying to coax Eclipse from one dismal failure to another.
Eventually it took the purging of some gcj nonsense and dumping the web development decked-out version of Eclipse in userland to finally get things rolling. Now it’s working great. Really loving this IDE.
Android is the kind of thing I wish Microsoft were into. I mean, really, it’s fast, it’s slick, it’s really, really easy to code for, it’s totally open… It makes me cringe at my Windows Mobile phone.
I do so hope Android will support my device when it ships. That would be so awesome.
On love, well, it’s Valentine’s day. I wonder if Tabby will finally get back in touch with me today… *sigh*
Anyway, I love all of you who actually read this, which I think is just Gog… ^^ Still, it’s nice to know at least one person cares enough to read it. =)
I don’t think of Valentine’s as a meaningless holiday (inasmuch as any holiday has meaning at all, which is to say to a very limited degree), but the way it gets treated by TV advertisements is just horrifying. “Give your love the gift of a hideous red cell phone with a two year contract glued onto it”, nice. Or how about “hypnotize her with this jewelry (so shiny!) and get what you really want (wink, nudge)”. Ugh.
Anway, yeah, Eclipse is probably my new favorite IDE, and Android is the most amazing piece of Google genius yet. This is why open is better than closed. It took Microsoft years to develop WindowsCE and its implementations (like Windows Mobile) to their current, crappy state, because they had to start from int main.
With open source, you can just import basically.everything.* and surpass all that work in a few months. If you haven’t checked out Android, do it! If you know Java atop that, what’s wrong with you? Go write Hello Android in thirty seconds and you’ll see what I mean!
The various videos on YouTube (there is a massive dearth, only like four exist) are informative too. User: androiddevelopers.
1 commentThe Grid vs. The Web - A Side-By-Side Comparison
I mentioned the similarities between SL and the web in my last post, and then made this perhaps insightful document showing some of the similarities as well as the distinctions in those similarities. As a side note, it’s worth mentioning that LSL and JavaScript are quite similar to each other. Even though LSL is compiled and JavaScript is interpreted, and LSL is strictly state-procedural while JavaScript is object-oriented, they’re both ridden with hideous hacks!
Click the thumbnail to view the full-sized image.
No commentsSecond Life is a big deal. Deal with it.
You can judge a lot about someone by the way they stand out in a crowd (or fail to). In the case of Second Life, I think you can judge a lot about it by the way it stands out in this tag cloud, found on 3pointd.
When your moniker is dwarfing things like “MySpace”, “Microsoft”, and even “religion“, you have something good going.
Second Life just recently released its new 1.19 viewer. Some people are complaining, as is usually the case, and I’m sure it has some bugs, but no major ones have manifested on my installation. They changed the interface around yet again, so I’ve devised this theory (read: crazy idea) that by the end of the month, we’ll be forced to employ a complicated combination of keyboard shortcuts and Farsi speech recognition to navigate our beloved metaverse.
Second Life gets a lot of bad press, for typically valid reasons, being buggy and unstable, and so forth. Well, Second Life may no longer be “beta” as a platform, but it is as a concept. It’s the first thing of its kind really, and to expect perfection in something which has never been done before is expecting a bit much. Compare the first MMOs (such as UO, in its early days) to modern ones like World of Warcraft, and you can draw a similar parallel I think.
Second Life really is precious to me, as one of few places I can be and do whatever I please and actually look normal doing it. In the real world, it would be a lot less common to talk to a doe who is programming a mancala board. In reality, not only do deer not vocalize in human languages, but wooden objects cannot be programmed.
First Life always seems rather drab when compared to Second Life. The one time I went to a ren faire, I think I came close to wandering through a FL version of SL. If only apparent chaos were common behavior, maybe the world wouldn’t have all the problems it does. These problems tend to arise, after all, as the result of cohesion and agreement, which is a little shocking to think about - that chaos may be the only way to attain order.
In any case, the only thing that even rivals Second Life in that cloud is “virtual worlds”. Comparing the gigantic “Second Life” to the almost invisible “There.com” and “imvu” (half cut off at the top) is probably another good illustration of its sheer dominance and power. I’d like to see what happens when Metaplace becomes more real (it’s currently in a closed alpha, it seems), but I’m not expecting it to dislodge SL. The two platforms seem to have entirely different goals.
Anyway, time will tell, but I’d like people to take a longer look at SL before they bash it. Sure it has problems, but it also has promise, and even now, it has the potency to retain a tremendous following despite its shortcomings. Honestly the biggest thing that upsets me is people calling it a game, and that’s not even upsetting simply because SL is not a game any more than the web is a game, but rather it’s upsetting because it leads game reviewers to review it, and they inevitably say things like “It’s boring and dull and has no goals”… Duh! It’s not a game! It’s the web! in 3D! That’s all it was ever meant to be!
There are games *in* it, much as there are games on the web, but they tend to be less interesting than the sorts of games game reviewers review (similar, again, to web games). The first step to understanding SL is knowing what it is not. It is not a game. The second step, naturally, is to understand what it is. It is a 3D content delivery platform, which can be contorted and twisted into basically any usage, much as the web is a 2D content delivery platform, which can be contorted and twisted into basically any usage (compare some random websites and you can easily see what I mean: Google, Amazon, MySpace, and Wikipedia for example)… and it is a very, very big deal.
No commentsemo and more
Last few days have been a weird time crunch. I did two calculus assignments in the wrong order, thoroughly confusing myself. Now that I’ve figured that out, I have to fix them. By tomorrow morning.
Yesterday was spent on math class, Java homework, C++ homework, and Java class, followed by much-needed sleep. Plus I finally got to head over to my dad’s apartment and get a copy of the key. Yay. Now I have a sane place to do homework, maybe. Woo! =D
Second Life
My Second Life has gotten interesting, to say the least. I’ve been working on this Oasis stuff while struggling with the fact that I haven’t seen my mate for um… two months. I guess that’s over. That hurt really bad for a while, and it was all I could do just to get the basics of living accomplished, so my webcomic project exploded and I didn’t even update this blog. Wow.
Not tha anyone reads it. But it feels therapeutic to get this stuff out there.
On the lighter side, I’ve been working on a mancala board. It’s primmy (ninety-something prims) and I have no idea how I’m going to code the arrangement of a dozen or more seeds in one pit, but it too seems therapeutic. I love mancala games, specifically the two major ones that use a 2×6 board (kalah, commonly (and mistakenly) called simply “mancala” in the US, and oware, the more official tournament-class game).
The game rules are really simple, it’s the positioning of numerous prim seeds in the pits that is going to challenge me. Still, I have a pretty good idea of how to do it without too much headache…
First Life
Work is crazy, I’m doing about ten thousand new things and the company is going through the losing side of an acquisition with Bank of America. Yuo might have heard of it. Or maybe you live in Uganda, where the goings-on of American companies aren’t really relevant. Or perhaps you live in a cave.
Wherever you live, you have probably heard that Obama is not as far ahead of Hillary as I would like. Imagine Hillary at the bottom of a ditch, on fire, and Obama standing on a mountaintop while people make golden statues of him. That’s a more appropriate distance I’d say. I don’t know how my own state managed to vote for Hillary on Super Tuesday. Not that either candidate wouldn’t be a heck of a lot better than McCain, and even that douchebag would be better than our current “leadership”, but when you have a shot at the gold you do not settle for the bronze!
I just compared Obama to gold twice, and I don’t even like gold. I much prefer silver, but it just doesn’t fit the description. Oh well.
Emo
No, I’m not going to start wearing ties as though they were belts and talking about cutting myself, seriously. I have, however, come up with an esoteric programming language called “emo” with depressing syntax. For example, my take on an emo “Hello World”:
i miss stdio :( stdout...write um "goodbye cruel world" meh :(
As you can see, that’s very emo. It uses “:(” to end lines (like “;” in C++, C, Java, and many other languages) and the import statement is “i miss <x>“. More subtle (but very emo) features include the use of “um…meh” instead of parentheses, the standard dot operator (”.”) being replaced by an elipsis (”…”), and various things not shown in this snippet, such as “true” and “false” being replaced with “eh” and “nah”, types having emo-themed names, and exceptions being treated like suicide attempts!
I’ll give a longer update on emo later. Right now, I need to talk my application out of slitting its wrists. ~groan~
1 commentAdventures in (Mis)Communication
Indecipherable spam is nothing new, but at some point, they must realize their advertising is being wasted. Examine the following:
hello Fennecfanatic its free FriedWoman. comtows navipendulum inducers overliver obvallate subfeudation shillety verticilliose truthless baselard midrash halls lepidopteron hangout ampoules knudsen daube immovabilities anterofrontal aminoacetal misunderstandings
I see a cottage cheese company in there, a chemistry term, and a very general term for things which cannot be transported.
Whatever their message is supposed to be, it is totally lost on me. The *subject*, however, was pornographic. So at least that much is clear. Right? Right.
Dumbasses.
No commentsNew Oasis Standards
I’m going to take another shot at doing the SL scripting-based business thing, and as part of that I have started the Oasis Component Library (OCL), which communicates over the Oasis Component Interface (OCI), using Link Message IDs (LMIDs) and Squished List Format (SLF). I’m going to explain all of these. Promise!
OCL
This is simply the collection of OCI-structured modules I’ll be working on. I will probably have a website established for this at some point which will also allow people to share their own OCI modules.
OCI
The OCI protocol is pretty simple. Communication is done over link messages, although I’m already working on components for “tunneling” calls over chat. I suspect email will come next. An OCI component receives calls in the form of a list in SLF. The first parameter must be a string, which is the call type, and the parameters that follow it are of an order, type, and number defined by the specification. This specification is supposed to be attainable by calling a reserved “oci::info” call, but I haven’t worked out the details of that yet.
The sender, num, and id parameters of the link_message event are to be returned unchanged. It is recommended that a response to a call C be named re-C, but this is not a requirement.
Call names are case sensitive.
The string parameter of the link_message event is used to transmit the call in SLF format as described earlier.
The id parameter is used to pass a LMID, which is simply a random UUID assigned to the component. The component ignores any link messages which do not pass its LMID in the id parameter, which ensures it won’t accidently be called by some other chatter.
SLF
Squished List Format is my most recent specification. Up until I realized the LL CSV functions had some serious drawbacks, I was using those. The SLF format is best described thusly:
A SLF string is a list encoded in a string. It contains type annotations and permits the delimiter (~) to occur in strings contained in it. It is composed of any number of cells, which begin with a type symbol and end with an unescaped ~. (Note: this means a SLF string MUST end with a “~”.) Tildes (~) are escaped with backticks (`), so a literal tilde is encoded as “`~”. Similarly, a literal backtick is ““”.
The type symbols are “@” for rotation, “#” for integer, “$” for string, “%” for float, “^” for vector, and “&” for key. An example: The LSL list [1, 2.0, “three”, <4, 5, 6>, <7, 8, 9, 10>] encoded as an SLF string is: #1~%2.0~$three~^<4, 5, 6>~@<7, 8, 9, 10>~
My OCL template file contains definitions of two functions which can be used to convert back and forth between lists and SLF strings:
- string squish( list );
- list unsquish( string );
Coming up next: the Interface Description Language (IDL) and ideas for other oci::* calls!
No commentsTales of the Sea
In my never-ending love of all things nautical, I’ve come to an idea for a story.
Fleeing from privateers, a female pirate captain runs aground in an archipelago inhabited by merfolk. In exchange for repairing her vessel, the merfolk beseech her to help them fight off their aquatic enemies, a different race of merfolk. Stir in a little subtextual doubly-forbidden romance, and I’ve got something with a lot of possibility on my table.
No comments