Archive for the 'Computers' Category

Patents on Bronze Age Technology

Friday, May 10th, 2013

This here is from Apple’s Slide-to-Unlock patent, which is currently being invalidated.
Slid to Unlock Patent
However, the question remains why this could be granted in the first place. Laziness? A case of “it said computer, so I turned off my brain”? Or job-blindness “I couldn’t find any prior art in the patent database”?

Because the amount of prior art is actually staggering. This here is one of the earliest I could casually find:
 Abydos King List. Temple of Seti I, Abydos
Yes, it’s hieroglyphs, and they’re from roughly 1290 B.C. The topmost hieroglyph is a “z” (or hard “s”), and the symbol is that of a door bolt. And since hieroglyphs are rather old, and Seti I. by no means one of the early pharaohs, this means there’s most probably much older evidence out there for “slide-to-unlock”.

And I’d wager there’s so much more of this crap out there. Chances are very slim that this is an isolated case, this is most probably endemic, system inherent.

Your name is “Windows User” and your scientific Paper is called “Microsoft Word – Untitled1″

Saturday, April 20th, 2013

At least that is what I get from the metadata in your publication.

Google finds about 250’000 of these papers. It gets much worse if you only search for documents called “untitled1″. Not just the documents themselves have this meta-information, but all kinds of conversions, to html, and to pdf as well.

Sometimes, to make the whole thing even more ironic, the publisher has added his own information — but neither the title, nor the author.

Yes, metadata is a kind of a pet issue for me, and I’ve even written about How to Enter EPUB Metadata, apart from also having written Software to fix metadata in PDF- and epub-files (epub-meta/epub-rename and exif-meta/exif-rename. The latter works for PDF; the name comes from exiftool, altough technically the PDF metadata is XMP).

But still, if your paper should be worth anything, it should be worth to be found, and this also means worth being provided with accurate meta-information.

Librarians either work with an ISBN, and if no ISBN can be found (because it was published before 1969, or because no ISBN was ever registered), they need the following to correctly identify a work:

  • Author
  • Title
  • Publishing Year
  • Publisher

So you should take care that at least the first three of those are correctly filled in. If you’re doing a paper or book in the course of your work or study and publish it on the internet, consider entering the university or company as publisher.

Minecraft: Mob Factory

Tuesday, December 18th, 2012

I noticed some time ago that multiple spawners could be active at the same time, as long as the player was within 16 blocks of each of them. However, if too many mobs of the same kind the spawner spawns were within 9x16x16 around the spawner, it would stop spawning after 6 mobs or so.

So in principle, it must be possible to have a lot, maybe 8, spawners, completely with their delivery- and killing-system within a sphere of 16 blocks around the player, all churning out mobs and items. So that’s where I started:

In green you can see the 16 block sphere around where the player would be standing, in yellow are the 9x16x16 areas where no mobs of the same type should be (and consequently, the area any spawned mobs need to leave as soon as possible). The cyan circle is the ground layout, and of no consequence. The spawners along with their spawn-boxes are in brown and in stone. Those structures made of end-stone are elevators and droppers, to the left is one for skeletons, to the right one for cave spiders.

This made for a rather cramped internal layout, with 7 spawners and all the mobs which needed to be lead out, upwards, thrown down, and led to the middle again. Plus the redstone, mostly for lighting. it was a mess, the spider-grinder didn’t really work, for blazes and endermen I hadn’t implemented any automatic system, and I didn’t know where to put them because of lack of space.

Then I watched Etho Plays Minecraft – Episode 234: Egg Delivery where he demonstrated with Minecraft 1.4 items will go up a solid block, if there’s no other space around where they could go. So I redesigned the whole interior. I decided that only blazes would be left to kill for XP, and the other mobs would just get killed as soon as possible, and their items sent up to the central room.

This I did. And I moved the spiders to one side, making space for another spawner, slimes, making it the whole 8 spawners I initially envisioned. Of course, if I hadn’t cared for isolating zombies, creepers and skeletons from each other, it would have been possible to put in more spawners. Probably all of them. So this isn’t as efficient as it could be.

I initially had some problems with the redstone-circuits, but I finally realised that something simpler would do the job just as well. Now it’s only tow clocks, one for the item elevator and one for the grinder, a T-flipflop, also for the grinder, and a pulser, for sweeping out items.

The two mobs posing the biggest problems were blazes and slime. blazes, because they need a light level of 11 or higher in order not to spawn (which I solved with lots of redstone lamps and a smaller spawn-area) and the slimes, which would spawn in any light. I now put half their spawn area under water if spawning is turned off, but small slimes still spawn. For the cave spiders, I just turned the above item elevator into a killing machine, killing spiders and sending up items at the same time.

