Pidin asiantuntijapuheenvuoron 14.4.2010 Digitaalinen Suomi -seminaarissa Jyväskylässä otsikon mukaisesta aiheesta. Tässä 45 minuutin pituinen slidecast-tallenne puheestani. Käsittelen teemoja sekä web 2.0 -ohjelmien tekemisen näkökulmasta että web 2.0 -palveluiden hyödyntämisestä ohjelmistotuotannossa yleensä. Joitain teknisiäkin asioita mukana on, kuten pilviarkkitehtuuri ja NoSQL-tietokannat. Oli ihan hauska välillä puhua ihan teknisestä aiheesta – sisäistä nörttiä pitää silloin tällöin ruokkia. Niin ja minut voi tilata puhumaan muihinkin tilaisuuksiin. Read the rest of this entry »
OpenOffice.org 2 is the cheap, legal, and open alternative to MS Office
I’ve been using OpenOffice.org 2 for a few months now, and before that, Openoffice.org 1.x for years. Before that, I’ve used MS Office, StarOffice, IBM Works, WordPerfect, etc. At why.openoffice.org there are references to studies that show that upgrading from MS Office to OpenOffice.org 2 costs like 10% of the upgrade to the newest MS Office – licensing fees and user training included.
Another good reason to switch to OpenOffice.org is that Microsoft is getting more evil – acquiring software spying companies, adding tracking code into Office, etc. Of course, if you pay the licenses, and understand the licenses, and can be sure that all your company techs understand the licenses and don’t violate them by doing an illegal installation somewhere, you’re fine (although a lot poorer). But why bother? Just switching to OpenOffice.org gets you off the hook – no more licensing worries, employees can borrow the installation CDs (or even make copies of them), and you can all focus on something more important than controlling Office use.
But maybe the most important reason in my opinion is the lack of standard on the part of MS Office. The approved standard format for word processing, spreadsheets and presentations is OpenDocument. Of course I understand the reason why Microsoft refured to support OpenDocument (the reason being, of course, that when you are a monopoly, it’s cost-effective to spend all your funds (minus $1) to protecting that monopoly, and this is what Microsoft is doing – keeping its software closed, locked and non-compliant, and hiring every patent lawyer to graduate from Stanford (according to Lawrence Lessig at OSBC 2005)). Currently I just feel embarrased for all the people who send me Word documents, and profusely claiming that they’ve been checked by a virus scanner. Good for them, but why, oh why, must I put up with that stupid proprietary format still? Of course, Openoffice.org opens MS Office files without a hassle, but still.
Turning the Buffalo wireless bridge into a firewall
I had an extra wireless bridge (Buffalo WLA2-G54L) lying around and our current firewalling wireless AP (D-Link) was as crappy as can be. It’s probably ok for just surfing and stuff, but for keeping ssh connections open it just didn’t cut it, since it severed tcp connections every now and then. Also it froze every now and then and needed rebooting. So replacing that with a better solution was on the todo list.
The WLA2-G54L is just a wireless bridge – it has no conception of a firewall in it. So time to flash OpenWRT into it. Setting up OpenWRT is a bit of an adventure in itself, but quite a nice one. Internally the Buffalo units contain the actual computer, a wireless radio, and a normal 5-6 port switch. The computer is connected to one of the ports in the switch, and in firewalling models the switch can present all ports as separate interfaces so that one of them can be treated as the WAN port. However, in WLA2-G54L the switch is a bit different and it doesn’t show the ports separately (tried with robocfg, which did not detect the proper model and couldn’t do anything with it).
OK, so how to setup a firewall with just basically one interface, which is connected to a four port switch? Well, I came up with the solution to just use IP based filtering. Better suggestions are welcome. This basically means that I created an alias to the br0 interface (replace with your own public IP, netmask, and gateway):
ifconfig br0:1 123.123.123.123 netmask 255.255.255.000
route add default gw 123.123.123.1
Meanwhile the normal br0 interface is given an IP address in the LAN, say 10.0.0.1. Now you can quite easily separate the WAN from the LAN using IP addresses instead of interfaces. So instead of
WAN=$(nvram get wan_iface)
iptables -A INPUT -i $WAN -j DROP
you’d have
LANIP=$(nvram get lan_ipaddr)
LANNET=$(echo ${LANIP}/8)
NOTLAN=$(echo \! $LANNET)
iptables -A INPUT -s $NOTLAN -j DROP
And so on. The only problem comes when doing DHCP queries, as the client is probably not in the local network to start with. I solved this by using DHCP only in the wireless network, which is on its separate interface. So for wired access you’ll need to manually setup the network parameters. I can live with that. Another option is to carefully allow DHCP queries with a suitable filter command, and by adding extra checks into the DHCP server so it only server those you want it to serve.
So not a perfect solution, but works OK for me. I now have a low-cost wireless AP that I can ssh into, setup pretty much any kind of firewalling with iptables and otherwise configure to my heart’s desire.
Oh yeah, one more thing: when using WPA in the wireless network, you use the nas software as usual. But in the nas init script you need to remove the parameter “-l br0″. nas is proprietary, so there’s not much of an idea what it’s for, but at least in WLA2-G54L I had a problem with WPA connections not working until this parameter was removed. Then everything worked like a charm, as long as you remember that the WPA-PSK key (if you use that) needs to be given in passphrase format, not in hexadecimal (while WEP keys need to be given in hexadecimal). Weird, that.
Software Suspend 2 on Linux 2.6.x
Software Suspend 2 is a nice system to completely hibernate your computer without need for ACPI or APM. Here are the steps needed to make it work:
- Get the correct version of the system from http://www.suspend2.net matching your kernel version.
- Get the kernel source and configure it for you, compile and setup, making sure it works.
- Run the apply script of the SS2 you downloaded. On 2.6.11 Debian there’s one network interface driver that isn’t present but is in the patch set that is applied. Skip that file and everything should work out.
- Reconfigure the kernel, selecting Software Suspend 2 from the power control section.
- Compile and install the kernel.
- Download the matching hibernate script from www.suspend2.net and set it up. Done.
Utilities for the Treo 600
Here’s a list of hacks, utilities and other small additions that I’ve found useful for my Palm.
Brightcam: Measures the light conditions with the integration camera and adjusts the brightness of the screen to match it (lower brightness for darker situations). Can also increase alarm sound volume when in dark (ie. in a pocket) or in a noisy situation.
KeyCaps600: Provides alternate ways to enter capital letters and special characters, by double-clicking or by long presses of keys. I actually use my own modification that makes it easy to enter Scandinavian letters (ä and ö). The modification was easy to make since the software was under GPL. FREEWARE!
Qset: Allows you to adjust the JPEG quality of the camera application, so you can choose between better quality and smaller pictures. The default quality value is 60, which is pretty low, and raising it does improve the situation. FREEWARE!
SysTool: Allows you to remove entries from the system preferences database. Removing entries left by removed applications is a breeze. FREEWARE!
ZLauncher: A very advanced and customizable application launcher. A very cool bonus is the capability to move applications and their databases to the SD card and leave a shortcut in main memory, so you can launch the apps without any trouble but save on main memory.
Butler: A collection of nice features, like extra functionality for the volume keys, control over the flashing led, improved alarm handling, alarm clock, an alternative keyguard, keyboard combination for shortcuts and stuff like that.
TreoHelper: Can turn the radio on or off at predefined times for each weekday, turn off the radio when out of range (thus saving battery power) and also attempting to reconnect at suitable intervals, add triggers to received SMSs and so on. FREEWARE!
Phone Technician: Allows you to customize phone and SMS alarm sounds and turn off the screen during calls (to save battery) and also turn the radio on or off at predefined times (not as good as TreoHelper on this feature).
TreoNaviText: Allows you to navigate text with the 5-way rocker. So less need to pick up the stylus! FREEWARE!
FieldPlus: Allows you to select, copy and paste text with the 5-key rocker, without the stylus. FREEWARE!
Controlled Copy released as freeware
Controlled Copy (or CCopy, or CC) was an advanced file copier I built back in the early 90s. I’ve stopped development on it many years ago, but apparently there’s still quite a few people using it. CCopy was shareware and during the years many people and institutions did register. However, since development has stopped and CCopy (and DOS altogether) has become a fringe area in my life, I released CCopy as freeware. There’s the historical CCopy site which might be of sentimental value to somebody, but that’s it, I guess.
You can download the free registered version of CCopy and use it for your own personal use for free. Have fun!
Twitter
LinkedIn
Facebook
Youtube
Flickr
SlideShare
Google