GUI shame: Touchpanels

I’m currently doing a lot of design-work for high-end touchpanels. One should expect that a touchpanel in the price range of around 3′000$ to 5′000$ each should be able to render truetype fonts smoothly. Bad luck: AMX doesn’t even support OpenType fonts to date and looks as bas as Crestron-rendered fonts. This is really disappointing. Especially since they are all heavily based on Windows OS implementation mostly, it shouldn’t be that hard to implement something like ClearType or anything. Those results make the whole design process utterly frustrating sometimes.

<cynicism> That explains why most of the preloaded GUIs look like the panels used in beta “hacker”-movies from 1992. Or, wait, maybe it’s because coders do the first-level design on graphical user interfaces: “Cool, we can generate beveled buttons!” – Unfortunately, nobody uses it because it just looks like Windows 3.1 … argh. Where’s the perfectionism, ladies and gentlemen? :) </cynicism>

But that’s not everything by far. Most “high-end” panels I’m doing design for (especially the Crestron ones) only run on 16bit color, which means that you’re gonna have to deal with banding at some point sooner or later if you’re into smooth design. Now try to simulate banding if you don’t have access to the real hardware :P (well, it works with Photoshop’s “Save for Web”, to an extent, but it’s not a 100% predictable).

The touchpanel-concept is pretty cool and I like creating interfaces, but hey, this is sooo 1998 compared to an iPhone which costs roughly a fifth (without a contract) of a “regular” touch panel and has a compass built-in. I mean, come on. The hardware is out there. What’s the matter? If they don’t catch up technology wise, they are doomed. Really. There’s already competition coming up with really sweet hardware.

Posted in design, hardware, my five cents | Tagged , , , , | 2 Comments

Mass Effect

I like RPGs, and I like Science Fiction. And some time ago, I was thinking “Hmm, something which mixes the two would be greatly appreciated.” But I didn’t find anything in the massive ammount of games which is listed on IGN for example.

Turns out I just didn’t look around good enough: Thomas (gamester.tv) told me about Mass Effect some minutes ago and after watching the trailer, I think I really have to give this a try. Like, next week, after the BNZ and recovering from the demoparty-hangover. Now, I dunno how much further the development of the Stargate RPG is (last time I checked there wasn’t even a beta around…), but this sure is a way to waste time meanwhile. :P

Posted in games | Tagged , , , | Leave a comment

Welcome: Mac Mini

After much of back and fourth and sleepless nights, I ordered a Mac Mini and a Lacie 4big Quadra RAID (4TB, 3TB/RAID5) this week. I’ve gone through countless options, even a low budget Hackintosh-setup with a PCI-Express RAID interface/Hotswap-cage and a FreeNAS setup. The thing which made me end up with a Mac Mini was the fact that I wouldn’t have saved *a lot* of money with a self-made setup, but it would have been definitely 10 times more work for the initial setup.

The temptation of an easy to setup (AND easy to maintain) solution was too big. I guess I’m getting old. 3-4 years ago, I would have chosen the solution which involves the largest DIY-factor. But nowadays, I just want an easy solution which doesn’t make much noise and I’m even willing to pay a little bit more for that. However, not as much as for a Netgear NAS… I have to admit that the Mac Mini setup is quite at the top of my budget, tho. If all I’d want are some TB of space in a corner of my flat, I’d certainly wouldn’t have chosen this: I came to the conclusion that I don’t want a single purpose (“dumb”) data-storage solution, but something which blends nicely into my current infrastructure and allows for custom expansion with services in the future on an environment I’m rather familiar with: OS X.


Posted in hardware, mac | Tagged , | 2 Comments

Buenzli 18

Well well, one week to go until Buenzli will shake the swiss scene (or what’s left of it ;) ) for the 18th time. As always, preparations are currently at the peak level for most of the staff members. Unlock is as always doing an immense job and everyone else of course, too. If you don’t know yet what you’re up to on the weekend of 14/15/16 of August, drop by in Winterthur and have a beer and some nerdy discussions. ;)

As for potential releases from my surroundings, well, certainly nothing huge to take note of so far. My “musical disability” is not yet over, so don’t expect anything.. Would be cool to have some action from YOUR side, tho. Fellow swiss sceners, GO FOR IT!