Right now, I’m still not entirely happy with the blaze-situation, I would like to have them delivered to the central room, so I can kill blazes while I wait for items, but I’ve not yet found a good solution.

Finally, I couldn’t resist to give the thing a facade, and I decided upon a late 19th century industrial look. Half of it is buried in the ground, so this makes the main control room in the middle of the structure easily acessible from ground level:

I call it “The Manufacture”, although it’s of course none. But this fits with the 19th century theme, where factories sometimes still were called manufactures, although the production wasn’t really “handmade” any more. And it works day and night ;):

Level and schematic:

Update:

Minecraft 1.5 is out, and it makes item-handling so much easier. So this is the totally revamped mob factory, now called “Mob Products”, featuring lettering on the roof (idea and font by Etho), and using hopper conveyors, dropper elevators and an item sorter.

No new screenshots, no new level, simply the schematic:

The license of these files and my screenshots is the OPL 1.0 (which is about the same as CC-by-sa).

Minecraft: Medieval/Baroque Town

Sunday, December 2nd, 2012

If you go to Planet Minecraft or mcschematics and look for schematics of levels of towns, you’ll notice something: Just about none of them are. They’re villages with walls and maybe a castle. Rarely, there are some that somehow make sense, like Skycrown (Nothing historically correct in this one, but plausible).

There are, however, cities that look like cites. This Imperial City is simply unbelievable.

But I didn’t want a city, but simply a fortified town for the NPCs. And I wanted a town which looked like it, and not like a village: Neither totally flat, nor with too straight roads, nor one with dispersed single-story buildings — the latter being the defining characteristic of a village. Towns need to be cramped, buildings built in rows and blocks right next to each other, with a small footprint but multiple stories high to maximize real estate.

I decided to go for a rather medieval look in general, with upper stories protruding in front of the building, sometimes with arcades in front of the houses. Also, with firewalls between the houses which are slightly higher than the roofs. Most houses feature a stall/shop behind double doors, and another entrance for entering the workshop and the living quarters.

However, the medieval looks is not drawn trough. Think of a medieval town that was modified in the later centuries, and arrived in the 18th century. Most buildings are still of older types, and only the most modern buildings really have a baroque look. In that case, it’s the city walls, which are already in the model of a star-shaped fortress of the late 17th century, including the gate-tower, the town hall with it’s tower, and the church. The church is actually the uppermost part of this cathedral inspired by the Frauenkirche in Dresden. I won’t include it in the schematic (so I can put the town under a free license), but you’ll notice the big round place at the top of the town — just copy paste in either the cuppola of above cathedral, or something else there. And the lighthouse is actually too modern, these turned up in this form later in the 19th century.

The schematic is a cut-out from my usual map, since the town didn’t lend itself nicely to being placed on flat ground. It’s supposed to be on a hill towards the sea. If you want to set it into its original setting, the world seed is “3327780″ (structures, cheats, no bonus chest, type default). You’ll find the place at +850/+600, southeast of the spawn point. There’s a village there (which in fact, was the base of my town and supplied its population).

Here’s the level and schematic:

The license of these files and my screenshots is the OPL 1.0 (which is about the same as CC-by-sa).

Minecraft: Vaubans Fortress

Tuesday, September 11th, 2012

Vauban was the foremost military engineer of the late 17th and beginning 18th century, and he built dozens of fortresses for Louis XIV. Typical for his art is the star-shaped fortress, which allows fire from one bastion to cover all space in front of a wall or another bastion.

This is my take on such a fortress. It’s loosely based on the fort of Bayonne (high-resolution pictures can be found at Wikimedia Commons: Citadelle de Bayonne), since that one is rather square than pentagonal and so lent itself to easier implementation in Minecraft. Well, easier, not exactly easy.

It measures 260 by 244 blocks. Now it also becomes clear why I needed compact designs of Minecraft Cannons. These go onto the ramparts in numbers. There should be 47 short guns (my “carronade”) and 40 long guns (my cannon mk1 and mk2) on there…

Within the citadel of Bayonne are some not-very inspiring barracks-type buildings, which I initially planned to build as well, but then I found an Isometric view of the Citadel of Bayonne which made clear that I was off anyway, and my fortress wasn’t really Bayonne. So thought what the heck, we’ll go for baroque, all the way, with garrets and an onion-domed tower. I got me some more inspiration in the form of baroque mansions and town halls, and put a mélange of them on there.

And that’s how the whole thing looks, at dusk:

Well, that’s about it, here’s the level and schematic:

