Update: I wasn't expecting that (ep 6) but truthfully, it's the only thing in the show so far that survives the refrigerator test. Of course there'd be something like that.
Update: Odd little show, very uneven, but worth a look. What is with that clock, though?
Update: Only two episodes left to go? That might work out just right.
Update: I haven't found the original that they modeled the clock on, but:
Yeah, it's real. Yeesh, the places people choose to live.
1
Are you watching anything else this season? I have been watching Durara!!, Katanagatari (coming out monthly, each episode is 50 minutes), and a couple of others.
Posted by: Penfold at Thursday, March 11 2010 07:26 AM (1PeEC)
2
So far just Sora no Woto, Hanamaru Kindergarten, and Hidamari Sketch. Oh, and Kimi ni Todoke, continued from last season.
Posted by: Pixy Misa at Thursday, March 11 2010 10:54 AM (PiXy!)
3
I am watching Kimi ni Todoke as well, I like it, a bit slow paced (which I think is intended), but it is no Toradora! Haven't watched Hanamaru Kindergarten or Hidamari Sketch.
Posted by: Penfold at Friday, March 12 2010 03:03 AM (1PeEC)
4Hanamaru Kindergarten is a nice show; not amazing, but worth a look..
Hidamari Sketch, though, is just wonderful, all three seasons of it. Very highly recommended.
Posted by: Pixy Misa at Friday, March 12 2010 09:22 AM (PiXy!)
Okay, my auditory frequency response isn't shot. I can still hear up to about 17.5kHz, which is not much short of the 19kHz or so I could hear as a teenager.
Next time I test my hearing, though, I'll turn the volume down first.
1
Not me; I couldn't hear anything even when the sweep reached 12 KHz. I guess that's yet another indication that I'm old.
Posted by: Steven Den Beste at Monday, March 08 2010 02:01 AM (+rSRq)
2
I was surprised, I was expecting to be down below 15kHz (normal range for over-forties).
On the other hand, my knees hurt.
Posted by: Pixy Misa at Monday, March 08 2010 02:19 AM (PiXy!)
3
I have teenage normal hearing in my left ear, which is great for someone about to turn 42. I'm literally half-deaf in my right ear.
Eight years of working in the radio biz, and 14 years of theater is to blame. I wore headphones/headsets all that time, and I always made sure I had one ear uncovered to hear what was going on around me. As every theater I was in had the stage manager to the left of the lighting control board, that was the ear that was uncovered. In my first radio booth, the door was on the left, so I left one uncovered and carried on doing so through the years.
So... deef.
Posted by: Wonderduck at Monday, March 08 2010 12:57 PM (mfPs/)
Update: One of the great things about being caught up with Kimi ni Todoke is that I can also catch up on That's absurdly awesome episode-by-episode reviews. DO NOT READ BEFORE WATCHING RELEVANT EPISODES. If you have watched relevant episodes, start here. If you have not watched relevant episodes, watch relevant episodes, then start
here. The fact that they refer to SPOILER as Vichy-tan is perfection.
1
KnT is pretty amazing, but I gave up on it after about 10 episodes. Dunno why.
Posted by: Pete Zaitcev at Sunday, March 07 2010 05:23 PM (/ppBw)
2
That's just where I got stuck at first too. The story gets bogged down for a couple of episodes around ep 9/10. But things pick up again just after that.
Posted by: Pixy Misa at Sunday, March 07 2010 06:29 PM (PiXy!)
3
I'm following spoilers at Sea Slugs, which seems better than the real thing.
Posted by: Pete Zaitcev at Monday, March 08 2010 04:11 AM (/ppBw)
4
I took a look at the Sea Slugs reviews and didn't think much of them - and I usually like Sea Slugs. That's reviews, on the other hand, are a work of art.
Posted by: Pixy Misa at Monday, March 08 2010 09:06 AM (PiXy!)
Asus almost make a really brilliant little server motherboard, the P7F-E.
I say almost, because it's full of zombies.
See that third ethernet port on the back? It's for remote management - KVM-over-IP. Except that it doesn't actually work unless you add a KVM-over-IP card.
Those eight extra SATA ports? Brilliant! Except that they don't actually work unless you add an eight-port RAID controller. Which, coincidentally, costs more than the motherboard.
Zombie I/O ports. I hate zombie I/O ports.
Update: The same goes for the Z8PE-12DX, which I was going to order for my day job. Now I'll need to budget for a RAID controller as well.
1
Whoa! Recently, I bought Asus computer along with cocktail dresses. My friend told me that Asus is the best. I am not a techie in terms of computer but I need to have this as part of the requirements in out school. I hope that I will not encounter any problems about my new PC. Thanks!
Posted by: Dresses at Friday, March 12 2010 05:00 PM (LyBt6)
They've stopped making the PC-V600, the best small computer case I've ever used. All four of my desktop machines (Haruhi, Yurie, Nagi and Tanarotte) are in these cases, silver for the Windows boxes, black for Linux.
I ordered another two of them while they're still in stock, one of each colour. If I ever end up with more than six desktop machines running, I'll have worse problems to deal with than mismatching cases...
I discovered the discontinuation while shopping around for a decent midi-tower server case, something that seems to be almost extinct. Why the hell do manufactures manufacture cases with 7 5.25" bays and 2 3.5"? Who actually uses 7 DVD drives at once? I'm looking at colocating a small server at a budget colo facility, and it's cheaper and easier to build a tower box than a rack mount one, and costs no more to host.
I did find one case that suits my needs - the Fractal Design Define R2. It has eight 3.5" drive bays behind two 120mm fans (which is far more than the V600's 3 bays, with another 3 via an optional converter that fits 3x3.5" drives into 2x5.25" bays) and room for another 5 120mm fans in various locations. And it's available in three colours. In case I want to run yet another operating system, I guess.
I read about this case several years ago on an AVSForum thread on building monstrously large media file servers. Ah, here's a recent version of the guide... Some people propose building a DAS with these and several port multipliers. The latest version of the guide uses cheaper but less dense cases, the various editions of this guide are useful for ideas *grin*.
Posted by: Kayle at Saturday, March 06 2010 10:43 PM (TDlSn)
Toshiba Australia, You Still Suck, Though Objectively, At Least, Not As Much As You Did Last Month
Subjectively, however, I'm even more annoyed than before.
There's now a model of their neat little T110 notebook available in Australia for $699, much more in line with pricing elsewhere in the world. It has an AMD rather than an Intel chip, but I'm fine with that.
But it's the single core model. The dual core model available elsewhere is only slightly more expensive, has only slightly shorter batter life - and is twice as powerful.
But we don't get that one.
Grrr.
Posted by: Pixy Misa at
01:02 AM
| No Comments
| Add Comment
| Trackbacks (Suck)
Post contains 100 words, total size 1 kb.
Wednesday, March 03
Three Minutes And Fifty Three Seconds Of My Life That I'll Never Get Back
And for once I'm totally fine with that.
Click on it and go to YouTube for versions up to 1080p.
the question is whether they stitched together pieces of multiple takes, which seems likely. If I were ambitious, I'd look at it again and see if the paint stains on the men change as they show up again and again. I bet they do.
Posted by: Steven Den Beste at Thursday, March 04 2010 02:52 PM (+rSRq)
4
You can see piles of broken TVs and at least one broken piano in the background, so I'd say they had a few runs through.
Posted by: Pixy Misa at Thursday, March 04 2010 04:29 PM (PiXy!)
I have 800 arrays of about 5000 integers each that I need to combine into an array of about 4 million integers. I don't care about the order or anything, I just want one big array.
PHP had used 8 minutes of CPU time and 1.2GB of RAM when I shot it through the head.
1
Feed the sauerkraut to the crazed starving weasels. The sauerkraut goes away, the crazed weasels are no longer starving, problem solved.
Alternatively, cook the weasels with sauerkraut in the pan, then eat the cooked weasels and throw away everything else. I'd suggest putting them on a hot dog bun, and use lots of mustard.
Posted by: Wonderduck at Sunday, February 28 2010 06:48 AM (mfPs/)
2
Well, his mom did force feed him nothing but sauerkraut until he was 26 and a half years old.
Though the dozen crazed starving weasels (from a donut shop, if I remember) weren't good in the short term, he did meet the girl of his dreams while those weasels were latched to his face...
Too bad she wanted to join the Columbia Record Club. He was just not ready for that kind of commitment. Just the way things go, you know?
Posted by: nick at Monday, March 01 2010 11:25 AM (ZrgA+)
"PITA" can be read two ways. It's a kind of unleavened bread used for certain yummy sandwiches.
But it's also an acronym for "pain in the ass". You really sure you want your program to be called that?
Posted by: Steven Den Beste at Friday, February 26 2010 03:01 AM (+rSRq)
2
Where can I read about any of them? In particular, any whitepapers or API specs for Moca if I were to compare it with Hail? I'm afraid you just code all the time and never document any of it.
Posted by: Pete Zaitcev at Friday, February 26 2010 03:31 AM (/ppBw)
3
Moca is just in the planning stages at the moment. But you're absolutely right that I need to do more documentation.
Steven - yeah, it's called Pita for two reasons. The other slogan is "Pita - databases without the pain".
Posted by: Pixy Misa at Friday, February 26 2010 10:10 AM (PiXy!)
4
I automatically think about any application for or intersection with Hail whenever I see something cloudy. In Hail I'm responsible for implementing the S3-compatible, redunand and replicated data store.
Posted by: Pete Zaitcev at Saturday, February 27 2010 06:30 PM (/ppBw)
(Click for full screenshot. Thanks go to Steam and GOG's insane holiday sales.)
Actually, I'm not; I'm doing work for my day job, making some progress with Pita, reorganising Meta, and have finally come to a design decision on Miko (all parts of the Minx project for those who haven't been paying attention), redoing the documentation in Sphinx - which will itself be supported in an upcoming version of Meta - and planning for this year's server upgrade.* I did play a bit of Dragon Age over the holidays, but games are taking a back seat for a while.** Despite the fact that I have 224 of them currently installed.
* If things go right we'll be moving from a lowly 8-processor (16-thread) 2.26GHz server with 24GB of RAM to a spiffy new 12-processor (24-thread) 2.66GHz server with 48GB of RAM. That's at least partly to prepare for the move to Pita, which loves to store stuff in memory. Because I can just copy the OpenVZ virtual machines across, the move should be quick and painless.
Posted by: Avatar_exADV at Thursday, February 25 2010 10:25 AM (pWQz4)
2
Turtle not have r00t. Me no do r00t. Me go make own baby village. Baby village not have anything, r00t no longer issue.
Posted by: Pixy Misa at Thursday, February 25 2010 11:26 AM (PiXy!)
3
Well, you shouldn't have any problem getting Brick or Duck or myself to come with. One more and the village is big enough to start getting wandering genin. Not that a few more wouldn't hurt...
Posted by: Avatar_exADV at Friday, February 26 2010 10:26 AM (pWQz4)
4
While I'd hate to abandon Turtle, if Papa Pixy builds it, I will come. Maybe I'll make an alt to fill in at the Shell.
Posted by: Wonderduck at Friday, February 26 2010 01:56 PM (mfPs/)
5
I've got a character in Turtle to play with you guys in the first place. It doesn't have a great appeal other than that. ('course, my main's in an IR and should loop to S10 tomorrow...)
Posted by: Avatar_exADV at Saturday, February 27 2010 09:00 AM (pWQz4)
6
Turtle has been accumulating upgrades pretty rapidly of late. I have an alt in one of the big villages, but it's nice to see your village grow.
Posted by: Pixy Misa at Saturday, February 27 2010 10:22 AM (PiXy!)
1
Now that I knew GA, Hidamari just does not measure up. Yet it goes for the 3rd season. Remember J.Greely on DearS vs Girls Bravo?
Posted by: Pete Zaitcev at Sunday, February 21 2010 05:27 AM (/ppBw)
2
Here's the thing, Pete: most people, and apparently most viewers, don't agree with you. Sorry to be blunt about it, but HidaSketch is much more popular because it's a better show than GA. Better characters, better humor, better animation, better writing, better story, better design... but, to be fair, GA does teach you more about art.
Oh, and Sketchbook is better than GA, too. But, hey, keep protesting, man... fight the power and all that.
Posted by: Wonderduck at Sunday, February 21 2010 06:36 AM (tm3b1)
3
I bounced off GA, so I can't give an informed opinion other than it didn't catch my attention. But Hidamari is simply a wonderful show. I wasn't sure that they could carry that forward for a third season, but so far it has all the charm of the first two.
As for DearS and Girls Bravo, both of them are terrible.
Posted by: Pixy Misa at Sunday, February 21 2010 12:33 PM (PiXy!)
In SQL* you say select sum(sales) from accounts where state="NY". In Pita, the way to do this is:
results = accounts.aggregate(state='NY')**
which will calculate for you the count, length, sum, minimum and maximum, as appropriate, for all the fields in the table at once, so the value you need is results.sales.sum. Since the table scan is typically slower than any calculations you're likely to be doing, this seems a reasonable approach.
In addition, I've added a
results = accounts.stats()
which provides all those, plus mean,*** median, mode, standard deviation, and geometric and harmonic means. Aaaaand standard error, coefficient of variation, sample and population variance, skewness and kurtosis. I even sort of know what kurtosis is.
I'm working on two more functions now, group and break, though I may need to come up with another name for the latter because break is a Python keyword. This:
for result in accounts.group('state', country='US'): ...
would give you the aggregate sales figures for each state in the US, sensibly enough. And this:
for result in accounts.break('state', country='US'):
...
would give you the individual sales figures, and then automatically provide totals after the last sales record for each state.
As long as I don't come down with kurtosis...
Update: Kang and jag. Or rather, agg and tab. For aggregate and tabulate.
for line in accounts.aggregate('state', country='US'): ...
will give you one summary line for each state, where
for line in accounts.tabulate('state', country='US'):
...
would give you both detail and summary lines. I need to put subtotal and total flags on the records for tabulate. Have to watch the keywords, there. And keep my closet doors closed.
* Boo, hiss!
** Or indeed
results =
accounts(state='NY').aggregate()Either way should perform the same and produce the same results. I think...
*** Which should come out the same as the average; just one I'm calculating myself and the other I'm pulling out of a stats module.
Okay, yeah, they needed that sharpening filter. That's Minx's built-in upscaling. Quality is not so hot, as it turns out. I'll check on what filter it's using; normally it's only used for downscaling, which works great:
Posted by: Pixy Misa at
11:35 AM
| No Comments
| Add Comment
| Trackbacks (Suck)
Post contains 39 words, total size 1 kb.
On the other hand, it's a development platform, not a consumer device; it has two 800x480 touchscreens, HDMI out, and a built-in DLP projector; it has two five-megapixel cameras at front and a twelve-megapixel camera at rear; a dual-core 1.2GHz Arm Cortex A9 (superscalar out-of-order SMP); accelerometer, compass, ambient light, proximity, barometric and temperature sensors; Wifi, Bluetooth, and GPS; and easy and open access to all the electronics, networking, and software.
Tech's slate (from the Accountancy story further down) isn't that much more advanced than this beastie.
EA have just earned themselves brownie points with millions of gamers by re-releasing three of the older Command and Conquer games - Red Alert, Tiberian Dawn, and Tiberian Sun - free.
Get downloading!
Posted by: Pixy Misa at
12:26 AM
| No Comments
| Add Comment
| Trackbacks (Suck)
Post contains 36 words, total size 1 kb.
Sunday, February 14
Oodles Of Noodles
I have a working base storage class for Pita. Unfortunately, most of my weekend was eaten up by my day job and other miscellanea, but it does work.
I'll post the full code later in the week once I have a derived class or two that does something more useful, in the meantime, here's the test code to give you an example of how it's used:
def oodle_test(): # Create a base view pets = Oodle()
# Create some pets log('Creating pets')
# Create a dog, and save it pet = pets.new() pet.animal = 'dog' pet.sound = 'woof' pet.save() log('Dog saved, %s pets' % pets.count(),1)
# Create a cat from a dict, and save it pet = pets.new({'animal': 'cat', 'sound': 'meow'}) pet.save() log('Cat saved, %s pets' % pets.count(),1)
# Append an aardvark pet = pets.append({'animal': 'aardvark', 'sound': 'snorf'}) log('Aardvark appended, %s pets' % pets.count(),1)
# Append a hippopotamus too pet = pets.append(animal = 'hippopotamus', sound = 'hrooonk') log('Hippopotamus appended, %s pets' % pets.count(),1)
# What pets do I have? log('Selecting all pets') for pet in pets.select(): log('My %s says %s' % (pet.animal, pet.sound),1)
# Select and find on fields log('Selecting specific pets') # What does my dog say? for pet in pets.select(animal = 'dog'): log('Selected my %s; it says %s' % (pet.animal, pet.sound),1)
# Can I find my cat? pet = pets.find(animal = 'cat') log('Found my %s; it says %s' % (pet.animal, pet.sound),1)
return pets.count() == 4
The base view class, which has no indexes, no persistence, and no support for sorting, is called an Oodle.
The results of the test?
Creating pets Dog saved, 1 pets Cat saved, 2 pets Aardvark appended, 3 pets Hippopotamus appended, 4 pets Selecting all pets My dog says woof My cat says meow My aardvark says snorf My hippopotamus says hrooonk Selecting specific pets Selected my dog; it says woof Found my cat; it says meow Oodle OK
Update: We've hit version 0.02 wih a successful hash-table implementation. Next up is persistence... And deletes.
Update: 0.03! I deleted my pet hippopotamus!
Update: 0.04! The idiom for pet in pets now works. You can't slice it or select within it yet.
1
So that was what the "noodle incident" was about!
Posted by: Steven Den Beste at Monday, February 15 2010 01:06 AM (+rSRq)
2
I'm guessing for the delete it would be something along the lines of...
if pet.select() = rabid delete
Posted by: Teresa at Monday, February 15 2010 04:00 AM (ZCuP9)
3
In theory, something like pets.select(status = 'rabid').delete() should work right now. I'll add a test to the module to make sure.
Don't want rabid hippopotamuses cluttering up the place!
Posted by: Pixy Misa at Monday, February 15 2010 08:39 AM (PiXy!)
4
Okay, now you can do pets(status = 'rabid').delete() or even pets.delete(status = 'rabid').
Also, you can't call pets.delete() when you meant pet.delete - it would instantly wipe the entire view, so I made that an error.
Posted by: Pixy Misa at Monday, February 15 2010 08:54 AM (PiXy!)
5
If you call pets().delete(), though, you get what's coming to you!
Posted by: Pixy Misa at Monday, February 15 2010 08:55 AM (PiXy!)
6
I hope you wouldn't mind if i add some criticism to your interaction design.
So, why do you need that .new() ?
I prefer a bit more organized approach:
cat = Oodles(...)
or
class Pet(Oodles): pass
cat = Pet(...)
so, why that Rubish .new() ?
And I didn't get, why you need .new() and .append();
Also nobody will remember if they need to use .find or .select.
Django uses .filter() and .get() names for purpose.
Posted by: Yuri Baburov at Wednesday, February 17 2010 06:16 AM (rBboi)
7
Yuri - thanks, I'm definitely open to suggestions on the method calls. This was the result of one evening's work, and I'm sure I'll reorganise things as the codebase builds up. (Which is starting to happen.)
So:
The structure of the database is not fixed at compile time. You can create new views on the fly - and this is the normal way to do things. It's not an OODBMS, it's a document database. That's why I'm not subclassing to build the individual views.
Now, as to the .new() - you have a good point here with regards to expected Pythonicity. But what I'm doing is saying pets = Oodle() to create a collection of pets, and pet = pets.new() to create an item in that collection, not an instance of pets.
I'm using the idiom for pet in pets(species = 'wombat'): ... to iterate over the collection, which would conflict with pet = pets() to create a new item.
.append() is a create-and-commit operation - or .new() and .save() in this case.
I can use .filter() and .get() in place of .select() and .find(). (In fact, select is now redundant.) I haven't worked out the syntax for range matches and full-text searches / regex scans yet, so there's room for some changes there. The difference between the two is that .select() returns a generator, where .find() returns a record.
Posted by: Pixy Misa at Wednesday, February 17 2010 10:30 AM (PiXy!)
8
Just thinking it over, I can use for pet in pets(species = 'wombat') for iterating, and pet = pets['rover'] to look up a unique item - assuming the view is a hash table or has a simple primary key. If not, pet = pets[{'name': 'rover'}] would work, but then you may as well type pet = pets.find(name = 'rover') (or pet = pets.get(name = 'rover'), perhaps).
Posted by: Pixy Misa at Wednesday, February 17 2010 01:24 PM (PiXy!)
That list above is the mee.whatever domains I own. I missed out on mee.tv by a couple of weeks.
I need to add icons for the components of Minx - Minx itself, Meta, the templating language, Miko, the desktop client, Pita, the database wrapper, and Jsyn, the syndication and replication protocol. Oh, and Mili and Mepi, the scripting language and API respectively.
Maybe I could make those round...
Posted by: Pixy Misa at Friday, February 19 2010 05:49 PM (PiXy!)
Idea popped into my head for a story set in the Mina Smith universe. Mina's a customs agent, but this time our protagonist is an accountant. As much an accountant as Mina is a customs agent, anyway.
Just a snippet that I'll likely never finish, but anyway... more...
It kind of reminds me of H. Beam Piper's Paratime Police stuff. Not bad at all.
You wrote this the same week you were trying to write your own SQL language? The Handicapper General's gonna come get you if you're not careful, Harrison.
Posted by: Mitch H. at Tuesday, February 16 2010 03:03 AM (jwKxK)
3
I haven't actually read any Piper in decades. I'm sure there's a germ of an idea or three borrowed from there, as well as the whirling SF cosmos in general. Mina Smith is the protagonist in the original (similarly fragmentary and unpublished) stories I've set in the same universe, but earlier in the timeline, and as I indicated, a customs agent tasked to stamp out paratemporal contraband. If she's not retired by this point, she's probably a very senior figure in the Agency.
There's an awful lot that our accountant friend doesn't know, for all his advanced tech.
It's not a SQL language, though, just a programmatic database with some nice query-by-example features. Intentionally not Turing-complete. Though of course every protocol evolves until it is...
Posted by: Pixy Misa at Tuesday, February 16 2010 03:37 AM (PiXy!)
I can't configure a server on your site with more than 4GB of RAM or SATA drives bigger than 250GB. Last time I checked it was not 2002, so could you please FIX IT?