For more information, check out the BNZ website (*cough cough* as always designed by yours truly *cough cough*).

Posted in demoscene | Tagged , , | Leave a comment

1Password

After using this little App for a while now, I can’t imagine living without it. 1Password saves your passwords in a keychain, much like the OS X keychain already does, but with the ability to add other confidential information (secure notes, credit card information, etc), an auto-fill plugin for *every* OSX browser and an iPhone app to synch the whole keychain with your iPhone.

If you’ve got plenty of website-passwords, this is really cool. For example, I save the 1Password-database on my DropBox account (soon to be replaced by my private fileserver :D), this way I can sync it easily to every machine I work on, at home and on some office machines. You can also configure a session time on “critical” machines, so for example, you have to enter your master password after not using the app for 15 minutes.

The database is saved using strong encryption, so your data is pretty much safe. A strong password generator is included aswell and you will never have to use your “standard” password on every website you want to create an account for. ;)

What I miss right now is that 1Password doesn’t save system passwords, for example WiFi keys, logins for shares et al. But on the other hand, you can just create a secure note for this purpose.

Note: Apparently, 1Password + Snow Leopard Dev..A421 + Safari 4 = FAIL. Works with Firefox 3.5 tho.

Some screenies: The app’s user-interface and the integration into safari using a plugin (“1P”).

Posted in mac, software | Tagged , , , , | 1 Comment

Dupin

Dupin is a small utility which helps you getting rid of duplicate tracks in iTunes. You can filter dupes by selecting which bitrates to keep, length, date added, and so on. The free version can take care of 40 tracks per session, for unlimited access,  you have to buy the 15$ full version. I didn’t hesitate to buy this little program, especially because Doug Adams already did a heck of a job by maintaining the iTunes-script library on his website. Btw. if you’re already checking for dupes, think about checking for files residing in your media folders which are not part of your itunes library and removing dead tracks.

Doug’s Scripts, Dupin: iTunes Dupe Finder

Posted in mac, music, software | Tagged , , , | Leave a comment

The joy of having a clean media library

I listen to a lot of different music and thus there have been quite a number of tracks accumulated over the past 15 years. A wacky 22′146 tracks to date. Keeping this enjoyable on a file-system level is almost impossible. One of the first things I did when I switched to Mac 5 years ago was to start importing tracks into iTunes. It took me quite a while, but it was well spent and I’d never again use winamp or anything like it.


The following procedure has been the most satisfying for me. But you’ll need a Mac to use it. :P

1. Get the tools: iTunes (free), Amazon Album Art widget (free), Shtaggle (free), TuneUp (limited free, 30$ lifetime) and install.

2. Setup your iTunes to “manage tracks” on your harddrive or network share (iTunes -> Preferences -> Advanced). If enabled, iTunes will always save tracks in the selected directory if you import new albums in this fashion: /Artistname/Albumname/03 Trackname.suffix

3. Launch iTunes, Shtaggle and TuneUp. Make sure to read through all the preferences of these tools, because they allow you to set a lot of personal options.

4. Create an empty playlist which you will use to import and edit albums to keep ‘em separated to avoid a chaos due to missing ID3 tags.

5. Move one of the albums you’d like to import to the playlist and wait until all objects have been imported.

6. Check for missing tags: Track names, Album names, Artist names, etc. If the album you’ve imported is an original record: Use TuneUp and have it run it’s detection mechanism on your import. Netlabel music: Sorry, this is going to take your time. Cmd+i on the full album and edit the album tags. Single tracks: Cmd+i, track by track ..

7. After tagging the album, check for missing cover art. Use the dashboard widget to run a search on Amazon if TuneUp failed to find album art. For netlabel records: Sorry, again this will need your time. Cmd+i on the full album and drag an image to the album art area.

8. Play each tag and set some tags (to your liking) with Shtaggle.


Some tasks (for example cleaning up tracknames: 04-trackname -> Trackname or moving ID3 info from one field to another) are easily done by using scripts provided on Doug’s AppleScripts for iTunes. Very powerful ressource btw.

