I'll find out.
Friday, July 28, 2006
I probably will be backwards compatible with ActiveSync but I wouldn't invest time or energy getting ActiveSync to work. Instead, I would rather use funambol (Sync4j) even more than Blackberry's Enterprise Server. Both ActiveSync and BES are ignoring already open standards. SyncML is already installed on the majority of cell phones and has been for a few years. The only devices that don't support SyncML are the PDA type phones with Blackberry OS and Windows CE. Screw them, I could use a server like Funambol (GPL software, by the way) and the Blackberry and WindowsCE SyncML clients to sync up all calendars for our entire organization giving us the flexibility to go with some Blackberry and some WindowsCE and some Palm OS cell phones.
Funambol is the world's leading implementation of standards-based PIM synchronization. Funambol software synchronizes contacts, calendars, appointments, tasks, and notes on over 75% of the wireless phones on the market today. Leveraging the OMA DS (formally known as SyncML DS) standards, Funambol software synchronizes the PIM databases on all the most popular devices in use: * PC (Outlook, Netscape, and Kolab PIM databases) * Windows Mobile device (SmartPhone, PocketPC) * RIM BlackBerry * Palm * iPod * Over 800 million commodity mobile phones
This stuff isn't just pie in the sky. With ScheduledWorld.com, I can sync my Blackberry calendar to a server and I have gotten at least some of my contacts synched through the Outlook 2003 SyncML client plugin. Now all we need is a server type component that will talk to Exchange (MAPI or WebDAV) and send all synchronizations without someone needing to leave Outlook running on their desktop.
I had a great conversation with Eric. Dropping Time Warner and going with a company like IPhouse will change the pricing model from an all-you-can eat buffet to a pay-as-you go bandwitdh cost. (Just wait until someone costs us an extra $5000 by downloading iso's) I did find out that Time Warner is likely routing all of our traffic from Minneapolis through Chicago and hand off to Sprint before getting back to MPLS.
Thursday, July 27, 2006
Tremulous is the best free software FPS game I've had the pleasure of playing, and I'm not alone in this opinion. It also has a community growing up around it, which should aid not only in growing its popularity but also in continuing improvements.Good for id Software for freeing the engine, and good for Darklegion Development for what its developers have done with it. Give it a try. You'll like it.
Tremulous is a free, open source game that blends a team based FPS with
elements of an RTS. Players can choose from 2 unique races, aliens and
humans. Players on both teams are able to build working structures
in-game like an RTS. These structures provide many functions, the most
important being spawning. The designated builders must ensure there are
spawn structures or other players will not be able to rejoin the game
after death. Other structures provide automated base defense (to some
degree), healing functions and much more...
Player advancement is different depending on which team you are on. As
a human, players are rewarded with credits for each alien kill. These
credits may be used to purchase new weapons and upgrades from the
"Armoury". The alien team advances quite differently. Upon killing a
human foe, the alien is able to evolve into a new class. The more kills
gained the more powerful the classes available.
The overall objective behind Tremulous is to eliminate the opposing
team. This is achieved by not only killing the opposing players but
also removing their ability to respawn by destroying their spawn
Wednesday, July 26, 2006
Tuesday, July 25, 2006
Recently, however, as the RedPhoronix blog, has chronicled, ATI had changed its Linux ways. While ATI's Linux drivers still aren't speed-demons, they're much better than they used to be, and ATI is now constantly improving them on a monthly driver release schedule.With AMD at the helm, I can envision ATI finally open-sourcing the code to its proprietary drivers. That should quickly result in much better performance for Linux users, and better performance for the Windows and Mac platforms as well.
Thursday, July 20, 2006
Monday, July 17, 2006
Friday, July 14, 2006
I listened to a podcast from IT conversations that showed how you could dynamically communication through a 3D environment using very strong scripting (smalltalk, I think). You can create an object and anyone can modify the objects immediately.
- a reverse-proxy: it passes requests from client browsers to one or more back-end servers.
- a load balancer: it will distribute the requests from the client browsers among several back-end servers, while keeping session information.
- an SSL wrapper: Pound will decrypt HTTPS requests from client browsers and pass them as plain HTTP to the back-end servers.
- an HTTP/HTTPS sanitizer: Pound will verify requests for correctness and accept only well-formed ones.
- a fail over-server: should a back-end server fail, Pound will take note of the fact and stop passing requests to it until it recovers.
- a request redirector: requests may be distributed among servers according to the requested URL.
Wednesday, July 12, 2006
Type about:config in the address bar and filter by 'search' and double click on the key shown below.
Just a quick note: Taking screenshots on Linux (Ubuntu for me) doesn't work the same as in Windows. In Windows, you just need to do PrtScrn or Alt-PrtScrn and ctrl-v (paste) into the blog post. Under Ubuntu, I have to PrtScrn or Alt-PrtScrn and I get a dialog box to save my screenshot to the desktop. I can't then drag-and-drop the picture into the blog post but have to invoke the Flock photouploader to get the picture into the photobar and then drag it into the blog post.
Monday, July 10, 2006
Agreed. I was going to package a port knowking
daemon called doorman just for this, then I finally figured it wasn't
worth it. In my case, I decided to use tha facilities provided by
shorewall (an awesome firewall tool):
ACCEPT net $FW tcp 22 - - 1/min:2
ssh login attempts from an IP on the public internet are restricted to
once a minute, with a surge of 2 (basically allowing two attempts in
the first 60 seconds). The nice thing is that it doesn't run the risk
of someone DOSing me by using up all the concurrent connections or
whatever. Additionally, the script kiddies get tired of waiting and I
rarely ever get more than two attempts from the same IP. Some are real
persistent and stick it out for 10 minutes or so, but that only gets
them 11 attempts.
Sunday, July 9, 2006
Wednesday, July 5, 2006
(Way back in the beginning, I figured out that getting the LSI Logic ATA raid controller -- megaide was going to be a pain. So I formated the drives under the <ctrl-a> scsi bios to be independent. I figured, I can always do a software raid later, if I need to.)
I installed some form of Debian on this box 1.5 years ago and I can't quite remember what I did. I think I started with Debian 3.01 (sarge?) installer and ran it with the expert boot option. Then when it tried to autodiscover the devices I would deselect the ide-cdrom device the first time through (it is the ide- that is listed last) The next time through I would select the last module and go from there.
This time I installed Ubuntu's Breezy like a regular system but on reboot the system would tell me that it couldn't find /dev/hda1. If you run 'cat /proc/partitions' you should see what partitions are available, mine was obviously installed on /dev/hde1. Now 'mount /dev/hde1 /mnt' to temporarily get access to the root partition. If you push on, you can edit the /etc/fstab file from the busybox prompt using 'sed -i.bak s/hda1/hde1/ /mnt/etc/fstab' and 'sed -i.bak s/hda1/hde1/ /mnt/boot/grub/menu.lst'
I wasn't able to boot correctly without manually editing the grub on the fly using ESC and 'e' on the line with the /dev/hda1. After pressing enter to commit the grub change, you will need to use the 'b' option to boot. It took a long while for grub to hand off from initrd to hde but it eventually worked (I thought that I should have modified the hd(0,0) to hd(5,0) but grub failed. Tab completion in grub is great)
I ran 'sed -i.bak s/breezy/dapper/ /etc/apt/sources.list' after getting a decent boot. 'sudo apt-get update && sudo apt-get dist-upgrade' and sat back. While waiting, I found from /var/log/dmesg that my cdrom was /dev/hda (go figure) and the extra 6 Gb drive I stuck on a IDE channel for "ease of booting" was /dev/hdc. I ended up not using the /dev/hdc drive.
Now I'm going to look for an easy way to call the LAMP server installation system. I thought it would be available as a task but I'm not finding it.
I'll post my lshw here to give others an idea of the hardware I'm using.
Tuesday, July 4, 2006
Here is a blog highlighting some issues when migrating eins.de from a php application to a ruby on rails application. The old php site was able to handle 900,000 page impressions before having problems. Their first day on Ruby on Rails was failing after 150,000 page impressions, however after tweaking (Can you call changing applications and server rols tweaking?) they eventually were left with an application that could easily handle 1,200,000 page impressions without crashing.
The old codebase roughly consisted of around 50.000 lines of PHP code (plus a closed-source CMS that’s not included in this calculation). We’ve rewritten most of it (some features were left out on purpose) in about 5.000 lines of Rails code.
Update March 18: A follow-up article addressing reader comments is now available here.
Update March 20: Stage 2 is online.
Update March 27: Stage 3 is online.
Update April 03: Stage 4 is online
So far this solution has proven much more stable (at least on FreeBSD) and was able to handle our peak traffic of 350.000 page request per day. In practice we use up to 8 Mongrel processes on each cluster node and it seems that Apache is the bottleneck and not our application servers as before. The next step for us is to introduce another web server that handles the incoming HTTP requests and has it's own Mongrel cluster.
Here is the abridged steps for my own reference :) If you want detail read the full article below.
initdb -D pgdata
pg_ctl -D pgdata -l pgdata/psql.log start
rails -d postgresql argon
./script/generate model Argonista
I'm still not sure if I'll go with Postgres or MySQL but these steps should work on both. In fact with a migration file, I think you can have developers using postgres and the server could be mysql. Although the development will want to decide on a database platform before making any database specific calls.
technorati tags:Ruby, Rails, Migrations, Postgres
Sunday, July 2, 2006
The Perfect Lightweight Rails/Lighttpd/Debian install
I need this.
The Perfect Rails/Debian/Lighttpd Stack... Our setup starts with a minimal net-install image of Debian-3.1 Sarge. There is just the base system. Although sometimes Apache or Apache2 might be installed already. We are going to blow away Apache and only use Lighttpd to save on precious resources while getting a faster Rails server at the same time.
technorati tags:Xen, Ruby, Rails, Debian