Distributed databases with a near-real-time multi-master configuration – such as BigCouch, coming soon to Apache CouchDB – must deal with the potential of simultaneous modifications of a single resource. While the approach taken by multiple single-machine Apache CouchDB servers using regular HTTP replication is well understood, the situation changes a little bit when dealing with BigCouch-style internal replication inside a cluster.
I think it’s time to have a better understanding of what this means, and what impact this has on you as an application developer. Most of the time, there’s no change – to your app, a BigCouch-style cluster looks and feels like a single Apache CouchDB node. But when making near-simultaneous writes to the same document from different clients, you may experience document conflicts that you wouldn’t have with an Apache CouchDB 1.x single server.
How does this happen? Bear with me – this gets a bit complex. Hopefully this diagram will help.
The IEEE just can’t get it right anymore. For a couple of years I’ve openly derided their their laughable policy on open access publishing that requires you to prove your grant requires a Creative Commons license. Add to that the fact that at least since 1997, you can’t be an IEEE member in the US without funding the part of IEEE that works actively to destroy all technology H-1B visas, and most importantly their handover of email services to Google Mail in June 2013, and I’m at my breaking point.
I’m officially dropping my email@example.com email alias that has served me since the service was introduced in the early 1990s.
I really liked having a stable email address. When it was first set up, email to it ended up at a VME-based Sun 4/260. But the convenience of 20 years of the same address is nowhere near as important to me as not supporting the policies of the IEEE any longer.
I am paying my membership dues one last year – through 2014 – to give everyone ample time to get used to the new address, [wohali at-mark this website's address]. Any personal email to the IEEE alias will be responded to with a Reply-To at my new address. After Dec 31, 2014, firstname.lastname@example.org will no longer work.
I’ve owned my Kurzweil K2500SWx since shortly after it was released in the summer of 1998. It’s always been my primary controller keyboard for the studio, usually sitting between the monitor and the computer keyboard tray. When I lived in Japan for two years, it was the only synth to come with me; the rest went into deep storage or were loaned to friends. I find its VAST architecture very flexible, and it’s still nice to have a hardware sampler, even if it’s limited to 16-bit 48kHz.
Waynemanor Studios 2.0, circa May 2010.
So it’s no surprise that it’s had a few mishaps over the years. And while Sweetwater graciously offers “lifetime free technical support,” there’s the hassle of shipping the unit across an international border, and the scarcity of parts to deal with.
This holiday weekend I fixed 4 nagging problems: a digital jitter, a failed front-panel button, failed aftertouch and a fading front-panel display. Here’s how, since it took me a while to research and maybe you’ll need to do it yourself someday.
A friend recently told me he thought I was upset with him because I “defriended” him on Facebook. Remembering similar drama that came with LiveJournal’s friend system, I wanted to post this picture:
I deactivated my Facebook account a few years ago. (I needed to cut down distractions in my life and focus on being productive; it’s not a slam on the service at all.)
About a year ago, much to my surprise, someone hacked back into that account from an iPhone somewhere in California and spammed the former list of “friends.” When that happened, I recovered my password, logged back in and filed a formal account deletion with Facebook. I then did the same with my old LiveJournal account.
So no, friends, I didn’t “defriend” you, don’t worry :)
A game I tried out at PAX East 2012, Orion: Dino Beatdown, was just released. While the game felt fairly unpolished on the convention floor, I felt it might be a good (and hopefully cheap!) time-waster for my small group of friendson release – the way we used to take 30 minutes for a few rounds of CounterStrike:Source or Left 4 Dead.
My friend bought the game at release and confirmed my worst fears: it’s buggier than any other initial release he’s seen, including the venerable ArmA series. Other games recently have been released with some bad bugs, but nothing compares to this massive list, provided by my friend LeeT on IRC:
When you run it the first time it does the usual install redist 3rd party stuff. However, the game does not wait for that to finish and launches anyway.
It only randomly saves any key bindings, audio or video options.
80% of the time, it never even populates the server list.
When it does populate the server list, it will often misreport servers as being full.
The server list has clickable headings (map, pop, ping time etc) but doesn’t sort.
Refresh button on the server list does nothing.
If you join a full server (or server it thinks it’s full) it will show you a dialog saying it’s full with 2 buttons (OK and Close) that do the same thing.
The server list has scroll bars that don’t adjust dynamically to the size of the list, so it’s always the same ‘length’
On the off chance that it will let you try to join a server, it will usually crash.
Assuming you get IN to the game:
Lots of crashes to desktop, at random.
Sound effects randomly cut out entirely
There are 3 classes, but if you select auto-select, it will always set you to assault
Balance is off: Wave 1 will be a breeze, wave 2 is like 50 T-rexes.
The maps are huge, but the waves are fast and intense so there’s no reason to move from base.
In the base, there are objects (equipment stations, etc.) that you can walk right through – no collision.
Part of the mechanic is each base has its own generators (out in the open?) and the dinos try to eat them. However, only the raptors will attack them.
Dinos clilp halfway into buildings when they’re trying to eat you (and if you’re too close, yes they will attack you, through the wall, and vice versa)
Sometimes the hordes of T-rexes etc, will suddenly just wander off for a while (they eventually come back). Bored, I guess?
The flying dinos (Pterodactyl things, but they look different) occasionally fly backwards, hover, etc.
Vehicles can climb trees
AI pathing is beyond broken.
The raptors usually jump when they attack you; for hilarity, stand at the edge of a base door opening and watch them try to jump through it
If you die, you go into spectator mode and everything is at a 1960s Batman 45 degree angle.
When dinos die, they make a human ‘uhh’ sound
You’re also supposed to re0spawn at the next wave but that doesn’t work either
And the truly ugly:
It shipped with parts of the Unreal SDK that are not supposed to be redistributed (MakeISO, ”ExampleGame.exe”, etc)
If you think that’s bad, it shipped with Maya and Max tool scripts too!
Bits of artwork assets (for dinos, equipment and achivements) were allegedly stolen from deviantart and other games. (N.B. They’re supposedly being replaced in today’s “miracle patch.”)
The official Spiral Game Studios explanation for all of this is “a game directory name was changed resulting in some links and connectivity breaking.” No comment.
I keep forgetting to post this story from February 2009.
My friends and I were on a small trip to central Italy (Umbria). We were staying in a small villa in the middle of nowhere, by ourselves, and making day trips to various nearby towns to explore whatever they had to offer.
One bright day, we were wandering the sloped streets of Spoleto on a Saturday when we happened across a cute cat outside of an art/framing shop:
She pranced back and forth, demanding attention. Each of us in turn gave her a scritch, which she accepted proudly before moving down the line to the next person.
During this action, we attracted the notice of the shop owner, who had been sorting his collection lazily. I looked up and noticed he was looking at us petting the kitty, realizing it was either his, or one he at least looked after regularly.
He put down his framed poster, smiled the largest smile I’d seen that trip (and there had been many!) and shouted two words through the panes of glass at us to our endless amusement:
Wish I had a better picture, but what a facial shape and markings! Good memories.