For example, you can now create intelligent playlists inside iTunes which include tracks haveing the <happy> tag and genre != techno to exactly get what you want. Apple’s “Genius” does something similar but is limited to the music which is available on the iTunes store. Genius is nice, but only works 50:50 for me. If you use an iPod and an AppleTV, this is going to make things a little easier. And at some point, it will be possible to use the same method to keep your movie library clean and in synch with other devices.

Of course you are kinda limited to Apple hardware at this point. If you don’t feel ok with that, this is no option for you.  I am not a friend of this myself, but I am willing to give up a little bit of my freedom of choice for a well working solution. So far, it’s working pretty well.

Posted in music, software | Tagged , , , | 2 Comments

The IE7-js project

“…make MSIE behave like a standards-compliant browser.”

I’ve come across this little script which can be loaded in a conditional statement in your website’s header, to enable old IE versions (<=7) to display certain CSS properties correctly. This will help you to reduce the amount of CSS you have to rewrite for classic IE browsers:  The IE7-js project.

I’m currently testing it on a couple of sites and so far, I didn’t encounter any conflicts with other JS-libs. You can even hot-link the file, but I suggest you copy it to a central place in your environment for the sake of .. well .. organisation. :-) For example, fixing min-/max-/width/height by hand for IE6 becomes obsolete, even tho the script fixes the display only after the whole page has been loaded. This will make it look a little bit “jumpy”. But, heck, my empathy towards IE6 users is shrinking by the day. Check the project website for a complete list of affected properties and CSS-selectors.

Posted in design, software, web | Tagged , , , , , , , | Leave a comment

Drupal: WYSIWY(should)G

A rather annoying problem with Drupal is the lack of a *really* standard WYSIWYG interface. WordPress made the example and included TinyMCE as a default which is expandable with a couple of plugins (“TinyMCE Advanced”). Putting together a solution which also allows users to easily upload and include pictures into article texts with Drupal took me quite a long time. And every possible way I tried out had it’s own little problems – be it usability, be it incompatibilities with other plugins, you name it.

The combination which posed the smallest problems to me AND the users so far was this one:


WYSIWYG/TinyMCE + ImageAssist


The WYSIWYG-Plugin is trying to become the standard gateway for a number of editors and ImageAssist already supports it (on TinyMCE). Everything is rather Beta for now, but it works and it’s more promising in terms of future development than other solutions. However, I still hope that Drupal 7 will include a streamlined solution (like WordPress 2.8) for editing and importing images into posts. That’s really a keyfeature for a web CMS and if this is buggy or hard to use for the editor, you can only lose the game, because the main focus for most users is usability these days. Compensating the lack of usability with feature richness isn’t doing the trick for me.

One downside of this combination is that if you use ImageAPI aswell, you can not yet share images between the two media libraries. For instance, you cannot select images from a gallery created with ImageAPI/ImageCache/Views in ImageAssist’s “select image to include”-dialogs.

That’s why I really would like to see a little bit more standardisation for media integration in Drupal. It’s nice to have a huge number of options, but media integration is something really standard nowadays. And from my point of view, I prefer one stable solution over 20 half-baked solutions in alpha/beta stage, even if they all have different advantages over a restricted option.

I know a lot of people prefer different editors. But you can’t make it right for everyone and hope that the result still has the same quality compared to a little bit more restrictive and therefore more stable way of integrating features, especially the most basic ones. In a way, it’s like offering your client 10 different Web CMS to choose from: It’s cool to have a choice, but it’s a pain in the ass to maintain and the opposite of efficiency. And well, I’m a huge fan of K.I.S.S. by the way. :P

Posted in my five cents, software, web | Tagged , , , , , | 2 Comments

Xenocode Browser Sandbox

On this website, you can run a browser based “virtual machine” which loads IE 6/7/8, Firefox 2/3, Opera and Safari (all for Windows). Only problem: Requires Windows and IE to run. But still: quite handy if you don’t want to mess around with your installation of win/IE (in my case, the VM running on OSX :P) but still want to be able to view your websites in different browsers and be actually able to browse them.


Xenocode Browser Sandbox

Posted in design, software, web | Tagged , , , , | Leave a comment

Röyksopp – Happy Up Here

Great video, great track. And space invaders. :-) It’s available on youtube in hi-def.


Posted in music | Tagged , , | 1 Comment