The license of these files and my screenshots is the OPL 1.0 (which is about the same as CC-by-sa); the original plan of Bayonne is of course public domain.

The fortress lives best about 6 blocks up from the level ground on some slight hill, that’s why the level has it raised by this (it’s just the hill missing under it). Some small details are unfinished, namely the portal on the other side, and some kind of outer gateway fortification (you’ll notice, the modern one seen in the isometric drawing is quite different than the one on the original plan). It is about half equipped with furniture, as well as half filled with stuff, Most noteably, it’s got several huge powder magazines, The screenshots were taken on my survival map, the dowloadable level is flat.

Update: I updated the level and schematic, the fortress other entrance is now useable, has portals (automatic ones), a towerlet over one of the portals, and some gardening (hedges, fountains and lanternposts) done.

The New Robot Patent

Tuesday, September 11th, 2012

Just like the old Robot Patent (by Emperor Joseph II) this is of course all about rent-seeking.

As we’ve noted in The Moby Dick Support Device, some egregiously stupid patent-officers started accepting patents based on the un-reasoning that a computer running a program makes it a different computer, just as a bookshelf which is used to store copies of Moby Dick is an entirely different thing than an ordinary bookshelf.

Now comes the second chapter, enter the robot. Yes, they’re not doing much right now, but watch the flurry of all-new bogus patents rolling in as soon as they will get more useful. Everyone and their lawyers will start patenting everyday actions, coupled with the phrase “with a robot”.

saulgoode writes at Techdirt:

If the bobble heads at the Patent Office continue on the path they are currently following then we can certainly expect a rush of patents on all kinds of human activity with the caveat of it being done “with a robot” — e.g., dig a hole with a robot, change a tire with a robot, build a swing set with a robot — just as “with a computer” seems to justify patents being issued on things such as getting feedback from a buyer or scrolling through a document.

Ah, Arkham Asylum Patent Offices, home of the criminally insane. How could one ever, with this concise list of non-patentable matters: EPC, Art. 52, come to such a ridiculous interpretation? (Same in the USA, see The Moby Dick Support Device).

Minecraft Cannons

Sunday, September 9th, 2012

In short, for those that didn’t know: It’s possible to build cannons in Minecraft, using TNT as charge, as well as payload. The trick is to detonate the charge TNT earlier, and place the payload in a position where it will be driven away by the explosion. And of course, unless you want your cannon to explode, you’ll need to place the charge into something inert, water will work nicely. Just search for “minecraft cannon” on youtube to see examples.

So these are some cannon designs I did for minecraft. I don’t claim the original idea for them, I just implemented, tried and tested. The reason I did this, was that I needed rather small cannons which wouldn’t look too alien on emplacing them onto the ramparts of a minecraft fortress.

Of course, they all come with schematics for mcedit (another one, not the mcedit from Midnight Commander).

Basic Cannons

These all are very basic. Payload is activated by some delay achieved with repeaters. However, since they’re rather simple, and space was scarce, there isn’t actually enough delay, so these don’t work against targets below the plane of the gun. The payload will just explode in mid-air in that case.

Simple cannon, 5x3x3 blocks

Cannon5x3x3.schematic

Simple cannon, 6x3x3 blocks

Cannon6x3x3.schematic

Simple cannon, 7x3x3 blocks

Cannon7x3x3.schematic

Diagonal cannon, 8x7x3 blocks

Yep, that one shoots diagonally.
DiagonalCannon8x7x3.schematic

Basic Aimable Cannon

The idea heere is to work with two stacks of charges, and to aim by not filling one stack completely. I also tried to make some non-diagonal ones, but I haven’t found a reliable design yet.

Aimable Diagonal Cannon, 8x7x3

AimableDiagonalCannon8x7x3.schematic

Better Cannons

These here are the ones I actually use. They contain enough repeaters to shoot just about anywhere, the main constraint in range seems to be minecraft itself, or rather the new client-server model of Minecraft 1.3.

All of them use obsidian for barrels, and sand stone for the carriage (or whatever you want to call that). Actually, if it explodes on you, only the half-slab in front, plus some redstone will have to be replaced. And if you bury them 2 blocks, the flood shouldn’t damage the repeaters.

Cannon Mk1, 8x5x6 blocks

My first design for a cannon for use in fortresses. It’s supposed to be buried 2 blocks deep. It’s quite slick, but due to it using only 9 repeaters, maximum range is slightly limited to what is possible.
CannonMk1-8x5x6.schematic

Cannon Mk2, 8x5x6 blocks

