Short Circuit writes "As I write this, worldipv6launch.org is straining under load, but it looks like there's finally a date for permanent, widespread IPv6 rollout: June 6th, 2012. Participants include the likes of Bing, Yahoo, Comcast, AT&T, Time Warner Cable, Akami, D-Link, Cisco..." Link to Original Source
Where's the bug tracker for Slashdot? I'd like to be able to file bugs and feature requests.
Link to posting journals is difficult to find. At one time, it was nearly impossible to click, because it was part of a page footer that retreated every time you got near it. (The page body was getting filled with more content as one got closer to the bottom.)
List of all my old Journal Entries is difficult to find without already knowing the URL.
Enable SSL by default
Enable "Public Terminal" checkbox by default, or replace with a "Remember me" checkbox like everyone else has.
For some reason, <ul></ul> doesn't work, and I had to switch these lists to <ol></ol>
Offer an explicit programmatic API for managing my user settings, so I can crosspost my blogs to my/. journal, and my 'microblog' statuses to my/. signature.
Support conveniently tying my account to major single-sign-on providers who use OpenID and OAuth. Most places will allow me to click a nice, big icon to automate filling in the needed details.
Support post convenience features most other social networking sites (hey, remember zoo.pl? You were one of the first social networks on the market.) such as post-by-email, importing/exporting posts from/to some other popular sites/common APIs.
While some of the bugs have been fixed already, it'd have been a lot less grating if there was a good, visible way to report them and follow them as they got fixed.
Hey, for anyone who still reads this. Rosetta Code's doing awesome, content-wise, and we're starting to implement Semantic MediaWiki. (To what end? Not sure. I've got a couple ideas, but I'm more an opportunist than a front-end planner.) I've also been shooting a bunch of photos and putting them up online--even photos that aren't cosplay, if you can imagine that. (Which you probably can; I doubt many who read this were following me on Flickr back when I went to Anime Weekend Atlanta for the first time in 2007. If you want to read what I'm really thinking, either follow me on Multiply, or see the same stuff over on LiveJournal--but get your adblock armor up; it's a scary place. I'm also on Twitter, if you really care. I'm a minimal participant, really.
If I show up as a fan for you here, I do read your journals; the My Amigos RSS feed is still useful.
Why this collection of links to me at other places? Easy; I know there are still some of you here who never showed up in those other places, and I miss the interactions. I'd post my blogs here, too, but Slashdot has relegated itself to an incredible degree of backwater status. I was lucky to find the "Write in Journal" link. I'm tempted to find some Perl script to have it suck in blog posts via RSS, and post them to Slashdot. (That's how I'm inducting my blog posts into Facebook, too.)
I miss what this place used to be. I miss the people this place used to have. I still see some of them on two or three other social networks, and some of the bonds there are tighter than they ever were here, but there's still a bunch of you missing.
It's a fast, fast RSS feed, and it's difficult to keep up with. However, I've been trying...A lot of what I've been seeing in it has been giving me genuine inspiration for settings, encounters, props and even campaigns for D&D. That, along with a blog post I recently read where the DM's roleplaying the giggling of some minor monstors got her players greatly and emotionally engaged in the combat. Roleplaying monster sounds? Why didn't I think of that? That could give me something about the combat side of things that I could enjoy.
It's sparked my interest in DMing again, and I'm slowly assembling a campaign in my mind. The next step is finding players and a suitable environment; GrandLAN, for its rich perpetual presence of players, was normally too noisy or cramped for comfortable play. I'm tempted to do hold it in my basement, where I can use my TV and sound system for still imagery and auditory props, but then I've got to worry about who can make it and when.
I still think that a "regularly scheduled" game is a bad approach. You can either count on a schedule, or you can count on the presence of players. Not both. Also, having variable time between games offers more opportunity to prepare and ensure an enjoyable session. I don't have a need to kill time; Like anybody else, I have precious little of that already. I have a desire to enjoy the game.
So on Rosetta Code, we use GeSHi for syntax highlighting. The relationship between Rosetta Code, GeSHi, a programming language and the code written in that language is fairly simple. (The exact order of events inside GeSHi might be slightly different; I haven't delved deeply into its core)
Rosetta Code (by way of a MediaWiki parser extension) gives GeSHi a few pointers about how it wants the code formatted, the language the code sample will be in, and, finally, the code sample itself.
GeSHi takes the code example, and loads the language file named after the language in question. Each language file defines a PHP associative array that contains(among a couple other things) simple rules for how GeSHi can apply formatting to the code in a way that will clarify it to the viewer. These rules include lists of known keywords of various classifications, symbols used for normal commenting conventions and optional regex matching rules for each, among other things.
It's a perfectly reasonable, fairly static approach that allows syntax highlighting to cover a broad variety of languages without knowing how to parse that language's actual syntax, and so avoiding having a syntax error break the whole process.
Unfortunately, it requires Rosetta Code to be able to tell GeSHi what language a code sample is written in. It also leads to odd scenarios where a supported language and an unsupported language are so closely related that examples written for the unsupported language can be comfortably highlighted using the the rules for the supported language.
And I have yet to learn of a good way to do syntax highlighting for Forth. (The Forth developers appear to pretty much keep to their own community, and don't seem to do much in the way of outreach, which makes finding a solution relatively difficult, but I digress...)
So what does this have to do with artificial intelligence? Well, in identifying a language without being told what it is, of course!
A few solutions have been discussed. One approach that has been attempted had something to do with Markov Chains. The code is in the GeSHi repos, and I haven't looked at it.
One solution I suggested was to run the code example through all the supported languages (Yes, I know, that's expensive. Not something to be done in real time.), and select the ruleset based on how many rules(X) were matched for a language and how much of the code sample was identified(Y). Using a simple heuristic of (a*X)/(b*Y), you can account for a number of matched rules while hopefully accounting for an overly-greedy regex rule.
How can we take this a step farther? How about formatting languages we don't know about?
Well, many, many languages have rules in common. Common keywords, common code block identifiers, common symbols for comments, common symbols for quotation, etc. This tends to result from their being derived or inspired in some way by another language. For the sake of avoiding pedantry, I'll just say that C, C++, Perl, Python, PHP, Pascal and Java all have a few common ancestors.
One way would be to note the best N language matches, take an intersection of their common rules, and apply that intersection as its own ruleset. This would certainly work for many of the variants of BASIC out there, as well as specialized variants of common languages like C and low-level ISAs.
I haven't regularly posted to my journal here on Slashdot in a couple years. Meanwhile, I've posted over 1000 blog posts elsewhere, and recently started using simulpost tools to post to several different SN sites I'm on. However, there are still folks here who aren't in those places, and, of course, there's the wonderful world of the Firehose and the exhilarating risk that some of my idle musings might hit the front page. (If I'm averaging almost three posts per day, there's bound to be something interesting in there...)
What I'd like is the ability to post to my Slashdot account using my own script. I remember the Early days of Slashdot where some folks were using third-party clients to participate in the commenting system. It'd be nice if it were possible for us to do that again today, but with journals. It'd be nice for me to be able to reconnect with old friends, and it'd definitely be nice to bring some of that hacker and DIY flavor back to Slashdot. With the exception of folks like Alioth, that piece of Slashdot seems to be all but gone.
So I threw together a few more feeds. Here's the list of all the ones I've got right now:
Bad English: Usages of the English language that annoy me. Currently aggregates searches for "begs the question" and "could care less". Feel free to suggest more; If I like them, I'll add them.
Facepalms and Headdesks: Aggregates searches for the unconventional emotiwords (I don't know a better term; I don't think onomatopoeia) terms "facepalm" and "headdesk". If you have any more along these lines, let me know...
Meme Happy: Currently aggregates "in im ur", "it's over 9000" and "do a barrel roll". I also added a search for '"ours is not to wonder why, ours is but to do or" -die'... Need more memes.
Zero Wing: When I tried to come up with memes for "meme happy", I kept thinking of references to Zero Wing. So that got its own feed.
...Comes from the D&D game I'm *not* runing. My character (A wizard/cleric crossclass) had set alarm spells in case he was attacked in the middle of the night. (His party members didn't really care for him at this point.) When his alarm spells triggered, he discovered that nobody had entered his room. Rather, someone was trying to intrude into the building entrance. (He accidentally set the field of view of his "Eyes of Alarm" spell a bit to broad, I guess.)
Not wanting to spend the five minutes to don his leather armor, I simply said "OK, I put on my robe and wizard hat, and head out into the hall."
At this point, one of the other players started laughing uncontrollably. He and I were apparently the only two who were familiar with the Legend of Bloodninja.
But don't you dare let this hit the front page around here; I don't have the money to pay for better than a bottom-level Slicehost VPS. (Though that's a far sight better than the Dreamhost shared hosting account RC was on when it made its debut around here...)
So tell your friends, fellow coder geeks and language enthusiasts.
And before you say anything, yes, I know there are sites that do similar things. When we hit the front page of Slashdot two years ago, I put all the ones people mentioned into one page.
So in the D&D 4e game I ran last Saturday, the PCs had knocked an NPC (who'd earlier been flippantly addressed by another NPC as "Joe", because he was a spontaneous tavern patron bit character who I didn't intend or expect to be important.) unconscious (0 hp) and laid him on a table. Then they tried blasting open a door, triggering a level 7 Necrotic damage trap. (This is the D&D 4e equivalent to 3e's negative energy.)
The unconscious NPC was within range of the blast, was killed by the necrotic blast...and was pumped sufficiently full of necrotic energy to be brought back as a zombie. Checked the rules on zombies, and discovered they follow the orders of whoever "created" them. Which I ruled to be the PC that blasted the door.
So now that PC has a pet Zombie named Joe, which we're handling as though it were a Ranger's animal companion. He told me the first thing he's going to do is find a way to get the zombie to stop rotting...
#!/usr/bin/perl # Take this perl script and modify its behavior by adding or inserting up to three lines. # You may jump over or skip existing lines, but do not remove or modify them. # Once you've modified it, post your version somewhere.
Short Circuit writes | more than 5 years ago
In my first (and most recent) major campaign as DM ( Which lasted about 7 months until several adjacent working weekends completely broke our scheduling.), I started off by designing a setting, filling a three-ring binder with a couple hundred primary and incidental NPCs (Bulk NPC generators are handy!), and then hitting the ground with the players, a few character concepts and a party concept that made it easy for players to drift in and out.
During the course of play, I discovered that actually planning plot and organization relationships outside of session time was, more often than not, a waste of time. I discovered that players wouldn't pick up plot hints if they were too subtle, and would feel like they were being led around by the nose if the hints were highly visible. Character motivations often led to the PCs behaving in a manner opposite the planned storyline, and they subtly flipped back and forth between good and evil. (Sure, they'll save the community from the evil bad boss. But if a mook in a group they were fighting tries to flee, he'd be killed while he was running away. Prisoners were for interrogation or to be sent back as messengers.) Worst of all, I discovered my players were smarter than I was; I'd think I had all of a character's motivations and connections planned out, and somebody would say at some point, "Wait. That doesn't make sense. If that's the case, then why didn't x do y?" And they'd have a very good point, and I didn't always have an answer in mind.
Eventually, I stopped planning outside the sessions. Heck, for the most part, I stopped planning altogether; The world became whatever the players saw in it. I might listen to the players talk to each other about the NPCs they'd encountered and their suspicions of NPC and in-game organizational activities, and I'd take their concepts, apply them, twist them or subvert them, and have pieces of them slowly appear as the characters investigated further. Or I might listen to a player mutter to themselves about an NPC or scenario, and take a piece of what they're saying and use it. Or I might just watch the characters play out their current situation and think, "Hey, it'd be pretty cool if that [otherwise mundane element] was important," and give it a little extra flavor text; The players' subsequent debate over the element would paint a rough picture of what I could do with it. Within the first couple months of that campaign, I'd largely exhausted the resources in my binder and was laying plot, NPCs and encounters out on an as-needed basis in-session. And it was a lot of fun.
My current campaign, started six weeks ago (and running on an alternating-weekend schedule), began with a puzzle dungeon. I had a vague idea of some of the puzzles I wanted to use in it, including some flavor and concepts for the entrance. The entrance had a rune on it that I had intended as a non-lingual hint to how to solve the first puzzle they would face once they got in the door. Instead, one of the characters saw it, and cast a very expensive comprehend languages spell to understand its meaning. Well, crud; If I told him what it might mean in its original language, it would completely throw their attention in the wrong direction for the puzzle it was supposed to help with. I wanted to get them to use their brains, not frustrate them to boredom and tears.
So I threw out the planned puzzles, gave the rune a meaning, and applied it to opening the front door (Which, while entirely non-magical, and entirely non-mechanical, did require them to think before they got it open. Though one of the PCs nearly got himself crushed in the process.). As for the rest of the puzzles, I made them up on the fly, using the PC's comprehend languages to give one-word clues to how to solve them. And it significantly added to the dungeon, because I was able to tie together the religious themes of the PCs and the dungeon's background, while using the runes to give an atmosphere of religious test.
With these experiences, I've found I prefer this way of creating a campaign; The world and plot are almost as much a mystery to me as to my players, but it's continually revealed to be a rich one built from the fantasies of my players.
First the madness. We had nine people in my group tonight. And I got an unexpected PK.
I'm not going to try to explain the whole session...It was incredibly chaotic, the party split into four active units, and a town was left in ruins. I'll tell you how that went, though...
The first active unit basically waited outside the town. The characters stayed out of trouble, but it meant the players were pretty much sitting there doing nothing for most of the session.
The second active unit was a ghost PC that decided he was going to haunt the (quite occupied) jail. We use the damage-dealing variant for turn undead. He had 12 hit points. The cleric had extra turning. And he failed his check to regen at his body in 1d4 days...So I got a PK because the player was an idiot. (In his defense, he was a 13-year-old kid who'd only been playing for three weeks. But that doesn't mean he wasn't an idiot as a player.) He later told me that what he'd done was incredibly stupid...
The third active unit is a character played by a guy known around here as Jinto Linn (or kilocmdrlinn). He investigated the cliche mysterious old abandoned mansion and found some key plot/quest items, getting torched by a trapped chest in the process. Then he hung out with the first active unit.
The fourth active unit raided the magic/weapons/armor shop in town. They told one of the characters (who was a bit unstable) to set fire to a couple houses at the outside of town, so the police and the mage who ran the shop would get drawn into efforts to put out the fire. That character (controlled by me, because the player was rolling up a more mellow character) went on an arson spree which included burning down the jail. The rest of the unit broke into the shop, set off a couple traps, and made off with a coffin full of loot. So now I have to figure out how much they got away with. And how much of it is traceable.
Incidentally, the coffin was being carried on the back of the party tank. It held the corpse of the ghost (as a place for the ghost to return to after 1d4 days) until they dumped it out and left it in the shop.
Now the logic. The group is splitting. I'm getting at least five of the players, one of my former players is going to run a Shadowrun campaign with at least two of the players, and another player is on the fence as to which campaign he'll go to.
I've got a dirty secret. I prefer playing as DM than as a player. The reason is simple...I don't like waiting.
When I'm a normal player, I have to wait for my turn. Depending on the number and quality of players (and I've been involved in an excessively large group with a few slowpokes in it.), that can be a lot of down time.
As a DM, every turn is my turn. Sure, it's harder; I've got to keep a bunch of people from getting bored, and I've got to fit a plot into the player chaos. I've got my faults as a DM, but I'm getting better at it. And I'm never bored. Frustrated and angry at times, but never bored.:-)
Fepic Ale was first brewed by a gnomish bard with a penchant for alcohol and pranks. His intent was to brew an unassuming alcohol that would reduce the stoutest of men into gibbering idiots. He used it to great effect in performances, daring anyone in his audience to take a pint and remain standing. If nobody took the dare, he would bring out his lovely assistant, who would offer to spend the evening with anyone who could take the pint and still talk intelligibly.
Some took the dare, but many jumped at the opportunity to prove themselves to the lovely assistant. For many years, nobody beat the drink.
However, one day the bard was introducing his new, beautiful and youthful--but legal--assistant to the crowd. Every man in town wanted to try for the young lady. The bard, making eight silver on every pint--and more than a little greedy--modified the wager. If, after two pints, the man was still standing, he would be allowed to spend the whole night with the assistant.
Well, if you flip a coin enough times, it will eventually stop on its edge.
Out of the hundred men who drank Fepic Ale that night, twelve died, eight-seven passed out--and one bear of a man remained standing. True to his word, the bard left his assistant in the hands of the man, who enjoyed himself to no end that night. Meanwhile, the bard, being responsible for the poisoning death of twelve men, fled town.
The next day, the assistant, sore in many ways, but mostly sore at the bard, was arrested by the town's sherrif. In exchange for her freedom, she offered to lead a group of deputies to the bard who concocted Fepic Ale.
They traveled for several days, and eventually caught up with the bard. The young woman was bound to a tree while the deputies confronted the bard. The bard resisted, and was killed in the struggle. The deputies freed the young woman before returning to their own town, leaving her all of the bard's posessions, sans one piece of parchment that had a recipe for an ale on it, which they had burned on the spot.
While she said nothing at the time, the young woman recognized that what they burned wasn't the recipe for Fepic Ale, but for a milder drink the bard had picked up in another town. After searching her new posessions, she discovered the true recipe, hidden in a pouch in the dead bard's clothing.
While the deputies swear they killed the bard and destroyed the recipe, there are occasional rumors of a performer daring and teasing audiences with Fepic Ale in towns small and large alike.
FEPIC ALE: Alcoholic beverege. Fort save DC 25 or be intoxicated. Fort save DC 16 or take 2d4 INT and 2d4 WIS damage.
So one of the PCs has the ability to detect magic at no expense. So he tells me he's going to be continually casting detect magic.
Well, you know me, I don't plan details of my session far in advance. So this poses a problem; It makes random generation of spoils after an encounter impossible. And it raises questions of "well, he was in the tavern with us, I should have detected it then" and other problems of spontaneous backstory generation.
If he's going to poll continuously, I'll throw in some spam...
"Do I detect any magic?" "Yes." "Where is it?" "On the ground below." "What do I see there?" "A broken sword." (I think, "Hah! A useless magic item. That's what you get.") "Well, a sword loses its magic when broken, so it can't be the sword." (Oh shit. Didn't know that. Ok...)
"I take the sword." "You find an anthill." "Is the sword magic?" "No." "Where do I detect magic?" "Where the sword was." "The ants are magic?" "Yes." "Cool! I bottle up some of the ants." "Alright..."
(Grr...I've greated something persistent. Maybe I can get him to drop it...)
Rest of the party continues on, starts leaving PC behind. PC leaves to catch up. They take care of some business, get outside
The rest of the party members go on without them. PC fills his only flask, and catches up with the other party members. Wizard fills a flask, continues. Party beds down for the night, then they move on. After a while, they come across the ant hole again.
PC starts collecting ants again. Wizard comes along, and asks what he's doing. PC indicates that he found magic ants. Wizard goes, "Cool!" and starts filling flasks with them.
PC fills his flask, moves on, and the ants start following him and the wizard. PC catches up with the party, while the wizard obsesses with filling all nine of his flasks, moving backwards ahead of the ants as he does so.
Dusk falls, party beds down. Wizard fills all of his flasks, but notices that the ants are moving toward him quicker, and, now that the light has dimmed enough to see, are even glowing red. Wizard breaks into a hustle in the direction the PCs went. PCs, in their last watch for the night, see the approaching wizard and the red river catching up to him (at almost ten feet per second...these ants get *fast* at night.).
When they see the wizard, they bug out and cross a nearby river. The ants pace them until dawn, when they slow down. Meanwhile, PC did a couple tests and determined that it was the ant-filled flasks that attracted the colony, not any of the PCs themselves.
Dawn breaks, the party reaches town, and the PC starts concocting a plan where the town would become beset by raging magic fire ants that only he knows how to remove. But first, he's going to check with the only magic user in town to see if he can use the lab to convert the ants into some sort of reagent....