Fileserver: NAS or not, that’s …

…the question.

The amount of data I have around here isn’t the problem. I’ve plenty of space left. The thing which makes me worry is the reliability of my space. I’m currently running 2 LaCie Harddrives with a total of 1.5TB space on my iMac’s FW800 port. 500GB for my iMac’s TimeMachine, 1TB for the “Archive” (well, all the stuff which is rarely used but you still want to keep it). If my “Archive” disk dies, everything is gone for good. I can’t afford this to happen.

So, what I need is not really space, but I’d like to have all my data *a lot* more secure than it is currently. All the data I’ve produced in the past 10 years is basically the biggest asset of my little company. And it should be network attached. And it should be cheap. And I want to use it for other services than just serving files (VPN,SSH tunneling etc). And the power consumption is also relevant. A NAS is what I was looking for at first. But there are a couple of  downsides to them. I was setting up the network environment at PGM using a Synology DS509. It works nice and since we just replaced an outdated CS407e with the new DS509, we have a backup server “for free” which relaxes the whole data security situation quite a lot. The only thing this box is doing is serving files to a small number of office users. For that, it’s quite right. And most important, the data is secured, daily backups, etc.

But for my home office, I don’t want just some file-serving box. I want something I can play around with. And it should be somehow expandable with other peripheries than just an USB printer or an USB disk. My Epson R2880 won’t work with a NAS for example, because it’s not a PostScript printer and needs special RIP drivers to work.

Other than a NAS, there’s basically only the LaCie 4big Quadra which I’d consider for the job. It’s not very cheap, but offers a *lot* of speed on FW400/800/eSata, HW/hotswappable RAID5 and whatnot, but no Network connection. After comparing dozens of NAS-Boxes and reading about possible pitfalls and comparing speeds (which vary really a lot), I had the following idea:

Why not use a MacMini as a server?

Sure, it’s not the ultra-cheap solution I was looking for. But it has quite a lot of advantages over the (not so cheap) NAS when I think about it: It’s a full featured box with plenty of speed (core2duo@2GHz), video output and – using remote desktop – pretty much a third workstation for my home office and expandable to become a *real* server, not just some downsized linux.

So I did a little price comparison:


1xMacMini 1GB RAM + 2xLaCie 4big Quadra RAID 2TB
Storage Security: 2xHW RAID5, software mirroring via FW800
System Backup: Monthly disk clone to old 1TB disk (scheduled)
Total cost (CHF): 2'165.–


1 x Synology DS409 2TB + 1xLaCie Quadra 2TB
Storage Security: 1xSoft RAID5 + 1xRAID0, via USB2.0/daily backup
System Backup: N/A (AFAIK)
Total cost (CHF): 1'346.-


So, for 800.– more, I will get a full workstation and the security of a mirrored 2TB (well, 1.5TB, actually) RAID5. I could even run OSX Leopard server on this box, use it as file-, media-, VPN-, etc. server. Additionally, I would be able to handle data storage and server independently. The whole thing would be running on HFS+ formatted disks and it would be quite easy to upgrade the MacMini to a newer version or expand the storage. Of course, the whole power-consumption aspect will become quite useless with this configuration. :P

But, let’s say cpu performance would be an issue. There’s a box made by Netgear which has an Intel Atom processor and is currently reviewed as one of the fastest NAS servers. Let’s add this to the list:


1xNetgear ReadyNAS Pro 6x1TB
Storage Security: 2 Volumes: 2xRAID5 over 3 1TB disks, daily backup from Vol 1 to Vol 2
System Backup: N/A (AFAIK)
Total cost (CHF): 2'999.–


So, this setup actually costs more than haveing a MacMini + 2 FW800 disks and doesn’t nearly offer the same possibilites in terms of being able to expand the system with additional hardware. If something goes wrong, I can detach the FW drive and continue to work on another box without having to worry about unmountable file systems etc. I could attach 4 USB devices to the MacMini + a display and even the processor is faster. Theoretically, I could even run the AppleTV OS on this box on a small bootable USB HD :P. With all the free and 10-20$ apps for OSX and Leopard’s built-in server abilities… I can attach my scanner, the 2 printers, DVD-writer and other stuff and control everything either by sharing over the network or using remote desktop control. “Real” iTunes servers, UPnP/Media, SMB, AFP, NFS, VPN and pretty much everything else which is possible on Leopard. Best of all: all on a nice GUI, no need for any  terminal (well, maybe for the initial MacPorts setup :P) Thinking about it now, this would be totally and absolutely awesome. :D