This one has the circuits slightly altered, making it able to delay a tiny bit longer with its 10 repeaters. An in-between version had a totally altered layout with 12 repeaters, which turned out to beb totally useless, since 10 is the useable maximum (otherwise you get squibs).
CannonMk2-8x5x6.schematic

Carronade, 6x5x6 blocks

This one is actually a totally redesigned Mk1. It’s much shorter, but since it still uses 2 layers of TNT, it still packs a pretty punch. It’s not as slick as the Cannon, since a few sacrifices had to be made to fit all 9 repeaters.
Carronade6x5x6.schematic

Arrow Gun


Here as well, a tight footprint and a “look” of a gun (when buried two blocks deep) was aspired. Uses a pulser, you turn it on, it shoots arrows, until it runs out or you turn it off.
ArrowGun3x3x3.schematic

Debian Multi-Arch woes

Sunday, July 15th, 2012

Since a few months, Debian is going Multiarch.

So I thought I give it a try. I compiled a 64bit-kernel on my 32bit computer:
make menuconfig ARCH=x86_64; make ARCH=x86_64
Which works nicely. You only need to take care that if you ever need to compile an i386-kernel on the same machine, you will need to specify ARCH=x86 for that one in the future (after you’ve booted your system to use the 64bit kernel).

From there on I installed a new Debian, debootstrap --arch=amd64 sid /mnt, mounted a few necessary filesystems into it, and chrooted into the new 64bit system:

mount -o bind /proc/ /mnt/proc/
mount -o bind /sys/ /mnt/sys/
mount -o bind /dev/ /mnt/dev/
mount -o bind /boot/ /mnt/boot/
chroot /mnt /bin/bash

Now comes the usual installation, packages, configfiles, installing grub, etc.

A few hours later I had a complete system, with my usual 6000 packages installed…

Upon booting the new system, I stumbled upon some few small problems, like libasound2-plugin-equal not being installed (and after that, complaining about a wrong binary format of .alsaequal.bin), No big problems there, until I turned on Multi-Arch:
dpkg --add-architecture i386
and started to try to install some i386 programs. Most work, at least when you’ve got all those dozens of i386 dependencies right.

But then came wine. Turns out, wine needs wine1.5-amd64 and wine1.5-i386 both, and the latter, wine1.5-i386 needs to be built on an i386. I already had that; but I still needed to recompile it without opencl, since that one refused to be installed as a 32bit-version on amd64 (well, it wants to deinstall the 64bit version).

After having installed all the runtime dependencies for the android-SDK, AVG antivirus and, most of all, wine1.5-i386, I ended up with these i386 packages installed:

gcc-4.7-base:i386 libasound2:i386 libasyncns0:i386 libattr1:i386 libc6:i386 libcaca0:i386 libcap2:i386 libdb5.1:i386 libdbus-1-3:i386 libdirectfb-1.2-9:i386 libdrm-intel1:i386 libdrm-nouveau1a:i386 libdrm-radeon1:i386 libdrm2:i386 libexif12:i386 libexpat1:i386 libffi5:i386 libflac8:i386 libfontconfig1:i386 libfreetype6:i386 libgcc1:i386 libgcrypt11:i386 libgd2-xpm:i386 libgl1-mesa-dri:i386 libgl1-mesa-glx:i386 libglapi-mesa:i386 libglib2.0-0:i386 libglu1-mesa:i386 libgnutls26:i386 libgpg-error0:i386 libgphoto2-2:i386 libgphoto2-port0:i386 libgpm2:i386 libgstreamer-plugins-base0.10-0:i386 libgstreamer0.10-0:i386 libice6:i386 libjpeg8:i386 libjson0:i386 liblcms1:i386 libldap-2.4-2:i386 libltdl7:i386 liblzma5:i386 libmpg123-0:i386 libncurses5:i386 libncursesw5:i386 libogg0:i386 libopenal1:i386 liborc-0.4-0:i386 libp11-kit0:i386 libpciaccess0:i386 libpcre3:i386 libpng12-0:i386 libpulse0:i386 libsasl2-2:i386 libsdl1.2debian:i386 libselinux1:i386 libslang2:i386 libsm6:i386 libsndfile1:i386 libssl1.0.0:i386 libstdc++6:i386 libtasn1-3:i386 libtinfo5:i386 libts-0.0-0:i386 libusb-0.1-4:i386 libuuid1:i386 libvorbis0a:i386 libvorbisenc2:i386 libwrap0:i386 libx11-6:i386 libx11-xcb1:i386 libxau6:i386 libxcb-glx0:i386 libxcb1:i386 libxdamage1:i386 libxdmcp6:i386 libxext6:i386 libxfixes3:i386 libxi6:i386 libxml2:i386 libxpm4:i386 libxtst6:i386 libxxf86vm1:i386 zlib1g:i386

Just don’t dare to install anything i386 with dpkg from a package, without having the dependencies there first. It will want to deinstall half your system first when doing apt-get -f install .

And now comes the really un-funny part. Notice that “mesa” in there? Yes, this means nvidia is not going to be accelerated for 32 bit, which means again just about no 32bit 3D applications will run with any decent speed, if at all. Same for wine as for native apps. The whole nvidia-packages are just not multi-arch capable, and unless you’re feeling to mess up your system with by-hand copied binaries, you just go back to your 32bit-system (with a 64bit kernel) and wait a few month more before trying to switch again.

Châteaux Vufflens in Minecraft

Wednesday, April 18th, 2012

Irgendwie hat sich dieses spätmittelalterliche Ding in Backstein einfach aufgedrängt. Es wollte in Minecraft realisiert werden. Warum ich 18-24 Stunden dafür verwendet habe weis ich immer noch nicht. Es wollte es eben.

Dokumentation von 1881

Aber dafür bekommt nun die Welt nicht bloss ein Minecraft-Schema, sondern auch gleich die Dokumentation und Pläne von Vufflens, aus den “Mittheilungen der Antiquarischen Gesellschaft in Zürich” von 1881, komplett digitalisiert, und die Texte durchs OCR gejagt. Die sind Gemeinfrei (“Public Domain”).

Minecraft Level

Ich habe versucht mich möglichst genau an die Pläne, sowie diverse Bilder aus dem Internet, inklusive Google StreetView zu halten. Naturgemäss ist bei 1×1-Meter-Blöcken nicht alles genau einzuhalten. Die Raumaufteilung stimmt, die Proportionen ungefähr (tatsächlich ist der Donjon zu hoch; eine Notwendigkeit damit der Vorbau genügend Stockwerke bekommen konnte) gewisse moderne Dinge wie die Terrasse vor dem Palas habe ich weggelassen. Die Lizenz hier ist die OPL 1.0 (was in etwa dasselbe wie CC-by-sa ist).

Enjoy!

Natives IPv6 via VDSL

Tuesday, April 17th, 2012

Mit gewissen schweizer ISPs, namentlich AtrilA oder iWay ist es möglich IPv6 mit ihren DSL-Angeboten zu bekommen. Das hier ist die Konfiguration für eine Firewall mit Debian/Squeeze. Nebst der IP der firewall selber (die via PPPoE über das Modem, welches als Bridge konfiguriert ist daherkommt), ist hier je ein ganzes IPv4 und ein IPv6-Netz geroutet. eth0 ist das interface richtung Modem (welches auch per default auf 192.168.1.1 erreichbar ist). eth1 ist das interne interface. dsl-provider richtet das interface ppp0 ein, und dass ist gleichzeitig der name der PPPoE configdatei unter /etc/ppp/peers

/etc/network/interfaces/ enthält folgendes:

auto lo

iface lo inet loopback

auto eth0

iface eth0 inet static
address 192.168.1.2
netmask 255.255.255.0
network 192.168.1.0
broadcast 192.168.1.255

auto dsl-provider

iface dsl-provider inet ppp
pre-up /sbin/ifconfig eth0 up
provider dsl-provider
up ip -6 route add default dev ppp0

auto eth1

iface eth1 inet static
address xxx.xxx.xxx.1
netmask 255.255.255.240
broadcast xxx.xxx.xxx.15

iface eth1 inet6 static
address 2xxx:xxxx:xxxx::1
netmask 48

Die configdatei /etc/ppp/peers/dsl-provider habe ich mit pppoeconf generiert; sie enhthält folgendes:

noipdefault
usepeerdns
+ipv6
defaultroute
hide-password
lcp-echo-interval 20
lcp-echo-failure 3
connect /bin/true
noauth
persist
mtu 1492
noaccomp
default-asyncmap
plugin rp-pppoe.so eth0
user “myusername@domain.ch”

Die direktive +ipv6 musste ich von Hand einfügen.

Auch notwendig: IPv6-forwarding. Ich habe das in /etc/sysctl.d/ipv6_forwarding.conf reingeworfen:

net.ipv6.conf.all.forwarding = 1

Was hier noch fehlt sind natürlich die Firewall-Regeln, für IPv4 und für IPv6.

Die Client-Konfiguration ist straightforward; entweder statisch via /etc/network/interfaces oder sonst dynamisch auf dem server via radvd.

Weiterführendes: Martin Kraffts IPv6 with Debian-Seite.