PS: No! Backup to CD/DVD is *not* an option and backup to tape is far too expensive for my financial situation. And I want a solution which is easy to handle: That’s the whole point. I realise that this is not the most secure setup but it’s the best price/performance situation I can think of right now. However, if you think you have a better idea, let me know. :)


Update: After thinking about it again, I think the following config’s sustainability factor is bigger. At least in my case, since I’ve got plenty of external HDs already which can easily serve as a backup disk for another couple of years. I’ll have already enough RAID space to reduce the need for upgrading for at least 3-4 years from now. And until I reach an archive size over 1TB, there’s going to be enough inexpensive 2TB disks around.


1xMacMini 4GB RAM + 1xLaCie 4big Quadra RAID 4TB
Storage Security: FW800 HW RAID5 / Vol1 2.5TB, Vol2 1TB: TimeMachine-Volume for all macs
Vol1 will be mirrored to old 1TB LaCie-disk (daily rsync) as long as there's space left :P. 

System Backup: TimeMachine -> Vol2

Total cost (CHF): 1'917.–

The things which will be moved onto the networked storage: All project data, media library, archive data. Total space needed: around 700GB. Might be that I will wire my iMac up again with Gigabit Ethernet. Should be more than enough performance for 90% of times.



Posted in hardware, mac, my five cents | Tagged , , , | Leave a comment

BNZ18: Shirts arrived

BNZ 17 ShirtsThe new T-Shirts finally arrived. Unlock sent me this picture. Looks cool. Remember, you can order them. :-)






Posted in demoscene, design | Tagged , , | Leave a comment

iPhone App: FastFinga


Pretty cool app. Bringing back a personal touch to messaging. Me likey. Check out the developer’s website. They made some cute apps.

Posted in mac, software | Tagged , , , | Leave a comment

MySQL server has gone away

Like almost everyone, we use shared hosting servers for our websites and most of our clients’ websites aswell. This has advantages (monetary/outsourcing) and disadvantages (no custom configurations, sometimes performance). An error which pops up quite a lot recently, at least around here, is the famous


database error: [MySQL server has gone away]


This is a usually temporary performance problem of the MySQL server (temporary connection loss or too much load, causing delays and finally, a time-out to your queries) and something you cannot fix yourself on a shared hosting, because you usually cannot edit the MySQL servers configuration to increase the timeout manually. For most of us, writing mails to the hosting company that they should upgrade their servers will probably be useless, so “the internet” has come up with a a (not very beautiful) fix: Insert an SQL query at init-time. Most more or less advanced PHP apps are shipped with a database abstraction layer, usually an OOP class somewhere hidden deep down in the include dirs. This is where you can add this query (using the provided functions) to define a new timeout for every query after initialisation time:


set session wait_timeout=600


While this might probably reduce the responsiveness of the server, it reduces failed queries due to timeouts. One possible reason why this is happening on shared hostings is the widespread usage of huge apps like the Menalto Gallery or Web CMS apps like Drupal, WordPress, Joomla, et al. With every page hit, they create hundreds of queries and almost everyone with a shared hosting has at least 2 of those apps installed. Now if the hosting environment has like 1 central MySQL cluster which is a little bit underpowered during peak hours, you might end up with an error log full of the above error messages.


Dear shared hosting providers: I understand you cannot provide lightning fast hosting for ultracheap prices. But it would slow down the filling of error logs aswell by just configuring the server to use a larger timeframe for sending queries back and forth. This would be more realistic than to expect the community to optimise PHP/SQL code to gain milliseconds. :P


I came across this on Rob’s notebook. He has a modded version of the WordPress DB layer over there to download if you don’t feel like editing yourself. Also, keep in mind that this function might be disabled for your hosting environment. Handle with care, test, retest and make yourself ready to quickly comment the line of code if your site dies. :-)


Posted in software, web | Tagged , , , , | Leave a comment
  • Interesting stuff

  • Shortcuts